diff --git a/pkgs/by-name/co/cosmic-greeter/package.nix b/pkgs/by-name/co/cosmic-greeter/package.nix index b6c1d204c40e..90ca350a82c2 100644 --- a/pkgs/by-name/co/cosmic-greeter/package.nix +++ b/pkgs/by-name/co/cosmic-greeter/package.nix @@ -3,50 +3,48 @@ stdenv, fetchFromGitHub, rustPlatform, + libcosmicAppHook, cmake, - coreutils, just, libinput, - libxkbcommon, linux-pam, - pkg-config, udev, - wayland, + coreutils, + xkeyboard_config, + nix-update-script, }: -rustPlatform.buildRustPackage rec { +rustPlatform.buildRustPackage (finalAttrs: { pname = "cosmic-greeter"; - version = "1.0.0-alpha.2"; + version = "1.0.0-alpha.6"; src = fetchFromGitHub { owner = "pop-os"; repo = "cosmic-greeter"; - rev = "epoch-${version}"; - hash = "sha256-5BSsiGgL369/PePS0FmuE42tktK2bpgJziYuUEnZ2jY="; + tag = "epoch-${finalAttrs.version}"; + hash = "sha256-K6kCBtlmFfav8UP4zorzDJBzHt4CoSaFFAufrW1DPrw="; }; useFetchCargoVendor = true; - cargoHash = "sha256-5TXFE/pIeIOvy8x8c5sR3YaI8R2RTA8fzloguIpE4TM="; + cargoHash = "sha256-nmkM/Jm2P5ftZFfzX+O1Fe6eobRbgBkajZsbyI67Zfw="; - cargoBuildFlags = [ - "--all" - ]; + cargoBuildFlags = [ "--all" ]; nativeBuildInputs = [ rustPlatform.bindgenHook cmake just - pkg-config + libcosmicAppHook ]; + buildInputs = [ libinput - libxkbcommon linux-pam udev - wayland ]; dontUseJustBuild = true; + dontUseJustCheck = true; justFlags = [ "--set" @@ -64,12 +62,31 @@ rustPlatform.buildRustPackage rec { substituteInPlace src/greeter.rs --replace-fail '/usr/bin/env' '${lib.getExe' coreutils "env"}' ''; - meta = with lib; { + preFixup = '' + libcosmicAppWrapperArgs+=( + --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 + ) + ''; + + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version" + "unstable" + "--version-regex" + "epoch-(.*)" + ]; + }; + + meta = { homepage = "https://github.com/pop-os/cosmic-greeter"; description = "Greeter for the COSMIC Desktop Environment"; mainProgram = "cosmic-greeter"; - license = licenses.gpl3Only; - maintainers = with maintainers; [ nyabinary ]; - platforms = platforms.linux; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ + nyabinary + HeitorAugustoLN + ]; + platforms = lib.platforms.linux; }; -} +})