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>

Reply via email to