cosmic-greeter: add cosmic-randr to PATH; nixos/cosmic-greeter: install cosmic-comp by default (#448844)

This commit is contained in:
Masum Reza
2025-10-10 16:09:57 +00:00
committed by GitHub
2 changed files with 17 additions and 0 deletions

View File

@@ -24,6 +24,11 @@ in
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = [
pkgs.cosmic-comp
cfg.package
];
services.greetd = { services.greetd = {
enable = true; enable = true;
settings = { settings = {
@@ -50,14 +55,22 @@ in
}; };
}; };
systemd.tmpfiles.settings.cosmic-greeter."/run/cosmic-greeter".d = {
group = "cosmic-greeter";
mode = "0755";
user = "cosmic-greeter";
};
# The greeter user is hardcoded in `cosmic-greeter` # The greeter user is hardcoded in `cosmic-greeter`
users.groups.cosmic-greeter = { }; users.groups.cosmic-greeter = { };
users.users.cosmic-greeter = { users.users.cosmic-greeter = {
description = "COSMIC login greeter user"; description = "COSMIC login greeter user";
isSystemUser = true; isSystemUser = true;
home = "/var/lib/cosmic-greeter"; home = "/var/lib/cosmic-greeter";
homeMode = "0750";
createHome = true; createHome = true;
group = "cosmic-greeter"; group = "cosmic-greeter";
extraGroups = [ "video" ];
}; };
# Required for authentication # Required for authentication
security.pam.services.cosmic-greeter = { }; security.pam.services.cosmic-greeter = { };

View File

@@ -14,6 +14,7 @@
xkeyboard_config, xkeyboard_config,
nix-update-script, nix-update-script,
nixosTests, nixosTests,
orca,
}: }:
rustPlatform.buildRustPackage (finalAttrs: { rustPlatform.buildRustPackage (finalAttrs: {
@@ -47,6 +48,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
libinput libinput
linux-pam linux-pam
udev udev
orca
]; ];
dontUseJustBuild = true; dontUseJustBuild = true;
@@ -63,10 +65,12 @@ rustPlatform.buildRustPackage (finalAttrs: {
postPatch = '' postPatch = ''
substituteInPlace src/greeter.rs --replace-fail '/usr/bin/env' '${lib.getExe' coreutils "env"}' substituteInPlace src/greeter.rs --replace-fail '/usr/bin/env' '${lib.getExe' coreutils "env"}'
substituteInPlace src/greeter.rs --replace-fail '/usr/bin/orca' '${lib.getExe orca}'
''; '';
preFixup = '' preFixup = ''
libcosmicAppWrapperArgs+=( libcosmicAppWrapperArgs+=(
--prefix PATH : ${lib.makeBinPath [ cosmic-randr ]}
--set-default X11_BASE_RULES_XML ${xkeyboard_config}/share/X11/xkb/rules/base.xml --set-default X11_BASE_RULES_XML ${xkeyboard_config}/share/X11/xkb/rules/base.xml
--set-default X11_BASE_EXTRA_RULES_XML ${xkeyboard_config}/share/X11/xkb/rules/extra.xml --set-default X11_BASE_EXTRA_RULES_XML ${xkeyboard_config}/share/X11/xkb/rules/extra.xml
) )