guix-devel
[Top][All Lists]
Advanced

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

Re: Packing problem for instantmusic


From: Alex Vong
Subject: Re: Packing problem for instantmusic
Date: Tue, 02 Jan 2018 22:21:35 +0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Hello,

Since there is a permission error, I try to chmod some files and it
works. Here is the code:


(define-public instantmusic
  (let ((commit "300891d09c703525215fa5a116b9294af1c923c8")
        (revision "1"))
    (package
      (name "instantmusic")
      (version (string-append "0.1-" revision "." (string-take commit 9)))
      (source (origin
                (method git-fetch)
                (uri (git-reference
                      (url 
"https://github.com/yask123/Instant-Music-Downloader.git";)
                      (commit commit)))
                (file-name (string-append name "-" version "-checkout"))
                (sha256
                 (base32
                  "0j7qivaa04bpdz3anmgci5833dgiyfqqwq9fdrpl9m68b34gl773"))))
      (build-system python-build-system)
      (propagated-inputs
       `(("python-requests" ,python-requests)
         ("eyed3", eyed3)
         ("python-beautifulsoup4" ,python-beautifulsoup4)
         ("youtube-dl" ,youtube-dl)))
      (arguments
       '(#:modules ((guix build python-build-system)
                    (guix build utils)
                    (srfi srfi-26))
         #:phases (modify-phases %standard-phases
                    (add-before 'build 'pre-build
                      (lambda _
                        (chdir "instantmusic-0.1")
                        (for-each (cut chmod <> #o644)
                                  (find-files "instantmusic.egg-info"
                                              "PKG-INFO|.*\\.txt"))
                        #t)))))
      (home-page "http://iyask.me/Instant-Music-Downloader/";)
      (synopsis "Command line app to download a song from youtube")
      (description "Download a song from youtube in .mp3 format.")
      (license license:expat))))


Stefan Reichör <address@hidden> writes:

> Hi there,
>
> I am currently trying to package instantmusic.
>
> There are several things that I have already solved:
>
> - The official release is very old - so I use the latest git revision
> - I listed the dependencies as propagated-inputs
> - The build must be started in the directory instantmusic-0.1
>
> Here is what I have got so far:
>
> (define-public instantmusic
>   (let ((commit "300891d09c703525215fa5a116b9294af1c923c8")
>         (revision "1"))
>     (package
>       (name "instantmusic")
>       (version (string-append "0.1-" revision "." (string-take commit 9)))
>       (source (origin
>                 (method git-fetch)
>                 (uri (git-reference
>                       (url 
> "https://github.com/yask123/Instant-Music-Downloader.git";)
>                       (commit commit)))
>                 (file-name (string-append name "-" version "-checkout"))
>                 (sha256
>                  (base32
>                   "0j7qivaa04bpdz3anmgci5833dgiyfqqwq9fdrpl9m68b34gl773"))))
>     (build-system python-build-system)
>     (propagated-inputs
>      `(("python-requests" ,python-requests)
>        ("eyed3", eyed3)
>        ("python-beautifulsoup4" ,python-beautifulsoup4)
>        ("youtube-dl" ,youtube-dl)))
>     (arguments
>      '(#:phases (modify-phases %standard-phases
>                   (add-before 'build 'change-directory
>                     (lambda _
>                       (chdir "instantmusic-0.1")
>                       #t)))))
>     (home-page "http://iyask.me/Instant-Music-Downloader/";)
>     (synopsis "Command line app to download a song from youtube")
>     (description "Download a song from youtube in .mp3 format.")
>     (license license:expat))))
>
> Here are the last lines from the guix build output:
> ,----
> | starting phase `unpack'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/requirements.txt'
> | -> `./requirements.txt'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/install.sh'
> | -> `./install.sh'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/README.md'
> | -> `./README.md'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/.travis.yml'
> | -> `./.travis.yml'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/super_installer.py'
> | -> `./super_installer.py'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/.gitignore'
> | -> `./.gitignore'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/.gitattributes'
> | -> `./.gitattributes'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/install.bat'
> | -> `./install.bat'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/PKG-INFO'
> | -> `./instantmusic-0.1/PKG-INFO'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/setup.cfg'
> | -> `./instantmusic-0.1/setup.cfg'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/setup.py'
> | -> `./instantmusic-0.1/setup.py'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/instantmusic/__init__.py'
> | -> `./instantmusic-0.1/instantmusic/__init__.py'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/instantmusic.egg-info/dependency_links.txt'
> | -> `./instantmusic-0.1/instantmusic.egg-info/dependency_links.txt'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/instantmusic.egg-info/PKG-INFO'
> | -> `./instantmusic-0.1/instantmusic.egg-info/PKG-INFO'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/instantmusic.egg-info/top_level.txt'
> | -> `./instantmusic-0.1/instantmusic.egg-info/top_level.txt'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/instantmusic.egg-info/SOURCES.txt'
> | -> `./instantmusic-0.1/instantmusic.egg-info/SOURCES.txt'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/instantmusic.egg-info/not-zip-safe'
> | -> `./instantmusic-0.1/instantmusic.egg-info/not-zip-safe'
> | 
> `/gnu/store/8ssf3hmzjqr23am7zrjjkf2mz40dsmb7-instantmusic-0.1-1.300891d09-checkout/instantmusic-0.1/bin/instantmusic'
> | -> `./instantmusic-0.1/bin/instantmusic'
> | phase `unpack' succeeded after 0.0 seconds
> | starting phase `ensure-no-mtimes-pre-1980'
> | phase `ensure-no-mtimes-pre-1980' succeeded after 0.0 seconds
> | starting phase `patch-usr-bin-file'
> | phase `patch-usr-bin-file' succeeded after 0.0 seconds
> | starting phase `patch-source-shebangs'
> | patch-shebang: ./install.sh: changing `/bin/bash' to
> | `/gnu/store/kpxi8h3669afr9r1bgvaf9ij3y4wdyyn-bash-minimal-4.4.12/bin/bash'
> | patch-shebang: ./instantmusic-0.1/bin/instantmusic: changing
> | `/usr/bin/env python' to
> | 
> `/gnu/store/v4i3zfiwk6vl0mhdz580diqs0p6sc8vg-python-wrapper-3.5.3/bin/python'
> | patch-shebang: ./super_installer.py: changing `/usr/bin/env python'
> | to
> | 
> `/gnu/store/v4i3zfiwk6vl0mhdz580diqs0p6sc8vg-python-wrapper-3.5.3/bin/python'
> | phase `patch-source-shebangs' succeeded after 0.0 seconds
> | starting phase `patch-generated-file-shebangs'
> | phase `patch-generated-file-shebangs' succeeded after 0.0 seconds
> | starting phase `change-directory'
> | phase `change-directory' succeeded after 0.0 seconds
> | starting phase `build'
> | running "python setup.py" with command "build" and parameters ()
> | running build
> | running build_py
> | creating build
> | creating build/lib
> | creating build/lib/instantmusic
> | copying instantmusic/__init__.py -> build/lib/instantmusic
> | running build_scripts
> | creating build/scripts-3.5
> | copying and adjusting bin/instantmusic -> build/scripts-3.5
> | changing mode of build/scripts-3.5/instantmusic from 644 to 755
> | phase `build' succeeded after 1.3 seconds
> | starting phase `check'
> | running "python setup.py" with command "test" and parameters ()
> | running test
> | running egg_info
> | writing requirements to instantmusic.egg-info/requires.txt
> | writing top-level names to instantmusic.egg-info/top_level.txt
> | error: [Errno 13] Permission denied: 'instantmusic.egg-info/top_level.txt'
> | phase `check' failed after 1.3 seconds
> | builder for
> | 
> `/gnu/store/vhv0w95nmzym5frdsysw0bhyidz2k4sb-instantmusic-0.1-1.300891d09.drv'
> | failed with exit code 1
> | @ build-failed
> | /gnu/store/vhv0w95nmzym5frdsysw0bhyidz2k4sb-instantmusic-0.1-1.300891d09.drv
> | - 1 builder for
> | 
> `/gnu/store/vhv0w95nmzym5frdsysw0bhyidz2k4sb-instantmusic-0.1-1.300891d09.drv'
> | failed with exit code 1
> | guix build: error: build failed: build of
> | 
> `/gnu/store/vhv0w95nmzym5frdsysw0bhyidz2k4sb-instantmusic-0.1-1.300891d09.drv'
> | failed
> `----
>
> I sadly have no idea hwy the egg_info task is not able to access
> instantmusic.egg-info/top_level.txt
>
> I looked in other package descriptions for egg_info. But I found nothing 
> useful.
>
> Does someone have a clue how to debug/fix such build problems?
>
> Thanks,
>   Stefan.

Attachment: signature.asc
Description: PGP signature


reply via email to

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