guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Add MilkyTracker to Guix


From: Alex Kost
Subject: Re: [PATCH] Add MilkyTracker to Guix
Date: Tue, 29 Mar 2016 12:52:49 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Kei Yamashita (2016-03-28 22:31 +0300) wrote:
[...]
>> Oh geez, that one doesn't build. Please use this patch instead.
>
> Oh, the embarassment. I promise that this one builds.

Thanks, but I don't see any difference between 3 patches you sent.  Did
you attach the right patch?

> From 46b97b409000b6caa27f3ad27df7a44ca9e9510c Mon Sep 17 00:00:00 2001
> From: Kei Yamashita <address@hidden>
> Date: Mon, 28 Mar 2016 13:36:26 -0400
> Subject: [PATCH] Define MilkyTracker in music.scm

The commit message should be:

gnu: Add MilkyTracker.

* gnu/packages/music.scm (milkytracker): New variable.

> ---
>  gnu/packages/music.scm | 42 ++++++++++++++++++++++++++++++++++--------
>  1 file changed, 34 insertions(+), 8 deletions(-)
>
> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
> index adda16a..23964d5 100644
> --- a/gnu/packages/music.scm
> +++ b/gnu/packages/music.scm
> @@ -78,6 +78,7 @@
>    #:use-module (gnu packages rdf)
>    #:use-module (gnu packages readline)
>    #:use-module (gnu packages rsync)
> +  #:use-module (gnu packages sdl)
>    #:use-module (gnu packages tcl)
>    #:use-module (gnu packages texinfo)
>    #:use-module (gnu packages texlive)
> @@ -1071,14 +1072,14 @@ computer's keyboard.")
>  (define-public qtractor
>    (package
>      (name "qtractor")
> -    (version "0.7.5")
> +    (version "0.7.3")
>      (source (origin
>                (method url-fetch)
>                (uri (string-append 
> "http://downloads.sourceforge.net/qtractor/";
>                                    "qtractor-" version ".tar.gz"))
>                (sha256
>                 (base32
> -                "0drqzp1rbqmqiwdzc9n3307y8rm882fha3awy5qlvir5ma2mwl80"))))
> +                "1vy4297myyqk0k58nzybgvgklckhngpdcnmp98k0rq98dirclbl7"))))
>      (build-system gnu-build-system)
>      (arguments `(#:tests? #f)) ; no "check" target
>      (inputs
> @@ -1201,8 +1202,9 @@ MusicBrainz database.")
>      (build-system python-build-system)
>      (home-page "https://github.com/echonest/pyechonest";)
>      (synopsis "Python interface to The Echo Nest APIs")
> -    (description "Pyechonest is a Python library for the Echo Nest API.  With
> -Pyechonest you have Python access to the entire set of API methods including:
> +    (description "Pyechonest is an open source Python library for the Echo 
> Nest
> +API.  With Pyechonest you have Python access to the entire set of API methods
> +including:
>  
>  @enumerate
>  @item artist - search for artists by name, description, or attribute, and get
> @@ -1274,16 +1276,13 @@ websites such as Libre.fm.")
>         #:phases
>         (modify-phases %standard-phases
>           (add-after 'unpack 'set-HOME
> -           (lambda _ (setenv "HOME" (string-append (getcwd) "/tmp"))))
> -         (replace 'check
> -           (lambda _ (zero? (system* "nosetests" "-v")))))))
> +           (lambda _ (setenv "HOME" (string-append (getcwd) "/tmp")))))))
>      (native-inputs
>       `(("python2-beautifulsoup4" ,python2-beautifulsoup4)
>         ("python2-flask" ,python2-flask)
>         ("python2-setuptools" ,python2-setuptools)
>         ("python2-mock" ,python2-mock)
>         ("python2-mpd2" ,python2-mpd2)
> -       ("python2-nose" ,python2-nose)
>         ("python2-pathlib" ,python2-pathlib)
>         ("python2-pyxdg" ,python2-pyxdg)
>         ("python2-pyechonest" ,python2-pyechonest)

The above 3 hunks should not be a part of this patch.  Somehow you
gathered the changes from commits e0b90db, d3e3468 and 36c2c8c in this
patch.  Could you remove them?

> @@ -1306,3 +1305,30 @@ once and for all.  It catalogs your collection, 
> automatically improving its
>  metadata as it goes using the MusicBrainz database.  Then it provides a 
> variety
>  of tools for manipulating and accessing your music.")
>      (license license:expat)))
> +
> +(define-public milkytracker
> +  (package
> +    (name "milkytracker")
> +    (version "0.90.86")
> +    (source (origin
> +           (method url-fetch)
> +           (uri
> +            (string-append "http://milkytracker.org/files/milkytracker-";
> +                               name "-" version ".tar.gz"))
                              ^^^^
'name' should be aligned at " in the previous line.  But actually there
either shouldn't be 'name' there or ".../milkytracker-" in the previous
line.  Also (I think) we prefer bz2 over gz if it is available.

Please use spaces instead of tabulations in the above lines.  This is
reported by "guix lint milkytracker".

Overall the 'source' field should look like this:

    (source (origin
              (method url-fetch)
              (uri (string-append "http://milkytracker.org/files/";
                                  name "-" version ".tar.bz2"))
              (sha256
               (base32
                "1v9vp8vi24lkagfpr92c128whvakwgrm9pq2zf6ijpl5sh7014zb"))))

> +              (sha256
> +               (base32
> +                "0mqjkhvjyp5hnzm1ln3b2qjclviayxylcyml96pjdxgbaqcqa2zz"))))
> +    (build-system gnu-build-system)
> +    (inputs
> +     `(("alsa-lib", alsa-lib)
                     ^^
Unquoting character (",") should be placed before a symbol without
spaces: ",alsa-lib".

> +       ("jack", jack-1)
and here         ^^

> +       ("sdl" ,sdl)
> +       ("zlib" ,zlib)))
> +    (synopsis "Multi-platform, second generation music tracker")

What does "second generation" mean?  "Multi-platform" probably also
doesn't matter here.  What about:

  "Music tracker for creating module files"

Note: I'm not good at synopsis/description writing, so I hope someone
else look at it as well :-)

> +    (description "MilkyTracker is a free software, multi-platform music

I think there is no need in "free software" here as all software in Guix
is free.

> +application for creating .MOD and .XM module files. It attempts to recreate
                                                      ^^
We use double spaces between sentences.  This is also reported by "guix
lint milkytracker".

> +the module replay and user experience of the popular DOS program Fasttracker
> +II, with special playback modes available for improved Amiga ProTracker 2/3
> +compatibility.")
> +    (home-page "http://milkytracker.org/";)
> +    (license license:gpl3)))


After all, the build failed for me:

...
g++  -g -O2   -o milkytracker AnimatedFXControl.o ColorExportImport.o 
ColorPaletteContainer.o DialogChannelSelector.o DialogEQ.o 
DialogGroupSelection.o DialogHandlers.o DialogListBox.o DialogPanning.o 
DialogQuickChooseInstrument.o DialogResample.o DialogWithValues.o DialogZap.o 
EQConstants.o EditorBase.o EnvelopeContainer.o EnvelopeEditor.o 
EnvelopeEditorControl.o Equalizer.o FileExtProvider.o FileIdentificator.o 
GlobalColorConfig.o InputControlListener.o LogoBig.o LogoSmall.o ModuleEditor.o 
ModuleServices.o PatternEditor.o PatternEditorClipBoard.o 
PatternEditorControl.o PatternEditorControlEventListener.o 
PatternEditorControlKeyboard.o PatternEditorControlTransposeHandler.o 
PatternEditorTools.o PatternTools.o PeakLevelControl.o Piano.o PianoControl.o 
PlayerController.o PlayerLogic.o PlayerMaster.o RecPosProvider.o 
RecorderLogic.o ResamplerHelper.o SampleEditor.o SampleEditorControl.o 
SampleEditorControlToolHandler.o SampleEditorResampler.o SamplePlayer.o 
ScopesControl.o SectionAbout.o SectionAbstract.o SectionAdvancedEdit.o 
SectionDiskMenu.o SectionHDRecorder.o SectionInstruments.o SectionOptimize.o 
SectionQuickOptions.o SectionSamples.o SectionSettings.o SectionSwitcher.o 
SectionTranspose.o SectionUpperLeft.o SongLengthEstimator.o SystemMessage.o 
TabHeaderControl.o TabManager.o TabTitleProvider.o TitlePageManager.o 
ToolInvokeHelper.o Tracker.o TrackerConfig.o TrackerInit.o TrackerKeyboard.o 
TrackerSettings.o TrackerSettingsDatabase.o TrackerShortCuts.o 
TrackerShutDown.o TrackerStartUp.o TrackerUpdate.o Undo.o VRand.o Zapper.o 
sdl/SDL_KeyTranslation.o sdl/SDL_Main.o ../../src/milkyplay/libmilkyplay.a 
../../src/ppui/osinterface/libosinterface.a ../../src/ppui/libppui.a 
../../src/ppui/osinterface/libosinterface.a ../../src/fx/libfx.a 
../../src/compression/Decompressor.o ../../src/compression/DecompressorGZIP.o 
../../src/compression/DecompressorLHA.o 
../../src/compression/DecompressorPP20.o 
../../src/compression/DecompressorUMX.o ../../src/compression/DecompressorZIP.o 
../../src/compression/zziplib/MyIO.o ../../src/compression/PP20.o 
../../src/compression/ZipExtractor.o ../../src/compression/lha/unlha.o 
../midi/libmidi.a -L/gnu/store/2x7wd0lz3pqa0wm17y1byvxl47r82pfi-sdl-1.2.15/lib 
-Wl,-rpath,/gnu/store/2x7wd0lz3pqa0wm17y1byvxl47r82pfi-sdl-1.2.15/lib -lSDL 
-lpthread ../../src/compression/zziplib/generic/libzzip.a  -ldl -lz 
../../src/ppui/osinterface/libosinterface.a(PPSystem_POSIX.o): In function 
`System::getTempFileName()':
/tmp/guix-build-milkytracker-0.90.86.drv-0/milkytracker-0.90.86/src/ppui/osinterface/posix/PPSystem_POSIX.cpp:64:
 warning: the use of `tmpnam' is dangerous, better use `mkstemp'
ld: ../midi/libmidi.a(RtMidi.o): undefined reference to symbol 
'snd_seq_event_input_pending@@ALSA_0.9'
/gnu/store/pv2xg14lgghxfpl7jhirc7dp0m3172js-alsa-lib-1.0.27.1/lib/libasound.so.2:
 error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:400: recipe for target 'milkytracker' failed
make[3]: *** [milkytracker] Error 1
make[3]: Leaving directory 
'/tmp/guix-build-milkytracker-0.90.86.drv-0/milkytracker-0.90.86/src/tracker'
Makefile:194: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory 
'/tmp/guix-build-milkytracker-0.90.86.drv-0/milkytracker-0.90.86/src'
Makefile:364: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory 
'/tmp/guix-build-milkytracker-0.90.86.drv-0/milkytracker-0.90.86'
Makefile:303: recipe for target 'all' failed

I don't know what to do with this :-(

-- 
Alex



reply via email to

[Prev in Thread] Current Thread [Next in Thread]