all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Chris Marusich <cmmarusich@gmail.com>
To: Leo Famulari <leo@famulari.name>
Cc: guix-devel@gnu.org
Subject: Re: [PATCH] gnu: Add asunder.
Date: Sun, 18 Dec 2016 01:04:04 -0800	[thread overview]
Message-ID: <878trd7gmz.fsf@gmail.com> (raw)
In-Reply-To: <20161217185621.GC1726@jasmine> (Leo Famulari's message of "Sat, 17 Dec 2016 13:56:21 -0500")


[-- Attachment #1.1: Type: text/plain, Size: 3749 bytes --]

Hi everyone,

Thank you for the review!  Please find a new patch attached.

Hartmut Goebel <h.goebel@crazy-compilers.com> writes:

> Am 17.12.2016 um 10:20 schrieb Chris Marusich:
>> +    (home-page "http://www.littlesvr.ca/asunder/index.php")
>
> I'd leave of the "index.php" here. Its uselass and ugly :-)

Good point.  I've changed this, but I've left the trailing slash to
avoid an unnecessary redirect.

John Darrington <john@darrington.wattle.id.au> writes:

>      +(define-public asunder
>      +  (package
>      +    (name "asunder")
>      +    (version "2.8")
>      +    (home-page "http://www.littlesvr.ca/asunder/index.php")
>      +    (source (origin
>      +              (method url-fetch)
>
> It's unueual to have the home-page field here.  Most package
> definitions place it just
> before the synopsis.

OK - I've moved it.

Leo Famulari <leo@famulari.name> writes:

>> +    (inputs `(("gtk+-2" ,gtk+-2)
>> +              ("glib" ,glib)
>> +              ("libcddb" ,libcddb)
>> +              ("cdparanoia" ,cdparanoia)
>> +              ("lame" ,lame)
>> +              ("vorbis-tools" ,vorbis-tools)
>> +              ("flac" ,flac)
>> +              ("opus" ,opus)
>> +              ("wavpack" ,wavpack)
>> +              ("libmpcdec" ,libmpcdec)))
>
> I checked the references of the built package:
> $ guix gc --references $(./pre-inst-env guix build asunder)
> /gnu/store/1jh6z732id8w014i66abm2h2iivkwk8v-gdk-pixbuf+svg-2.34.0
> /gnu/store/46kis1wxzqfk3yysaz6ds0pc7w195a3b-gtk+-2.24.31
> /gnu/store/4glf79v1r1l4k7by4vf1lfldq7n0yafw-libcddb-1.3.2
> /gnu/store/7m55pyfv0rm19rqrrr7xx0c2irsvaq3y-pango-1.40.1
> /gnu/store/cd92wyv466fcfnavx3wcjcr8qln4ycix-atk-2.20.0
> /gnu/store/cdi08kw7r6r684w8mk0xq0dkgpjhfpmd-gcc-4.9.4-lib
> /gnu/store/hmc1jiyr29mk9cl2d9j0jwf0dim1q76g-freetype-2.6.3
> /gnu/store/iwgi9001dmmihrjg4rqhd6pa6788prjw-glibc-2.24
> /gnu/store/n56vagr3zv7ildvh9b7mzvk7h4bgwjpf-shared-mime-info-1.7
> /gnu/store/p56ai0sj3bbh8hdqc9qigdp91gj73brp-glib-2.48.2
> /gnu/store/pkv2qqgprp4zxcqfspwwx81qm9lng0da-fontconfig-2.12.1
> /gnu/store/qkw4zrwfybxww8f56nkb6hggxambk89b-bash-4.4.0
> /gnu/store/y30l675nz41p87pmvzscqhhyhik626na-cairo-1.14.6
> /gnu/store/zfm6sgn6mpv8yqfjwk23i7hnjib2rc30-asunder-2.8
>
> Several inputs are missing from this list, so they will be garbage
> collected when the user runs `guix gc`. Can you look into that?

Great catch.  This was a problem.  The reason I didn't realize it was
because I tested by installing Asunder into my existing profile, which
contains the necessary tools already, and Asunder was finding the tools
via my PATH environment variable.  I've fixed this issue by wrapping the
asunder executable with wrap-program.  I've verified (by using "guix
environment" with the --pure option) that with this latest patch,
Asunder can successfully rip an audio CD and encode to MP3, FLAC, OGG
Vorbis, OPUS, and WavPack.  I've also verified that the inputs which
previously were missing in the references are now included.

The remaining encodings supported by Asunder - Musepack, Monkey's Audio,
and AAC - don't work because (1) we haven't packaged the Musepack
encoder yet (I think), and (2) the latter two are not distributed under
a free license.

>> + ;; Asunder can also encode to AAC using neroAacEnc and to Monkey's
>> audio
>> + ;; using mac, but we do not include those libraries as they are
>> non-free.
>
> This comment isn't necessary, in my opinion.

OK.  I've removed it.

>> +    (description
>> + "Asunder is a graphical Audio CD ripper and encoder.  It can save
>> audio
>
> Does audio need to be capitalized here?

No, it doesn't.  I've decapitalized it.

-- 
Chris

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-Add-asunder.patch --]
[-- Type: text/x-patch, Size: 4042 bytes --]

From 0e4998622ac076d57b6df492727d7cebbabc290b Mon Sep 17 00:00:00 2001
From: Chris Marusich <cmmarusich@gmail.com>
Date: Sat, 17 Dec 2016 01:06:48 -0800
Subject: [PATCH] gnu: Add asunder.

* gnu/packages/cdrom.scm (asunder): New variable.
---
 gnu/packages/cdrom.scm | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 58 insertions(+)

diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index 829156a7c..20937dc8f 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -28,14 +28,19 @@
   #:use-module ((guix licenses) #:select (lgpl2.1+ gpl2 gpl2+ gpl3+))
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system glib-or-gtk)
+  #:use-module (guix gexp)
   #:use-module (gnu packages)
   #:use-module (gnu packages acl)
+  #:use-module (gnu packages audio)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages glib)
   #:use-module (gnu packages man)
+  #:use-module (gnu packages mp3)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages elf)
   #:use-module (gnu packages pkg-config)
@@ -395,3 +400,56 @@ for bootable CD-ROMs.
 Image data is written to standard output by default and all other
 information is written to standard error.")
     (license gpl2+)))
+
+(define-public asunder
+  (package
+    (name "asunder")
+    (version "2.8")
+    (source (origin
+              (method url-fetch)
+              (uri
+               (string-append "http://www.littlesvr.ca/asunder/releases/asunder-"
+                              version
+                              ".tar.bz2"))
+              (sha256
+               (base32
+                "1nq9kd4rd4k2kibf57gdbm0zw2gxa234vvvdhxkm8g5bhx5h3iyq"))))
+    (build-system glib-or-gtk-build-system)
+    (arguments
+     '(#:out-of-source? #f
+       #:phases (modify-phases %standard-phases
+                  (add-after 'install 'wrap
+                    (lambda* (#:key inputs outputs #:allow-other-keys)
+                      (let ((program (string-append (assoc-ref outputs "out")
+                                                    "/bin/asunder")))
+                        (define (bin-directory input-name)
+                          (string-append (assoc-ref inputs input-name) "/bin"))
+                        (wrap-program program
+                          `("PATH" ":" prefix
+                            ,(map bin-directory (list "cdparanoia"
+                                                      "lame"
+                                                      "vorbis-tools"
+                                                      "flac"
+                                                      "opus-tools"
+                                                      "wavpack"))))))))))
+    (native-inputs `(("intltool" ,intltool)
+                     ("pkg-config" ,pkg-config)))
+    ;; TODO: Add the necessary packages for Musepack encoding.
+    (inputs `(("gtk+-2" ,gtk+-2)
+              ("glib" ,glib)
+              ("libcddb" ,libcddb)
+              ("cdparanoia" ,cdparanoia)
+              ("lame" ,lame)
+              ("vorbis-tools" ,vorbis-tools)
+              ("flac" ,flac)
+              ("opus-tools" ,opus-tools)
+              ("wavpack" ,wavpack)))
+    (home-page "http://www.littlesvr.ca/asunder/")
+    (synopsis "Graphical audio CD ripper and encoder")
+    (description
+     "Asunder is a graphical audio CD ripper and encoder.  It can save audio
+tracks as WAV, MP3, Ogg Vorbis, FLAC, Opus, Wavpack, and Musepack.  It can use
+CDDB to name and tag each track automatically, and it allows for each track to
+be by a different artist.  Asunder can encode to multiple formats in one
+session, and it can create M3U playlists.")
+    (license gpl2)))
-- 
2.11.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

  reply	other threads:[~2016-12-18  9:04 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-17  9:20 Add Asunder Chris Marusich
2016-12-17  9:20 ` [PATCH] gnu: Add asunder Chris Marusich
2016-12-17  9:46   ` John Darrington
2016-12-17 16:14   ` Hartmut Goebel
2016-12-17 18:56   ` Leo Famulari
2016-12-18  9:04     ` Chris Marusich [this message]
2016-12-23  8:16       ` Chris Marusich
2016-12-23 16:36         ` Leo Famulari
2016-12-24  2:11           ` Chris Marusich
2016-12-24  7:07             ` John Darrington
2016-12-25  2:03               ` Chris Marusich
2016-12-25  7:48                 ` John Darrington
2016-12-25 20:03                   ` Leo Famulari

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878trd7gmz.fsf@gmail.com \
    --to=cmmarusich@gmail.com \
    --cc=guix-devel@gnu.org \
    --cc=leo@famulari.name \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.