Commit Graph

51 Commits

Author SHA1 Message Date
Jonathan White
21d1e981ca Cleanup CMakeFiles prior to release
* Remove Git revision finding code in favor of a simple command call: git rev-parse --short=7 HEAD
* Added GIT_HEAD_OVERRIDE to explicitly define the hash for the current commit in case git is not available 
* Made WIX default over NSIS in release tool 
* Rename version.h to git-info.h
2019-01-30 15:03:03 -05:00
Janek Bevendorff
a4c6529d60 Migrate to linuxdeploy for building AppImages
AppImage recipes are the legacy method for building AppImages, whereas
linuxdeploy is meant to replace them. It takes care of finding and
deploying all needed libraries and Qt plugins automagically, but it's
still under heavy development, so some manual work using appimagetool
and a few fixes are required to make it work for KeePassXC.

This patch moves building of AppImages directly into the release-tool,
both as a separate module (release-tool appimage) as well as a flag
(--appimage) for the build module. The release and CI Dockerfiles were
updated accordingly to support the new build process. The release
Dockerfile also received a Qt update to version 5.10.1.

In theory, it is now possible to use release-tool appsign for embedding
PGP signatures into AppImages, but it fails in practice due to ELF
header size limitations.
2018-09-29 13:12:09 +02:00
Jonathan White
ca27fb06d5 Merge branch 'master'
Conflicts:
	INSTALL.md
	release-tool
	src/browser/BrowserOptionDialog.cpp
	src/browser/BrowserService.cpp
	src/browser/BrowserService.h
	src/browser/NativeMessagingBase.h
	src/browser/NativeMessagingHost.h
	src/core/Uuid.cpp
	src/gui/DatabaseTabWidget.cpp
	src/gui/DatabaseWidget.cpp
	src/gui/EditWidget.cpp
	src/gui/MainWindow.cpp
	src/gui/MainWindow.ui
	src/proxy/NativeMessagingHost.h
	src/sshagent/ASN1Key.cpp
