guix-devel
[Top][All Lists]
Advanced

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

Re: Status update+patches:Re: I managed to build guix natively on Debian


From: Svante Signell
Subject: Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next?
Date: Wed, 04 Sep 2019 08:25:12 +0200
User-agent: Evolution 3.30.5-1.1

On Wed, 2019-09-04 at 06:31 +0200, Svante Signell wrote:
> 
> unpacking bootstrap Guile to '/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m-
> guile-bootstrap-2.0'...

This stuff comes from gnu/packages/bootstrap.scm
#!~a
export GUILE_SYSTEM_PATH=~a/share/guile/2.0
export GUILE_SYSTEM_COMPILED_PATH=~a/lib/guile/2.0/ccache
exec -a \"~a0\" ~a \"~a@\"\n"
                              bash out out dollar guile-real dollar)))
                  (chmod guile   #o555)
                  (chmod bin-dir #o555))))))
         (builder
          (add-text-to-store store
                             "build-bootstrap-guile.sh"
                             (format #f "
echo \"unpacking bootstrap Guile to '$out'...\"
~a $out
cd $out
~a -dc < $GUILE_TARBALL | ~a xv

# Use the bootstrap guile to create its own wrapper to set the load path.
GUILE_SYSTEM_PATH=$out/share/guile/2.0 \
GUILE_SYSTEM_COMPILED_PATH=$out/lib/guile/2.0/ccache \
$out/bin/guile -c ~s $out ~a

# Sanity check.
$out/bin/guile --version~%"
...

resulting in /gnu/store/f2zsfb7ywkjmv7rzbnrzxi68hrcijnsf-build-bootstrap-
guile.sh

echo "unpacking bootstrap Guile to '$out'..."
/gnu/store/dh3nk21gj69nmqx6mp97vq97b1xz0yia-mkdir $out
cd $out
/gnu/store/yaxqsba39qdlyv3wrz04i3705l0l0kyp-xz -dc < $GUILE_TARBALL |
/gnu/store/z8zria3rlr8p24kx4gk6wwlmfpyp4lhv-tar xv

# Use the bootstrap guile to create its own wrapper to set the load path.
GUILE_SYSTEM_PATH=$out/share/guile/2.0
GUILE_SYSTEM_COMPILED_PATH=$out/lib/guile/2.0/ccache $out/bin/guile -c "(begin
(use-modules (ice-9 match)) (match (command-line) ((_ out bash) (let ((bin-dir
(string-append out \"/bin\")) (guile (string-append out \"/bin/guile\")) (guile-
real (string-append out \"/bin/.guile-real\")) (dollar (string (integer->char
36)))) (chmod bin-dir 493) (rename-file guile guile-real) 
(call-with-output-file 
guile (lambda (p) (format p \"#!~a\\nexport
GUILE_SYSTEM_PATH=~a/share/guile/2.0\\nexport
GUILE_SYSTEM_COMPILED_PATH=~a/lib/guile/2.0/ccache\\nexec -a \\\"~a0\\\" ~a
\\\"~a@\\\"\\n\" bash out out dollar guile-real dollar))) (chmod guile 365)
(chmod bin-dir 365)))))" $out /gnu/store/l79x4bhi7gw87xq0dwjia55qvdr0d4lz-bash

# Sanity check.
$out/bin/guile --version

I would like to run this script manually:
I've found that
out=/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m-guile-bootstrap-2.0

But how to set GUILE_TARBALL and ~a?

BTW: What is ~a, something guile-specific?




reply via email to

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