Cherry-pick patch to fix installer crash when using lomiri-greeter

LP: #2143868
This commit is contained in:
Jeremy Bícha 2026-03-13 17:45:34 -04:00
parent 3be64a5310
commit 5411b753df
2 changed files with 45 additions and 0 deletions

View File

@ -0,0 +1,44 @@
From: Adriaan de Groot <groot@kde.org>
Date: Tue, 10 Mar 2026 14:49:55 +0100
Subject: [displaymanager] Support alternative greeter paths in lightdm
Origin: upstream 3.4.2
---
src/modules/displaymanager/main.py | 24 ++++++++++++++----------
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/src/modules/displaymanager/main.py b/src/modules/displaymanager/main.py
index 73a884df7..143b0db15 100644
--- a/src/modules/displaymanager/main.py
+++ b/src/modules/displaymanager/main.py
@@ -664,16 +664,20 @@ class DMlightdm(DisplayManager):
a .desktop file that specifies where the actual executable is. May return
None to indicate nothing-was-found.
"""
- greeters_dir = "usr/share/xgreeters"
- greeters_target_path = os.path.join(self.root_mount_point, greeters_dir)
- available_names = os.listdir(greeters_target_path)
- available_names.sort()
- desktop_names = [n for n in self.preferred_greeters if n in available_names] # Preferred ones
- if desktop_names:
- return desktop_names[0]
- desktop_names = [n for n in available_names if n.endswith(".desktop")] # .. otherwise any .desktop
- if desktop_names:
- return desktop_names[0]
+ for greeters_dir in ( "usr/share/xgreeters", "usr/share/lightdm/greeters", ):
+ greeters_target_path = os.path.join(self.root_mount_point, greeters_dir)
+ available_names = []
+ try:
+ available_names = os.listdir(greeters_target_path)
+ except FileNotFoundError:
+ continue
+ available_names.sort()
+ desktop_names = [n for n in self.preferred_greeters if n in available_names] # Preferred ones
+ if desktop_names:
+ return desktop_names[0]
+ desktop_names = [n for n in available_names if n.endswith(".desktop")] # .. otherwise any .desktop
+ if desktop_names:
+ return desktop_names[0]
return None
def greeter_setup(self):

View File

@ -8,3 +8,4 @@ repair-icon-size.patch
populate-bootloader-installation-path.patch
allow-ignore-software-db-update-failure.patch
sddm-test-fix.patch
lightdm-greeter-patch.patch