aboutsummaryrefslogtreecommitdiff
path: root/pkgs/applications/audio/bambootracker/default.nix
diff options
context:
space:
mode:
authorChristoph Neidahl <christoph.neidahl@gmail.com>2020-07-31 21:45:35 +0200
committerChristoph Neidahl <christoph.neidahl@gmail.com>2020-07-31 21:45:35 +0200
commit0e9f38426a2498a3780a18ebaa3609ee45ebf0ea (patch)
treeccca3e05ec000814079a60291947c5d90c7b456d /pkgs/applications/audio/bambootracker/default.nix
parent102fa5492c071f634b9c741e137551c2d93216e2 (diff)
bambootracker: init at 0.4.3
Diffstat (limited to 'pkgs/applications/audio/bambootracker/default.nix')
-rw-r--r--pkgs/applications/audio/bambootracker/default.nix72
1 files changed, 72 insertions, 0 deletions
diff --git a/pkgs/applications/audio/bambootracker/default.nix b/pkgs/applications/audio/bambootracker/default.nix
new file mode 100644
index 000000000000..c74c0ca4eff0
--- /dev/null
+++ b/pkgs/applications/audio/bambootracker/default.nix
@@ -0,0 +1,72 @@
+{ mkDerivation
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, installShellFiles
+, qmake
+, qtbase
+, qtmultimedia
+, qttools
+, alsaSupport ? stdenv.hostPlatform.isLinux
+, alsaLib
+, pulseSupport ? stdenv.hostPlatform.isLinux
+, libpulseaudio
+, jackSupport ? stdenv.hostPlatform.isUnix
+, libjack2
+}:
+let
+
+ inherit (stdenv.lib) optional optionals;
+
+in
+mkDerivation rec {
+ pname = "bambootracker";
+ version = "0.4.3";
+
+ src = fetchFromGitHub {
+ owner = "rerrahkr";
+ repo = "BambooTracker";
+ rev = "v${version}";
+ sha256 = "0gq40qmsdavsyl2d6a71rwp4mjlwvp1c8bry32srn4hliwfnvqa6";
+ };
+
+ # Fix macOS build until new release
+ patches = [
+ (fetchpatch {
+ url = "https://github.com/rerrahkr/BambooTracker/commit/45346ed99559d44c2e32a5c6138a0835b212e875.patch";
+ sha256 = "1xkiqira1kpcqkacycy0y7qm1brhf89amliv42byijl4palmykh2";
+ })
+ ];
+
+ preConfigure = "cd BambooTracker";
+
+ nativeBuildInputs = [ qmake qttools installShellFiles ];
+
+ buildInputs = [ qtbase qtmultimedia ]
+ ++ optional alsaSupport alsaLib
+ ++ optional pulseSupport libpulseaudio
+ ++ optional jackSupport libjack2;
+
+ qmakeFlags = [ "CONFIG+=release" "CONFIG-=debug" ]
+ ++ optional pulseSupport "CONFIG+=use_pulse"
+ ++ optionals jackSupport [ "CONFIG+=use_jack" "CONFIG+=jack_has_rename" ];
+
+ postInstall = ''
+ install -Dm644 ../BambooTracker.desktop $out/share/applications/BambooTracker.desktop
+ installManPage ../BambooTracker*.1
+
+ cp -r ../{demos,licenses,skins,LICENSE} $out/share/BambooTracker/
+
+ for size in 16x16 256x256; do
+ install -Dm644 res/icon/icon_$size.png $out/share/icons/hicolor/$size/apps/BambooTracker.png
+ done
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A tracker for YM2608 (OPNA) which was used in NEC PC-8801/9801 series computers";
+ homepage = "https://github.com/rerrahkr/BambooTracker";
+ license = licenses.gpl2Only;
+ platforms = platforms.all;
+ maintainers = with maintainers; [ OPNA2608 ];
+ };
+}