bug#19780: 13 failing tests

2015-02-13 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> Modifying test-env only gave me errors about the socket file not being
> found, so I did not spend much more time investigating it.  With the
> modified pre-inst-env, however, valgrind produced a very long log, which
> I attached below.  The interesting part is probably this section near
> the end:
>
> ~~~
> ==9202== Jump to the invalid address stated on the next line
> ==9202==at 0x0: ???
> ==9202==by 0x5308B23: __pthread_initialize_minimal (nptl-init.c:467)
> ==9202==by 0x5307408: ??? (in /usr/lib64/libpthread-2.17.so)
> ==9202==by 0x50F9F5F: ??? (in /usr/lib64/libnss_sss.so.2)
> ==9202==by 0x4F56F1: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4F5836: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DBB59: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4D9E65: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DB476: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DDA86: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4D9E65: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DD8D6: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
> ==9202== 
> ==9202== 
> ==9202== Process terminating with default action of signal 11 (SIGSEGV)
> ==9202==  Bad permissions for mapped region at address 0x0
> ==9202==at 0x0: ???
> ==9202==by 0x5308B23: __pthread_initialize_minimal (nptl-init.c:467)
> ==9202==by 0x5307408: ??? (in /usr/lib64/libpthread-2.17.so)
> ==9202==by 0x50F9F5F: ??? (in /usr/lib64/libnss_sss.so.2)
> ==9202==by 0x4F56F1: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4F5836: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DBB59: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4D9E65: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DB476: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DDA86: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4D9E65: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ==9202==by 0x4DD8D6: ??? (in 
> /localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash)
> ~~~
>
> libnss_sss is used because on my workstation we use sssd for user
> authentication with LDAP.

Interesting.  How does libnss_sss.so get loaded?  Is it specified in
/etc/ld.so.preload, /etc/nsswitch.conf, or some other global
configuration file?

Could you this time replace ‘valgrind’ with ‘strace -f -o log’ in
‘pre-inst-env’, and send that log?  I fail to see how this library gets
loaded.

> On a possibly related note, Emacs installed through Guix on this
> Fedora 21 workstation fails to find my user's home directory (which is
> mounted over NFS).  Upon starting Emacs I get this error: "Error
> (initialization): User rwurmus has no home directory"; "--debug-init"
> does not make any difference.  HOME is set, of course.  I wonder if
> this is a helpful clue.

Does (getpw (getenv "USER")) work on this system?

Thanks,
Ludo’.





bug#19780: 13 failing tests

2015-02-13 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> 17814 
> execve("/localhome/rwurmus-tmp/guix/test-tmp/store/nakn26p520psw7jawgfv74wm34dn6kxj-bash",
>  ["nakn26p520psw7jawgfv74wm34dn6kxj"..., 
> "/localhome/rwurmus-tmp/guix/test"...], [/* 11 vars */]) = 0

[...]

> 17814 connect(3, {sa_family=AF_LOCAL, sun_path="/var/run/nscd/socket"}, 110) 
> = -1 ENOENT (No such file or directory)
> 17814 close(3)  = 0
> 17814 open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
> 17814 fstat(3, {st_mode=S_IFREG|0644, st_size=1861, ...}) = 0
> 17814 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
> 0) = 0x7fed42e86000
> 17814 read(3, "#\n# /etc/nsswitch.conf\n#\n# An ex"..., 4096) = 1861
> 17814 read(3, "", 4096) = 0
> 17814 close(3)  = 0
> 17814 munmap(0x7fed42e86000, 4096)  = 0
> 17814 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
> 17814 fstat(3, {st_mode=S_IFREG|0644, st_size=33941, ...}) = 0
> 17814 mmap(NULL, 33941, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fed42e7e000
> 17814 close(3)  = 0
> 17814 open("/lib64/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3

And from there we’re doomed.

Could you download

and replace ‘gnu/packages/bootstrap/x86_64-linux/bash’ with the ‘bash’
file from that tarball (make it executable), and then try again?

I believe the problem is that these binaries date from before commit
d3b59727 (Jan. 2013), which disabled dynamic NSS support in bootstrap
binaries.

Thanks for your help!

Ludo’.





bug#19780: 13 failing tests

2015-02-13 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> Yes, with my system guile (2.0.11) it returns my full user record.
>
> scheme@(guile-user)> (getpw (getenv "USER"))
> $1 = #("rwurmus" "*" 12345 12345 "Wurmus, Ricardo" "/home/rwurmus" 
> "/bin/bash")

And what about the Guix-built Guile?

Thanks,
Ludo’.





bug#19780: 13 failing tests

2015-02-13 Thread Ricardo Wurmus

Ludovic Courtès writes:

> Ricardo Wurmus  skribis:
>
>> Yes, with my system guile (2.0.11) it returns my full user record.
>>
>> scheme@(guile-user)> (getpw (getenv "USER"))
>> $1 = #("rwurmus" "*" 12345 12345 "Wurmus, Ricardo" "/home/rwurmus" 
>> "/bin/bash")
>
> And what about the Guix-built Guile?

