From f1046aec60200c36eefc888b17e98d685169f12f Mon Sep 17 00:00:00 2001 From: dpd Date: Thu, 9 Jul 2026 10:51:18 +0800 Subject: [PATCH] update version to v44.1 --- ...tup-being-disabled-by-distro-install.patch | 70 ----- ...rules-Prefer-Wayland-with-NVIDIA-510.patch | 41 --- ...oongarch-architecture-changed-to-x11.patch | 26 -- ...wayland-on-hybrid-nvidia-with-vendor.patch | 0 1001-no-sleep-for-gdm.patch | 9 + 1002-disable-Wayland-on-HAM-chipsets.patch | 26 ++ 1003-Add-support-for-oc-distro.patch | 291 ++++++++++++++++++ gdm-autologin.pam | 15 - gdm-fingerprint.pam | 15 - gdm-launch-environment.pam | 9 - gdm-password.pam | 19 -- gdm-smartcard.pam | 15 - gdm.spec | 95 ++++-- org.gnome.login-screen.gschema.override | 2 +- sources | 2 +- 15 files changed, 389 insertions(+), 246 deletions(-) delete mode 100644 0001-Honor-initial-setup-being-disabled-by-distro-install.patch delete mode 100644 0001-gdm.rules-Prefer-Wayland-with-NVIDIA-510.patch delete mode 100644 0001-loongarch-architecture-changed-to-x11.patch create mode 100644 0001-udev-Stick-with-wayland-on-hybrid-nvidia-with-vendor.patch create mode 100644 1001-no-sleep-for-gdm.patch create mode 100644 1002-disable-Wayland-on-HAM-chipsets.patch create mode 100644 1003-Add-support-for-oc-distro.patch delete mode 100644 gdm-autologin.pam delete mode 100644 gdm-fingerprint.pam delete mode 100644 gdm-launch-environment.pam delete mode 100644 gdm-password.pam delete mode 100644 gdm-smartcard.pam diff --git a/0001-Honor-initial-setup-being-disabled-by-distro-install.patch b/0001-Honor-initial-setup-being-disabled-by-distro-install.patch deleted file mode 100644 index b46e5e4..0000000 --- a/0001-Honor-initial-setup-being-disabled-by-distro-install.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 42b18e4c84d470f33cdec5fc1f481cb25c25cf0d Mon Sep 17 00:00:00 2001 -From: Rui Matos -Date: Mon, 23 Jan 2017 20:19:51 +0100 -Subject: [PATCH] Honor initial setup being disabled by distro installer - -Sysadmins might want to disable any kind of initial setup for their -users, perhaps because they pre-configure their environments. We -already provide a configuration file option for this but distro -installers might have their own way of requesting this. - -At least the anaconda installer provides an option to skip any kind -post-install setup tools so, for now we're only adding support for -that but more might be added in the future. - -https://bugzilla.gnome.org/show_bug.cgi?id=777708 ---- - daemon/Makefile.am | 1 + - daemon/gdm-display.c | 29 +++++++++++++++++++++++++++++ - 2 files changed, 30 insertions(+) - -diff --git a/daemon/gdm-display.c b/daemon/gdm-display.c -index 5e193f2..878be88 100644 ---- a/daemon/gdm-display.c -+++ b/daemon/gdm-display.c -@@ -1547,6 +1547,31 @@ kernel_cmdline_initial_setup_force_state (gboolean *force_state) - return TRUE; - } - -+static gboolean -+initial_setup_disabled_by_anaconda (void) -+{ -+ GKeyFile *key_file; -+ const gchar *file_name = SYSCONFDIR "/sysconfig/anaconda"; -+ gboolean disabled = FALSE; -+ GError *error = NULL; -+ -+ key_file = g_key_file_new (); -+ if (!g_key_file_load_from_file (key_file, file_name, G_KEY_FILE_NONE, &error)) { -+ if (!g_error_matches (error, G_FILE_ERROR, G_FILE_ERROR_NOENT) && -+ !g_error_matches (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_NOT_FOUND)) { -+ g_warning ("Could not read %s: %s", file_name, error->message); -+ } -+ g_error_free (error); -+ goto out; -+ } -+ -+ disabled = g_key_file_get_boolean (key_file, "General", -+ "post_install_tools_disabled", NULL); -+ out: -+ g_key_file_unref (key_file); -+ return disabled; -+} -+ - static gboolean - wants_initial_setup (GdmDisplay *self) - { -@@ -1587,6 +1612,10 @@ wants_initial_setup (GdmDisplay *self) - return FALSE; - } - -+ if (initial_setup_disabled_by_anaconda ()) { -+ return FALSE; -+ } -+ - return enabled; - } - --- -2.19.0 - diff --git a/0001-gdm.rules-Prefer-Wayland-with-NVIDIA-510.patch b/0001-gdm.rules-Prefer-Wayland-with-NVIDIA-510.patch deleted file mode 100644 index 6722fe6..0000000 --- a/0001-gdm.rules-Prefer-Wayland-with-NVIDIA-510.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 69260becaa948988ab515595f137ac032b54d3ae Mon Sep 17 00:00:00 2001 -From: Olivier Fourdan -Date: Thu, 20 Jan 2022 15:36:36 +0100 -Subject: [PATCH] gdm.rules: Prefer Wayland with NVIDIA >= 510 - -NVIDIA driver version 510 and above have support for GBM, use Wayland by -default with NVIDIA proprietary driver version 510 and above. - -For versions between 470 and 510, prefer Xorg as before. ---- - data/61-gdm.rules.in | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/data/61-gdm.rules.in b/data/61-gdm.rules.in -index bbc6a00e..e9c72697 100644 ---- a/data/61-gdm.rules.in -+++ b/data/61-gdm.rules.in -@@ -10,7 +10,9 @@ IMPORT{cmdline}="nomodeset", GOTO="gdm_disable_wayland" - LABEL="gdm_nomodeset_end" - - # Disable wayland when nvidia modeset is disabled or when drivers are a lower --# version than 470, in any case always prefer Xorg -+# version than 470, -+# For versions above 470 but lower than 510 prefer Xorg, -+# Above 510, prefer Wayland. - KERNEL!="nvidia_drm", GOTO="gdm_nvidia_drm_end" - SUBSYSTEM!="module", GOTO="gdm_nvidia_drm_end" - ACTION!="add", GOTO="gdm_nvidia_drm_end" -@@ -18,6 +20,9 @@ ACTION!="add", GOTO="gdm_nvidia_drm_end" - ATTR{parameters/modeset}!="Y", GOTO="gdm_disable_wayland" - # disable wayland for nvidia drivers versions lower than 470 - ATTR{version}=="4[0-6][0-9].*|[0-3][0-9][0-9].*|[0-9][0-9].*|[0-9].*", GOTO="gdm_disable_wayland" -+# For nvidia drivers versions Above 510, keep Wayland by default -+ATTR{version}=="[5-9][1-9][0-9].*", GOTO="gdm_end" -+# For nvidia drivers versions 470-495, prefer Xorg by default - GOTO="gdm_prefer_xorg" - LABEL="gdm_nvidia_drm_end" - --- -2.34.1 - diff --git a/0001-loongarch-architecture-changed-to-x11.patch b/0001-loongarch-architecture-changed-to-x11.patch deleted file mode 100644 index 0693f41..0000000 --- a/0001-loongarch-architecture-changed-to-x11.patch +++ /dev/null @@ -1,26 +0,0 @@ -From c9285316d450e03d0b7cbbde1b3a43ff1b2c29be Mon Sep 17 00:00:00 2001 -From: rpm-build -Date: Thu, 5 Dec 2024 16:18:01 +0800 -Subject: [PATCH] loongarch architecture changed to x11 - ---- - data/gdm.conf-custom.in | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/data/gdm.conf-custom.in b/data/gdm.conf-custom.in -index 9b63ba9..9d999ab 100644 ---- a/data/gdm.conf-custom.in -+++ b/data/gdm.conf-custom.in -@@ -2,7 +2,8 @@ - - [daemon] - # Uncomment the line below to force the login screen to use Xorg --#WaylandEnable=false -+WaylandEnable=false -+DefaultSession=gnome-xorg.desktop - - [security] - --- -2.41.1 - diff --git a/0001-udev-Stick-with-wayland-on-hybrid-nvidia-with-vendor.patch b/0001-udev-Stick-with-wayland-on-hybrid-nvidia-with-vendor.patch new file mode 100644 index 0000000..e69de29 diff --git a/1001-no-sleep-for-gdm.patch b/1001-no-sleep-for-gdm.patch new file mode 100644 index 0000000..6a528ac --- /dev/null +++ b/1001-no-sleep-for-gdm.patch @@ -0,0 +1,9 @@ +--- gdm-44.0/data/dconf/defaults/00-upstream-settings 2023-03-20 23:42:37.000000000 +0800 ++++ gdm-44.0/data/dconf/defaults/00-upstream-settings.new 2023-05-22 20:24:20.056000000 +0800 +@@ -49,3 +49,6 @@ + search='' + stop='' + www='' ++ ++[org/gnome/settings-daemon/plugins/power] ++sleep-inactive-ac-type='nothing' diff --git a/1002-disable-Wayland-on-HAM-chipsets.patch b/1002-disable-Wayland-on-HAM-chipsets.patch new file mode 100644 index 0000000..16f5c08 --- /dev/null +++ b/1002-disable-Wayland-on-HAM-chipsets.patch @@ -0,0 +1,26 @@ +From d3bd5fc5840e37aee830c1f613b25fee4d369a4f Mon Sep 17 00:00:00 2001 +From: wangkaiqiang +Date: Tue, 9 Dec 2025 15:05:16 +0800 +Subject: [PATCH] disable Wayland on HAM chipsets + +--- + data/61-gdm.rules.in | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/data/61-gdm.rules.in b/data/61-gdm.rules.in +index a4f841b..c50f7c4 100644 +--- a/data/61-gdm.rules.in ++++ b/data/61-gdm.rules.in +@@ -27,6 +27,9 @@ ATTR{vendor}=="0x102b", ATTR{device}=="0x0538", GOTO="gdm_disable_wayland" + ATTR{vendor}=="0x1a03", ATTR{device}=="0x2010", GOTO="gdm_disable_wayland" + ATTR{vendor}=="0x1a03", ATTR{device}=="0x2000", GOTO="gdm_disable_wayland" + ++# disable Wayland on HAM chipsets ++ATTR{vendor}=="0x1bd4", ATTR{device}=="0x0750", GOTO="gdm_disable_wayland" ++ + LABEL="gdm_pci_device_end" + + # disable Wayland if modesetting is disabled +-- +2.39.3 + diff --git a/1003-Add-support-for-oc-distro.patch b/1003-Add-support-for-oc-distro.patch new file mode 100644 index 0000000..bbb1f6b --- /dev/null +++ b/1003-Add-support-for-oc-distro.patch @@ -0,0 +1,291 @@ +From a0c294cc12fc260fceace9765f1a8eac771a5fa9 Mon Sep 17 00:00:00 2001 +From: doupengda +Date: Tue, 7 Jul 2026 20:36:19 +0800 +Subject: [PATCH] Add support for oc distro + +--- + data/meson.build | 14 ++++++++++++++ + data/pam-opencloudos/gdm-autologin.pam | 15 +++++++++++++++ + data/pam-opencloudos/gdm-fingerprint.pam | 15 +++++++++++++++ + .../gdm-launch-environment.pam | 9 +++++++++ + data/pam-opencloudos/gdm-password.pam | 19 +++++++++++++++++++ + data/pam-opencloudos/gdm-smartcard.pam | 15 +++++++++++++++ + data/pam-tencentos/gdm-autologin.pam | 15 +++++++++++++++ + data/pam-tencentos/gdm-fingerprint.pam | 15 +++++++++++++++ + data/pam-tencentos/gdm-launch-environment.pam | 9 +++++++++ + data/pam-tencentos/gdm-password.pam | 19 +++++++++++++++++++ + data/pam-tencentos/gdm-smartcard.pam | 15 +++++++++++++++ + meson.build | 2 ++ + meson_options.txt | 2 +- + 13 files changed, 163 insertions(+), 1 deletion(-) + create mode 100644 data/pam-opencloudos/gdm-autologin.pam + create mode 100644 data/pam-opencloudos/gdm-fingerprint.pam + create mode 100644 data/pam-opencloudos/gdm-launch-environment.pam + create mode 100644 data/pam-opencloudos/gdm-password.pam + create mode 100644 data/pam-opencloudos/gdm-smartcard.pam + create mode 100644 data/pam-tencentos/gdm-autologin.pam + create mode 100644 data/pam-tencentos/gdm-fingerprint.pam + create mode 100644 data/pam-tencentos/gdm-launch-environment.pam + create mode 100644 data/pam-tencentos/gdm-password.pam + create mode 100644 data/pam-tencentos/gdm-smartcard.pam + +diff --git a/data/meson.build b/data/meson.build +index 2dec4c2..b74146b 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -105,6 +105,20 @@ pam_data_files_map = { + 'gdm-smartcard', + 'gdm-password', + ], ++ 'opencloudos': [ ++ 'gdm-autologin', ++ 'gdm-launch-environment', ++ 'gdm-fingerprint', ++ 'gdm-smartcard', ++ 'gdm-password', ++ ], ++ 'tencentos': [ ++ 'gdm-autologin', ++ 'gdm-launch-environment', ++ 'gdm-fingerprint', ++ 'gdm-smartcard', ++ 'gdm-password', ++ ], + 'openembedded': [ + 'gdm-autologin', + 'gdm-launch-environment', +diff --git a/data/pam-opencloudos/gdm-autologin.pam b/data/pam-opencloudos/gdm-autologin.pam +new file mode 100644 +index 0000000..97a4a13 +--- /dev/null ++++ b/data/pam-opencloudos/gdm-autologin.pam +@@ -0,0 +1,15 @@ ++#%PAM-1.0 ++auth [success=ok default=1] pam_gdm.so ++-auth optional pam_gnome_keyring.so ++auth sufficient pam_permit.so ++account required pam_nologin.so ++account include system-auth ++password include system-auth ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include system-auth ++session optional pam_gnome_keyring.so auto_start ++session include postlogin +diff --git a/data/pam-opencloudos/gdm-fingerprint.pam b/data/pam-opencloudos/gdm-fingerprint.pam +new file mode 100644 +index 0000000..628568e +--- /dev/null ++++ b/data/pam-opencloudos/gdm-fingerprint.pam +@@ -0,0 +1,15 @@ ++auth substack fingerprint-auth ++auth include postlogin ++ ++account required pam_nologin.so ++account include fingerprint-auth ++ ++password include fingerprint-auth ++ ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include fingerprint-auth ++session include postlogin +diff --git a/data/pam-opencloudos/gdm-launch-environment.pam b/data/pam-opencloudos/gdm-launch-environment.pam +new file mode 100644 +index 0000000..2e9ea2b +--- /dev/null ++++ b/data/pam-opencloudos/gdm-launch-environment.pam +@@ -0,0 +1,9 @@ ++#%PAM-1.0 ++auth required pam_env.so ++auth required pam_permit.so ++auth include postlogin ++account required pam_permit.so ++password required pam_permit.so ++session optional pam_keyinit.so force revoke ++session include system-auth ++session include postlogin +diff --git a/data/pam-opencloudos/gdm-password.pam b/data/pam-opencloudos/gdm-password.pam +new file mode 100644 +index 0000000..c75da00 +--- /dev/null ++++ b/data/pam-opencloudos/gdm-password.pam +@@ -0,0 +1,19 @@ ++auth [success=done ignore=ignore default=bad] pam_selinux_permit.so ++auth substack password-auth ++auth optional pam_gnome_keyring.so ++auth include postlogin ++ ++account required pam_nologin.so ++account include password-auth ++ ++password substack password-auth ++-password optional pam_gnome_keyring.so use_authtok ++ ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include password-auth ++session optional pam_gnome_keyring.so auto_start ++session include postlogin +diff --git a/data/pam-opencloudos/gdm-smartcard.pam b/data/pam-opencloudos/gdm-smartcard.pam +new file mode 100644 +index 0000000..3264a71 +--- /dev/null ++++ b/data/pam-opencloudos/gdm-smartcard.pam +@@ -0,0 +1,15 @@ ++auth substack smartcard-auth ++auth include postlogin ++ ++account required pam_nologin.so ++account include smartcard-auth ++ ++password include smartcard-auth ++ ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include smartcard-auth ++session include postlogin +diff --git a/data/pam-tencentos/gdm-autologin.pam b/data/pam-tencentos/gdm-autologin.pam +new file mode 100644 +index 0000000..97a4a13 +--- /dev/null ++++ b/data/pam-tencentos/gdm-autologin.pam +@@ -0,0 +1,15 @@ ++#%PAM-1.0 ++auth [success=ok default=1] pam_gdm.so ++-auth optional pam_gnome_keyring.so ++auth sufficient pam_permit.so ++account required pam_nologin.so ++account include system-auth ++password include system-auth ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include system-auth ++session optional pam_gnome_keyring.so auto_start ++session include postlogin +diff --git a/data/pam-tencentos/gdm-fingerprint.pam b/data/pam-tencentos/gdm-fingerprint.pam +new file mode 100644 +index 0000000..628568e +--- /dev/null ++++ b/data/pam-tencentos/gdm-fingerprint.pam +@@ -0,0 +1,15 @@ ++auth substack fingerprint-auth ++auth include postlogin ++ ++account required pam_nologin.so ++account include fingerprint-auth ++ ++password include fingerprint-auth ++ ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include fingerprint-auth ++session include postlogin +diff --git a/data/pam-tencentos/gdm-launch-environment.pam b/data/pam-tencentos/gdm-launch-environment.pam +new file mode 100644 +index 0000000..2e9ea2b +--- /dev/null ++++ b/data/pam-tencentos/gdm-launch-environment.pam +@@ -0,0 +1,9 @@ ++#%PAM-1.0 ++auth required pam_env.so ++auth required pam_permit.so ++auth include postlogin ++account required pam_permit.so ++password required pam_permit.so ++session optional pam_keyinit.so force revoke ++session include system-auth ++session include postlogin +diff --git a/data/pam-tencentos/gdm-password.pam b/data/pam-tencentos/gdm-password.pam +new file mode 100644 +index 0000000..c75da00 +--- /dev/null ++++ b/data/pam-tencentos/gdm-password.pam +@@ -0,0 +1,19 @@ ++auth [success=done ignore=ignore default=bad] pam_selinux_permit.so ++auth substack password-auth ++auth optional pam_gnome_keyring.so ++auth include postlogin ++ ++account required pam_nologin.so ++account include password-auth ++ ++password substack password-auth ++-password optional pam_gnome_keyring.so use_authtok ++ ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include password-auth ++session optional pam_gnome_keyring.so auto_start ++session include postlogin +diff --git a/data/pam-tencentos/gdm-smartcard.pam b/data/pam-tencentos/gdm-smartcard.pam +new file mode 100644 +index 0000000..3264a71 +--- /dev/null ++++ b/data/pam-tencentos/gdm-smartcard.pam +@@ -0,0 +1,15 @@ ++auth substack smartcard-auth ++auth include postlogin ++ ++account required pam_nologin.so ++account include smartcard-auth ++ ++password include smartcard-auth ++ ++session required pam_selinux.so close ++session required pam_loginuid.so ++session required pam_selinux.so open ++session optional pam_keyinit.so force revoke ++session required pam_namespace.so ++session include smartcard-auth ++session include postlogin +diff --git a/meson.build b/meson.build +index a358354..51f4ed5 100644 +--- a/meson.build ++++ b/meson.build +@@ -171,6 +171,8 @@ if default_pam_config == 'autodetect' + pam_autodetect_map = { + '/etc/redhat-release': 'redhat', + '/etc/fedora-release': 'redhat', ++ '/etc/opencloudos-release': 'opencloudos', ++ '/etc/tencentos-release': 'tencentos', + '/etc/exherbo-release': 'exherbo', + '/etc/arch-release': 'arch', + '/etc/lfs-release': 'lfs', +diff --git a/meson_options.txt b/meson_options.txt +index 14e0b90..8cb1f6e 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -1,7 +1,7 @@ + option('at-spi-registryd-dir', type: 'string', value: '', description: 'Specify the directory of at-spi-registryd.') + option('custom-conf', type: 'string', value: '', description: 'Filename to give to custom configuration file.') + option('dbus-sys', type: 'string', value: '', description: 'Where D-Bus systemd directory is.') +-option('default-pam-config', type: 'combo', choices: [ 'autodetect', 'redhat', 'openembedded', 'exherbo', 'lfs', 'arch', 'none'], value: 'autodetect', description: '') ++option('default-pam-config', type: 'combo', choices: [ 'autodetect', 'redhat', 'openembedded', 'exherbo', 'lfs', 'arch', 'none', 'opencloudos', 'tencentos'], value: 'autodetect', description: '') + option('default-path', type: 'string', value: '/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin', description: 'Path GDM will use as the user\'s default PATH.') + option('defaults-conf', type: 'string', value: '', description: 'Filename to give to defaults file.') + option('dmconfdir', type: 'string', value: '', description: 'Directory where sessions are stored.') +-- +2.43.7 + diff --git a/gdm-autologin.pam b/gdm-autologin.pam deleted file mode 100644 index 97a4a13..0000000 --- a/gdm-autologin.pam +++ /dev/null @@ -1,15 +0,0 @@ -#%PAM-1.0 -auth [success=ok default=1] pam_gdm.so --auth optional pam_gnome_keyring.so -auth sufficient pam_permit.so -account required pam_nologin.so -account include system-auth -password include system-auth -session required pam_selinux.so close -session required pam_loginuid.so -session required pam_selinux.so open -session optional pam_keyinit.so force revoke -session required pam_namespace.so -session include system-auth -session optional pam_gnome_keyring.so auto_start -session include postlogin diff --git a/gdm-fingerprint.pam b/gdm-fingerprint.pam deleted file mode 100644 index 628568e..0000000 --- a/gdm-fingerprint.pam +++ /dev/null @@ -1,15 +0,0 @@ -auth substack fingerprint-auth -auth include postlogin - -account required pam_nologin.so -account include fingerprint-auth - -password include fingerprint-auth - -session required pam_selinux.so close -session required pam_loginuid.so -session required pam_selinux.so open -session optional pam_keyinit.so force revoke -session required pam_namespace.so -session include fingerprint-auth -session include postlogin diff --git a/gdm-launch-environment.pam b/gdm-launch-environment.pam deleted file mode 100644 index 2e9ea2b..0000000 --- a/gdm-launch-environment.pam +++ /dev/null @@ -1,9 +0,0 @@ -#%PAM-1.0 -auth required pam_env.so -auth required pam_permit.so -auth include postlogin -account required pam_permit.so -password required pam_permit.so -session optional pam_keyinit.so force revoke -session include system-auth -session include postlogin diff --git a/gdm-password.pam b/gdm-password.pam deleted file mode 100644 index c75da00..0000000 --- a/gdm-password.pam +++ /dev/null @@ -1,19 +0,0 @@ -auth [success=done ignore=ignore default=bad] pam_selinux_permit.so -auth substack password-auth -auth optional pam_gnome_keyring.so -auth include postlogin - -account required pam_nologin.so -account include password-auth - -password substack password-auth --password optional pam_gnome_keyring.so use_authtok - -session required pam_selinux.so close -session required pam_loginuid.so -session required pam_selinux.so open -session optional pam_keyinit.so force revoke -session required pam_namespace.so -session include password-auth -session optional pam_gnome_keyring.so auto_start -session include postlogin diff --git a/gdm-smartcard.pam b/gdm-smartcard.pam deleted file mode 100644 index 3264a71..0000000 --- a/gdm-smartcard.pam +++ /dev/null @@ -1,15 +0,0 @@ -auth substack smartcard-auth -auth include postlogin - -account required pam_nologin.so -account include smartcard-auth - -password include smartcard-auth - -session required pam_selinux.so close -session required pam_loginuid.so -session required pam_selinux.so open -session optional pam_keyinit.so force revoke -session required pam_namespace.so -session include smartcard-auth -session include postlogin diff --git a/gdm.spec b/gdm.spec index 8c6aec8..452d3cf 100644 --- a/gdm.spec +++ b/gdm.spec @@ -1,37 +1,56 @@ + +%global _hardened_build 1 + +%define libauditver 1.0.6 +%define gtk3_version 2.99.2 +%define pam_version 0.99.8.1-11 +%define desktop_file_utils_version 0.2.90 +%define nss_version 3.11.1 + Summary: The GNOME Display Manager Name: gdm -Version: 41.3 -Release: 10%{?dist} +Version: 44.1 +Release: 1%{?dist} License: GPLv2+ URL: https://wiki.gnome.org/Projects/GDM -Source0: http://download.gnome.org/sources/gdm/41/gdm-%{version}.tar.xz +Source0: http://download.gnome.org/sources/gdm/44/gdm-%{version}.tar.xz Source1: org.gnome.login-screen.gschema.override Source2: default.pa-for-gdm Source3: gdm.sysusers -Source4: gdm-autologin.pam -Source5: gdm-fingerprint.pam -Source6: gdm-launch-environment.pam -Source7: gdm-password.pam -Source8: gdm-smartcard.pam - -Patch3000: 0001-gdm.rules-Prefer-Wayland-with-NVIDIA-510.patch -Patch3001: 0001-Honor-initial-setup-being-disabled-by-distro-install.patch -Patch3002: 0001-data-add-system-dconf-databases-to-gdm-profile.patch -Patch3003: 0001-loongarch-architecture-changed-to-x11.patch - -BuildRequires: accountsservice-devel audit-libs-devel dconf desktop-file-utils + +Patch3000: 0001-udev-Stick-with-wayland-on-hybrid-nvidia-with-vendor.patch +Patch3001: 0001-data-add-system-dconf-databases-to-gdm-profile.patch +Patch3002: 1001-no-sleep-for-gdm.patch +Patch3003: 1002-disable-Wayland-on-HAM-chipsets.patch +Patch3004: 1003-Add-support-for-oc-distro.patch + +BuildRequires: accountsservice-devel dconf +BuildRequires: audit-libs-devel >= %{libauditver} +BuildRequires: desktop-file-utils >= %{desktop_file_utils_version} BuildRequires: gettext-devel git keyutils-libs-devel libXdmcp-devel libattr-devel -BuildRequires: libdmx-devel meson nss-devel pam-devel pkgconfig(accountsservice) -BuildRequires: pkgconfig(check) pkgconfig(gobject-introspection-1.0) pkgconfig(gtk+-3.0) +BuildRequires: libdmx-devel meson +BuildRequires: nss-devel >= %{nss_version} +BuildRequires: pam-devel >= 0:%{pam_version} +BuildRequires: pkgconfig(accountsservice) >= 0.6.3 +BuildRequires: pkgconfig(check) pkgconfig(gobject-introspection-1.0) +BuildRequires: pkgconfig(gtk+-3.0) >= %{gtk3_version} + + +BuildRequires: pkgconfig(gudev-1.0) BuildRequires: pkgconfig(iso-codes) pkgconfig(libcanberra-gtk3) pkgconfig(libselinux) BuildRequires: pkgconfig(libsystemd) pkgconfig(ply-boot-client) pkgconfig(systemd) BuildRequires: pkgconfig(x11) pkgconfig(xau) pkgconfig(xorg-server) plymouth-devel BuildRequires: systemd-rpm-macros which xorg-x11-server-Xorg xorg-x11-server-devel BuildRequires: yelp-devel yelp-tools -Requires: accountsservice audit-libs dconf gnome-keyring-pam gnome-session -Requires: gnome-session-wayland-session gnome-settings-daemon gnome-shell -Requires: iso-codes libXau pam /sbin/nologin setxkbmap systemd system-logos +Requires: accountsservice dconf gnome-keyring-pam gnome-session +Requires: audit-libs >= %{libauditver} +Requires: gnome-session-wayland-session gnome-shell +Requires: gnome-settings-daemon >= 3.27.90 +Requires: libXau >= 1.0.4-4 +Requires: pam >= 0:%{pam_version} +Requires: systemd >= 186 +Requires: iso-codes /sbin/nologin setxkbmap system-logos Requires: xhost xmodmap xrdb xorg-x11-xinit /usr/bin/dbus-run-session Requires(pre): /usr/sbin/useradd Requires: systemd-pam @@ -64,14 +83,16 @@ Requires: pam-devel The gdm-pam-extensions-devel package contains headers and other files that are helpful to PAM modules wishing to support GDM specific authentication features. +%package doc +Summary: Documentation files for %{name} +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + +%description doc +The %{name}-doc package contains documentation files for %{name}. + %prep -%setup -n gdm-%{version} -%patch3000 -p1 -%patch3001 -p1 -%patch3002 -p1 -%ifarch loongarch64 -%patch3003 -p1 -%endif +%autosetup -n %{name}-%{version} -p1 %build %meson -Dpam-prefix=%{_sysconfdir} \ @@ -80,7 +101,8 @@ wishing to support GDM specific authentication features. -Ddefault-path=/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin \ -Dprofiling=true \ -Dplymouth=enabled \ - -Dselinux=enabled \ + -Dipv6=true \ + -Dselinux=enabled %meson_build @@ -108,12 +130,9 @@ mkdir -p %{buildroot}%{_datadir}/gdm/autostart/LoginWindow mkdir -p %{buildroot}/run/gdm mkdir -p %{buildroot}%{_sysconfdir}/dconf/db/gdm.d/locks -# install pam config files -install -p -m644 -D %{SOURCE4} %{buildroot}%{_sysconfdir}/pam.d/gdm-autologin -install -p -m644 -D %{SOURCE5} %{buildroot}%{_sysconfdir}/pam.d/gdm-fingerprint -install -p -m644 -D %{SOURCE6} %{buildroot}%{_sysconfdir}/pam.d/gdm-launch-environment -install -p -m644 -D %{SOURCE7} %{buildroot}%{_sysconfdir}/pam.d/gdm-password -install -p -m644 -D %{SOURCE8} %{buildroot}%{_sysconfdir}/pam.d/gdm-smartcard +%ifarch loongarch64 + sed -i 's/^#\s*WaylandEnable=false/WaylandEnable=false/' %{buildroot}%{_sysconfdir}/gdm/custom.conf +%endif %find_lang gdm --with-gnome @@ -242,7 +261,15 @@ fi %{_includedir}/gdm/gdm-pam-extensions.h %{_libdir}/pkgconfig/gdm-pam-extensions.pc +%files doc +%doc AUTHORS NEWS README.md + + %changelog +* Thu Jul 9 2026 doupengda - 44.1-1 +- [Type] sync +- [DESC] update version to v44.1 + * Thu May 08 2025 Fanjun Kong - 41.3-10 - fix gdm.service loading error diff --git a/org.gnome.login-screen.gschema.override b/org.gnome.login-screen.gschema.override index a71d043..b5dc51d 100644 --- a/org.gnome.login-screen.gschema.override +++ b/org.gnome.login-screen.gschema.override @@ -1,3 +1,3 @@ [org.gnome.login-screen] -logo='/usr/share/pixmaps/opencloudos-gdm-logo.png' +logo='/usr/share/pixmaps/system-logo-white.png' enable-smartcard-authentication=false diff --git a/sources b/sources index b37d012..7091249 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gdm-41.3.tar.xz) = 71a93eef02fccee22ca4f90e3217431923da2b1ac4f5995ff7b64c9b4cac839f4695f4122d255407b570635d34e86e233fa7e4d5d22a8d8185ccfa8ad20f83aa +SHA512 (gdm-44.1.tar.xz) = bb761a6dd032ae5d411162b638bf5bd15bef5103c9a9d7c4de5e39db496faa62b932218a9923ef4743d17207eb890e256e910bde5c573e9fba4619f159f18e85 -- Gitee