mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-14 07:00:32 -05:00
gnu: Add distrho-ports.
* gnu/packages/music.scm (distrho-ports): New variable. Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
This commit is contained in:
parent
cf2a8755db
commit
a61d86ccaf
1 changed files with 164 additions and 0 deletions
|
@ -6350,6 +6350,170 @@ (define-public mamba
|
||||||
ones.")
|
ones.")
|
||||||
(license license:bsd-0)))
|
(license license:bsd-0)))
|
||||||
|
|
||||||
|
(define-public distrho-ports
|
||||||
|
;; From 2021-03-15 to this commit various important changes are made
|
||||||
|
;; including improved directory structure and updated JUCE versions.
|
||||||
|
(let ((commit "f2dbaded0a05732e3499fa374a586e5b32370da5")
|
||||||
|
(revision "0"))
|
||||||
|
(package
|
||||||
|
(name "distrho-ports")
|
||||||
|
(version (git-version "2021-03-15" revision commit))
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/DISTRHO/DISTRHO-Ports")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1rrnqwask2qg05ynisk6bpj118cl7c3w53rqrfg5x3sx847rjjgc"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
'(begin
|
||||||
|
;; Delete third party libraries, libraries without
|
||||||
|
;; licenses, and unneeded libraries.
|
||||||
|
(for-each
|
||||||
|
delete-file-recursively
|
||||||
|
(list "ports-juce5/arctican-function" ;no license
|
||||||
|
"ports-juce5/arctican-pilgrim" ;no license
|
||||||
|
"ports-juce5/drowaudio-tremolo" ;no license
|
||||||
|
"ports-juce5/juce-demo-host" ;not used
|
||||||
|
"ports-juce5/juce-demo-plugin" ;not used
|
||||||
|
"ports-juce5/temper/source/faust" ;bundled
|
||||||
|
"ports-juce6/chow" ;not used
|
||||||
|
"ports-juce6/swankyamp/thirdparty" ;bundled
|
||||||
|
"ports-juce6/vitalium/third_party")) ;bundled
|
||||||
|
;; Exclude them from building.
|
||||||
|
(substitute* (find-files "." "meson.build$")
|
||||||
|
(("'arctican") "#'arctican")
|
||||||
|
(("'drowaudio-tremolo") "#'drowaudio-tremolo")
|
||||||
|
(("'third") "#'third"))
|
||||||
|
;; Use system provided "nlohmann/json.hpp".
|
||||||
|
(with-directory-excursion "ports-juce6/vitalium/source"
|
||||||
|
(substitute*
|
||||||
|
(list "common/line_generator.h"
|
||||||
|
"common/load_save.h"
|
||||||
|
"common/tuning.h"
|
||||||
|
"common/wavetable/wavetable_component.h"
|
||||||
|
"common/wavetable/wavetable_creator.h"
|
||||||
|
"common/wavetable/wavetable_keyframe.h"
|
||||||
|
"interface/editor_sections/save_section.h"
|
||||||
|
"interface/look_and_feel/skin.h"
|
||||||
|
"synthesis/producers/sample_source.h")
|
||||||
|
(("json/json\\.h") "nlohmann/json.hpp")))))))
|
||||||
|
(build-system meson-build-system)
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:tests? #f ;no test target
|
||||||
|
#:phases
|
||||||
|
#~(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'patch-juce-fonts
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let ((fonts (search-input-directory inputs "/etc/fonts")))
|
||||||
|
(with-directory-excursion "libs"
|
||||||
|
(substitute* (find-files "." "juce_linux_Fonts.cpp$")
|
||||||
|
(("/usr/share/fonts") fonts)))))))))
|
||||||
|
(native-inputs
|
||||||
|
(list cmake-minimal
|
||||||
|
concurrentqueue
|
||||||
|
faust
|
||||||
|
nlohmann-json
|
||||||
|
optional-lite
|
||||||
|
pkg-config))
|
||||||
|
(inputs
|
||||||
|
(list alsa-lib
|
||||||
|
fontconfig
|
||||||
|
freetype
|
||||||
|
fftwf
|
||||||
|
libx11
|
||||||
|
libxcursor
|
||||||
|
libxext
|
||||||
|
libxrender
|
||||||
|
mesa))
|
||||||
|
(native-search-paths
|
||||||
|
(list (search-path-specification
|
||||||
|
(variable "LV2_PATH")
|
||||||
|
(files '("lib/lv2")))
|
||||||
|
(search-path-specification
|
||||||
|
(variable "VST2_PATH")
|
||||||
|
(files '("lib/vst")))
|
||||||
|
(search-path-specification
|
||||||
|
(variable "VST3_PATH")
|
||||||
|
(files '("lib/vst3")))))
|
||||||
|
(home-page "https://github.com/DISTRHO/DISTRHO-Ports")
|
||||||
|
(synopsis "Audio plugins and LV2 ports")
|
||||||
|
(description
|
||||||
|
"This package contains LV2 ports of the following audio plugins:
|
||||||
|
@itemize
|
||||||
|
@item Dexed,
|
||||||
|
@item dRowAudio plugins (Distortion, Distortion Shaper, Flanger, Reverb,
|
||||||
|
Tremolo),
|
||||||
|
@item DrumSynth,
|
||||||
|
@item EasySSP,
|
||||||
|
@item EQinox,
|
||||||
|
@item HiReSam,
|
||||||
|
@item JuceOPL,
|
||||||
|
@item KlangFalter,
|
||||||
|
@item LUFS Meter,
|
||||||
|
@item Luftikus,
|
||||||
|
@item Obxd,
|
||||||
|
@item PitchedDelay,
|
||||||
|
@item ReFine,
|
||||||
|
@item StereoSourceSeperation,
|
||||||
|
@item Swanky Amp,
|
||||||
|
@item TAL plugins (Dub-3, Filter, Filter-2, Noize Mak3r, Reverb, Reverb-II,
|
||||||
|
Reverb-III, Vocoder-II),
|
||||||
|
@item Temper,
|
||||||
|
@item Vex,
|
||||||
|
@item Vitalium, and
|
||||||
|
@item Wolpertinger.
|
||||||
|
@end itemize")
|
||||||
|
(license
|
||||||
|
(list license:asl2.0 ;used by Dexed
|
||||||
|
;; mingw-std-threads and EasySSP (for dsp-utility) use FreeBSD.
|
||||||
|
license:bsd-2
|
||||||
|
;; Licenses for dRowAudio is not found in this repository, but
|
||||||
|
;; the upstream project is licensed under MIT:
|
||||||
|
;; https://github.com/drowaudio/drowaudio.
|
||||||
|
;; Luftikus, PitchedDelay and ReFine are ported from lkjb plugins
|
||||||
|
;; which is licensed under MIT:
|
||||||
|
;; https://github.com/lkjbdsp/lkjb-plugins.
|
||||||
|
license:expat
|
||||||
|
(license:fsf-free ;used by Temper
|
||||||
|
"file:///ports-juce5/temper/source/TemperDsp.hpp")
|
||||||
|
;; juce-plugin, LUFS Meter, Obxd and TAL plugins use GPLv2.
|
||||||
|
license:gpl2
|
||||||
|
;; License for Wolpertinger is not found in this repository, but
|
||||||
|
;; the upstream project is licensed under GPLv2+:
|
||||||
|
;; https://github.com/jkroll20/wolpertinger.
|
||||||
|
;; dRowAudio plugins, juced, HiReSam and Vex use this license.
|
||||||
|
;; Packages using files from JUCETICE project use this license.
|
||||||
|
license:gpl2+
|
||||||
|
;; License for EasySSP is not found in this repository, but the
|
||||||
|
;; upstream project is licensed under GPLv3:
|
||||||
|
;; https://github.com/automatl/audio-dsp-multi-visualize.
|
||||||
|
license:gpl3 ;used by JUCE
|
||||||
|
;; Dexed, Swanky Amp, Vitalium and KlangFalter use GPLv3+.
|
||||||
|
license:gpl3+
|
||||||
|
;; License for lv2-ttl-generator is not found in this repository,
|
||||||
|
;; but is a part of DPF-Plugins and is licensed under ISC:
|
||||||
|
;; https://github.com/DISTRHO/DPF.
|
||||||
|
;; JUCE uses this license for juce_audio_basics,
|
||||||
|
;; juce_audio_devices, juce_blocks_basics, juce_core and
|
||||||
|
;; juce_events.
|
||||||
|
license:isc
|
||||||
|
license:lgpl2.0+ ;used by DrumSynth and EQinox
|
||||||
|
license:lgpl2.1+ ;used by SoundTouch and juce-opl
|
||||||
|
;; StereoSourceSeperation uses a non-copyleft license.
|
||||||
|
(license:non-copyleft
|
||||||
|
"file:///ports-juce5/stereosourceseparation/\
|
||||||
|
source/kiss_fft/kiss_fft.c")
|
||||||
|
;; dRowAudio uses a non-copyleft license for curl.
|
||||||
|
(license:non-copyleft
|
||||||
|
"file:///libs/drowaudio/source/dRowAudio/network/\
|
||||||
|
curl/include/curl/curl.h")
|
||||||
|
license:wtfpl2))))) ;used by dRowAudio for FFTReal
|
||||||
|
|
||||||
(define-public dpf-plugins
|
(define-public dpf-plugins
|
||||||
(package
|
(package
|
||||||
(name "dpf-plugins")
|
(name "dpf-plugins")
|
||||||
|
|
Loading…
Reference in a new issue