From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marius Bakke Subject: Re: [PATCH] gnu: Add schismtracker. Date: Sat, 10 Sep 2016 08:34:32 +0100 Message-ID: <87poocqkc7.fsf@ike.i-did-not-set--mail-host-address--so-tickle-me> References: <87r38sg1h6.fsf@openmailbox.org> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58789) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bicoP-0003Ey-0r for guix-devel@gnu.org; Sat, 10 Sep 2016 03:34:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bicoK-0002VE-PM for guix-devel@gnu.org; Sat, 10 Sep 2016 03:34:51 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:43230) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bicoI-0002SU-BH for guix-devel@gnu.org; Sat, 10 Sep 2016 03:34:48 -0400 In-Reply-To: <87r38sg1h6.fsf@openmailbox.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Kei Kebreau , guix-devel@gnu.org Kei Kebreau writes: > For those who love making tracks, X11 or not! > > If someone could look over this (and build it, please!), that would be > nice. :-) Thanks for this package! See comments below. > From 91dbcb5c61de4b4b45f85b3bad8cf9e713c564b0 Mon Sep 17 00:00:00 2001 > From: Kei Kebreau > Date: Fri, 9 Sep 2016 18:16:12 -0400 > Subject: [PATCH] gnu: Add schismtracker. > > * gnu/packages/music.scm (schismtracker): New variable. > --- > gnu/packages/music.scm | 40 ++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 40 insertions(+) > > diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm > index 88743aa..7c11771 100644 > --- a/gnu/packages/music.scm > +++ b/gnu/packages/music.scm > @@ -1638,6 +1638,46 @@ for improved Amiga ProTracker 2/3 compatibility.") > ;; 'src/milkyplay' is under Modified BSD, the rest is under GPL3 or later. > (license (list license:bsd-3 license:gpl3+)))) > > +(define-public schismtracker > + (package > + (name "schismtracker") > + (version "20160521") > + (source (origin > + (method url-fetch) > + (uri (string-append > + "https://github.com/" name "/" name "/archive/" > + version ".tar.gz")) > + (file-name (string-append name "-" version ".tar.gz")) > + (sha256 > + (base32 > + "0c6r24wm3rldm4j8cskl9xnixj3rwi3lnrhckw5gv43wpy6h4jcz")))) > + (build-system gnu-build-system) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (add-after 'unpack 'autoconf > + (lambda _ (zero? (system* "autoreconf" "-vfi")))) > + (add-before 'configure 'link-libm > + (lambda _ (setenv "LIBS" "-lm")))))) I believe this should end with a #t, as the return value of setenv is unspecified. > + (native-inputs > + `(("autoconf" ,autoconf) > + ("automake" ,automake))) > + (inputs > + `(("alsa-lib" ,alsa-lib) ; for asound dependency > + ("libx11" ,libx11) > + ("libxext" ,libxext) > + ("python" ,python-2) Python is only used for building some documentation, so it can be moved to native-inputs. Is there any reason for using python-2? > + ("sdl" ,sdl))) > + (home-page "http://schismtracker.org") > + (synopsis "Impulse Tracker clone") I think this should be more generic. The tagline from github works pretty well: "Oldschool sample-based music composition tool". The rest LGTM. But! The package records build time in version.c. I managed to make it reproducible by adding a phase like this: (add-before 'build 'make-reproducible (lambda _ ;; Remove use of __DATE__ and __TIME__ for reproducibility. (substitute* "schism/version.c" (("Schism Tracker built %s %s.*$") (string-append "Schism Tracker version " ,version "\");"))) #t)) Please add that substitution somewhere. Can you send an updated patch? Thanks! Marius > + (description > + "Schism Tracker is a reimplementation of Impulse Tracker, a program used to > +create high quality music without the requirements of specialized, expensive > +equipment, and with a unique \"finger feel\" that is difficult to replicate in > +part. The player is based on a highly modified version of the ModPlug engine, > +with a number of bugfixes and changes to improve IT playback.") > + (license license:gpl2+))) > + > (define-public moc > (package > (name "moc") > -- > 2.10.0