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
-
{ lib, stdenv, fetchFromGitHub, zip, love_11, lua, makeWrapper, makeDesktopItem }:
0
2
3
-
let
4
pname = "mari0";
5
version = "1.6.2";
6
7
-
desktopItem = makeDesktopItem {
8
-
name = "mari0";
9
-
exec = pname;
10
-
comment = "Crossover between Super Mario Bros. and Portal";
11
-
desktopName = "mari0";
12
-
genericName = "mari0";
13
-
categories = [ "Game" ];
14
-
};
15
-
16
-
in
17
-
18
-
stdenv.mkDerivation {
19
-
inherit pname version;
20
-
21
src = fetchFromGitHub {
22
owner = "Stabyourself";
23
repo = pname;
···
25
sha256 = "1zqaq4w599scsjvy1rsb21fd2r8j3srx9vym4ir9bh666dp36gxa";
26
};
27
28
-
nativeBuildInputs = [ makeWrapper ];
29
-
buildInputs = [ lua love_11 zip ];
30
31
-
installPhase =
32
-
''
33
-
mkdir -p $out/bin $out/share/games/lovegames $out/share/applications
34
-
zip -9 -r ${pname}.love ./*
35
-
mv ${pname}.love $out/share/games/lovegames/${pname}.love
36
-
makeWrapper ${love_11}/bin/love $out/bin/${pname} --add-flags $out/share/games/lovegames/${pname}.love
37
-
ln -s ${desktopItem}/share/applications/* $out/share/applications/
38
-
chmod +x $out/bin/${pname}
0
0
0
0
0
0
0
0
0
0
39
'';
40
41
meta = with lib; {
···
1
+
{ lib, stdenv, fetchFromGitHub, zip, love, makeWrapper, makeDesktopItem
2
+
, copyDesktopItems }:
3
4
+
stdenv.mkDerivation rec {
5
pname = "mari0";
6
version = "1.6.2";
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
src = fetchFromGitHub {
9
owner = "Stabyourself";
10
repo = pname;
···
12
sha256 = "1zqaq4w599scsjvy1rsb21fd2r8j3srx9vym4ir9bh666dp36gxa";
13
};
14
15
+
nativeBuildInputs = [ makeWrapper copyDesktopItems zip ];
0
16
17
+
desktopItems = [
18
+
(makeDesktopItem {
19
+
name = "mari0";
20
+
exec = pname;
21
+
comment = "Crossover between Super Mario Bros. and Portal";
22
+
desktopName = "mari0";
23
+
genericName = "mari0";
24
+
categories = [ "Game" ];
25
+
})
26
+
];
27
+
28
+
installPhase = ''
29
+
runHook preInstall
30
+
zip -9 -r mari0.love ./*
31
+
install -Dm444 -t $out/share/games/lovegames/ mari0.love
32
+
makeWrapper ${love}/bin/love $out/bin/mari0 \
33
+
--add-flags $out/share/games/lovegames/mari0.love
34
+
runHook postInstall
35
'';
36
37
meta = with lib; {