commit: 83a777a5bb4b302be6802cbe8fbd3a1b2dc8baa7 Author: Rasmus Thomsen <rasmus.thomsen <AT> live <DOT> de> AuthorDate: Wed Mar 29 14:29:34 2017 +0000 Commit: Aric Belsito <lluixhi <AT> gmail <DOT> com> CommitDate: Wed Mar 29 16:40:00 2017 +0000 URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=83a777a5
sys-apps/accountsservice: add ebuild with musl fixes sys-apps/accountsservice/Manifest | 5 ++ .../accountsservice/accountsservice-0.6.43.ebuild | 60 ++++++++++++++++++++++ ...ccountsservice-0.6.35-gentoo-system-users.patch | 51 ++++++++++++++++++ .../accountsservice/files/musl-fgetspent_r.patch | 34 ++++++++++++ sys-apps/accountsservice/metadata.xml | 12 +++++ 5 files changed, 162 insertions(+) diff --git a/sys-apps/accountsservice/Manifest b/sys-apps/accountsservice/Manifest new file mode 100644 index 0000000..745459b --- /dev/null +++ b/sys-apps/accountsservice/Manifest @@ -0,0 +1,5 @@ +AUX accountsservice-0.6.35-gentoo-system-users.patch 1122 SHA256 f1a308a364db53ec939505daf1435fb99cf2899789976e21080464720b78297f SHA512 e8ac404aed1da3ab4bb092b476cbb18f2ae7d209bcbe6a30cb9058f50dce0f70d64a3de593108ef5588132389d522d19975384eb1b8414119cb622bc7d738931 WHIRLPOOL 35d8756e1fcff2c08926ecc2864bacccad5542d59a028b0969a4429a4855528d9b607f4cfe5849d04f131db2e142dd1bf9531ca6b79b404e55d97ba0fd6162f8 +AUX musl-fgetspent_r.patch 1475 SHA256 97a06c8777ab85deae2633e2b83b865f1c65ded4e4263ef19e7949d8f482d1a0 SHA512 1c8ca5522c7533d105b91180c41f36a9d4a660fb86e275d6428caee70c9102ca61312c1ecb886f490b84f59aea18f630904cb91e1e9cac45dbc700bcd10c0363 WHIRLPOOL c3a1dfebf26d1770e86a679766a15d255e853fd1bf1b1b8b0d96fe9656413807cb21fddf9d6b79d4cdb0bd5b5f53035b55f5fa83113a1981e9780adfbecb0c83 +DIST accountsservice-0.6.43.tar.xz 381008 SHA256 ed3ba94aa38ceb822a0e1a1ac71bf1a8123babf90be049397b3a00900e48d6cc SHA512 0673430b7e5fd726397a9358d60d5c34542afaa786b795d3c8b544dc2bdab151c74f9a3daa4bcd94dc7669400a78cd4cddc453cad78ee8e431bf7c1f417138e2 WHIRLPOOL e704d9dcb5b7c0c6ee7c1ab5ed310ab2428e94d061663367f213c5903f68768680492d651524ef1e7594417335de529463d63b8d8a4d1cc8b6445358f1b97a33 +EBUILD accountsservice-0.6.43.ebuild 1497 SHA256 81c71c962f51ef316f072983dc7ba1bb847826fea69a1a323f8828c73a54283e SHA512 3cde07f954c2db1a17c5475d4802b3cfd5381fa9d359e26fa389ab868137f5be7dad420e086d275004902b27ca77d973c53d565e2c16a2686efbdb20247d1e84 WHIRLPOOL 4e5ac23047ef83656d83e074952cf021893be66dd29451d5b550e1ff4b642d5b20869c0df29c27bb5437d6ac06b458398e8a374db9583de19b5c98e99849e6c2 +MISC metadata.xml 396 SHA256 51257c7b97ea8af47f6485adee93352a26dc901024f316b3a1dcf8c2cbcd62bf SHA512 e523489c63c11a5ed2d060f9bfdf5cf5d47813c1289823032e9b45ed2dfdd1ef9d11a863403cd1492696f4ea0070a61ca3a8d8780d1bdba9ed710a035ef1a5ce WHIRLPOOL c4687da67a3971a43863ce13a2bba326a8271e392d5253024ecf0abe55977c09f81e06da7b5c4506a232a2abb1a8b13bd41ffa4a128f0c8fcb22f43c20de5e4c diff --git a/sys-apps/accountsservice/accountsservice-0.6.43.ebuild b/sys-apps/accountsservice/accountsservice-0.6.43.ebuild new file mode 100644 index 0000000..1e28d31 --- /dev/null +++ b/sys-apps/accountsservice/accountsservice-0.6.43.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit gnome2 systemd + +DESCRIPTION="D-Bus interfaces for querying and manipulating user account information" +HOMEPAGE="https://www.freedesktop.org/wiki/Software/AccountsService/" +SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ppc ppc64 ~sparc x86" + +IUSE="doc +introspection selinux systemd" + +CDEPEND=" + >=dev-libs/glib-2.37.3:2 + sys-auth/polkit + introspection? ( >=dev-libs/gobject-introspection-0.9.12:= ) + systemd? ( >=sys-apps/systemd-186:0= ) + !systemd? ( sys-auth/consolekit ) +" +DEPEND="${CDEPEND} + dev-libs/libxslt + dev-util/gdbus-codegen + >=dev-util/gtk-doc-am-1.15 + >=dev-util/intltool-0.40 + sys-devel/gettext + virtual/pkgconfig + doc? ( + app-text/docbook-xml-dtd:4.1.2 + app-text/xmlto ) +" +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-accountsd ) +" + +PATCHES=( + "${FILESDIR}/${PN}-0.6.35-gentoo-system-users.patch" + "${FILESDIR}/musl-fgetspent_r.patch" +) + +src_prepare() { + default + sed -i configure -e "s;utx\.log;wtmp;g" + export ac_cv_file__var_log_utx_log=yes +} + +src_configure() { + gnome2_src_configure \ + --disable-static \ + --disable-more-warnings \ + --localstatedir="${EPREFIX}"/var \ + --enable-admin-group="wheel" \ + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \ + $(use_enable doc docbook-docs) \ + $(use_enable introspection) \ + $(use_enable systemd) +} diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.35-gentoo-system-users.patch b/sys-apps/accountsservice/files/accountsservice-0.6.35-gentoo-system-users.patch new file mode 100644 index 0000000..39ebf42 --- /dev/null +++ b/sys-apps/accountsservice/files/accountsservice-0.6.35-gentoo-system-users.patch @@ -0,0 +1,51 @@ +--- a/src/user-classify.c.old 2013-12-04 20:29:48.944454769 +0100 ++++ b/src/user-classify.c 2013-12-04 20:32:59.728283477 +0100 +@@ -55,6 +55,48 @@ + "at", + "gdm", + "gnome-initial-setup" ++ /* Additional Gentoo system users with non-trivial login shell */ ++ "amanda", ++ "backuppc", ++ "drqueue", ++ "firebird", ++ "flexlm", ++ "foldingathome", ++ "geneweb", ++ "git", ++ "gnump3d", ++ "hacluster", ++ "hg", ++ "hsqldb", ++ "infinote", ++ "foldingathome", ++ "geneweb", ++ "git", ++ "gnump3d", ++ "hacluster", ++ "hg", ++ "hsqldb", ++ "infinote", ++ "jffnms", ++ "klive", ++ "mailman", ++ "mpd", ++ "mythtv", ++ "nagios", ++ "nx", ++ "oneadmin", ++ "openvpn", ++ "p2p", ++ "phxd", ++ "resin", ++ "rplayd", ++ "scponly", ++ "secoff", ++ "tinyproxy", ++ "ttrssd", ++ "vboxguest", ++ "vdr", ++ "vdradmin", + }; + + #define PATH_NOLOGIN "/sbin/nologin" diff --git a/sys-apps/accountsservice/files/musl-fgetspent_r.patch b/sys-apps/accountsservice/files/musl-fgetspent_r.patch new file mode 100644 index 0000000..c365065 --- /dev/null +++ b/sys-apps/accountsservice/files/musl-fgetspent_r.patch @@ -0,0 +1,34 @@ +Musl libc does not support fgetspent_r(), so fall back +to using the non-thread-safe fgetspent() function. + +--- a/src/daemon.c 2016-09-06 21:48:50.000000000 +0200 ++++ b/src/daemon.c 2016-11-25 10:41:01.614534302 +0100 +@@ -174,7 +174,7 @@ + int ret = 0; + + shadow_entry_buffers = g_malloc0 (sizeof (*shadow_entry_buffers)); +- ++#if defined(__GLIBC__) + ret = fgetspent_r (fp, &shadow_entry_buffers->spbuf, shadow_entry_buffers->buf, sizeof (shadow_entry_buffers->buf), &shadow_entry); + if (ret == 0) { + g_hash_table_insert (shadow_users, g_strdup (shadow_entry->sp_namp), shadow_entry_buffers); +@@ -185,6 +185,19 @@ + break; + } + } ++#else ++ /* Musl libc does not support fgetspent_r(), so fall back ++ * to using the non-thread-safe fgetspent() function. ++ */ ++ shadow_entry = fgetspent(fp); ++ if (shadow_entry == NULL) { ++ g_free (shadow_entry_buffers); ++ ++ if (errno != EINTR) { ++ break; ++ } ++ } ++#endif + } while (shadow_entry != NULL); + + fclose (fp); diff --git a/sys-apps/accountsservice/metadata.xml b/sys-apps/accountsservice/metadata.xml new file mode 100644 index 0000000..df1259a --- /dev/null +++ b/sys-apps/accountsservice/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>gn...@gentoo.org</email> + <name>Gentoo GNOME Desktop</name> + </maintainer> + <use> + <flag name="systemd">Use <pkg>sys-apps/systemd</pkg> instead of + <pkg>sys-auth/consolekit</pkg> for session tracking</flag> + </use> +</pkgmetadata>