From: Alex Vong <alexvong1995@gmail.com>
To: "Stefan Reichör" <stefan@xsteve.at>
Cc: guix-devel@gnu.org
Subject: Re: Packing problem for instantmusic
Date: Tue, 02 Jan 2018 22:21:35 +0800 [thread overview]
Message-ID: <87lghg2vf4.fsf@gmail.com> (raw)
In-Reply-To: <87y3lhrzd8.fsf@xsteve.at> ("Stefan \=\?utf-8\?Q\?Reich\=C3\=B6r\=22\?\= \=\?utf-8\?Q\?'s\?\= message of "Mon, 01 Jan 2018 23:24:51 +0100")
[-- Attachment #1: Type: text/plain, Size: 9394 bytes --]
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 <stefan@xsteve.at> 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 #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
next prev parent reply other threads:[~2018-01-02 14:22 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-01 22:24 Packing problem for instantmusic Stefan Reichör
2018-01-02 14:21 ` Alex Vong [this message]
2018-01-02 18:47 ` Stefan Reichör
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
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87lghg2vf4.fsf@gmail.com \
--to=alexvong1995@gmail.com \
--cc=guix-devel@gnu.org \
--cc=stefan@xsteve.at \
/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 public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).