forgejo-lts: 7.0.10 -> 7.0.11
[NixPkgs.git] / pkgs / by-name / ou / outfox / package.nix
blobb3ac739d9663933eb1e86e8ab2c3dbc0d73b677d
1 { lib
2 , stdenv
3 , fetchurl
4 , autoPatchelfHook
5 , alsa-lib
6 , freetype
7 , libjack2
8 , libglvnd
9 , libpulseaudio
10 , makeDesktopItem
11 , makeWrapper
14 stdenv.mkDerivation rec {
15   pname = "outfox";
16   version = "0.5.0-pre042";
18   src = {
19     i686-linux = fetchurl {
20       url =  "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Linux-14.04-32bit-i386-i386-legacy-date-20231227.tar.gz";
21       hash = "sha256-NFjNoqJ7Fq4A7Y0k6oQcWjykV+/b/MiRtJ1p6qlZdjs=";
22     };
23     x86_64-linux = fetchurl {
24       url = "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Linux-22.04-amd64-current-date-20231224.tar.gz";
25       hash = "sha256-dW+g/JYav3rUuI+nHDi6rXu/O5KYiEdk/HH82jgOUnI=";
26     };
27     aarch64-linux = fetchurl {
28       url = "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Raspberry-Pi-Linux-18.04-arm64-arm64v8-modern-date-20231225.tar.gz";
29       hash = "sha256-7Qrq6t8KmUSIK4Rskkxw5l4UZ2vsb9/orzPegHySaJ4=";
30     };
31     armv7l-linux = fetchurl {
32       url = "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Raspberry-Pi-Linux-14.04-arm32-arm32v7-legacy-date-20231227.tar.gz";
33       hash = "sha256-PRp7kuqFBRy7nextTCB+/poc+A9AX2EiQphx6aUfT8E=";
34     };
35   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
37   nativeBuildInputs = [
38     autoPatchelfHook
39     makeWrapper
40   ];
42   buildInputs = [
43     alsa-lib
44     freetype
45     libjack2
46     libglvnd
47     libpulseaudio
48   ];
50   desktop = makeDesktopItem {
51     name = "project-outfox";
52     desktopName = "Project OutFox";
53     genericName = "Rhythm game engine";
54     exec = "OutFox";
55     tryExec = "OutFox";
56     categories = [ "Game" ];
57   };
59   patchPhase = ''
60     find ./Appearance -type f -executable -exec chmod -x {} \;
61   '';
63   installPhase = ''
64     mkdir -p $out/bin $out/share/OutFox $out/share/applications
65     cp -r ./. $out/share/OutFox
66     ln -s ${desktop}/share/applications/project-outfox.desktop $out/share/applications/project-outfox.desktop
67     makeWrapper $out/share/OutFox/OutFox $out/bin/OutFox --argv0
68   '';
70   meta = with lib; {
71     description = "Rhythm game engine forked from StepMania";
72     homepage = "https://projectoutfox.com";
73     changelog = "https://projectoutfox.com/releases/${version}";
74     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
75     license = licenses.unfree;
76     platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" "armv7l-linux" ];
77     maintainers = with maintainers; [ maxwell-lt ];
78     mainProgram = "OutFox";
79   };