Add option to use slick-greeter with lightdm (#1970)

This commit is contained in:
Campbell Jones 2023-09-15 07:51:36 -04:00 committed by GitHub
parent 418351d5ef
commit 06d46ac762
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 2 deletions

View File

@ -23,4 +23,4 @@ class BudgieProfile(XorgProfile):
@property
def default_greeter_type(self) -> Optional[GreeterType]:
return GreeterType.Lightdm
return GreeterType.LightdmSlick

View File

@ -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'

View File

@ -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: