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}