summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2014-11-01 17:15:52 +0000
committerPacho Ramos <pacho@gentoo.org>2014-11-01 17:15:52 +0000
commite3278af1ec495690229556a772f01ed054e26d74 (patch)
tree921ff770057fe49a71167de2d01912ca0938a29a /sys-apps/accountsservice
parentSpecify LICENSE more precisely. Update ebuild to EAPI 5. (diff)
downloadgentoo-2-e3278af1ec495690229556a772f01ed054e26d74.tar.gz
gentoo-2-e3278af1ec495690229556a772f01ed054e26d74.tar.bz2
gentoo-2-e3278af1ec495690229556a772f01ed054e26d74.zip
Drop old
(Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key A188FBD4)
Diffstat (limited to 'sys-apps/accountsservice')
-rw-r--r--sys-apps/accountsservice/ChangeLog12
-rw-r--r--sys-apps/accountsservice/accountsservice-0.6.29-r1.ebuild64
-rw-r--r--sys-apps/accountsservice/accountsservice-0.6.35.ebuild68
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.21-gentoo-system-users.patch58
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.29-32bit-crash.patch30
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.34-gentoo-system-users.patch51
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.35-nondelete-root.patch47
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.35-older-glib.patch396
-rw-r--r--sys-apps/accountsservice/files/accountsservice-0.6.35-user-logic.patch211
-rw-r--r--sys-apps/accountsservice/metadata.xml3
10 files changed, 11 insertions, 929 deletions
diff --git a/sys-apps/accountsservice/ChangeLog b/sys-apps/accountsservice/ChangeLog
index 20342986ec5d..991d8782306e 100644
--- a/sys-apps/accountsservice/ChangeLog
+++ b/sys-apps/accountsservice/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for sys-apps/accountsservice
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/accountsservice/ChangeLog,v 1.46 2014/09/05 11:52:43 zlogene Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/accountsservice/ChangeLog,v 1.47 2014/11/01 17:15:52 pacho Exp $
+
+ 01 Nov 2014; Pacho Ramos <pacho@gentoo.org> -accountsservice-0.6.29-r1.ebuild,
+ -accountsservice-0.6.35.ebuild,
+ -files/accountsservice-0.6.21-gentoo-system-users.patch,
+ -files/accountsservice-0.6.29-32bit-crash.patch,
+ -files/accountsservice-0.6.34-gentoo-system-users.patch,
+ -files/accountsservice-0.6.35-nondelete-root.patch,
+ -files/accountsservice-0.6.35-older-glib.patch,
+ -files/accountsservice-0.6.35-user-logic.patch, metadata.xml:
+ Drop old
05 Sep 2014; Mikle Kolyada <zlogene@gentoo.org> accountsservice-0.6.37.ebuild:
ppc/ppc64 stable wrt bug #518014
diff --git a/sys-apps/accountsservice/accountsservice-0.6.29-r1.ebuild b/sys-apps/accountsservice/accountsservice-0.6.29-r1.ebuild
deleted file mode 100644
index 7b7e94da12c6..000000000000
--- a/sys-apps/accountsservice/accountsservice-0.6.29-r1.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/accountsservice/accountsservice-0.6.29-r1.ebuild,v 1.9 2014/04/18 19:51:09 swift Exp $
-
-EAPI="4"
-GCONF_DEBUG="no"
-GNOME2_LA_PUNT="yes"
-VALA_MIN_API_VERSION="0.16"
-VALA_USE_DEPEND="vapigen"
-
-inherit eutils gnome2 systemd vala
-
-DESCRIPTION="D-Bus interfaces for querying and manipulating user account information"
-HOMEPAGE="http://www.fedoraproject.org/wiki/Features/UserAccountDialog"
-SRC_URI="http://www.freedesktop.org/software/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~ia64 ~ppc ~ppc64 ~sparc x86"
-IUSE="doc +introspection selinux systemd vala"
-REQUIRED_USE="vala? ( introspection )"
-
-# Want glib-2.30 for gdbus
-RDEPEND=">=dev-libs/glib-2.30:2
- sys-auth/polkit
- introspection? ( >=dev-libs/gobject-introspection-0.9.12 )
- selinux? ( sec-policy/selinux-accountsd )
- systemd? ( >=sys-apps/systemd-186 )
- !systemd? ( sys-auth/consolekit )"
-DEPEND="${RDEPEND}
- 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 )
- vala? (
- >=dev-lang/vala-0.16.1-r1
- $(vala_depend) )"
-
-src_prepare() {
- epatch "${FILESDIR}/${PN}-0.6.21-gentoo-system-users.patch"
- epatch "${FILESDIR}/${P}-32bit-crash.patch" # bug #445894, fixed in 0.6.30
- use vala && vala_src_prepare
- gnome2_src_prepare
-}
-
-src_configure() {
- DOCS="AUTHORS NEWS README TODO"
- G2CONF="${G2CONF}
- --disable-static
- --disable-more-warnings
- --localstatedir="${EPREFIX}"/var
- --docdir="${EPREFIX}"/usr/share/doc/${PF}
- $(use_enable doc docbook-docs)
- $(use_enable introspection)
- $(use_enable vala)
- $(use_enable systemd)
- $(systemd_with_unitdir)"
- gnome2_src_configure
-}
diff --git a/sys-apps/accountsservice/accountsservice-0.6.35.ebuild b/sys-apps/accountsservice/accountsservice-0.6.35.ebuild
deleted file mode 100644
index 36a81aa61002..000000000000
--- a/sys-apps/accountsservice/accountsservice-0.6.35.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/accountsservice/accountsservice-0.6.35.ebuild,v 1.7 2014/04/18 19:51:08 swift Exp $
-
-EAPI="5"
-GCONF_DEBUG="no"
-
-inherit autotools eutils gnome2 systemd
-
-DESCRIPTION="D-Bus interfaces for querying and manipulating user account information"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/AccountsService/"
-SRC_URI="http://www.freedesktop.org/software/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86"
-
-IUSE="doc +introspection selinux systemd"
-
-# Want glib-2.34 for g_clear_pointer, bug #462938
-RDEPEND="
- >=dev-libs/glib-2.34.0:2
- sys-auth/polkit
- introspection? ( >=dev-libs/gobject-introspection-0.9.12 )
- selinux? ( sec-policy/selinux-accountsd )
- systemd? ( >=sys-apps/systemd-186:0= )
- !systemd? ( sys-auth/consolekit )
-"
-DEPEND="${RDEPEND}
- 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 )
-"
-
-src_prepare() {
- epatch "${FILESDIR}/${PN}-0.6.35-gentoo-system-users.patch"
-
- # Daemon: rip out extension interface as it needs glib-2.37
- epatch "${FILESDIR}/${PN}-0.6.35-older-glib.patch"
-
- # Avoid deleting the root user (from 'master')
- epatch "${FILESDIR}/${PN}-0.6.35-nondelete-root.patch"
-
- # Change up user classification logic again (from 'master')
- epatch "${FILESDIR}/${PN}-0.6.35-user-logic.patch"
-
- eautoreconf
- gnome2_src_prepare
-}
-
-src_configure() {
- gnome2_src_configure \
- --disable-static \
- --disable-more-warnings \
- --localstatedir="${EPREFIX}"/var \
- --docdir="${EPREFIX}"/usr/share/doc/${PF} \
- --enable-admin-group="wheel" \
- $(use_enable doc docbook-docs) \
- $(use_enable introspection) \
- $(use_enable systemd) \
- $(systemd_with_unitdir)
-}
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.21-gentoo-system-users.patch b/sys-apps/accountsservice/files/accountsservice-0.6.21-gentoo-system-users.patch
deleted file mode 100644
index 1424f3dc75d0..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.21-gentoo-system-users.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 3fe83b83f422d08f0030195f4951b332706ad7f8 Mon Sep 17 00:00:00 2001
-From: Alexandre Rostovtsev <tetromino@gentoo.org>
-Date: Mon, 25 Jun 2012 01:48:39 -0400
-Subject: [PATCH] Additional Gentoo system user accounts with non-trivial
- login shell
-
----
- src/daemon.c | 34 ++++++++++++++++++++++++++++++++++
- 1 files changed, 34 insertions(+), 0 deletions(-)
-
-diff --git a/src/daemon.c b/src/daemon.c
-index d1708ca..2ad2aff 100644
---- a/src/daemon.c
-+++ b/src/daemon.c
-@@ -77,6 +77,40 @@ static const char *default_excludes[] = {
- "games",
- "man",
- "at",
-+ /* Additional Gentoo system users with non-trivial login shell */
-+ "amanda",
-+ "backuppc",
-+ "drqueue",
-+ "firebird",
-+ "flexlm",
-+ "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",
- NULL
- };
-
---
-1.7.8.6
-
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.29-32bit-crash.patch b/sys-apps/accountsservice/files/accountsservice-0.6.29-32bit-crash.patch
deleted file mode 100644
index 1015072ef709..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.29-32bit-crash.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 4d5166d1833e42d81b854374aa6e73f83a67a70e Mon Sep 17 00:00:00 2001
-From: Matthias Clasen <mclasen@redhat.com>
-Date: Tue, 27 Nov 2012 18:30:45 -0500
-Subject: [PATCH] Fix a crash on 32bit systems
-
-The login-frequency property of the User interface is defined
-as uint64 type. Therefore, when setting it with g_object_set,
-a 64bit value is collected, and passing an int might lead to
-bad things.
-https://bugs.freedesktop.org/show_bug.cgi?id=57343
----
- src/daemon.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/daemon.c b/src/daemon.c
-index ed3a114..4d6f3ab 100644
---- a/src/daemon.c
-+++ b/src/daemon.c
-@@ -207,7 +207,7 @@ daemon_local_user_is_excluded (Daemon *daemon, const gchar *username, const gcha
- #ifdef HAVE_UTMPX_H
-
- typedef struct {
-- int frequency;
-+ guint64 frequency;
- gint64 time;
- GList *previous_logins;
- } UserAccounting;
---
-1.8.0
-
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.34-gentoo-system-users.patch b/sys-apps/accountsservice/files/accountsservice-0.6.34-gentoo-system-users.patch
deleted file mode 100644
index 445b4e735fa0..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.34-gentoo-system-users.patch
+++ /dev/null
@@ -1,51 +0,0 @@
---- src/daemon.c~ 2013-06-11 17:50:37.000000000 +0200
-+++ src/daemon.c 2013-07-16 23:49:58.804406874 +0200
-@@ -82,6 +82,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",
- NULL
- };
-
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.35-nondelete-root.patch b/sys-apps/accountsservice/files/accountsservice-0.6.35-nondelete-root.patch
deleted file mode 100644
index b8dfaa931935..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.35-nondelete-root.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 980692e6b9cfe4a34e22f566e0981a8c549e4348 Mon Sep 17 00:00:00 2001
-From: Matthias Clasen <mclasen@redhat.com>
-Date: Fri, 01 Nov 2013 21:09:25 +0000
-Subject: Avoid deleting the root user
-
-The check we have in place against deleting the root user can
-be tricked by exploiting the fact that we are checking a gint64,
-and then later cast it to a uid_t. This can be seen with the
-following test, which will delete your root account:
-
-qdbus --system org.freedesktop.Accounts /org/freedesktop/Accounts \
- org.freedesktop.Accounts.DeleteUser -9223372036854775808 true
-
-Found with the dfuzzer tool,
-https://github.com/matusmarhefka/dfuzzer
----
-diff --git a/src/daemon.c b/src/daemon.c
-index ea75190..9c7001b 100644
---- a/src/daemon.c
-+++ b/src/daemon.c
-@@ -1227,7 +1227,7 @@ daemon_uncache_user (AccountsAccounts *accounts,
- }
-
- typedef struct {
-- gint64 uid;
-+ uid_t uid;
- gboolean remove_files;
- } DeleteUserData;
-
-@@ -1309,13 +1309,13 @@ daemon_delete_user (AccountsAccounts *accounts,
- Daemon *daemon = (Daemon*)accounts;
- DeleteUserData *data;
-
-- if (uid == 0) {
-+ if ((uid_t)uid == 0) {
- throw_error (context, ERROR_FAILED, "Refuse to delete root user");
- return TRUE;
- }
-
- data = g_new0 (DeleteUserData, 1);
-- data->uid = uid;
-+ data->uid = (uid_t)uid;
- data->remove_files = remove_files;
-
- daemon_local_check_auth (daemon,
---
-cgit v0.9.0.2-2-gbebe
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.35-older-glib.patch b/sys-apps/accountsservice/files/accountsservice-0.6.35-older-glib.patch
deleted file mode 100644
index 64f21777aa73..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.35-older-glib.patch
+++ /dev/null
@@ -1,396 +0,0 @@
-From f86c93014e698d81d43fe1ebaf805fa794e5a984 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Tue, 22 Oct 2013 19:42:16 +0000
-Subject: daemon: rip out extension interface
-
-It requires newer glib than we're shipping
----
-diff --git a/configure.ac b/configure.ac
-index cb1fcda..a7f4e20 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -25,7 +25,7 @@ AC_SUBST(LT_CURRENT)
- AC_SUBST(LT_REVISION)
- AC_SUBST(LT_AGE)
-
--PKG_CHECK_MODULES(GIO, gio-2.0 >= 2.37.3 gio-unix-2.0)
-+PKG_CHECK_MODULES(GIO, gio-2.0 gio-unix-2.0)
- PKG_CHECK_MODULES(POLKIT, gio-unix-2.0 polkit-gobject-1)
-
- AM_MAINTAINER_MODE([enable])
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 6940f2d..de57e7a 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -34,7 +34,6 @@ accounts_daemon_SOURCES = \
- types.h \
- daemon.h \
- daemon.c \
-- extensions.c \
- user-classify.h \
- user-classify.c \
- user.h \
-diff --git a/src/daemon.c b/src/daemon.c
-index 9c9f617..ea75190 100644
---- a/src/daemon.c
-+++ b/src/daemon.c
-@@ -80,7 +80,6 @@ struct DaemonPrivate {
- guint autologin_id;
-
- PolkitAuthority *authority;
-- GHashTable *extension_ifaces;
- };
-
- typedef struct passwd * (* EntryGeneratorFunc) (GHashTable *, gpointer *);
-@@ -683,8 +682,6 @@ daemon_init (Daemon *daemon)
- {
- daemon->priv = DAEMON_GET_PRIVATE (daemon);
-
-- daemon->priv->extension_ifaces = daemon_read_extension_ifaces ();
--
- daemon->priv->users = create_users_hash_table ();
-
- daemon->priv->passwd_monitor = setup_monitor (daemon,
-@@ -728,8 +725,6 @@ daemon_finalize (GObject *object)
-
- g_hash_table_destroy (daemon->priv->users);
-
-- g_hash_table_unref (daemon->priv->extension_ifaces);
--
- G_OBJECT_CLASS (daemon_parent_class)->finalize (object);
- }
-
-@@ -1553,12 +1548,6 @@ daemon_local_set_automatic_login (Daemon *daemon,
- return TRUE;
- }
-
--GHashTable *
--daemon_get_extension_ifaces (Daemon *daemon)
--{
-- return daemon->priv->extension_ifaces;
--}
--
- static void
- get_property (GObject *object,
- guint prop_id,
-diff --git a/src/daemon.h b/src/daemon.h
-index b7e072e..e036407 100644
---- a/src/daemon.h
-+++ b/src/daemon.h
-@@ -96,9 +96,6 @@ gboolean daemon_local_set_automatic_login (Daemon *daemon,
- gboolean enabled,
- GError **error);
-
--GHashTable * daemon_read_extension_ifaces (void);
--GHashTable * daemon_get_extension_ifaces (Daemon *daemon);
--
- G_END_DECLS
-
- #endif /* __DAEMON_H__ */
-diff --git a/src/user.c b/src/user.c
-index 1698eeb..163d136 100644
---- a/src/user.c
-+++ b/src/user.c
-@@ -104,9 +104,6 @@ struct User {
- gboolean automatic_login;
- gboolean system_account;
- gboolean local_account;
--
-- guint *extension_ids;
-- guint n_extension_ids;
- };
-
- typedef struct UserClass
-@@ -463,259 +460,6 @@ move_extra_data (const gchar *old_name,
- g_free (new_filename);
- }
-
--static GVariant *
--user_extension_get_value (User *user,
-- GDBusInterfaceInfo *interface,
-- const GDBusPropertyInfo *property)
--{
-- const GVariantType *type = G_VARIANT_TYPE (property->signature);
-- GVariant *value;
-- gchar *printed;
-- gint i;
--
-- /* First, try to get the value from the keyfile */
-- printed = g_key_file_get_value (user->keyfile, interface->name, property->name, NULL);
-- if (printed) {
-- value = g_variant_parse (type, printed, NULL, NULL, NULL);
-- g_free (printed);
--
-- if (value != NULL)
-- return value;
-- }
--
-- /* If that didn't work, try for a default value annotation */
-- for (i = 0; property->annotations && property->annotations[i]; i++) {
-- GDBusAnnotationInfo *annotation = property->annotations[i];
--
-- if (g_str_equal (annotation->key, "org.freedesktop.Accounts.DefaultValue.String")) {
-- if (g_str_equal (property->signature, "s"))
-- return g_variant_ref_sink (g_variant_new_string (annotation->value));
-- }
-- else if (g_str_equal (annotation->key, "org.freedesktop.Accounts.DefaultValue")) {
-- value = g_variant_parse (type, annotation->value, NULL, NULL, NULL);
-- if (value != NULL)
-- return value;
-- }
-- }
--
-- /* Nothing found... */
-- return NULL;
--}
--
--static void
--user_extension_get_property (User *user,
-- Daemon *daemon,
-- GDBusInterfaceInfo *interface,
-- GDBusMethodInvocation *invocation)
--{
-- const GDBusPropertyInfo *property = g_dbus_method_invocation_get_property_info (invocation);
-- GVariant *value;
--
-- value = user_extension_get_value (user, interface, property);
--
-- if (value) {
-- g_dbus_method_invocation_return_value (invocation, g_variant_new ("(v)", value));
-- g_variant_unref (value);
-- }
-- else {
-- g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS,
-- "Key '%s' is not set and has no default value",
-- property->name);
-- }
--}
--
--static void
--user_extension_get_all_properties (User *user,
-- Daemon *daemon,
-- GDBusInterfaceInfo *interface,
-- GDBusMethodInvocation *invocation)
--{
-- GVariantBuilder builder;
-- gint i;
--
-- g_variant_builder_init (&builder, G_VARIANT_TYPE_VARDICT);
-- for (i = 0; interface->properties && interface->properties[i]; i++) {
-- GDBusPropertyInfo *property = interface->properties[i];
-- GVariant *value;
--
-- value = user_extension_get_value (user, interface, property);
--
-- if (value) {
-- g_variant_builder_add (&builder, "{sv}", property->name, value);
-- g_variant_unref (value);
-- }
-- }
--
-- g_dbus_method_invocation_return_value (invocation, g_variant_new ("(a{sv})", &builder));
--}
--
--static void
--user_extension_set_property (User *user,
-- Daemon *daemon,
-- GDBusInterfaceInfo *interface,
-- GDBusMethodInvocation *invocation)
--{
-- const GDBusPropertyInfo *property = g_dbus_method_invocation_get_property_info (invocation);
-- GVariant *value;
-- gchar *printed;
-- gchar *prev;
--
-- g_variant_get_child (g_dbus_method_invocation_get_parameters (invocation), 2, "v", &value);
--
-- /* We'll always have the type when we parse it back so
-- * we don't need it to be printed with annotations.
-- */
-- printed = g_variant_print (value, FALSE);
--
-- /* May as well try to avoid the thrashing... */
-- prev = g_key_file_get_value (user->keyfile, interface->name, property->name, NULL);
--
-- if (!prev || !g_str_equal (printed, prev)) {
-- g_key_file_set_value (user->keyfile, interface->name, property->name, printed);
--
-- /* Emit a change signal. Use invalidation
-- * because the data may not be world-readable.
-- */
-- g_dbus_connection_emit_signal (g_dbus_method_invocation_get_connection (invocation),
-- NULL, /* destination_bus_name */
-- g_dbus_method_invocation_get_object_path (invocation),
-- "org.freedesktop.DBus.Properties", "PropertiesChanged",
-- g_variant_new_parsed ("( %s, %a{sv}, [ %s ] )",
-- interface->name, NULL, property->name),
-- NULL);
--
-- accounts_user_emit_changed (ACCOUNTS_USER (user));
-- save_extra_data (user);
-- }
--
-- g_variant_unref (value);
-- g_free (printed);
-- g_free (prev);
--
-- g_dbus_method_invocation_return_value (invocation, g_variant_new ("()"));
--}
--
--static void
--user_extension_authentication_done (Daemon *daemon,
-- User *user,
-- GDBusMethodInvocation *invocation,
-- gpointer user_data)
--{
-- GDBusInterfaceInfo *interface = user_data;
-- const gchar *method_name;
--
-- method_name = g_dbus_method_invocation_get_method_name (invocation);
--
-- if (g_str_equal (method_name, "Get"))
-- user_extension_get_property (user, daemon, interface, invocation);
-- else if (g_str_equal (method_name, "GetAll"))
-- user_extension_get_all_properties (user, daemon, interface, invocation);
-- else if (g_str_equal (method_name, "Set"))
-- user_extension_set_property (user, daemon, interface, invocation);
-- else
-- g_assert_not_reached ();
--}
--
--static void
--user_extension_method_call (GDBusConnection *connection,
-- const gchar *sender,
-- const gchar *object_path,
-- const gchar *interface_name,
-- const gchar *method_name,
-- GVariant *parameters,
-- GDBusMethodInvocation *invocation,
-- gpointer user_data)
--{
-- User *user = user_data;
-- GDBusInterfaceInfo *iface_info;
-- const gchar *annotation_name;
-- const gchar *action_id;
-- gint uid;
-- gint i;
--
-- /* We don't allow method calls on extension interfaces, so we
-- * should only ever see property calls here.
-- */
-- g_assert_cmpstr (interface_name, ==, "org.freedesktop.DBus.Properties");
--
-- /* Now get the real interface name */
-- g_variant_get_child (parameters, 0, "&s", &interface_name);
--
-- if (get_caller_uid (invocation, &uid) && (uid_t) uid == user->uid) {
-- /* Operation on sender's own User object */
-- if (g_str_equal (method_name, "Set")) {
-- annotation_name = "org.freedesktop.Accounts.Authentication.ChangeOwn";
-- action_id = "org.freedesktop.accounts.change-own-user-data";
-- }
-- else {
-- annotation_name = "org.freedesktop.Accounts.Authentication.ReadOwn";
-- action_id = ""; /* reading allowed by default */
-- }
-- }
-- else {
-- /* Operation on someone else's User object */
-- if (g_str_equal (method_name, "Set")) {
-- annotation_name = "org.freedesktop.Accounts.Authentication.ChangeAny";
-- action_id = "org.freedesktop.accounts.user-administration";
-- }
-- else {
-- annotation_name = "org.freedesktop.Accounts.Authentication.ReadAny";
-- action_id = ""; /* reading allowed by default */
-- }
-- }
--
-- iface_info = g_hash_table_lookup (daemon_get_extension_ifaces (user->daemon), interface_name);
-- g_assert (iface_info != NULL);
--
-- for (i = 0; iface_info->annotations && iface_info->annotations[i]; i++) {
-- if (g_str_equal (iface_info->annotations[i]->key, annotation_name)) {
-- action_id = iface_info->annotations[i]->value;
-- break;
-- }
-- }
--
-- if (action_id[0] == '\0') {
-- /* Should always allow this call, so just do it now */
-- user_extension_authentication_done (user->daemon, user, invocation, iface_info);
-- }
-- else {
-- daemon_local_check_auth (user->daemon, user, action_id, TRUE,
-- user_extension_authentication_done,
-- invocation, iface_info, NULL);
-- }
--}
--
--static void
--user_register_extensions (User *user)
--{
-- static const GDBusInterfaceVTable vtable = {
-- user_extension_method_call,
-- NULL /* get_property */,
-- NULL /* set_property */
-- };
-- GHashTable *extensions;
-- GHashTableIter iter;
-- gpointer iface;
-- gint i = 0;
--
-- g_assert (user->extension_ids == NULL);
-- g_assert (user->n_extension_ids == 0);
--
-- extensions = daemon_get_extension_ifaces (user->daemon);
-- user->n_extension_ids = g_hash_table_size (extensions);
-- user->extension_ids = g_new (guint, user->n_extension_ids);
-- g_hash_table_iter_init (&iter, extensions);
--
-- /* Ignore errors when registering more interfaces because (a)
-- * they won't happen and (b) even if they do, we still want to
-- * publish the main user interface.
-- */
-- while (g_hash_table_iter_next (&iter, NULL, &iface))
-- user->extension_ids[i++] = g_dbus_connection_register_object (user->system_bus_connection,
-- user->object_path, iface,
-- &vtable, user, NULL, NULL);
--}
--
- static gchar *
- compute_object_path (User *user)
- {
-@@ -753,8 +497,6 @@ user_register (User *user)
- }
- return;
- }
--
-- user_register_extensions (user);
- }
-
- void
-@@ -767,21 +509,6 @@ void
- user_unregister (User *user)
- {
- g_dbus_interface_skeleton_unexport (G_DBUS_INTERFACE_SKELETON (user));
--
-- if (user->extension_ids) {
-- guint i;
--
-- for (i = 0; i < user->n_extension_ids; i++) {
-- /* In theory, if an error happened during registration, we could have 0 here. */
-- if (user->extension_ids[i] == 0)
-- continue;
--
-- g_dbus_connection_unregister_object (user->system_bus_connection, user->extension_ids[i]);
-- }
--
-- g_clear_pointer (&user->extension_ids, g_free);
-- user->n_extension_ids = 0;
-- }
- }
-
- void
---
-cgit v0.9.0.2-2-gbebe
diff --git a/sys-apps/accountsservice/files/accountsservice-0.6.35-user-logic.patch b/sys-apps/accountsservice/files/accountsservice-0.6.35-user-logic.patch
deleted file mode 100644
index 8de3cfcffef1..000000000000
--- a/sys-apps/accountsservice/files/accountsservice-0.6.35-user-logic.patch
+++ /dev/null
@@ -1,211 +0,0 @@
-From ba13b59cb91ec67c86b3e3fb390d91db01df8963 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Fri, 15 Nov 2013 15:11:15 +0000
-Subject: Change up user classification logic again
-
-relying on login.defs is fragile, and the
-user heuristics are fragile.
-
-This commit requires an explicit uid minimum
-get configured, and heuristics now only get
-applied to the specific problematic range
-they were added to address.
-
-https://bugs.freedesktop.org/show_bug.cgi?id=71801
----
-diff --git a/configure.ac b/configure.ac
-index cb1fcda..39c5b92 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -55,11 +55,17 @@ AS_IF([test x$enable_admin_group = xauto], [
- AC_DEFINE_UNQUOTED([ADMIN_GROUP], ["$enable_admin_group"], [Define to the group for administrator users])
-
- AC_ARG_ENABLE(user-heuristics,
-- [AS_HELP_STRING([--enable-user-heuristics],[Enable heuristics for guessing system vs. human users])],
-+ [AS_HELP_STRING([--enable-user-heuristics],[Enable heuristics for guessing system vs. human users in the range 500-minimum-uid])],
- [if test "$enableval" = yes; then
- AC_DEFINE([ENABLE_USER_HEURISTICS], , [System vs. human user heuristics enabled])
- fi])
-
-+AC_ARG_WITH(minimum-uid,
-+ [AS_HELP_STRING([--with-minimum-uid],[Set minimum uid for human users])],
-+ ,with_minimum_uid=1000)
-+
-+AC_DEFINE_UNQUOTED([MINIMUM_UID], $with_minimum_uid, [Define to the minumum UID of human users])
-+
- dnl ---------------------------------------------------------------------------
- dnl - coverage
- dnl ---------------------------------------------------------------------------
-diff --git a/src/user-classify.c b/src/user-classify.c
-index b68c9ae..69e6809 100644
---- a/src/user-classify.c
-+++ b/src/user-classify.c
-@@ -26,7 +26,6 @@
-
- #include <string.h>
-
--#ifdef ENABLE_USER_HEURISTICS
- static const char *default_excludes[] = {
- "bin",
- "root",
-@@ -57,16 +56,10 @@ static const char *default_excludes[] = {
- "gnome-initial-setup"
- };
-
--#define PATH_NOLOGIN "/sbin/nologin"
--#define PATH_FALSE "/bin/false"
--
- static gboolean
--user_classify_is_excluded_by_heuristics (const gchar *username,
-- const gchar *shell,
-- const gchar *password_hash)
-+user_classify_is_blacklisted (const char *username)
- {
- static GHashTable *exclusions;
-- gboolean ret = FALSE;
-
- if (exclusions == NULL) {
- guint i;
-@@ -82,6 +75,20 @@ user_classify_is_excluded_by_heuristics (const gchar *username,
- return TRUE;
- }
-
-+ return FALSE;
-+}
-+
-+#define PATH_NOLOGIN "/sbin/nologin"
-+#define PATH_FALSE "/bin/false"
-+
-+#ifdef ENABLE_USER_HEURISTICS
-+static gboolean
-+user_classify_is_excluded_by_heuristics (const gchar *username,
-+ const gchar *shell,
-+ const gchar *password_hash)
-+{
-+ gboolean ret = FALSE;
-+
- if (shell != NULL) {
- char *basename, *nologin_basename, *false_basename;
-
-@@ -139,99 +146,6 @@ user_classify_is_excluded_by_heuristics (const gchar *username,
-
- return ret;
- }
--
--#else /* ENABLE_USER_HEURISTICS */
--
--static gboolean
--user_classify_parse_login_defs_field (const gchar *contents,
-- const gchar *key,
-- uid_t *result)
--{
-- gsize key_len;
-- gint64 value;
-- gchar *end;
--
-- key_len = strlen (key);
--
-- for (;;) {
-- /* Our key has to be at the start of the line, followed by whitespace */
-- if (strncmp (contents, key, key_len) == 0 && g_ascii_isspace (contents[key_len])) {
-- /* Found it. Move contents past the key itself and break out. */
-- contents += key_len;
-- break;
-- }
--
-- /* Didn't find it. Find the end of the line. */
-- contents = strchr (contents, '\n');
--
-- /* EOF? */
-- if (!contents) {
-- /* We didn't find the field... */
-- return FALSE;
-- }
--
-- /* Start at the beginning of the next line on next iteration. */
-- contents++;
-- }
--
-- /* 'contents' now points at the whitespace character just after
-- * the field name. strtoll can deal with that.
-- */
-- value = g_ascii_strtoll (contents, &end, 10);
--
-- if (*end && !g_ascii_isspace (*end)) {
-- g_warning ("Trailing junk after '%s' field in login.defs", key);
-- return FALSE;
-- }
--
-- if (value <= 0 || value >= G_MAXINT32) {
-- g_warning ("Value for '%s' field out of range", key);
-- return FALSE;
-- }
--
-- *result = value;
--
-- return TRUE;
--}
--
--static void
--user_classify_read_login_defs (uid_t *min_uid,
-- uid_t *max_uid)
--{
-- GError *error = NULL;
-- char *contents;
--
-- if (!g_file_get_contents ("/etc/login.defs", &contents, NULL, &error)) {
-- g_warning ("Could not open /etc/login.defs: %s. Falling back to default human uid range of %d to %d",
-- error->message, (int) *min_uid, (int) *max_uid);
-- g_error_free (error);
-- return;
-- }
--
-- if (!user_classify_parse_login_defs_field (contents, "UID_MIN", min_uid)) {
-- g_warning ("Could not find UID_MIN value in login.defs. Using default of %d", (int) *min_uid);
-- }
--
-- if (!user_classify_parse_login_defs_field (contents, "UID_MAX", max_uid)) {
-- g_warning ("Could not find UID_MIN value in login.defs. Using default of %d", (int) *max_uid);
-- }
--
-- g_free (contents);
--}
--
--static gboolean
--user_classify_is_in_human_range (uid_t uid)
--{
-- static uid_t min_uid = 1000, max_uid = 60000;
-- static gboolean initialised;
--
-- if (!initialised) {
-- user_classify_read_login_defs (&min_uid, &max_uid);
-- initialised = TRUE;
-- }
--
-- return min_uid <= uid && uid <= max_uid;
--}
- #endif /* ENABLE_USER_HEURISTICS */
-
- gboolean
-@@ -240,9 +154,16 @@ user_classify_is_human (uid_t uid,
- const gchar *shell,
- const gchar *password_hash)
- {
-+ if (user_classify_is_blacklisted (username))
-+ return FALSE;
-+
- #ifdef ENABLE_USER_HEURISTICS
-- return !user_classify_is_excluded_by_heuristics (username, shell, password_hash);
--#else
-- return user_classify_is_in_human_range (uid);
-+ /* only do heuristics on the range 500-1000 to catch one off migration problems in Fedora */
-+ if (uid >= 500 && uid < MINIMUM_UID) {
-+ if (!user_classify_is_excluded_by_heuristics (username, shell, password_hash))
-+ return TRUE;
-+ }
- #endif
-+
-+ return uid >= MINIMUM_UID;
- }
---
-cgit v0.9.0.2-2-gbebe
diff --git a/sys-apps/accountsservice/metadata.xml b/sys-apps/accountsservice/metadata.xml
index 520c0d8ba24f..863d6473f89d 100644
--- a/sys-apps/accountsservice/metadata.xml
+++ b/sys-apps/accountsservice/metadata.xml
@@ -3,10 +3,7 @@
<pkgmetadata>
<herd>gnome</herd>
<use>
- <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg>
- for introspection</flag>
<flag name="systemd">Use <pkg>sys-apps/systemd</pkg> instead of
<pkg>sys-auth/consolekit</pkg> for session tracking</flag>
- <flag name="vala">Enable bindings for <pkg>dev-lang/vala</pkg></flag>
</use>
</pkgmetadata>