From b9a58b1f3976395bba64833865c501cdd5344e39 Mon Sep 17 00:00:00 2001 From: Sughosha Date: Sun, 25 Sep 2022 13:05:35 +0000 Subject: nongnu: Add reaper. * nongnu/packages/music.scm: New file. * nongnu/packages/music.scm (reaper): New variable. Co-authored-by: Jonathan Brielmaier Signed-off-by: Jonathan Brielmaier --- nongnu/packages/music.scm | 103 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 nongnu/packages/music.scm diff --git a/nongnu/packages/music.scm b/nongnu/packages/music.scm new file mode 100644 index 0000000..dffd758 --- /dev/null +++ b/nongnu/packages/music.scm @@ -0,0 +1,103 @@ +;;; SPDX-License-Identifier: GPL-3.0-or-later +;;; Copyright © 2022 Sughosha +;;; Copyright © 2023 Jonathan Brielmaier + +(define-module (nongnu packages music) + #:use-module (gnu packages audio) + #:use-module (gnu packages base) + #:use-module (gnu packages cpp) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gcc) + #:use-module (gnu packages linux) + #: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 "6.73") + (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" "1hd7fbk0px45fxhqa7nqcnij8ls2fhpjp60v840vy2zqs9fkcr52") + ("i686-linux" "11vk32mxyda9xl08pp2ivd1vsahnw6w7d08in4syz6iannfwp19b") + ("aarch64-linux" "0zpkaiwwxn8yh3s1d22qswshbgaxx5d8iy17hb3w256zgb722yjw") + ("armhf-linux" "18174b1lgsk73gxhala471ppzbrpa1cs953b5par998yqgh74znk")))))) + (build-system binary-build-system) + (arguments + (list #:strip-binaries? #f ;allocated section `.dynsym' not in segment + #:patchelf-plan #~`(("REAPER/reaper" ("libc" "gcc" "alsa-lib")) + ("REAPER/reamote-server" ("libc" "gcc")) + ("REAPER/Plugins/reaper_host_x86_64" ("libc" "gcc"))) + #: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")) + (libexec (string-append #$output "/libexec")) + (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 libexec) + (symlink (string-append target + "/REAPER/Plugins/reaper_host_x86_64") + (string-append libexec + "/reaper_host_x86_64")) + (mkdir-p doc) + (symlink (string-append target + "/REAPER/EULA.txt") + (string-append doc "/LICENSE")))))))) + (native-inputs + (list + which + xdg-utils)) + (inputs + (list + alsa-lib + `(,gcc "lib") + wdl)) + (supported-systems '("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")))) -- cgit v1.2.3