Sync from SUSE:SLFO:Main accountsservice revision 01c460210f63a089e8745c1119c5edd9
This commit is contained in:
parent
7c70bbe816
commit
5222218318
BIN
accountsservice-22.08.8.tar.xz
(Stored with Git LFS)
BIN
accountsservice-22.08.8.tar.xz
(Stored with Git LFS)
Binary file not shown.
BIN
accountsservice-23.13.9.tar.xz
(Stored with Git LFS)
Normal file
BIN
accountsservice-23.13.9.tar.xz
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -1,9 +1,9 @@
|
|||||||
diff -Nur accountsservice-22.08.8/src/user-classify.c new/src/user-classify.c
|
diff -Nur old/src/user-classify.c new/src/user-classify.c
|
||||||
--- accountsservice-22.08.8/src/user-classify.c 2022-02-23 16:27:48.000000000 +0100
|
--- old/src/user-classify.c 2023-06-21 16:19:26.984665518 +0200
|
||||||
+++ new/src/user-classify.c 2022-04-30 22:33:44.148344188 +0200
|
+++ new/src/user-classify.c 2023-06-21 16:19:33.793285366 +0200
|
||||||
@@ -52,7 +52,13 @@
|
@@ -53,7 +53,13 @@
|
||||||
"at",
|
|
||||||
"gdm",
|
"gdm",
|
||||||
|
"lightdm",
|
||||||
"gnome-initial-setup",
|
"gnome-initial-setup",
|
||||||
- "git"
|
- "git"
|
||||||
+ "git",
|
+ "git",
|
||||||
|
13
accountsservice-mocklib-gcc14.patch
Normal file
13
accountsservice-mocklib-gcc14.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
Index: accountsservice-23.13.9/subprojects/mocklibc.wrap
|
||||||
|
===================================================================
|
||||||
|
--- accountsservice-23.13.9.orig/subprojects/mocklibc.wrap
|
||||||
|
+++ accountsservice-23.13.9/subprojects/mocklibc.wrap
|
||||||
|
@@ -3,7 +3,7 @@ directory = mocklibc-1.0
|
||||||
|
|
||||||
|
source_url = https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/mocklibc/mocklibc-1.0.tar.gz
|
||||||
|
source_filename = mocklibc-1.0.tar.gz
|
||||||
|
-source_hash = b2236a6af1028414783e9734a46ea051916ec226479d6a55a3bb823bff68f120
|
||||||
|
+source_hash = 48966f7a5d3f2139ffdc1e700de7deb9390f852cd4f2a7b97e55029c14097c6e
|
||||||
|
|
||||||
|
patch_url = https://wrapdb.mesonbuild.com/v1/projects/mocklibc/1.0/2/get_zip
|
||||||
|
patch_filename = mocklibc-1.0-2-wrap.zip
|
@ -5,28 +5,20 @@ Date: Wed Jul 20 16:48:41 2011 +0200
|
|||||||
Use autologin configuration from sysconfig (SUSE-ism)
|
Use autologin configuration from sysconfig (SUSE-ism)
|
||||||
|
|
||||||
|
|
||||||
diff -Nur accountsservice-22.08.8/src/daemon.c new/src/daemon.c
|
Index: accountsservice-23.13.9/src/daemon.c
|
||||||
--- accountsservice-22.08.8/src/daemon.c 2022-02-23 16:27:48.000000000 +0100
|
===================================================================
|
||||||
+++ new/src/daemon.c 2022-04-30 22:23:22.228315678 +0200
|
--- accountsservice-23.13.9.orig/src/daemon.c
|
||||||
@@ -50,6 +50,7 @@
|
+++ accountsservice-23.13.9/src/daemon.c
|
||||||
|
@@ -51,6 +51,7 @@
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
#include "user.h"
|
#include "user.h"
|
||||||
#include "accounts-user-generated.h"
|
#include "accounts-user-generated.h"
|
||||||
+#include "gdm-sysconfig.h"
|
+#include "gdm-sysconfig.h"
|
||||||
|
|
||||||
#define PATH_PASSWD "/etc/passwd"
|
#define PATH_PASSWD "passwd"
|
||||||
#define PATH_SHADOW "/etc/shadow"
|
#define PATH_SHADOW "shadow"
|
||||||
@@ -581,7 +582,7 @@
|
@@ -1789,6 +1790,43 @@ load_autologin_lightdm (Daemon *daemon
|
||||||
priv->autologin_id = 0;
|
return TRUE;
|
||||||
|
|
||||||
if (!load_autologin (daemon, &name, &enabled, &error)) {
|
|
||||||
- g_debug ("failed to load gdms custom.conf: %s", error->message);
|
|
||||||
+ g_debug ("failed to load autologin config: %s", error->message);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1508,6 +1509,43 @@
|
|
||||||
g_object_unref (subject);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
+#define SYSCONFIG_FILE "/etc/sysconfig/displaymanager"
|
+#define SYSCONFIG_FILE "/etc/sysconfig/displaymanager"
|
||||||
@ -69,16 +61,16 @@ diff -Nur accountsservice-22.08.8/src/daemon.c new/src/daemon.c
|
|||||||
gboolean
|
gboolean
|
||||||
load_autologin (Daemon *daemon,
|
load_autologin (Daemon *daemon,
|
||||||
gchar **name,
|
gchar **name,
|
||||||
@@ -1518,6 +1556,8 @@
|
@@ -1797,6 +1835,8 @@ load_autologin (Daemon *daemon,
|
||||||
GError *local_error = NULL;
|
{
|
||||||
g_autofree gchar *string = NULL;
|
DisplayManagerType dm_type;
|
||||||
|
|
||||||
+ return load_autologin_suse (daemon, name, enabled, error);
|
+ return load_autologin_suse (daemon, name, enabled, error);
|
||||||
+
|
+
|
||||||
keyfile = g_key_file_new ();
|
dm_type = get_current_system_dm_type ();
|
||||||
if (!g_key_file_load_from_file (keyfile,
|
if (dm_type == DISPLAY_MANAGER_TYPE_LIGHTDM)
|
||||||
PATH_GDM_CUSTOM,
|
return load_autologin_lightdm (daemon, name, enabled, error);
|
||||||
@@ -1558,6 +1598,8 @@
|
@@ -1819,6 +1859,8 @@ save_autologin_gdm (Daemon *daemon,
|
||||||
gboolean result;
|
gboolean result;
|
||||||
g_autoptr (GError) local_error = NULL;
|
g_autoptr (GError) local_error = NULL;
|
||||||
|
|
||||||
@ -87,10 +79,29 @@ diff -Nur accountsservice-22.08.8/src/daemon.c new/src/daemon.c
|
|||||||
keyfile = g_key_file_new ();
|
keyfile = g_key_file_new ();
|
||||||
if (!g_key_file_load_from_file (keyfile,
|
if (!g_key_file_load_from_file (keyfile,
|
||||||
PATH_GDM_CUSTOM,
|
PATH_GDM_CUSTOM,
|
||||||
diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
@@ -1851,6 +1893,8 @@ save_autologin_lightdm (Daemon *dae
|
||||||
--- accountsservice-22.08.8/src/gdm-sysconfig.c 1970-01-01 01:00:00.000000000 +0100
|
gboolean result;
|
||||||
+++ new/src/gdm-sysconfig.c 2022-04-30 22:22:54.876314424 +0200
|
g_autoptr (GError) local_error = NULL;
|
||||||
@@ -0,0 +1,484 @@
|
|
||||||
|
+ return save_autologin_suse (daemon, name, enabled, error);
|
||||||
|
+
|
||||||
|
keyfile = g_key_file_new ();
|
||||||
|
if (!g_key_file_load_from_file (keyfile,
|
||||||
|
PATH_LIGHTDM_CONF,
|
||||||
|
@@ -1879,6 +1923,8 @@ save_autologin (Daemon *daemon,
|
||||||
|
{
|
||||||
|
DisplayManagerType dm_type;
|
||||||
|
|
||||||
|
+ return save_autologin_suse (daemon, name, enabled, error);
|
||||||
|
+
|
||||||
|
dm_type = get_current_system_dm_type ();
|
||||||
|
if (dm_type == DISPLAY_MANAGER_TYPE_LIGHTDM)
|
||||||
|
return save_autologin_lightdm (daemon, name, enabled, error);
|
||||||
|
Index: accountsservice-23.13.9/src/gdm-sysconfig.c
|
||||||
|
===================================================================
|
||||||
|
--- /dev/null
|
||||||
|
+++ accountsservice-23.13.9/src/gdm-sysconfig.c
|
||||||
|
@@ -0,0 +1,509 @@
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
||||||
+ *
|
+ *
|
||||||
+ * Copyright (C) 2008 Hans Petter Jansson <hpj@novell.com>
|
+ * Copyright (C) 2008 Hans Petter Jansson <hpj@novell.com>
|
||||||
@ -132,6 +143,7 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+#include <glib.h>
|
+#include <glib.h>
|
||||||
+#include <glib/gi18n.h>
|
+#include <glib/gi18n.h>
|
||||||
+#include <glib/gstdio.h>
|
+#include <glib/gstdio.h>
|
||||||
|
+#include <gio/gio.h>
|
||||||
+
|
+
|
||||||
+#include "gdm-sysconfig.h"
|
+#include "gdm-sysconfig.h"
|
||||||
+
|
+
|
||||||
@ -185,10 +197,17 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+{
|
+{
|
||||||
+ GIOStatus last_status = G_IO_STATUS_ERROR;
|
+ GIOStatus last_status = G_IO_STATUS_ERROR;
|
||||||
+ GIOChannel *channel = NULL;
|
+ GIOChannel *channel = NULL;
|
||||||
+ gchar *temp_file_name;
|
+ g_autofree gchar *temp_file_name = NULL;
|
||||||
+ gint i;
|
+ gint i;
|
||||||
|
+ gchar *path = NULL;
|
||||||
|
+ g_autofree char *template = NULL;
|
||||||
+
|
+
|
||||||
+ temp_file_name = g_strdup_printf ("%s.new.%u", file_name, g_random_int ());
|
+ template = g_strdup_printf ("/run/sysconfig.XXXXXX");
|
||||||
|
+ path = g_mkdtemp (template);
|
||||||
|
+ if (path == NULL)
|
||||||
|
+ goto out;
|
||||||
|
+
|
||||||
|
+ temp_file_name = g_strdup_printf ("%s/%s.new",path, g_path_get_basename(file_name));
|
||||||
+
|
+
|
||||||
+ channel = g_io_channel_new_file (temp_file_name, "w", NULL);
|
+ channel = g_io_channel_new_file (temp_file_name, "w", NULL);
|
||||||
+ if (!channel)
|
+ if (!channel)
|
||||||
@ -221,10 +240,27 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+ g_io_channel_unref (channel);
|
+ g_io_channel_unref (channel);
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ if (last_status == G_IO_STATUS_NORMAL && g_rename (temp_file_name, file_name) != 0)
|
+ gboolean result = FALSE;
|
||||||
|
+ if (last_status == G_IO_STATUS_NORMAL && temp_file_name) {
|
||||||
|
+ g_autoptr (GFile) old_file = g_file_new_for_path(temp_file_name);
|
||||||
|
+ g_autoptr (GFile) new_file = g_file_new_for_path(file_name);
|
||||||
|
+ g_remove(file_name);
|
||||||
|
+ result = g_file_move (old_file,
|
||||||
|
+ new_file,
|
||||||
|
+ G_FILE_COPY_OVERWRITE,
|
||||||
|
+ NULL,
|
||||||
|
+ NULL,
|
||||||
|
+ NULL,
|
||||||
|
+ NULL);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (last_status == G_IO_STATUS_NORMAL && !result)
|
||||||
+ last_status = G_IO_STATUS_ERROR;
|
+ last_status = G_IO_STATUS_ERROR;
|
||||||
+
|
+
|
||||||
+ g_free (temp_file_name);
|
+ if (path) {
|
||||||
|
+ g_rmdir(path);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
+ return last_status == G_IO_STATUS_NORMAL ? TRUE : FALSE;
|
+ return last_status == G_IO_STATUS_NORMAL ? TRUE : FALSE;
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
@ -361,7 +397,7 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
+static gchar *
|
+static gchar *
|
||||||
+get_value (const gchar **lines, const gchar *key)
|
+get_value (gchar **lines, const gchar *key)
|
||||||
+{
|
+{
|
||||||
+ gchar *value = NULL;
|
+ gchar *value = NULL;
|
||||||
+ gchar *key_normal;
|
+ gchar *key_normal;
|
||||||
@ -472,7 +508,7 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+ g_return_val_if_fail (file_name != NULL, FALSE);
|
+ g_return_val_if_fail (file_name != NULL, FALSE);
|
||||||
+ g_return_val_if_fail (sysconfig != NULL, FALSE);
|
+ g_return_val_if_fail (sysconfig != NULL, FALSE);
|
||||||
+
|
+
|
||||||
+ return save_settings_file (file_name, sysconfig);
|
+ return save_settings_file (file_name, (gchar **)sysconfig);
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
+gchar *
|
+gchar *
|
||||||
@ -481,7 +517,7 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+ g_return_val_if_fail (sysconfig != NULL, NULL);
|
+ g_return_val_if_fail (sysconfig != NULL, NULL);
|
||||||
+ g_return_val_if_fail (key != NULL, NULL);
|
+ g_return_val_if_fail (key != NULL, NULL);
|
||||||
+
|
+
|
||||||
+ return get_value (sysconfig, key);
|
+ return get_value ((gchar **)sysconfig, key);
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
+gboolean
|
+gboolean
|
||||||
@ -503,7 +539,7 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+ g_return_val_if_fail (sysconfig != NULL, FALSE);
|
+ g_return_val_if_fail (sysconfig != NULL, FALSE);
|
||||||
+ g_return_val_if_fail (key != NULL, FALSE);
|
+ g_return_val_if_fail (key != NULL, FALSE);
|
||||||
+
|
+
|
||||||
+ val = get_value (sysconfig, key);
|
+ val = get_value ((gchar **)sysconfig, key);
|
||||||
+ if (val == NULL) {
|
+ if (val == NULL) {
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+ }
|
+ }
|
||||||
@ -575,9 +611,10 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.c new/src/gdm-sysconfig.c
|
|||||||
+ g_strfreev (lines);
|
+ g_strfreev (lines);
|
||||||
+ return result;
|
+ return result;
|
||||||
+}
|
+}
|
||||||
diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.h new/src/gdm-sysconfig.h
|
Index: accountsservice-23.13.9/src/gdm-sysconfig.h
|
||||||
--- accountsservice-22.08.8/src/gdm-sysconfig.h 1970-01-01 01:00:00.000000000 +0100
|
===================================================================
|
||||||
+++ new/src/gdm-sysconfig.h 2022-04-30 22:22:54.876314424 +0200
|
--- /dev/null
|
||||||
|
+++ accountsservice-23.13.9/src/gdm-sysconfig.h
|
||||||
@@ -0,0 +1,43 @@
|
@@ -0,0 +1,43 @@
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
||||||
+ *
|
+ *
|
||||||
@ -622,10 +659,11 @@ diff -Nur accountsservice-22.08.8/src/gdm-sysconfig.h new/src/gdm-sysconfig.h
|
|||||||
+G_END_DECLS
|
+G_END_DECLS
|
||||||
+
|
+
|
||||||
+#endif /* __GDM_SYSCONFIG_H */
|
+#endif /* __GDM_SYSCONFIG_H */
|
||||||
diff -Nur accountsservice-22.08.8/src/meson.build new/src/meson.build
|
Index: accountsservice-23.13.9/src/meson.build
|
||||||
--- accountsservice-22.08.8/src/meson.build 2022-02-23 16:27:48.000000000 +0100
|
===================================================================
|
||||||
+++ new/src/meson.build 2022-04-30 22:22:54.876314424 +0200
|
--- accountsservice-23.13.9.orig/src/meson.build
|
||||||
@@ -48,6 +48,8 @@
|
+++ accountsservice-23.13.9/src/meson.build
|
||||||
|
@@ -48,6 +48,8 @@ libaccounts_generated_dep = declare_depe
|
||||||
)
|
)
|
||||||
|
|
||||||
sources = files(
|
sources = files(
|
||||||
|
@ -1,3 +1,89 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 12 17:48:05 UTC 2024 - Michael Gorse <mgorse@suse.com>
|
||||||
|
|
||||||
|
- Drop as-fate318433-prevent-same-account-multi-logins.patch.
|
||||||
|
Gnome-shell now has similar functionality upstream.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 19 01:14:06 UTC 2024 - Xiaoguang Wang <xiaoguang.wang@suse.com>
|
||||||
|
|
||||||
|
- Update accountsservice-sysconfig.patch: work with SELinux policy
|
||||||
|
(bsc#1222978).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 7 13:45:31 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Keep en and en_GB 'translations' in the main package: do not
|
||||||
|
force -lang packages onto all users.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 27 06:23:31 UTC 2024 - xiaoguang wang <xiaoguang.wang@suse.com>
|
||||||
|
|
||||||
|
- Rebase accountsservice-sysconfig.patch: to fix build with GCC 14
|
||||||
|
(bsc#1219909).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 14 10:39:36 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- First part to fix build with GCC 14:
|
||||||
|
+ Inject patched mocklibc-1.0.tar.gz: only some header
|
||||||
|
modifications to address implicit declaration of print_indent.
|
||||||
|
+ Add accountsservice-mocklib-gcc14.patch: patch meson'
|
||||||
|
subproject definition to validate the injected tarball.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 28 11:56:40 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Use %patch -p N instead of deprecated %patchN.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 9 01:27:12 UTC 2023 - Xiaoguang Wang <xiaoguang.wang@suse.com>
|
||||||
|
|
||||||
|
- Rebase as-fate318433-prevent-same-account-multi-logins.patch:
|
||||||
|
(bsc#1213884).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jul 5 03:07:00 UTC 2023 - Xiaoguang Wang <xiaoguang.wang@suse.com>
|
||||||
|
|
||||||
|
- Rebase accountsservice-sysconfig.patch: (boo#1212675 boo#1212973).
|
||||||
|
- Remove accountsservice-assume-gdm.patch: Fixed by new rebasing
|
||||||
|
of accountsservice-sysconfig.patch.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jun 24 10:36:17 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Add accountsservice-assume-gdm.patch: assume gdm when not being
|
||||||
|
able to detect the used display manager. This is basically the
|
||||||
|
same as was in place before we gained support for multiple DMs
|
||||||
|
(boo#1212675).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 21 14:07:07 UTC 2023 - Ferdinand Thiessen <rpm@fthiessen.de>
|
||||||
|
|
||||||
|
- Update to version 23.13.9:
|
||||||
|
+ daemon: Fix boot delay
|
||||||
|
+ user-manager:
|
||||||
|
- Add cancellable to fetch user requests
|
||||||
|
- Track non-existent users
|
||||||
|
- Changes from version 23.11.69:
|
||||||
|
+ Add lightdm autologin support
|
||||||
|
+ user:
|
||||||
|
- Return an error when setting invalid language
|
||||||
|
- Throw a warning for invalid locales
|
||||||
|
- Support new LocalAccount property in cache file
|
||||||
|
- Replace usermod -p with chpasswd -e
|
||||||
|
+ main:
|
||||||
|
- Use new overridable USERDIR
|
||||||
|
- Use new overridable ICONDIR
|
||||||
|
- Use new overridable sysconfdir
|
||||||
|
+ daemon:
|
||||||
|
- Add GetUsersLanguages() function
|
||||||
|
- Don't crash if /etc/shadow doesn't exist
|
||||||
|
+ Updated translations.
|
||||||
|
- Rebase patches:
|
||||||
|
+ accountsservice-sysconfig.patch
|
||||||
|
+ accountsservice-filter-suse-accounts.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Aug 1 12:01:59 UTC 2022 - Matthias Gerstner <matthias.gerstner@suse.com>
|
Mon Aug 1 12:01:59 UTC 2022 - Matthias Gerstner <matthias.gerstner@suse.com>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package accountsservice
|
# spec file for package accountsservice
|
||||||
#
|
#
|
||||||
# Copyright (c) 2022 SUSE LLC
|
# Copyright (c) 2024 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -20,25 +20,25 @@
|
|||||||
%bcond_without vala
|
%bcond_without vala
|
||||||
|
|
||||||
Name: accountsservice
|
Name: accountsservice
|
||||||
Version: 22.08.8
|
Version: 23.13.9
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: D-Bus Service to Manipulate User Account Information
|
Summary: D-Bus Service to Manipulate User Account Information
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
Group: System/Daemons
|
Group: System/Daemons
|
||||||
URL: https://www.freedesktop.org/wiki/Software/AccountsService/
|
URL: https://www.freedesktop.org/wiki/Software/AccountsService/
|
||||||
Source0: https://www.freedesktop.org/software/accountsservice/%{name}-%{version}.tar.xz
|
Source0: https://www.freedesktop.org/software/accountsservice/%{name}-%{version}.tar.xz
|
||||||
|
# Patched mocklibc source to fix build with GCC 14
|
||||||
|
Source1: mocklibc-1.0.tar.gz
|
||||||
|
# PATCH-FIX-UPSTREAM accountsservice-mocklib-gcc14.patch -- Fix meson checksum to accept patched tarball
|
||||||
|
Patch0: accountsservice-mocklib-gcc14.patch
|
||||||
|
|
||||||
# WARNING: do not remove/significantly change patch0 without updating the relevant patch in gdm too
|
# WARNING: do not remove/significantly change patch1 without updating the relevant patch in gdm too
|
||||||
# PATCH-FIX-OPENSUSE accountsservice-sysconfig.patch bnc#688071 vuntz@opensuse.org -- Read/write autologin configuration from sysconfig, like gdm (see gdm-sysconfig-settings.patch) WAS PATCH-FIX-OPENSUSE
|
# PATCH-FIX-OPENSUSE accountsservice-sysconfig.patch bnc#688071 vuntz@opensuse.org -- Read/write autologin configuration from sysconfig, like gdm (see gdm-sysconfig-settings.patch) WAS PATCH-FIX-OPENSUSE
|
||||||
Patch0: accountsservice-sysconfig.patch
|
Patch1: accountsservice-sysconfig.patch
|
||||||
# PATCH-FIX-OPENSUSE accountsservice-filter-suse-accounts.patch vuntz@opensuse.org -- Filter out some system users that are specific to openSUSE
|
# PATCH-FIX-OPENSUSE accountsservice-filter-suse-accounts.patch vuntz@opensuse.org -- Filter out some system users that are specific to openSUSE
|
||||||
Patch1: accountsservice-filter-suse-accounts.patch
|
Patch2: accountsservice-filter-suse-accounts.patch
|
||||||
# PATCH-FIX-OPENSUSE harden_accounts-daemon.service.patch jsegitz@suse.com -- For details please see https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
|
# PATCH-FIX-OPENSUSE harden_accounts-daemon.service.patch jsegitz@suse.com -- For details please see https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
|
||||||
Patch2: harden_accounts-daemon.service.patch
|
Patch3: harden_accounts-daemon.service.patch
|
||||||
|
|
||||||
## SLE and Leap only patches start at 1000
|
|
||||||
# PATCH-FEATURE-SLE as-fate318433-prevent-same-account-multi-logins.patch fate#318433 cxiong@suse.com -- prevent multiple simultaneous login.
|
|
||||||
Patch1000: as-fate318433-prevent-same-account-multi-logins.patch
|
|
||||||
|
|
||||||
BuildRequires: gtk-doc
|
BuildRequires: gtk-doc
|
||||||
BuildRequires: meson
|
BuildRequires: meson
|
||||||
@ -97,9 +97,9 @@ querying and manipulating user account information.
|
|||||||
%package vala
|
%package vala
|
||||||
Summary: Vala bindings for accountsservice
|
Summary: Vala bindings for accountsservice
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
|
BuildRequires: vala
|
||||||
Requires: libaccountsservice0 = %{version}
|
Requires: libaccountsservice0 = %{version}
|
||||||
Requires: typelib-1_0-AccountsService-1_0 = %{version}
|
Requires: typelib-1_0-AccountsService-1_0 = %{version}
|
||||||
BuildRequires: vala
|
|
||||||
|
|
||||||
%description vala
|
%description vala
|
||||||
The accountsservice server provides a set of D-Bus interfaces for
|
The accountsservice server provides a set of D-Bus interfaces for
|
||||||
@ -112,14 +112,9 @@ This package contains the Vala bindings for accountservice.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1
|
# inject patched mocklibc tarball into package cache
|
||||||
%patch1 -p1
|
cp %{SOURCE1} subprojects/packagecache/
|
||||||
%patch2 -p1
|
%autopatch -p1
|
||||||
|
|
||||||
# SLE and Leap patches start at 1000
|
|
||||||
%if 0%{?sle_version}
|
|
||||||
%patch1000 -p1
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%meson \
|
%meson \
|
||||||
@ -169,6 +164,8 @@ This package contains the Vala bindings for accountservice.
|
|||||||
%dir %{_localstatedir}/lib/AccountsService
|
%dir %{_localstatedir}/lib/AccountsService
|
||||||
%dir %{_localstatedir}/lib/AccountsService/users
|
%dir %{_localstatedir}/lib/AccountsService/users
|
||||||
%dir %{_localstatedir}/lib/AccountsService/icons
|
%dir %{_localstatedir}/lib/AccountsService/icons
|
||||||
|
%{_datadir}/locale/en/LC_MESSAGES/accounts-service.mo
|
||||||
|
%{_datadir}/locale/en_GB/LC_MESSAGES/accounts-service.mo
|
||||||
|
|
||||||
%files -n libaccountsservice0
|
%files -n libaccountsservice0
|
||||||
%{_libdir}/*.so.0*
|
%{_libdir}/*.so.0*
|
||||||
@ -192,5 +189,7 @@ This package contains the Vala bindings for accountservice.
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files lang -f accounts-service.lang
|
%files lang -f accounts-service.lang
|
||||||
|
%exclude %{_datadir}/locale/en/LC_MESSAGES/accounts-service.mo
|
||||||
|
%exclude %{_datadir}/locale/en_GB/LC_MESSAGES/accounts-service.mo
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
@ -1,75 +0,0 @@
|
|||||||
diff -Nur accountsservice-22.08.8/src/libaccountsservice/act-user.c new/src/libaccountsservice/act-user.c
|
|
||||||
--- accountsservice-22.08.8/src/libaccountsservice/act-user.c 2022-02-23 16:27:48.000000000 +0100
|
|
||||||
+++ new/src/libaccountsservice/act-user.c 2022-04-30 22:34:42.160346848 +0200
|
|
||||||
@@ -878,6 +878,8 @@
|
|
||||||
* (Currently, this function is only implemented for systemd-logind.
|
|
||||||
* For ConsoleKit, it is equivalent to act_user_is_logged_in.)
|
|
||||||
*
|
|
||||||
+ * (SLE-12 SP2: 'other_sessions' have been modified to contain only X sessions)
|
|
||||||
+ *
|
|
||||||
* Returns: %TRUE or %FALSE
|
|
||||||
*/
|
|
||||||
gboolean
|
|
||||||
@@ -906,6 +908,24 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
+ * act_user_is_x_logged_in_remotely:
|
|
||||||
+ * @user: a #ActUser
|
|
||||||
+ *
|
|
||||||
+ * Returns whether or not #ActUser is currently graphically logged in on a
|
|
||||||
+ * different seat or no seat.
|
|
||||||
+ *
|
|
||||||
+ * (For SLE12-SP2: fate#318433)
|
|
||||||
+ *
|
|
||||||
+ * Returns: %TRUE or %FALSE
|
|
||||||
+ */
|
|
||||||
+gboolean
|
|
||||||
+act_user_is_x_logged_in_remotely (ActUser *user)
|
|
||||||
+{
|
|
||||||
+ /* return user->remote_x_sessions; */
|
|
||||||
+ return (user->other_sessions != NULL);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/**
|
|
||||||
* act_user_get_locked:
|
|
||||||
* @user: a #ActUser
|
|
||||||
*
|
|
||||||
diff -Nur accountsservice-22.08.8/src/libaccountsservice/act-user.h new/src/libaccountsservice/act-user.h
|
|
||||||
--- accountsservice-22.08.8/src/libaccountsservice/act-user.h 2022-02-23 16:27:48.000000000 +0100
|
|
||||||
+++ new/src/libaccountsservice/act-user.h 2022-04-30 22:34:42.164346848 +0200
|
|
||||||
@@ -61,6 +61,7 @@
|
|
||||||
guint act_user_get_num_sessions_anywhere (ActUser *user);
|
|
||||||
gboolean act_user_is_logged_in (ActUser *user);
|
|
||||||
gboolean act_user_is_logged_in_anywhere (ActUser *user);
|
|
||||||
+gboolean act_user_is_x_logged_in_remotely (ActUser *user);
|
|
||||||
int act_user_get_login_frequency (ActUser *user);
|
|
||||||
gint64 act_user_get_login_time (ActUser *user);
|
|
||||||
const GVariant*act_user_get_login_history (ActUser *user);
|
|
||||||
diff -Nur accountsservice-22.08.8/src/libaccountsservice/act-user-manager.c new/src/libaccountsservice/act-user-manager.c
|
|
||||||
--- accountsservice-22.08.8/src/libaccountsservice/act-user-manager.c 2022-02-23 16:27:48.000000000 +0100
|
|
||||||
+++ new/src/libaccountsservice/act-user-manager.c 2022-04-30 22:34:42.160346848 +0200
|
|
||||||
@@ -1366,12 +1366,22 @@
|
|
||||||
if (new_session->x11_display == NULL) {
|
|
||||||
g_debug ("AcUserManager: (mostly) ignoring session '%s' since it's not graphical",
|
|
||||||
new_session->id);
|
|
||||||
- is_ours = FALSE;
|
|
||||||
+ /* SLE: ignore non-graphical session completely */
|
|
||||||
+ /* see `act_user_is_logged_in_anywhere` */
|
|
||||||
+ unload_new_session (new_session);
|
|
||||||
+ return;
|
|
||||||
} else if (session_is_login_window (manager, new_session->id)) {
|
|
||||||
new_session->state = ACT_USER_MANAGER_NEW_SESSION_STATE_LOADED;
|
|
||||||
unload_new_session (new_session);
|
|
||||||
return;
|
|
||||||
} else if (!session_is_on_our_seat (manager, new_session->id)) {
|
|
||||||
+ /**
|
|
||||||
+ * NOTE: if `manager->priv->seat.id` or `new_session->id` is
|
|
||||||
+ * either NULL, it's not on our seat: this is reasonable, as
|
|
||||||
+ * non-seat session is not switchable and thus no need to be
|
|
||||||
+ * ours. However, this nondiscrimination for all non-seated
|
|
||||||
+ * sessions is possibly a source for bugs.
|
|
||||||
+ */
|
|
||||||
is_ours = FALSE;
|
|
||||||
}
|
|
||||||
|
|
BIN
mocklibc-1.0.tar.gz
(Stored with Git LFS)
Normal file
BIN
mocklibc-1.0.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user