Commit Graph

27 Commits

Author SHA1 Message Date
Janek Bevendorff
113c8eb702 Add CLI tests and improve coding style and i18n
The CLI module was lacking unit test coverage and showed some severe
coding style violations, which this patch addresses.

In addition, all uses of qCritical() with untranslatble raw char*
sequences were removed in favor of proper locale strings. These are
written to STDERR through QTextStreams and support output
redirection for testing purposes. With this change, error messages don't
depend on the global Qt logging settings and targets anymore and go
directly to the terminal or into a file if needed.

This patch also fixes a bug discovered during unit test development,
where the extract command would just dump the raw XML contents without
decrypting embedded Salsa20-protected values first, making the XML
export mostly useless, since passwords are scrambled.

Lastly, all CLI commands received a dedicated -h/--help option.
2018-10-19 21:49:54 +02:00
Adolfo E. García
bb16dc6d01 Add QR code generator for TOTP export (#1167)
* Resolves #764
* Add libqrencode and qtsvg dependencies 
* Ensure QR code remains square
* Auto-close QR code dialog when database is locked
* Add databaseLocked() Signal to databaseWidget
* Correct otpauth URI output in Totp::writeSettings(...)
2018-10-19 14:42:49 -04: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
Janek Bevendorff
5295a68906 Enable color output in Docker images 2018-09-25 21:12:47 +02:00
Janek Bevendorff
c1a397e624 Bundle image format and input context plugins with AppImage 2018-02-26 22:53:53 -05:00
Janek Bevendorff
cc3cc35565 Update library paths in AppImage recipe and Dockerfiles 2018-02-26 22:53:53 -05:00
Janek Bevendorff
09d3896304 Force Docker rebuild 2018-02-26 01:11:57 +01:00
Janek Bevendorff
ea33caa1a8 Update PPA Qt version 2018-02-21 22:58:32 +01:00
Jonathan White
490e92167d
Replace qhttp client with curl for favicon downloading (#1460)
Replace qhttp client with curl for favicon downloading
2018-02-07 07:10:56 -05:00
Jonathan White
053d998103 Appimage docker container bump to resolve dependencies 2018-01-30 21:21:24 +01:00
Jonathan White
3e2443a861 Add support for nightly builds to release tool 2018-01-30 21:21:23 +01:00
Janek Bevendorff
96e271e8be
Force Docker rebuild to fetch fixed version of libgpg-error-127 2018-01-13 14:25:02 -05:00
Janek Bevendorff
824607080a
Install needed PPA packages for deployment 2018-01-13 14:25:01 -05:00
Janek Bevendorff
d80c6b4b7d Update CI Dockerfile to include libsodium and bump minimum supported Qt version 2018-01-04 22:56:03 +01:00
varjolintu
06518c5736 keepassxc-browser 2018-01-04 21:42:20 +01:00
Janek Bevendorff
a4cf32dce0 Bundle qtbase translations with macOS and AppImage releases 2017-12-23 17:47:46 +01:00
Janek Bevendorff
b20918b60e Add update information to AppImage and use KeePassXC PPA for YubiKey libs, resolves #1157 2017-11-26 18:18:34 +01:00
Janek Bevendorff
51b42bc7b8 Move back to Ubuntu 14.04, but with custom libyubikey and libykpers-1 builds, resolves #1114 2017-10-24 17:58:27 +02:00
Janek Bevendorff
94ea91ec63 Switch from Ubuntu 14.04 to CentOS 7 2017-10-21 22:05:13 +02:00
Aidan Hobson Sayers
38cbb42b58 Use the renamed QT ppa (with packages named the same) 2017-10-07 23:37:34 +01:00
Janek Bevendorff
35e86efbce
Require CMake 3.1.0 and update Dockerfile 2017-06-26 16:41:16 +02:00
Jonathan White
1418712b4c
Added xvfb to Dockerfile 2017-03-26 23:25:17 -04:00
Jonathan White
572212c374
Updated Dockerfile to meet new library requirements 2017-03-26 09:55:06 -04:00
Janek Bevendorff
f7e9f85668
Install Qt 5.8 inside Docker container 2017-02-06 21:13:24 +01:00
Janek Bevendorff
e94dc226b5
Downgrade to Ubuntu 14.04 2017-01-29 02:23:55 +01:00
Janek Bevendorff
1c12cd6b9e
Add wget, file, fuse and python for building AppImages inside the container 2017-01-25 13:22:21 +01:00
Janek Bevendorff
1525ffc225
Add release preparation script and AppImage recipe 2017-01-22 18:42:56 +01:00