git.iko.soy/typeable/nixpkgs
on master help sign in
Merge pull request #106674 from 0x4A6F/master-freenukum
commit5ea718cb2d390caab4cd5a5164fdf0feaa9f6ae6 authorSandro <sandro.jaeckel@gmail.com> dateFri 1 Jan 2021, 03:39 (6 years ago) parente5c488cac47ac9
2 files changed+74
pkgs/games/freenukum/default.nix+72 pkgs/top-level/all-packages.nix+2
pkgs/games/freenukum/default.nixnew file+72
@@ -0,0 +1,72 @@
1+{ stdenv
2+, rustPlatform
3+, fetchFromGitLab
4+, makeDesktopItem
5+, installShellFiles
6+, dejavu_fonts
7+, SDL2
8+, SDL2_ttf
9+}:
10+let
11+ pname = "freenukum";
12+ description = "Clone of the original Duke Nukum 1 Jump'n Run game";
13+
14+ desktopItem = makeDesktopItem {
15+ desktopName = pname;
16+ name = pname;
17+ exec = pname;
18+ icon = pname;
19+ terminal = "false";
20+ comment = description;
21+ type = "Application";
22+ categories = "Game;ArcadeGame;ActionGame";
23+ genericName = pname;
24+ fileValidation = false;
25+ };
26+
27+in
28+rustPlatform.buildRustPackage rec {
29+ inherit pname;
30+ version = "0.3.5";
31+
32+ src = fetchFromGitLab {
33+ owner = "silwol";
34+ repo = pname;
35+ rev = "v${version}";
36+ sha256 = "0yqfzh0c8fqk92q9kmidy15dc5li0ak1gbn3v7p3xw5fkrzf99gy";
37+ };
38+
39+ cargoSha256 = "1mi98ccp4026gdc5x9jc6518zb7z4dplxl8vir78ivgdpifzz4pw";
40+
41+ nativeBuildInputs = [
42+ installShellFiles
43+ ];
44+
45+ buildInputs = [
46+ SDL2
47+ SDL2_ttf
48+ ];
49+
50+ postPatch = ''
51+ substituteInPlace src/graphics.rs \
52+ --replace /usr $out
53+ '';
54+
55+ postInstall = ''
56+ mkdir -p $out/share/fonts/truetype/dejavu
57+ ln -sf \
58+ ${dejavu_fonts}/share/fonts/truetype/DejaVuSans.ttf \
59+ $out/share/fonts/truetype/dejavu/DejaVuSans.ttf
60+ mkdir -p $out/share/doc/freenukum
61+ install -Dm644 README.md CHANGELOG.md COPYING $out/share/doc/freenukum/
62+ installManPage doc/freenukum.6
63+ install -Dm644 "${desktopItem}/share/applications/"* -t $out/share/applications/
64+ '';
65+
66+ meta = with stdenv.lib; {
67+ description = "Clone of the original Duke Nukum 1 Jump'n Run game";
68+ license = licenses.agpl3Plus;
69+ maintainers = with maintainers; [ _0x4A6F ];
70+ broken = stdenv.isDarwin;
71+ };
72+}
pkgs/top-level/all-packages.nix+2
@@ -4080,6 +4080,8 @@ in
40804080
40814081 freedroidrpg = callPackage ../games/freedroidrpg { };
40824082
4083+ freenukum = callPackage ../games/freenukum { };
4084+
40834085 freebind = callPackage ../tools/networking/freebind { };
40844086
40854087 freeipmi = callPackage ../tools/system/freeipmi {};