CI cleanup/updates
- Create versioned snapshots - include MacOS build -- still needs test and deploy steps - include barcode and libqrencode in Linux build - include libqrencode in Windows build Updated README and TODO files.
This commit is contained in:
+12
-6
@@ -1,7 +1,6 @@
|
|||||||
# Build glabels windows installer.
|
# Build glabels windows installer.
|
||||||
#
|
#
|
||||||
# Currently, only builds snapshots and is truggered by the travis CI AppImage build, which
|
# Currently, only builds snapshots and is triggered by the travis CI build.
|
||||||
# moves the "continuous" release/tag to head. This script deploys into this moved release.
|
|
||||||
|
|
||||||
|
|
||||||
version: 3.99.0.{build}
|
version: 3.99.0.{build}
|
||||||
@@ -23,25 +22,32 @@ init:
|
|||||||
- git config --global core.autocrlf true
|
- git config --global core.autocrlf true
|
||||||
|
|
||||||
install:
|
install:
|
||||||
|
# Locate Qt installation
|
||||||
- set QTDIR=c:\Qt\5.11\msvc2017_64
|
- set QTDIR=c:\Qt\5.11\msvc2017_64
|
||||||
- set PATH=%PATH%;%QTDIR%/bin
|
- set PATH=%PATH%;%QTDIR%\bin
|
||||||
|
# Zlib and QREncode
|
||||||
|
- vcpkg install zlib:x64-windows
|
||||||
|
- vcpkg install libqrencode:x64-windows
|
||||||
|
- vcpkg integrate install
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- git checkout master # re-attach to master to satisfy auto version tooling
|
- git checkout master # re-attach to master to satisfy auto version tooling
|
||||||
- mkdir build
|
- mkdir build
|
||||||
- cd build
|
- cd build
|
||||||
- cmake -G "Visual Studio 15 2017 Win64" -DCMAKE_PREFIX_PATH=%QTDIR% ..
|
- cmake -G "Visual Studio 15 2017 Win64" .. -DCMAKE_PREFIX_PATH=%QTDIR% -DCMAKE_TOOLCHAIN_FILE=C:/Tools/vcpkg/scripts/buildsystems/vcpkg.cmake
|
||||||
- cmake --build . --config Release
|
- cmake --build . --config Release
|
||||||
- ctest -C Release
|
- ctest -C Release
|
||||||
- cpack -C Release -G NSIS64
|
- cpack -C Release -G NSIS64
|
||||||
|
- set /P VERSION=<VERSION
|
||||||
|
- move glabels-3.99.0-win64.exe glabels-%VERSION%-win64.exe
|
||||||
|
|
||||||
artifacts:
|
artifacts:
|
||||||
- path: build\glabels-3.99.0-win64.exe
|
- path: build\glabels-%VERSION%-win64.exe
|
||||||
name: windows-installer
|
name: windows-installer
|
||||||
|
|
||||||
deploy:
|
deploy:
|
||||||
- provider: GitHub
|
- provider: GitHub
|
||||||
release: continuous
|
release: glabels-%VERSION%
|
||||||
artifact: windows-installer
|
artifact: windows-installer
|
||||||
auth_token:
|
auth_token:
|
||||||
secure: mPNNgwWP58gu4eA2wVwGkGWNTzJigKj1g/XjsZ9vk03rLMmf5fxC/XNr15fPBCi8
|
secure: mPNNgwWP58gu4eA2wVwGkGWNTzJigKj1g/XjsZ9vk03rLMmf5fxC/XNr15fPBCi8
|
||||||
|
|||||||
+116
-39
@@ -1,48 +1,125 @@
|
|||||||
language: cpp
|
language: cpp
|
||||||
compiler: gcc
|
|
||||||
sudo: require
|
|
||||||
dist: trusty
|
|
||||||
|
|
||||||
before_install:
|
|
||||||
- sudo add-apt-repository ppa:beineri/opt-qt591-trusty -y
|
|
||||||
- sudo apt-get update -qq
|
|
||||||
|
|
||||||
install:
|
|
||||||
- sudo apt-get -y install qt59base qt59svg qt59tools qt59translations zlib1g-dev xvfb
|
|
||||||
- sudo apt-get -y install barcode libqrencode-dev
|
|
||||||
- wget https://downloads.sourceforge.net/project/zint/zint/2.6.3/zint-2.6.3_final.tar.gz && tar xzf zint-2.6.3_final.tar.gz && cd zint-2.6.3.src && mkdir build && cd build && cmake .. && make && sudo make install && cd ../..
|
|
||||||
- source /opt/qt5*/bin/qt5*-env.sh
|
|
||||||
|
|
||||||
script:
|
|
||||||
- git fetch --unshallow # restore repository depth to properly count commits in auto versioning
|
|
||||||
- git checkout master # re-attach to master to satisfy auto versioning
|
|
||||||
- mkdir build
|
|
||||||
- cd build
|
|
||||||
- cmake .. -DCMAKE_INSTALL_PREFIX=/usr
|
|
||||||
- make -j4
|
|
||||||
- xvfb-run make test
|
|
||||||
- sudo make DESTDIR=appdir install ; sudo chown -R $USER appdir ; find appdir/
|
|
||||||
|
|
||||||
after_success:
|
|
||||||
- wget -c "https://github.com/jimevins/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
|
|
||||||
- chmod a+x linuxdeployqt*.AppImage
|
|
||||||
- unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH
|
|
||||||
- export LD_LIBRARY_PATH=/opt/qt*/lib/:/usr/local/lib:$LD_LIBRARY_PATH
|
|
||||||
- ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop -bundle-non-qt-libs
|
|
||||||
- ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop -appimage
|
|
||||||
- find ./appdir -executable -type f -exec ldd {} \; | grep " => /usr" | cut -d " " -f 2-3 | sort | uniq
|
|
||||||
- ls -lh ./gLabels*.AppImage
|
|
||||||
- mv ./gLabels*.AppImage glabels-continuous-x86_64.AppImage
|
|
||||||
- wget -c https://github.com/jimevins/uploadtool/raw/master/upload.sh
|
|
||||||
- bash ./upload.sh glabels-continuous-x86_64.AppImage
|
|
||||||
|
|
||||||
|
# blocklist
|
||||||
branches:
|
branches:
|
||||||
except:
|
except:
|
||||||
- /.*/
|
- /.*/ # Everything
|
||||||
- # Do not build tags that we create when we upload to GitHub Releases
|
|
||||||
- /^(?i:continuous)$/
|
|
||||||
|
|
||||||
|
# safelist
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
|
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
|
||||||
|
#####################
|
||||||
|
#
|
||||||
|
# Linux build
|
||||||
|
#
|
||||||
|
#####################
|
||||||
|
- name: "Linux"
|
||||||
|
os: linux
|
||||||
|
dist: bionic
|
||||||
|
sudo: require
|
||||||
|
env:
|
||||||
|
- QMAKE_PATH=/usr/lib/x86_64-linux-gnu/qt5/bin/qmake
|
||||||
|
|
||||||
|
install:
|
||||||
|
- sudo apt-get -y install qtbase5-dev libqt5svg5-dev qttools5-dev
|
||||||
|
- sudo apt-get -y install xvfb
|
||||||
|
- sudo apt-get -y install pkgconf libqrencode-dev
|
||||||
|
- sudo apt-get -y install barcode
|
||||||
|
# Install zint from source
|
||||||
|
- wget https://downloads.sourceforge.net/project/zint/zint/2.6.5/zint-2.6.5.tar.gz && tar xzf zint-2.6.5.tar.gz && ( cd zint-2.6.5 && mkdir build && cd build && cmake .. && make && sudo make install )
|
||||||
|
- export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
|
||||||
|
|
||||||
|
before_script:
|
||||||
|
- git fetch --unshallow # restore repository depth to properly count commits in auto versioning
|
||||||
|
- git checkout master # re-attach to master to satisfy auto versioning
|
||||||
|
|
||||||
|
script:
|
||||||
|
- mkdir build
|
||||||
|
- cd build
|
||||||
|
- cmake .. -DCMAKE_INSTALL_PREFIX=/usr
|
||||||
|
- make -j4
|
||||||
|
- xvfb-run ctest
|
||||||
|
- VERSION=$(cat VERSION)
|
||||||
|
|
||||||
|
after_success:
|
||||||
|
# Download AppImage QT deployment tool (local snapshot -- original at github/probono)
|
||||||
|
- wget -c "https://github.com/jimevins/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
|
||||||
|
- chmod a+x linuxdeployqt*.AppImage
|
||||||
|
#
|
||||||
|
# Create AppImage
|
||||||
|
#
|
||||||
|
- make DESTDIR=appdir install
|
||||||
|
- unset QTDIR; unset QT_PLUGIN_PATH
|
||||||
|
- ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop -qmake=${QMAKE_PATH} -bundle-non-qt-libs
|
||||||
|
- ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop -qmake=${QMAKE_PATH} -appimage
|
||||||
|
- mv ./gLabels*.AppImage glabels-${VERSION}-x86_64.AppImage
|
||||||
|
|
||||||
|
before_deploy:
|
||||||
|
- git config --local user.name "Jim Evins (Travis CI)"
|
||||||
|
- git config --local user.email evins@snaught.com
|
||||||
|
- git tag -f -a glabels-${VERSION} -m "glabels-${VERSION} CI"
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
provider: releases
|
||||||
|
api_key: ${GITHUB_TOKEN}
|
||||||
|
file:
|
||||||
|
- glabels-${VERSION}-x86_64.AppImage
|
||||||
|
draft: false
|
||||||
|
prerelease: true
|
||||||
|
skip_cleanup: true
|
||||||
|
|
||||||
|
|
||||||
|
#####################
|
||||||
|
#
|
||||||
|
# MacOS build
|
||||||
|
#
|
||||||
|
#####################
|
||||||
|
- name: "MacOS"
|
||||||
|
os: osx
|
||||||
|
|
||||||
|
install:
|
||||||
|
- brew install qt
|
||||||
|
|
||||||
|
before_script:
|
||||||
|
- git fetch --unshallow # restore repository depth to properly count commits in auto versioning
|
||||||
|
- git checkout master # re-attach to master to satisfy auto versioning
|
||||||
|
|
||||||
|
script:
|
||||||
|
- mkdir build
|
||||||
|
- cd build
|
||||||
|
- cmake .. -DCMAKE_PREFIX_PATH=/usr/local/opt/qt
|
||||||
|
- make -j4
|
||||||
|
#- ctest --verbose
|
||||||
|
- VERSION=$(cat VERSION)
|
||||||
|
|
||||||
|
|
||||||
|
# #####################
|
||||||
|
# #
|
||||||
|
# # Windows build
|
||||||
|
# #
|
||||||
|
# #####################
|
||||||
|
# - name: "Windows"
|
||||||
|
# os: windows
|
||||||
|
#
|
||||||
|
# before_script:
|
||||||
|
# - git fetch --unshallow # restore repository depth to properly count commits in auto versioning
|
||||||
|
# - git checkout master # re-attach to master to satisfy auto versioning
|
||||||
|
#
|
||||||
|
# script:
|
||||||
|
# - mkdir build
|
||||||
|
# - cd build
|
||||||
|
# #- cmake .. -G "Visual Studio 15 2017 Win64"
|
||||||
|
# #- cmake --build . --config Release
|
||||||
|
# #- ctest -C Release
|
||||||
|
# #- VERSION=$(cat VERSION)
|
||||||
|
#
|
||||||
|
# after_success:
|
||||||
|
# #
|
||||||
|
# # Create Windows Installer
|
||||||
|
# #
|
||||||
|
# #- cpack -C Release -G NSIS64
|
||||||
|
|||||||
@@ -9,24 +9,17 @@
|
|||||||
|
|
||||||
## What is gLabels-qt?
|
## What is gLabels-qt?
|
||||||
|
|
||||||
gLabels-qt is the development version of the next major version of gLabels (4.0).
|
gLabels-qt is the development version of the next major version of gLabels (a.k.a. glabels-4).
|
||||||
|
|
||||||
|
|
||||||
## What's new in gLabels 4?
|
## What's new in gLabels 4?
|
||||||
|
|
||||||
- Based on the Qt5 framework.
|
- A complete rewrite, based on the Qt5 framework.
|
||||||
- Updated UI based on typical workflows.
|
- A new UI layout based on common activities.
|
||||||
- Intended to be a cross-platform application.
|
- Cross-platform support
|
||||||
* So far, it has been built and tested under Linux, Windows 7, and Windows 10. (Windows testing is still very intermittent.)
|
- User-defined variables
|
||||||
|
- Support for continuous-roll labels
|
||||||
|
- Many new product templates
|
||||||
## Status
|
|
||||||
|
|
||||||
gLabels-qt has been under off-and-on development for several years.
|
|
||||||
It is still missing several features to bring it in parity with glabels-3.4. These include
|
|
||||||
|
|
||||||
- Optional Evolution and VCard backends.
|
|
||||||
- An online manual
|
|
||||||
|
|
||||||
|
|
||||||
## Download
|
## Download
|
||||||
@@ -41,41 +34,29 @@ Continuous integration snapshots are not official releases. These snapshots rep
|
|||||||
bleeding-edge development (unstable) code. Please, DO NOT use it in a production environment. Do not
|
bleeding-edge development (unstable) code. Please, DO NOT use it in a production environment. Do not
|
||||||
expect compatibility or consistency of features between snapshots.
|
expect compatibility or consistency of features between snapshots.
|
||||||
|
|
||||||
| Platform | Files | Notes |
|
Pre-release Linux [AppImage](http:appimage.org) and Windows installer binaries are available in
|
||||||
|:---------|:------|:------|
|
**[Releases](https://github.com/jimevins/glabels-qt/releases)**.
|
||||||
| Linux x86_64 [AppImage](http:appimage.org) | [glabels-continuous-x86_64.AppImage](https://github.com/jimevins/glabels-qt/releases/download/continuous/glabels-continuous-x86_64.AppImage) | Download, make it executable, and run! |
|
|
||||||
| Archlinux | [Archlinux User Repository Page](https://aur.archlinux.org/packages/glabels-qt-git/) | Maintained by [Mario Blättermann](https://github.com/mariobl) |
|
Some third-party packages are also available:
|
||||||
| Ubuntu | [PPA Page](https://code.launchpad.net/~krisives/+archive/ubuntu/glabels-qt) | Maintained by [Kristopher Ives](https://github.com/krisives).<br>https://github.com/krisives/glabels-qt-packaging |
|
|
||||||
| Windows x86_64 | [glabels-3.99.0-win64.exe](https://github.com/jimevins/glabels-qt/releases/download/continuous/glabels-3.99.0-win64.exe) | Windows installer |
|
|
||||||
| Source Code TAR.GZ | [continuous.tar.gz](https://github.com/jimevins/glabels-qt/archive/continuous.tar.gz) | |
|
| Platform | Files | Notes |
|
||||||
| Source Code ZIP | [continuous.zip](https://github.com/jimevins/glabels-qt/archive/continuous.tar.gz) | |
|
|:----------|:-------------------------------------------------------------------------------------|:--------------------------------------------------------------|
|
||||||
|
| Archlinux | [Archlinux User Repository Page](https://aur.archlinux.org/packages/glabels-qt-git/) | Maintained by [Mario Blättermann](https://github.com/mariobl) |
|
||||||
|
| Ubuntu | [PPA Page](https://code.launchpad.net/~krisives/+archive/ubuntu/glabels-qt) | Maintained by [Kristopher Ives](https://github.com/krisives) |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Build Instructions
|
## Build Instructions
|
||||||
|
|
||||||
- [Linux Build Instructions](docs/BUILD-INSTRUCTIONS-LINUX.md)
|
- [Linux Build Instructions](docs/BUILD-INSTRUCTIONS-LINUX.md)
|
||||||
- [Windows Build Instructions](docs/BUILD-INSTRUCTIONS-WINDOWS.md)
|
- [Windows Build Instructions](docs/BUILD-INSTRUCTIONS-WINDOWS.md)
|
||||||
- Mac Build Instructions (TBD)
|
- [Mac Build Instructions](docs/BUILD-INSTRUCTIONS-MACOS.md)
|
||||||
|
|
||||||
|
|
||||||
## Help Needed
|
## Help Needed
|
||||||
|
|
||||||
* Help is needed to add support to build and package glabels for various platforms and packaging systems.
|
Please see [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md).
|
||||||
These include
|
|
||||||
|
|
||||||
- Windows (VisualStudio)
|
|
||||||
- Windows (MINGW)
|
|
||||||
- Mac
|
|
||||||
- Linux (flatpak)
|
|
||||||
- Linux (snap)
|
|
||||||
|
|
||||||
* Help is needed writing online documentation.
|
|
||||||
|
|
||||||
* Help is needed writing translations.
|
|
||||||
|
|
||||||
* Suggestions.
|
|
||||||
|
|
||||||
* For code contributions, see [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md).
|
|
||||||
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
@@ -100,12 +81,11 @@ restrictive licensing:
|
|||||||
gLabels-qt currently includes a version of the glbarcode++ library, located in
|
gLabels-qt currently includes a version of the glbarcode++ library, located in
|
||||||
the "glbarcode/" subdirectory. It is licensed under the GNU LESSER GENERAL
|
the "glbarcode/" subdirectory. It is licensed under the GNU LESSER GENERAL
|
||||||
PUBLIC LICENSE (LGPL); either version 3 of the License, or (at your option)
|
PUBLIC LICENSE (LGPL); either version 3 of the License, or (at your option)
|
||||||
any later version -- see the [glbarcode/LICENSE](glbarcode/LICENSE).
|
any later version. See [glbarcode/LICENSE](glbarcode/LICENSE).
|
||||||
|
|
||||||
### Template Database
|
### Template Database
|
||||||
|
|
||||||
The XML files in the "templates/" subdirectory constitute the glabels
|
The XML files in the "templates/" subdirectory constitute the glabels
|
||||||
label database. No copyright is claimed on the facts contained within
|
label database. No copyright is claimed on the facts contained within
|
||||||
the database and can be used for any purpose. However, to clear up any
|
the database and can be used for any purpose. The files themselves are
|
||||||
ambiguity, the DTD file that defines the format of these files is
|
licensed using the MIT/X license. See [templates/LICENSE](templates/LICENSE).
|
||||||
licensed using the MIT/X license, see [templates/LICENSE](templates/LICENSE).
|
|
||||||
|
|||||||
+36
-4
@@ -1,6 +1,41 @@
|
|||||||
To Do List for gLabels 4.0 -- 2018-04-15
|
To Do List for gLabels 4.0 -- 2018-10-06
|
||||||
========================================
|
========================================
|
||||||
|
|
||||||
|
Add programmable margin to text objects
|
||||||
|
---------------------------------------
|
||||||
|
The current built-in fixed margin seems to confuse people when dealing with
|
||||||
|
different horizontal and vertical alignments.
|
||||||
|
|
||||||
|
Improve print copies UI
|
||||||
|
-----------------------
|
||||||
|
As with previous versions of glabels, there should be a way of selecting
|
||||||
|
the number of sheets to print. Merge printing should be able to be collated
|
||||||
|
or not, and if printing multiple copies, start on the same first label.
|
||||||
|
|
||||||
|
Printer calibration tool
|
||||||
|
------------------------
|
||||||
|
There desperately needs to be a printer calibration tool. At a minimum
|
||||||
|
the tool should allow adjusting horizontal and vertical offsets. The
|
||||||
|
adjustments should be unique to each printer.
|
||||||
|
|
||||||
|
I am thinking of a test page with a cross in the center. It would have a
|
||||||
|
grid around this cross, indicating how much to adjust x & y. The user
|
||||||
|
would fold the paper in quaters and use this grid to guestimate the offsets.
|
||||||
|
|
||||||
|
There should be warnings about how printers may drift from calibration or
|
||||||
|
even not have repeatable results.
|
||||||
|
|
||||||
|
* A more sophisticated tool, could adjust for scaling and skew, but it would
|
||||||
|
be very difficult to interact with the user on these.
|
||||||
|
|
||||||
|
|
||||||
|
Write help documentation
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
|
||||||
|
Completed List for gLabels 4.0 -- 2018-04-15
|
||||||
|
============================================
|
||||||
|
|
||||||
Add "User Variables" feature
|
Add "User Variables" feature
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
@@ -27,9 +62,6 @@ Add support for "Continuous Roll" labels
|
|||||||
* Add option to Properties page to adjust this value
|
* Add option to Properties page to adjust this value
|
||||||
|
|
||||||
|
|
||||||
Write help documentation
|
|
||||||
------------------------
|
|
||||||
|
|
||||||
|
|
||||||
To Do List for gLabels 4.1 -- 2019-03-17
|
To Do List for gLabels 4.1 -- 2019-03-17
|
||||||
========================================
|
========================================
|
||||||
|
|||||||
Reference in New Issue
Block a user