tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
imv: 4.3.1 -> 4.4.0
Sebastian Sellmeier
3 years ago
e6143a1b
c6fd9036
+15
-8
1 changed file
expand all
collapse all
unified
split
pkgs
applications
graphics
imv
default.nix
+15
-8
pkgs/applications/graphics/imv/default.nix
···
11
, icu
12
, pango
13
, inih
14
-
, withWindowSystem ? "all"
15
, xorg
16
, libxkbcommon
17
, libGLU
···
27
}:
28
29
let
0
0
0
0
0
0
30
windowSystems = {
31
all = windowSystems.x11 ++ windowSystems.wayland;
32
x11 = [ libGLU xorg.libxcb xorg.libX11 ];
···
47
in
48
49
# check that given window system is valid
50
-
assert lib.assertOneOf "withWindowSystem" withWindowSystem
51
(builtins.attrNames windowSystems);
52
# check that every given backend is valid
53
assert builtins.all
···
56
57
stdenv.mkDerivation rec {
58
pname = "imv";
59
-
version = "4.3.1";
60
outputs = [ "out" "man" ];
61
62
src = fetchFromSourcehut {
63
owner = "~exec64";
64
repo = "imv";
65
rev = "v${version}";
66
-
sha256 = "sha256-gMAd8skst72QT4jGFH7aRdWeAd4tf/uQgXhGaM/Dpgc=";
67
};
68
69
mesonFlags = [
70
-
"-Dwindows=${withWindowSystem}"
71
"-Dtest=enabled"
72
"-Dman=enabled"
73
] ++ backendFlags;
···
87
libxkbcommon
88
pango
89
inih
90
-
] ++ windowSystems."${withWindowSystem}"
91
++ builtins.map (b: backends."${b}") withBackends;
92
93
postInstall = ''
···
96
install -Dm644 ../files/imv.desktop $out/share/applications/
97
'';
98
99
-
postFixup = lib.optionalString (withWindowSystem == "all") ''
100
# The `bin/imv` script assumes imv-wayland or imv-x11 in PATH,
101
# so we have to fix those to the binaries we installed into the /nix/store
102
···
109
110
meta = with lib; {
111
description = "A command line image viewer for tiling window managers";
112
-
homepage = "https://github.com/eXeC64/imv";
113
license = licenses.mit;
114
maintainers = with maintainers; [ rnhmjoj markus1189 ];
115
platforms = platforms.all;
0
116
};
117
}
···
11
, icu
12
, pango
13
, inih
14
+
, withWindowSystem ? null
15
, xorg
16
, libxkbcommon
17
, libGLU
···
27
}:
28
29
let
30
+
# default value of withWindowSystem
31
+
withWindowSystem' =
32
+
if withWindowSystem != null then withWindowSystem
33
+
else if stdenv.isLinux then "all"
34
+
else "x11";
35
+
36
windowSystems = {
37
all = windowSystems.x11 ++ windowSystems.wayland;
38
x11 = [ libGLU xorg.libxcb xorg.libX11 ];
···
53
in
54
55
# check that given window system is valid
56
+
assert lib.assertOneOf "withWindowSystem" withWindowSystem'
57
(builtins.attrNames windowSystems);
58
# check that every given backend is valid
59
assert builtins.all
···
62
63
stdenv.mkDerivation rec {
64
pname = "imv";
65
+
version = "4.4.0";
66
outputs = [ "out" "man" ];
67
68
src = fetchFromSourcehut {
69
owner = "~exec64";
70
repo = "imv";
71
rev = "v${version}";
72
+
sha256 = "sha256-LLEEbriHzZhAOQivqHqdr6g7lh4uj++ytlme8AfRjf4=";
73
};
74
75
mesonFlags = [
76
+
"-Dwindows=${withWindowSystem'}"
77
"-Dtest=enabled"
78
"-Dman=enabled"
79
] ++ backendFlags;
···
93
libxkbcommon
94
pango
95
inih
96
+
] ++ windowSystems."${withWindowSystem'}"
97
++ builtins.map (b: backends."${b}") withBackends;
98
99
postInstall = ''
···
102
install -Dm644 ../files/imv.desktop $out/share/applications/
103
'';
104
105
+
postFixup = lib.optionalString (withWindowSystem' == "all") ''
106
# The `bin/imv` script assumes imv-wayland or imv-x11 in PATH,
107
# so we have to fix those to the binaries we installed into the /nix/store
108
···
115
116
meta = with lib; {
117
description = "A command line image viewer for tiling window managers";
118
+
homepage = "https://sr.ht/~exec64/imv/";
119
license = licenses.mit;
120
maintainers = with maintainers; [ rnhmjoj markus1189 ];
121
platforms = platforms.all;
122
+
badPlatforms = platforms.darwin;
123
};
124
}