nonguix/nongnu/packages/music.scm
Sughosha 6c8601baa9 nongnu: reaper: Update to 7.02.
* nongnu/packages/music.scm (reaper): Update to 7.02.
2023-11-01 18:51:22 +00:00

139 lines
7.0 KiB
Scheme

;;; SPDX-License-Identifier: GPL-3.0-or-later
;;; Copyright © 2022-2023 Sughosha <sughosha@proton.me>
;;; Copyright © 2023 Jonathan Brielmaier <jonathan.brielmaier@web.de>
(define-module (nongnu packages music)
#:use-module (gnu packages audio)
#:use-module (gnu packages cpp)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages linux)
#:use-module (gnu packages pulseaudio)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (ice-9 match)
#:use-module (ice-9 regex)
#:use-module ((nonguix licenses) #:prefix license:)
#:use-module (nonguix build-system binary))
(define-public reaper
(package
(name "reaper")
(version "7.02")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.reaper.fm/files/"
(version-major version)
".x/reaper"
(string-replace-substring version "." "")
"_"
(match (%current-system)
("x86_64-linux" "linux_x86_64")
("i686-linux" "linux_i686")
("aarch64-linux" "linux_aarch64")
("armhf-linux" "linux_armv7l"))
".tar.xz"))
(sha256
(base32
(match (%current-system)
("x86_64-linux"
"0apnkv28x2vdlh7q26xsrn3b0y06cj4xgwsl1dh4rkkylrcld87k")
("i686-linux"
"00b4hdk0i4gqlk3h5y9s07fhpvklazl2f2mzbr34m41s7avfnmx5")
("aarch64-linux"
"15skc16w3yl0fbs15h39xzf2xk1y5q1919fqrvwinq5r73ig55wh")
("armhf-linux"
"1laaiw4dcmaxzf7g3f0dmlihk53p50xnk8rmj8nw18yf7qhcscbs"))))))
(build-system binary-build-system)
(arguments
(list #:strip-binaries? #f ;allocated section `.dynsym' not in segment
#:patchelf-plan
#~(let ((libs (list "libc" "gcc")))
(list (list "REAPER/reaper"
(append libs
(list "alsa-lib" "jack" "pulseaudio")))
(list "REAPER/Plugins/reaper_host_x86_64"
(append libs
(list "alsa-lib" "jack" "pulseaudio")))
(list "REAPER/Plugins/elastique3.so" libs)
(list "REAPER/Plugins/jsfx.so" libs)
(list "REAPER/Plugins/reaper_cd.so" libs)
(list "REAPER/Plugins/reaper_csurf.so" libs)
(list "REAPER/Plugins/reaper_ddp.so" libs)
(list "REAPER/Plugins/reaper_explorer.so" libs)
(list "REAPER/Plugins/reaper_flac.so" libs)
(list "REAPER/Plugins/reaper_midi.so" libs)
(list "REAPER/Plugins/reaper_mp3dec.so" libs)
(list "REAPER/Plugins/reaper_ogg.so" libs)
(list "REAPER/Plugins/reaper_opus.so" libs)
(list "REAPER/Plugins/reaper_video.so" libs)
(list "REAPER/Plugins/reaper_wave.so" libs)
(list "REAPER/Plugins/reaper_wavpack.so" libs)
(list "REAPER/Plugins/rubberband.so" libs)
(list "REAPER/Plugins/soundtouch.so" libs)
(list "REAPER/Plugins/FX/reacast.vst.so" libs)
(list "REAPER/Plugins/FX/reacomp.vst.so" libs)
(list "REAPER/Plugins/FX/reacontrolmidi.vst.so" libs)
(list "REAPER/Plugins/FX/readelay.vst.so" libs)
(list "REAPER/Plugins/FX/reaeq.vst.so" libs)
(list "REAPER/Plugins/FX/reafir.vst.so" libs)
(list "REAPER/Plugins/FX/reagate.vst.so" libs)
(list "REAPER/Plugins/FX/reainsert.vst.so" libs)
(list "REAPER/Plugins/FX/realimit.vst.so" libs)
(list "REAPER/Plugins/FX/reaninjam.vst.so" libs)
(list "REAPER/Plugins/FX/reapitch.vst.so" libs)
(list "REAPER/Plugins/FX/reasamplomatic.vst.so" libs)
(list "REAPER/Plugins/FX/reastream.vst.so" libs)
(list "REAPER/Plugins/FX/reasurround.vst.so" libs)
(list "REAPER/Plugins/FX/reasurround2.vst.so" libs)
(list "REAPER/Plugins/FX/reasyndr.vst.so" libs)
(list "REAPER/Plugins/FX/reacast.vst.so" libs)
(list "REAPER/Plugins/FX/reasynth.vst.so" libs)
(list "REAPER/Plugins/FX/reatune.vst.so" libs)
(list "REAPER/Plugins/FX/reaverb.vst.so" libs)
(list "REAPER/Plugins/FX/reaverbate.vst.so" libs)
(list "REAPER/Plugins/FX/reavocode.vst.so" libs)
(list "REAPER/Plugins/FX/reavoice.vst.so" libs)
(list "REAPER/Plugins/FX/reaxcomp.vst.so" libs)))
#:phases
#~(modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs inputs #:allow-other-keys)
(let* ((target (string-append #$output "/opt"))
(bin (string-append #$output "/bin"))
(data (string-append #$output "/share"))
(doc (string-append data "/doc/reaper-" #$version)))
(setenv "HOME" "/tmp")
(setenv "XDG_DATA_HOME" data)
(invoke "sh" "./install-reaper.sh" "--install"
target "--integrate-user-desktop")
(delete-file (string-append target
"/REAPER/uninstall-reaper.sh"))
(delete-file (string-append target
"/REAPER/libSwell.so"))
(symlink (search-input-file inputs "/lib/libSwell.so")
(string-append target "/REAPER/libSwell.so"))
(mkdir-p bin)
(symlink (string-append target "/REAPER/reaper")
(string-append bin "/reaper"))
(mkdir-p doc)
(symlink (string-append target "/REAPER/EULA.txt")
(string-append doc "/LICENSE"))))))))
(native-inputs
(list xdg-utils))
(inputs
(list alsa-lib `(,gcc "lib") jack-1 pulseaudio wdl))
(supported-systems
(list "x86_64-linux" "i686-linux" "aarch64-linux" "armhf-linux"))
(home-page "https://www.reaper.fm")
(synopsis "Digital audio workstation")
(description
"REAPER is a digital audio production application offering multitrack
audio and MIDI recording, editing, processing, mixing and mastering toolset.
It supports a vast range of hardware, digital formats and plugins, and can be
comprehensively extended, scripted and modified.")
(license (license:nonfree "file:///opt/REAPER/EULA.txt"))))