nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 stdenv,
3 lib,
4 fetchFromGitHub,
5 meson,
6 ninja,
7 pkg-config,
8 libxkbcommon,
9 pango,
10 which,
11 git,
12 cairo,
13 libxcb,
14 xcb-imdkit,
15 xcb-util-cursor,
16 xcbutilkeysyms,
17 xcbutil,
18 xcbutilwm,
19 xcbutilxrm,
20 libstartup_notification,
21 bison,
22 flex,
23 librsvg,
24 check,
25 glib,
26 buildPackages,
27 pandoc,
28}:
29
30stdenv.mkDerivation rec {
31 pname = "rofi-unwrapped";
32 version = "1.7.9.1";
33
34 src = fetchFromGitHub {
35 owner = "davatorium";
36 repo = "rofi";
37 rev = version;
38 fetchSubmodules = true;
39 hash = "sha256-HZMVGlK6ig7kWf/exivoiTe9J/SLgjm7VwRm+KgKN44=";
40 };
41
42 preConfigure = ''
43 patchShebangs "script"
44 # root not present in build /etc/passwd
45 sed -i 's/~root/~nobody/g' test/helper-expand.c
46 '';
47
48 depsBuildBuild = [
49 buildPackages.stdenv.cc
50 pkg-config
51 glib
52 ];
53 nativeBuildInputs = [
54 meson
55 ninja
56 pkg-config
57 flex
58 bison
59 pandoc
60 ];
61 buildInputs = [
62 libxkbcommon
63 pango
64 cairo
65 git
66 librsvg
67 check
68 libstartup_notification
69 libxcb
70 xcb-imdkit
71 xcb-util-cursor
72 xcbutilkeysyms
73 xcbutil
74 xcbutilwm
75 xcbutilxrm
76 which
77 ];
78
79 mesonFlags = [ "-Dimdkit=true" ];
80
81 doCheck = false;
82
83 meta = with lib; {
84 description = "Window switcher, run dialog and dmenu replacement";
85 homepage = "https://github.com/davatorium/rofi";
86 license = licenses.mit;
87 maintainers = with maintainers; [ bew ];
88 platforms = with platforms; linux;
89 mainProgram = "rofi";
90 };
91}