diff options
| author | Sughosha <sughosha@disroot.org> | 2025-08-21 11:51:50 +0530 |
|---|---|---|
| committer | Hilton Chain <hako@ultrarare.space> | 2026-07-24 23:16:39 +0800 |
| commit | ca4e61825c1ef9ac9870c7c0148edd1461a77912 (patch) | |
| tree | 406b65b59c94e9a25b6eed7ad1fddf544bfdc400 | |
| parent | 9d48d417a605a86b0e134f4ef3850c4183e58e44 (diff) | |
nongnu: reaper: Update to 7.77.
* nongnu/packages/music.scm (reaper): Update to 7.77.
[arguments]<#:patchelf-plan>: Rewrite.
<#:phases>: Realign; in 'install phase, do not delete and symlink
"libSwell.so"; do not symlink "reaper", "reaper_host_x86_64" and "EULA.txt";
Add 'replace-swell, 'wrap-program and 'fix-desktop-entry phases; replace
'install-license-files.
[native-inputs]: Remove which.
[inputs]: Realign; add ffmpeg, jack-1, lame, mesa, pulseaudio, python and vlc.
[supported-systems]: Realign.
Signed-off-by: Hilton Chain <hako@ultrarare.space>
| -rw-r--r-- | nongnu/packages/music.scm | 145 |
1 files changed, 93 insertions, 52 deletions
diff --git a/nongnu/packages/music.scm b/nongnu/packages/music.scm index d829736..567beb2 100644 --- a/nongnu/packages/music.scm +++ b/nongnu/packages/music.scm | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | ;;; SPDX-License-Identifier: GPL-3.0-or-later | 1 | ;;; SPDX-License-Identifier: GPL-3.0-or-later |
| 2 | ;;; Copyright © 2022 Sughosha <sughosha@proton.me> | 2 | ;;; Copyright © 2022, 2025, 2026 Sughosha <sughosha@proton.me> |
| 3 | ;;; Copyright © 2023 Jonathan Brielmaier <jonathan.brielmaier@web.de> | 3 | ;;; Copyright © 2023 Jonathan Brielmaier <jonathan.brielmaier@web.de> |
| 4 | 4 | ||
| 5 | (define-module (nongnu packages music) | 5 | (define-module (nongnu packages music) |
| @@ -7,8 +7,13 @@ | |||
| 7 | #:use-module (gnu packages base) | 7 | #:use-module (gnu packages base) |
| 8 | #:use-module (gnu packages cpp) | 8 | #:use-module (gnu packages cpp) |
| 9 | #:use-module (gnu packages freedesktop) | 9 | #:use-module (gnu packages freedesktop) |
| 10 | #:use-module (gnu packages gl) | ||
| 10 | #:use-module (gnu packages gcc) | 11 | #:use-module (gnu packages gcc) |
| 11 | #:use-module (gnu packages linux) | 12 | #:use-module (gnu packages linux) |
| 13 | #:use-module (gnu packages mp3) | ||
| 14 | #:use-module (gnu packages pulseaudio) | ||
| 15 | #:use-module (gnu packages python) | ||
| 16 | #:use-module (gnu packages video) | ||
| 12 | #:use-module (guix download) | 17 | #:use-module (guix download) |
| 13 | #:use-module (guix gexp) | 18 | #:use-module (guix gexp) |
| 14 | #:use-module (guix packages) | 19 | #:use-module (guix packages) |
| @@ -21,7 +26,7 @@ | |||
| 21 | (define-public reaper | 26 | (define-public reaper |
| 22 | (package | 27 | (package |
| 23 | (name "reaper") | 28 | (name "reaper") |
| 24 | (version "6.73") | 29 | (version "7.77") |
| 25 | (source | 30 | (source |
| 26 | (origin | 31 | (origin |
| 27 | (method url-fetch) | 32 | (method url-fetch) |
| @@ -41,62 +46,98 @@ | |||
| 41 | (sha256 | 46 | (sha256 |
| 42 | (base32 | 47 | (base32 |
| 43 | (match (%current-system) | 48 | (match (%current-system) |
| 44 | ("x86_64-linux" "1hd7fbk0px45fxhqa7nqcnij8ls2fhpjp60v840vy2zqs9fkcr52") | 49 | ("x86_64-linux" |
| 45 | ("i686-linux" "11vk32mxyda9xl08pp2ivd1vsahnw6w7d08in4syz6iannfwp19b") | 50 | "1w8dsrdca72c2cznww869f1j206d6743hjf3afp4p02lgr1rckf9") |
| 46 | ("aarch64-linux" "0zpkaiwwxn8yh3s1d22qswshbgaxx5d8iy17hb3w256zgb722yjw") | 51 | ("i686-linux" |
| 47 | ("armhf-linux" "18174b1lgsk73gxhala471ppzbrpa1cs953b5par998yqgh74znk") | 52 | "0iz27k59plcz1rfgs2fdyyrd7l5g2hsk8m001vnnkysxgrmy6xz1") |
| 48 | ;; We need a valid base32 default case | 53 | ("aarch64-linux" |
| 54 | "1kfn9ybk8sfhrg4r9nqy06sawqx45gjc4f0b3arzbrpvl6qwywgz") | ||
| 55 | ("armhf-linux" | ||
| 56 | "0wzciamkz2nqqsi7xrckfdwjczhf0faidn4fyqv6s2k6hqnyb80d") | ||
| 49 | (_ "0000000000000000000000000000000000000000000000000000")))))) | 57 | (_ "0000000000000000000000000000000000000000000000000000")))))) |
| 50 | (build-system binary-build-system) | 58 | (build-system binary-build-system) |
| 51 | (arguments | 59 | (arguments |
| 52 | (list #:strip-binaries? #f ;allocated section `.dynsym' not in segment | 60 | (list #:strip-binaries? #f ;allocated section `.dynsym' not in segment |
| 53 | #:patchelf-plan #~`(("REAPER/reaper" ("libc" "gcc" "alsa-lib")) | 61 | #:modules |
| 54 | ("REAPER/reamote-server" ("libc" "gcc")) | 62 | '((nonguix build binary-build-system) |
| 55 | ("REAPER/Plugins/reaper_host_x86_64" ("libc" "gcc"))) | 63 | (guix build utils) |
| 56 | #:phases #~(modify-phases %standard-phases | 64 | (nonguix build utils) |
| 57 | (replace 'install | 65 | (ice-9 match)) |
| 58 | (lambda* (#:key outputs inputs #:allow-other-keys) | 66 | #:patchelf-plan |
| 59 | (let* ((target (string-append #$output "/opt")) | 67 | #~(map (lambda (file) |
| 60 | (bin (string-append #$output "/bin")) | 68 | `(,file |
| 61 | (libexec (string-append #$output "/libexec")) | 69 | ,(append '("libc" "gcc") |
| 62 | (data (string-append #$output "/share")) | 70 | (match (basename file) |
| 63 | (doc (string-append data "/doc/reaper-" | 71 | ("reaper" '("alsa-lib" "jack" "pulseaudio")) |
| 64 | #$version))) | 72 | ((or "reaper_host_x86_64" |
| 65 | (setenv "HOME" "/tmp") | 73 | "reaper_host_i686" |
| 66 | (setenv "XDG_DATA_HOME" data) | 74 | "reaper_host_aarch64" |
| 67 | (invoke "sh" "./install-reaper.sh" "--install" | 75 | "reaper_host_armv7l") |
| 68 | target "--integrate-user-desktop") | 76 | '("alsa-lib")) |
| 69 | (delete-file (string-append target | 77 | ("reaper_video.so" '("mesa" "vlc")) |
| 70 | "/REAPER/uninstall-reaper.sh")) | 78 | ("reaper_mp3dec.so" '("lame")) |
| 71 | (delete-file (string-append target | 79 | (_ '()))))) |
| 72 | "/REAPER/libSwell.so")) | 80 | `("REAPER/reaper" |
| 73 | (symlink (search-input-file inputs | 81 | ,#$(string-append "REAPER/Plugins/reaper_host_" |
| 74 | "/lib/libSwell.so") | 82 | (match (%current-system) |
| 75 | (string-append target | 83 | ("x86_64-linux" "x86_64") |
| 76 | "/REAPER/libSwell.so")) | 84 | ("i686-linux" "i686") |
| 77 | (mkdir-p bin) | 85 | ("aarch64-linux" "aarch64") |
| 78 | (symlink (string-append target "/REAPER/reaper") | 86 | ("armf-linux" "armv7l") |
| 79 | (string-append bin "/reaper")) | 87 | (_ "unsupported"))) |
| 80 | (mkdir-p libexec) | 88 | ,@(find-files "REAPER/Plugins" "\\.so$"))) |
| 81 | (symlink (string-append target | 89 | #:phases |
| 82 | "/REAPER/Plugins/reaper_host_x86_64") | 90 | #~(modify-phases %standard-phases |
| 83 | (string-append libexec | 91 | (replace 'install |
| 84 | "/reaper_host_x86_64")) | 92 | (lambda _ |
| 85 | (mkdir-p doc) | 93 | (setenv "HOME" "/tmp") |
| 86 | (symlink (string-append target | 94 | (setenv "XDG_DATA_HOME" (string-append #$output "/share")) |
| 87 | "/REAPER/EULA.txt") | 95 | (invoke "sh" "./install-reaper.sh" "--install" |
| 88 | (string-append doc "/LICENSE")))))))) | 96 | (string-append #$output "/opt") |
| 97 | "--integrate-user-desktop") | ||
| 98 | (delete-file (string-append #$output "/opt/REAPER/" | ||
| 99 | "uninstall-reaper.sh")))) | ||
| 100 | (add-after 'install 'replace-swell | ||
| 101 | (lambda* (#:key inputs #:allow-other-keys) | ||
| 102 | (with-directory-excursion (string-append #$output | ||
| 103 | "/opt/REAPER") | ||
| 104 | (delete-file "libSwell.so") | ||
| 105 | (symlink (search-input-file inputs "/lib/libSwell.so") | ||
| 106 | "libSwell.so")))) | ||
| 107 | (add-after 'replace-swell 'wrap-program | ||
| 108 | (lambda _ | ||
| 109 | (let ((wrapper (string-append #$output "/bin/reaper")) | ||
| 110 | (bin (string-append #$output "/opt/REAPER/reaper"))) | ||
| 111 | (make-wrapper wrapper bin | ||
| 112 | `("PATH" ":" prefix | ||
| 113 | (,(string-append #$(this-package-input "ffmpeg") | ||
| 114 | "/bin"))))))) | ||
| 115 | (add-after 'wrap-program 'fix-desktop-entry | ||
| 116 | (lambda _ | ||
| 117 | (substitute* (string-append #$output | ||
| 118 | "/share/applications/" | ||
| 119 | "cockos-reaper.desktop") | ||
| 120 | (("opt/REAPER") "bin")))) | ||
| 121 | (replace 'install-license-files | ||
| 122 | (lambda _ | ||
| 123 | (install-file "REAPER/EULA.txt" | ||
| 124 | (string-append #$output "/share/doc/reaper-" | ||
| 125 | #$version))))))) | ||
| 89 | (native-inputs | 126 | (native-inputs |
| 90 | (list | 127 | (list xdg-utils)) |
| 91 | which | ||
| 92 | xdg-utils)) | ||
| 93 | (inputs | 128 | (inputs |
| 94 | (list | 129 | (list alsa-lib |
| 95 | alsa-lib | 130 | `(,gcc "lib") |
| 96 | `(,gcc "lib") | 131 | ffmpeg |
| 97 | swell)) | 132 | jack-1 |
| 98 | (supported-systems '("x86_64-linux" "i686-linux" "aarch64-linux" | 133 | lame |
| 99 | "armhf-linux")) | 134 | mesa |
| 135 | pulseaudio | ||
| 136 | python | ||
| 137 | swell | ||
| 138 | vlc)) | ||
| 139 | (supported-systems | ||
| 140 | '("x86_64-linux" "i686-linux" "aarch64-linux" "armhf-linux")) | ||
| 100 | (home-page "https://www.reaper.fm") | 141 | (home-page "https://www.reaper.fm") |
| 101 | (synopsis "Digital audio workstation") | 142 | (synopsis "Digital audio workstation") |
| 102 | (description | 143 | (description |
