unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Guix direct checkout hacking
@ 2019-03-16 11:24 Giovanni Biscuolo
  2019-03-16 11:54 ` Danny Milosavljevic
  0 siblings, 1 reply; 3+ messages in thread
From: Giovanni Biscuolo @ 2019-03-16 11:24 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 4819 bytes --]

Hi Guix!

I'm learning to hack Guix following Pierre Neidhardt (kudos!) tutorial
[1] and the contributing section [2] of the manual

I want to hack Guix in my local working dir ($GUIX_CHECKOUT in the
tutorial) cloned while ago and periodically updated, I'd also like to do
my testing in a *separate* dedicated subdirectory,
e.g. $GUIX_CHECKOUT/packaging-tutorial for *strong* separation of my
high-volatile-and-useless tests from upstream (and I'm too lazy to setup
a channel for this simple use-case)

I still don't use "The Perfect Setup" because I want to do this "the
hard way" :-), aka using a simple terminal application (no eshell) and
the command line

I've some question and comments...

1. the hacking environment (aka "Building from Git)

I regurarly "git pull" in $GUIX_CHECKOUT and then "guix environment
guix": is it sufficient and necessary to "/.bootstrap" and then
"/.configure" every time I enter the environment in order to have a
working build environment?

Do I really need to "make check" every time I "activate" the devel
environment or after every "git pull" of my $GUIX_CHECKOUT?

Do I neeed to regurarly "make clean-go" to get rid of compiled .go or I
can ignore this step? If this step should be regurarly done: when?
(this is not documented, just my curiosity)

2. building (aka Running Guix Before It Is Installed)

I start the build daemon in the environment:

  sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild

The above command starts the deamon in foreground and should be
"manually" backugrounded (CTRL-Z && bg %<n>) to be able to continue to
use the environment: further hacking *cannot* be done in another
termininal, out of the environment configured in 1.

Furthermore, the guix-deamon process started in the environment must be
"manually killed" at the end of the "hacking session" (exit the
environment): right?

Should this be documented in the "7.2 Running Guix Before It Is
Installed" section of the manual?

Lastly, testing the building of the hello packages, gives me this error:

--8<---------------cut here---------------start------------->8---
(anemone)[~/{git}/giovanni.biscuolo.net/guix]-
giovanni@anemone: time ./pre-inst-env guix build hello
;;; note: source file /home/giovanni/{git}/giovanni.biscuolo.net/guix/guix/config.scm
;;;       newer than compiled /home/giovanni/.cache/guile/ccache/2.2-LE-8-3.A/home/giovanni/{git}/giovanni.biscuolo.net/guix/guix/config.scm.go
accepted connection from pid 8872, user giovanni
substitute: ;;; note: source file /home/giovanni/{git}/giovanni.biscuolo.net/guix/guix/config.scm
substitute: ;;;       newer than compiled /home/giovanni/.cache/guile/ccache/2.2-LE-8-3.A/home/giovanni/{git}/giovanni.biscuolo.net/guix/guix/config.scm.go
substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
building /gnu/store/5fb2krx4aw8i54q066x16a1k6axf0cxm-hello-2.10.tar.gz.drv...
error: failed to run download program '/home/giovanni/{git}/giovanni.biscuolo.net/guix/nix/scripts/download': Permission denied
builder for `/gnu/store/5fb2krx4aw8i54q066x16a1k6axf0cxm-hello-2.10.tar.gz.drv' failed with exit code 1
build of /gnu/store/5fb2krx4aw8i54q066x16a1k6axf0cxm-hello-2.10.tar.gz.drv failed
View build log at '/usr/local/var/log/guix/drvs/5f/b2krx4aw8i54q066x16a1k6axf0cxm-hello-2.10.tar.gz.drv.bz2'.
cannot build derivation `/gnu/store/7b0rzwcbdml7z4njkv8jw7qb60y3hzra-hello-2.10.drv': 1 dependencies couldn't be built
guix build: error: build of `/gnu/store/7b0rzwcbdml7z4njkv8jw7qb60y3hzra-hello-2.10.drv' failed

Some deprecated features have been used.  Set the environment
variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
program to get more information.  Set it to "no" to suppress
this message.
--8<---------------cut here---------------end--------------->8---

what am I doing wrong?

I got the same error even after deleting
/home/giovanni/.cache/guile/ccache/2.2-LE-8-3.A/home/giovanni/{git}/giovanni.biscuolo.net/guix/guix/config.scm.go

I triple checked the "Running Guix Before It Is Installed" [3] section
of the manual and did all described in 1. tree times, I still cannot
figure out if I'm doing something wrong

I suspect I have a problem with the build process started in the
environment, but still don't know what and how to solve

(end of the first part)


Thanks!
Giovanni



[1] https://guix.info/blog/2018/a-packaging-tutorial-for-guix/

[2]
https://www.gnu.org/software/guix/manual/en/html_node/Contributing.html#Contributing

[3] https://www.gnu.org/software/guix/manual/en/html_node/Running-Guix-Before-It-Is-Installed.html#Running-Guix-Before-It-Is-Installed

-- 
Giovanni Biscuolo

Xelera IT Infrastructures

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-03-16 14:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-16 11:24 Guix direct checkout hacking Giovanni Biscuolo
2019-03-16 11:54 ` Danny Milosavljevic
2019-03-16 14:39   ` Giovanni Biscuolo

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).