Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Jones <git@serebit.com>2023-09-15 07:51:36 -0400
committerGitHub <noreply@github.com>2023-09-15 21:51:36 +1000
commit06d46ac762f58d051b2dba1aea50a2e3314ab403 (patch)
tree923ad88e6fa563b17658c97add27acbaf3906346
parent418351d5efdd9f79047c580a422d6a95c536515e (diff)
Add option to use slick-greeter with lightdm (#1970)
-rw-r--r--archinstall/default_profiles/desktops/budgie.py2
-rw-r--r--archinstall/default_profiles/profile.py3
-rw-r--r--archinstall/lib/profile/profiles_handler.py14
3 files changed, 17 insertions, 2 deletions
diff --git a/archinstall/default_profiles/desktops/budgie.py b/archinstall/default_profiles/desktops/budgie.py
index 68506d45..28c05f45 100644
--- a/archinstall/default_profiles/desktops/budgie.py
+++ b/archinstall/default_profiles/desktops/budgie.py
@@ -23,4 +23,4 @@ class BudgieProfile(XorgProfile):
@property
def default_greeter_type(self) -> Optional[GreeterType]:
- return GreeterType.Lightdm
+ return GreeterType.LightdmSlick
diff --git a/archinstall/default_profiles/profile.py b/archinstall/default_profiles/profile.py
index c7683013..982bd5a3 100644
--- a/archinstall/default_profiles/profile.py
+++ b/archinstall/default_profiles/profile.py
@@ -31,7 +31,8 @@ class ProfileType(Enum):
class GreeterType(Enum):
- Lightdm = 'lightdm'
+ Lightdm = 'lightdm-gtk-greeter'
+ LightdmSlick = 'lightdm-slick-greeter'
Sddm = 'sddm'
Gdm = 'gdm'
Ly = 'ly'
diff --git a/archinstall/lib/profile/profiles_handler.py b/archinstall/lib/profile/profiles_handler.py
index 8ea646b6..07910b08 100644
--- a/archinstall/lib/profile/profiles_handler.py
+++ b/archinstall/lib/profile/profiles_handler.py
@@ -173,6 +173,9 @@ class ProfileHandler:
service = None
match greeter:
+ case GreeterType.LightdmSlick:
+ packages = ['lightdm', 'lightdm-slick-greeter']
+ service = ['lightdm']
case GreeterType.Lightdm:
packages = ['lightdm', 'lightdm-gtk-greeter']
service = ['lightdm']
@@ -191,6 +194,17 @@ class ProfileHandler:
if service:
install_session.enable_service(service)
+ # slick-greeter requires a config change
+ if greeter == GreeterType.LightdmSlick:
+ path = install_session.target.joinpath('etc/lightdm/lightdm.conf')
+ with open(path, 'r') as file:
+ filedata = file.read()
+
+ filedata = filedata.replace('#greeter-session=example-gtk-gnome', 'greeter-session=lightdm-slick-greeter')
+
+ with open(path, 'w') as file:
+ file.write(filedata)
+
def install_gfx_driver(self, install_session: 'Installer', driver: Optional[GfxDriver]):
try: