nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchgit,
5 pkg-config,
6 writeText,
7 libX11,
8 libXau,
9 libXdmcp,
10 conf ? null,
11 patches ? [ ],
12 # update script dependencies
13 gitUpdater,
14}:
15
16stdenv.mkDerivation rec {
17 pname = "slstatus";
18 version = "1.1";
19
20 src = fetchgit {
21 url = "https://git.suckless.org/slstatus";
22 rev = version;
23 hash = "sha256-MRDovZpQsvnLEvsbJNBzprkzQQ4nIs1T9BLT+tSGta8=";
24 };
25
26 preBuild =
27 let
28 configFile =
29 if lib.isDerivation conf || builtins.isPath conf then conf else writeText "config.def.h" conf;
30 in
31 ''
32 ${lib.optionalString (conf != null) "cp ${configFile} config.def.h"}
33 makeFlagsArray+=(LDLIBS="-lX11 -lxcb -lXau -lXdmcp" CC=$CC)
34 '';
35
36 inherit patches;
37
38 nativeBuildInputs = [ pkg-config ];
39 buildInputs = [
40 libX11
41 libXau
42 libXdmcp
43 ];
44
45 installFlags = [ "PREFIX=$(out)" ];
46
47 passthru.updateScript = gitUpdater { };
48
49 meta = with lib; {
50 homepage = "https://tools.suckless.org/slstatus/";
51 description = "Status monitor for window managers that use WM_NAME like dwm";
52 license = licenses.isc;
53 maintainers = with maintainers; [
54 oxzi
55 qusic
56 ];
57 platforms = platforms.linux;
58 mainProgram = "slstatus";
59 };
60}