diff --git a/Makefile.am b/Makefile.am index 88dcb577..22f47a26 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,117 +1,119 @@ # Makefile.am - Installer for GnuPG 4 Windows Makefile. # Copyright (C) 2005, 2008, 2012 g10 Code GmbH # # This file is part of GPG4Win. # # GPG4Win is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # GPG4Win is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . ACLOCAL_AMFLAGS = -I m4 AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip DISTCHECK_CONFIGURE_FLAGS = --host=i686-w64-mingw32 if BUILD_GPG4WIN po = po else po = endif if BUILD_GPG4WIN doc = doc else doc = endif SUBDIRS = ${po} packages ${doc} src # find patches -type f | sort | sed 's/$/ \\/' | sed 's/^/ /' # find patches-appimage -type f | sort | sed 's/$/ \\/' | sed 's/^/ /' EXTRA_DIST = autogen.sh README.GIT ONEWS \ doc/license-page doc/GPLv3 \ build-aux/git-log-footer build-aux/git-log-fix \ docker/appimage/Dockerfile \ docker/build-appimage-docker-image.sh \ docker/run-appimage-build.sh \ patches/extra-cmake-modules/0001-Use-BIN_INSTALL_DIR-data-for-DATAROOTDIR-on-Windows.patch \ patches/glib/glib-1-fixes.patch \ patches/glib/glib-2-fixes.patch \ patches/kconfigwidgets/0001-Make-QDbus-optional.patch \ patches/kconfigwidgets/0001-Fix-crash-on-exit-on-Windows.patch \ patches/kiconthemes/0001-Make-DBus-optional.patch \ + patches/kconfig/0001-Read-defaults-from-Windows-registry.patch \ patches/kleopatra/set-cxx-standard.patch \ + patches/kleopatra/set-windows-registry-key.patch \ patches/kxmlgui/0001-make-qdbus-optional.patch \ patches/kxmlgui/0004-Cruedly-disable-KSendbugmail.patch \ patches/libkleo/set-cxx-standard.patch \ patches/qtbase/0001-Fix-build-without-std-thread.patch \ patches/qtbase/0001-Gpg4win-qstandardpaths-patch.patch \ patches/qtbase/0002-Gpg4win-theme-names-and-relpaths.patch \ patches/qtbase/0003-Fix-build-with-GCC-11-include-limits.patch \ patches/qttools/disable-most-tools.patch \ patches/w32pth-2.0.5/workaround-broken-libtool.patch \ patches-appimage/kconfigwidgets/0001-build-without-KF5Auth.patch \ patches-appimage/qtwayland-5.15.0/00-disable-wayland-server.patch \ patches-appimage/kleopatra/set-cxx-standard.patch \ patches-appimage/libkleo/set-cxx-standard.patch \ patches-appimage/kmime/set-cxx-standard.patch \ patches-appimage/libkleo/gpg4win-check.patch copy-news: cp NEWS doc/website/NEWS.last copy-release: gpg4win-$(VERSION).tar.bz2 installers/gpg4win-$(VERSION).exe \ installers/gpg4win-light-$(VERSION).exe \ installers/gpg4win-vanilla-$(VERSION).exe @echo Copying $(VERSION) to $(RELEASEHOST) >&2 @set -e;\ if ssh "$$(echo $(RELEASEHOST)|cut -d: -f -1)" \ test -f "$$(echo $(RELEASEHOST)/gpg4win-$(VERSION).exe|cut -d: -f2-)";\ then echo "This release has already been copied to the server" >&2 ;\ else scp gpg4win-$(VERSION).tar.bz2 \ installers/gpg4win-$(VERSION).exe \ installers/gpg4win-light-$(VERSION).exe \ installers/gpg4win-vanilla-$(VERSION).exe \ installers/gpg4win-src-$(VERSION).exe $(RELEASEHOST)/ ;\ for f in en de ; do \ scp src/README.$$f.txt \ $(RELEASEHOST)/README-$(VERSION).$$f.txt; \ done;\ fi dist-hook: gen-ChangeLog gen_start_date = 2012-03-26T00:00:00 .PHONY: gen-ChangeLog gen-ChangeLog: set -e; \ if test -d $(top_srcdir)/.git; then \ (cd $(top_srcdir) && \ $(GITLOG_TO_CHANGELOG) --append-dot --tear-off \ --amend=build-aux/git-log-fix \ --since=$(gen_start_date) ) > $(distdir)/cl-t; \ cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\ rm -f $(distdir)/ChangeLog; \ mv $(distdir)/cl-t $(distdir)/ChangeLog; \ fi download: packages/packages.common packages/packages.4 packages/packages.3 (cd packages; ./download.sh) msi: $(MAKE) $(AM_MAKEFLAGS) -C src msi msi-signed: $(MAKE) $(AM_MAKEFLAGS) -C src msi-signed msi-upload: $(MAKE) $(AM_MAKEFLAGS) -C src msi-upload diff --git a/packages/packages.common b/packages/packages.common index 59300ac4..e7380656 100644 --- a/packages/packages.common +++ b/packages/packages.common @@ -1,635 +1,636 @@ # packages.common - list of packages for use with gpg4win -*- sh -*- # # The download script processes the statements here to # actually download the packages. The syntax is trivial: # # If the first non whitespace character of a line is #, the line is # considered a comment. If the first word of a line is "server", the # rest of the line will be taken as the base URL for following file # commands. If the first word of a line is "file" the rest of the # line will be appended to the current base URL (with a / as # delimiter). The statement "chk" is followed by the SHA256 checksum of # the last file. # # zlib # server https://gnupg.org/ftp/gcrypt # last-changed: 2022-04-07 # by: wk # verified: swdb file zlib/zlib-1.2.12.tar.gz chk 91844808532e5ce316b3c010929493c0244f3d37593afd6de04f71821d5136d9 # # GNU # server ftp://ftp.gnu.org/pub/gnu # last-changed: 2017-02-15 # by: ah # verified: Sig 68D9 4D8A AEEA D48A E7DC 5B90 4F49 4A94 2E46 16C2 file libiconv/libiconv-1.15.tar.gz chk ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178 # last-changed: 2021-08-17 # by: ah (checksum added by ik) # verified: Sig 9001 B85A F9E1 B83D F1BD A942 F5BE 8B26 7C6A 406D file gettext/gettext-0.21.tar.xz chk d20fcbb537e02dcf1383197ba05bd0734ef7bf5db06bdb241eb69b7d16b73192 # Glib needs PCRE # last-changed: 2021-10-11 # by: ah (checksum added by ik) # verified: Sig: 45F6 8D54 BBE2 3FB3 039B 46E5 9766 E084 FB0F 43D8 server https://sourceforge.net/projects/pcre/files/pcre/ file 8.44/pcre-8.44.tar.gz chk aecafd4af3bd0f3935721af77b889d9024b2e01d96b58471bd91a3063fb47728 # # GLIB # # The GTK boyz seem to think that sha256sum files on the server # magically get them a lot of additional security karma. # # And it's plain to see # You were meant for me # Yeah I'm your .sig # Your 21th Century sig # 21th Century sig, I wanna be your file # server http://ftp.gnome.org/pub/gnome/sources/glib/2.50 # last-changed: 2021-09-02 # by: ah file glib-2.50.2.tar.xz chk be68737c1f268c05493e503b3b654d2b7f43d7d0b8c5556f7e4651b870acfbf5 # # GDK-PIXBUF # server http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.30/ # checked: 2015-06-05 # by: ah # There is a 2.31 series but afaik no security problems with 2.30 # verified: with linuxfromscratch and frugalware checksums file gdk-pixbuf-2.30.8.tar.xz chk 4853830616113db4435837992c0aebd94cbb993c44dc55063cee7f72a7bef8be # # ATK # server http://ftp.gnome.org/pub/gnome/sources/atk/1.32 # checked: 2013-04-29 wk (1.32.0 still the latest in 1.32) file atk-1.32.0.tar.bz2 chk e9a3e598f75c4db1af914f8b052dd9f7e89e920a96cc187c18eb06b8339cb16e server http://ftp.gnome.org/pub/gnome/binaries/win32/atk/1.32 # checked: 2013-04-29 wk name atk-1.32.0.zip file atk_1.32.0-2_win32.zip chk cadc6d52f2af21996a6dcba7b1fac27ce66721e14d1c4ab21fde7bc9965f5037 # checked: 2013-04-29 wk name atk-dev-1.32.0.zip file atk-dev_1.32.0-2_win32.zip chk 5021d64043d270350d6a8d50b91db691a7421a68ca0bfa4eeb0c8804a176ac44 # # PANGO # server http://ftp.gnome.org/pub/gnome/sources/pango/1.29 # fixme: 2013-04-29 wk - There is a 1.29.5 but no 1.29.5 binaries # What shall we do: Update to 1.32? There are no # 1.32 binaries either. file pango-1.29.4.tar.bz2 chk f15deecaecf1e9dcb7db0e4947d12b5bcff112586434f8d30a5afd750747ff2b server http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.29 name pango-1.29.4.zip file pango_1.29.4-1_win32.zip chk e1b865ae2e4054388c598f92b34593b3d24d7fd15e6308c8926ee634717c21ce name pango-dev-1.29.4.zip file pango-dev_1.29.4-1_win32.zip chk 0d7fb255e65ed4bd43acedab4405986e4877b87ba8227d5fa22b38330485e3cb # # CAIRO # server http://cairographics.org/releases # checked: 2013-04-29 wk - 1.10.2 is the latest in the 1.10 series. file cairo-1.10.2.tar.gz chk 32018c7998358eebc2ad578ff8d8559d34fc80252095f110a572ed23d989fc41 server http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies # checked: 2013-07-16 ah most recent package on that server is from # 2012-09-27 TODO -> Move to another source / source build of those # dependencies # checked: 2013-04-29 wk name cairo-1.10.2.zip file cairo_1.10.2-2_win32.zip chk e6c361ec1df4ccb23edbe5b68db16329d563a19eeee7fa70d583dda3d2358f4e name cairo-dev-1.10.2.zip file cairo-dev_1.10.2-2_win32.zip chk b86f875bf776bbf578e3fa8c46866b84c93200b962b30d03cf795f82157e3167 # checked: 2013-04-29 wk file freetype-2.4.2.tar.bz2 chk 9a987aef8c50d9bcfdfdc9f012f8bd0de6095cc1a5524e62c1a037deb8dacbfe name freetype-2.4.2.zip file freetype_2.4.2-1_win32.zip chk bdf67e6573363fd2256a58295931cc1186382fd0ad1fe420059d6ffdb5fba7c0 name freetype-dev-2.4.2.zip file freetype-dev_2.4.2-1_win32.zip chk eed58c2807b65d5e0ec78031e89f1628577ad76bf47f02eaecde432c0b99eae9 server http://www.fontconfig.org/release # checked: 2013-04-29 wk - 2.8.0 still the latest in 2.8 file fontconfig-2.8.0.tar.gz chk fa2a1c6eea654d9fce7a4b1220f10c99cdec848dccaf1625c01f076b31382335 server http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies # checked: 2013-04-29 wk name fontconfig-2.8.0.zip file fontconfig_2.8.0-2_win32.zip chk 9d6bcaeed0eced43a649953132d9f2b3e15b98c7bb9e4a207872dfeade818204 name fontconfig-dev-2.8.0.zip file fontconfig-dev_2.8.0-2_win32.zip chk 2f15af3d27ca507dad2a208e58409f484aa7e7c7eac10b49edca079b31ae7073 server ftp://ftp.g10code.com/g10code/misc # checked: 2013-04-29 wk - 2.0.1 still the latest in 2.0 file expat-2.0.1.tar.gz chk 847660b4df86e707c9150e33cd8c25bc5cd828f708c7418e765e3e983a2e5e93 server http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies # checked: 2013-04-29 wk name expat-2.0.1.zip file expat_2.0.1-1_win32.zip chk 77b88ab780e698d6590426b26a877878584b9f8b6357909699674fb5045737bd name expat-dev-2.0.1.zip file expat-dev_2.0.1-1_win32.zip chk 67b92b7f3441fee077bdc0094bf4dd673870acdf51899e32e199246801538162 # # GTK+ # server http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24 # last-changed: 2015-06-05 # by: ah # verified: chk from https://download.gnome.org/core/3.17/3.17.2/sources/SHA256SUMS-for-xz file gtk+-2.24.28.tar.xz chk b2c6441e98bc5232e5f9bba6965075dcf580a8726398f7374d39f90b88ed4656 # # GIMP stuff for W32 # server http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies # checked: 2012-03-28 wk - Not updated - not a security problem name pkgconfig-0.23.tar.gz file pkg-config-0.23.tar.gz chk 08a0e072d6a05419a58124db864f0685e6ac96e71b2875bf15ac12714e983b53 name pkgconfig-0.23.zip file pkg-config_0.23-3_win32.zip chk 677d6055494e24cad6c49eab33eee618ddc6ed65da827c8b5b7da761b4063278 # PNG # last changed: 2021-12-01 # by: ah # verified: Sig 8048 643B A2C8 40F4 F92A 195F F549 84BF A16C 640F server https://downloads.sourceforge.net file libpng/libpng14/1.4.22/libpng-1.4.22.tar.xz chk 8d419a8b2a5edddda5cbcb897ded92205344a3249fa7a00d6384ea23ac3ccbd8 # # LibFFI # server ftp://sourceware.org/pub/libffi # checked: 2013-04-29 wk - updated from 3.0.10. # checked: 2014-07-16 ah - only rc availble from 3.0.14 file libffi-3.0.13.tar.gz chk 1dddde1400c3bcb7749d398071af88c3e4754058d2d4c0b3696c2f82dc5cf11c # # SQLite # server https://www.sqlite.org # last changed: 2021-09-20 # by: ik # verified: SHA1 checksum on https://web.archive.org/web/20190228201545/https://www.sqlite.org/download.html name sqlite-3.27.2.tar.gz file 2019/sqlite-autoconf-3270200.tar.gz chk 50c39e85ea28b5ecfdb3f9e860afe9ba606381e21836b2849efca6a0bfe6ef6e # # Pth emulation # server ftp://ftp.g10code.com/g10code/w32pth # checked: 2014-07-16 ah file w32pth-2.0.5.tar.bz2 chk 5e462d06ed50e9e961546ab5264258e606b101860a74c1e410d086432ec27a06 # # Stripped down version of BZIP2 # (full source at http://bzip.org) # server ftp://ftp.g10code.com/g10code/bzip2 # checked: 2014-07-16 ah file bzip2-1.0.6-g10.tar.gz chk c2a9b3aec1a38d34b66106116a39f64b01d84f475fef75c40ea0bda0ea67ed07 # # GnuPG et al. # # All tarballs from this server are verified with an openpgp # signature made by "Werner Koch (dist sig)" or one of the other # gnupg main contributors. # Server changed from ftp to https by wk 2021-09-22 server https://gnupg.org/ftp/gcrypt # last changed 2022-04-07 # by wk # verified: swdb file libgpg-error/libgpg-error-1.45.tar.bz2 chk 570f8ee4fb4bff7b7495cff920c275002aea2147e9a1d220c068213267f80a26 # last-changed: 2021-04-21 # by: ah # verified: distsigkey.gpg file libassuan/libassuan-2.5.5.tar.bz2 chk 8e8c2fcc982f9ca67dcbb1d95e2dc746b1739a4668bc20b3a3c5be632edb34e4 # last changed 2021-09-20 # by ik # verified: distsigkey.gpg file npth/npth-1.6.tar.bz2 chk 1393abd9adcf0762d34798dc34fdcf4d0d22a8410721e76f1e3afcd1daa4e2d1 # last changed 2021-09-20 # by ik # verified: distsigkey.gpg file libksba/libksba-1.6.0.tar.bz2 chk dad683e6f2d915d880aa4bed5cea9a115690b8935b78a1bbe01669189307a48b # last changed 2022-04-07 # by wk # verified: swdb file ntbtls/ntbtls-0.3.1.tar.bz2 chk 8922181fef523b77b71625e562e4d69532278eabbd18bc74579dbe14135729ba #name gnupg-msi-2.3.1-beta18-20210420-src.tar.xz #file binary/gnupg-w32-2.3.1_20210420.tar.xz #chk e1a2dc705c940938b7bf7a17f521a41b1ef14139acd8860b2fd59aed2750aa3b #name gnupg-msi-2.3.1-20210420-bin.wixlib #file binary/gnupg-w32-2.3.1_20210420.wixlib #chk 133817a4c4d11996956676c5c200222839ee5dc16e9476bd682d4e68b33ef73e # last changed: 2021-04-21 # by: ah #file pinentry/pinentry-1.2.0.tar.bz2 #chk 10072045a3e043d0581f91cd5676fcac7ffee957a16636adedaa4f583a616470 # last changed 2022-02-07 # by wk # verified: buildtree #file gpgme/gpgme-1.17.0.tar.bz2 #chk 4ed3f50ceb7be2fce2c291414256b20c9ebf4c03fddb922c88cda99c119a69f5 # last changed: 2018-10-17 # by: ah file gpa/gpa-0.10.0.tar.bz2 chk 95dbabe75fa5c8dc47e3acf2df7a51cee096051e5a842b4c9b6d61e40a6177b1 # last changed: 2021-01-07 # by: ah file scute/scute-1.7.0.tar.bz2 chk 437fe758b27c243a5ee2535c6b065ea1d09f2c9a02d83567d2f934bb6395c249 # GpgOL # last-changed: 2022-04-20 # by: ah # verified: Sig 5B80 C575 4298 F0CB 55D8 ED6A BCEF 7E29 4B09 2E28 file gpgol/gpgol-2.5.3.tar.bz2 chk c916deb2897c1f37f4e011b5019b7118321673b7c4c1f090b3921b9335b96432 # # GpgEX # # last-changed: 2022-04-21 # by: ah # verified: distsigkey.gpg file gpgex/gpgex-1.0.9.tar.bz2 chk 32a31affe0bc2587b6b61c5aae6a3328280feccde315dfa3a3c2dc374c5c0400 # # GnuPG utilities # server http://www.jabberwocky.com/software/paperkey # last-changed: 2017-12-05 # by: ah # verified: SIG 7D92 FD31 3AB6 F373 4CC5 9CA1 DB69 8D71 9924 2560 file paperkey-1.5.tar.gz chk c4737943083ce92e41faf13c27a9d608105b6285c0840dfb684a7ee294142ddf # # Kleopatra and dependencies # # Qt base # last changed: 2020-07-22 # by: ah # verified: HTTPS https://download.qt.io/official_releases/qt/5.15/5.15.2/submodules/qtbase-everywhere-src-5.15.2.tar.xz.sha256 server http://download.qt.io/official_releases/qt/ name qtbase-5.15.2.tar.xz file 5.15/5.15.2/submodules/qtbase-everywhere-src-5.15.2.tar.xz chk 909fad2591ee367993a75d7e2ea50ad4db332f05e1c38dd7a5a274e156a4e0f8 # Qt Tools # last changed: 2020-07-22 # by: ah # verified: HTTPS https://download.qt.io/official_releases/qt/5.15/5.15.2/submodules/qttools-everywhere-src-5.15.2.tar.xz.sha256 name qttools-5.15.2.tar.xz file 5.15/5.15.2/submodules/qttools-everywhere-src-5.15.2.tar.xz chk c189d0ce1ff7c739db9a3ace52ac3e24cb8fd6dbf234e49f075249b38f43c1cc # Qt Winextras # last changed: 2020-07-22 # by: ah # verified: HTTPS https://download.qt.io/official_releases/qt/5.15/5.15.2/submodules/qtwinextras-everywhere-src-5.15.2.tar.xz.sha256 name qtwinextras-5.15.2.tar.xz file 5.15/5.15.2/submodules/qtwinextras-everywhere-src-5.15.2.tar.xz chk 65b8272005dec00791ab7d81ab266d1e3313a3bbd8e54e546d984cf4c4ab550e # Qt X11 extras # last changed: 2021-09-20 # by: ik # verified: HTTPS https://download.qt.io/official_releases/qt/5.15/5.15.2/submodules/qtx11extras-everywhere-src-5.15.2.tar.xz.sha256 name qtx11extras-5.15.2.tar.xz file 5.15/5.15.2/submodules/qtx11extras-everywhere-src-5.15.2.tar.xz chk 7014702ee9a644a5a93da70848ac47c18851d4f8ed622b29a72eed9282fc6e3e # Qt WaylandClient # last changed: 2021-09-21 # by: ik # verified: HTTPS https://download.qt.io/official_releases/qt/5.15/5.15.2/submodules/qtwayland-everywhere-src-5.15.2.tar.xz.sha256 name qtwayland-5.15.2.tar.xz file 5.15/5.15.2/submodules/qtwayland-everywhere-src-5.15.2.tar.xz chk 193732229ff816f3aaab9a5e2f6bed71ddddbf1988ce003fe8dd84a92ce9aeb5 # Qt svg # last changed: 2020-07-22 # by: ah # verified: HTTPS https://download.qt.io/official_releases/qt/5.15/5.15.2/submodules/qtsvg-everywhere-src-5.15.2.tar.xz.sha256 name qtsvg-5.15.2.tar.xz file 5.15/5.15.2/submodules/qtsvg-everywhere-src-5.15.2.tar.xz chk 8bc3c2c1bc2671e9c67d4205589a8309b57903721ad14c60ea21a5d06acb585e # Qt translations # last changed: 2020-07-22 # by: ah # verified: HTTPS https://download.qt.io/official_releases/qt/5.15/5.15.2/submodules/qttranslations-everywhere-src-5.15.2.tar.xz.sha256 name qttranslations-5.15.2.tar.xz file 5.15/5.15.2/submodules/qttranslations-everywhere-src-5.15.2.tar.xz chk d5788e86257b21d5323f1efd94376a213e091d1e5e03b45a95dd052b5f570db8 # KDE Frameworks generated by gen-frameworks.sh # When outdated activate this link: #server https://download.kde.org/Attic/frameworks/ server https://download.kde.org/stable/frameworks ##### Paste Here ##### # # Don't forget to update gpg4win.mk.in with new version numbers # # KDE Applications # extra-cmake-modules # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/extra-cmake-modules-5.93.0.tar.xz chk 093dea7b11647bc5f74e6971d47ef15b5c410cba2b4620acae00f008d5480b21 # kconfig # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kconfig-5.93.0.tar.xz chk 71857c20d4829017c22dd6d46ae5a642c86344960e21bc1520458fb76d02c06e # ki18n # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/ki18n-5.93.0.tar.xz chk c2705400d175f18612dfe1afb28dc14accf614f7cfd65409dfa7fdcde5237339 # kwidgetsaddons # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kwidgetsaddons-5.93.0.tar.xz chk 9c35e17d8c6faae58bfd48180bf968b813e6bfe2d49041b3285f8e326842a410 # kcompletion # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kcompletion-5.93.0.tar.xz chk 7f8c9355e8875b619ca852741e972f41c252aa2e95b439161acc7b32d9e8fb9c # kwindowsystem # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kwindowsystem-5.93.0.tar.xz chk 97cb223a4d1a7487a3ed496e10ff5e8c320ea7458eb34cbe4ed114bc19ebe4a1 # kcoreaddons # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kcoreaddons-5.93.0.tar.xz chk 920a278af97dea3add06770a6f3604744c20d667973cb71cf477145785dbf043 # kcodecs # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kcodecs-5.93.0.tar.xz chk 0efc5c8baab3142f8a0ab9369b255061772a57a80fb616b7305bf98235b2288b # kconfigwidgets # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kconfigwidgets-5.93.0.tar.xz chk db18e0f2217ead6dd6f5877551902d5da86aa026686e3c564f5f96be279f24bb # kdbusaddons # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kdbusaddons-5.93.0.tar.xz chk cc2c74501e65b97af1849ff454e51393f3a07755c155854bdee741a006822ad9 # kxmlgui # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kxmlgui-5.93.0.tar.xz chk 74ba65d95fac0cd09cb66e14d199efc739e1a8c9aec25812f41cfc64d7f4b099 # kguiaddons # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kguiaddons-5.93.0.tar.xz chk 27f26392140bd1abcb86c154fd6fd87e50b2493787827b2b1cacaf76544af40a # kitemviews # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kitemviews-5.93.0.tar.xz chk 93f01dec3b795b28cc6f6859873ebb941a9504eaafd13ff9f72b987d71e55abf # kitemmodels # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kitemmodels-5.93.0.tar.xz chk 5bb9918b92ac37f1bc52c5abe04e8dbea54f31fa0101edad6d9e92c3a9f0485b # kiconthemes # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kiconthemes-5.93.0.tar.xz chk 75f7c5b34f4f1a228b4cbd81a284dbfdc0c0810ddd3a39e69f9363ab3598e2b4 # breeze-icons # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/breeze-icons-5.93.0.tar.xz chk 4367dfa6b48aa645a3680489be96e03a9a6fc20f57277b3ca5e37ce8df4d03e6 # karchive # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/karchive-5.93.0.tar.xz chk 61e326a840860270b7f8b9e8966462085b4f309be5c3a84c3b265eb95694c7fb # kcrash # last changed: 2022-05-11 # by: ah # verified: PGP Signed by ./kde-release-keys.gpg (created by gen-frameworks.sh) file 5.93/kcrash-5.93.0.tar.xz chk 2ff8d6c6924b2b752ef4a929390606bb55ce2aa55c582927269bd65556992dd6 ### END PASTE ### server http://download.kde.org/stable/release-service/ # kmime # last changed: 2022-02-01 # by: ah # verified: PGP Sig D81C0CB38EB725EF6691C385BB463350D6EF31EF file 21.12.1/src/kmime-21.12.1.tar.xz chk c1f4c06c61f6b4ddde7395b1cfb1f2411a32638e09c6f0a58c6557a7dffe4120 server https://files.intevation.de/projects/gpg4all # gpgme-beta # by ah # verified: buildtree -file gpgme/gpgme-1.17.2-beta65.tar.bz2 -chk be2245dc5181e4bf13007215ce859ff2617b80e2c3ac7f0cfca70f5192658cfc +file gpgme/gpgme-1.17.2-beta67.tar.bz2 +chk 8bf767c598821e00e6e40e4c01eddf4c80d1fe292a5eb9da6ee7b4297ac90dd6 + #by ah #file scute/scute-1.6.0-beta187.tar.bz2 #chk 8d2a56dff6e6c12d628dd32075497326e8345c0096dec1280f7ab2c737410837 # by: ah # file pinentry/pinentry-1.1.1-beta44.tar.bz2 # chk c2091536687cd83569c9919d6d9fc8c3a53e74d8419320bcbb8b7dc36019c677 file pinentry/pinentry-1.2.1-beta29.tar.bz2 chk 5f22d65e81873ca9dbde111ab5188ecca0af544b4a988ea4c3f59c28eba11876 # KDE-L10n # last changed: see package date. # by: ah # verified: Tarball created by ah with script gen-kde-l10n.sh file kde-l10n/kde-l10n-202204221053-bin.tar.xz chk 8bd2a5ac5cb7e25ad1809e162f3e42be1150bf7b2f2ed39a5ae6480f4ef386f8 file kde-l10n/kde-l10n-202204221053-src.tar.xz chk af849f7d4a3f55b41edb553bd0c9980af711828e5aed80ab86f7040af3e28f79 # Gpg4win-tools package # last changed: see package date. # by: ah # verified: Tarball created by ah. file gpg4win-tools/gpg4win-tools-202104211124.tar.gz chk 79ea82ede46bbd02f70a64e4f003c6279e98cf4ad1e302eca753087c42fccdf3 # # Snapshots stored on the GnuPG server # server https://gnupg.org/ftp/gcrypt/snapshots # libkleo -# last changed: 2022-05-12 +# last changed: 2022-07-26 # by: aheinecke # verified: Tarball created by aheinecke. -file libkleo/libkleo-202205120851.tar.xz -chk e3965d3e733feaa13f30882693a7f646fd5e96b2b4c685b5f54654f302e40f6d +file libkleo/libkleo-202207261513.tar.xz +chk dc115728015162cd815f8d91ee1af5f6a035f893e916045730b439e40329dcb8 # kleopatra -# last changed: 2022-05-11 +# last changed: 2022-07-26 # by: aheinecke # verified: Tarball created by aheinecke. -file kleopatra/kleopatra-202205111430.tar.xz -chk 4127240a2d61e2829a189242bbcc85e7d753ac5d9c0236aa855ce408ce3997fe +file kleopatra/kleopatra-202207261513.tar.xz +chk 2338e9589680213eccf3dbde8874f064cd5c248c15683522afb7cfffe7b513e6 diff --git a/patches/kconfig/0001-Read-defaults-from-Windows-registry.patch b/patches/kconfig/0001-Read-defaults-from-Windows-registry.patch new file mode 100755 index 00000000..f4e5a382 --- /dev/null +++ b/patches/kconfig/0001-Read-defaults-from-Windows-registry.patch @@ -0,0 +1,356 @@ +#! /bin/sh +patch -p1 -l -f $* < $0 +exit $? + +From 54c42272973084b80caa4f3c825cfe9969e2c875 Mon Sep 17 00:00:00 2001 +From: Andre Heinecke +Date: Wed, 27 Jul 2022 11:40:44 +0200 +Subject: [PATCH] Read defaults from Windows registry + +This optionally enables an application to define a Windows +registry key in which defaults are looked up. This allows +KDE Software to be configured under Windows through Group +Policies. + +Keys below this key are treated as configuration +groups. Values below this key are treated as values +of the default group. + +To add a key to a group create a subkey under regKey and +add the value in this group with type REG_SZ. + +Immutable groups or values can be suffixed with [$i]. + +The values are read from HKLM and treated as defaults. +--- + src/core/CMakeLists.txt | 5 ++ + src/core/kconfig.cpp | 24 ++++++ + src/core/kconfig.h | 24 ++++++ + src/core/kconfig_p.h | 1 + + src/core/registry_win.cpp | 160 ++++++++++++++++++++++++++++++++++++++ + src/core/registry_win_p.h | 14 ++++ + 6 files changed, 228 insertions(+) + create mode 100644 src/core/registry_win.cpp + create mode 100644 src/core/registry_win_p.h + +diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt +index ec1e4995..e37ad3d6 100644 +--- a/src/core/CMakeLists.txt ++++ b/src/core/CMakeLists.txt +@@ -1,6 +1,10 @@ + add_library(KF5ConfigCore) + add_library(KF5::ConfigCore ALIAS KF5ConfigCore) + ++if (WIN32) ++ set(kconfig_extra_src registry_win.cpp) ++endif() ++ + target_sources(KF5ConfigCore PRIVATE + kconfig.cpp + kconfigbase.cpp +@@ -14,6 +18,7 @@ target_sources(KF5ConfigCore PRIVATE + kauthorized.cpp + kemailsettings.cpp + kconfigwatcher.cpp ++ ${kconfig_extra_src} + ) + + ecm_qt_declare_logging_category(KF5ConfigCore +diff --git a/src/core/kconfig.cpp b/src/core/kconfig.cpp +index 22ae0b54..ace4dc29 100644 +--- a/src/core/kconfig.cpp ++++ b/src/core/kconfig.cpp +@@ -43,6 +43,8 @@ + #include + #endif + ++#include "registry_win_p.h" ++ + bool KConfigPrivate::mappingsRegistered = false; + + // For caching purposes +@@ -584,6 +586,7 @@ struct KConfigStaticData { + QString globalMainConfigName; + // Keep a copy so we can use it in global dtors, after qApp is gone + QStringList appArgs; ++ QString globalRegKey; + }; + Q_GLOBAL_STATIC(KConfigStaticData, globalData) + +@@ -592,6 +595,16 @@ void KConfig::setMainConfigName(const QString &str) + globalData()->globalMainConfigName = str; + } + ++void KConfig::setWindowsRegistryKey(const QString ®Key) ++{ ++ globalData()->globalRegKey = regKey; ++} ++ ++QString KConfig::windowsRegistryKey() ++{ ++ return globalData()->globalRegKey; ++} ++ + QString KConfig::mainConfigName() + { + KConfigStaticData *data = globalData(); +@@ -682,6 +695,9 @@ void KConfig::reparseConfiguration() + d->parseGlobalFiles(); + } + ++ // Parse the windows registry defaults if desired ++ d->parseWindowsDefaults(); ++ + d->parseConfigFiles(); + } + +@@ -750,6 +766,14 @@ void KConfigPrivate::parseGlobalFiles() + sGlobalParse->localData().insert(key, new ParseCacheValue({entryMap, newest})); + } + ++void KConfigPrivate::parseWindowsDefaults() ++{ ++ const QString regKey = KConfig::windowsRegistryKey (); ++ if (!regKey.isEmpty()) { ++ parseWindowsRegistry(regKey, entryMap); ++ } ++} ++ + void KConfigPrivate::parseConfigFiles() + { + // can only read the file if there is a backend and a file name +diff --git a/src/core/kconfig.h b/src/core/kconfig.h +index c8ca0ca3..28c93fba 100644 +--- a/src/core/kconfig.h ++++ b/src/core/kconfig.h +@@ -372,6 +372,30 @@ public: + */ + static QString mainConfigName(); + ++ /** ++ * Optionally add a Windows registry key to use. ++ * ++ * Keys below this key are treated as configuration ++ * groups. Values below this key are treated as values ++ * of the default group. ++ * ++ * To add a key to a group create a subkey under regKey and ++ * add the value in this group with type REG_SZ. ++ * ++ * Immutable groups or values can be suffixed with [$i]. ++ * ++ * The values are read from HKLM and treated as defaults. ++ * ++ * @since 5.98 ++ */ ++ static void setWindowsRegistryKey(const QString ®Key); ++ ++ /** ++ * Get the registry key under which additional values are parsed. ++ * @since 5.98 ++ */ ++ static QString windowsRegistryKey(); ++ + protected: + bool hasGroupImpl(const QByteArray &group) const override; + KConfigGroup groupImpl(const QByteArray &b) override; +diff --git a/src/core/kconfig_p.h b/src/core/kconfig_p.h +index 60604477..72b21629 100644 +--- a/src/core/kconfig_p.h ++++ b/src/core/kconfig_p.h +@@ -104,6 +104,7 @@ private: + bool setLocale(const QString &aLocale); + QStringList getGlobalFiles() const; + void parseGlobalFiles(); ++ void parseWindowsDefaults(); + void parseConfigFiles(); + void initCustomized(KConfig *); + bool lockLocal(); +diff --git a/src/core/registry_win.cpp b/src/core/registry_win.cpp +new file mode 100644 +index 00000000..0f1a876b +--- /dev/null ++++ b/src/core/registry_win.cpp +@@ -0,0 +1,160 @@ ++/* ++ This file is part of the KDE libraries ++ SPDX-FileCopyrightText: 2022 g10 Code GmbH ++ SPDX-FileContributor: Andre Heinecke ++ ++ SPDX-License-Identifier: LGPL-2.0-or-later ++*/ ++#include "registry_win_p.h" ++#include "kconfig_core_log_settings.h" ++ ++#include ++ ++void parseRegValues(const QString ®Key, const QString &groupName, KEntryMap &entryMap) ++{ ++ const bool groupOptionImmutable = regKey.endsWith(QStringLiteral("[$i]")); ++ HKEY key; ++ if (RegOpenKeyExW(HKEY_LOCAL_MACHINE, ++ (wchar_t *) regKey.utf16(), ++ 0, KEY_ENUMERATE_SUB_KEYS | KEY_READ, ++ &key) != ERROR_SUCCESS) { ++ qCWarning(KCONFIG_CORE_LOG) << "Failed to open HKLM" << regKey; ++ return; ++ } ++ DWORD values = 0, ++ maxNameLen = 0, ++ maxValueLen = 0; ++ ++ DWORD err = RegQueryInfoKey (key, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr, ++ &values, ++ &maxNameLen, ++ &maxValueLen, ++ nullptr, ++ nullptr); ++ ++ if (err != ERROR_SUCCESS) { ++ qCWarning(KCONFIG_CORE_LOG) << "Failed to query key info for" << regKey; ++ RegCloseKey(key); ++ return; ++ } ++ ++ maxNameLen++; ++ maxValueLen++; ++ wchar_t *name = new wchar_t[maxNameLen + 1]; ++ wchar_t *value = new wchar_t[maxValueLen + 1]; ++ for (DWORD i = 0; i < values; i++) { ++ DWORD nameLen = maxNameLen; ++ err = RegEnumValueW(key, i, ++ name, ++ &nameLen, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr); ++ ++ if (err != ERROR_SUCCESS){ ++ qCWarning(KCONFIG_CORE_LOG) << "Failed to enum value " << i; ++ continue; ++ } ++ ++ DWORD type; ++ DWORD valueLen = maxValueLen; ++ err = RegQueryValueExW(key, name, ++ NULL, &type, ++ (BYTE*)value, &valueLen); ++ ++ if (err != ERROR_SUCCESS) { ++ qCWarning(KCONFIG_CORE_LOG) << "Failed to query value " << name; ++ continue; ++ } ++ // Only accept plain string values ++ if (type != REG_SZ) { ++ qCWarning(KCONFIG_CORE_LOG) << "Invalid type for value " << name; ++ continue; ++ } ++ KEntryMap::EntryOptions entryOptions = KEntryMap::EntryDefault; ++ if (groupOptionImmutable) { ++ entryOptions |= KEntryMap::EntryImmutable; ++ } ++ ++ QString entryName = QString::fromWCharArray(name, nameLen); ++ const QString valueString = QString::fromWCharArray(value, (valueLen / sizeof (wchar_t)) - 1); ++ if (entryName.endsWith(QStringLiteral("[$i]"))) { ++ entryOptions |= KEntryMap::EntryImmutable; ++ entryName.chop(4); ++ } ++ entryMap.setEntry(groupName.toUtf8(), entryName.toUtf8(), valueString.toUtf8(), entryOptions); ++ qDebug () << "Adding Entry" << entryName << valueString << "to group" << groupName << "value len" << valueLen; ++ } ++ delete[] name; ++ delete[] value; ++ RegCloseKey(key); ++} ++ ++void parseWindowsRegistry(const QString ®Key, KEntryMap &entryMap) ++{ ++ // Parse default group ++ parseRegValues(regKey, QStringLiteral(""), entryMap); ++ ++ // Enumerate the subkeys (groups) ++ HKEY key; ++ if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, ++ (wchar_t *)regKey.utf16(), ++ 0, KEY_ENUMERATE_SUB_KEYS | KEY_READ, ++ &key) != ERROR_SUCCESS) { ++ qCWarning(KCONFIG_CORE_LOG) << "Failed to open HKLM" << regKey; ++ return; ++ } ++ ++ DWORD subKeys = 0, ++ maxSubKeyLen = 0; ++ DWORD err = RegQueryInfoKey(key, ++ nullptr, ++ nullptr, ++ nullptr, ++ &subKeys, ++ &maxSubKeyLen, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr); ++ ++ if (err != ERROR_SUCCESS) { ++ qCWarning(KCONFIG_CORE_LOG) << "Failed to query key info for" << regKey; ++ RegCloseKey(key); ++ return; ++ } ++ ++ maxSubKeyLen++; ++ wchar_t *subKey = new wchar_t[maxSubKeyLen + 1]; ++ for (DWORD i = 0; i < subKeys; i++) { ++ DWORD keyLen = maxSubKeyLen; ++ err = RegEnumKeyEx(key, i, ++ subKey, ++ &keyLen, ++ nullptr, ++ nullptr, ++ nullptr, ++ nullptr); ++ if (err != ERROR_SUCCESS) { ++ qCWarning(KCONFIG_CORE_LOG) << "Failed to enum value " << i; ++ continue; ++ } ++ QString subKeyName = QString::fromWCharArray(subKey, keyLen); ++ QString subReg = regKey + QLatin1Char('\\') + subKeyName; ++ if (subKeyName.endsWith(QStringLiteral("[$i]"))) { ++ subKeyName.chop(4); ++ } ++ parseRegValues (subReg, subKeyName, entryMap); ++ } ++ delete[] subKey; ++ RegCloseKey(key); ++} +diff --git a/src/core/registry_win_p.h b/src/core/registry_win_p.h +new file mode 100644 +index 00000000..1cf2ab74 +--- /dev/null ++++ b/src/core/registry_win_p.h +@@ -0,0 +1,14 @@ ++/* ++ This file is part of the KDE libraries ++ SPDX-FileCopyrightText: 2022 g10 Code GmbH ++ SPDX-FileContributor: Andre Heinecke ++ ++ SPDX-License-Identifier: LGPL-2.0-or-later ++*/ ++#include "kconfigdata_p.h" ++ ++#ifdef Q_OS_WIN ++void parseWindowsRegistry(const QString ®Key, KEntryMap &entryMap); ++#else ++void parseWindowsRegistry(const QString &, KEntryMap &) {} ++#endif +-- +2.30.2 diff --git a/patches/kleopatra/set-windows-registry.patch b/patches/kleopatra/set-windows-registry.patch new file mode 100755 index 00000000..2283c1a4 --- /dev/null +++ b/patches/kleopatra/set-windows-registry.patch @@ -0,0 +1,16 @@ +#! /bin/sh +patch -p1 -l -f $* < $0 +exit $? + +diff --git a/src/kleopatraapplication.cpp b/src/kleopatraapplication.cpp +index bbbd0172..7236e555 100644 +--- a/src/kleopatraapplication.cpp ++++ b/src/kleopatraapplication.cpp +@@ -241,6 +241,7 @@ void KleopatraApplication::init() + #ifdef Q_OS_WIN + QWindowsWindowFunctions::setWindowActivationBehavior( + QWindowsWindowFunctions::AlwaysActivateWindow); ++ KConfig::setWindowsRegistryKey("SOFTWARE\\GNU\\Kleopatra"); + #endif + const auto blockedUrlSchemes = Settings{}.blockedUrlSchemes(); + for (const auto &scheme : blockedUrlSchemes) {