diff --git a/pkgs/applications/audio/transcribe/default.nix b/pkgs/applications/audio/transcribe/default.nix new file mode 100644 index 000000000000..26cfb8189805 --- /dev/null +++ b/pkgs/applications/audio/transcribe/default.nix @@ -0,0 +1,64 @@ +{ stdenv, fetchzip, lib, wrapGAppsHook, alsaLib, atk, cairo, gdk-pixbuf +, glib, gst_all_1, gtk3, libSM, libX11, libpng12, pango, zlib }: + +stdenv.mkDerivation rec { + pname = "transcribe"; + version = "9.00"; + + src = if stdenv.hostPlatform.system == "x86_64-linux" then + fetchzip { + url = "https://www.seventhstring.com/xscribe/downlo/xscsetup-9.00.0.tar.gz"; + sha256 = "0mgjx0hnps3jmc2d9hkskxbmwcqf7f9jx595j5sc501br1l84sdf"; + } + else throw "Platform not supported"; + + nativeBuildInputs = [ wrapGAppsHook ]; + + buildInputs = with gst_all_1; [ gst-plugins-base gst-plugins-good + gst-plugins-bad gst-plugins-ugly ]; + + dontPatchELF = true; + + libPath = with gst_all_1; lib.makeLibraryPath [ + stdenv.cc.cc glib gtk3 atk pango cairo gdk-pixbuf alsaLib + libX11 libSM libpng12 gstreamer gst-plugins-base zlib + ]; + + installPhase = '' + mkdir -p $out/bin $out/libexec $out/share/doc + cp transcribe $out/libexec + cp xschelp.htb readme_gtk.html $out/share/doc + cp -r gtkicons $out/share/icons + ln -s $out/share/doc/xschelp.htb $out/libexec + patchelf \ + --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) \ + $out/libexec/transcribe + ''; + + preFixup = '' + gappsWrapperArgs+=( + --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH_1_0" + --prefix LD_LIBRARY_PATH : "${libPath}" + ) + ''; + + postFixup = '' + ln -s $out/libexec/transcribe $out/bin/ + ''; + + meta = with lib; { + description = "Software to help transcribe recorded music"; + longDescription = '' + The Transcribe! application is an assistant for people who want + to work out a piece of music from a recording, in order to write + it out, or play it themselves, or both. It doesn't do the + transcribing for you, but it is essentially a specialised player + program which is optimised for the purpose of transcription. It + has many transcription-specific features not found on + conventional music players. + ''; + homepage = "https://www.seventhstring.com/xscribe/"; + license = licenses.unfree; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 887b1a0caafc..ab74727b9de4 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -796,7 +796,6 @@ mapAliases ({ torch-repl = throw "torch-repl has been removed, as the upstream project has been abandoned"; # added 2020-03-28 torchPackages = throw "torchPackages has been removed, as the upstream project has been abandoned"; # added 2020-03-28 trang = jing-trang; # added 2018-04-25 - transcribe = throw "transcribe has been removed after being marked a broken for over a year"; # added 2020-09-16 transmission_gtk = transmission-gtk; # added 2018-01-06 transmission_remote_gtk = transmission-remote-gtk; # added 2018-01-06 transmission-remote-cli = "transmission-remote-cli has been removed, as the upstream project has been abandoned. Please use tremc instead"; # added 2020-10-14 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2bbc2ca4957a..f2cc013e214c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -26458,6 +26458,8 @@ in transcode = callPackage ../applications/audio/transcode { }; + transcribe = callPackage ../applications/audio/transcribe { }; + transmission = callPackage ../applications/networking/p2p/transmission { }; libtransmission = transmission.override { installLib = true;