tangled
alpha
login
or
join now
tjh.dev
/
nixpkgs
Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
0
fork
atom
overview
issues
pulls
pipelines
mari0: use copyDesktopItems
Daniel Nagy
3 years ago
b95d3db4
a2494bf2
+22
-26
1 changed file
expand all
collapse all
unified
split
pkgs
games
mari0
default.nix
+22
-26
pkgs/games/mari0/default.nix
···
1
1
-
{ lib, stdenv, fetchFromGitHub, zip, love_11, lua, makeWrapper, makeDesktopItem }:
1
1
+
{ lib, stdenv, fetchFromGitHub, zip, love, makeWrapper, makeDesktopItem
2
2
+
, copyDesktopItems }:
2
3
3
3
-
let
4
4
+
stdenv.mkDerivation rec {
4
5
pname = "mari0";
5
6
version = "1.6.2";
6
7
7
7
-
desktopItem = makeDesktopItem {
8
8
-
name = "mari0";
9
9
-
exec = pname;
10
10
-
comment = "Crossover between Super Mario Bros. and Portal";
11
11
-
desktopName = "mari0";
12
12
-
genericName = "mari0";
13
13
-
categories = [ "Game" ];
14
14
-
};
15
15
-
16
16
-
in
17
17
-
18
18
-
stdenv.mkDerivation {
19
19
-
inherit pname version;
20
20
-
21
8
src = fetchFromGitHub {
22
9
owner = "Stabyourself";
23
10
repo = pname;
···
25
12
sha256 = "1zqaq4w599scsjvy1rsb21fd2r8j3srx9vym4ir9bh666dp36gxa";
26
13
};
27
14
28
28
-
nativeBuildInputs = [ makeWrapper ];
29
29
-
buildInputs = [ lua love_11 zip ];
15
15
+
nativeBuildInputs = [ makeWrapper copyDesktopItems zip ];
30
16
31
31
-
installPhase =
32
32
-
''
33
33
-
mkdir -p $out/bin $out/share/games/lovegames $out/share/applications
34
34
-
zip -9 -r ${pname}.love ./*
35
35
-
mv ${pname}.love $out/share/games/lovegames/${pname}.love
36
36
-
makeWrapper ${love_11}/bin/love $out/bin/${pname} --add-flags $out/share/games/lovegames/${pname}.love
37
37
-
ln -s ${desktopItem}/share/applications/* $out/share/applications/
38
38
-
chmod +x $out/bin/${pname}
17
17
+
desktopItems = [
18
18
+
(makeDesktopItem {
19
19
+
name = "mari0";
20
20
+
exec = pname;
21
21
+
comment = "Crossover between Super Mario Bros. and Portal";
22
22
+
desktopName = "mari0";
23
23
+
genericName = "mari0";
24
24
+
categories = [ "Game" ];
25
25
+
})
26
26
+
];
27
27
+
28
28
+
installPhase = ''
29
29
+
runHook preInstall
30
30
+
zip -9 -r mari0.love ./*
31
31
+
install -Dm444 -t $out/share/games/lovegames/ mari0.love
32
32
+
makeWrapper ${love}/bin/love $out/bin/mari0 \
33
33
+
--add-flags $out/share/games/lovegames/mari0.love
34
34
+
runHook postInstall
39
35
'';
40
36
41
37
meta = with lib; {