diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/audio')
13 files changed, 454 insertions, 73 deletions
diff --git a/nixpkgs/pkgs/applications/audio/audacity/default.nix b/nixpkgs/pkgs/applications/audio/audacity/default.nix index 354bc0ebd764..73a0cebd36b9 100644 --- a/nixpkgs/pkgs/applications/audio/audacity/default.nix +++ b/nixpkgs/pkgs/applications/audio/audacity/default.nix @@ -62,6 +62,13 @@ let in stdenv.mkDerivation rec { pname = "audacity"; + # nixpkgs-update: no auto update + # Humans too! Let's wait to see how the situation with + # https://github.com/audacity/audacity/issues/1213 develops before + # pulling any updates that are subject to this privacy policy. We + # may wish to switch to a fork, but at the time of writing + # (2021-07-05) it's too early to tell how well any of the forks will + # be maintained. version = "3.0.2"; src = fetchFromGitHub { diff --git a/nixpkgs/pkgs/applications/audio/freac/default.nix b/nixpkgs/pkgs/applications/audio/freac/default.nix index c906f62894df..89c4847ededf 100644 --- a/nixpkgs/pkgs/applications/audio/freac/default.nix +++ b/nixpkgs/pkgs/applications/audio/freac/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "freac"; - version = "1.1.4"; + version = "1.1.5"; src = fetchFromGitHub { owner = "enzo1982"; repo = "freac"; rev = "v${version}"; - sha256 = "sha256-JwZJOV4mxNKqhhdlfFcX06NwBxmbye2mgMfdM//bHYI="; + sha256 = "sha256-cRmN9D/+FLiXqZW/PYhw61EoZuL3y61YtQ/ZNjnhfmY="; }; buildInputs = [ diff --git a/nixpkgs/pkgs/applications/audio/mixxx/default.nix b/nixpkgs/pkgs/applications/audio/mixxx/default.nix index 7af4b585adfa..6f0d34b870aa 100644 --- a/nixpkgs/pkgs/applications/audio/mixxx/default.nix +++ b/nixpkgs/pkgs/applications/audio/mixxx/default.nix @@ -1,49 +1,117 @@ -{ lib, mkDerivation, fetchurl, fetchFromGitHub, chromaprint -, fftw, flac, faad2, glibcLocales, mp4v2 -, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis -, libGLU, libxcb, lilv, lv2, opusfile -, pkg-config, portaudio, portmidi, protobuf, qtbase, qtscript, qtsvg -, qtx11extras, rubberband, sconsPackages, sqlite, taglib, upower, vamp-plugin-sdk +{ lib +, mkDerivation +, fetchurl +, fetchFromGitHub +, chromaprint +, cmake +, faad2 +, ffmpeg +, fftw +, flac +, glibcLocales +, hidapi +, lame +, libebur128 +, libGLU +, libid3tag +, libkeyfinder +, libmad +, libmodplug +, libopus +, libsecret +, libshout +, libsndfile +, libusb1 +, libvorbis +, libxcb +, lilv +, lv2 +, mp4v2 +, opusfile +, pcre +, pkg-config +, portaudio +, portmidi +, protobuf +, qtbase +, qtkeychain +, qtscript +, qtsvg +, qtx11extras +, rubberband +, serd +, sord +, soundtouch +, sratom +, sqlite +, taglib +, upower +, vamp-plugin-sdk +, wavpack }: -let - # Because libshout 2.4.2 and newer seem to break streaming in mixxx, build it - # with 2.4.1 instead. - libshout241 = libshout.overrideAttrs (o: rec { - name = "libshout-2.4.1"; - src = fetchurl { - url = "http://downloads.xiph.org/releases/libshout/${name}.tar.gz"; - sha256 = "0kgjpf8jkgyclw11nilxi8vyjk4s8878x23qyxnvybbgqbgbib7k"; - }; - }); -in mkDerivation rec { pname = "mixxx"; - version = "2.2.4"; + version = "2.3.0"; src = fetchFromGitHub { owner = "mixxxdj"; repo = "mixxx"; - rev = "release-${version}"; - sha256 = "1dj9li8av9b2kbm76jvvbdmihy1pyrw0s4xd7dd524wfhwr1llxr"; + rev = version; + sha256 = "18sx4l3zzbn5142xfv5bp0crdd615a5728fkprqacnx3zpa144x6"; }; - nativeBuildInputs = [ sconsPackages.scons_3_1_2 ]; + nativeBuildInputs = [ cmake pkg-config ]; + buildInputs = [ - chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout241 libsndfile - libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkg-config portaudio portmidi protobuf qtbase qtscript qtsvg - qtx11extras rubberband sqlite taglib upower vamp-plugin-sdk + chromaprint + faad2 + ffmpeg + fftw + flac + glibcLocales + hidapi + lame + libebur128 + libGLU + libid3tag + libkeyfinder + libmad + libmodplug + libopus + libsecret + libshout + libsndfile + libusb1 + libvorbis + libxcb + lilv + lv2 + mp4v2 + opusfile + pcre + portaudio + portmidi + protobuf + qtbase + qtkeychain + qtscript + qtsvg + qtx11extras + rubberband + serd + sord + soundtouch + sratom + sqlite + taglib + upower + vamp-plugin-sdk + wavpack ]; enableParallelBuilding = true; - sconsFlags = [ - "build=release" - "qtdir=${qtbase}" - "faad=1" - "opus=1" - ]; - qtWrapperArgs = [ "--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive" ]; @@ -52,7 +120,7 @@ mkDerivation rec { homepage = "https://mixxx.org"; description = "Digital DJ mixing software"; license = licenses.gpl2Plus; - maintainers = [ maintainers.goibhniu maintainers.bfortz ]; + maintainers = with maintainers; [ goibhniu bfortz ]; platforms = platforms.linux; }; } diff --git a/nixpkgs/pkgs/applications/audio/mousai/default.nix b/nixpkgs/pkgs/applications/audio/mousai/default.nix index 2f45a3fea92f..9044d201c457 100644 --- a/nixpkgs/pkgs/applications/audio/mousai/default.nix +++ b/nixpkgs/pkgs/applications/audio/mousai/default.nix @@ -1,7 +1,6 @@ { lib , python3 , fetchFromGitHub -, fetchpatch , appstream-glib , desktop-file-utils , gettext @@ -19,7 +18,7 @@ python3.pkgs.buildPythonApplication rec { pname = "mousai"; - version = "0.4.1"; + version = "0.4.2"; format = "other"; @@ -27,17 +26,9 @@ python3.pkgs.buildPythonApplication rec { owner = "SeaDve"; repo = "Mousai"; rev = "v${version}"; - sha256 = "sha256-AfR5n1dIm9X5OoPiikQEhHBFQq0rmQH4h7cCJ2yXoXI="; + sha256 = "sha256-zH++GGFIz3oxkKOYB4zhY6yL3vENEXxtrv8mZZ+41kU="; }; - patches = [ - (fetchpatch { - name = "fix-ABI-breakage-from-libadwaita.patch"; - url = "https://github.com/SeaDve/Mousai/commit/e3db2d9d1949300f49399209b56d667746e539df.patch"; - sha256 = "078kvmyhw4jd1m2npai0yl00lwh47jys2n03pkgxp6jf873y83vs"; - }) - ]; - postPatch = '' patchShebangs build-aux/meson ''; diff --git a/nixpkgs/pkgs/applications/audio/openmpt123/default.nix b/nixpkgs/pkgs/applications/audio/openmpt123/default.nix index 5d1888895166..3bfb1a5a4da8 100644 --- a/nixpkgs/pkgs/applications/audio/openmpt123/default.nix +++ b/nixpkgs/pkgs/applications/audio/openmpt123/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "openmpt123"; - version = "0.5.9"; + version = "0.5.10"; src = fetchurl { url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz"; - sha256 = "0h86p8mnpm98vc4v6jbvrmm02fch7dnn332i26fg3a2s1738m04d"; + sha256 = "sha256-Waj6KNi432nLf6WXK9+TEIHatOHhFWxpoaU7ZcK+n/o="; }; enableParallelBuilding = true; diff --git a/nixpkgs/pkgs/applications/audio/pianoteq/default.nix b/nixpkgs/pkgs/applications/audio/pianoteq/default.nix new file mode 100644 index 000000000000..9c258f69f664 --- /dev/null +++ b/nixpkgs/pkgs/applications/audio/pianoteq/default.nix @@ -0,0 +1,200 @@ +{ lib, stdenv, curl, gnugrep, jq, xorg, alsa-lib, freetype, p7zip, autoPatchelfHook, writeShellScript, zlib, libjack2, makeWrapper }: +let + versionForFile = v: builtins.replaceStrings ["."] [""] v; + + mkPianoteq = { name, src, version, archdir, ... }: + stdenv.mkDerivation rec { + inherit src version; + + pname = "pianoteq-${name}"; + + unpackPhase = '' + ${p7zip}/bin/7z x $src + ''; + + nativeBuildInputs = [ + autoPatchelfHook + makeWrapper + ]; + + buildInputs = [ + stdenv.cc.cc.lib + xorg.libX11 # libX11.so.6 + xorg.libXext # libXext.so.6 + alsa-lib # libasound.so.2 + freetype # libfreetype.so.6 + ]; + + installPhase = '' + mkdir -p $out/bin + mv -t $out/bin Pianoteq*/${archdir}/* + for f in $out/bin/Pianoteq*; do + if [ -x "$f" ] && [ -f "$f" ]; then + wrapProgram "$f" --prefix LD_LIBRARY_PATH : ${ + lib.makeLibraryPath (buildInputs ++ [ + xorg.libXcursor + xorg.libXinerama + xorg.libXrandr + libjack2 + zlib + ]) + } + fi + done + ''; + + meta = with lib; { + homepage = "https://www.modartt.com/pianoteq"; + description = "Software synthesizer that features real-time MIDI-control of digital physically modeled pianos and related instruments"; + license = licenses.unfree; + platforms = [ "x86_64-linux" ]; # TODO extract binary according to each platform? + maintainers = [ maintainers.mausch ]; + }; + }; + + fetchWithCurlScript = { name, sha256, script, impureEnvVars ? [] }: + stdenv.mkDerivation { + inherit name; + builder = writeShellScript "builder.sh" '' + source $stdenv/setup + + curlVersion=$(${curl}/bin/curl -V | head -1 | cut -d' ' -f2) + + # Curl flags to handle redirects, not use EPSV, handle cookies for + # servers to need them during redirects, and work on SSL without a + # certificate (this isn't a security problem because we check the + # cryptographic hash of the output anyway). + curl=( + ${curl}/bin/curl + --location + --max-redirs 20 + --retry 3 + --disable-epsv + --cookie-jar cookies + --insecure + --user-agent "curl/$curlVersion Nixpkgs/${lib.trivial.release}" + $NIX_CURL_FLAGS + ) + + ${script} + + ''; + nativeBuildInputs = [ curl ]; + outputHashAlgo = "sha256"; + outputHash = sha256; + + impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ impureEnvVars ++ [ + # This variable allows the user to pass additional options to curl + "NIX_CURL_FLAGS" + ]; + }; + + fetchPianoteqTrial = { name, sha256 }: + fetchWithCurlScript { + inherit name sha256; + script = '' + "''${curl[@]}" --silent --request POST \ + --cookie cookies \ + --header "modartt-json: request" \ + --header "origin: https://www.modartt.com" \ + --header "content-type: application/json; charset=UTF-8" \ + --header "accept: application/json, text/javascript, */*" \ + --data-raw '{"file": "${name}", "get": "url"}' \ + https://www.modartt.com/json/download -o /dev/null + json=$( + "''${curl[@]}" --silent --request POST \ + --cookie cookies \ + --header "modartt-json: request" \ + --header "origin: https://www.modartt.com" \ + --header "content-type: application/json; charset=UTF-8" \ + --header "accept: application/json, text/javascript, */*" \ + --data-raw '{"file": "${name}", "get": "url"}' \ + https://www.modartt.com/json/download + ) + url=$(echo $json | ${jq}/bin/jq -r .url) + "''${curl[@]}" --progress-bar --cookie cookies -o $out "$url" + ''; + }; + + fetchPianoteqWithLogin = { name, sha256 }: + fetchWithCurlScript { + inherit name sha256; + + impureEnvVars = [ "NIX_MODARTT_USERNAME" "NIX_MODARTT_PASSWORD" ]; + + script = '' + if [ -z "''${NIX_MODARTT_USERNAME}" -o -z "''${NIX_MODARTT_PASSWORD}" ]; then + echo "Error: Downloading a personal Pianoteq instance requires the nix building process (nix-daemon in multi user mode) to have the NIX_MODARTT_USERNAME and NIX_MODARTT_PASSWORD env vars set." >&2 + exit 1 + fi + + "''${curl[@]}" -s -o /dev/null "https://www.modartt.com/user_area" + + ${jq}/bin/jq -n "{connect: 1, login: \"''${NIX_MODARTT_USERNAME}\", password: \"''${NIX_MODARTT_PASSWORD}\"}" > login.json + + "''${curl[@]}" --silent --request POST \ + --cookie cookies \ + --referer "https://www.modartt.com/user_area" \ + --header "modartt-json: request" \ + --header "origin: https://www.modartt.com" \ + --header "content-type: application/json; charset=UTF-8" \ + --header "accept: application/json, text/javascript, */*" \ + --data @login.json \ + https://www.modartt.com/json/session + + json=$( + "''${curl[@]}" --silent --request POST \ + --cookie cookies \ + --header "modartt-json: request" \ + --header "origin: https://www.modartt.com" \ + --header "content-type: application/json; charset=UTF-8" \ + --header "accept: application/json, text/javascript, */*" \ + --data-raw '{"file": "${name}", "get": "url"}' \ + https://www.modartt.com/json/download + ) + url=$(echo $json | ${jq}/bin/jq -r .url) + + "''${curl[@]}" --progress-bar --cookie cookies -o $out "$url" + ''; + }; + +in { + # TODO currently can't install more than one because `lame` clashes + stage-trial = mkPianoteq rec { + name = "stage-trial"; + version = "7.4.1"; + archdir = "x86-64bit"; + src = fetchPianoteqTrial { + name = "pianoteq_stage_linux_trial_v${versionForFile version}.7z"; + sha256 = "14mbaz6i1rxqayrjjkck9yx8iijkm4q1qz29ymkd7sz2gpk7fcpa"; + }; + }; + standard-trial = mkPianoteq rec { + name = "standard-trial"; + version = "7.4.1"; + archdir = "x86-64bit"; + src = fetchPianoteqTrial { + name = "pianoteq_linux_trial_v${versionForFile version}.7z"; + sha256 = "01xh4n0h7dd3xqhm0bx0a62mqmfvxvmr5cm5r2g249c9wqg5i32a"; + }; + }; + stage-6 = mkPianoteq rec { + name = "stage-6"; + version = "6.7.3"; + archdir = "amd64"; + src = fetchPianoteqWithLogin { + name = "pianoteq_stage_linux_v${versionForFile version}.7z"; + sha256 = "0jy0hkdynhwv0zhrqkby0hdphgmcc09wxmy74rhg9afm1pzl91jy"; + }; + }; + stage-7 = mkPianoteq rec { + name = "stage-7"; + version = "7.3.0"; + archdir = "x86-64bit"; + src = fetchPianoteqWithLogin { + name = "pianoteq_stage_linux_v${versionForFile version}.7z"; + sha256 = "05w7sv9v38r6ljz9xai816w5z2qqwx88hcfjm241fvgbs54125hx"; + }; + }; + # TODO other paid binaries, I don't own that so I don't know their hash. +} diff --git a/nixpkgs/pkgs/applications/audio/picard/default.nix b/nixpkgs/pkgs/applications/audio/picard/default.nix index 49aa0ba47147..dc030cc708b5 100644 --- a/nixpkgs/pkgs/applications/audio/picard/default.nix +++ b/nixpkgs/pkgs/applications/audio/picard/default.nix @@ -40,7 +40,7 @@ pythonPackages.buildPythonApplication rec { propagatedBuildInputs = with pythonPackages; [ chromaprint - dateutil + python-dateutil discid fasteners mutagen diff --git a/nixpkgs/pkgs/applications/audio/plexamp/default.nix b/nixpkgs/pkgs/applications/audio/plexamp/default.nix index a7289cc35c81..9921c1b7e88b 100644 --- a/nixpkgs/pkgs/applications/audio/plexamp/default.nix +++ b/nixpkgs/pkgs/applications/audio/plexamp/default.nix @@ -2,13 +2,13 @@ let pname = "plexamp"; - version = "3.4.7"; + version = "3.5.0"; name = "${pname}-${version}"; src = fetchurl { url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage"; name="${pname}-${version}.AppImage"; - sha512 = "+jmx4X9KiK1Tv2Cjb/445MY9G2b7pLdKxFtBFMaQwRhqTItA33MfHqKBwmytmbEhxhy0LDTU2woJvEMPQCmnvg=="; + sha512 = "NjhrtGQsIbNDmGPEDmEbaHSfvUTFb1e7yPorF/BzWTfwVoFZEJiNzP/1k+zTJ4Yfd4mG0W0GYx0jh8m/micWIg=="; }; appimageContents = appimageTools.extractType2 { @@ -34,7 +34,7 @@ in appimageTools.wrapType2 { meta = with lib; { description = "A beautiful Plex music player for audiophiles, curators, and hipsters"; homepage = "https://plexamp.com/"; - changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/29"; + changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/30"; license = licenses.unfree; maintainers = with maintainers; [ killercup synthetica ]; platforms = [ "x86_64-linux" ]; diff --git a/nixpkgs/pkgs/applications/audio/praat/default.nix b/nixpkgs/pkgs/applications/audio/praat/default.nix index 239b62a40266..66a14fa05b28 100644 --- a/nixpkgs/pkgs/applications/audio/praat/default.nix +++ b/nixpkgs/pkgs/applications/audio/praat/default.nix @@ -1,30 +1,34 @@ -{ lib, stdenv, fetchurl, alsa-lib, gtk2, pkg-config }: +{ lib, stdenv, fetchFromGitHub, pkg-config, wrapGAppsHook, alsa-lib, gtk3, libpulseaudio }: stdenv.mkDerivation rec { pname = "praat"; - version = "6.0.43"; + version = "6.1.50"; - src = fetchurl { - url = "https://github.com/praat/praat/archive/v${version}.tar.gz"; - sha256 = "1l13bvnl7sv8v6s5z63201bhzavnj6bnqcj446akippsam13z4sf"; + src = fetchFromGitHub { + owner = "praat"; + repo = "praat"; + rev = "v${version}"; + sha256 = "11cw4292pml71hdnfy8y91blwyh45dyam1ywr09355zk44c5njpq"; }; configurePhase = '' - cp makefiles/makefile.defs.linux.alsa makefile.defs + cp makefiles/makefile.defs.linux.pulse makefile.defs ''; installPhase = '' - mkdir -p $out/bin - cp praat $out/bin + install -Dt $out/bin praat ''; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ alsa-lib gtk2 ]; + nativeBuildInputs = [ pkg-config wrapGAppsHook ]; + buildInputs = [ alsa-lib gtk3 libpulseaudio ]; - meta = { + enableParallelBuilding = true; + + meta = with lib; { description = "Doing phonetics by computer"; homepage = "https://www.fon.hum.uva.nl/praat/"; - license = lib.licenses.gpl2Plus; # Has some 3rd-party code in it though - platforms = lib.platforms.linux; + license = licenses.gpl2Plus; # Has some 3rd-party code in it though + maintainers = with maintainers; [ orivej ]; + platforms = platforms.linux; }; } diff --git a/nixpkgs/pkgs/applications/audio/scream/default.nix b/nixpkgs/pkgs/applications/audio/scream/default.nix index fb0ba9408d9e..c9eef3ff540a 100644 --- a/nixpkgs/pkgs/applications/audio/scream/default.nix +++ b/nixpkgs/pkgs/applications/audio/scream/default.nix @@ -1,26 +1,29 @@ { stdenv, lib, config, fetchFromGitHub, cmake, pkg-config , alsaSupport ? stdenv.isLinux, alsa-lib , pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio +, jackSupport ? false, libjack2 }: stdenv.mkDerivation rec { pname = "scream"; - version = "3.6"; + version = "3.7"; src = fetchFromGitHub { owner = "duncanthrax"; repo = pname; rev = version; - sha256 = "01k2zhfb781gfj3apmcjqbm5m05m6pvnh7fb5k81zwvqibai000v"; + sha256 = "0d9abrw62cd08lcg4il415b7ap89iggbljvbl5jqv2y23il0pvyz"; }; buildInputs = lib.optional pulseSupport libpulseaudio + ++ lib.optional jackSupport libjack2 ++ lib.optional alsaSupport alsa-lib; nativeBuildInputs = [ cmake pkg-config ]; cmakeFlags = [ "-DPULSEAUDIO_ENABLE=${if pulseSupport then "ON" else "OFF"}" "-DALSA_ENABLE=${if alsaSupport then "ON" else "OFF"}" + "-DJACK_ENABLE=${if jackSupport then "ON" else "OFF"}" ]; cmakeDir = "../Receivers/unix"; diff --git a/nixpkgs/pkgs/applications/audio/shortwave/default.nix b/nixpkgs/pkgs/applications/audio/shortwave/default.nix index 36ee6c12eef9..0f4ffa14228f 100644 --- a/nixpkgs/pkgs/applications/audio/shortwave/default.nix +++ b/nixpkgs/pkgs/applications/audio/shortwave/default.nix @@ -8,8 +8,8 @@ , gitMinimal , glib , gst_all_1 -, gtk3 -, libhandy_0 +, gtk4 +, libadwaita , meson , ninja , openssl @@ -22,20 +22,20 @@ stdenv.mkDerivation rec { pname = "shortwave"; - version = "1.1.1"; + version = "2.0.1"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "World"; repo = "Shortwave"; rev = version; - sha256 = "1vlhp2ss06j41simjrrjg38alp85jddhqyvccy6bhfzm0gzynwld"; + sha256 = "sha256-25qPb7qlqCwYJzl4qZxAZYx5asxSlXBlc/0dGyBdk1o="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; - hash = "sha256-0+KEbjTLecL0u/3S9FWf2r2h9ZrgcRTY163kS3NKJqA="; + hash = "sha256-00dQXcSNmdZb2nSLG3q7jm4sugF9XR4LbH0OmcuHVxA="; }; nativeBuildInputs = [ @@ -57,8 +57,8 @@ stdenv.mkDerivation rec { dbus gdk-pixbuf glib - gtk3 - libhandy_0 + gtk4 + libadwaita openssl sqlite ] ++ (with gst_all_1; [ diff --git a/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix new file mode 100644 index 000000000000..c58023d6a4bd --- /dev/null +++ b/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix @@ -0,0 +1,60 @@ +{ stdenv +, dpkg +, lib +, autoPatchelfHook +, fetchurl +, gtk3 +, glib +, desktop-file-utils +, alsa-lib +, libjack2 +, harfbuzz +, fribidi +, pango +, freetype +}: + +stdenv.mkDerivation rec { + pname = "tonelib-jam"; + version = "4.6.6"; + + src = fetchurl { + url = "https://www.tonelib.net/download/0509/ToneLib-Jam-amd64.deb"; + sha256 = "sha256-cizIQgO35CQSLme/LKQqP+WzB/jCTk+fS5Z+EtF7wnQ="; + }; + + buildInputs = [ + dpkg + gtk3 + glib + desktop-file-utils + alsa-lib + libjack2 + harfbuzz + fribidi + pango + freetype + ]; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + mkdir -p $TMP/ $out/ + dpkg -x $src $TMP + ''; + + installPhase = '' + cp -R $TMP/usr/* $out/ + mv $out/bin/ToneLib-Jam $out/bin/tonelib-jam + ''; + + meta = with lib; { + description = "ToneLib Jam – the learning and practice software for guitar players"; + homepage = "https://tonelib.net/"; + license = licenses.unfree; + maintainers = with maintainers; [ dan4ik605743 ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix new file mode 100644 index 000000000000..94ef3037a7c2 --- /dev/null +++ b/nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix @@ -0,0 +1,48 @@ +{ stdenv +, dpkg +, lib +, autoPatchelfHook +, fetchurl +, webkitgtk +, libjack2 +, alsa-lib +}: + +stdenv.mkDerivation rec { + pname = "tonelib-zoom"; + version = "4.3.1"; + + src = fetchurl { + url = "https://www.tonelib.net/download/0129/ToneLib-Zoom-amd64.deb"; + sha256 = "sha256-4q2vM0/q7o/FracnO2xxnr27opqfVQoN7fsqTD9Tr/c="; + }; + + buildInputs = [ + dpkg + webkitgtk + libjack2 + alsa-lib + ]; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + mkdir -p $TMP/ $out/ + dpkg -x $src $TMP + ''; + + installPhase = '' + cp -R $TMP/usr/* $out/ + mv $out/bin/ToneLib-Zoom $out/bin/tonelib-zoom + ''; + + meta = with lib; { + description = "ToneLib Zoom – change and save all the settings in your Zoom(r) guitar pedal"; + homepage = "https://tonelib.net/"; + license = licenses.unfree; + maintainers = with maintainers; [ dan4ik605743 ]; + platforms = platforms.linux; + }; +} |