summary refs log tree commit diff
path: root/pkgs/applications/audio/cheesecutter
diff options
context:
space:
mode:
authorChristoph Neidahl <christoph.neidahl@gmail.com>2020-03-15 17:27:55 +0100
committerJon <jonringer@users.noreply.github.com>2020-03-27 01:40:56 -0700
commit81d0e3d056a7dcea164c3f7183f05cc7edc3e19c (patch)
tree0063ccec9e1dc0048440bf05ea5abe938175afab /pkgs/applications/audio/cheesecutter
parent2a846e9c380b82a5603b2906508dda8b752b36a2 (diff)
downloadnixpkgs-81d0e3d056a7dcea164c3f7183f05cc7edc3e19c.tar
nixpkgs-81d0e3d056a7dcea164c3f7183f05cc7edc3e19c.tar.gz
nixpkgs-81d0e3d056a7dcea164c3f7183f05cc7edc3e19c.tar.bz2
nixpkgs-81d0e3d056a7dcea164c3f7183f05cc7edc3e19c.tar.lz
nixpkgs-81d0e3d056a7dcea164c3f7183f05cc7edc3e19c.tar.xz
nixpkgs-81d0e3d056a7dcea164c3f7183f05cc7edc3e19c.tar.zst
nixpkgs-81d0e3d056a7dcea164c3f7183f05cc7edc3e19c.zip
cheesecutter: init at unstable-2019-12-06
Diffstat (limited to 'pkgs/applications/audio/cheesecutter')
-rw-r--r--pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch26
-rw-r--r--pkgs/applications/audio/cheesecutter/default.nix48
2 files changed, 74 insertions, 0 deletions
diff --git a/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch b/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch
new file mode 100644
index 00000000000..2e2746f4341
--- /dev/null
+++ b/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch
@@ -0,0 +1,26 @@
+diff --git a/src/ct2util.d b/src/ct2util.d
+index 523cadc..e462b09 100644
+--- a/src/ct2util.d
++++ b/src/ct2util.d
+@@ -105,7 +105,7 @@ int main(string[] args) {
+ 	speeds.length = 32;
+ 	masks.length = 32;
+ 	void printheader() {
+-		enum hdr = "CheeseCutter 2 utilities" ~ com.util.versionInfo;
++		enum hdr = "CheeseCutter 2 utilities";
+ 		writefln(hdr);
+ 		writefln("\nUsage: \t%s <command> <options> <infile> <-o outfile>",args[0]);
+ 		writefln("\t%s import <infile> <infile2> <-o outfile>",args[0]);
+diff --git a/src/ui/ui.d b/src/ui/ui.d
+index e418dda..21af408 100644
+--- a/src/ui/ui.d
++++ b/src/ui/ui.d
+@@ -231,7 +231,7 @@ class Infobar : Window {
+ 	  
+ 		screen.clrtoeol(0, headerColor);
+ 
+-		enum hdr = "CheeseCutter 2.9" ~ com.util.versionInfo;
++		enum hdr = "CheeseCutter 2.9";
+ 		screen.cprint(4, 0, 1, headerColor, hdr);
+ 		screen.cprint(screen.width - 14, 0, 1, headerColor, "F12 = Help");
+ 		int c1 = audio.player.isPlaying ? 13 : 12;
diff --git a/pkgs/applications/audio/cheesecutter/default.nix b/pkgs/applications/audio/cheesecutter/default.nix
new file mode 100644
index 00000000000..732c2968fde
--- /dev/null
+++ b/pkgs/applications/audio/cheesecutter/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, lib, fetchFromGitHub, fetchpatch
+, acme, ldc, patchelf
+, SDL
+}:
+
+stdenv.mkDerivation rec {
+  pname = "cheesecutter";
+  version = "unstable-2019-12-06";
+
+  src = fetchFromGitHub {
+    owner = "theyamo";
+    repo = "CheeseCutter";
+    rev = "6b433c5512d693262742a93c8bfdfb353d4be853";
+    sha256 = "1szlcg456b208w1237581sg21x69mqlh8cr6v8yvbhxdz9swxnwy";
+  };
+
+  nativeBuildInputs = [ acme ldc patchelf ];
+
+  buildInputs = [ SDL ];
+
+  patches = [
+    ./0001-fix-impure-build-date-display.patch
+  ];
+
+  makefile = "Makefile.ldc";
+
+  installPhase = ''
+    for exe in {ccutter,ct2util}; do
+      install -D $exe $out/bin/$exe
+    done
+
+    mkdir -p $out/share/cheesecutter/example_tunes
+    cp -r tunes/* $out/share/cheesecutter/example_tunes
+  '';
+
+  postFixup = ''
+    rpath=$(patchelf --print-rpath $out/bin/ccutter)
+    patchelf --set-rpath "$rpath:${lib.makeLibraryPath buildInputs}" $out/bin/ccutter
+  '';
+
+  meta = with lib; {
+    description = "A tracker program for composing music for the SID chip.";
+    homepage = "https://github.com/theyamo/CheeseCutter/";
+    license = licenses.gpl2;
+    platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
+    maintainers = with maintainers; [ OPNA2608 ];
+  };
+}