Re: boot the Hurd with Guix

2017-11-17 Thread Maxim Cournoyer
ren...@openmailbox.org writes:

> Finally I was able to start the Hurd with the binaries generated with the 
> guix package manager.

Exciting news! Congrats :)

Maxim



java: switch to icedtea-8 as default JDK

2017-11-17 Thread Ricardo Wurmus
Hi Guix,

some of our Java packages now only build with icedtea-8.  To avoid
incompatibilities we should make icedtea-8 the default and make sure
that all packages still build with that version.

Who would like to help with this?  We can do this in a separate branch
and build it on berlin.guixsd.org.

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net




Re: manifest load error report.

2017-11-17 Thread Ludovic Courtès
Hi,

Mathieu Othacehe  skribis:

> When loading a manifest with an obvious error like "definee
> packages-list" instead of "define package-list", no error is reported,
> the "guix package -m manifest.scm command just exit with error 1.

Really?  I have this:

--8<---cut here---start->8---
$ guix package -m ~/t.scm
guix package: error: failed to load '/home/ludo/t.scm':
/home/ludo/t.scm:1:0: /home/ludo/t.scm:1:0: In procedure module-lookup: Unbound 
variable: definieee
$ cat ~/t.scm
(definieee foo bar)
--8<---cut here---end--->8---

> When using load instead of load* in a guile repl, the error is correctly
> reported :
>
> /home/mathieu/manifest.scm:1:0: /home/mathieu/manifest.scm:1:0: definee: 
> unbound variable
>
> Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
>
> Pusing a bit the investigation, it seems that in the pre-unwind-handler
> of load* in (guix ui), the "make-stack" call returns #f.

When ‘make-stack’ returns #f, that’s OK: it just means we won’t be able
to display a backtrace.

HTH,
Ludo’.



Re: Building Docker images of GuixSD

2017-11-17 Thread Ludovic Courtès
Hi Chris,

Chris Marusich  skribis:

> Run GuixSD in Docker
> 
>
> The attached patch makes it possible to build a GuixSD Docker image from
> an operating system configuration file.

For some reason, I had overlooked this message, but it’s awesome!

> Pretty neat!

Yup!

> Problems I Noticed
> ==

[...]

> Second, I noticed the following error in the Guix daemon's logs.  It
> might be benign, since package installation worked fine, but I'm not
> sure what it means or how to debug it:
>
> error in finalization thread: Bad file descriptor

I’ve noticed this since we use Shepherd on Guile 2.2, but I haven’t
checked where that comes from; it doesn’t seem to be a serious issue.
;-)  Anyway, it’s not related to your experiment.

> Third, I noticed that the shepherd failed to start syslogd and nscd (and
> user-homes, although I wasn't as concerned about that because the home
> directory for alice did in fact get created).

[...]

> I thought maybe syslogd wasn't working because /dev/log hadn't been
> created in the Docker image, so I tried creating it manually.  However,
> that didn't help; the Shepherd still couldn't start syslogd.

Hmm, I would have thought /dev/log was the issue.  Any other hints?

> Fourth, I wasn't able to run GuixSD in a Docker container without
> supplying the "--privileged" option.  GuixSD writes to sysfs during boot
> (I don't know why, but the details are apparently in
> guix/gnu/build/activation.scm), so the only way to get GuixSD to start
> is to run the container in privileged mode.  This is unfortunate,
> because privileged mode sounds quite dangerous for a lot of reasons.

I don’t think so: there’s a special case for when one creates a
container with ‘guix system container’ that disables this kind of thing.
I guess we should use it here.  It’s mostly about passing #:container? #f 
somewhere.

> From 25d5527b14302fc835af5c338bf37cf621c63a4e Mon Sep 17 00:00:00 2001
> From: Chris Marusich 
> Date: Sat, 21 Oct 2017 14:40:58 -0700
> Subject: [PATCH] Make it possible to build GuixSD docker images
>
> ---
>  gnu/build/linux-boot.scm|   5 +-
>  gnu/build/vm.scm|  14 ++--
>  gnu/system/linux-initrd.scm |  12 ++--
>  gnu/system/vm.scm   | 169 
> ++--
>  guix/docker.scm |  23 --
>  guix/scripts/pack.scm   |   5 +-
>  guix/scripts/system.scm |   3 +-
>  7 files changed, 191 insertions(+), 40 deletions(-)

[...]

