diff options
Diffstat (limited to 'gnu/packages/cdrom.scm')
-rw-r--r-- | gnu/packages/cdrom.scm | 111 |
1 files changed, 108 insertions, 3 deletions
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index 29def9b6aa..6187f871af 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -32,7 +32,11 @@ #:use-module (gnu packages elf) #:use-module (gnu packages pkg-config) #:use-module (gnu packages readline) - #:use-module (gnu packages which)) + #:use-module (gnu packages which) + #:use-module (gnu packages perl) + #:use-module (gnu packages python) + #:use-module (gnu packages wget) + #:use-module (gnu packages xiph)) (define-public libcddb (package @@ -68,14 +72,14 @@ caching facility provided by the library.") (define-public libcdio (package (name "libcdio") - (version "0.92") + (version "0.93") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libcdio/libcdio-" version ".tar.gz")) (sha256 (base32 - "1b9zngn8nnxb1yyngi1kwi73nahp4lsx59j17q1bahzz58svydik")))) + "0xb9km1750ndr7nglgbv1smv03dy8nkcfd9djbzqn3ldzlicswj9")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses) @@ -217,3 +221,104 @@ files. Dvdisaster works at the image level so that the recovery does not depend on the file system of the medium. The maximum error correction capacity is user-selectable.") (license gpl2+))) + +(define-public cd-discid + (package + (name "cd-discid") + (version "1.4") + (home-page "http://linukz.org/cd-discid.shtml") + (source (origin + (method url-fetch) + (uri (string-append "http://linukz.org/download/cd-discid-" + version ".tar.gz")) + (sha256 + (base32 + "0qrcvn7227qaayjcd5rm7z0k5q89qfy5qkdgwr5pd7ih0va8rmpz")) + (modules '((guix build utils))) + (snippet + '(substitute* "Makefile" + (("/usr/bin/install") + "install"))))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f + #:phases (alist-delete 'configure %standard-phases) + #:make-flags (list "CC=gcc" + (string-append "PREFIX=" + (assoc-ref %outputs "out"))))) + (synopsis "Get CDDB discid information from an audio CD") + (description + "cd-discid is a command-line tool to retrieve CDDB discid information +from an audio CD.") + (license gpl2+))) + +(define-public abcde + (package + (name "abcde") + (version "2.6") + (home-page "http://abcde.einval.com/") + (source (origin + (method url-fetch) + (uri (string-append home-page "/download/abcde-" + version ".tar.gz")) + (sha256 + (base32 + "0y2cg233n2hixs0ji76dggpzgf52v4c4mnpwiai889ql2piafgk8")) + (modules '((guix build utils))) + (snippet + '(substitute* "Makefile" + (("/usr/bin/install") + "install") + (("^etcdir = .*$") + (string-append "etcdir = $(prefix)/etc\n")))))) + (build-system gnu-build-system) + (arguments + '(#:phases (alist-replace + 'configure + (lambda* (#:key outputs inputs #:allow-other-keys) + (substitute* "Makefile" + (("^prefix = .*$") + (string-append "prefix = " + (assoc-ref outputs "out") + "\n")))) + (alist-cons-after + 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((wget (assoc-ref inputs "wget")) + (vorbis (assoc-ref inputs "vorbis-tools")) + (parano (assoc-ref inputs "cdparanoia")) + (which (assoc-ref inputs "which")) + (discid (assoc-ref inputs "cd-discid")) + (out (assoc-ref outputs "out"))) + (define (wrap file) + (wrap-program file + `("PATH" ":" prefix + (,(string-append out "/bin:" + wget "/bin:" + which "/bin:" + vorbis "/bin:" + discid "/bin:" + parano "/bin"))))) + + (for-each wrap + (find-files (string-append out "/bin") + ".*")))) + %standard-phases)) + #:tests? #f)) + + (inputs `(("wget" ,wget) + ("which" ,which) + ("cdparanoia" ,cdparanoia) + ("cd-discid" ,cd-discid) + ("vorbis-tools" ,vorbis-tools) + + ;; A couple of Python and Perl scripts are included. + ("python" ,python) + ("perl" ,perl))) + + (synopsis "Command-line audio CD ripper") + (description + "abcde is a front-end command-line utility (actually, a shell script) +that grabs tracks off a CD, encodes them to Ogg/Vorbis, MP3, FLAC, Ogg/Speex +and/or MPP/MP+ (Musepack) format, and tags them, all in one go.") + (license gpl2+))) |