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.
|
||||
#
|
||||
# Currently, only builds snapshots and is truggered by the travis CI AppImage build, which
|
||||
# moves the "continuous" release/tag to head. This script deploys into this moved release.
|
||||
# Currently, only builds snapshots and is triggered by the travis CI build.
|
||||
|
||||
|
||||
version: 3.99.0.{build}
|
||||
@@ -23,25 +22,32 @@ init:
|
||||
- git config --global core.autocrlf true
|
||||
|
||||
install:
|
||||
# Locate Qt installation
|
||||
- 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:
|
||||
- git checkout master # re-attach to master to satisfy auto version tooling
|
||||
- mkdir 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
|
||||
- ctest -C Release
|
||||
- cpack -C Release -G NSIS64
|
||||
- set /P VERSION=<VERSION
|
||||
- move glabels-3.99.0-win64.exe glabels-%VERSION%-win64.exe
|
||||
|
||||
artifacts:
|
||||
- path: build\glabels-3.99.0-win64.exe
|
||||
- path: build\glabels-%VERSION%-win64.exe
|
||||
name: windows-installer
|
||||
|
||||
deploy:
|
||||
- provider: GitHub
|
||||
release: continuous
|
||||
release: glabels-%VERSION%
|
||||
artifact: windows-installer
|
||||
auth_token:
|
||||
secure: mPNNgwWP58gu4eA2wVwGkGWNTzJigKj1g/XjsZ9vk03rLMmf5fxC/XNr15fPBCi8
|
||||
|
||||
+116
-39
@@ -1,48 +1,125 @@
|
||||
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:
|
||||
except:
|
||||
- /.*/
|
||||
- # Do not build tags that we create when we upload to GitHub Releases
|
||||
- /^(?i:continuous)$/
|
||||
- /.*/ # Everything
|
||||
|
||||
# safelist
|
||||
branches:
|
||||
only:
|
||||
- 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?
|
||||
|
||||
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?
|
||||
|
||||
- Based on the Qt5 framework.
|
||||
- Updated UI based on typical workflows.
|
||||
- Intended to be a cross-platform application.
|
||||
* So far, it has been built and tested under Linux, Windows 7, and Windows 10. (Windows testing is still very intermittent.)
|
||||
|
||||
|
||||
## 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
|
||||
- A complete rewrite, based on the Qt5 framework.
|
||||
- A new UI layout based on common activities.
|
||||
- Cross-platform support
|
||||
- User-defined variables
|
||||
- Support for continuous-roll labels
|
||||
- Many new product templates
|
||||
|
||||
|
||||
## 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
|
||||
expect compatibility or consistency of features between snapshots.
|
||||
|
||||
| Platform | Files | Notes |
|
||||
|:---------|:------|:------|
|
||||
| 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) |
|
||||
| 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) | |
|
||||
| Source Code ZIP | [continuous.zip](https://github.com/jimevins/glabels-qt/archive/continuous.tar.gz) | |
|
||||
Pre-release Linux [AppImage](http:appimage.org) and Windows installer binaries are available in
|
||||
**[Releases](https://github.com/jimevins/glabels-qt/releases)**.
|
||||
|
||||
Some third-party packages are also available:
|
||||
|
||||
|
||||
| Platform | Files | Notes |
|
||||
|:----------|:-------------------------------------------------------------------------------------|:--------------------------------------------------------------|
|
||||
| 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
|
||||
|
||||
- [Linux Build Instructions](docs/BUILD-INSTRUCTIONS-LINUX.md)
|
||||
- [Windows Build Instructions](docs/BUILD-INSTRUCTIONS-WINDOWS.md)
|
||||
- Mac Build Instructions (TBD)
|
||||
- [Mac Build Instructions](docs/BUILD-INSTRUCTIONS-MACOS.md)
|
||||
|
||||
|
||||
## Help Needed
|
||||
|
||||
* Help is needed to add support to build and package glabels for various platforms and packaging systems.
|
||||
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).
|
||||
Please see [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md).
|
||||
|
||||
|
||||
## License
|
||||
@@ -100,12 +81,11 @@ restrictive licensing:
|
||||
gLabels-qt currently includes a version of the glbarcode++ library, located in
|
||||
the "glbarcode/" subdirectory. It is licensed under the GNU LESSER GENERAL
|
||||
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
|
||||
|
||||
The XML files in the "templates/" subdirectory constitute the glabels
|
||||
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
|
||||
ambiguity, the DTD file that defines the format of these files is
|
||||
licensed using the MIT/X license, see [templates/LICENSE](templates/LICENSE).
|
||||
the database and can be used for any purpose. The files themselves are
|
||||
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
|
||||
----------------------------
|
||||
|
||||
@@ -27,9 +62,6 @@ Add support for "Continuous Roll" labels
|
||||
* Add option to Properties page to adjust this value
|
||||
|
||||
|
||||
Write help documentation
|
||||
------------------------
|
||||
|
||||
|
||||
To Do List for gLabels 4.1 -- 2019-03-17
|
||||
========================================
|
||||
|
||||
Reference in New Issue
Block a user