diff options
-rw-r--r-- | pkgs/applications/audio/pulseeffects-legacy/default.nix | 115 | ||||
-rw-r--r-- | pkgs/applications/audio/pulseeffects/default.nix | 12 | ||||
-rw-r--r-- | pkgs/top-level/aliases.nix | 1 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 6 |
4 files changed, 127 insertions, 7 deletions
diff --git a/pkgs/applications/audio/pulseeffects-legacy/default.nix b/pkgs/applications/audio/pulseeffects-legacy/default.nix new file mode 100644 index 000000000000..fad17ac71fde --- /dev/null +++ b/pkgs/applications/audio/pulseeffects-legacy/default.nix @@ -0,0 +1,115 @@ +{ lib, stdenv +, fetchFromGitHub +, meson +, ninja +, pkg-config +, itstool +, python3 +, libxml2 +, desktop-file-utils +, wrapGAppsHook +, gst_all_1 +, pulseaudio +, gtk3 +, glib +, glibmm +, gtkmm3 +, lilv +, lv2 +, serd +, sord +, sratom +, libbs2b +, libsamplerate +, libsndfile +, libebur128 +, rnnoise +, boost +, dbus +, fftwFloat +, calf +, zita-convolver +, zam-plugins +, rubberband +, lsp-plugins +}: + +let + lv2Plugins = [ + calf # limiter, compressor exciter, bass enhancer and others + lsp-plugins # delay + ]; + ladspaPlugins = [ + rubberband # pitch shifting + zam-plugins # maximizer + ]; +in stdenv.mkDerivation rec { + pname = "pulseeffects"; + version = "4.8.4"; + + src = fetchFromGitHub { + owner = "wwmm"; + repo = "pulseeffects"; + rev = "v${version}"; + sha256 = "19sndxvszafbd1l2033g2irpx2jrwi5bpbx8r35047wi0z7djiag"; + }; + + nativeBuildInputs = [ + meson + ninja + pkg-config + libxml2 + itstool + python3 + desktop-file-utils + wrapGAppsHook + ]; + + buildInputs = [ + pulseaudio + glib + glibmm + gtk3 + gtkmm3 + gst_all_1.gstreamer + gst_all_1.gst-plugins-base # gst-fft + gst_all_1.gst-plugins-good # pulsesrc + gst_all_1.gst-plugins-bad + lilv lv2 serd sord sratom + libbs2b + libebur128 + libsamplerate + libsndfile + rnnoise + boost + dbus + fftwFloat + zita-convolver + ]; + + postPatch = '' + chmod +x meson_post_install.py + patchShebangs meson_post_install.py + ''; + + preFixup = '' + gappsWrapperArgs+=( + --set LV2_PATH "${lib.makeSearchPath "lib/lv2" lv2Plugins}" + --set LADSPA_PATH "${lib.makeSearchPath "lib/ladspa" ladspaPlugins}" + ) + ''; + + # Meson is no longer able to pick up Boost automatically. + # https://github.com/NixOS/nixpkgs/issues/86131 + BOOST_INCLUDEDIR = "${lib.getDev boost}/include"; + BOOST_LIBRARYDIR = "${lib.getLib boost}/lib"; + + meta = with lib; { + description = "Limiter, compressor, reverberation, equalizer and auto volume effects for Pulseaudio applications"; + homepage = "https://github.com/wwmm/pulseeffects"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ jtojnar ]; + platforms = platforms.linux; + badPlatforms = [ "aarch64-linux" ]; + }; +} diff --git a/pkgs/applications/audio/pulseeffects/default.nix b/pkgs/applications/audio/pulseeffects/default.nix index fca498bd8975..0ba926fab4f9 100644 --- a/pkgs/applications/audio/pulseeffects/default.nix +++ b/pkgs/applications/audio/pulseeffects/default.nix @@ -9,7 +9,7 @@ , desktop-file-utils , wrapGAppsHook , gst_all_1 -, pulseaudio +, pipewire , gtk3 , glib , glibmm @@ -45,13 +45,13 @@ let ]; in stdenv.mkDerivation rec { pname = "pulseeffects"; - version = "4.8.4"; + version = "5.0.0"; src = fetchFromGitHub { owner = "wwmm"; repo = "pulseeffects"; rev = "v${version}"; - sha256 = "19sndxvszafbd1l2033g2irpx2jrwi5bpbx8r35047wi0z7djiag"; + sha256 = "1zs13bivxlgcb24lz1pgmgy2chcjxnmn4lz7g1n0ygiaaj4c30xj"; }; nativeBuildInputs = [ @@ -66,14 +66,14 @@ in stdenv.mkDerivation rec { ]; buildInputs = [ - pulseaudio + pipewire glib glibmm gtk3 gtkmm3 gst_all_1.gstreamer gst_all_1.gst-plugins-base # gst-fft - gst_all_1.gst-plugins-good # pulsesrc + gst_all_1.gst-plugins-good # spectrum plugin gst_all_1.gst-plugins-bad lilv lv2 serd sord sratom libbs2b @@ -107,7 +107,7 @@ in stdenv.mkDerivation rec { meta = with lib; { description = "Limiter, compressor, reverberation, equalizer and auto volume effects for Pulseaudio applications"; homepage = "https://github.com/wwmm/pulseeffects"; - license = licenses.gpl3; + license = licenses.gpl3Plus; maintainers = with maintainers; [ jtojnar ]; platforms = platforms.linux; badPlatforms = [ "aarch64-linux" ]; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index b9c63d5d7760..e16cde6601ef 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -536,6 +536,7 @@ mapAliases ({ pyo3-pack = maturin; pmenu = throw "pmenu has been removed from nixpkgs, as its maintainer is no longer interested in the package."; # added 2019-12-10 pulseaudioLight = pulseaudio; # added 2018-04-25 + pulseeffects = throw "Use pulseeffects-legacy if you use PulseAudio and pulseeffects-pw if you use PipeWire."; # added 2021-02-13, move back once we default to PipeWire audio server. phonon-backend-gstreamer = throw "phonon-backend-gstreamer: Please use libsForQt5.phonon-backend-gstreamer, as Qt4 support in this package has been removed."; # added 2019-11-22 phonon-backend-vlc = throw "phonon-backend-vlc: Please use libsForQt5.phonon-backend-vlc, as Qt4 support in this package has been removed."; # added 2019-11-22 phonon = throw "phonon: Please use libsForQt5.phonon, as Qt4 support in this package has been removed."; # added 2019-11-22 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f39ef116b8c9..167a45960570 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18112,7 +18112,11 @@ in libpulseaudio = libpulseaudio-vanilla; - pulseeffects = callPackage ../applications/audio/pulseeffects { + pulseeffects-pw = callPackage ../applications/audio/pulseeffects { + boost = boost172; + }; + + pulseeffects-legacy = callPackage ../applications/audio/pulseeffects-legacy { boost = boost172; }; |