From 69721092c033f1c69060d2a5ae865f72a862e583 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 23 Jul 2021 12:57:00 -0400 Subject: meta-openembedded: subtree update:2449e5f07a..8fbcfb9f02 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adrian Zaharia (1): ntp: fix ntpdate to wait for subprocesses Akifumi Chikazawa (1): openvpn: add CVE-2020-7224 and CVE-2020-27569 to allowlist Andrea Adami (3): initramfs-kexecboot-image: support cases where machines override IMAGE_FSTYPES initramfs-debug-image: support cases where machines override IMAGE_FSTYPES rapidjson: remove stale LIB_INSTALL_DIR Andreas Müller (50): poppler: upgrade 21.05.0 -> 21.06.0 dbus-broker: upgrade 28 -> 29 libmbim: upgrade 1.24.6 -> 1.24.8 icewm: upgrade 2.3.3 -> 2.3.4 poppler: upgrade 21.06.0 -> 21.06.1 gnome-disk-utility: upgrade 3.36.3 -> 40.1 gnome-font-viewer: upgrade 3.34.0 -> 40.0 pipewire: upgrade 0.3.24 -> 0.3.29 libqmi: upgrade 1.28.4 -> 1.28.6 ttf-noto-emoji: upgrade 20190815 -> 20200916 remmina: upgrade 1.4.17 -> 1.4.18 metacity: upgrade 3.36.1 -> 3.40.0 gnome-flashback: upgrade 3.36.3 -> 3.40.0 gthumb: initial add 3.10.3 atkmm: upgrade 2.28.0 -> 2.28.2 atkmm: build with meson dconf: upgrade 0.38.0 -> 0.40.0 evolution-data-server: upgrade 3.40.1 -> 3.40.2 file-roller: upgrade 3.38.1 -> 3.40.0 glibmm: upgrade 2.62.0 -> 2.66.1 / build with meson / cleanup recipe gmime: upgrade 3.2.6 -> 3.2.7 gnome-autoar; upgrade 0.3.2 -> 0.3.3 gnome-keyring: upgrade 3.36.0 -> 40.0 gnome-online-accounts: upgrade 3.36.0 -> 3.40.0 gnome-terminal: upgrade 3.36.2 -> 3.40.2 gspell: upgrade 1.8.4 -> 1.9.1 gtkmm3: upgrade 3.24.3 -> 3.24.5 gtksourceview4: upgrade 4.6.1 -> 4.8.1 gupnp: upgrade 1.2.6 -> 1.2.7 gvfs: upgrade 1.44.1 -> 1.48.1 libgdata: upgrade 0.17.13 -> 0.18.1 libmediaart 0.7.0: remove libmediaart-2.0: upgrade 1.9.4 -> 1.9.5 / merge inc file / build with meson libsigc++-2.0: upgrade 2.10.6 -> 2.10.7 nautilus: upgrade 40.1 -> 40.2 pangomm: upgrade 2.42.1 -> 2.46.1 / build with meson yelp-xsl: upgrade 3.36.0 -> 4.02 yelp-tools: upgrade 3.32.2 -> 40.0 yelp: upgrade 3.36.0 -> 40.2 modemmanager: upgrade 1.16.4 -> 1.16.6 xfce4-settings: 4.16.1 upgrade 4.16.2 blueman: upgrade 2.1.4 -> 2.2.1 pipewire: upgrade 0.3.30 -> 0-3-31 cmark: upgrade 0.29.0 -> 0.30.0 networkmanager: upgrade 1.30.4 -> 1.32.2 ristretto: upgrade 0.10.0 -> 0.11.0 libgusb: upgrade 0.3.6 -> 0.3.7 poppler: upgrade 21.06.1 -> 21.07.0 gegl: Disable pango on native build to fix gimp build segfaults gimp: remove --disable-vector-icons Bartosz Golaszewski (13): libgpiod: coding style fixes libgpiod: list all packages in a single assignment libgpiod: fix RRECOMMENDS for python bindings libgpiod: correctly split output files into packages libgpiod: add RDEPENDS for tests libgpiod: redirect stdout from the ptest executable to a file libgpiod: ptest: run all test-suites if possible libgpiod: ptest: warn if the gpio-mockup kernel module is not selected libgpiod: ptest: add kernel-modules to RRECOMMENDS libgpiod: ptest: only rrecommend a single module that we need libgpiod: add the python test-suite to the ptest package libgpiod: update my email address python3-joblib: new package Ben Horgan (1): cpputest: Add initial recipe. Version 4.0. Carlos Rafael Giani (2): pipewire: Add filter-chain files to modules-filter-chain package pipewire: Upgrade to 0.3.30 Changqing Li (1): mousepad: fix warning during postinst Chen Qi (1): minifi-cpp: set CLEANBROKEN to 1 Daiane Angolini (1): wireguard-module: Stop overriding modules_install in the recipe Daniel Klauer (1): spidev-test: Update common-licenses reference David Sterling (1): can-isotp: Upgrade to latest on master Ed Tanous (1): Use the built-in options for removing pack tools Geoff Parker (1): cifs-utils: set ROOTSBINDIR to /usr/sbin if DISTRO_FEATURES has usrmerge Gianfranco (2): vboxguestdrivers: add a fix for build failure with kernel 5.13 dlt-daemon: update from 2.18.6 to 2.18.7 Hongxu Jia (1): debootstrap: fix runtime failure on nativesdk Joshua Watt (1): gnome: gnome-shell: Move gsettings to their own package Kai Kang (4): python3-m2crypto: fix word size for qemuppc64 little endian python3-m2crypto: avoid host contamination for swig bats: fix qa issue when multilib eanbled mariadb: fix failures to start install_db.service Khem Raj (57): glog: Upgrade to 0.5.0 mbedtls: Upgrade to 2.26.0 mbedtls: Add packageconfig for warning-as-errors memcached: upgrade to 1.6.9 indent: Remove dead code using count_parens function glm: Fix additional clang warnings tbb: Fix warnings with clang libwebsockets: Update to latest on v4.2-stable packagegroup-meta-oe: Add libparse-yapp-perl netplan: Fix a warning with clang python3-yappi: Fix patching errors packagegroup-meta-oe: Add zsync-curl klibc: Add clang's -rtlib to known options libpfm4: Upgrade to 4.11.0 ltrace: Remove unused static function flashrom: Fix build with clang mongodb: Enable wiredtiger only on aarch64/x86_64 hosts mariadb: Fix build with clang/musl c-ares: Upgrade to 1.17.1 release nodejs: Update to 14.17.1 rocksdb: Upgrade to 6.20.3 rocksdb: Implement toku_time_now function for rv32/rv64 rocksdb: Fix build with ppc64/musl rocksdb: Implement timer for mips rocksdb: Implement timer for armv6+ rocksdb: Fix build with gcc on rv32 and mips libzip: Upgrade to 1.8.0 czmq: Inherit pkgconfig czmq: Add libmicrohttpd feature via packageconfig czmq: Use Cmake knobs to enable/disable designed packageconfigs czmq: Add nss packageconfig meta-python: Add python3-fastjsonschema and its dependencies packagegroup-meta-python: Add newly added recipes python3-process-tests: Add recipe python3-aspectlib: Add ptests python3-execnet: Add ptests python3-py-cpuinfo: Add ptests libc-bench: Do not override ldflags in makefile mpich: Add libgcc to ldflags on x86/glibc mpd: Update to 0.22.9 imlib2: Use propert git SHA in SRCREV suitesparse: Update to 5.10.1 packagegroup-meta-oe: Add libyang sysdig: Disable JIT on ppc64 portaudio-v19: Use GNUInstallDirs to make it portable keepalived: Upgrade to 2.2.2 suitesparse: Fix LIC_FILES_CHKSUM xscreensaver: Update to 6.01 ltrace: Fix mips build with kernels 5.13+ python3-pyusb: Add missing runtime dependency on libusb1 can-isotp: Ignore in world builds postfix: Upgrade to 3.6.1 packagegroup-meta-oe: Add new package cpputest apitrace: Update to latest trunk fatresize: Disable building documentation files layers: Fix git send-email instructions in README autofs: Upgrade to 5.1.7 Leon Anavi (61): python3-oauthlib: Upgrade 3.1.0 -> 3.1.1 python3-django: Upgrade 3.2.3 -> 3.2.4 python3-sqlalchemy: Upgrade 1.4.15 -> 1.4.17 python3-aiohue: Upgrade 2.5.0 -> 2.5.1 python3-typeguard: Upgrade 2.12.0 -> 2.12.1 python3-cbor2: Upgrade 5.3.0 -> 5.4.0 python3-ipython: Upgrade 7.24.0 -> 7.24.1 python3-pkgconfig: Upgrade 1.5.2 -> 1.5.4 python3-humanize: Upgrade 3.6.0 -> 3.7.1 python3-fasteners: Upgrade 0.16 -> 0.16.1 python3-pythonping: Upgrade 1.0.16 -> 1.1.0 python3-bitarray: Upgrade 2.1.0 -> 2.1.2 python3-coloredlogs: Upgrade 15.0 -> 15.0.1 python3-pysonos: Upgrade 0.0.50 -> 0.0.51 python3-dill: Upgrade 0.3.3 -> 0.3.4 python3-humanfriendly: Upgrade 9.1 -> 9.2 python3-zeroconf: Add recipe python3-pychromecast: Upgrade 9.1.2 -> 9.2.0 python3-ifaddr: Fix RDEPENDS python3-bitarray: Upgrade 2.1.2 -> 2.1.3 python3-astroid: Upgrade 2.5.7 -> 2.5.8 python3-license-expression: Upgrade 1.2 -> 21.6.14 python3-humanize: Upgrade 3.7.1 -> 3.9.0 python3-ruamel-yaml: Upgrade 0.17.7 -> 0.17.9 python3-cmd2: Upgrade 1.5.0 -> 2.1.1 python3-fasteners: Upgrade 0.16.1 -> 0.16.3 python3-elementpath: Upgrade 2.2.2 -> 2.2.3 python3-prompt-toolkit: Upgrade 3.0.18 -> 3.0.19 python3-mypy: Upgrade 0.812 -> 0.902 python3-send2trash: Upgrade 1.5.0 -> 1.7.1 python3-pandas: Upgrade 1.2.4 -> 1.2.5 python3-mypy: Upgrade 0.902 -> 0.910 python3-astroid: Upgrade 2.5.8 -> 2.6.0 python3-tqdm: Upgrade 4.61.0 -> 4.61.1 python3-ruamel-yaml: Upgrade 0.17.9 -> 0.17.10 python3-httplib2: Fix runtime dependencies python3-google-api-core: Add recipe python3-google-auth: Add recipe python3-googleapis-common-protos: Add recipe python3-google-api-python-client: Upgrade 2.6.0 -> 2.10.0 python3-ipython: Upgrade 7.24.1 -> 7.25.0 python3-croniter: Upgrade 1.0.13 -> 1.0.15 python3-priority: Upgrade 1.3.0 -> 2.0.0 python3-astroid: Upgrade 2.6.0 -> 2.6.2 python3-watchdog: Upgrade 2.1.2 -> 2.1.3 python3-humanize: Upgrade 3.9.0 -> 3.10.0 python3-pillow: Upgrade 8.2.0 -> 8.3.1 python3-bitarray: Upgrade 2.1.3 -> 2.2.1 python3-cmd2: Upgrade 2.1.1 -> 2.1.2 python3-pandas: Upgrade 1.2.5 -> 1.3.0 python3-texttable: Upgrade 1.6.3 -> 1.6.4 python3-dateutil: Upgrade 2.8.1 -> 2.8.2 python3-requests: Upgrade 2.25.1 -> 2.26.0 python3-websocket-client: Upgrade 1.0.1 -> 1.1.0 python3-pysonos: Upgrade 0.0.51 -> 0.0.53 python3-bitarray: Upgrade 2.2.1 -> 2.2.2 python3-pyusb: Upgrade 1.2.0 -> 1.2.1 python3-zeroconf: Upgrade 0.31.0 -> 0.33.1 python3-yamlloader: Upgrade 1.0.0 -> 1.1.0 python3-astroid: Upgrade 2.6.2 -> 2.6.5 python3-pkgconfig: Upgrade 1.5.4 -> 1.5.5 Luan Rafael Carneiro (1): libwebsockets: Update 4.2.0 -> 4.2.1 Luca Boccassi (2): dbus-broker: remove deprecated linux-4-17 option dbus-broker: enforce required versions of libselinux and libaudit Marek Vasut (1): nss: Fix build on Centos 7 Martin Jansa (1): rygel: require gobject-introspection-data in DISTRO_FEATURES Masaki Ambai (1): nss: add CVE-2006-5201 to allowlist Oleksandr Kravchuk (1): iwd: update to 1.15 Olivier Georget (1): libpfm4 4.10.1 : enable arm64 host platform Ovidiu Panait (1): libeigen: update LICENSE information Pascal Bach (1): python3-thrift: support native recipe Persian Prince (1): samba: Don't guess dirs for perllocal.pod removing Peter Bergin (4): linuxptp: use install from makefile and install more apps linuxptp: add homepage linuxptp: ship example configurations in separate package hiredis: add cmake config file for pkgconfig Peter Kjellerstedt (3): net-snmp: A little clean up net-snmp: Support building for native cryptsetup: Only recommend kernel modules when building for target Philip Balister (1): fftw: Update recipe to 3.3.9. Pierre-Jean Texier (5): libtinyxml2: upgrade 8.1.0 -> 9.0.0 sshfs-fuse: upgrade 3.7.1 -> 3.7.2 monit: upgrade 5.27.2 -> 5.28.0 spitools: upgrade 0.8.7 -> 1.0.0 linuxptp: fix upstream version check Ross Burton (1): zsync-curl: add recipe Sam Van Den Berge (1): libiio: fix installing libiio when python3 bindings are enabled Sekine Shigeki (2): add CVE-2011-2411 to allowlist ntp: add CVE-2016-9312 to allowlist Signed-off-by: Bartosz Golaszewski (1): Revert "libgpiod: ptest: warn if the gpio-mockup kernel module is not selected" Tim Orling (8): libcgi-perl: upgrade 4.51 -> 4.53 libcrypt-openssl-guess-perl: upgrade 0.12 -> 0.13 libextutils-cppguess-perl: upgrade 0.21 -> 0.23 libio-socket-ssl-perl: upgrade 2.068 -> 2.071 libmoo-perl: upgrade 2.004000 -> 2.005004 libnet-dns-perl: upgrade 1.26 -> 1.31 libtest-warnings-perl: upgrade 0.028 -> 0.030 logcheck: upgrade 1.3.20 -> 1.3.23 Tony Tascioglu (2): libyang: create recipe for libyang redis: upgrade to 6.2.4 Trevor Gamblin (9): libnftnl: upgrade 1.1.9 -> 1.2.0 nftables: upgrade 0.9.8 -> 0.9.9 python3-yarl: backport fix for test_url_query test python3-yappi: fix ptests python3-django: upgrade 2.2.23 -> 2.2.24 python3-django: upgrade 3.2.4 -> 3.2.5 python3-geomet: add recipe python3-cassandra-driver: add geomet to RDEPENDS, remove DISTUTILS options python3-geomet: Add missing RDEPENDS; add to packagegroup-meta-python Yi Zhao (14): libldb: upgrade 1.5.8 -> 2.3.0 samba: upgrade 4.10.18 -> 4.14.4 samba: update smb.conf libparse-yapp-perl: add recipe dhcp-relay: update bundled bind to 9.11.32 dhcp-relay: disable backtrace in bundled bind dhcp-relay: update 4.4.2 -> 4.4.2-P1 packagegroup-meta-networking: add dhcp-relay samba: disable check fcntl RW_HINTS when configure samba: upgrade 4.14.4 -> 4.14.5 minifi-cpp: set correct python processor directory in configure file samba: fix shebang for pidl samba: add missing runtime dependency for pidl audit: upgrade 3.0.1 -> 3.0.2 Zoltán Böszörményi (2): mariadb: Use qemu to run cross-compiled binaries mariadb: Upgrade to 10.5.11 hayashi.satoshi@fujitsu.com (1): dracut: add CVE-2010-4176 to allowlist ito-yuichi@fujitsu.com (2): cyrus-sasl: add CVE-2020-8032 to allowlist dovecot: add CVE-2016-4983 to allowlist massimo toscanelli (1): sysbench: fix memory test wangmy (8): samba: Solve the dependency problem when installing Samba fatresize: upgrade 1.0.2 -> 1.1.0 xfsprogs: upgrade 5.10.0 -> 5.12.0 ctags: upgrade 5.9.20210627.0 -> 5.9.20210711.0 icewm: upgrade 2.3.4 -> 2.6.0 yelp: upgrade 40.2 -> 40.3 live555: upgrade 20210406 -> 20210710 modemmanager: upgrade 1.16.6 -> 1.16.8 zangrc (49): python3-idna: upgrade 3.1 -> 3.2 netplan: upgrade 0.101 -> 0.102 wireshark: upgrade 3.4.5 -> 3.4.6 tracker: upgrade 3.0.4 -> 3.1.1 tracker-miners: upgrade 3.0.5 -> 3.1.1 rasdaemon: upgrade 0.6.6 -> 0.6.7 speedtest-cli: upgrade 2.1.2 -> 2.1.3 abseil-cpp: upgrade 20210324 -> 20210324.2 cryptsetup: upgrade 2.3.5 -> 2.3.6 ctags: upgrade 5.9.20210502.0 -> 5.9.20210606.0 opencl-clhpp: upgrade 2.0.13 -> 2.0.14 protobuf: upgrade 3.17.0 -> 3.17.3 toybox: upgrade 0.8.4 -> 0.8.5 fuse3: upgrade 3.10.3 -> 3.10.4 evince: upgrade 40.1 -> 40.2 mosquitto: upgrade 2.0.10 -> 2.0.11 ctags: upgrade 5.9.20210606.0 -> 20210613.0 fsverity-utils: upgrade 1.3 -> 1.4 googletest: upgrade 1.10.0 -> 1.11.0 mg: upgrade 20210314 -> 20210609 nano: upgrade 5.7 -> 5.8 openvpn: upgrade 2.5.2 -> 2.5.3 snort: upgrade 2.9.17.1 -> 2.9.18 function2: upgrade 4.1.0 -> 4.2.0 python3-configargparse: upgrade 1.4.1 -> 1.5 python3-grpcio-tools: upgrade 1.37.0 -> 1.38.1 python3-h5py: upgrade 3.2.1 -> 3.3.0 python3-isort: upgrade 5.8.0 -> 5.9.1 can-utils: upgrade 2020.12.0 -> 2021.06.0 ctags: upgrade 5.9.20210620.0 -> 5.9.20210627.0 python3-gast: upgrade 0.4.0 -> 0.5.0 python3-grpcio: upgrade 1.38.0 -> 1.38.1 python3-haversine: upgrade 2.3.0 -> 2.3.1 python3-m2crypto: upgrade 0.37.1 -> 0.38.0 python3-pyrsistent: upgrade 0.17.3 -> 0.18.0 babl: upgrade 0.1.86 -> 0.1.88 python3-pyusb: upgrade 1.1.1 -> 1.2.0 python3-google-api-python-client: upgrade 2.10.0 -> 2.12.0 firewalld: upgrade 0.9.3 -> 0.9.4 strongswan: upgrade 5.9.2 -> 5.9.3 opencl-clhpp: upgrade 2.0.14 -> 2.0.15 python3-cffi: upgrade 1.14.5 -> 1.14.6 python3-configargparse: upgrade 1.5 -> 1.5.1 python3-cryptography-vectors: upgrade 3.4.6 -> 3.4.7 python3-flask-migrate: upgrade 3.0.0 -> 3.0.1 python3-flask-socketio: upgrade 5.0.3 -> 5.1.0 python3-isort: upgrade 5.9.1 -> 5.9.2 python3-networkx: upgrade 2.5.1 -> 2.6.1 python3-gnupg: upgrade 0.4.6 -> 0.4.7 zhengruoqin (30): opensaf: upgrade 5.21.03 -> 5.21.06 fio: upgrade 3.26 -> 3.27 gensio: upgrade 2.2.5 -> 2.2.7 memtester: upgrade 4.5.0 -> 4.5.1 graphene: upgrade 1.10.2 -> 1.10.6 iozone3: upgrade 490 -> 492 net-snmp: upgrade 5.9 -> 5.9.1 rsnapshot: upgrade 1.4.3 -> 1.4.4 rsyslog: upgrade 8.2104.0 -> 8.2106.0 python3-absl: upgrade 0.12.0 -> 0.13.0 ctags: upgrade 5.9.20210613.0 -> 5.9.20210620.0 fwts: upgrade 21.03.00 -> 21.06.00 grpc: upgrade 1.38.0 -> 1.38.1 libconfig: upgrade 1.7.2 -> 1.7.3 satyr: upgrade 0.37 -> 0.38 libnet-telnet-perl: upgrade 3.04 -> 3.05 python3-scrypt: upgrade 0.8.17 -> 0.8.18 python3-urllib3: upgrade 1.26.5 -> 1.26.6 python3-sqlalchemy: upgrade 1.4.17 -> 1.4.20 python3-qrcode: upgrade 6.1 -> 7.1 python3-regex: upgrade 2021.4.4 -> 2021.7.6 python3-sentry-sdk: upgrade 1.1.0 -> 1.2.0 python3-tqdm: upgrade 4.61.1 -> 4.61.2 python3-xlsxwriter: upgrade 1.4.3 -> 1.4.4 ostree: upgrade 2021.2 -> 2021.3 span-lite: upgrade 0.9.2 -> 0.10.0 python3-pymisp: upgrade 2.4.143 -> 2.4.144 python3-protobuf: upgrade 3.17.0 -> 3.17.3 python3-pulsectl: upgrade 21.5.17 -> 21.5.18 python3-pytun: upgrade 2.3.0 -> 2.4.1 Signed-off-by: Andrew Geissler Change-Id: Ie45184e6f308aa2fc98ee6edf4a3ca1c4afbb5b4 --- meta-openembedded/meta-xfce/README | 2 +- ...n-support-Properly-handle-plugin-settings.patch | 279 +++++++++++++++++++++ .../recipes-apps/mousepad/mousepad_0.5.5.bb | 2 + .../recipes-apps/ristretto/ristretto_0.10.0.bb | 16 -- .../recipes-apps/ristretto/ristretto_0.11.0.bb | 15 ++ .../xfce4-settings/xfce4-settings_4.16.1.bb | 30 --- .../xfce4-settings/xfce4-settings_4.16.2.bb | 30 +++ 7 files changed, 327 insertions(+), 47 deletions(-) create mode 100644 meta-openembedded/meta-xfce/recipes-apps/mousepad/files/0001-Plugin-support-Properly-handle-plugin-settings.patch delete mode 100644 meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.10.0.bb create mode 100644 meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.11.0.bb delete mode 100644 meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.1.bb create mode 100644 meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.2.bb (limited to 'meta-openembedded/meta-xfce') diff --git a/meta-openembedded/meta-xfce/README b/meta-openembedded/meta-xfce/README index 70ad47a2d1..bbf4b2edf2 100644 --- a/meta-openembedded/meta-xfce/README +++ b/meta-openembedded/meta-xfce/README @@ -17,6 +17,6 @@ BBMASK = "meta-xfce/recipes-multimedia" Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-xfce]' in the subject' When sending single patches, please using something like: -'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-xfce][PATCH' +git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix='meta-xfce][PATCH' Layer maintainer: Kai Kang diff --git a/meta-openembedded/meta-xfce/recipes-apps/mousepad/files/0001-Plugin-support-Properly-handle-plugin-settings.patch b/meta-openembedded/meta-xfce/recipes-apps/mousepad/files/0001-Plugin-support-Properly-handle-plugin-settings.patch new file mode 100644 index 0000000000..0ace907c41 --- /dev/null +++ b/meta-openembedded/meta-xfce/recipes-apps/mousepad/files/0001-Plugin-support-Properly-handle-plugin-settings.patch @@ -0,0 +1,279 @@ +From 6d1800a305698f801236a2d73ebe178fa2d1139d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= +Date: Sat, 12 Jun 2021 16:45:56 +0200 +Subject: [PATCH] Plugin support: Properly handle plugin settings + +What was done in !92 was strictly speaking only suitable for one plugin. +This could be extended to several plugins by adding a `.gschema.xml` +file in `plugins/`, intermediate between the one of the application and +those of the plugins, or by refactoring the Makefiles with inclusions +and a single call to `@GSETTINGS_RULES@`. + +But in any case, due to the relative rigidity of the `.gschema.xml` file +format and the internal workings of `glib-compile-schemas`, this would +only be suitable for plugins that are present at compile time, i.e. +"fake plugins". + +Instead, this commit adds the plugin settings at load time, as is +natural and as the `GSettingsSchema` documentation states. To do this, +the setting store is extended to contain several roots: the application +root and the plugin roots. + +For the latter, a unified naming convention is preserved, with the +prefix `org.xfce.mousepad.plugins.`, but they are in fact completely +independent of each other and independent of the application root. + +Fixes #136, related to !92. + +Upstream-Status: Backport [https://gitlab.xfce.org/apps/mousepad/-/commit/0d9d4f05aace800118d0a390e4e5dc5ebb940ca5] + +Signed-off-by: Changqing Li +--- + mousepad/mousepad-application.c | 12 +++- + mousepad/mousepad-settings-store.c | 70 ++++++++++++------- + mousepad/mousepad-settings-store.h | 3 + + mousepad/mousepad-settings.c | 14 +++- + mousepad/mousepad-settings.h | 1 + + mousepad/org.xfce.mousepad.gschema.xml | 1 - + ...g.xfce.mousepad.plugins.gspell.gschema.xml | 4 -- + 7 files changed, 71 insertions(+), 34 deletions(-) + +diff --git a/mousepad/mousepad-application.c b/mousepad/mousepad-application.c +index d9a64ff..378d78e 100644 +--- a/mousepad/mousepad-application.c ++++ b/mousepad/mousepad-application.c +@@ -721,7 +721,7 @@ mousepad_application_load_plugins (MousepadApplication *application) + GError *error = NULL; + GDir *dir; + const gchar *basename; +- gchar *provider_name; ++ gchar *provider_name, *schema_id; + gchar **strs; + gsize n_strs; + +@@ -775,6 +775,16 @@ mousepad_application_load_plugins (MousepadApplication *application) + application, G_CONNECT_SWAPPED); + g_action_map_add_action (G_ACTION_MAP (application), G_ACTION (action)); + ++ /* add its settings to the setting store */ ++ if (g_str_has_prefix (provider_name, "mousepad-plugin-")) ++ schema_id = provider_name + 16; ++ else ++ schema_id = provider_name; ++ ++ schema_id = g_strconcat (MOUSEPAD_ID, ".plugins.", schema_id, NULL); ++ mousepad_settings_add_root (schema_id); ++ g_free (schema_id); ++ + /* instantiate this provider types and initialize its action state */ + if (g_strv_contains ((const gchar *const *) strs, provider_name)) + { +diff --git a/mousepad/mousepad-settings-store.c b/mousepad/mousepad-settings-store.c +index de989bd..d117c53 100644 +--- a/mousepad/mousepad-settings-store.c ++++ b/mousepad/mousepad-settings-store.c +@@ -29,9 +29,11 @@ + + struct MousepadSettingsStore_ + { +- GObject parent; +- GSettings *root; +- GHashTable *keys; ++ GObject parent; ++ ++ GSettingsBackend *backend; ++ GList *roots; ++ GHashTable *keys; + }; + + +@@ -76,8 +78,10 @@ mousepad_setting_key_new (const gchar *key_name, + + + static void +-mousepad_setting_key_free (MousepadSettingKey *key) ++mousepad_setting_key_free (gpointer data) + { ++ MousepadSettingKey *key = data; ++ + if (G_LIKELY (key != NULL)) + { + g_object_unref (key->settings); +@@ -138,16 +142,16 @@ mousepad_settings_store_class_init (MousepadSettingsStoreClass *klass) + static void + mousepad_settings_store_finalize (GObject *object) + { +- MousepadSettingsStore *self; ++ MousepadSettingsStore *self = MOUSEPAD_SETTINGS_STORE (object); + + g_return_if_fail (MOUSEPAD_IS_SETTINGS_STORE (object)); + +- self = MOUSEPAD_SETTINGS_STORE (object); ++ if (self->backend != NULL) ++ g_object_unref (self->backend); + ++ g_list_free_full (self->roots, g_object_unref); + g_hash_table_destroy (self->keys); + +- g_object_unref (self->root); +- + G_OBJECT_CLASS (mousepad_settings_store_parent_class)->finalize (object); + } + +@@ -212,28 +216,19 @@ static void + mousepad_settings_store_init (MousepadSettingsStore *self) + { + #ifdef MOUSEPAD_SETTINGS_KEYFILE_BACKEND +- GSettingsBackend *backend; +- gchar *conf_file; +- conf_file = g_build_filename (g_get_user_config_dir (), +- "Mousepad", +- "settings.conf", +- NULL); +- backend = g_keyfile_settings_backend_new (conf_file, "/", NULL); ++ gchar *conf_file; ++ ++ conf_file = g_build_filename (g_get_user_config_dir (), "Mousepad", "settings.conf", NULL); ++ self->backend = g_keyfile_settings_backend_new (conf_file, "/", NULL); + g_free (conf_file); +- self->root = g_settings_new_with_backend (MOUSEPAD_ID, backend); +- g_object_unref (backend); + #else +- self->root = g_settings_new (MOUSEPAD_ID); ++ self->backend = NULL; + #endif + +- self->keys = g_hash_table_new_full (g_str_hash, +- g_str_equal, +- NULL, +- (GDestroyNotify) mousepad_setting_key_free); ++ self->roots = NULL; ++ self->keys = g_hash_table_new_full (g_str_hash, g_str_equal, NULL, mousepad_setting_key_free); + +- mousepad_settings_store_add_settings (self, MOUSEPAD_ID, +- g_settings_schema_source_get_default (), +- self->root); ++ mousepad_settings_store_add_root (self, MOUSEPAD_ID); + } + + +@@ -246,6 +241,31 @@ mousepad_settings_store_new (void) + + + ++void ++mousepad_settings_store_add_root (MousepadSettingsStore *self, ++ const gchar *schema_id) ++{ ++ GSettingsSchemaSource *source; ++ GSettingsSchema *schema; ++ GSettings *root; ++ ++ source = g_settings_schema_source_get_default (); ++ schema = g_settings_schema_source_lookup (source, schema_id, TRUE); ++ ++ /* exit silently if no schema is found: plugins may have settings or not */ ++ if (schema == NULL) ++ return; ++ ++ root = g_settings_new_full (schema, self->backend, NULL); ++ g_settings_schema_unref (schema); ++ ++ self->roots = g_list_prepend (self->roots, root); ++ ++ mousepad_settings_store_add_settings (self, schema_id, source, root); ++} ++ ++ ++ + const gchar * + mousepad_settings_store_lookup_key_name (MousepadSettingsStore *self, + const gchar *setting) +diff --git a/mousepad/mousepad-settings-store.h b/mousepad/mousepad-settings-store.h +index 3f5cae1..4842036 100644 +--- a/mousepad/mousepad-settings-store.h ++++ b/mousepad/mousepad-settings-store.h +@@ -38,6 +38,9 @@ GType mousepad_settings_store_get_type (void); + + MousepadSettingsStore *mousepad_settings_store_new (void); + ++void mousepad_settings_store_add_root (MousepadSettingsStore *store, ++ const gchar *schema_id); ++ + const gchar *mousepad_settings_store_lookup_key_name (MousepadSettingsStore *store, + const gchar *setting); + +diff --git a/mousepad/mousepad-settings.c b/mousepad/mousepad-settings.c +index d071de6..66b338d 100644 +--- a/mousepad/mousepad-settings.c ++++ b/mousepad/mousepad-settings.c +@@ -24,6 +24,15 @@ static MousepadSettingsStore *settings_store = NULL; + + + ++void ++mousepad_settings_init (void) ++{ ++ if (settings_store == NULL) ++ settings_store = mousepad_settings_store_new (); ++} ++ ++ ++ + void + mousepad_settings_finalize (void) + { +@@ -39,10 +48,9 @@ mousepad_settings_finalize (void) + + + void +-mousepad_settings_init (void) ++mousepad_settings_add_root (const gchar *schema_id) + { +- if (settings_store == NULL) +- settings_store = mousepad_settings_store_new (); ++ mousepad_settings_store_add_root (settings_store, schema_id); + } + + +diff --git a/mousepad/mousepad-settings.h b/mousepad/mousepad-settings.h +index bc63d11..615be51 100644 +--- a/mousepad/mousepad-settings.h ++++ b/mousepad/mousepad-settings.h +@@ -87,6 +87,7 @@ G_BEGIN_DECLS + + void mousepad_settings_init (void); + void mousepad_settings_finalize (void); ++void mousepad_settings_add_root (const gchar *schema_id); + + void mousepad_setting_bind (const gchar *setting, + gpointer object, +diff --git a/mousepad/org.xfce.mousepad.gschema.xml b/mousepad/org.xfce.mousepad.gschema.xml +index e802719..8509ee3 100644 +--- a/mousepad/org.xfce.mousepad.gschema.xml ++++ b/mousepad/org.xfce.mousepad.gschema.xml +@@ -39,7 +39,6 @@ + + + +- + + + +diff --git a/plugins/gspell-plugin/org.xfce.mousepad.plugins.gspell.gschema.xml b/plugins/gspell-plugin/org.xfce.mousepad.plugins.gspell.gschema.xml +index 6db65b6..95295ba 100644 +--- a/plugins/gspell-plugin/org.xfce.mousepad.plugins.gspell.gschema.xml ++++ b/plugins/gspell-plugin/org.xfce.mousepad.plugins.gspell.gschema.xml +@@ -1,9 +1,5 @@ + + +- +- +- +- + + + +-- +2.17.1 + diff --git a/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.5.bb b/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.5.bb index 830d86b8a1..a93ff551b4 100644 --- a/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.5.bb +++ b/meta-openembedded/meta-xfce/recipes-apps/mousepad/mousepad_0.5.5.bb @@ -7,6 +7,8 @@ DEPENDS = "gtk+3 gtksourceview4 xfconf xfce4-dev-tools-native" inherit xfce-app gsettings mime-xdg +SRC_URI += "file://0001-Plugin-support-Properly-handle-plugin-settings.patch" + SRC_URI[sha256sum] = "40c35f00e0e10df50a59bd0dbba9007d2fb5574ed8a2aa73b0fc5ef40e64abe1" PACKAGECONFIG ??= "" diff --git a/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.10.0.bb b/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.10.0.bb deleted file mode 100644 index fbca96f606..0000000000 --- a/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.10.0.bb +++ /dev/null @@ -1,16 +0,0 @@ -SUMMARY = "Tiny image-viewer" -HOMEPAGE = "https://docs.xfce.org/apps/ristretto/start" -SECTION = "x11/application" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=35d145429ad3cbf5308d1dc93f66376b" - -DEPENDS = "exo libexif libxfce4ui libxfce4util xfconf cairo file" - -inherit xfce-app mime-xdg - -RRECOMMENDS_${PN} += "tumbler" - -SRC_URI[md5sum] = "4249e14fba78728481d89ce61a8771fc" -SRC_URI[sha256sum] = "16225dd74245eb6e0f82b9c72c6112f161bb8d8b11f3fc77277b7bc3432d4769" - -FILES_${PN} += "${datadir}/metainfo" diff --git a/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.11.0.bb b/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.11.0.bb new file mode 100644 index 0000000000..e611ddd935 --- /dev/null +++ b/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.11.0.bb @@ -0,0 +1,15 @@ +SUMMARY = "Tiny image-viewer" +HOMEPAGE = "https://docs.xfce.org/apps/ristretto/start" +SECTION = "x11/application" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=35d145429ad3cbf5308d1dc93f66376b" + +DEPENDS = "exo libexif libxfce4ui libxfce4util xfconf cairo file" + +inherit xfce-app mime-xdg + +RRECOMMENDS_${PN} += "tumbler" + +SRC_URI[sha256sum] = "877e30d412c8cbfa9706f4ac0cab1a478f5829beafb773addc7722ca0cb78823" + +FILES_${PN} += "${datadir}/metainfo" diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.1.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.1.bb deleted file mode 100644 index ccd55723ab..0000000000 --- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.1.bb +++ /dev/null @@ -1,30 +0,0 @@ -SUMMARY = "Xfce4 settings" -SECTION = "x11/wm" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" -DEPENDS = "exo garcon libxi virtual/libx11 xrandr libxcursor libxklavier upower" - -inherit xfce features_check mime-xdg - -REQUIRED_DISTRO_FEATURES = "x11" - -SRC_URI += "file://0001-xsettings.xml-Set-default-themes.patch" -SRC_URI[sha256sum] = "bb28e1be7aa34d0edb1cfbaacc509a4267db56828b36cd6be312a202973635c6" - -EXTRA_OECONF += "--enable-maintainer-mode --disable-debug" - -PACKAGECONFIG ??= " \ - ${@bb.utils.contains('DISTRO_FEATURES','alsa','sound-setter', bb.utils.contains('DISTRO_FEATURES','pulseaudio','sound-setter','',d),d)} \ -" -PACKAGECONFIG[notify] = "--enable-libnotify,--disable-libnotify,libnotify" -PACKAGECONFIG[sound-setter] = "--enable-sound-settings, --disable-sound-settings, libcanberra, libcanberra-gtk2 sound-theme-freedesktop" - -FILES_${PN} += " \ - ${libdir}/xfce4 \ - ${datadir}/xfce4 \ -" - -RRECOMMENDS_${PN} += "adwaita-icon-theme" -RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','alsa','libcanberra-alsa','',d)}" -RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','pulseaudio','libcanberra-pulse','',d)}" -RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','xfce4-datetime-setter','',d)}" diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.2.bb new file mode 100644 index 0000000000..bf853bfed6 --- /dev/null +++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.16.2.bb @@ -0,0 +1,30 @@ +SUMMARY = "Xfce4 settings" +SECTION = "x11/wm" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" +DEPENDS = "exo garcon libxi virtual/libx11 xrandr libxcursor libxklavier upower" + +inherit xfce features_check mime-xdg + +REQUIRED_DISTRO_FEATURES = "x11" + +SRC_URI += "file://0001-xsettings.xml-Set-default-themes.patch" +SRC_URI[sha256sum] = "4dd7cb420860535e687f673c0b5c0274e0d2fb67181281d4b85be9197da03d7e" + +EXTRA_OECONF += "--enable-maintainer-mode --disable-debug" + +PACKAGECONFIG ??= " \ + ${@bb.utils.contains('DISTRO_FEATURES','alsa','sound-setter', bb.utils.contains('DISTRO_FEATURES','pulseaudio','sound-setter','',d),d)} \ +" +PACKAGECONFIG[notify] = "--enable-libnotify,--disable-libnotify,libnotify" +PACKAGECONFIG[sound-setter] = "--enable-sound-settings, --disable-sound-settings, libcanberra, libcanberra-gtk2 sound-theme-freedesktop" + +FILES_${PN} += " \ + ${libdir}/xfce4 \ + ${datadir}/xfce4 \ +" + +RRECOMMENDS_${PN} += "adwaita-icon-theme" +RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','alsa','libcanberra-alsa','',d)}" +RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','pulseaudio','libcanberra-pulse','',d)}" +RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','xfce4-datetime-setter','',d)}" -- cgit v1.2.3