I had to install it first:

~~~
scheme@(guile-user)> (getpw (getenv "USER"))
ERROR: In procedure getpw:
ERROR: In procedure getpw: entry not found

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]> ,bt
   0 (getpw "rwurmus")
scheme@(guile-user) [1]> 
~~~


~~ Ricardo





bug#19780: 13 failing tests

2015-02-13 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> Ludovic Courtès writes:
>
>> Ricardo Wurmus  skribis:
>>
>>> Yes, with my system guile (2.0.11) it returns my full user record.
>>>
>>> scheme@(guile-user)> (getpw (getenv "USER"))
>>> $1 = #("rwurmus" "*" 12345 12345 "Wurmus, Ricardo" "/home/rwurmus" 
>>> "/bin/bash")
>>
>> And what about the Guix-built Guile?
>
> I had to install it first:
>
> ~~~
> scheme@(guile-user)> (getpw (getenv "USER"))
> ERROR: In procedure getpw:
> ERROR: In procedure getpw: entry not found
>
> Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
> scheme@(guile-user) [1]> ,bt
>0 (getpw "rwurmus")
> scheme@(guile-user) [1]> 
> ~~~

Is nscd running on this system?  Seems like not.

Ludo’.





bug#18698: Our WindowMaker wrapper pollutes PATH in the entire X session

2015-02-13 Thread 宋文武
Ludovic Courtès  writes:

> 宋文武  skribis:
>
>> Ricardo Wurmus  writes:
>>
>>> The fix may have resulted in unintended side-effects.  On a fresh
>>> installation of the System Distribution v0.8.1 WindowMaker is installed
>>> by default, but it is not completely functional.
>>>
>>> For example, the attempt to change the style via the menu results in
>>> this error to be displayed:
>>>
>>> Could not execute command:
>>> setstyle 
>>> /gnu/store/...windowmaker.../share/WindowMaker/Styles/Black.style
>>>
>>> Likewise, selecting "Configure Window Maker" from the right-click menu
>>> results in this error:
>>>
>>> Could not execute command: exec WPrefs
>>>
>>> The "setstyle" executable is located in
>>> /gnu/store/...windowmaker.../bin/, but is not in the PATH.
>> Yes, the $out/bin of windowmaker is not in $PATH, and same for sawfish.
>>
>> Instead of wrapping every executable of session-type, we can:
>>
>> #1: Add the package to system profile ('packages').
>>   It's not clear to me how to do it now, until we have something
>>   like the NixOS's module system.
>
> What I have in mind is to add a ‘packages’ field in ‘service’.  That
> would allow service implementations to contribute packages to the global
> profile.  Thoughts?
It's fine, but we may also need a 'dbus-service' field (for wicd).
>
>> #2: Make SLiM use '/run/current-system/profile/share/xsessions' as
>> session_dir.
>>   So simply add a package providing xsession file to 'packages' should
>>   make it available to SLiM.  And all DE and many window-managers provide
>>   xsession files already (eg: openbox, sawfish, xfce), we can patch
>>   the rest (eg: WindowMaker) to install one.
>
> IIUC the bug initially reported here would remain: the user’s $PATH
> would be polluted with the window manager’s stuff, no?
I think the 'polluted' means we have a $PATH contains:
  /gnu/store/xxx-windowmaker/bin
install it to profile doesn't have this issue.
>
> Thanks,
> Ludo’.