2018-08-24 09:42:38 -04:00
Janek Bevendorff
a19895850c Fix --snapcraft flag 2018-08-23 19:14:52 +02:00
Jonathan White
ded0aab586 Fix typos in release tool 2018-07-10 21:43:01 -04:00
Jonathan White
4b51b39a83 Add exe signing support to release-tool
* Add automatic portable zip building
* Cleanup build variables
* Align command line parameters between modes
2018-07-09 14:06:19 -04:00
Jonathan White
a025bcd7db Build snaps using custom Docker image
* Added --snapcraft option to release-tool build command
2018-07-08 11:42:34 -04:00
Jonathan White
dbc7593328 Build snaps using custom Docker image
* Added --snapcraft option to release-tool build command
2018-05-16 22:40:36 -04:00
Janek Bevendorff
395afe59eb Update release-tool to use generic /usr/local/opt/qt path on macOS 2018-02-27 20:11:03 +01:00
Janek Bevendorff
8dad78194f Fix libgcrypt and libgpg-errror paths in AppImage, resolves #1522 2018-02-25 12:16:41 +01:00
Janek Bevendorff
32a4078240 Add .version file when generating source tarball 2018-02-23 00:59:45 +01:00
Jonathan White
69283e83d8 Correct zxcvbn build on windows & snap build 2018-02-21 21:59:42 -05:00
Janek Bevendorff
9f5b5bb424 Fix macOS build 2018-02-21 22:30:37 +01:00
Janek Bevendorff
924d472de5 Add support for pre-releases 2018-02-18 10:20:34 +01:00
Jonathan White
3e2443a861 Add support for nightly builds to release tool 2018-01-30 21:21:23 +01:00
Janek Bevendorff
c824b0694e Only update source files and pull in translations, don't push anything 2018-01-21 15:54:47 +01:00
Janek Bevendorff
c2ead0e265 Fix macOS building and code signing, resolves #1344 2018-01-13 23:49:24 +01:00
Janek Bevendorff
a4cf32dce0 Bundle qtbase translations with macOS and AppImage releases 2017-12-23 17:47:46 +01:00
Sebastian Marsching
470ddb4704 Merge branch 'develop' into issue-1148-msi-package 2017-12-22 12:14:59 +01:00
Janek Bevendorff
b457c8c1fa Replace signtool with osslsigncode 2017-12-15 09:51:55 +01:00
Janek Bevendorff
f257145ee0 Separate code and GPG signing and add support for macOS codesign 2017-12-15 09:51:55 +01:00
Sebastian Marsching
ab31619745 Build MSI package when making a release. 2017-12-09 15:02:57 +01:00
AsavarTzeth
4853014a61 Fix id and appdata validation failures (#1131)
According to the AppStream specification org.keepassxc is not a valid
id. The product name is missing. This results in failures if one tries
to validate the file and makes it unusable where validation is enforced.

Additionally it seems specification don't allow the `<icon>` tag with
component type desktop-application. I am not sure this tag is strictly
necessary. In any case validation tests require this to be removed.

Fixing both of these issues ensure the AppStream appdata is compliant
and works anywhere passing validations is a requirement.

Also provide some other fixes and improvements to the appdata.

Minor validation failures:

- Fix missing captions for screenshots (`appstreamcli`)
- Fix descriptions cannot start with `<ul>` tag (`appstream-util`)

Other enhancements:

- Add more URL types, but could not add donation type because "&" is not
  allowed in the `<url>` tag and using "%26" causes
  `appstreamcli validate` to fail.
- Add `<developer_name>`, which in cases such as KeePassXC is a team name.
2017-11-08 17:51:37 +01:00
Jonathan White
85f652290b Add signtool function (Windows Only) to release-tool script 2017-10-20 18:12:10 -04:00
Janek Bevendorff
d3208bddb0 Enhance lupdate-qt5 check 2017-10-19 21:24:31 +02:00
Janek Bevendorff
eb977b8021 Check AppStream info file before merging releases 2017-10-19 21:24:31 +02:00
Janek Bevendorff
6d433fecef Set KEEPASSXC_DIST_TYPE when building AppImages and Snaps 2017-10-19 15:52:46 +02:00
Aidan Hobson Sayers
84508e91da Disable apparmor to use fuse
Necessary for an Ubuntu 16.04, Docker 17.09.0-ce host
See https://github.com/moby/moby/issues/9448#issuecomment-289950103
2017-10-07 23:37:39 +01:00
Janek Bevendorff
549eaefdb8 Fix release tool build checks 2017-06-26 16:41:04 +02:00
Jonathan White
458c76d3b7 Update release tool and snapcraft.yaml (#610)
* Release tool checks snapcraft file for version and added removable-media plug

* Added 'check' command to release tool. Code cleanup.
2017-06-06 10:35:15 -04:00
Janek Bevendorff
0a85279bcb Enable Yubikey in release-tool by default 2017-02-26 00:08:48 +01:00
Janek Bevendorff
0c47c2016d Only use relative path in DIGEST file 2017-02-18 14:32:40 +01:00
Janek Bevendorff
c33ce8e0e4 Add missing target branch check 2017-02-11 18:29:50 +01:00
Janek Bevendorff
12f62df49a Parse CHANGELOG before checking out target branch 2017-02-11 17:19:46 +01:00
Janek Bevendorff
b367e105fa re-implement realpath when it does NOT exist 2017-02-11 17:08:53 +01:00
Janek Bevendorff
7ffbcebe4e Replace echo -e with printf to achieve better cross-platform compatibility 2017-02-11 17:05:28 +01:00
Janek Bevendorff
343a1e2a76 Also build http 2017-02-07 01:24:18 +01:00
Janek Bevendorff
e31638d3dd Fix formatting and coding style 2017-02-01 01:03:30 +01:00
Janek Bevendorff
e12cd83b80 Check for existence of realpath instead of operating system 2017-02-01 00:53:58 +01:00
Janek Bevendorff
040b476359 Manually implement realpath for OS X 2017-01-31 19:25:15 +01:00
Janek Bevendorff
1da87d1d19 Only create bin-release dir on Linux 2017-01-29 20:58:09 +01:00
Janek Bevendorff
0c54276fe2 Support building on OS X (untested) 2017-01-29 20:46:57 +01:00
Janek Bevendorff
dda9a95163 Move packages to main release folder instead of bin-release on Windows 2017-01-29 12:53:52 +01:00
Janek Bevendorff
34fa456106 Add summary line to individual help pages 2017-01-29 12:52:05 +01:00
Janek Bevendorff
00cd0e1ae3 Use correct AppImage-Recipe.sh 2017-01-28 23:24:12 +01:00
Janek Bevendorff
05aefc6489 Show error when invalid command specified 2017-01-28 23:17:48 +01:00
Janek Bevendorff
a63ba6bc4f Update translations before merging branches 2017-01-28 23:02:26 +01:00
Janek Bevendorff
c043be3aa4 Copy windows binaries to release-bin directory 2017-01-28 22:45:07 +01:00
Janek Bevendorff
b7180893c6 Fix check for Msys 2017-01-28 22:23:51 +01:00
Janek Bevendorff
96ca7a8cbc Fix CMake options on Windows 2017-01-28 22:19:23 +01:00