Hi Ludo, I suspect this was introduced with bags. When I use below Guile instruction running from the CLI I get
$2 = #<package python-3.3.5 gnu/packages/python.scm:49 3976210> scheme@(guile-user)> (package-derivation s python) ERROR: In procedure memoize-variable-access!: ERROR: Unbound variable: sha256 scheme@(guile-user) [1]> ,bt In guix/packages.scm: 584:14 17 (cache #<package python-3.3.5 gnu/packages/python.scm:49 3976210> "x86_64-linux" #<proced...>) 686:6 16 (bag->derivation #<build-daemon 256.14 2ff8f80> #<<bag> name: "python-3.3.5" system: "...> #) In srfi/srfi-1.scm: 578:27 15 (map #<procedure 2995000 at guix/packages.scm:688:30 (t-43862)> (("source" #<origi...>) ...)) In guix/packages.scm: 640:16 14 (expand-input #<build-daemon 256.14 2ff8f80> #<package python-3.3.5 gnu/packages/pytho...> ...) 473:19 13 (package-source-derivation #<build-daemon 256.14 2ff8f80> #<origin "https://www.python...> #) In guix/download.scm: 206:4 12 (url-fetch #<build-daemon 256.14 2ff8f80> "https://www.python.org/ftp/python/3.3.5/Pyt..." ...) In guix/packages.scm: 584:14 11 (cache #<package guile-2.0.11 gnu/packages/commencement.scm:633 39c1210> "x86_64-linux" #) 686:6 10 (bag->derivation #<build-daemon 256.14 2ff8f80> #<<bag> name: "guile-2.0.11" system: "...> #) In srfi/srfi-1.scm: 578:27 9 (map #<procedure 2998ed0 at guix/packages.scm:688:30 (t-43862)> (("source" #<origi...>) ...)) In guix/packages.scm: 640:16 8 (expand-input #<build-daemon 256.14 2ff8f80> #<package guile-2.0.11 gnu/packages/comme...> ...) In guix/download.scm: 206:4 7 (url-fetch #<build-daemon 256.14 2ff8f80> "mirror://gnu/guile/guile-2.0.11.tar.xz" sha256 ...) In guix/packages.scm: 584:14 6 (cache #<package guile-bootstrap-2.0 gnu/packages/bootstrap.scm:220 2c2f6e0> "x86_64-l..." #) In ice-9/eval.scm: 411:25 5 (eval #<memoized (let ((_ (<7> <0>))) (let ((_ (add-text-to-store <22> (string-append ...> #) 411:25 4 (eval #<memoized (let ((_ (#<variable 28c6ae0 value: #<procedure derivation-hash args>...> #) In guix/utils.scm: 426:27 3 (derivation-hash #<derivation #f => 2af8dc0>) In ice-9/eval.scm: 386:9 2 (eval #<memoized (sha256 (string->utf8 (derivation->string <0>)))> (#<derivation #f ...> . #)) 393:14 1 (eval #<memoized sha256> (#<derivation #f => 2af8d70> () (("out" . "")) (("out" . "")) . #)) In unknown file: 0 (memoize-variable-access! #<memoized sha256> #<directory (guix derivations) 27dc480>) On Mon, May 05, 2014 at 10:03:30AM +0200, Ludovic Courtès wrote: > It may be helpful to have a ???ruby-build-system???, akin to > ???python-build-system??? but with the right incantations (info "(guix) > Build Systems"). > > > Do we have a HOWTO on how to run expressions in the Guile debugger? > > Never used that and would like to see how individual statements > > evaluate in LISP. > > Basically there are two approaches. From the command line, like this: > > --8<---------------cut here---------------start------------->8--- > $ ./pre-inst-env guile > GNU Guile 2.0.11.20-4338f > Copyright (C) 1995-2014 Free Software Foundation, Inc. > > Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. > This program is free software, and you are welcome to redistribute it > under certain conditions; type `,show c' for details. > > Enter `,help' for help. > scheme@(guile-user)> ,use (gnu packages python) > scheme@(guile-user)> ,use (guix) > scheme@(guile-user)> (define s (open-connection)) > scheme@(guile-user)> python > $1 = #<package python-3.3.5 gnu/packages/python.scm:46 2946840> > scheme@(guile-user)> (package-derivation s python) > $2 = #<derivation > /gnu/store/k0lvsy8jwcw0amv1rsmii2cvwfnmn2gz-python-3.3.5.drv => > /gnu/store/ij8xgynicdmnzb7pzmyb6bqi17s0ll3y-python-3.3.5 3f4fdc0> > scheme@(guile-user)> (build-derivations s (list $2)) > $3 = #t > --8<---------------cut here---------------end--------------->8--- > > But the best thing, if you use Emacs, is to use Geiser, as noted in > ???HACKING???. In addition to a REPL, it brings stuff like autodoc, > jump-to-definition, expression evaluation from the buffer, etc. > > > I am really impressed with GUIX, and I think it is a no-brainer to use > > a real functional programming language for this. Thanks Ludo and > > others! I just wish I could use GUIX on servers where I don't have (and > > won't get) root access. Or is there a way? With Nix I could run as a > > normal user. > > It???s the same as Nix, which means that if the daemon cannot run as root, > then it???s usable in a ???degraded??? mode (info "(guix) Build Environment > Setup"). > > HTH, > Ludo???. >