bug#24130: RAID config boot hangs at [...] Clocksource: Switched to clocksource tsc

2017-01-12 Thread myglc2
On 01/11/2017 at 23:14 Ludovic Courtès writes:

> Could you tell me if this bug is still relevant?

Hi Ludo’,

Sorry for the delay, I had to swap hardware around to revisit this.  I
am now able to assemble 3 arrays as shown below, so I think you should
close the bug.

config:

(define md0
  (mapped-device
   (source (list "/dev/sdb1" "/dev/sdc1"))
   (target "/dev/md0")
   (type raid-device-mapping)))
(define md1
  (mapped-device
   (source (list "/dev/sdb5" "/dev/sdc5"))
   (target "/dev/md1")
   (type raid-device-mapping)))
(define md2
  (mapped-device
   (source (list "/dev/sdb6" "/dev/sdc6"))
   (target "/dev/md2")
   (type raid-device-mapping)))
(operating-system
 (host-name "g1")
 (timezone "America/New_York")
 (locale "en_US.utf8")
 (bootloader (grub-configuration (device "/dev/sda")))
 (mapped-devices (list md0 md1 md2))
 ;; Add a kernel module for RAID-1.
 (initrd (lambda (file-systems . rest)
   (apply base-initrd file-systems
  #:extra-modules '("raid1")
  rest)))
 (file-systems (cons*
(file-system
 (device "ssd-root")
 (title 'label)
 (mount-point "/")
 (type "ext4"))
(file-system
 (title 'device)
 (device "/dev/md0")
 (dependencies (list md0))
 (mount-point "/mnt/md0")  
 (create-mount-point? #t)
 (type "ext4")
 )
(file-system
 (title 'device)
 (device "/dev/md2")
 (dependencies (list md2))
 (mount-point "/mnt/md2")  
 (create-mount-point? #t)
 (type "ext4")
 )
%base-file-systems))


guix version:

guix (GNU Guix) 0.12.0
v0.12.0-456-gb0a567640





bug#25415: MySQL "server has gone away" when reloading database dump due to "max_allowed_packet" default

2017-01-12 Thread Ben Sturmfels
On 13/01/17 01:22, Ludovic Courtès wrote:

>> Could it be worth setting max_allowed_packet to 16M in Guix's
>> `mysql-configuration-file` function for consistency with Debian?
> 
> Definitely.  I would add a ‘max-allowed-packet’ field in
>  in (gnu services databases) and make sure it’s
> honored.
> 
> Would you like to give it a try?

Sure, I'll give it a shot!

It looks as though the MariaDB source comes with a settings file for
Debian that includes max-allowed-packet=16M:

  mariadb-XX.XX.XX/debian/additions/my.cnf

Would you recommend adding just max-allowed-packet, or would it be worth
applying all these settings in this file?

Ben



signature.asc
Description: OpenPGP digital signature


bug#25430: `guix system reconfigure' fails with "symlink: File exists"

2017-01-12 Thread Arun Isaac

`guix system reconfigure' fails on my machine with the following
backtrace.

In ice-9/boot-9.scm:
 160: 11 [catch #t # ...]
In unknown file:
   ?: 10 [apply-smob/1 #]
In ice-9/boot-9.scm:
  66: 9 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 8 [eval # #]
In ice-9/boot-9.scm:
2404: 7 [save-module-excursion #]
4056: 6 [#]
1727: 5 [%start-stack load-stack #]
1732: 4 [#]
In unknown file:
   ?: 3 [primitive-load 
"/gnu/store/gq6rbsz112r5x3dlaii1w8zs8vcyfzf4-dbus-system-services-builder"]
In ice-9/eval.scm:
 432: 2 [eval # ()]
In srfi/srfi-1.scm:
 616: 1 [for-each # #]
In unknown file:
   ?: 0 [symlink 
"/gnu/store/f4mfsyzqsqccfh22z0md1s1jsk1m79mw-udisks-2.1.8/share/dbus-1/system-services/org.freedesktop.UDisks2.service"
 ...]

ERROR: In procedure symlink:
ERROR: In procedure symlink: File exists
builder for 
`/gnu/store/dywvmn331drm2j6m474vbycdyiljnc4k-dbus-system-services.drv' failed 
with exit code 1
cannot build derivation 
`/gnu/store/4y4v9bdlv4d1r6imamnmy7xcg0r2bcgs-dbus-configuration.drv': 1 
dependencies couldn't be built
cannot build derivation `/gnu/store/w70gl6wvbimy25xjv6w95cqgqm79xksq-etc.drv': 
1 dependencies couldn't be built
cannot build derivation 
`/gnu/store/gk7bj491ds1rb17xz90brad7rdygybw3-system.drv': 1 dependencies 
couldn't be built
guix system: error: build failed: build of 
`/gnu/store/gk7bj491ds1rb17xz90brad7rdygybw3-system.drv' failed


signature.asc
Description: PGP signature


bug#23776: Perl's .pod files include timestamps, making Perl package builds non-deterministic

2017-01-12 Thread Marius Bakke
Ludovic Courtès  writes:

> Leo Famulari  skribis:
>
>> On Thu, Jun 16, 2016 at 11:39:27AM -0400, Leo Famulari wrote:
>>> On Thu, Jun 16, 2016 at 01:33:46PM +0200, Ludovic Courtès wrote:
>>> > The problem is described in 
>>> > :
>>> > 
>>> > --8<---cut here---start->8---
>>> > timestamps_in_documentation_generated_by_podman:
>>> >   description: |
>>> > The module Pod::Man includes timestamps in its embedded manpages:
>>> > 
>>> > http://sources.debian.net/src/perl/latest/cpan/podlators/lib/Pod/Man.pm/?hl=1700#L977
>>> > They should be based on the mtime of the original file.
>>> >   url: 
>>> > https://wiki.debian.org/ReproducibleBuilds/TimestampsInManpagesGeneratedByPodMan
>>> 
>>> According to the information on this page, we should set POD_MAN_DATE
>>> while building. Should we make the perl-build-system export this
>>> variable? Set to SOURCE_DATE_EPOCH?
>>
>> I noticed that Pod::Man is supposed to respect SOURCE_DATE_EPOCH, as of
>> the upstream module version 4.03 (released 2015-12-06). Does anyone know
>> how to check the version of the module bundled into perl?
>
> For the record, even though Pod::Man supposedly honors SOURCE_DATE_EPOCH
> as of Perl 5.24, we still have this problem:
>
> --8<---cut here---start->8---
> $ diff -r 
> /gnu/store/hczskszmhm2l65vy8nv990lzc5dk3ln9-perl-algorithm-c3-0.10{,-check}
> diff -r 
> /gnu/store/hczskszmhm2l65vy8nv990lzc5dk3ln9-perl-algorithm-c3-0.10/lib/perl5/5.24.0/x86_64-linux-thread-multi/perllocal.pod
>  
> /gnu/store/hczskszmhm2l65vy8nv990lzc5dk3ln9-perl-algorithm-c3-0.10-check/lib/perl5/5.24.0/x86_64-linux-thread-multi/perllocal.pod
> 1c1
> < =head2 Wed Jan 11 22:20:36 2017: C L
> ---
>> =head2 Wed Jan 11 22:20:34 2017: C L
> --8<---cut here---end--->8---

Isn't this fixed by be12f4e27505edd87c4aa457fec43dd0fee23b79 from
'core-updates'?



signature.asc
Description: PGP signature


bug#25425: cannot express search path

2017-01-12 Thread Ricardo Wurmus

Ludovic Courtès  writes:

> I think this should work:
>
>(search-path-specification
>  (variable "LUA_PATH")
>  (separator ";")
>  (files '("share/lua/5.3"))
>  (file-pattern "\\.lua$")
>  (file-type 'regular))

I tried this very same thing but it doesn’t work because Lua expects
placeholders (“?”) in the search paths.  The placeholders are replaced
with the actual package names.  If the actual file name does not exist
it will try the next pattern.  If the file *does* exist – which *will* be
the case for any of the files on LUA_PATH that have been generated by
the search-path-specification — Lua will try to load the package from
that path.

This will fail because a search for the “lpeg” module would be satisfied
by the file “re.lua”, because that’s the first valid file on the
LUA_PATH.  “re.lua” requires “lpeg” itself, so another lookup is
performed, which will again result in “re.lua” to be loaded…

AIUI we must generate a value for LUA_PATH that keeps the placeholders
intact.

--
Ricardo

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






bug#25425: cannot express search path

2017-01-12 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> It seems that the “search-path-specification” cannot be used to include
> placeholders such as “?” as required by LUA_PATH and LUA_CPATH.  The
> search paths in Lua are not directories and they are not actual file
> names.

Indeed.

> I suggest adding an optional “placeholder” field to
> “search-path-specification”, which would hold a string like “?/?.lua” in
> this case.

I think this should work:

   (search-path-specification
 (variable "LUA_PATH")
 (separator ";")
 (files '("share/lua/5.3"))
 (file-pattern "\\.lua$")
 (file-type 'regular))

See libxml2 for an example with similar requirements.

HTH!

Ludo’.





bug#25415: MySQL "server has gone away" when reloading database dump due to "max_allowed_packet" default

2017-01-12 Thread Ludovic Courtès
Hi Ben,

Ben Sturmfels  skribis:

> Reloading the same dump works for me on default MySQL in Trisquel 7.
> The database dump was created on Debian with `mysqldump --no-create-db
> DBNAME`.
>
> On Guix, I was able to reload the dump by running mysqld with a custom
> config file with max_allowed_packet=16M under [mysqld].
>
> It appears that the default value for `max_allowed_packet` under
> Debian/Trisquel is "16M", where under Guix it is "4M". The mysqldump
> defaults bunche a whole lot of records into a single insert statement
> for performance, which is why I'm getting a value > 4M.
>
> Could it be worth setting max_allowed_packet to 16M in Guix's
> `mysql-configuration-file` function for consistency with Debian?

Definitely.  I would add a ‘max-allowed-packet’ field in
 in (gnu services databases) and make sure it’s
honored.

Would you like to give it a try?

Thanks for your report!

Ludo’.





bug#25414: gdk-pixbuf@2.34.0 does not build deterministically

2017-01-12 Thread Ludovic Courtès
Hi Danny,

Danny Milosavljevic  skribis:

>> Sounds like the right approach, would you like to test it?  :-)
>
> In principle yes,

I mean, can you apply the patch and build it with:

  guix build gdk-pixbuf --rounds=2 -K

?

> but even without the patch I get (using current master):
>
> $ ./pre-inst-env  guix challenge gdk-pixbuf 
> --substitute-urls="https://mirror.hydra.gnu.org https://bayfront.guixsd.org";

[...]

>  575: 2 [map # (t-1367901)> ...]
> In guix/scripts/substitute.scm:
>  687: 1 [lookup-narinfos "\"https://mirror.hydra.gnu.org"; #]
>  659: 0 [fetch-narinfos "\"https://mirror.hydra.gnu.org"; #]
>
> guix/scripts/substitute.scm:659:16: In procedure fetch-narinfos:
> guix/scripts/substitute.scm:659:16: In procedure struct_vtable: Wrong type 
> argument in position 1 (expecting struct): #f

Hmm hmm!  Is it reproducible (it works for me)?  If so, could you try to
see where the problem comes from by adding ‘pk’ calls like this:

--8<---cut here---start->8---
diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm
index 524b019a3..26ed81318 100755
--- a/guix/scripts/substitute.scm
+++ b/guix/scripts/substitute.scm
@@ -657,10 +657,10 @@ if file doesn't exist, and the narinfo otherwise."
 
   (let-values (((cache-info port)
 (download-cache-info url)))
-(and cache-info
+(and (pk 'cache-info cache-info)
  (if (string=? (cache-info-store-directory cache-info)
(%store-prefix))
- (do-fetch (string->uri url) port);reuse PORT
+ (do-fetch (pk 'uri (string->uri url)) port)  ;reuse PORT
  (begin
(warning (_ "'~a' uses different store '~a'; ignoring it~%")
 url (cache-info-store-directory cache-info))
--8<---cut here---end--->8---

Thanks,
Ludo’.





bug#25425: cannot express search path

2017-01-12 Thread Ricardo Wurmus
It seems that the “search-path-specification” cannot be used to include
placeholders such as “?” as required by LUA_PATH and LUA_CPATH.  The
search paths in Lua are not directories and they are not actual file
names.

I suggest adding an optional “placeholder” field to
“search-path-specification”, which would hold a string like “?/?.lua” in
this case.






bug#25425: lua does not set search paths

2017-01-12 Thread Ricardo Wurmus
The lua interpreter packages do not set native search paths, so they
cannot find lua modules.

  $ guix environment --ad-hoc lua lua-lpeg
  $ lua
  > require('lpeg')
  … ERROR …

However:

  $ guix environment --ad-hoc lua lua-lpeg
  $ export 
LUA_PATH="$GUIX_ENVIRONMENT/share/lua/5.3/?.lua;$GUIX_ENVIRONMENT/share/lua/5.3/?/?.lua"
  $ export 
LUA_CPATH="$GUIX_ENVIRONMENT/lib/lua/5.3/?.so;$GUIX_ENVIRONMENT/lib/lua/5.3/?/?.so"
  $ lua
  > require('lpeg')
  table: 0x1b80300


--
Ricardo

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