> +  (cond ((string=? "iso9660" file-system-type)
> + (iso9660-image #:name name
> +#:file-system-label root-label
> +#:file-system-uuid root-uuid
> +#:os-drv os-drv
> +#:register-closures? #t
> +#:bootcfg-drv bootcfg
> +#:bootloader (bootloader-configuration-bootloader
> +   (operating-system-bootloader os))
> +#:inputs `(("system" ,os-drv)
> +   ("bootcfg" ,bootcfg
> +((string=? "docker" file-system-type)
> + (display "made it to docker image part\n")
> + (os-docker-image #:name name
> +  #:os-drv os-drv
> +  #:register-closures? #t))

I’m not sure this is the right place for it since “docker” is not a file
system type.  Perhaps we need a separate procedure instead?

> @@ -106,7 +107,9 @@ return \"a\"."
>   #:key closure compressor
>   (symlinks '())
>   (system (utsname:machine (uname)))
> - (creation-time (current-time time-utc)))
> + (creation-time (current-time time-utc))
> + (tmpdir "/tmp")
> + extra-items-dir)
>"Write to IMAGE a Docker image archive from the given store PATH.  The 
> image
>  contains the closure of PATH, as specified in CLOSURE (a file produced by
>  #:references-graphs).  SYMLINKS must be a list of (SOURCE -> TARGET) tuples
> @@ -116,7 +119,7 @@ binaries at PATH are for; it is used to produce metadata 
> in the image.
>  
>  Use COMPRESSOR, a command such as '(\"gzip\" \"-9n\"), to compress IMAGE.  
> Use
>  CREATION-TIME, a SRFI-19 time-utc object, as the creation time in metadata."
> -  (let ((directory "/tmp/docker-image")   ;temporary working 
> directory
> +  (let ((directory (string-append tmpdir "/docker-image")) ;temporary 
> working directory

Why do we need that?  Would it be enough to honor $TMPDIR?

> --- a/guix/scripts/system.scm
> +++ b/guix/scripts/system.scm
> @@ -638,8 +638,9 @@ any, are available.  Raise an error if they're not."
>  #:mappings 

Re: patch: partition vs filesystem

2017-11-17 Thread Ludovic Courtès
Marco van Hulten  skribis:

> Patch for documentation attached.
>
> terminology: replaced partition with filesystem where needed

I added a commit log and applied it on your behalf.  Thank you!

Ludo’.



Re: Is anyone opposed to GnuTLS with DANE by default?

2017-11-17 Thread Ludovic Courtès
ng0  skribis:

> Ludovic Courtès transcribed 0.5K bytes:
>> ng0  skribis:
>> 
>> > Am I in the 'old system design' mindwset when I think that
>> > every application that has applications such as libmicrohttpd
>> > in its direct dependency chain should depend on the GnuTLS
>> > version LMH uses and not the 'normal' GnuTLS
>> > (It also depends on the features of GnuTLS which are being used,
>> > but to be on the safe side)?
>> 
>> You’re right, it’s a bad sign when there are two different variants of
>> the same package in a reference graph.
>> 
>> Ludo’.
>
> I haven't read much (or at all?) into guix lint so far,
> but can we lint for occurence of this pair somehow?

We could, but the problem is that we can’t determine if there’s an
actual problem until we’ve built it (we need to look at the reference
graph, not the package graph.)

Ludo’.



Re: 05/06: gnu: wget: Add wget2.

2017-11-17 Thread Rutger Helling
Oops! Here's V2. 

On 2017-11-17 20:28, Mark H Weaver wrote:

> Hi,
> 
> Rutger Helling  writes: 
> 
>> I wrote a small patch that switches to the official mirror.
> 
> Your patch changes the source URI, but not the home-page.  Would you
> like to update your patch to change the home-page too?
> 
> Mark
> 
>> From 18d5e35e56f4c34ad0e55cee18eef86b8ea2d5f9 Mon Sep 17 00:00:00 2001
>> From: Rutger Helling 
>> Date: Fri, 17 Nov 2017 08:29:10 +0100
>> Subject: [PATCH] gnu: wget2: Switch to official URL.
>> 
>> * gnu/packages/wget.scm (wget2): Switch to official URL.
>> ---
>> gnu/packages/wget.scm | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
>> index a4862d515..bc3b3ad5d 100644
>> --- a/gnu/packages/wget.scm
>> +++ b/gnu/packages/wget.scm
>> @@ -130,7 +130,7 @@ online pastebin services.")
>> (origin
>> (method git-fetch)
>> (uri (git-reference
>> -   (url "https://github.com/rockdaboot/wget2;)
>> +   (url "https://gitlab.com/gnuwget/wget2.git;)
>> (commit "b45709d3d21714135ce79df6abbdcb704684063d")
>> (recursive? #t))) ;; Needed for 'gnulib' git submodule.
>> (file-name (string-append name "-" version "-checkout"))From 23fd827972f26c627f4da3a90d49cd2d398e1297 Mon Sep 17 00:00:00 2001
From: Rutger Helling 
Date: Fri, 17 Nov 2017 20:35:00 +0100
Subject: [PATCH] gnu: wget2: Switch to official URL.

* gnu/packages/wget.scm (wget2): Switch to official URL.
---
 gnu/packages/wget.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
index a4862d515..3dcf00b9b 100644
--- a/gnu/packages/wget.scm
+++ b/gnu/packages/wget.scm
@@ -130,7 +130,7 @@ online pastebin services.")
 (origin
  (method git-fetch)
  (uri (git-reference
-   (url "https://github.com/rockdaboot/wget2;)
+   (url "https://gitlab.com/gnuwget/wget2.git;)
(commit "b45709d3d21714135ce79df6abbdcb704684063d")
(recursive? #t))) ;; Needed for 'gnulib' git submodule.
  (file-name (string-append name "-" version "-checkout"))
@@ -167,7 +167,7 @@ online pastebin services.")
  ("python", python)))
;; TODO: Add libbrotlidec, libnghttp2.
(native-inputs `(("pkg-config", pkg-config)))
-   (home-page "https://github.com/rockdaboot/wget2;)
+   (home-page "https://gitlab.com/gnuwget/wget2;)
(synopsis "Successor of GNU Wget")
(description "GNU Wget2 is the successor of GNU Wget, a file and recursive
 website downloader.  Designed and written from scratch it wraps around libwget,
-- 
2.15.0



Re: 05/06: gnu: wget: Add wget2.

2017-11-17 Thread Mark H Weaver
Hi,

Rutger Helling  writes:
> I wrote a small patch that switches to the official mirror.

Your patch changes the source URI, but not the home-page.  Would you
like to update your patch to change the home-page too?

  Mark


> From 18d5e35e56f4c34ad0e55cee18eef86b8ea2d5f9 Mon Sep 17 00:00:00 2001
> From: Rutger Helling 
> Date: Fri, 17 Nov 2017 08:29:10 +0100
> Subject: [PATCH] gnu: wget2: Switch to official URL.
>
> * gnu/packages/wget.scm (wget2): Switch to official URL.
> ---
>  gnu/packages/wget.scm | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
> index a4862d515..bc3b3ad5d 100644
> --- a/gnu/packages/wget.scm
> +++ b/gnu/packages/wget.scm
> @@ -130,7 +130,7 @@ online pastebin services.")
>  (origin
>   (method git-fetch)
>   (uri (git-reference
> -   (url "https://github.com/rockdaboot/wget2;)
> +   (url "https://gitlab.com/gnuwget/wget2.git;)
> (commit "b45709d3d21714135ce79df6abbdcb704684063d")
> (recursive? #t))) ;; Needed for 'gnulib' git submodule.
>   (file-name (string-append name "-" version "-checkout"))



Re: 05/06: gnu: wget: Add wget2.

2017-11-17 Thread Rutger Helling
Hi Mark and Ludo, 

I wrote a small patch that switches to the official mirror. 

On 2017-11-16 23:22, Mark H Weaver wrote:

> l...@gnu.org (Ludovic Courtès) writes:
> 
>> civodul pushed a commit to branch master
>> in repository guix.
>> 
>> commit afc438231623fceb4ec8f3aa2f8c4e8f99a3ec22
>> Author: Rutger Helling 
>> Date:   Tue Nov 14 19:01:08 2017 +0100
>> 
>> gnu: wget: Add wget2.
>> 
>> * gnu/packages/wget.scm (wget2): New variable.
>> 
>> Signed-off-by: Ludovic Courtès 
> 
> [...]
> 
>> +   (home-page "https://github.com/rockdaboot/wget2;)
>> +   (synopsis "Successor of GNU Wget")
>> +   (description "GNU Wget2 is the successor of GNU Wget, a file and 
>> recursive
>> +website downloader.  Designed and written from scratch it wraps around 
>> libwget,
>> +that provides the basic functions needed by a web client.")
>> +   (license (list gpl3+ lgpl3+
> 
> I was curious about this claim "Successor of GNU Wget", so I looked at
> the canonical GNU Wget site:
> 
> https://gnu.org/s/wget
> 
> which states:
> 
> Currently GNU Wget2 is being developed.  Please help us if you can
> with testing, docs, organization, development, ... see you at Wget2
> collaboration site 
> 
> For the source and home-page URLs, I would prefer to promote the gitlab
> site over the github one, especially since that's the one referenced
> from .
> 
> What do you think?
> 
> MarkFrom 18d5e35e56f4c34ad0e55cee18eef86b8ea2d5f9 Mon Sep 17 00:00:00 2001
From: Rutger Helling 
Date: Fri, 17 Nov 2017 08:29:10 +0100
Subject: [PATCH] gnu: wget2: Switch to official URL.

* gnu/packages/wget.scm (wget2): Switch to official URL.
---
 gnu/packages/wget.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
index a4862d515..bc3b3ad5d 100644
--- a/gnu/packages/wget.scm
+++ b/gnu/packages/wget.scm
@@ -130,7 +130,7 @@ online pastebin services.")
 (origin
  (method git-fetch)
  (uri (git-reference
-   (url "https://github.com/rockdaboot/wget2;)
+   (url "https://gitlab.com/gnuwget/wget2.git;)
(commit "b45709d3d21714135ce79df6abbdcb704684063d")
(recursive? #t))) ;; Needed for 'gnulib' git submodule.
  (file-name (string-append name "-" version "-checkout"))
-- 
2.15.0