Opened 12 years ago
Closed 12 years ago
#904 closed defect (fixed)
Unable to run "chicken-install -deploy" with srfi-19 (must be root)
Reported by: | Maurizio Tomasi | Owned by: | Kon Lovett |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | extensions | Version: | 4.8.x |
Keywords: | Cc: | ||
Estimated difficulty: |
Description
On my system (Ubuntu Linux 12.04, with Chicken Scheme 4.7.0 installed from the Ubuntu repository using apt-get
) I cannot add the egg srfi-19
to my deployed executable because of write permissions:
$ chicken-install -deploy -p ./standalone srfi-19 retrieving ... resolving alias `kitten-technologies' to: http://chicken.kitten-technologies.co.uk/henrietta.cgi connecting to host "chicken.kitten-technologies.co.uk", port 80 ... requesting "/henrietta.cgi?name=srfi-19&mode=default" ... reading response ... HTTP/1.1 200 OK Date: Tue, 21 Aug 2012 20:46:43 GMT Server: Apache/2.2.19 (Unix) mod_ssl/2.2.19 OpenSSL/0.9.9-dev DAV/2 SVN/1.6.17 PHP/5.2.17 mod_fastcgi/2.4.6 Connection: close Transfer-Encoding: chunked Content-Type: text/plain reading chunks .... reading files ... ./TODO ./chicken-primitive-object-inlines.scm ./de/ ./de/srfi-19 ./en/ ./en/srfi-19 ./es/ ./es/srfi-19 ./it/ ./it/srfi-19 ./nl/ ./nl/srfi-19 ./pt/ ./pt/br/ ./pt/br/srfi-19 ./srfi-19-common.scm ./srfi-19-core.scm ./srfi-19-date.scm ./srfi-19-io.scm ./srfi-19-period.scm ./srfi-19-support.scm ./srfi-19-time.scm ./srfi-19-timezone.scm ./srfi-19.meta ./srfi-19.scm ./srfi-19.setup ./tai-utc.dat srfi-19 located at /tmp/temp379e/srfi-19 checking platform for `srfi-19' ... checking dependencies for `srfi-19' ... install order: ("srfi-19") installing srfi-19: ... changing current directory to /tmp/temp379e/srfi-19 /usr/bin/csi -bnq -e "(require-library setup-api)" -e "(import setup-api)" -e "(setup-error-handling)" -e "(extension-name-and-version '(\"srfi-19\" \"\"))" -e "(destination-prefix \"/home/tomasi/standalone\")" -e "(runtime-prefix \"/home/tomasi/standalone\")" -e "(deployment-mode #t)" /tmp/temp379e/srfi-19/srfi-19.setup cp -r de/srfi-19 /var/lib/chicken/6/srfi-29-bundles/de/srfi-19 cp: cannot create regular file `/var/lib/chicken/6/srfi-29-bundles/de/srfi-19': Permission denied Error: shell command failed with nonzero exit status 256: cp -r de/srfi-19 /var/lib/chicken/6/srfi-29-bundles/de/srfi-19 Error: shell command terminated with nonzero exit code 17920 "/usr/bin/csi -bnq -e \"(require-library setup-api)\" -e \"(import setup-api)\" ...
To solve this, I have to use sudo
. So far this is the only library I am using in my project which requires me to do so.
(Note: before doing this I already installed the egg using sudo chicken-install srfi-19
.)
Change History (2)
comment:1 Changed 12 years ago by
Milestone: | 4.8.0 |
---|---|
Owner: | set to Kon Lovett |
Status: | new → assigned |
comment:2 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
try w/ setup-helper 1.5.3
(Note: use chicken-install -sudo srfi-19 instead of sudo chicken-install srfi-19 should it be necessary.)
Note: See
TracTickets for help on using
tickets.
The problem seems to be that
install-srfi-19-bundle
("setup-helper" egg) usesrepository-path
as the destination for bundles. It should probably useinstallation-prefix
, which is different in deployment mode (this can be tested by evaluating(deployment-mode)
). I tried to useinstallation-prefix
instead, but then I got a complaint about a missing bundle directory.In any case
repository-path
is not the correct destination in deployment mode.