1{
2 rustPlatform,
3 lib,
4 fetchFromSourcehut,
5 pam,
6 scdoc,
7 installShellFiles,
8}:
9
10rustPlatform.buildRustPackage rec {
11 pname = "greetd";
12 version = "0.10.3";
13
14 src = fetchFromSourcehut {
15 owner = "~kennylevinsen";
16 repo = pname;
17 rev = version;
18 sha256 = "sha256-jgvYnjt7j4uubpBxrYM3YiUfF1PWuHAN1kwnv6Y+bMg=";
19 };
20
21 cargoHash = "sha256-JwTLZawY9+M09IDbMPoNUcNrnW1C2OVlEVn1n7ol6dY=";
22
23 nativeBuildInputs = [
24 scdoc
25 installShellFiles
26 ];
27
28 buildInputs = [
29 pam
30 ];
31
32 postInstall = ''
33 for f in man/*; do
34 scdoc < "$f" > "$(sed 's/-\([0-9]\)\.scd$/.\1/' <<< "$f")"
35 rm "$f"
36 done
37 installManPage man/*
38 '';
39
40 meta = with lib; {
41 description = "Minimal and flexible login manager daemon";
42 longDescription = ''
43 greetd is a minimal and flexible login manager daemon
44 that makes no assumptions about what you want to launch.
45 Comes with agreety, a simple, text-based greeter.
46 '';
47 homepage = "https://sr.ht/~kennylevinsen/greetd/";
48 mainProgram = "greetd";
49 license = licenses.gpl3Plus;
50 maintainers = with maintainers; [ ];
51 platforms = platforms.linux;
52 };
53}