Re: Call for testing!

2015-11-03 Thread 宋文武

On 2015-11-03 22:17, l...@gnu.org wrote:

Hi!

Please test the USB installation image at:


http://www.fdn.fr/~lcourtes/software/guix/guixsd-usb-install-0.9.0pre.x86_64-linux.xz
  SHA1: 0d7f37d5b18f7b4437b447fc8a90b44c470f6e99

http://www.fdn.fr/~lcourtes/software/guix/guixsd-usb-install-0.9.0pre.x86_64-linux.xz.sig

This is for x86_64 and the installation instruction still apply:

  
https://www.gnu.org/software/guix/manual/html_node/System-Installation.html


… but tty2 in the installation image provides the latest version of the
manual, with slightly different examples (notably with an encrypted 
root

partition.)

Hi!  I test this install image using qemu by:

  qemu-system-x86-64 -enable-kvm -m 512 -hda guixsd-usb-install* -hdb 
disk.img


Follow the manual to setup encryted root, using the desktop.scm 
template, but

at the final step, it failed with:

  Path '/mnt/boot/grub' is not readable by GRUB on boot.
  Installation is impossible. Aborting.

  (can be reproduced by `grub-install /dev/sdb --boot-directory 
/mnt/boot')


After search, it seems that an un-encrypted boot partition is needed:

  
https://wiki.archlinux.org/index.php/Dm-crypt/Encrypting_an_entire_system#Preparing_the_boot_partition


So, I run fdisk to add a boot partiotion, finally install finished!

But it can't boot, I have to mount the encrypted root in Grub's cmdline:

  insmod cryptodisk
  insmod luks
  cryptomount hd0,msdos2

That's all I get so far.




Re: [PATCH 1/2] gnu: newt: Build python bindings.

2015-11-03 Thread Eric Bavier
On Tue, 03 Nov 2015 14:29:54 +0100
l...@gnu.org (Ludovic Courtès) wrote:

> ericbav...@openmailbox.org skribis:
> 
> > From: Eric Bavier 
> >
> > * gnu/packages/slang.scm (slang)[outputs]: New field.
> >   [arguments]: Add #:make-flags argument.  Add 'move-python' phase.
> 
> The variable in the log should be ‘newt’, not ‘slang’.

Indeed.

> Otherwise LGTM!
> 
> Please make sure the “out” output does not refer to Python.

I have confirmed it does not.

Done and pushed.

Thanks,
`~Eric



[PATCH] tests: Skip 'guix environment --container' tests in some cases.

2015-11-03 Thread David Thompson
Hey Ludo,

Took a stab at fixing the guix-environment-container.sh tests when the
necessary features aren't available.  GuixSD systems don't have
/proc/sys/kernel/unprivileged_userns_clone so I couldn't verify that
code path works as intended.  All I can say is that the tests still pass
on my machine as they did before.

WDYT?  Did I make it in time for the release?

Thanks,

- Dave



Re: [PATCH] website: Add support for Haunt.

2015-11-03 Thread Daniel Pimentel

Hi Mathieu and Guix,


Thanks to Alex Vong's impulse, I have implemented a first step in the
use of Dave Thompson's site generator Haunt 
(http://haunt.dthompson.us/)

for the GuixSD website.


It's great!

Dave helped me to build website with Haunt.

I builded my website with Haunt (git):
https://notabug.org/d4n1/guga

I copy site folder builded with Haunt to my static site (cvs) on 
savannah:

http://guga.nongnu.org/

Thanks Dave.

PS.: GUGA = GNU User Group Alagoas

--
Daniel Pimentel (d4n1 3:)



Re: 02/02: gnu: Add esmtp.

2015-11-03 Thread Mark H Weaver
Andy Wingo  writes:

> wingo pushed a commit to branch master
> in repository guix.
>
> commit f8ae32a26a5f41466f5c7792261fdf2e78d1d35f
> Author: Andy Wingo 
> Date:   Tue Nov 3 15:46:44 2015 +0100
>
> gnu: Add esmtp.

[...]

> +(inputs
> + `("libesmtp" ,libesmtp))

This 'inputs' field was missing a pair of parentheses.
Fixed in 718c5dd6e1.  Please always test before pushing.

 Thanks,
   Mark



Re: [PATCH] website: Add support for Haunt.

2015-11-03 Thread Thompson, David
On Tue, Nov 3, 2015 at 4:26 PM, Mathieu Lirzin  wrote:
> Hello Guix,
>
> Thanks to Alex Vong's impulse, I have implemented a first step in the
> use of Dave Thompson's site generator Haunt (http://haunt.dthompson.us/)
> for the GuixSD website.

Wow, cool!  I'm surprised at how little code is needed to make the
basics work.  I'll have to try this patch out sometime and see what we
can do to improve it.  I'm sure we'll find a thing or two that Haunt
can do better in the process.

- Dave



Re: "guix container exec --help" errors

2015-11-03 Thread Thompson, David
On Mon, Nov 2, 2015 at 8:28 AM, Alex Kost  wrote:
> Hello, currently "guix container exec -h" (or -V) gives:
>
>   guix container: error: no pid specified
>
> I think this happens because:
>
> (partition-args '("-h")) => ()
> ("-h")
>
> So 'parse-command-line' is called on an empty list.

Thanks for the report!  Fixed in d431b23.

- Dave



Re: [PATCH] import: pypi: add updater

2015-11-03 Thread Ludovic Courtès
Cyril Roelandt  skribis:

> * guix/import/pypi.scm (guix-package->pypi-name,
>   latest-release): New procedures.
>   (pypi-updater): New variable.
^
Missing ‘%’.

> * guix/scripts/refresh.scm (%updaters): Add %PYPI-UPDATER.

Could you add it to the list that appears under ‘--type’ in guix.texi?

OK to push with this change.

Thank you!

Ludo’.



[PATCH] import: pypi: add updater

2015-11-03 Thread Cyril Roelandt
* guix/import/pypi.scm (guix-package->pypi-name,
  latest-release): New procedures.
  (pypi-updater): New variable.
* guix/scripts/refresh.scm (%updaters): Add %PYPI-UPDATER.
---
 guix/import/pypi.scm | 50 +++-
 guix/scripts/refresh.scm |  4 +++-
 2 files changed, 52 insertions(+), 2 deletions(-)

diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm
index 647ef61..f1988a7 100644
--- a/guix/import/pypi.scm
+++ b/guix/import/pypi.scm
@@ -30,12 +30,16 @@
   #:use-module (guix ui)
   #:use-module (guix utils)
   #:use-module (guix import utils)
+  #:use-module ((guix download) #:prefix download:)
   #:use-module (guix import json)
   #:use-module (guix packages)
+  #:use-module (guix upstream)
   #:use-module (guix licenses)
   #:use-module (guix build-system python)
+  #:use-module (gnu packages)
   #:use-module (gnu packages python)
-  #:export (pypi->guix-package))
+  #:export (pypi->guix-package
+%pypi-updater))
 
 (define (pypi-fetch name)
   "Return an alist representation of the PyPI metadata for the package NAME,
@@ -60,6 +64,16 @@ package."
   (snake-case name)
   (string-append "python-" (snake-case name
 
+(define (guix-package->pypi-name package)
+  "Given a Python PACKAGE built from pypi.python.org, return the name of the
+package on PyPI."
+  (let ((source-url (and=> (package-source package) origin-uri)))
+;; The URL has the form:
+;; 'https://pypi.python.org/packages/source/' +
+;; first letter of the package name +
+;; '/' + package name + '/' + ...
+(substring source-url 42 (string-rindex source-url #\/
+
 (define (maybe-inputs package-inputs)
   "Given a list of PACKAGE-INPUTS, tries to generate the 'inputs' field of a
 package definition."
@@ -190,3 +204,37 @@ VERSION, SOURCE-URL, HOME-PAGE, SYNOPSIS, DESCRIPTION, and 
LICENSE."
(license (string->license (assoc-ref* package "info" 
"license"
(make-pypi-sexp name version release home-page synopsis
description license)
+
+(define (pypi-package? package)
+  "Return true if PACKAGE is a Python package from PyPI."
+
+  (define (pypi-url? url)
+(string-prefix? "https://pypi.python.org/"; url))
+
+  (let ((source-url (and=> (package-source package) origin-uri))
+(fetch-method (and=> (package-source package) origin-method)))
+(and (eq? fetch-method download:url-fetch)
+ (match source-url
+   ((? string?)
+(pypi-url? source-url))
+   ((source-url ...)
+(any pypi-url? source-url))
+
+(define (latest-release guix-package)
+  "Return an  for the latest release of GUIX-PACKAGE."
+  (let* ((pypi-name (guix-package->pypi-name
+ (specification->package guix-package)))
+ (metadata (pypi-fetch pypi-name))
+ (version (assoc-ref* metadata "info" "version"))
+ (url (assoc-ref (latest-source-release metadata) "url")))
+(upstream-source
+ (package guix-package)
+ (version version)
+ (urls (list url)
+
+(define %pypi-updater
+  (upstream-updater
+   (name 'pypi)
+   (description "Updater for PyPI packages")
+   (pred pypi-package?)
+   (latest latest-release)))
diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm
index 0df4121..3984a0b 100644
--- a/guix/scripts/refresh.scm
+++ b/guix/scripts/refresh.scm
@@ -30,6 +30,7 @@
   #:use-module ((guix gnu-maintenance) #:select (%gnu-updater))
   #:use-module (guix import elpa)
   #:use-module (guix import cran)
+  #:use-module (guix import pypi)
   #:use-module (guix gnupg)
   #:use-module (gnu packages)
   #:use-module ((gnu packages commencement) #:select (%final-inputs))
@@ -152,7 +153,8 @@ specified with `--select'.\n"))
   ;; List of "updaters" used by default.  They are consulted in this order.
   (list %gnu-updater
 %elpa-updater
-%cran-updater))
+%cran-updater
+%pypi-updater))
 
 (define (lookup-updater name)
   "Return the updater called NAME."
-- 
2.6.2




[PATCH] website: Add support for Haunt.

2015-11-03 Thread Mathieu Lirzin
Hello Guix,

Thanks to Alex Vong's impulse, I have implemented a first step in the
use of Dave Thompson's site generator Haunt (http://haunt.dthompson.us/)
for the GuixSD website.

I will need more details on the deployment of the website on gnu.org to
hopefully get rid of the parameter objects tweaking.

--
Mathieu Lirzin

>From cb8c7cde36d46d226fbe1f7f553304e850ef43ac Mon Sep 17 00:00:00 2001
From: Mathieu Lirzin 
Date: Tue, 3 Nov 2015 22:02:07 +0100
Subject: [PATCH] website: Add support for Haunt.

This provides a simple way to build the website locally.

* website/guixsd.scm: New file.
* website/README: Document the new build process.
---
 website/README | 11 +++
 website/guixsd.scm | 45 +
 2 files changed, 52 insertions(+), 4 deletions(-)
 create mode 100644 website/guixsd.scm

diff --git a/website/README b/website/README
index 9112726..b6d60f4 100644
--- a/website/README
+++ b/website/README
@@ -15,10 +15,13 @@ website]] which is implemented in [[https://www.gnu.org/software/guile][Guile]]
 
 * Building
 
-In this implementation, links assume =/software/guix= is the root directory of
-the website.  In order to build the website on your machine, you will want to
-modify the values of ‘(current-url-root)’ and ‘(gnu.org-root)’ parameter
-objects.
+Building the website depends on the static site generator:
+
+  - [[http://haunt.dthompson.us/][Haunt]]
+
+To build the site, run ‘haunt build -c guixsd.scm’ to compile all of
+the HTML pages.  To view the results, run ‘haunt serve -c guixsd.scm’
+and visit  in a web browser.
 
 * Copying
 
diff --git a/website/guixsd.scm b/website/guixsd.scm
new file mode 100644
index 000..41d1509
--- /dev/null
+++ b/website/guixsd.scm
@@ -0,0 +1,45 @@
+;;; GuixSD website --- GNU's advanced distro website
+;;; Copyright © 2015 Mathieu Lirzin 
+;;;
+;;; This file is part of GuixSD website.
+;;;
+;;; GuixSD website is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or
+;;; (at your option) any later version.
+;;;
+;;; GuixSD website is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;;; General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GuixSD website.  If not, see .
+
+(use-modules (haunt site)
+ (haunt reader)
+ (haunt page)
+ (haunt html)
+ (haunt utils)
+ (haunt builder assets)
+ (ice-9 match)
+ (www)
+ (www utils))
+
+(site #:title "GNU's advanced distro and transactional package manager"
+  #:domain "gnu.org/software/guix"
+  #:default-metadata
+  '((author . "GuixSD Contributors")
+(email  . "guix-devel@gnu.org"))
+  #:readers (list sxml-reader)
+  #:builders
+  `(,@(map (match-lambda
+ ((file-name contents)
+  (lambda (site posts)
+(parameterize
+((current-url-root "")
+ (gnu.org-root "https://www.gnu.org";))
+  (make-page file-name (contents) sxml->html
+ (_ const))
+   %web-pages)
+,(static-directory "static")))
-- 
2.6.1



Re: 03/06: gnu: Add ruby-simplecov-html.

2015-11-03 Thread Ricardo Wurmus

Mark H Weaver  writes:

> This build failed on all 4 architectures:
>
>   http://hydra.gnu.org/eval/107751#tabs-new
>
> The reason is that the .gem file doesn't have the expected sha256sum,
> e.g. see the error message here:
>
>   http://hydra.gnu.org/build/764006
>
> --8<---cut here---start->8---
> Failed: output path
> `/gnu/store/1wcr8krcldwg479fklxqshpb113xghbz-simplecov-html-0.10.0.gem'
> should have sha256 hash
> `1m5mprppw0xcrv2mkim5zsk70v089ajzqiq5hpyb0xg96fcyzyxj', instead has
> `1qni8g0xxglkx25w54qcfbi4wjkpvmb28cb7rj5zk3iqynjcdrqf'
> --8<---cut here---end--->8---

How odd!  It’s only been a couple of weeks between packaging it and
pushing the commit.  Changing tarballs/gems in place is bad.

I’ll take a look at this soon and update the recipe if the change is
harmless.

Thanks for letting me know!

~~ Ricardo




Re: 03/06: gnu: Add ruby-simplecov-html.

2015-11-03 Thread Mark H Weaver
Ricardo Wurmus  writes:

> rekado pushed a commit to branch master
> in repository guix.
>
> commit 58b59742f47e4aee243bd75af8e6dda5f92ed57a
> Author: Ricardo Wurmus 
> Date:   Wed Sep 16 11:06:25 2015 +0200
>
> gnu: Add ruby-simplecov-html.

This build failed on all 4 architectures:

  http://hydra.gnu.org/eval/107751#tabs-new

The reason is that the .gem file doesn't have the expected sha256sum,
e.g. see the error message here:

  http://hydra.gnu.org/build/764006

--8<---cut here---start->8---
Failed: output path
`/gnu/store/1wcr8krcldwg479fklxqshpb113xghbz-simplecov-html-0.10.0.gem'
should have sha256 hash
`1m5mprppw0xcrv2mkim5zsk70v089ajzqiq5hpyb0xg96fcyzyxj', instead has
`1qni8g0xxglkx25w54qcfbi4wjkpvmb28cb7rj5zk3iqynjcdrqf'
--8<---cut here---end--->8---

  Mark



[PATCH] gnu: Add esmtp.

2015-11-03 Thread Andy Wingo
* gnu/packages/mail.scm (esmtp): New public variable.
---
 gnu/packages/mail.scm | 41 +
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 9a70341..115f73e 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -30,6 +30,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages bash)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages databases)
@@ -44,6 +45,7 @@
   #:use-module (gnu packages gsasl)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages guile)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libidn)
   #:use-module (gnu packages linux)
@@ -70,6 +72,7 @@
   (expat . license:expat)))
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
@@ -955,4 +958,42 @@ be able to post electronic mail where mail functionality 
may not be that
 program's primary purpose.")
 (license (list lgpl2.1+ gpl2+
 
+(define-public esmtp
+  (package
+(name "esmtp")
+(version "1.2")
+(source
+ (origin
+   (method git-fetch)
+   (uri (git-reference
+ (url "https://github.com/andywingo/esmtp.git";)
+ (commit "01bf9fc")))
+   (sha256
+(base32
+ "1ay282rrl92h0m0m8z5zzjnwiiagi7c78aq2qvhia5mw7prwfyw2"))
+   (file-name (string-append name "-" version "-checkout"
+(arguments
+ `(#:phases (modify-phases %standard-phases
+  (add-before
+   'configure 'autoconf
+   (lambda _ (zero? (system* "autoreconf" "-vfi")))
+(build-system gnu-build-system)
+(native-inputs
+ `(("bison" ,bison)
+   ("flex" ,flex)
+   ("autoconf" ,autoconf)
+   ("automake" ,automake)
+   ("libtool" ,libtool)))
+(inputs
+ `("libesmtp" ,libesmtp))
+(home-page "http://sourceforge.net/projects/esmtp/";)
+(synopsis "Relay-only mail transfer agent (MTA)")
+(description "Esmtp is a simple relay-only mail transfer agent built using
+libESMTP.  It sends e-mail via a remote SMTP server using credentials from the
+user's @file{$HOME/.esmtprc} configuration file; see the @command{esmtprc} man
+page for more on configuration.  This package also provides minimal
+compatibility shims for the @command{sendmail}, @command{mailq}, and
+@command{newaliases} commands.")
+(license gpl2+)))
+
 ;;; mail.scm ends here
-- 
2.5.0




Re: [PATCHES] Mupen64Plus

2015-11-03 Thread Taylan Ulrich Bayırlı/Kammer
Eric Bavier  writes:

> On 2015-11-02 23:13, Leo Famulari wrote:
>> On Mon, Nov 2, 2015, at 17:04, Taylan Ulrich Bayırlı/Kammer wrote:
>>> (I can't use git-send-email with git installed from Guix for some
>>> reason; it says subcommand not found.)
>>
>> Off-topic, but this happened to me, too. I'm still using Debian's git,
>> but I bet the problem is that git-send-email needs to be able to
>> find an
>> SMTP client. And, of course, that clients needs to be configured.
>
> Do you have "git:send-email" installed?

Ah, I didn't notice that in the 'guix package -A' output, thanks for
pointing it out. :-)

Taylan



Re: [PATCH 2/2] gnu: Add esmtp.

2015-11-03 Thread Andy Wingo
On Tue 03 Nov 2015 15:32, Andy Wingo  writes:

> If you want to queue, there's the esmtp-wrapper shell
> script shipped with esmtp; simply do:
>
>  ln -s ~/.guix-profile/bin/esmtp-wrapper ~/bin/sendmail
>  ln -s ~/.guix-profile/bin/esmtp-wrapper ~/bin/mailq

If you do this you will probably want to do this instead:

  ; in .emacs
  (setq sendmail-program "/home/USER/bin/sendmail")

  # at the shell
  git config sendemail.smtpserver $HOME/bin/sendmail

Andy



Re: [PATCH 2/2] gnu: Add esmtp.

2015-11-03 Thread Andy Wingo
On Tue 03 Nov 2015 14:54, Andy Wingo  writes:

> * gnu/packages/mail.scm (esmtp): New public variable.

This patch adds a "sendmail" that works, more or less.  In my ~/.esmtprc
I have:

hostname = your.smtp.server:port
username = u...@email.com
password = 'yourpasswordhere'
starttls = required

That configures the esmtp MTA.  Then in Emacs you have these variables:

 (setq send-mail-function 'sendmail-send-it)
 (setq sendmail-program "/home/USER/.guix-profile/sbin/sendmail")

And install esmtp:

 guix package -i esmtp

So now C-x m works, cool.  You probably also want to install
git-send-email:

 guix package -i git:send-email

and configure it globally:

 git config --global sendemail.from "Your Name "
 # Don't Cc: yourself on mails.
 git config --global sendemail.suppressfrom true
 git config sendemail.smtpserver $HOME/.guix-profile/sbin/sendmail
 git config envelopesender auto

And probably in your guix checkout you want to do:

 git config sendemail.to guix-devel@gnu.org

And if all that is set up... well then you should be able to

 git send-email 0001-foo.patch 0002-bar.patch

or

 git send-email origin/master..HEAD

or whatever.  Anyway you all have probably already hooked all of this up
but I was really struggling, and maybe this is useful to someone else.

Finally, the esmtp daemon will normally block on sending mails and never
queue anything.  If you want to queue, there's the esmtp-wrapper shell
script shipped with esmtp; simply do:

 ln -s ~/.guix-profile/bin/esmtp-wrapper ~/bin/sendmail
 ln -s ~/.guix-profile/bin/esmtp-wrapper ~/bin/mailq

It will queue to ~/.esmtp_queue.  This gives you the ability to send
mails while being offline.  Later to send them, you can "mailq -q".

OK, that's all!  At some point it would be nice to rewrite this hacky
pile of C and shell with a nice Guile relay-only MTA, but that day is
not today, at least for me :)

Cheers,

Andy



Re: [PATCH 2/2] gnu: Add esmtp.

2015-11-03 Thread Thompson, David
On Tue, Nov 3, 2015 at 9:54 AM, Andy Wingo  wrote:
> * gnu/packages/mail.scm (esmtp): New public variable.
> ---
>  gnu/packages/mail.scm | 40 
>  1 file changed, 40 insertions(+)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 9a70341..dfc8ec9 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -30,6 +30,7 @@
>#:use-module (gnu packages base)
>#:use-module (gnu packages backup)
>#:use-module (gnu packages bash)
> +  #:use-module (gnu packages bison)
>#:use-module (gnu packages curl)
>#:use-module (gnu packages cyrus-sasl)
>#:use-module (gnu packages databases)
> @@ -44,6 +45,7 @@
>#:use-module (gnu packages gsasl)
>#:use-module (gnu packages gtk)
>#:use-module (gnu packages guile)
> +  #:use-module (gnu packages flex)
>#:use-module (gnu packages libcanberra)
>#:use-module (gnu packages libidn)
>#:use-module (gnu packages linux)
> @@ -70,6 +72,7 @@
>(expat . license:expat)))
>#:use-module (guix packages)
>#:use-module (guix download)
> +  #:use-module (guix git-download)
>#:use-module (guix utils)
>#:use-module (guix build-system gnu)
>#:use-module (guix build-system perl)
> @@ -955,4 +958,41 @@ be able to post electronic mail where mail functionality 
> may not be that
>  program's primary purpose.")
>  (license (list lgpl2.1+ gpl2+
>
> +(define-public esmtp
> +  (package
> +(name "esmtp")
> +(version "1.2")
> +(source
> + (origin
> +   (method git-fetch)
> +   (uri (git-reference
> + (url "https://github.com/andywingo/esmtp.git";)
> + (commit "01bf9fc")))
> +   (sha256
> +(base32
> + "1ay282rrl92h0m0m8z5zzjnwiiagi7c78aq2qvhia5mw7prwfyw2"))
> +   (file-name (string-append name "-" version "-checkout"
> +(arguments
> + `(#:phases (modify-phases %standard-phases
> +  (add-before
> +   'configure 'autoconf
> +   (lambda _ (zero? (system* "autoreconf" "-vfi")))
> +(build-system gnu-build-system)
> +(native-inputs
> + `(("bison" ,bison)
> +   ("flex" ,flex)
> +   ("libesmtp" ,libesmtp)

Should this be a regular input instead?

> +   ("autoconf" ,autoconf)
> +   ("automake" ,automake)
> +   ("libtool" ,libtool)))
> +(home-page "http://www.stafford.uklinux.net/libesmtp/";)

Wrong home page?

> +(synopsis "Relay-only mail transfer agent (MTA)")
> +(description "Esmtp is a simple relay-only mail transfer agent built 
> using
> +libESMTP.  It sends e-mail via a remote SMTP server using credentials from 
> the
> +user's @file{$HOME/.esmtprc} configuration file; see the @command{esmtprc} 
> man
> +page for more on configuration.  This package also provides minimal
> +compatibility shims for the @command{sendmail}, @command{mailq}, and
> +@command{newaliases} commands.")
> +(license gpl2+)))
> +
>  ;;; mail.scm ends here
> --
> 2.5.0
>
>

LGTM sans those minor nits.

- Dave



Re: [PATCHES] Mupen64Plus

2015-11-03 Thread Eric Bavier

On 2015-11-02 23:13, Leo Famulari wrote:

On Mon, Nov 2, 2015, at 17:04, Taylan Ulrich Bayırlı/Kammer wrote:

(I can't use git-send-email with git installed from Guix for some
reason; it says subcommand not found.)


Off-topic, but this happened to me, too. I'm still using Debian's git,
but I bet the problem is that git-send-email needs to be able to find 
an

SMTP client. And, of course, that clients needs to be configured.


Do you have "git:send-email" installed?

--
`~Eric



[PATCH 2/2] gnu: Add esmtp.

2015-11-03 Thread Andy Wingo
* gnu/packages/mail.scm (esmtp): New public variable.
---
 gnu/packages/mail.scm | 40 
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 9a70341..dfc8ec9 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -30,6 +30,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages bash)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages databases)
@@ -44,6 +45,7 @@
   #:use-module (gnu packages gsasl)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages guile)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libidn)
   #:use-module (gnu packages linux)
@@ -70,6 +72,7 @@
   (expat . license:expat)))
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
@@ -955,4 +958,41 @@ be able to post electronic mail where mail functionality 
may not be that
 program's primary purpose.")
 (license (list lgpl2.1+ gpl2+
 
+(define-public esmtp
+  (package
+(name "esmtp")
+(version "1.2")
+(source
+ (origin
+   (method git-fetch)
+   (uri (git-reference
+ (url "https://github.com/andywingo/esmtp.git";)
+ (commit "01bf9fc")))
+   (sha256
+(base32
+ "1ay282rrl92h0m0m8z5zzjnwiiagi7c78aq2qvhia5mw7prwfyw2"))
+   (file-name (string-append name "-" version "-checkout"
+(arguments
+ `(#:phases (modify-phases %standard-phases
+  (add-before
+   'configure 'autoconf
+   (lambda _ (zero? (system* "autoreconf" "-vfi")))
+(build-system gnu-build-system)
+(native-inputs
+ `(("bison" ,bison)
+   ("flex" ,flex)
+   ("libesmtp" ,libesmtp)
+   ("autoconf" ,autoconf)
+   ("automake" ,automake)
+   ("libtool" ,libtool)))
+(home-page "http://www.stafford.uklinux.net/libesmtp/";)
+(synopsis "Relay-only mail transfer agent (MTA)")
+(description "Esmtp is a simple relay-only mail transfer agent built using
+libESMTP.  It sends e-mail via a remote SMTP server using credentials from the
+user's @file{$HOME/.esmtprc} configuration file; see the @command{esmtprc} man
+page for more on configuration.  This package also provides minimal
+compatibility shims for the @command{sendmail}, @command{mailq}, and
+@command{newaliases} commands.")
+(license gpl2+)))
+
 ;;; mail.scm ends here
-- 
2.5.0




[PATCH 1/2] gnu: Add libesmtp.

2015-11-03 Thread Andy Wingo
* gnu/packages/mail.scm (libesmtp): New public variable.
---
 gnu/packages/mail.scm | 24 
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 25407b8..9a70341 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -931,4 +931,28 @@ Email::Send library.")
 format and headers.")
 (license (package-license perl
 
+(define-public libesmtp
+  (package
+(name "libesmtp")
+(version "1.0.6")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "http://www.stafford.uklinux.net/libesmtp/libesmtp-";
+   version ".tar.bz2"))
+   (sha256
+(base32
+ "02zbniyz7qys1jmx3ghx21kxmns1wc3hmv80gp7ag7yra9f1m9nh"
+(build-system gnu-build-system)
+(propagated-inputs
+ `(("openssl" ,openssl)))
+(home-page "http://www.stafford.uklinux.net/libesmtp/";)
+(synopsis "Library for sending mail via remote hosts using SMTP")
+(description "libESMTP is an SMTP client which manages posting (or
+submission of) electronic mail via a preconfigured Mail Transport Agent (MTA).
+It may be used as part of a Mail User Agent (MUA) or other program that must
+be able to post electronic mail where mail functionality may not be that
+program's primary purpose.")
+(license (list lgpl2.1+ gpl2+
+
 ;;; mail.scm ends here
-- 
2.5.0




Re: [PATCH] gnu: Add nestopiaue.

2015-11-03 Thread Taylan Ulrich Bayırlı/Kammer
l...@gnu.org (Ludovic Courtès) writes:

> taylanbayi...@gmail.com (Taylan Ulrich "Bayırlı/Kammer") skribis:
>
>> I now pushed a slightly edited version of this patch.
>
> Thanks, sorry for not replying earlier.

No problem. :-)

> One thing that may be worth double-checking if you haven’t already:
> since it’s an emulator, we should make sure there’s no non-free software
> or binary blobs in there.  Maybe checking what Debian does can help
> here.

I now checked and Debian contains no patches to remove any files.

Although this made me notice it uses a bundled zlib by default.  I'll
push a commit fixing that shortly...

> Thanks,
> Ludo’.

Taylan



Call for testing!

2015-11-03 Thread Ludovic Courtès
Hi!

Please test the USB installation image at:

  
http://www.fdn.fr/~lcourtes/software/guix/guixsd-usb-install-0.9.0pre.x86_64-linux.xz
  SHA1: 0d7f37d5b18f7b4437b447fc8a90b44c470f6e99
  
http://www.fdn.fr/~lcourtes/software/guix/guixsd-usb-install-0.9.0pre.x86_64-linux.xz.sig

This is for x86_64 and the installation instruction still apply:

  https://www.gnu.org/software/guix/manual/html_node/System-Installation.html

… but tty2 in the installation image provides the latest version of the
manual, with slightly different examples (notably with an encrypted root
partition.)

I’m sorry that once again these arrive a day or two before the target
release date.  Please report back ASAP.

Reports of installations in VMs are interesting; bare-metal installation
are even better.

Thanks!  :-)

Ludo’.


signature.asc
Description: PGP signature


Re: polkit & udisks

2015-11-03 Thread Ludovic Courtès
Andy Wingo  skribis:

> Wow that's great!  Thank you Ludo :)  Next stop, pam_elogind and then we
> can maybe get gnome-session working :)  Thanks again for the service
> refactorings!

And thanks for explaining how all the pieces fit together; this was key!

Ludo’.



Re: [PATCH 1/3] gnu: Add c-ares.

2015-11-03 Thread Ludovic Courtès
Efraim Flashner  skribis:

> * gnu/packages/aria2.scm: New file.
> * gnu-system.am (GNU_SYSTEM_MODULES): Add it.

[...]

> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append
> +"https://github.com/bagder/c-ares/archive/cares-";
> +(string-map (lambda (c) (if (char=? c #\.) #\_ c)) 
> version)
> +".tar.gz"))

Please use the standalone tarball from
http://c-ares.haxx.se/download/c-ares-1.10.0.tar.gz and remove the
autotools from ‘native-inputs’ and the modified phases.

> +(license license:x11)))

There’s no top-level license file, but the license text in source files
is:

   * Permission to use, copy, modify, and distribute this
   * software and its documentation for any purpose and without
   * fee is hereby granted, provided that the above copyright
   * notice appear in all copies and that both that copyright
   * notice and this permission notice appear in supporting
   * documentation, and that the name of M.I.T. not be used in
   * advertising or publicity pertaining to distribution of the
   * software without specific, written prior permission.
   * M.I.T. makes no representations about the suitability of
   * this software for any purpose.  It is provided "as is"
   * without express or implied warranty.

This is neither  nor
.

Unless someone has a better idea, I would make it:

  (license:x11-style "http://c-ares.haxx.se/license.html";)

Could you send an updated patch?

Thanks,
Ludo’.



Re: [PATCH 0/3] add c-ares and aria2

2015-11-03 Thread Ludovic Courtès
Efraim Flashner  skribis:

> This patch has driven me crazy a bit. C-ares is a library for asynchronous DNS
> lookups, and aria2 is a cli program to download multiple files/torrents
> simultaneously, and also a git-annex dependency. C-ares builds without any
> problems, but aria2 was a different story. The first problem is that the tests
> seem to need network connectivity, and it tries to access files outside the
> build chroot. Disabling the tests was the easy part.

It’s cheating!  ;-)  Could you investigate and see whether/how tests
could run in the build environment?  A common problem wrt. networking in
host name lookups.  In the build environment, only “localhost” can be
found.

> The second problem was that pkg-config wouldn't find c-ares, so it
> kept on building without it.

In that case, I would do this:

  guix build -K aria2
  # … build fails
  cd /tmp/nix-build*aria2*
  source environment-variables
  pkg-config c-ares --libs

(Replace “c-ares” with the name corresponding to the actual .pc file
provided by c-ares.)

It might be that this command fails because of a missing dependency that
the .pc file requires.

Ludo’.



Re: [PATCH 2/2] gnu: Add byobu.

2015-11-03 Thread Ludovic Courtès
ericbav...@openmailbox.org skribis:

> From: Eric Bavier 
>
> * gnu/packages/screen.scm (byobu): New variable.
> * gnu/packages/patches/byobu-writable-status.patch: New patch.
> * gnu-system.am (dist_patch_DATA): Add it.

LGTM, thanks.

Ludo’.



Re: [PATCH 1/2] gnu: newt: Build python bindings.

2015-11-03 Thread Ludovic Courtès
ericbav...@openmailbox.org skribis:

> From: Eric Bavier 
>
> * gnu/packages/slang.scm (slang)[outputs]: New field.
>   [arguments]: Add #:make-flags argument.  Add 'move-python' phase.

The variable in the log should be ‘newt’, not ‘slang’.

Otherwise LGTM!

Please make sure the “out” output does not refer to Python.

Thanks,
Ludo’.



Re: Timestamps in ...-autoloads.el files

2015-11-03 Thread Ludovic Courtès
Alex Kost  skribis:

> Ludovic Courtès (2015-10-21 19:55 +0300) wrote:
>
>> Alex Kost  skribis:
>>
>>> I like the idea to honor SOURCE_DATE_EPOCH, so I'm attaching a patch for
>>> this.  But now I don't know how to make Guix set this variable during
>>> the build process :-(  Need help.
>>
>> Ahem, eventually, we’ll have to set it in ‘gnu-build’ in (guix build
>> gnu-build-system) in the next ‘core-updates’ cycle.
>
> So would it be as simple as this (?):
>
> diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm
> index ff7646b..92e15d1 100644
> --- a/guix/build/gnu-build-system.scm
> +++ b/guix/build/gnu-build-system.scm
> @@ -576,6 +576,9 @@ in order.  Return #t if all the PHASES succeeded, #f 
> otherwise."
>;; Encoding/decoding errors shouldn't be silent.
>(fluid-set! %default-port-conversion-strategy 'error)
>  
> +  ;; Avoid non-determinism related to generated timestamps.
> +  (setenv "SOURCE_DATE_EPOCH" "1")
> +
>;; The trick is to #:allow-other-keys everywhere, so that each procedure in
>;; PHASES can pick the keyword arguments it's interested in.
>(every (match-lambda

Yes, as simple as this.

>> In the interim, we can set it in a phase of ‘emacs-build-system’, which
>> would entail few rebuilds.
>>
>> WDYT?
>
> I think it is not so important to make a temporary workaround for
> master.  What about just fixing it in core-updates?

Sure, makes sense.  It’ll be several weeks before it is merged, though,
but we can probably live with that.

>>> +++ b/gnu/packages/patches/emacs-source-date-epoch.patch
>>> @@ -0,0 +1,20 @@
>>> +Honor SOURCE_DATE_EPOCH variable to avoid non-determinism in generated
>>> +"autoloads" files.
>>> +
>>> +--- a/lisp/emacs-lisp/autoload.el
>>>  b/lisp/emacs-lisp/autoload.el
>>> +@@ -378,8 +378,12 @@
>>> +   "Insert the section-header line,
>>> + which lists the file name and which functions are in it, etc."
>>> +   (insert generate-autoload-section-header)
>>> +-  (prin1 `(autoloads ,autoloads ,load-name ,file ,time)
>>> +-   outbuf)
>>> ++  (let* ((env  (getenv "SOURCE_DATE_EPOCH"))
>>> ++ (time (if env
>>> ++   (seconds-to-time (string-to-number env))
>>> ++ time)))
>>> ++(prin1 `(autoloads ,autoloads ,load-name ,file ,time)
>>> ++   outbuf))
>>> +   (terpri outbuf)
>>> +   ;; Break that line at spaces, to avoid very long lines.
>>> +   ;; Make each sub-line into a comment.
>>
>> Could you also submit it upstream, Cc’ing guix-devel and
>> reproducible-bui...@lists.alioth.debian.org?  Hopefully that is
>> acceptable.  (I searched a bit but didn’t find a similar patch by the
>> Debian Reproducible team, but patch-tracker.debian.org is unreachable.)
>
> I'm afraid it's a too hard task for me, sorry.  I wouldn't like to mail
> to so many places.

Or email only emacs-devel if you prefer.

An experienced Emacs hacker like you shouldn’t have to be afraid of that.

Thanks!

Ludo’.



Re: [PATCH] gnu: Add nestopiaue.

2015-11-03 Thread Ludovic Courtès
taylanbayi...@gmail.com (Taylan Ulrich "Bayırlı/Kammer") skribis:

> I now pushed a slightly edited version of this patch.

Thanks, sorry for not replying earlier.

One thing that may be worth double-checking if you haven’t already:
since it’s an emulator, we should make sure there’s no non-free software
or binary blobs in there.  Maybe checking what Debian does can help
here.

Thanks,
Ludo’.



Re: JavaScript on web site

2015-11-03 Thread Mathieu Lirzin
Hi,

> Alex Vong  skribis:
>
>> By the way, does anyone know how to build the guix website from
>> source?

There are some instructions in website/README but I must confess they
are not very explicit.  Assuming that DIR is the root of your personal
guix-artwork repository, in a REPL you can do:

  (chdir "DIR/website")
  (add-to-load-path (getcwd))
  (use-modules (www) (www utils))
  (parameterize ((current-url-root (getcwd))
 (gnu.org-root "https://www.gnu.org";))
(export-web-site))

Then you will have the generated html files in “DIR/website”.

Simplifying the build process is on my TODO list.  :)

--
Mathieu Lirzin



Re: JavaScript on web site

2015-11-03 Thread Alex Vong
Hi,

Librejs reports the following:

List of blocked JavaScript in https://www.gnu.org/software/guix/packages/

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('aisleriot81197', 'agg81196', 'aegis81195', 
'adwaita-icon-theme81194', 'adns81193', 'acpid81192', 'acpica81191', 
'acl81190', 'acct81189', 'accountsservice81185', 'abiword81184', 'abduco81183', 
'abcde81181', 'abbaye81178', 'aalib81177', 'a2ps81078')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('argtable81214', 'ardour81212', 'arb81211', 'arandr81210', 
'aragorn81209', 'apr-util81208', 'apr81207', 'apl81206', 'ao81205', 'ant81204', 
'ansible81203', 'american-fuzzy-lop81202', 'alsa-utils81201', 
'alsa-modular-synth81200', 'alsa-lib81199', 'alive81198')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('atlas81235', 'atkmm81234', 'atk81233', 
'ath9k-htc-firmware81228', 'at-spi2-core81227', 'at-spi2-atk81226', 
'astyle81225', 'aspell-dict-ru81224', 'aspell-dict-fr81223', 
'aspell-dict-es81222', 'aspell-dict-eo81221', 'aspell-dict-en81220', 
'aspell81219', 'asciidoc81217', 'arpack-ng-openmpi81216', 'arpack-ng81215')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('avr-libc81281', 'avidemux81280', 'avahi81279', 
'automoc481278', 'automake81277', 'autogen81276', 'autoconf81275', 
'autoconf81274', 'autoconf81273', 'autobuild81272', 'aumix81271', 
'audacity81240', 'aubio81239', 'attr81238', 'attica81237', 'attic81236')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('bedtools81315', 'bedops81314', 'bdftopcf81313', 'bdb81312', 
'bc81311', 'bbdb81309', 'bazaar81308', 'bash-static81306', 'bash-minimal81304', 
'bash-completion81297', 'bash81287', 'barcode81286', 'bamtools81285', 
'babl81284', 'azr381283', 'avrdude81282')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('blast+81331', 'bitlbee81330', 'bitcoin-core81329', 
'bison81328', 'bison81327', 'bioruby81326', 'bioperl-minimal81325', 
'bio-locus81324', 'bio-blastxmlparser81323', 
'binutils-static-stripped-tarball81322', 'binutils-bootstrap81321', 
'binutils81320', 'bind-utils81319', 'bigreqsproto81318', 'bigloo81317', 
'behave81316')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('bwa81349', 'busybox81348', 'bundler81347', 'bullet81346', 
'btar81345', 'bspwm81344', 'bridge-utils81343', 'brdf-explorer81342', 
'brasero81341', 'bowtie81339', 'bootstrap-tarballs81338', 
'bootstrap-binaries81337', 'boost81336', 'bool81335', 'bogofilter81334', 
'bluez81333')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('cdparanoia81368', 'cd-discid81366', 'ccrtp81365', 
'ccl81364', 'ccache81363', 'catch81362', 'camlp581361', 'camlp481360', 
'calibre81358', 'calf81357', 'calcurse81356', 'cairomm81355', 'cairo81354', 
'cabal-install81353', 'c-reduce81351', 'bzip281350')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('clisp81386', 'clipper81384', 'claws-mail81383', 
'clang-runtime81382', 'clang-runtime81381', 'clang81380', 'clang81379', 
'clalsadrv81378', 'cityhash81377', 'chmlib81376', 'chicken81375', 
'chibi-scheme81374', 'chess81373', 'check81372', 'cgal81371', 'cflow81370')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('complexity81402', 'commoncpp81401', 'colordiff81400', 
'colord81399', 'cogl81398', 'cmus81397', 'cmatrix81396', 'cmake81395', 
'cm81394', 'clutter-gtk81393', 'clutter-gst81392', 'clutter81391', 
'clusterssh81390', 'clustal-omega81389', 'clucene81388', 'cloog81387')

Whitelist

This script is detected as inline, nonfree, defining functions or methods, 
and the rest of the page as loading external scripts
prep_pkg_descs('crossmap81418', 'crda81417', 'cpufrequtils81416', 
'cppunit81415', 'cppi81414', 'cpphs81413', 'cpio81412', 'couger81411', 
'corkscrew81410', 'coreutils-minimal81409', 'coreutils81408', 'coq81407', 
'cook81406', 'conky81405', 'conkeror81404', 'compositeproto81403')

Whitelist

This script is dete

Re: polkit & udisks

2015-11-03 Thread Andy Wingo
Wow that's great!  Thank you Ludo :)  Next stop, pam_elogind and then we
can maybe get gnome-session working :)  Thanks again for the service
refactorings!

Andy

On Sun 01 Nov 2015 17:04, l...@gnu.org (Ludovic Courtès) writes:

> Hi!
>
> Commit 222e331 changes ‘polkit-service-type’ so that other services can
> extend it with new polkit “actions” and “rules,” which colord and
> elogind do.
>
> Commit 2b9e0a9 adds UDisks to ‘%desktop-services’.  Now, one can run
> things like:
>
>   udisksctl status
>   udisksctl mount -b /dev/foo
>
> Hopefully GUIs (Xfce?) automatically detect things like USB keys that
> are inserted and might even be able to mount/unmount them (though I
> think that, since this is restricted to people sitting at the computer,
> and since we don’t use pam_elogind yet, that only works for ‘root’ ATM.)
>
> Anyway, I would be glad if desktop-savvy people could report back!
>
> This addresses some of the problems that Andy identified when adding
> polkit and friends this summer, which led to the service refactoring.
> So it sort of closes the loop.
>
> Thanks,
> Ludo’.



Re: “System” and “profile” services

2015-11-03 Thread Adam Pribyl

On Tue, 3 Nov 2015, Ludovic Courtès wrote:


Commits d62e201 and af4c3fd add ‘system-service-type’, which is the now
the real root of the service DAG, and ‘profile-service-type’, which is
the service that populates the system profile
(aka. /run/current-system/profile.)

The latter means that services can add packages to the system profile,
which is useful in some cases.

For instance, with commit 87f4001, Wicd adds itself to the system
profile so that ‘wicd-client’ and other commands are automatically
available, without having to fiddle with the ‘packages’ field of the OS.

This should simplify things a bit.


Nice! I'll test that when release comes...


Ludo’.


Adam Pribyl

Re: [PATCH] gnu: Add nestopiaue.

2015-11-03 Thread Taylan Ulrich Bayırlı/Kammer
I now pushed a slightly edited version of this patch.

(Removed the xdg-utils input since I was already patching out its use in
the Makefile, removed the freedesktop module use that was needed for
xdg-utils, and renamed the package to nestopia-ue.)

Taylan



JavaScript on web site

2015-11-03 Thread Ludovic Courtès
Alex Vong  skribis:

> By the way, does anyone know how to build the guix website from
> source? I want to add some labels so that librejs don't complain the
> javascripts being non-free on this page
> . I have cloned the
> guix-artwork repo but I don't know how to set-up or build the websites
> (I have zero experience on building websites.).

What does LibreJS say?  The packages.js file in the guix-artwork repo
has a license tag at the top, but maybe it is malformed?

Thanks for looking into it,
Ludo’.



Re: 2 (possible) problems in documentation

2015-11-03 Thread Ludovic Courtès
Alex Vong  skribis:

> From e562ebc9a9e3859ecc0c1c2e8be6f39a44b5be7d Mon Sep 17 00:00:00 2001
> From: Alex Vong 
> Date: Mon, 2 Nov 2015 23:34:16 +0800
> Subject: [PATCH] doc: To clarify `./pre-inst-env guix pull` won't upgrade
>  local source tree.
>
> * doc/contributing.texi (Running Guix Before It Is Installed): To clarify
> `./pre-inst-env guix pull` won't upgrade local source tree
> and add a footnote to explain why (thanks to Alex Kost).

I pushed a slightly modified version of this patch.  Thanks!

Ludo’.