Skip to content

Commit

Permalink
gnome-base/dconf: bump to 0.30.1
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <[email protected]>
  • Loading branch information
leio committed Feb 22, 2019
1 parent 69e5099 commit 3b87f3b
Show file tree
Hide file tree
Showing 3 changed files with 144 additions and 0 deletions.
1 change: 1 addition & 0 deletions gnome-base/dconf/Manifest
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
DIST dconf-0.26.1.tar.xz 218516 BLAKE2B ddb23a1f6519b5460903b1a91ba48242f144a768f7ec5b9e82953589474df998061a4fbfb3605027cb51db44f7e49f88c774a735600de2bedaf8889b58e050bc SHA512 4d2b4afce189e448e3bd4e9c2f9d3d5eec6c694748aec87a9a8de047296c858772a5234dbcace8e84d99c5378d2d1ba35cafb5e5ea7efca25c10a53a55b8b6da
DIST dconf-0.30.1.tar.xz 104376 BLAKE2B c5a90c092b6e028dafbc9aee2f29f622dc4a696e815266355de4a056fe507b0cca9eaa9b10753501ee44f74ee57d0095fd55aafc7205ffea1f0321ed705dbe0b SHA512 f7d136aec7cb75b64c7d9446d520f4c4af368e6d22346b7bb8ad66c08afaa03a72aacd44016dae7690e37b7d0deb9a16187445db176427a12a8b3cd3885c9e03
81 changes: 81 additions & 0 deletions gnome-base/dconf/dconf-0.30.1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# 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
sys-apps/dbus
"
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
}
62 changes: 62 additions & 0 deletions gnome-base/dconf/files/0.30.1-bash-completion-dir.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
From 012b92b115ed96cc66818adbd31557765078be65 Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <[email protected]>
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

0 comments on commit 3b87f3b

Please sign in to comment.