From 38d7ce474952001e13861ed3a6bcb86815fe3023 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 12 Nov 2025 12:24:43 +0000 Subject: [PATCH] gnu: Remove demlo and some of go-* dependencies. Development was stopped 7y ago, it depends on go-1.17 and fails to build. This change removes Demlo and some of it's dependencies which are not in use by others. * gnu/packages/music.scm: (demlo, go-github-com-wtolson-go-taglib, go-github-com-aarzilli-golua, go-github-com-stevedonovan-luar, go-gitlab-com-ambrevar-golua-unicode): Delete variables. Fixes: guix/guix#3444 Change-Id: I19c530f8a37b6314eb24678a179faae3e961145a --- gnu/packages/music.scm | 256 ----------------------------------------- 1 file changed, 256 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 9fb165f87a22737920d0de3c5423830a6a3d4770..de103a34fe228125b5293c06ea718dc38464f2b7 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -6293,262 +6293,6 @@ It can be used in daemon mode along with the Music-on-Console (MOC) and cmus console music players.") (license license:gpl3+))) -(define-public demlo - (let ((commit "985f81047a67c795e67f628b550064558476a7c3") - (revision "1")) - (package - (name "demlo") - (version (git-version "3.8" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url - "https://gitlab.com/ambrevar/demlo") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1wx7pwgvg1fiq55jdc22353frcdlz548g97dy4j353lqxy8vxfyj")))) - (build-system go-build-system) - (native-inputs - (list lua - go-github-com-aarzilli-golua - go-gitlab-com-ambrevar-damerau - go-gitlab-com-ambrevar-golua-unicode - go-github-com-mgutz-ansi - go-github-com-michiwend-gomusicbrainz - go-github-com-stevedonovan-luar - go-github-com-wtolson-go-taglib - go-github-com-yookoala-realpath)) - (inputs - (list bash-minimal chromaprint ffmpeg)) - (arguments - `(#:go ,go-1.17 - #:import-path "gitlab.com/ambrevar/demlo" - #:phases - (modify-phases %standard-phases - (add-after 'install 'wrap-program - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (ffmpeg (assoc-ref inputs "ffmpeg")) - (chromaprint (assoc-ref inputs "chromaprint"))) - (wrap-program (string-append out "/bin/demlo") - `("XDG_DATA_DIRS" ":" prefix (,out)) - `("PATH" ":" prefix - ,(map (lambda (dir) - (string-append dir "/bin:" - dir "/sbin")) - (list ffmpeg chromaprint))))))) - (add-after 'install 'install-scripts - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (root (string-append out "/src/gitlab.com/ambrevar/demlo")) - (xdg-data-dirs (string-append out "/demlo"))) - (copy-recursively (string-append root "/actions") - (string-append xdg-data-dirs "/actions")) - (copy-recursively (string-append root "/scripts") - (string-append xdg-data-dirs "/scripts")) - (install-file (string-append root "/config.lua") xdg-data-dirs) - ;; TODO: Test fish completion. - (install-file (string-append root "/completion/demlo.fish") - (string-append - out "/share/fish/vendor_completions.d")))))))) - (home-page "https://gitlab.com/ambrevar/demlo") - (synopsis "Dynamic and extensible music library organizer") - (description "Demlo is a music library organizer. It can encode, fix -case, change folder hierarchy according to tags or file properties, tag from -an online database, copy covers while ignoring duplicates or those below a -quality threshold, and much more. It makes it possible to manage your -libraries uniformly and dynamically. You can write your own rules to fit your -needs best. - -Demlo can address any of these recurring music library issues (and much more): - -@itemize -@item Fix the lack of folder structure. -@item Normalize tags, fix their case, chose which tags to keep and which to -discard. -@item Handle lossy and lossless audio differently. -@item Handle mp3 id3tags hell... -@item Handle multiple covers, whether embedded and/or external, resize covers, -discard bad quality ones. -@end itemize\n") - (license license:expat)))) - -;; demlo is only one user of this package, keep it next to it to prevent -;; importing taglib module into golang-xyz. -(define-public go-github-com-wtolson-go-taglib - (let ((commit "6e68349ff94ecea412de7e748cb5eaa26f472777") - (revision "0")) - (package - (name "go-github-com-wtolson-go-taglib") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url - "https://github.com/wtolson/go-taglib") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1cpjqnrviwflz150g78iir5ndrp3hh7a93zbp4dwbg6sb2q141p2")))) - (build-system go-build-system) - ;; From go-1.10 onward, "pkg" compiled libraries are not re-used, so - ;; when this package required as input for another one, it will have to - ;; be built again. Thus its CGO requirements must be made available in - ;; the environment, that is, they must be propagated. - (propagated-inputs - (list pkg-config taglib)) - (arguments - `(#:import-path "github.com/wtolson/go-taglib" - ;; Tests don't pass "vet" on Go since 1.11. See - ;; https://github.com/wtolson/go-taglib/issues/12. - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key import-path #:allow-other-keys) - (invoke "go" "test" - "-vet=off" - import-path)))))) - (home-page "https://github.com/wtolson/go-taglib") - (synopsis "Go wrapper for taglib") - (description "Go wrapper for taglib") - (license license:unlicense)))) - -;; demlo is only one user of this package, keep it next to it to prevent -;; importing lua module into golang-xyz. -(define-public go-github-com-aarzilli-golua - (let ((commit "03fc4642d792b1f2bc5e7343b403cf490f8c501d") - (revision "0")) - (package - (name "go-github-com-aarzilli-golua") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url - "https://github.com/aarzilli/golua") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1d9hr29i36cza98afj3g6rs3l7xbkprwzz0blcxsr9dd7nak20di")))) - (build-system go-build-system) - ;; From go-1.10 onward, "pkg" compiled libraries are not re-used, so - ;; when this package required as input for another one, it will have to - ;; be built again. Thus its CGO requirements must be made available in - ;; the environment, that is, they must be propagated. - (propagated-inputs - (list lua)) - (arguments - `(#:unpack-path "github.com/aarzilli/golua" - #:import-path "github.com/aarzilli/golua/lua" - #:phases - (modify-phases %standard-phases - ;; While it's possible to fix the CGO_LDFLAGS with the "-tags" - ;; command line argument, go-1.10+ does not re-use the produced pkg - ;; for dependencies, which means we would need to propagate the - ;; same "-tags" argument to all golua referrers. A substitution is - ;; more convenient here. We also need to propagate the lua - ;; dependency to make it available to referrers. - (add-after 'unpack 'fix-lua-ldflags - (lambda _ - (substitute* "src/github.com/aarzilli/golua/lua/lua.go" - (("#cgo linux,!llua,!luaa LDFLAGS: -llua5.3") - "#cgo linux,!llua,!luaa LDFLAGS: -llua"))))))) - (home-page "https://github.com/aarzilli/golua") - (synopsis "Go Bindings for the Lua C API") - (description "This package provides @code{lua}, a Go module that can -run a Lua virtual machine.") - (license license:expat)))) - -;; demlo is only one user of this package, keep it next to it to prevent -;; importing lua module into golang-xyz. -(define-public go-github-com-stevedonovan-luar - (let ((commit "22d247e5366095f491cd83edf779ee99a78f5ead") - (revision "0")) - (package - (name "go-github-com-stevedonovan-luar") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url - "https://github.com/stevedonovan/luar") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1acjgw9cz1l0l9mzkyk7irz6cfk31wnxgbwa805fvm1rqcjzin2c")))) - (build-system go-build-system) - (native-inputs - (list go-github-com-aarzilli-golua)) - (arguments - `(#:tests? #f ; Upstream tests are broken. - #:import-path "github.com/stevedonovan/luar")) - (home-page "https://github.com/stevedonovan/luar") - (synopsis "Lua reflection bindings for Go") - (description "Luar is designed to make using Lua from Go more -convenient. Go structs, slices and maps can be automatically converted to Lua -tables and vice-versa. The resulting conversion can either be a copy or a -proxy. In the latter case, any change made to the result will reflect on the -source. - -Any Go function can be made available to Lua scripts, without having to write -C-style wrappers. - -Luar support cyclic structures (lists, etc.). - -User-defined types can be made available to Lua as well: their exported -methods can be called and usual operations such as indexing or arithmetic can -be performed.") - (license license:expat)))) - -;; demlo is only one user of this package, keep it next to it to prevent -;; importing lua module into golang-xyz. -(define-public go-gitlab-com-ambrevar-golua-unicode - (let ((commit "97ce517e7a1fe2407a90c317a9c74b173d396144") - (revision "0")) - (package - (name "go-gitlab-com-ambrevar-golua-unicode") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url - "https://gitlab.com/ambrevar/golua") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1izcp7p8nagjwqd13shb0020w7xhppib1a3glw2d1468bflhksnm")))) - (build-system go-build-system) - (native-inputs - (list lua go-github-com-aarzilli-golua)) - (arguments - `(#:unpack-path "gitlab.com/ambrevar/golua" - #:import-path "gitlab.com/ambrevar/golua/unicode" - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key import-path #:allow-other-keys) - (setenv "USER" "homeless-dude") - (invoke "go" "test" import-path)))))) - (home-page "https://gitlab.com/ambrevar/golua") - (synopsis "Add Unicode support to Golua") - (description "This extension to Arzilli's Golua adds Unicode support to -all functions from the Lua string library. Lua patterns are replaced by Go -regexps. This breaks compatibility with Lua, but Unicode support breaks it -anyways and Go regexps are more powerful.") - (license license:expat)))) - - (define-public fmit (package (name "fmit")