aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Fish <gentoo@seaofdirac.net>2019-07-19 07:45:03 +0200
committerNicholas Fish <gentoo@seaofdirac.net>2019-07-19 07:45:03 +0200
commite2844c0d42880449eaba30a4ebc839ad35b7feac (patch)
tree2fa9dad6bedf11b92f738e6c2f32a32e37311173
parentapp-office/libreoffice: Trim xdg-utils/kde-cli-tools dep to remove DBUS trans... (diff)
downloadennui-e2844c0d42880449eaba30a4ebc839ad35b7feac.tar.gz
ennui-e2844c0d42880449eaba30a4ebc839ad35b7feac.tar.bz2
ennui-e2844c0d42880449eaba30a4ebc839ad35b7feac.zip
gnome-base/dconf: Add trimming DBUS dependency
Signed-off-by: Nicholas Fish <gentoo@seaofdirac.net>
-rw-r--r--gnome-base/dconf/Manifest4
-rw-r--r--gnome-base/dconf/dconf-0.30.1.ebuild80
-rw-r--r--gnome-base/dconf/files/0.30.1-bash-completion-dir.patch62
-rw-r--r--gnome-base/dconf/metadata.xml8
4 files changed, 154 insertions, 0 deletions
diff --git a/gnome-base/dconf/Manifest b/gnome-base/dconf/Manifest
new file mode 100644
index 0000000..394e751
--- /dev/null
+++ b/gnome-base/dconf/Manifest
@@ -0,0 +1,4 @@
+AUX 0.30.1-bash-completion-dir.patch 3222 BLAKE2B 977be3dd9cbee50bc976fbae125b058579587dcf55918b07b4bc9708dc9cc19192acddfb225c540806b4866a2e431acc42d461f91fdd935626af366341617595 SHA512 aeaba2126d4e87caf7c467118f2e2d42330fbf5c1d0786c52a2782550c64f41e482034c08e4624cc231e49ec9f39e824d29796b4078090613cfe54adbd420eaa
+DIST dconf-0.30.1.tar.xz 104376 BLAKE2B c5a90c092b6e028dafbc9aee2f29f622dc4a696e815266355de4a056fe507b0cca9eaa9b10753501ee44f74ee57d0095fd55aafc7205ffea1f0321ed705dbe0b SHA512 f7d136aec7cb75b64c7d9446d520f4c4af368e6d22346b7bb8ad66c08afaa03a72aacd44016dae7690e37b7d0deb9a16187445db176427a12a8b3cd3885c9e03
+EBUILD dconf-0.30.1.ebuild 1818 BLAKE2B ace3606730256cbb64c3d60e4f590aae9c7ffcbe2f8a72239ced6e3c2c677918605cc88e195fa04fa878f28be774b0be2123b3e083650b43751977c24a212265 SHA512 9f18fb98092e15cf962f5143b3f78fe8579c730e7abfccd58c5837c2a3a62477cea838ef205efaf50819a61914e13f84f75874306b03c36bc947ad9a6eb04098
+MISC metadata.xml 249 BLAKE2B e71e1b95fee768c696704acbf7e3cf0e599ed2bc8de92bae0141d1194ef9e842bdc292798904487a9b90ddfda9b0e84abd3b76b1518576c1d288240e4e46f110 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506
diff --git a/gnome-base/dconf/dconf-0.30.1.ebuild b/gnome-base/dconf/dconf-0.30.1.ebuild
new file mode 100644
index 0000000..d000f8b
--- /dev/null
+++ b/gnome-base/dconf/dconf-0.30.1.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit bash-completion-r1 gnome.org gnome2-utils meson vala virtualx xdg
+
+DESCRIPTION="Simple low-level configuration system"
+HOMEPAGE="https://wiki.gnome.org/Projects/dconf"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-linux"
+IUSE="gtk-doc"
+
+RDEPEND="
+ >=dev-libs/glib-2.44.0:2
+"
+DEPEND="${RDEPEND}
+ $(vala_depend)
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/gdbus-codegen
+ gtk-doc? ( >=dev-util/gtk-doc-1.15 )
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PV}-bash-completion-dir.patch
+)
+
+src_prepare() {
+ xdg_src_prepare
+ vala_src_prepare
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dbash_completion_dir="$(get_bashcompdir)"
+ -Dman=true
+ $(meson_use gtk-doc gtk_doc)
+ )
+ meson_src_configure
+}
+
+src_test() {
+ virtx meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ # GSettings backend may be one of: memory, gconf, dconf
+ # Only dconf is really considered functional by upstream
+ # must have it enabled over gconf if both are installed
+ echo 'CONFIG_PROTECT_MASK="/etc/dconf"' >> 51dconf
+ echo 'GSETTINGS_BACKEND="dconf"' >> 51dconf
+ doenvd 51dconf
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_giomodule_cache_update
+
+ # Kill existing dconf-service processes as recommended by upstream due to
+ # possible changes in the dconf private dbus API.
+ # dconf-service will be dbus-activated on next use.
+ pids=$(pgrep -x dconf-service)
+ if [[ $? == 0 ]]; then
+ ebegin "Stopping dconf-service; it will automatically restart on demand"
+ kill ${pids}
+ eend $?
+ fi
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_giomodule_cache_update
+}
diff --git a/gnome-base/dconf/files/0.30.1-bash-completion-dir.patch b/gnome-base/dconf/files/0.30.1-bash-completion-dir.patch
new file mode 100644
index 0000000..5d256f7
--- /dev/null
+++ b/gnome-base/dconf/files/0.30.1-bash-completion-dir.patch
@@ -0,0 +1,62 @@
+From 012b92b115ed96cc66818adbd31557765078be65 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Fri, 22 Feb 2019 22:06:18 +0200
+Subject: [PATCH] build: Allow passing bash-completion dir and have a generic
+ fallback
+
+With autotools the installation path was just hardcoded to the usual
+location. In meson it was made to always check the path from
+bash-completion.pc, but some downstream might want to install the
+file without a bash-completion build-dep. Allow installing the
+completion file to a passed directory, and add back the fallback
+path if an explicit directory isn't passed and bash-completion
+package isn't found. This is also what the tracker project does.
+---
+ meson.build | 20 ++++++++++++++++----
+ meson_options.txt | 2 +-
+ 2 files changed, 17 insertions(+), 5 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index aa87823..a74d5c7 100644
+--- a/meson.build
++++ b/meson.build
+@@ -48,10 +48,22 @@ glib_dep = dependency('glib-2.0', version: '>= 2.44.0')
+ gio_module_dir = gio_dep.get_pkgconfig_variable('giomoduledir', define_variable: ['libdir', dconf_libdir])
+ dbus_session_service_dir = dependency('dbus-1').get_pkgconfig_variable('session_bus_services_dir', define_variable: ['datadir', dconf_datadir])
+
+-enable_bash_completion = get_option('bash_completion')
+-if enable_bash_completion
+- # FIXME: the `.pc` file is wrong because `completionsdir` should be relative to `datadir`, not `prefix`
+- completions_dir = dependency('bash-completion').get_pkgconfig_variable('completionsdir', define_variable: ['prefix', dconf_prefix])
++enable_bash_completion = false
++if get_option('bash_completion_dir') == 'yes' or get_option('bash_completion_dir') == 'auto'
++ bash_completion_package = dependency('bash-completion', required: false)
++ if bash_completion_package.found()
++ # FIXME: the `.pc` file is wrong because `completionsdir` should be relative to `datadir`, not `prefix`
++ completions_dir = bash_completion_package.get_pkgconfig_variable('completionsdir',
++ define_variable: [ 'prefix', dconf_prefix ])
++ else
++ completions_dir = join_paths(dconf_datadir, 'bash-completion', 'completions')
++ endif
++ enable_bash_completion = true
++elif get_option('bash_completion_dir') == 'no' or get_option('bash_completion_dir') == ''
++ enable_bash_completion = false
++else
++ enable_bash_completion = true
++ completions_dir = get_option('bash_completion_dir')
+ endif
+
+ configure_file(
+diff --git a/meson_options.txt b/meson_options.txt
+index a2794ce..3ac4ede 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,4 +1,4 @@
+-option('bash_completion', type: 'boolean', value: true, description: 'install bash completion files')
++option('bash_completion_dir', type: 'string', value: 'yes', description: 'directory to install Bash completion files (or "yes" for default directory, "no" to disable installation)')
+ option('man', type: 'boolean', value: true, description: 'generate man pages')
+ option('gtk_doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
+ option('vapi', type: 'boolean', value: true, description: 'install dconf client vapi')
+--
+2.17.0
+
diff --git a/gnome-base/dconf/metadata.xml b/gnome-base/dconf/metadata.xml
new file mode 100644
index 0000000..3998080
--- /dev/null
+++ b/gnome-base/dconf/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>