biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / applications / audio / pt2-clone / default.nix
blobbaa0f0b0e76a10a1c93ffb1234e16e6aaf506d3c
1 { lib, stdenv
2 , fetchFromGitHub
3 , cmake
4 , nixosTests
5 , alsa-lib
6 , SDL2
7 }:
9 stdenv.mkDerivation (finalAttrs: {
10   pname = "pt2-clone";
11   version = "1.68";
13   src = fetchFromGitHub {
14     owner = "8bitbubsy";
15     repo = "pt2-clone";
16     rev = "v${finalAttrs.version}";
17     sha256 = "sha256-xlXwOxmJ5cL1ouTOnFwTvx959IDQIvJ0ZRk+G9p0HbA=";
18   };
20   nativeBuildInputs = [ cmake ];
21   buildInputs = [ SDL2 ] ++ lib.optional stdenv.isLinux alsa-lib;
23   postInstall = ''
24     install -Dm444 "$src/release/other/Freedesktop.org Resources/ProTracker 2 clone.desktop" \
25       -t $out/share/applications
26     install -Dm444 "$src/release/other/Freedesktop.org Resources/ProTracker 2 clone.png" \
27       -t $out/share/icons/hicolor/512x512/apps
28   '';
30   passthru.tests = {
31     pt2-clone-opens = nixosTests.pt2-clone;
32   };
34   meta = with lib; {
35     description = "A highly accurate clone of the classic ProTracker 2.3D software for Amiga";
36     homepage = "https://16-bits.org/pt2.php";
37     license = licenses.bsd3;
38     maintainers = with maintainers; [ fgaz ];
39     # From HOW-TO-COMPILE.txt:
40     # > This code is NOT big-endian compatible
41     platforms = platforms.littleEndian;
42     mainProgram = "pt2-clone";
43   };