From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:60687) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i6ZAM-0004De-FZ for guix-patches@gnu.org; Sat, 07 Sep 2019 07:46:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i6ZAK-00077q-Sy for guix-patches@gnu.org; Sat, 07 Sep 2019 07:46:06 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:56995) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1i6ZAH-00076s-O9 for guix-patches@gnu.org; Sat, 07 Sep 2019 07:46:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1i6ZAH-0006nY-Lb for guix-patches@gnu.org; Sat, 07 Sep 2019 07:46:01 -0400 Subject: [bug#37329] [PATCH] gnu: Add audacious. Resent-Message-ID: Received: from eggs.gnu.org ([2001:470:142:3::10]:60651) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i6ZA7-0004DT-AJ for guix-patches@gnu.org; Sat, 07 Sep 2019 07:45:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i6ZA4-00073q-BL for guix-patches@gnu.org; Sat, 07 Sep 2019 07:45:49 -0400 Received: from tobias.gr ([2001:470:7405::1]:53336) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1i6ZA4-00071F-0l for guix-patches@gnu.org; Sat, 07 Sep 2019 07:45:48 -0400 References: <20190907045755.6578-1-kkebreau@posteo.net> In-reply-to: <20190907045755.6578-1-kkebreau@posteo.net> Date: Sat, 07 Sep 2019 13:45:40 +0200 Message-ID: <87ef0swcrf.fsf@nckx> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" Reply-to: Tobias Geerinckx-Rice via Guix-patches From: Tobias Geerinckx-Rice via Guix-patches via To: 37329@debbugs.gnu.org Cc: kkebreau@posteo.net --=-=-= Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Kei, Kei Kebreau =E5=86=99=E9=81=93=EF=BC=9A > * gnu/packages/music.scm (audacious): New variable. > --- > gnu/packages/music.scm | 102=20 > +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 102 insertions(+) > > diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm > index a43bccf4f8..33c53dec35 100644 > --- a/gnu/packages/music.scm > +++ b/gnu/packages/music.scm > @@ -203,6 +203,108 @@ and play MIDI files with a few clicks in a=20 > user-friendly interface offering > score, keyboard, guitar, drum and controller views.") > (license license:gpl3+))) >=20=20 > +(define-public audacious > + (package > + (name "audacious") > + (version "3.10.1") > + (source (origin > + (method url-fetch) > + (uri (string-append=20 > "https://distfiles.audacious-media-player.org/" > + "audacious-" version=20 > ".tar.bz2")) > + (sha256 > + (base32 > +=20 > "14vbkhld5hwh96j8p8hjq9ybvc2m060a1y8crz14i51wpd0fhrl3")))) > + (build-system gnu-build-system) > + (arguments > + `(#:configure-flags > + (list "--disable-gtk" "--enable-qt" > + ;; Add the output lib directory to the RUNPATH. > + (string-append "LDFLAGS=3D-Wl,-rpath=3D" %output=20 > "/lib")) This comment just repeats the code, so it's not needed. > + #:tests? #f ; no check target Could you run C-M-q (or etc/indent-code.el) on the whole=20 definition? That will allow later editors to do the same without=20 changing unrelated lines. > + #:phases > + (modify-phases %standard-phases > + (add-after 'install 'unpack-plugins > + (lambda* (#:key inputs #:allow-other-keys) > + (let ((plugins (assoc-ref inputs=20 > "audacious-plugins"))) > + (invoke "tar" "xvf" plugins) > + (chdir (string-append "audacious-plugins-"=20 > ,version)) It's not wrong, and I know this saves (with-directory-excursion)s=20 down the road, but brr. :-) > + #t))) > + (add-after 'unpack-plugins 'configure-plugins > + (lambda* (#:key configure-flags outputs=20 > #:allow-other-keys) > + (let ((out (assoc-ref outputs "out"))) > + (substitute* "configure" > + (("/bin/sh") (which "sh"))) > + (apply invoke "./configure" > + (append configure-flags > + ;; audacious-plugins requires=20 > audacious to build. > + (list (string-append=20 > "PKG_CONFIG_PATH=3D" > + out=20 > "/lib/pkgconfig:" > + (getenv=20 > "PKG_CONFIG_PATH")) > + (string-append "--prefix=3D"=20 > out))))))) > + (add-after 'configure-plugins 'build-plugins > + (lambda _ > + (invoke "make" "-j" (number->string=20 > (parallel-job-count))))) > + (add-after 'build-plugins 'install-plugins > + (lambda _ > + (invoke "make" "install")))))) > + (native-inputs > + `(("audacious-plugins" > + ,(origin > + (method url-fetch) > + (uri (string-append=20 > "https://distfiles.audacious-media-playerorg/" ^^^^^^= ^^^ Typo! > + "audacious-plugins-" version=20 > ".tar.bz2")) > + (sha256 > + (base32 > +=20 > "0hi61825ayrwc4snwr76f2669k06fii3n8ll1szjk5zr65v1ghzf")))) I don't mind bundling these like this (Audacious's a leaf package=20 and =E2=80=94 subjectively =E2=80=94 media things are allowed/expected to b= e a bit=20 bloaty), but it may prove controversial :-) Would it not be worth supporting a plug-in search path? Are=20 there, for example, well-supported Audacious plug-ins that aren't=20 part of this collection? $ guix size audacious-with-plugins # although I'd prefer 2=20 packages =E2=80=A6 total: 1649.2 MiB $ guix size audacious # no plugins or plugin inputs =E2=80=A6 total: 1333.9 MiB Have you considered a separate =E2=80=98audacious-plugins=E2=80=99 package = that=20 could use that mechanism? Why [not]? > + ("gettext" ,gettext-minimal) > + ("glib:bin" ,glib "bin") ; for gdbus-codegen > + ("pkg-config" ,pkg-config))) > + (inputs > + `(("dbus" ,dbus) > + ("glib" ,glib) > + ("qtbase" ,qtbase) > + ;; Plugin dependencies > + ("alsa-lib" ,alsa-lib) > + ("curl" ,curl) > + ("ffmpeg" ,ffmpeg) > + ("flac" ,flac) > + ("fluidsynth" ,fluidsynth) > + ("gdk-pixbuf" ,gdk-pixbuf) > + ("libbs2b" ,libbs2b) > + ("libcddb" ,libcddb) > + ("libcdio-paranoia" ,libcdio-paranoia) > + ("libcue" ,libcue) > + ("libmodplug" ,libmodplug) > + ("libnotify" ,libnotify) > + ("libogg" ,libogg) > + ("libsamplerate" ,libsamplerate) > + ("libsndfile" ,libsndfile) > + ("libvorbis" ,libvorbis) > + ("libxml2" ,libxml2) > + ("lirc" ,lirc) > + ("jack" ,jack-1) > + ("mpg123" ,mpg123) > + ("neon" ,neon) > + ("pulseaudio" ,pulseaudio) > + ("qtmultimedia" ,qtmultimedia) > + ("soxr" ,soxr) > + ("wavpack" ,wavpack))) > + (home-page "https://audacious-media-player.org") > + (synopsis "Audio player based on XMMS") Hmm. To me, =E2=80=98Foo copied a lot of files from bar once=E2=80=99 is n= ever=20 a useful answer to =E2=80=98What is foo?=E2=80=99. All =E2=80=98XMMS=E2=80=99 means to me is =E2=80=98that ugly audio player I= installed=20 and then immediately removed in the nineties=E2=80=99. Now, that may be=20 all I need to know about Audacious, I don't know :o) I hope it's not. Is there something in particular that=20 distinguishes Audacious from most other players that we could=20 mention instead? > + (description > + "Audacious is an audio player descended from XMMS. Drag=20 > and drop folders > +and individual song files, search for artists and albums in=20 > your entire music > +library, or create and edit your own custom playlists. Listen=20 > to CD=E2=80=99s or stream > +music from the Internet. Tweak the sound with the graphical=20 > equalizer or > +experiment with LADSPA effects. Enjoy the modern GTK-themed=20 > interface or change > +things up with Winamp Classic skins. Use the plugins included=20 > with Audacious to > +fetch lyrics for your music, to set an alarm in the morning,=20 > and more.") > + ;; According to COPYING, Audacious and its plugins are=20 > licensed under the > + ;; BSD 2-clause license and libguess is licensed under the=20 > BSD 3-clause > + ;; license. > + (license (list license:bsd-2 > + license:bsd-3)))) From=20COPYING: =E2=80=9CPlease note that many of the plugins distributed with=20 Audacious are under different licenses.=E2=80=9D And indeed, I see quite a bit of GPL and some ISC code in there. Thanks! T G-R --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQT12iAyS4c9C3o4dnINsP+IT1VteQUCXXOYZAAKCRANsP+IT1Vt eRc1AQDAzQJpRojV1SWKz5Iy9MNyCUxUcmELO0v0eMfumcgtuAD/S8FU56+WGj8z j5kf2gxIVwDfiOuYkC7YT49/KtD+TQ0= =Znuo -----END PGP SIGNATURE----- --=-=-=--