base16-schemes: unstable-2024-06-21 -> unstable-2024-11-12
[NixPkgs.git] / pkgs / by-name / hi / hivelytracker / package.nix
blob49cd0a78ed7517ff76be8e7f4a6a46b04954d400
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , pkg-config
5 , SDL
6 , SDL_image
7 , SDL_ttf
8 , gtk3
9 , wrapGAppsHook3
12 stdenv.mkDerivation (finalAttrs: {
13   pname = "hivelytracker";
14   version = "1.9";
16   src = fetchFromGitHub {
17     owner = "pete-gordon";
18     repo = "hivelytracker";
19     rev = "V${lib.replaceStrings ["."] ["_"] finalAttrs.version}";
20     sha256 = "148p320sd8phcpmj4m85ns5zly2dawbp8kgx9ryjfdk24pa88xg6";
21   };
23   nativeBuildInputs = [
24     pkg-config
25     wrapGAppsHook3
26   ];
28   buildInputs = [
29     SDL
30     SDL_image
31     SDL_ttf
32     gtk3
33   ];
35   makeFlags = [
36     "-C sdl"
37     "-f Makefile.linux"
38     "PREFIX=$(out)"
39   ];
41   # Also build the hvl2wav tool
42   postBuild = ''
43     make -C hvl2wav
44   '';
46   postInstall = ''
47     # Also install the hvl2wav tool
48     install -Dm755 hvl2wav/hvl2wav $out/bin/hvl2wav
49   '';
51   meta = with lib; {
52     homepage = "http://www.hivelytracker.co.uk/";
53     downloadPage = "http://www.hivelytracker.co.uk/downl.php";
54     description = "Chip music tracker based upon the AHX format";
55     longDescription = ''
56       Hively Tracker is a tracker program based upon the AHX format created in
57       the mid '90s by Dexter and Pink of Abyss. The format was relatively
58       popular, and many songs were created and used in scene productions and
59       games. AHX was designed to create a very SID-like sound on the Amiga.
61       HivelyTracker can import and export modules and instruments in the AHX
62       format, but it also improves on AHX in several ways and therefore has
63       its own instrument and module formats.
64     '';
65     license = licenses.bsd3;
66     platforms = platforms.all;
67     mainProgram = "hivelytracker";
68     maintainers = with maintainers; [ fgaz ];
69     broken = stdenv.hostPlatform.isDarwin; # TODO: try to use xcbuild
70   };