guix_mirror_bot pushed a commit to branch master
in repository guix.
commit e4551d1475d2879d3570611000fbb14a7c5a4f9c
Author: Maxim Cournoyer <[email protected]>
AuthorDate: Mon Aug 31 17:47:43 2026 +0900
gnu: lightdm: Update to 1.33.1.
* gnu/packages/display-managers.scm (lightdm): lightdm: Update to 1.33.1.
[source]: Delete patches. Update URL.
[#:configure-flags]: Remove custom CFLAGS.
[#:phases] {check}: Re-order after install phase; add comment.
[native-inputs]: Replace dbus-1.15.0 with dbus. Replace
python-pygobject-3.50
with python-pygobject.
[home-page]: Update URL.
* gnu/packages/patches/lightdm-arguments-ordering.patch
* gnu/packages/patches/lightdm-vnc-color-depth.patch
* gnu/packages/patches/lightdm-vnc-ipv6.patch
* gnu/packages/patches/lightdm-vncserver-check.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): De-register them.
---
gnu/local.mk | 4 --
gnu/packages/display-managers.scm | 32 ++++-----
.../patches/lightdm-arguments-ordering.patch | 54 ---------------
gnu/packages/patches/lightdm-vnc-color-depth.patch | 81 ----------------------
gnu/packages/patches/lightdm-vnc-ipv6.patch | 48 -------------
gnu/packages/patches/lightdm-vncserver-check.patch | 66 ------------------
6 files changed, 15 insertions(+), 270 deletions(-)
diff --git a/gnu/local.mk b/gnu/local.mk
index 903bcdcf0b..ce67a59d35 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1750,10 +1750,6 @@ dist_patch_DATA =
\
%D%/packages/patches/libvirt-respect-modules-path.patch \
%D%/packages/patches/libzmf-doxygen-1.14.patch \
%D%/packages/patches/libziparchive-add-includes.patch \
- %D%/packages/patches/lightdm-arguments-ordering.patch \
- %D%/packages/patches/lightdm-vnc-ipv6.patch \
- %D%/packages/patches/lightdm-vnc-color-depth.patch \
- %D%/packages/patches/lightdm-vncserver-check.patch \
%D%/packages/patches/linphone-desktop-cmake-belcard.patch \
%D%/packages/patches/linphone-desktop-cmake-find-modules.patch \
%D%/packages/patches/localed-xorg-keyboard.patch \
diff --git a/gnu/packages/display-managers.scm
b/gnu/packages/display-managers.scm
index 6cbbc89782..55f5d29912 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -12,7 +12,7 @@
;;; Copyright © 2021 Zheng Junjie <[email protected]>
;;; Copyright © 2021-2023 Efraim Flashner <[email protected]>
;;; Copyright © 2021 Petr Hodina <[email protected]>
-;;; Copyright © 2022, 2023 Maxim Cournoyer <[email protected]>
+;;; Copyright © 2022-2023, 2026 Maxim Cournoyer <[email protected]>
;;; Copyright © 2024 Janneke Nieuwenhuizen <[email protected]>
;;; Copyright © 2026 Anderson Torres <[email protected]>
;;;
@@ -457,20 +457,16 @@ the screen.")
(define-public lightdm
(package
(name "lightdm")
- (version "1.32.0")
+ (version "1.33.1")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/canonical/lightdm")
+ (url "https://github.com/ubuntu/lightdm")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
- "1wr60c946p8jz9kb8zi4cd8d4mkcy7infbvlfzwajiglc22nblxn"))
- (patches (search-patches "lightdm-arguments-ordering.patch"
- "lightdm-vncserver-check.patch"
- "lightdm-vnc-color-depth.patch"
- "lightdm-vnc-ipv6.patch"))))
+ "1gayj1gasxfrr22njwyqs40k3w5dvkfjszzzf2sljildc9bpz7py"))))
(build-system gnu-build-system)
(arguments
(list
@@ -478,9 +474,7 @@ the screen.")
#:configure-flags
#~(list "--localstatedir=/var"
"--sysconfdir=/etc"
- "--enable-gtk-doc"
- ;; Otherwise the test suite fails on such a warning.
- "CFLAGS=-Wno-error=missing-prototypes")
+ "--enable-gtk-doc")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
@@ -497,6 +491,13 @@ the screen.")
(substitute* "src/seat.c"
(("/bin/sh")
(search-input-file inputs "bin/sh")))))
+ ;; The check phase is re-ordered after the install phase, so the
+ ;; shared libraries referenced absolutely in the typelibs (that's
+ ;; thanks to 'gobject-introspection-absolute-shlib-path.patch') are
+ ;; found (recent pygobject raises an error otherwise).
+ (delete 'check) ;moved after install phase
+ (add-after 'install 'check
+ (assoc-ref %standard-phases 'check))
(add-before 'check 'pre-check
(lambda _
(wrap-program "tests/src/test-python-greeter"
@@ -536,18 +537,15 @@ the screen.")
intltool
libtool
vala ;for Vala bindings
- ;; For tests
- ;; All tests fail with dbus >= 1.15.2, see
- ;; https://github.com/canonical/lightdm/issues/346
- dbus-1.15.0
+ dbus
python-wrapper
- python-pygobject-3.50
+ python-pygobject ;<https://github.com/ubuntu/lightdm/issues/471>
which
yelp-tools))
;; Required by liblightdm-gobject-1.pc.
(propagated-inputs
(list glib libx11 libxklavier))
- (home-page "https://www.freedesktop.org/wiki/Software/LightDM/")
+ (home-page "https://github.com/ubuntu/lightdm")
(synopsis "Lightweight display manager")
(description "The Light Display Manager (LightDM) is a cross-desktop
display manager which supports different greeters.")
diff --git a/gnu/packages/patches/lightdm-arguments-ordering.patch
b/gnu/packages/patches/lightdm-arguments-ordering.patch
deleted file mode 100644
index c3b513a19a..0000000000
--- a/gnu/packages/patches/lightdm-arguments-ordering.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-When providing the VNCServer command as 'Xvnc -SecurityTypes None',
-the formatted command line used would look like:
-
- Xvnc -SecurityTypes None :1 -auth /var/run/lightdm/root/:1
-
-which is invalid (the display number must appear first).
-
-Submitted upstream at: https://github.com/canonical/lightdm/pull/265
-
- src/x-server-local.c | 14 +++++++++++++-
- 1 file changed, 13 insertions(+), 1 deletion(-)
-
-diff --git a/src/x-server-local.c b/src/x-server-local.c
-index 7c4ab870..6c540d18 100644
---- a/src/x-server-local.c
-+++ b/src/x-server-local.c
-@@ -463,14 +463,20 @@ x_server_local_start (DisplayServer *display_server)
- l_debug (display_server, "Logging to %s", log_file);
-
- g_autofree gchar *absolute_command = get_absolute_command (priv->command);
-+ g_auto(GStrv) tokens = g_strsplit (absolute_command, " ", 2);
-+ const gchar* binary = tokens[0];
-+ const gchar *extra_options = tokens[1];
-+
- if (!absolute_command)
- {
- l_debug (display_server, "Can't launch X server %s, not found in
path", priv->command);
- stopped_cb (priv->x_server_process, X_SERVER_LOCAL (server));
- return FALSE;
- }
-- g_autoptr(GString) command = g_string_new (absolute_command);
-+ g_autoptr(GString) command = g_string_new (binary);
-
-+ /* The display argument must be given first when the X server used
-+ * is Xvnc. */
- g_string_append_printf (command, " :%d", priv->display_number);
-
- if (priv->config_file)
-@@ -513,6 +519,12 @@ x_server_local_start (DisplayServer *display_server)
- if (X_SERVER_LOCAL_GET_CLASS (server)->add_args)
- X_SERVER_LOCAL_GET_CLASS (server)->add_args (server, command);
-
-+ /* Any extra user options provided via the VNCServer 'command'
-+ * config option are appended last, so the user can override any
-+ * of the above. */
-+ if (extra_options)
-+ g_string_append_printf (command, " %s", extra_options);
-+
- process_set_command (priv->x_server_process, command->str);
-
- l_debug (display_server, "Launching X Server");
---
-2.36.1
-
diff --git a/gnu/packages/patches/lightdm-vnc-color-depth.patch
b/gnu/packages/patches/lightdm-vnc-color-depth.patch
deleted file mode 100644
index cd69977d6a..0000000000
--- a/gnu/packages/patches/lightdm-vnc-color-depth.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-There is no longer support for 8 bit color depth in TigerVNC (see:
-https://github.com/TigerVNC/tigervnc/commit/e86d8720ba1e79b486ca29a5c2b27fa25811e6a2);
-using it causes a fatal error.
-
-Submitted upstream at: https://github.com/canonical/lightdm/pull/265.
-
-diff --git a/data/lightdm.conf b/data/lightdm.conf
-index 0df38429..60e3e8b4 100644
---- a/data/lightdm.conf
-+++ b/data/lightdm.conf
-@@ -160,4 +160,4 @@
- #listen-address=
- #width=1024
- #height=768
--#depth=8
-+#depth=24
-diff --git a/src/x-server-xvnc.c b/src/x-server-xvnc.c
-index 68340d53..27ca4454 100644
---- a/src/x-server-xvnc.c
-+++ b/src/x-server-xvnc.c
-@@ -127,7 +127,7 @@ x_server_xvnc_init (XServerXVNC *server)
- XServerXVNCPrivate *priv = x_server_xvnc_get_instance_private (server);
- priv->width = 1024;
- priv->height = 768;
-- priv->depth = 8;
-+ priv->depth = 24;
- }
-
- static void
-diff --git a/tests/scripts/vnc-command.conf b/tests/scripts/vnc-command.conf
-index 0f1e25fd..335956d9 100644
---- a/tests/scripts/vnc-command.conf
-+++ b/tests/scripts/vnc-command.conf
-@@ -19,7 +19,7 @@ command=Xvnc -option
- #?VNC-CLIENT CONNECT
-
- # Xvnc server starts
--#?XVNC-0 START GEOMETRY=1024x768 DEPTH=8 OPTION=TRUE
-+#?XVNC-0 START GEOMETRY=1024x768 DEPTH=24 OPTION=TRUE
-
- # Daemon connects when X server is ready
- #?*XVNC-0 INDICATE-READY
-diff --git a/tests/scripts/vnc-guest.conf b/tests/scripts/vnc-guest.conf
-index 431bb244..ce2b97db 100644
---- a/tests/scripts/vnc-guest.conf
-+++ b/tests/scripts/vnc-guest.conf
-@@ -21,7 +21,7 @@ user-session=default
- #?VNC-CLIENT CONNECT
-
- # Xvnc server starts
--#?XVNC-0 START GEOMETRY=1024x768 DEPTH=8 OPTION=FALSE
-+#?XVNC-0 START GEOMETRY=1024x768 DEPTH=24 OPTION=FALSE
-
- # Daemon connects when X server is ready
- #?*XVNC-0 INDICATE-READY
-diff --git a/tests/scripts/vnc-login.conf b/tests/scripts/vnc-login.conf
-index cdfe17b8..f0d65b7f 100644
---- a/tests/scripts/vnc-login.conf
-+++ b/tests/scripts/vnc-login.conf
-@@ -21,7 +21,7 @@ user-session=default
- #?VNC-CLIENT CONNECT
-
- # Xvnc server starts
--#?XVNC-0 START GEOMETRY=1024x768 DEPTH=8 OPTION=FALSE
-+#?XVNC-0 START GEOMETRY=1024x768 DEPTH=24 OPTION=FALSE
-
- # Daemon connects when X server is ready
- #?*XVNC-0 INDICATE-READY
-diff --git a/tests/scripts/vnc-open-file-descriptors.conf
b/tests/scripts/vnc-open-file-descriptors.conf
-index 753c84dd..e5d35730 100644
---- a/tests/scripts/vnc-open-file-descriptors.conf
-+++ b/tests/scripts/vnc-open-file-descriptors.conf
-@@ -21,7 +21,7 @@ user-session=default
- #?VNC-CLIENT CONNECT
-
- # Xvnc server starts
--#?XVNC-0 START GEOMETRY=1024x768 DEPTH=8 OPTION=FALSE
-+#?XVNC-0 START GEOMETRY=1024x768 DEPTH=24 OPTION=FALSE
-
- # Daemon connects when X server is ready
- #?*XVNC-0 INDICATE-READY
diff --git a/gnu/packages/patches/lightdm-vnc-ipv6.patch
b/gnu/packages/patches/lightdm-vnc-ipv6.patch
deleted file mode 100644
index 68e4363d3e..0000000000
--- a/gnu/packages/patches/lightdm-vnc-ipv6.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Submitted upstream: https://github.com/canonical/lightdm/pull/312
-
-diff --git a/src/vnc-server.c b/src/vnc-server.c
-index d3500764..00a2fc02 100644
---- a/src/vnc-server.c
-+++ b/src/vnc-server.c
-@@ -126,18 +126,10 @@ vnc_server_start (VNCServer *server)
-
- g_return_val_if_fail (server != NULL, FALSE);
-
-- g_autoptr(GError) ipv4_error = NULL;
-- priv->socket = open_tcp_socket (G_SOCKET_FAMILY_IPV4, priv->port,
priv->listen_address, &ipv4_error);
-- if (ipv4_error)
-- g_warning ("Failed to create IPv4 VNC socket: %s",
ipv4_error->message);
--
-- if (priv->socket)
-- {
-- GSource *source = g_socket_create_source (priv->socket, G_IO_IN,
NULL);
-- g_source_set_callback (source, (GSourceFunc) read_cb, server, NULL);
-- g_source_attach (source, NULL);
-- }
--
-+ // Bind to IPv6 first, as this implies binding to 0.0.0.0 in the
-+ // Linux kernel default configuration, which would otherwise cause
-+ // IPv6 clients to fail with "Error binding to address [::]:5900:
-+ // Address already in use" (#266).
- g_autoptr(GError) ipv6_error = NULL;
- priv->socket6 = open_tcp_socket (G_SOCKET_FAMILY_IPV6, priv->port,
priv->listen_address, &ipv6_error);
- if (ipv6_error)
-@@ -150,6 +142,18 @@ vnc_server_start (VNCServer *server)
- g_source_attach (source, NULL);
- }
-
-+ g_autoptr(GError) ipv4_error = NULL;
-+ priv->socket = open_tcp_socket (G_SOCKET_FAMILY_IPV4, priv->port,
priv->listen_address, &ipv4_error);
-+ if (ipv4_error)
-+ g_warning ("Failed to create IPv4 VNC socket: %s",
ipv4_error->message);
-+
-+ if (priv->socket)
-+ {
-+ GSource *source = g_socket_create_source (priv->socket, G_IO_IN,
NULL);
-+ g_source_set_callback (source, (GSourceFunc) read_cb, server, NULL);
-+ g_source_attach (source, NULL);
-+ }
-+
- if (!priv->socket && !priv->socket6)
- return FALSE;
-
diff --git a/gnu/packages/patches/lightdm-vncserver-check.patch
b/gnu/packages/patches/lightdm-vncserver-check.patch
deleted file mode 100644
index 0e31ff3d68..0000000000
--- a/gnu/packages/patches/lightdm-vncserver-check.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-Honor the Xvnc command specified in the config instead of using a hard-coded
-default.
-
-Submitted upstream at: https://github.com/canonical/lightdm/pull/265
-
-diff --git a/src/lightdm.c b/src/lightdm.c
-index 74f9ff2d..0ccfcd78 100644
---- a/src/lightdm.c
-+++ b/src/lightdm.c
-@@ -349,27 +349,42 @@ start_display_manager (void)
- /* Start the VNC server */
- if (config_get_boolean (config_get_instance (), "VNCServer", "enabled"))
- {
-- g_autofree gchar *path = g_find_program_in_path ("Xvnc");
-- if (path)
-+ /* Validate that a the VNC command is available. */
-+ g_autofree gchar *command = config_get_string (config_get_instance
(), "VNCServer", "command");
-+ if (command)
- {
-- vnc_server = vnc_server_new ();
-- if (config_has_key (config_get_instance (), "VNCServer", "port"))
-+ g_auto(GStrv) tokens = g_strsplit (command, " ", 2);
-+ if (!g_find_program_in_path (tokens[0]))
- {
-- gint port = config_get_integer (config_get_instance (),
"VNCServer", "port");
-- if (port > 0)
-- vnc_server_set_port (vnc_server, port);
-+ g_warning ("Can't start VNC server; command '%s' not found",
tokens[0]);
-+ return;
- }
-- g_autofree gchar *listen_address = config_get_string
(config_get_instance (), "VNCServer", "listen-address");
-- vnc_server_set_listen_address (vnc_server, listen_address);
-- g_signal_connect (vnc_server, VNC_SERVER_SIGNAL_NEW_CONNECTION,
G_CALLBACK (vnc_connection_cb), NULL);
--
-- g_debug ("Starting VNC server on TCP/IP port %d",
vnc_server_get_port (vnc_server));
-- vnc_server_start (vnc_server);
- }
- else
-- g_warning ("Can't start VNC server, Xvnc is not in the path");
-+ {
-+ /* Fallback to 'Xvnc'. */
-+ if (!g_find_program_in_path ("Xvnc")) {
-+ g_warning ("Can't start VNC server; 'Xvnc' command not
found");
-+ return;
-+ }
-+ }
-+
-+ vnc_server = vnc_server_new ();
-+ if (config_has_key (config_get_instance (), "VNCServer", "port"))
-+ {
-+ gint port = config_get_integer (config_get_instance (),
"VNCServer", "port");
-+ if (port > 0)
-+ vnc_server_set_port (vnc_server, port);
-+ }
-+ g_autofree gchar *listen_address = config_get_string
(config_get_instance (), "VNCServer", "listen-address");
-+ vnc_server_set_listen_address (vnc_server, listen_address);
-+ g_signal_connect (vnc_server, VNC_SERVER_SIGNAL_NEW_CONNECTION,
G_CALLBACK (vnc_connection_cb), NULL);
-+
-+ g_debug ("Starting VNC server on TCP/IP port %d", vnc_server_get_port
(vnc_server));
-+ vnc_server_start (vnc_server);
- }
- }
-+
- static void
- service_ready_cb (DisplayManagerService *service)
- {