personal/dotfiles

pkgs/dmenu.nix in framework
Repositories | Summary | Log | Files | README.md | LICENSE

dmenu.nix (1368B) download


 1{ pkgs ? import <nixpkgs> { }
 2, configHeader
 3}:
 4
 5with pkgs; stdenv.mkDerivation rec {
 6  name = "dmenu";
 7  src = fetchurl {
 8    url = "https://dl.suckless.org/tools/dmenu-5.2.tar.gz";
 9    hash = "sha256-1NTKd7WRQPJyJy21N+BbuRpZFPVoAmUtxX5hp3PUN5I=";
10  };
11
12  buildInputs = [
13    xorg.libX11
14    xorg.libXinerama
15    xorg.libXft
16  ];
17
18  patches = [
19    ../patches/dmenu-dynamicoptions-5.2.diff
20
21    (pkgs.fetchurl {
22      url = https://tools.suckless.org/dmenu/patches/bar_height/dmenu-bar-height-5.2.diff;
23      hash = "sha256-YzPGmjkjHNIy4kxsY5GthitR/jKkUE7Pl8I8C/pcSLo=";
24    })
25    (pkgs.fetchurl {
26      url = https://tools.suckless.org/dmenu/patches/case-insensitive/dmenu-caseinsensitive-5.0.diff;
27      hash = "sha256-TH/3HoIxkFJ+zqDuqISjQLmgjHlYlZKnopjrmxOoZ0U=";
28    })
29    (pkgs.fetchurl {
30      url = https://tools.suckless.org/dmenu/patches/highlight/dmenu-highlight-4.9.diff;
31      hash = "sha256-T0Y3YbFt/yVc7cTimJ8HZNQ9zKvd/G1XhfyimPaLQWA=";
32    })
33    (pkgs.fetchurl {
34      url = https://tools.suckless.org/dmenu/patches/numbers/dmenu-numbers-20220512-28fb3e2.diff;
35      hash = "sha256-dXAmbub13PUDjygoxsK0PNnCPc5yNWOIPtrNLvy8fSw=";
36    })
37  ];
38
39  configurePhase = ''
40    ln -sf ${../assets/dmenu_path} dmenu_path
41    ln -sf ${configHeader} config.h
42  '';
43
44  buildPhase = ''
45    make all
46  '';
47
48  installPhase = ''
49    make PREFIX=$out install
50  '';
51}