Re: Find location of installed package in /gnu/store

2021-05-15 Thread Björn Höfling
On Sat, 15 May 2021 03:28:01 +0100
Phil Beadling  wrote:

> Given a package definition, eg icedtea-8's JDK, how can can I
> determine the location of the installed package in my /gnu/store?

[..]

> The aim is to use this to derivive the JDK include directories in a
> generic way for some scripts I'm writing, such that I don't need to
> update them each time the JDK hash changes after a guix pull.

In your store, there will be probably many icedtea-8's lying around,
because you or another user on your system updated it several times or
even compiled it with different sources.

Even when you say you want to to get the hash of what "guix pull"
currently has (see Edouard's answer), that might be different from what
is in your current profile, because you haven't executed yet a "guix
package -u", or you have several profiles around with different
versions/states.

From a practical perspective, what I have for the JDK: I put different
versions in different profiles, like:

guix package -i icedtea@3:jdk -p ~/extra-profiles/jdk8
guix package -i openjdk@11:jdk -p ~/extra-profiles/jdk11

(if you want to have the profile in your path, source it as the
command-output tells you, or at it to your bashrc)

Then I can set the JAVA_HOME variable to

JAVA_HOME=~/extra-profiles/jdk11

to use JDK 11. Also in Eclipse in the preferences, you can add
different installed JREs. I use this to point to my extra-profile.

Björn


pgpVOeOVah2VT.pgp
Description: OpenPGP digital signature


Re: IntelliJ IDEA - Community Edition

2021-05-09 Thread Björn Höfling
On Sun, 9 May 2021 15:00:32 -0400
Raghav Gururajan  wrote:

> Hello Guix,
> 
> I am trying to package IDEA, which is an IDE for JVM.
> 
> This is the first time I am dealing with java and ant-build-system.
> 
> I was able to do some tinkering to get the build phase started, but
> it fails at the beginning with the following error:
> "Exception in thread "main" java.lang.RuntimeException: Could not
> create parent directory for lock file 
> /.gradle/wrapper/dists/gradle-5.5-all/66q2j3qadt42ygj9lkubqor18/gradle-5.5-all.zip.lck".
> 
> I have attached the diff file with this email.
> 
> Thoughts?

Not sure exactly what's the problem here. If you like to get more
infos, you can also try to build it with ant options -verbose or
-debug. Either in the Guix build or from the command line in a Guix
Container.

In any ways, IntelliJ will be hard to impossible to get it into Guix
proper, because it will download many dependencies as binaries. You
will first need to find out how to build them from source. It will use
Kotlin, and Kotlin at some point will use Scala. Scala needs a
Scala-compiler...

Björn


pgphtxskDTeUY.pgp
Description: OpenPGP digital signature


Re: GNU Guix maintainer collective update

2020-05-05 Thread Björn Höfling
On Mon, 04 May 2020 09:31:46 -0400
Maxim Cournoyer  wrote:

> Let's take a moment to thank Ricardo for his time as a Guix
> co-maintainer.  He's been immensely useful to the project and I hope
> we'll continue to see him around.

Thanks Ricardo for being a kind member of Guix and for really
supporting and fostering this kind, respectful community. I never found
an online community that is as respectful as the one here and I learned
a lot from you online, offline and within Outreachy.

And thanks for all the work you did. Hope to see you still around.

 
> Let's also welcome Mathieu Othacehe in his new role!  Congratulations,
> Mathieu!  :-)

Congratulations, Mathieu :-)

Björn


pgp9zp4Z8ytcO.pgp
Description: OpenPGP digital signature


Re: Java fontconfig issues

2019-11-30 Thread Björn Höfling
Some more analysis:


Creating a simple logger file:

$ cat logging.properties
 
handlers=java.util.logging.ConsoleHandler

java.util.logging.ConsoleHandler.level=ALL
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter


Then debugging the font loading process:

In a Guix container with JDK11:

$ java -Dsun.java2d.debugfonts=true
-Djava.util.logging.config.file=logging.properties -cp . Main Nov 30, 2019 
11:34:07 PM sun.awt.X11FontManager registerFontDir
INFO: ParseFontDir 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fonts
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration 
INFO: Creating standard Font Configuration
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.15.0-65-generic.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.15.0-65-generic.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.4.15.0-65-generic.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.4.15.0-65-generic.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.4.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.4.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findFontConfigFile
INFO: Did not find a fontconfig file.
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration 
INFO: Creating standard Font Configuration
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.15.0-65-generic.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.15.0-65-generic.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.4.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.Linux.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for text fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.4.15.0-65-generic.properties
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking for binary fontconfig file : 
/gnu/store/vpily8s5ad5ryb27p88mxprs5xv3m0vm-openjdk-11.28-jdk/lib/fontconfig.4.15.0-65-generic.bfc
Nov 30, 2019 11:34:08 PM sun.awt.FontConfiguration findImpl
INFO: Looking 

Re: Java fontconfig issues

2019-11-28 Thread Björn Höfling
Hi Jonathan,

On Sat, 16 Nov 2019 11:57:24 -0500
Jonathan Frederickson  wrote:

> I've been trying to run PCGen
> (https://github.com/PCGen/pcgen/releases) on my laptop running Guix
> System, so far without success. I know that ideally all software would
> be installed through Guix itself, but this thing is a Java app with
> several dependencies that aren't in Guix yet and... honestly, right at
> this moment, I'd be fine with running the jar directly for now.
> 
> However, when attempting to run this Jar with openjdk installed, I get
> a null pointer exception related to some font configuration code. This
> seems related to an issue on the AdoptOpenJDK repos[0], which was
> solved in that case by installing the fontconfig package (on a Debian
> install in their case). However, installing fontconfig into my profile
> in Guix hasn't done the trick. There's a workaround mentioned
> involving creating a fontconfig.properties file in JAVA_HOME, but
> setting that as an environment variable didn't seem to do the trick
> either.
> 
> While the specific application I'm focusing on is PCGen, this seems to
> affect graphical Java applications in general; I tested with a
> generic JAR build of Jitsi and ran into the same issue.
> 
> Can anyone familiar with Java provide some assistance in tracking down
> this problem?
> 
> https://github.com/AdoptOpenJDK/openjdk-build/issues/693

I found that error too in ProjectLibre and even in Tomcat, which is not
"graphical", but just uses fonts.

Here is a very small program to trigger the error:

import java.awt.*;

public class Main {

public static void main(String[] args)
{
String fonts[] =

GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();

for ( int i = 0; i < fonts.length; i++ )
{
System.out.println(fonts[i]);
}
}
}

(I think I have that snipped from the AdoptOpenJDK-Bug, not 100% sure).

If I enter a Guix-Container with OpenJDK 12 or 11 (not tried 10,9),
compile and run it, it will fail (you need to compile new for each
version because of different target versions) with the
NullPointerException. As you mentioned, even adding fontconfig to that
environment does not help.

It works with JDK 8 though, provided through the icedtea@3 package. If
your Java program still works with Java 8, that might be a workaround
for you.

Here are the specific environments I tried:

guix environment -C  --share=/tmp/.X11-unix --ad-hoc coreutils less grep 
findutils ant which icedtea@3:jdk
guix environment -C  --share=/tmp/.X11-unix --ad-hoc coreutils less grep 
findutils ant which openjdk@12:jdk
guix environment -C  --share=/tmp/.X11-unix --ad-hoc coreutils less grep 
findutils ant which openjdk@11:jdk


In each, I called these commands:

$ javac Main.java
$ java -cp . Main

I see that fontconfig is a reference of both icedtea and openjdk:

$ guix gc --references 
/gnu/store/05flqf4bqwwj4zwl2vqiqg0dlb1alzm8-icedtea-3.7.0-jdk | grep font
/gnu/store/rkq6ipys8hf5hw66jkzzw4nfr6ncq96a-fontconfig-2.13.1

$ guix gc --references 
/gnu/store/wsl1wy131kgnvlyaiv4hz6a6ysavkcr8-openjdk-12.33-jdk/ | grep font
/gnu/store/rkq6ipys8hf5hw66jkzzw4nfr6ncq96a-fontconfig-2.13.1


It looks like having the reference is not enough.

Going from the AdoptOpenJDK bug to

https://github.com/docker-library/openjdk/issues/46

leads to a bug report at debian's site:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=793210

They talked about different configure flags in there icedtea package
and they have a fix for their JDK package.

Here my time is out for now and my next free time slot might come only
in two weeks. So, if someone else wants to look into this any earlier,
I don't mind :-)

Björn





pgp4rXF9AThaM.pgp
Description: OpenPGP digital signature


Re: docker-compose not work

2019-06-18 Thread Björn Höfling
On Mon, 17 Jun 2019 03:27:30 +0200
Tobias Geerinckx-Rice  wrote:

> Edison,
> 
> Edison Ibáñez wrote:
> > I have tried to update the package as you can see in the paste
> >
> > https://bin.disroot.org/?d21a1c74236d7ebd#FlZ2iQxLIkrclC1O45wr7YuUI5bjBcjStwc710J6TWo=
> >
> > but I still have the same error.  

Tobias, thanks for fixing this. I merged and closed the bugs 36256
35779.

Further note: The current docker_compose cannot use jsonschema 3.x, it
must use 2.x. There is a bug-report and a pull-request about that, so
it is expected to be compatible with the 3.x version soon:

https://github.com/docker/compose/issues/6347

https://github.com/docker/compose/pull/6631

Björn



pgpMsQVZeUpUI.pgp
Description: OpenPGP digital signature


Re: Guix packaging tutorial with hand holding

2019-05-30 Thread Björn Höfling
Hello 白い熊,

I can also recommend the new Guix tutorial videos.

They are currently located here:

https://archive.org/details/guix-videos

(When finalized, they should move to a GNU website.)

I especially recommend the "packaging" videos, where a setup from git
is shown. It is doing things step-by-step. If you are then stuck with
any problem, you might also like to ask for help on IRC.

Björn


pgpCTkhicQqtt.pgp
Description: OpenPGP digital signature


Re: FreeTube

2019-05-01 Thread Björn Höfling
On Tue, 30 Apr 2019 20:34:17 +0200
Tobias Geerinckx-Rice  wrote:

> Dexter Morgan wrote:
> > OMG! Can someone please please pack this into Guix.  
> 
> I'd invite you to give it a try yourself, but I have disappointing 
> news.  NPM programmes are a nightmare to properly package and we 
> currently don't even have npm itself in Guix.

I wonder how this gets into FSF directory when there is no way to
bootstrap that on a free distro.

Guix has the youtube-dl package, you can use that directly to download
the videos and watch them offline.

Björn


pgpnStfEcrWNf.pgp
Description: OpenPGP digital signature


Re: paps not found after migrating VM

2019-04-24 Thread Björn Höfling
On Wed, 24 Apr 2019 15:05:19 -0300
Laura Lazzati  wrote:

> /build-video.sh
> Entering a Guix container to build the videos.
> Available packages in the container: paps make imagemagick guile
> ffmpeg inkscape coreutils findutils cairo-xcb
> guix environment: error: paps: unknown package
> 
> Paps is installed. Here I show the output of 'which paps' 'guix
> --version' and 'guix package -I'
> 
> New VM that doesn't work:
> <---starts here
> ->  
> guix --version
> guix (GNU Guix) 0.16.0
> Copyright (C) 2018 the Guix authors

I wonder about the version. It should be 0.16.0 only after
installation. Did you ever do a 'guix pull'?

If you did pull, then you should have as version one of the latest
commit ids:

guix --version
guix (GNU Guix) e01bd1a67447c1f2a2b5b03e8ea8fbbccd2cd5bd
Copyright (C) 2019 the Guix authors

Compare also the copyright year!

paps was added this year, on: 2019-01-05 

If after a guix pull you still see the wrong guix version, maybe
something in your PATH is pointing to the wrong guix?

Look at `which guix`, it should be somehting like:

/home/user/.config/guix/current/bin/guix

Björn


pgpCqL3W6MK5h.pgp
Description: OpenPGP digital signature


Re: Does your printer work with Guix System? Please share!

2019-04-06 Thread Björn Höfling
Hi Chris,

thanks for sharing this information with us.

On Sat, 30 Mar 2019 23:30:52
-0700 Chris Marusich  wrote:

> I also noticed that for each printer with a scanner, sane-find-scanner
> was able to find the scanner, but simple-scan and scanimage said they
> couldn't find the scanner, even when I ran them as root.  Maybe I
> configured it incorrectly?  I wasn't able to scan at all.

I'm on Ubuntu+Guix, using simple-scan from the Guix package. When I run
it from within i3, I see only one scanner I once used at a friend, I
don't see my home-scanner. Only when I use XFCE, I see my scanner.
Haven't figured out who's fault it is.

sane-find-scanners doesn't find the scanner, but when I read the man
page of it, no wonders: The scanner is network-connected and the manual
says it will scan for USB and SCSI scanners.
 
> Anyway, my quest for a printer continues.  I'll let you know if and
> when I find "The One"!  As always, if anyone has more info to share,
> please do.

I'm excited to read the follow-ups :-)

Björn


pgpiOqT9Swcvx.pgp
Description: OpenPGP digital signature


Re: [video repo] when making videos inside container images break

2019-03-05 Thread Björn Höfling
On Sun, 3 Mar 2019 20:30:51 +0100
Gábor Boskovits  wrote:


> Then I looked around the package definition of inkscape, where I found
> no sign of cairo...
> 
> I tried adding it to the container, and it seems to be working fine
> here.

Hi Gábor,

thank you for that analysis! Do you think it would make sense to add
cairo as as inputs or propagated-inputs for inkscape?

Björn


pgpbABIRiki5m.pgp
Description: OpenPGP digital signature


Re: Prevent guix gc from removing *grub.cfg under /gnu/store/

2019-02-19 Thread Björn Höfling
On Tue, 19 Feb 2019 18:15:34 +
"Raghav Gururajan"  wrote:

> Hi Guix!
> 
> Since my BIOS comes with in-built grub payload, I did not want to
> install bootloader on disk (but do want grub.cfg file
> under /gnu/store/), so I passed --no-bootloader parameter during guix
> system init. The guix system got successfully instantiated and there
> was *grub.cfg file under /gnu/store/. The file stayed even after
> multiple reboot, guix pull and guix package -u. But when I did guix
> gc, it removed the *grub.cfg file under /gnu/store/. How can I
> prevent this from happening? Since I am a novice user, please provide
> me step-wise explanation.

Hi,

I'm not 100% sure that what you are doing is correct in the Guix-sense.
Anyway, what's important is that you never delete from the /gnu/store
manually, always use guix gc, as you did.

To prevent things in the store from garbage collection, you can use the
additional build parameter "--root=file", see here:

https://www.gnu.org/software/guix/manual/en/guix.html#Additional-Build-Options

i.e. guix build ... --root=/home/me/my-gc-root

That would prevent the gc to remove that file, as long as that created
link points to the store entry.

Hope this helps,

Björn


pgp_ijFGgMqq6.pgp
Description: OpenPGP digital signature


Re: Error building cdrtools and dvd+rw-tools

2019-02-05 Thread Björn Höfling
On Tue, 5 Feb 2019 20:49:35 +0100
Andreas Enge  wrote:

> I cannot reproduce this; could it be some non-determinism in the build
> process? Both packages build without problem for me with commit
> 406ef442580e6a1b68ca99091fef2935dc4fbb4f .

I can confirm it is indeterministically failing: I tried it a week ago
or so and sometimes it builds and sometimes not.

For example, the latest Hydra evaluations fails:

https://hydra.gnu.org/build/3346840

I don't understand the error-log or which of these messages is a real
error and which not. Anyone else?

Björn


pgpGfad6QfDnH.pgp
Description: OpenPGP digital signature


Re: rolling back only a single package

2018-12-28 Thread Björn Höfling
Hi cdelia,

On Thu, 27 Dec 2018 16:52:23 -0300
cde...@dc.uba.ar wrote:

> Hi,
> 
> I upgraded guix a couple of days ago, installed some things and now I 
> found that xmobar just keeps segfaulting.
> 
> Switching to specific generation it's really cool, but in this case 
> would "uninstall" all the software that it's between the 
> update-generation and the current one.
> 
> So, there is any way to just downgrade a single package (resolving it 
> dependencies) with out doing a full switch?
> 
> I guess this it's connected to 
> https://lists.gnu.org/archive/html/help-guix/2016-08/msg00028.html
> 
> And I could also switch and then manually re install. But maybe there
> is a standard or automatic way to do it.


There is a nice blog post by Ludivic that describes some aspects of it:

https://www.gnu.org/software/guix/blog/2018/multi-dimensional-transactions-and-rollbacks-oh-my/

It looks like the inferior thing he mentioned is already ready, but I
haven't yet followed that.

Ludo, can you say something about that?

Doing it the way described in the post I can downgrade (in my case I use
youtube-dl as the package I want to downgrade, as this is in my
profile):

The trick is to work with the generations of "guix pull".

$ guix package --list-generations
Generation 122  Dec 15 2018 16:36:58
 + youtube-dl   2018.11.07  out /gnu/store/20wr2z2qnm36mwcdmmzpsvr9f4899
 - youtube-dl   2018.09.18  out /gnu/store/h7xdi93gag6r9agp5ivppignh4q0k

$ guix pull --list-generations
Generation 28   Nov 07 2018 20:38:34
  guix 91b71cf
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 91b71cfbba03ea484cc6028b3384bf4609cbcf14
[..]
Generation 29   Nov 13 2018 18:38:56
  guix d540137
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: d5401375099f6e4562b849121265bb1c3e85874f
  65 packages upgraded: certbot@0.28.0, crossguid@0.0-2.fef89a4,
[..]
wxmaxima@18.10.1, youtube-dl@2018.11.07

You see here, I did update my "guix-pull" generation on 13 November
that introduced the new youtube-dl version but did update my "guix
package" profile only on 15 December.

Now I need to use the guix from from generation 28, if I want do
downgrade my youtube-dl:


$ /var/guix/profiles/per-user/bjoern/current-guix-28-link/bin/guix
--version
guix (GNU Guix) 91b71cfbba03ea484cc6028b3384bf4609cbcf14

OK, this is really the right version, compared to the above generations
of "guix pull".

Then let's downgrade:

$ /var/guix/profiles/per-user/bjoern/current-guix-28-link/bin/guix
package -i youtube-dl
The following package will be downgraded:
   youtube-dl   2018.11.07 -> 2018.11.03
/gnu/store/vw375z5hm4vha0pvfxmadh6qcglacq9g-youtube-dl-2018.11.03

Check it out:
$ guix package --list-generations
Generation 125  Dec 28 2018 14:02:08(current)
 + youtube-dl   2018.11.03  out /gnu/store/vw375z5hm4vha0pvfxmadh6qcglac
 - youtube-dl   2018.11.07  out /gnu/store/20wr2z2qnm36mwcdmmzpsvr9f4899

~$ youtube-dl --version
2018.11.03

OK, I'm rolling back, as I don't want to downgrade:

$ guix package --roll-back
switched from generation 125 to 124

$ youtube-dl --version
2018.11.07

Is that what you are looking for?

Björn

PS: Can you help fixing the problem with xmobar?


pgpX4ZgY8OHz1.pgp
Description: OpenPGP digital signature


Re: Enjoying GuixSD

2018-11-10 Thread Björn Höfling
On Fri, 09 Nov 2018 15:18:00 -0600
Brett Gilio  wrote:

> Brian Woodcox writes:
> > P.S.  If anyone feels energetic and has the time, it would be nice
> > to have a recipe to install the VirtualBox Guest Additions into
> > GuixSD. Then I can get copy and paste to work. :)  
> 
> I am thrilled you are having as good of a time with GuixSD as I am. It
> is a truly tremendous system, and I have found virtually no
> limitations.
> 
> Somebody may have to correct me on this, but I believe VirtualBox's
> Guest Additions have a freedom issue, so you will be unlikely to find
> a recipe to get it packaged for installation. I apologize on that
> front, however I do recommend you use QEMU instead if possible in
> KVM, that way you can use the fully free VirtIO bundle for
> acceleration and achieving full screen with proper resolution and so

I don't know exactly. But I also have that feeling that there was some
freedom issue with the guest additions. 

I'm working over SSH for that purpose: What I'm doing is adding an SSH
service to my GuixSD-VM-config, having the SSH port being
opened/redirected, setting up an SSH-key and having an alias in my
~/.ssh/config:

Host g64
HostName localhost
Port 
User bjoern

In that way I can quickly, passwordless login via "ssh g64" into my
GuixSD x86_64 machine and have the usual copy/paste from my host system.
For files/longer pastes I can use "scp local-file g64:~".

Björn


pgphu0ZZdkGaF.pgp
Description: OpenPGP digital signature


Understanding Cuirass

2018-11-08 Thread Björn Höfling
Hi,

I want to give Cuirass a try but I don't understand it (For the
reference: talking about version 0.0.1-21.0b40dca). From the
doc/curiass.texi I copy this snipped of a specification:


 '((#:name . "foo-master")
   (#:load-path-inputs . ("guix"))
   (#:package-path-inputs . ("packages"))
   (#:proc-input . "conf")
   (#:proc-file . "drv-list.scm")
   (#:proc . cuirass-jobs)
   (#:proc-args (subset . "foo"))
   (#:inputs . (((#:name . "guix")
 (#:url . "git://git.savannah.gnu.org/guix.git")
 (#:load-path . ".")
 (#:branch . "master")
 (#:no-compile? . #t))
((#:name . "conf")
 (#:url . "git://my-personal-conf.git")
 (#:load-path . ".")
 (#:branch . "master")
 (#:no-compile? . #t))

* What should the procedure #:proc return?
* What is the format of #:proc-args? Must this be an assoc-list or can
it be just anything?
* How is that used? Is it always the second parameter to the proc?
* And is the first one always a reference to the store?

In earlier examples like [0], the #:proc-file (then called #:file)
could be a plain file lying around. Now it looks like it must be
relative to one of its inputs, which is referenced by #:proc-input. Is
this right? Is the old variant still possible?

What forms can the inputs have? The documentation says it must always
be git (either git:// or smart HTTPS). In examples/random.scm I saw
also the form "file://", but when I tried it I got some error message
(can't remember which one exactly). Is this allowed?


Am I right that besides from an example this is underdocumented, or did
I miss something?

Björn

[0] https://lists.gnu.org/archive/html/guix-devel/2017-03/msg00222.html



pgplBRNVPXHOT.pgp
Description: OpenPGP digital signature


Re: Package Install Question for New User

2018-11-05 Thread Björn Höfling
On Mon, 5 Nov 2018 09:33:22 -0700
Brian Woodcox  wrote:

> All of a sudden the system is downloading and compiling a pile of
> packages that were already installed as root.
> 
> Is there a way to have guix use the packages that were installed in
> the root account instead of downloading and rebuilding gcc, etc?

Hi Brian,

store item will be reused. But only if they are really the same.

I guess that users root and noobie have two different states of "guix
pull": For example noobie did the pull two days later and there was
some commit to gcc or one of its dependencies. Then it is no longer the
"same" gcc (even if the version number is the same) and will be
redownloaded/rebuilt.

To cope with that, first pull for the first user, say root. Then use
"guix --version" or better "guix describe" to see the commit on which
you are on.

Then with the second user, use "guix pull
--commit=". Then both users are "in sync" and if you
install the same packages it is just a matter of updating the user's
profile.

Björn


pgpZDRKU16gLQ.pgp
Description: OpenPGP digital signature


Re: Build failure on nss-3.36.1

2018-11-04 Thread Björn Höfling
On Sat, 3 Nov 2018 21:46:02 -0600
Brian Woodcox  wrote:

> Hi Björn,
> 
> You nailed it.
> 
> Of course, I am not too certain how to use the guix git-checkout
> command.
> 
> Do you or anyone else have an example of how you would build this
> after downloading it?
> 
>   I’ve done a bit of search, but have not come up with much.
> 
> Thanks
> 

Hi Brian,

its described in section "7 Contributing" of the manual:

https://www.gnu.org/software/guix/manual/en/guix.html#Contributing

Please refer to the manual for full details, I will show here in short
out of my head, errors/typos might be included:

git clone https://...guix.gt

cd git

# Now you need to enter an enviromnent where guix' build tools are
# available. You could install everything yourself in a foreign distro
# or via guix package -i ..., but Guix knows it best, so just do a:

guix environment guix

# Next you need to bootstrap and build:

./bootstrap
./configure --localstatedir=/var
make

# Now search source file:
guix package -s "^nss$"
name: nss
version: 3.39
outputs: out bin
systems: x86_64-linux i686-linux armhf-linux aarch64-linux mips64el-linux
dependencies: nspr@4.20 perl@5.26.1 sqlite@3.23.0 zlib@1.2.11
location: gnu/packages/gnuzilla.scm:364:2
[..]

# edit it:

emacs gnu/packages/gnuzilla.scm

#[could also call "guix edit nss" directly]

(arguments
 `(#:parallel-build? #f ; not supported
;; Add this line to arguments:
   #:tests? #f
   #:make-flags
;; Remove this:  (replace 'check ...)

Now run guix from source:

./pre-inst-env guix build nss

Then do whatever you want to from there:

./pre-inst-env guix install ...
./pre-inst-env guix system ...

Note: It is not enough to just build/install nss from here and then go
on with the "normal" guix: Because you changed nss, all dependencies
need to be built too.

And that is basically the world:

./pre-inst-env guix refresh -l nss

Building the following 3119 packages would ensure 8553 dependent packages are 
rebuilt:

So, not sure if that helps you here...

Björn



pgplfYlp7bfXW.pgp
Description: OpenPGP digital signature


Re: Build failure on nss-3.36.1

2018-11-03 Thread Björn Höfling
Hi,

On Sat, 3 Nov 2018 11:28:26 -0600
Brian Woodcox  wrote:

> I’m getting a build failure when building nss-3.36.1.
> 
> I have the entire log.  Here is the end part of it.
> 
> Any ideas?

This package does not build reproducibly. At least in the long term:
There are tests that check certificates on temporal validity and that
depends on the system time.

I can reproduce your result with the 3.39 version. It looks like one
certificate is expired. All 6 failing tests look about like this one:


s -d AllDB -pp   - PASSED
chains.sh: Verifying certificate(s)  PayPalEE.cert with flags -d AllDB -pp  
-o OID.2.16.840.1.114412.1.1 
vfychain -d AllDB -pp -vv  -o OID.2.16.840.1.114412.1.1  /tmp/guix-build-nss
-3.39.drv-0/nss-3.39/nss/tests/libpkix/certs/PayPalEE.cert 
Chain is bad!
PROBLEM WITH THE CERT CHAIN:
CERT 0. PayPalEE :
  ERROR -8181: Peer's Certificate has expired.
Returned value is 1, expected result is pass
chains.sh: #1555: RealCerts: Verifying certificate(s)  PayPalEE.cert with flags 
-d AllDB -pp  -o OID.2.16.840.1.114412.1.1  - FAILED


I don't know how to check the expiration date of PayPalEE.cert.

It looks like upstream has not yet worked on it, as the file was lastly
modified two years ago:

https://hg.mozilla.org/projects/nss/log/tip/tests/libpkix/certs/PayPalEE.cert

Cmp also this bug that demands non-expiration certificates:

https://bugzilla.mozilla.org/show_bug.cgi?id=1330010

Building 3.40 does not work with just updating version/hashsum.

A quick solution would be to build nss from a Guix git-checkout and
disable tests.

Björn


pgpERhsot5TaX.pgp
Description: OpenPGP digital signature


Re: Re Recent hydra.gnu.org maintenance window

2018-10-29 Thread Björn Höfling
Hi Nalin,

On Tue, 30 Oct 2018 00:37:29 +0530
Nalin Ranjan  wrote:

> It's just that I am not trying to upgrade Guix, but have been trying
> to unsuccessfully install GuixSD for the first time ever on my
> laptop. In the past week or so I have ran the command system init
> like 7-8 times,and every time it fails into 504(Gateway timeout), or
> Patch not found(may be 404), and couple of occasions SHA mismatch. I

In addition to what Gabor already said:

The 504 is possibly due to Hydra/Berlin not working.

The 404 could be a patch no longer existing on the net? Though I
thought we attach all patches directly to the packages?

But maybe it was not a patch but the package sources as such. That can
happen if you build from sources and they are gone. Unfortunately some
upstream maintainers don't let old sources stay on the server but only
the newest release.

Likewise the SHA mismatch could be because a tarball was updated
in-place. This problem also is the case with some github URLs.

If you get those 404s or SHA-mismatches again, you can try to recompile
a specific package with

guix build --no-substitutes 

and then concentrate on that specific package. You can then come back
with detailed log of just that package, then someone can investigate
and might update the package definition to reflect the changed world.

Björn




pgpXP8Yn7uiyo.pgp
Description: OpenPGP digital signature


Re: Can't log in: blank login screen after reconfigure

2018-10-21 Thread Björn Höfling
On Sat, 20 Oct 2018 12:21:51 -0700
Chris Marusich  wrote:

> Hi,
> 
> I recently ran "guix pull" and then "guix system reconfigure" on a
> GuixSD installation in a VirtualBox VM.  Since doing that, I can't log
> in.  While booting, everything proceeds as usual, with normal output,
> until the SLiM login screen is supposed to appear.  But instead of the
> SLiM login screen, I get a blank screen with a small white cursor in
> the upper left, and I can't log in.
> 
> Has anyone seen anything like this in the past?  Here are some
> observations I've made about the situation:
> 
> * GuixSD shuts down normally if I issue the "shutdown signal" from
>   VirtualBox.  This indicates the OS is actually still running.
> 
> * I waited over 8 hours, and the login screen did not appear.
> 
> * I tried blind-typing my user name and password, but the blank screen
>   remained.
> 
> * When I boot from the previous system generation, there is no
> problem.
> 
> * When I replace SLiM with SDDM in my OS configuration and
> reconfigure, the same problem occurs.
> 
> * However, one time only, while trying to boot using SDDM instead of
>   SLiM, I got to the SDDM login screen.  But when I typed in my
> username and password and hit enter, I received the same blank screen
> as before and ultimately could not log in.  Every other time I've
> booted the VM, I didn't even get to the SDDM login screen, so I don't
> know why I was able to reach the login screen that one time.
> 
> * I tried pressing control+alt+F2 etc. to switch to different virtual
>   tty, but it didn't work.  The blank screen remained.
> 
> * I examined various system logs, but I could not find anything that
>   jumped out at me as causing the problem.  It's entirely possible I
>   missed something important, though; I just checked a few places.
> 
> There is more that I could try - for example, I could try starting an
> ssh server in my VM and logging in that way.  I could also try
> drilling deeper into the X server logs, since that seems like the
> obvious next step, since the problem occurs for both SDDM and SLiM.
> I could also try reinstalling GuixSD in a new VM.  But I haven't
> tried any of this yet due to lack of time.
> 
> If anyone has any advice or has seen this before, please let me know.
> Thank you!
> 

Hi Chris,

to be honest, I have no idea what SlimD and SDDM is.

I'm using a configuration containing a %desktop-services with
xfce-desktop-service added.

I just guix pulled, guix system reconfigured and be on:

2c17bd7b2955beef4130d11b33e07e4fb3b234dc

and it works for me, I see a login, can login, XFCE is working
afterwords.

If I can try out anything specific for you, let me know.

Björn




pgp4HrRXIl2dU.pgp
Description: OpenPGP digital signature


Re: many similar builds

2018-10-09 Thread Björn Höfling
On Tue, 9 Oct 2018 20:34:28 +0200
Marco van Hulten  wrote:

> $ md5sum /gnu/store/*-xeyes-*/bin/xeyes
> e17c8aab7cdeedb763601288b6eb0c43  
> /gnu/store/3syyc8yvyymnwsada0kgm1jmc83232c8-xeyes-1.1.2/bin/xeyes
> f44bf885477a110f7d0ee7b3524b978a  
> /gnu/store/j0ycra947a0y3d3c9afms7sjlykis629-xeyes-1.1.2/bin/xeyes
> $ ls -l /gnu/store/*-atril-*/bin/atril
> -r-xr-xr-x 2 root root 1226 Jan  1
> 1970 /gnu/store/01j2hg31cv41a0fb19h1wvmn7dzxlv8s-atril-1.18.1/bin/atril
> -r-xr-xr-x 2 root root 1226 Jan  1
> 1970 /gnu/store/1qsm3qmiqc84p8yakbxvyccjbg64ak7z-atril-1.18.1/bin/atril
> -r-xr-xr-x 2 root root 1226 Jan  1
> 1970 /gnu/store/30syxb0vqbcc0zap47mhxlswmhq0w2vw-atril-1.18.1/bin/atril
> -r-xr-xr-x 2 root root 1226 Jan  1
> 1970 /gnu/store/3b95dhdrkyhbw3bijzy9phd34bq32nnq-atril-1.18.1/bin/atril
> ...
> 
> and many more, and 14 different «same-version» installations for
> brasero.  Does this mean that it is just very difficult to get
> reproducible builds?


To add to the already given answers: The store is deduplicated (if that
feature is not explicitly disabled): If two files share the same
content, they are stored only once on hard disk and a hard link points
to that same inode. See here:

I have 21 copies of icedtea-3.7.0 in my store:

$ ls /gnu/store/*icedtea-3.7.0/bin/java -d | wc
 21  211407

But if I look at the java command in there, I see it has only two different
ones, with inode count 17 and 24 (first column after permissions):

ls -l /gnu/store/*icedtea-3.7.0/bin/java -d


-r-xr-xr-x 17 root root  8344 Jan  1  1970 
/gnu/store/5737dyajx477kl9h0bi393ax0qb4vixc-icedtea-3.7.0/bin/java
-r-xr-xr-x 24 root root  8328 Jan  1  1970 
/gnu/store/9lg4136fwprf0fm5jjwd818zqsn2bqim-icedtea-3.7.0/bin/java
[...]

(Of cause 17 + 24 > 21, so there must be some bitwise-identical java
around in some other package)

And `du` tells me:

$ du -shc /gnu/store/*icedtea-3.7.0
114M/gnu/store/0s9z0prad24i9l6bjvzjf6agwgfmh1l8-icedtea-3.7.0
15M /gnu/store/2k3ixx4hfkb2nf8d9530phympalxb7bs-icedtea-3.7.0
[..]
186Mtotal

# With '-l' option to ignore hard links:
$ du -shcl /gnu/store/*icedtea-3.7.0
114M/gnu/store/0s9z0prad24i9l6bjvzjf6agwgfmh1l8-icedtea-3.7.0
[..]
2.4Gtotal

Wow, that's a space-saver! You don't have to worry to have all those
(nearly similar/totally similar) store entries around. I prefer to keep
them if I can, that saves me CPU-time whenever I build older commits
out of the Guix git repository.

Björn








pgpKq5vvCc2ei.pgp
Description: OpenPGP digital signature


Re: Frequent git repository corruptions

2018-09-29 Thread Björn Höfling
On Sat, 29 Sep 2018 14:50:37 +0200
Pierre Neidhardt  wrote:

> > You can build it manually for now¹ or download a precompiled
> > binary² and boot it from your existing GRUB's command line.  
> 
> Actually, how do you do that?
> 
> I copied the binary to `/memtest.bin` then rebooted and tried the
> following Grub command (my root partition is labelled "guixsd"):
> 
> --8<---cut here---start->8---
> search --label --set=root guixsd
> linux16 /memtest.bin
> --8<---cut here---end--->8---
> 
> Then grub complains, if I recall correctly:
> 
> --8<---cut here---start->8---
> error: premature end of file.
> --8<---cut here---end--->8---
> 
> Any idea?
> 

Do you have UEFI? I read that Memtest86+ does not work with (U)EFI,
only the commercial/free (as in beer) versions of Memtest86 work with
UEFI:

https://askubuntu.com/questions/917961/can-i-boot-memtest86-if-im-using-uefi

https://wiki.ubuntuusers.de/memtest/ (German)

Though that's just what I read, I have no further knowledge/experience
with it.

Björn


pgpBK7Rr7IztE.pgp
Description: OpenPGP digital signature


Re: GNU Icecat crashed tab

2018-09-27 Thread Björn Höfling
On Thu, 27 Sep 2018 05:30:43 +0200
nightowl  wrote:

> OK, I see the new version 60 now after running the 'guix pull'
> command. I tried running the 'guix package -u' command but does not
> do any upgrade.  I have the icecat package called out in my
> config.scm file, so I think I need to run the 'guix system
> reconfigure' command to make an upgrade to that package.  Does that
> make sense?  I will try this tomorrow and let you know if it upgrades
> ok and if it fixes the tab crash problem.

If you have the package in your system definition, that is exactly what
you have to do.

Björn


pgppHT_EL7H1C.pgp
Description: OpenPGP digital signature


Re: backup questions

2018-08-19 Thread Björn Höfling
Hi Ben,

On Tue, 7 Aug 2018 01:57:08 +0200
Björn Höfling  wrote:

> Hi Ben,
> 
> On Mon, 06 Aug 2018 16:05:28 -0600
> Benjamin Slade  wrote:
> 
> > Two question relating to backup:
> >   
> 
> [..]
> 
> > 2) I don't seem to be able to install `libchip` (for chop-backup).
> > It seems to have no substitute binaries and the local build fails.
> > I've fallen back to using Borg backup for now (which seems good,
> > but more fragile than I'd like, especially in terms of setting up
> > automated bash scripts).  
> 
> 
> This build fails since nearly two years! It seams like nobody is using
> (and thus complaining) this software:
> 
> 
> https://hydra.gnu.org/job/gnu/master/libchop-0.5.2.x86_64-linux/all
> 
> I opened a bug for this:
> 
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=32382
> 
> Thanks for reporting. Do you have an idea on how to fix it?
> 
> Björn


Ludovic fixed the package, so if you do a 

guix pull && guix package -i libchop

it should be working now.

But he also wrote that libchop is unmaintained (and what I didn't know:
he's the author :-)).

Björn


pgpKiI87T7gaV.pgp
Description: OpenPGP digital signature


Re: contributing to Guix and learning Guix

2018-08-14 Thread Björn Höfling
On Sat, 11 Aug 2018 10:40:43 -0700
Quiliro Ordonez  wrote:

> Hello and congratulations for this great project from the ethical and
> from the functional aspects of this work :-).
> 
> I am interested in learning Guix in order to help myself install Guix,
> repair problems and to add packages which I need into the repository.
> Sometimes learning has been slow for me because I have not been able
> to find the information or the information that I have found has been
> too difficult to understand for my level of knowledge.
> 
> The project needs contribution on: project management, art,
> documentation, packaging, programming, system administration,
> testing/reporting, translation as per
> https://www.gnu.org/software/guix/contribute/ . Users need help with
> installation, reporting/repairing errors, packaging.
> 
> I think it would be very useful for Guix users and for the Guix
> project to feed the help users can provide the project with the help
> that other users and the docs can give them. Is there a web page
> which will guide users in the process of solving their issues and by
> the way contributing to Guix? If there is not and is considered
> useful, I could contribute on this or on whatever could be suggested.
> 
> Ĝis revido,
> Quiliro

Hi Quiliro,

I don't exactly understand what you want to say. Hope this answers a
bit: 

I think the best way to learn how to contribute to Guix is via
packaging one of your favourite packages. Depending on once choice,
this can be a quite easy task with just hitting the importer or
unfortunately can be quite tedious and frustrating, if the package does
not compile, needs patches, has dependencies not yet in Guix, etc.

The mailing lists and IRC channel is always open for concrete questions.

In the documentation there is a section about contributing,
especially submitting patches:

https://www.gnu.org/software/guix/manual/en/guix.html#Submitting-Patches

There are also two debbugs ("Debian bugs", that's the name of the
software) bug trackers for open issues. Here people can find open
issues, ranging from hard Guix internals to easy package reviews:

One for bugs:

https://debbugs.gnu.org/cgi/pkgreport.cgi?pkg=guix

And the other one for patches waiting for reviews:

https://debbugs.gnu.org/cgi/pkgreport.cgi?pkg=guix-patches

Björn


pgppdTdj8A9gx.pgp
Description: OpenPGP digital signature


Output of guix build --check foo is not part of store deduplication

2018-08-09 Thread Björn Höfling
Is there any reason why the output of 'guix build --check ...' is not
part of deduplication? I will explain my problem:

When checking for (un)reproducibility, we use something like:

guix build --check -K foo

That will build the package foo again and produce a store output

/gnu/store/hash..-foo-1.0.0-check

You can then use diffoscope to view the difference between the old and
the new '-check' output.

Usually, the store gets deduplicated, i.e. if files bar and baz have
the same content, they will hard-link to the same thing on disk. That's
cool for saving space if for example some package get's updated because
of a changed dependency but really there is no or little change to the
output files.

But the '-check' files are somehow not part of that deduplication. Even
if you enforce deduplication with guix gc --optimize. You can see it
like this:

ls -l  
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2-check/share/man/man3/shishi_asreq.3.gz
 
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2/share/man/man3/shishi_asreq.3.gz
 
-r--r--r--  1 root root 624 Jan  1  1970 
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2-check/share/man/man3/shishi_asreq.3.gz
-r--r--r-- 11 root root 624 Jan  1  1970 
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2/share/man/man3/shishi_asreq.3.gz

ls -i  
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2-check/share/man/man3/shishi_asreq.3.gz
 
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2/share/man/man3/shishi_asreq.3.gz
 
46161304 
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2-check/share/man/man3/shishi_asreq.3.gz
45141642 
/gnu/store/zlxarsbwwkasy69cyv34jvzi7bgmajxz-shishi-1.0.2/share/man/man3/shishi_asreq.3.gz

The '-check' output has only one link count and the actual output has
11 links, because I have already so many store items/generations of
that package around. The inode differs.

If you now diffoscope them, diffoscope will call stat and then we get
diffs like:

│ │   --- 
/gnu/store/h63cx6akyrv3m73lky585ba10qq3mydc-libchop-0.5.2/share/info/libchop.info.gz
│ │ ├── +++ 
/gnu/store/h63cx6akyrv3m73lky585ba10qq3mydc-libchop-0.5.2-check/share/info/libchop.info.gz
│ │ │ ├── /gnu/store/as7vb5xx7vqdwmmqj9543470r49b4c0c-coreutils-8.28/bin/stat {}
│ │ │ │ @@ -1,8 +1,8 @@
│ │ │ │  
│ │ │ │Size: 29524  Blocks: 64 IO Block: 4096   regular file
│ │ │ │ -Links: 3
│ │ │ │ +Links: 1


This is annoying because it hides the actual unreproducibility-problem. 
Is there any reason for that?


At least, I found a very guixy way around it:

There's a patch by Eelco to filter those Links out:

https://github.com/edolstra/diffoscope/commit/367f77bba8df0dbc89e63c9f66f05736adf5ec59

(with copy/paste errors):

 diffoscope/comparators/directory.py
@@ -47,14 +47,18 @@ def cmdline(self):
FILE_RE = re.compile(r'^\s*File:.*$')
DEVICE_RE = re.compile(r'Device: [0-9a-f]+h/[0-9]+d')
+   LINKS_RE = re.compile(r'Links: [0-9]+')
ACCESS_TIME_RE = re.compile(r'^Access: [0-9]{4}-[0-9]{2}-[0-9]{2}.*$')
CHANGE_TIME_RE = re.compile(r'^Change: [0-9]{4}-[0-9]{2}-[0-9]{2}.*$')
def filter(self, line):
line = line.decode('utf-8')
line = Stat.FILE_RE.sub('', line)
line = Stat.DEVICE_RE.sub('', line)
line = Stat.INODE_RE.sub('', line)
+   line = Stat.LINKS_RE.sub('', line)
line = Stat.ACCESS_TIME_RE.sub('', line)
line = Stat.CHANGE_TIME_RE.sub('', line)
return line.encode('utf-8')


So, I did:

guix build -S diffoscope

to get the source tarball, unpacked the sources. Patched. Packed. Then:

guix package -i diffoscope --with-source=diffoscope-96.tar.gz

and have a Links-free version of diffoscope in my profile (If I would
have thought about that earlier, I would have done it in a separate
profile and not in my main one)!

Björn






pgpQvmIp94Z2B.pgp
Description: OpenPGP digital signature


Re: backup questions

2018-08-06 Thread Björn Höfling
Hi Ben,

On Mon, 06 Aug 2018 16:05:28 -0600
Benjamin Slade  wrote:

> Two question relating to backup:
> 

[..]

> 2) I don't seem to be able to install `libchip` (for chop-backup). It
> seems to have no substitute binaries and the local build fails.  I've
> fallen back to using Borg backup for now (which seems good, but more
> fragile than I'd like, especially in terms of setting up automated
> bash scripts).


This build fails since nearly two years! It seams like nobody is using
(and thus complaining) this software:


https://hydra.gnu.org/job/gnu/master/libchop-0.5.2.x86_64-linux/all

I opened a bug for this:

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=32382

Thanks for reporting. Do you have an idea on how to fix it?

Björn




pgpxj0sUWoAPd.pgp
Description: OpenPGP digital signature


Re: Unreproducible packages visibility

2018-07-20 Thread Björn Höfling
On Fri, 20 Jul 2018 12:08:24 -0300
EuAndreh  wrote:

> Hello Guix!
> 
> I know that making all packages reproducible is a current ongoing
> effort, and I've seen a few bug reports in debbugs about specific
> unreproducible packages.
> 
> Is there a way to know about all unreproducible packages? Something
> similar to how Debian reports[0] it's packages.
> 
> [0]: https://tests.reproducible-builds.org/debian/reproducible.html

https://www.gnu.org/software/guix/packages/reproducibility.html

But it is out-of-date since nearly a year. Who knows more about that
page? Ludo?

Björn


pgpiLoVuFUu9e.pgp
Description: OpenPGP digital signature


Re: gst-plugins-base: Test suite failed: FAIL: elements/opus

2018-07-20 Thread Björn Höfling
On Fri, 20 Jul 2018 14:44:19 -0400
Leo Famulari  wrote:

> On Wed, Jun 20, 2018 at 12:36:18PM -0400, Leo Famulari wrote:
> > Okay, are you able to send a patch to disable the test and report
> > this issue upstream?  
> 
> Did this bug ever get reported upstream?

At least there is a 1.14.2 out:

https://gstreamer.freedesktop.org/releases/1.14/#1.14.2

Bit I don't get this problem:

Hydra can build:

https://hydra.gnu.org/job/gnu/master/gst-plugins-base-1.14.1.x86_64-linux/all

Locally I can build:

$>guix --version
guix (GNU Guix) 208df8ba8ab1999525310e8f2bf82b03350523c2

$>guix build gst-plugins-base --check
[..]

phase `reset-gzip-timestamps' succeeded after 0.0 seconds
starting phase `compress-documentation'
compressing documentation in 
'/gnu/store/g3iwkhs7sjrhsaqq3bwmj81mxsa5c3d1-gst-plugins-base-1.14.1/share/man' 
with "gzip" and flags ("--best" "--no-name")
phase `compress-documentation' succeeded after 0.0 seconds
/gnu/store/58i3gmidcbksf7cxwhfjrp2w22k6glqa-gst-plugins-base-1.14.1-doc
/gnu/store/g3iwkhs7sjrhsaqq3bwmj81mxsa5c3d1-gst-plugins-base-1.14.1


But this one fails:

$>guix packge -i wine

FAIL: elements/opus
===

Running suite(s): opus
33%: Checks: 6, Failures: 0, Errors: 4
gstcheck.c:596:E:general:test_opus_encode_nothing:0: (after this point) 
Received signal 11 (Segmentation fault)
gstcheck.c:596:E:general:test_opus_encode_samples:0: (after this point) 
Received signal 11 (Segmentation fault)
gstcheck.c:596:E:general:test_opus_encode_properties:0: (after this point) 
Received signal 11 (Segmentation fault)
elements/opus.c:429:E:general:test_opus_decode_plc_timestamps_with_fec:0: 
(after this point) Received signal 11 (Segmentation fault)
Check suite opus ran in 1.356s (tests failed: 4)
FAIL elements/opus (exit status: 4)

Backtrace:
   4 (primitive-load "/gnu/store/ki3kvmzipvf8baabfyaw1ncf4ax…")
In ice-9/eval.scm:
   191:35  3 (_ _)
In srfi/srfi-1.scm:
640:9  2 (for-each # …)
In 
/gnu/store/cgnrsi20mwcm1s3z9ab8qw125m73l4qd-module-import/guix/build/gnu-build-system.scm:
   799:31  1 (_ _)
369:6  0 (check #:target _ #:make-flags _ #:tests? _ # _ # _ # _)

/gnu/store/cgnrsi20mwcm1s3z9ab8qw125m73l4qd-module-import/guix/build/gnu-build-system.scm:369:6:
 In procedure check:
Throw to key `srfi-34' with args `(#)'.
builder for 
`/gnu/store/yrk539har2g5pw1rw5b9k8nq9p0w3c1h-gst-plugins-base-1.14.1.drv' 
failed with exit code 1
cannot build derivation 
`/gnu/store/h1m3fdqr7igb0k94zxlf9kw5rwhkmdyc-wine-3.0.2.drv': 1 dependencies 
couldn't be built
guix package: error: build failed: build of 
`/gnu/store/h1m3fdqr7igb0k94zxlf9kw5rwhkmdyc-wine-3.0.2.drv' failed


Björn


pgpmwLCSgcPqo.pgp
Description: OpenPGP digital signature


Re: system vm fails (reprise)

2018-03-20 Thread Björn Höfling
On Tue, 20 Mar 2018 11:54:54 +0100
l...@gnu.org (Ludovic Courtès) wrote:

> Catonano <caton...@gmail.com> skribis:
> 
> > 2018-03-16 23:20 GMT+01:00 Björn Höfling
> > <bjoern.hoefl...@bjoernhoefling.de> :
> >  
> >> On Fri, 16 Mar 2018 21:54:24 +0100
> >> Catonano <caton...@gmail.com> wrote:
> >>  
> >> > 2018-03-16 21:38 GMT+01:00 Marius Bakke <mba...@fastmail.com>:
> >> >  
> >> > > Catonano <caton...@gmail.com> writes:
> >> > >  
> >> > > > ~$ guix system vm ~/configs/vm-config-desktop.scm \  
> >> > > >>--image-size=10GB \
> >> > > >>--share=$HOME/transit=/transit  
> >> > > > guix system: error: build failed: error parsing derivation
> >> > > > `/gnu/store/dp8ywhh22n8ixikqdvsb6w6qbn4iw899-environment.drv':
> >> > > > expected string `Derive(['  
> 
> [...]
> 
> >> guix gc
> >> -d /gnu/store/dp8ywhh22n8ixikqdvsb6w6qbn4iw899-environment.drv
> >>
> >> And then start again with your `guix system vm ...`
> >>
> >>
> >> Björn
> >>  
> >
> >
> > After "guix gc" it works !!  
> 
> Looks like you had corrupt files, which is a bad sign.


Marius opened a bug for this one:

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30875

Björn



Re: A few questions about packages

2018-03-13 Thread Björn Höfling
On Wed, 14 Mar 2018 01:48:15 +0300
Jone  wrote:

> Björn wrote:
> 
> > I'm not sure if I understood you fully, I hope my answer is the
> > right one to your question.  
> 
> But I understood you.

OK, then it's fine :-)

 
> > Since a week or so we decided to invite people
> > also to write in their language and not only in English.  
> 
> Languages there is, but there is whether people..

Yes, for each language listed, there is one person within the
Guix group who speaks that language at a good level.

Björn



pgpGtU_JQXevl.pgp
Description: OpenPGP digital signature


Re: A few questions about packages

2018-03-13 Thread Björn Höfling
On Tue, 13 Mar 2018 22:15:35 +0300
Jone  wrote:

> I wrote a simple script:
> 
>   TRGT="*-gtk+-2.2*"
>   for i in $(ls -d /gnu/store/$TRGT/)
>   do
>   echo
>   echo "--> $i"
>   echo "$(guix gc --referrers $i | grep -v \.drv)"
>   done
> 
> Part of output:
> --> /gnu/store/595ydgdnkj9vdxr88dkscb0ws9rgjv0g-gtk+-2.24.31/  
> /gnu/store/595ydgdnkj9vdxr88dkscb0ws9rgjv0g-gtk+-2.24.31
> /gnu/store/6h7w5z60zqx6802qxd98wcmx1yrhnzy5-xfce4-appfinder-4.12.0
> /gnu/store/8vy4gnmb17xc3hiqjd1b5z28vfsn8jzq-gtk-im-modules
> /gnu/store/fi77qxlq9ga6rgl9gg1xfxkfw7vps2l3-gtk-im-modules
> /gnu/store/ggrwghpwyfwrmxb90aj846c3ydwprqvl-gtk-im-modules
> /gnu/store/miiv6rnlrhbjk34l1ga7v6ys1x6983q4-libxfce4ui-4.12.0
> /gnu/store/rki1c8z0v7crppym7qzqys894pikxljc-garcon-0.4.0

[..]

> --> /gnu/store/rbzlcg13vpabvj2sr6c67icd15wq0vhz-gtk+-2.24.31/  
> /gnu/store/16rwx833av4k48hk2diqj87mwsc457j3-gtk-im-modules
> /gnu/store/rbzlcg13vpabvj2sr6c67icd15wq0vhz-gtk+-2.24.31
> 
> 
> It is possible to draw a conclusion, that each application refers the
> SEPARATE version of library. What??? Somebody can explain it?

I also have a lot of those in my store, although I rarely do a guix gc.

Suppose you don't change anything on a packages definition, i.e.
leave name, version, depencencies, build-system etc. completely as they
were. If you then change anything on the dependencies of that package
(or its sub-dependencies) it will get rebuild (or re-downloaded) with
the same package-name and package-version but under a different
hash-sum.

That's the reason why there is the branch of "core-updates" packages
(see point 7 in [1]): Basicly every package in the distribution depends
on a core-updates package. If you change one of the core-updates, the
whole distribution needs to be rebuilt. Because this would cause much
compilation-work on users computers, core-updates will be collected and
compiled by Hydra on a separate branch. If everything is compiled and
under a certain level of errors, it will be merged back into master and
will be available via guix pull.

In your case it could be that you have installed the different library
instances via different guix pulls.

Björn

[1]
https://www.gnu.org/software/guix/manual/guix.html#Submitting-Patches





pgpO0v4Mn7DjF.pgp
Description: OpenPGP digital signature


Re: A few questions about packages

2018-03-13 Thread Björn Höfling
On Tue, 13 Mar 2018 22:36:37 +0300
Jone  wrote:

> And, I seem I begin to understand!
> After deleting the previous profiles does not occur "relink" to
> current version of library: what has already been established, that
> will also remain. Correctly?

Store items are kept indefinitely. You can use guix gc to remove them.
But this of cause works only if they have zero references pointing to
them, i.e. there is no other dependency from the store or a profile
generation linking to it.

I'm not sure if I understood you fully, I hope my answer is the right
one to your question. Since a week or so we decided to invite people
also to write in their language and not only in English. If that helps
you, under "Mailing List" you will find the list of languages that are
understood by Guix developers (to be growing):

https://www.gnu.org/software/guix/contact/

Björn


pgpALNxwZ0H78.pgp
Description: OpenPGP digital signature


Re: path error

2018-02-26 Thread Björn Höfling
Hi Quiliro,

On Mon, 26 Feb 2018 15:52:54 -0500
Quiliro Ordonez Baca  wrote:

> I have downloaded OpenKinect. (Disclosure: I have not checked wether
> it is has non-libre software yet.) I typed:

I haven't checked either. I just saw the keyword "firmwire", which
smells like binaries.


> 
> git clone https://github.com/OpenKinect/libfreenect
> cd libfreenect
> mkdir build
> cd build
> cmake -L ..
> 
> But I get an error on executing that command. Here is the output:
> 
> quiliro@portkomputilo ~/libfreenect/build$ cmake -L ..

[...]
 
>   gcc: error trying to exec 'as': execvp: No existe el fichero o el
>   directorio

[...]


> Please suggest possible solution. Thank you very much. :-)

There are problems with dependencies. I also found out it is not easy to
directly set up the environment for gcc or even worse cmake.

I would suggest to directly start writing a package definition (weather
or not it is free), like described here:

https://www.gnu.org/software/guix/manual/guix.html#Building-from-Git

In your case you need the cmake-build-system. Look through the source
code und gnu/packages/*.scm for examples.

When you then execute

./pre-inst-env guix build libfreenect

Guix will correctly prepare the cmake-environment for you.
Probably it will hit errors because you missed arguments or
dependencies, but at least the basic dependencies will be available.

Furthermore, you can keep the build directory under failure ("-K"):

./pre-inst-env guix build -K libfreenect

Then you can examine the build directory under /tmp/guix-build-... for
cmake log/error files.

Hope this helps,

Björn




pgpGza0r46ZTZ.pgp
Description: OpenPGP digital signature


Re: Transition from Guile 2.0 to 2.2 ("not an ELF file")

2017-06-10 Thread Björn Höfling
On Sat, 10 Jun 2017 09:07:43 +0200
Catonano <caton...@gmail.com> wrote:

> Hi Björn,
> 
> 2017-06-09 16:55 GMT+02:00 Björn Höfling
> <bjoern.hoefl...@bjoernhoefling.de> :
> 
> > Hi,
> >
> > since my last guix update, I get this error message:
> >
> > ;;; ERROR: In procedure load-thunk-from-memory: not an ELF file
> > ;;; WARNING: loading compiled
> > file /home/bjoern/.config/guix/latest/guix/scripts.go failed:
> >
> > OK, I found out that it is related to the transition to Guile 2.2:
> >
> > https://lists.gnu.org/archive/html/guix-devel/2017-05/msg00350.html
> >
> > I admit, I used to use `guix pull but this time I really used the
> > git way to upgrade:
> >
> > cd guix
> > git fetch
> > ./bootstrap
> > make check
> > ./pre-inst-env guix system reconfigure g64.scm
> >
> > After restart the problem popped up. Trying it a second time, still
> > same result.
> >  
> 
> you could do this:
> 
> cd guix
> ./pre-inst-env guix pull
> 
> This should use the checked out branch to restore your "pulled" guix
> 
> After that, you can restart using guix as you previously used to
> 
> Hope this helps !

Yes, that helped. Thanks!

Björn



Transition from Guile 2.0 to 2.2 ("not an ELF file")

2017-06-09 Thread Björn Höfling
Hi,

since my last guix update, I get this error message:

;;; ERROR: In procedure load-thunk-from-memory: not an ELF file
;;; WARNING: loading compiled
file /home/bjoern/.config/guix/latest/guix/scripts.go failed:

OK, I found out that it is related to the transition to Guile 2.2:

https://lists.gnu.org/archive/html/guix-devel/2017-05/msg00350.html

I admit, I used to use `guix pull but this time I really used the git
way to upgrade: 

cd guix
git fetch
./bootstrap
make check
./pre-inst-env guix system reconfigure g64.scm

After restart the problem popped up. Trying it a second time, still
same result.

I guess that ~/.config/guix/latest still points to the last ("2.0")
result of guix pull. Can I just remove that? Or fix it? Is there an
equivalent to guix-latest, the git-way?

One idea to get rid of the problem was to just use `guix pull` again,
but unfortunately that also went wrong:

guix pull: errror: libtiff-CVE-2017-7593.patch: patch not found.

Any ideas of how to get into the 2.2-world?

Björn



Re: GuixSD in a VM is so nice - once you actually have control over your mouse, that is.

2017-05-19 Thread Björn Höfling
On Thu, 18 May 2017 00:42:18 +0200
Fox  wrote:

> so I run GuixSD (on bare metal nicely and) on qemu
> 
> but mouse capture is an issue in that gpm or whatever runs the mouse.
> 
> I "can't come back from the Immelmann loop" , so-to-speak. The only 
> "ESCAPE" is CTRL-ALT-F3  with root login and "reboot".
> 
> 
> I mean ... these days a VM should maybe be fine with mice of 21st. 
> century design or am I going down a wrong alley ?
> 
> 
> 

As others already pointed out, "Ctrl-Alt" is the way to get out of the
cage.

Mostly I don't use the VM-Window: I had some trouble with gpm and don't
know how to enable clipboard-sharing in QEMU, so I just use SSH:

My GuixSD-QEMU-Configuration has something like:

 (services (cons* 
... other services here ...
(dhcp-client-service)
(lsh-service #:port-number )
   %base-services))


Then in my host system I have an entry in my ~/.ssh/config:

Host g64
HostName localhost
Port 
User bjoern


When I now call "ssh g64" and enter my password, I'm connected to my
virtual machine and can use the normal mouse and copy/paste of my host
system as I would use with other remote machines.

You can also upload your SSH-Key in your virtual machine to avoid
password entering.

And probably when I would setup a new VM, I would use OpenSSH
(https://www.gnu.org/software/guix/manual/guix.html#index-openssh_002dservice_002dtype),
but when I started with my setup, there was only LSH.


Björn



Re: guix pull: 502/Bad Gateway for savannah.gnu.org

2017-04-20 Thread Björn Höfling
On Thu, 20 Apr 2017 23:21:09 +0200
l...@gnu.org (Ludovic Courtès) wrote:

> ng0 <contact@cryptolab.net> skribis:
> 
> > Björn Höfling transcribed 0.8K bytes:  
> >> Hi,
> >> 
> >> I just tried a guix pull and got this error:
> >> 
> >> bjoern@g64 ~$ guix pull
> >> 
> >> Starting download of /tmp/guix-file.QxbCPt
> >> From
> >> https://git.savannah.gnu.org/cgit/guix.git/snapshot/master.tar.gz...
> >> ERROR: download failed
> >> "https://git.savannah.gnu.org/cgit/guix.git/snapshot/master.tar.gz;
> >> 502 "Bad Gateway" failed to download "/tmp/guix-file.QxbCPt" from
> >> "https://git.savannah.gnu.org/cgit/guix.git/snapshot/master.tar.gz;
> >> guix pull: error: failed to download up-to-date source, exiting
> >> 
> >> 
> >> I get this also when trying to clone the git repository:
> >> 
> >> git clone https://git.savannah.gnu.org/git/guix.git
> >> 
> >> Cloning into 'guix'...
> >> fatal: unable to access
> >> 'https://git.savannah.gnu.org/git/guix.git/': The requested URL
> >> returned error: 502
> >> 
> >> Do you have any idea? Is this temporary, or do I have to
> >> reconfigure something?
> >> 
> >> Thanks,
> >> 
> >> Björn
> >>   
> >
> > Yeah, it's unfortunate.
> > No, all of savannah git is down right now, every project. We have
> > to wait until someone in Boston fixes this.  
> 
> Boston woke up and this was fixed earlier today.  :-)
> 
> Ludo’.


Yeah, works here again :-)

Sorry to bother you guys with that. That was just one problem of a
still ongoing installation of GuixSD. Didn't expect to have so many
problems with it :-(

Thanks,

Björn



guix pull: 502/Bad Gateway for savannah.gnu.org

2017-04-20 Thread Björn Höfling
Hi,

I just tried a guix pull and got this error:

bjoern@g64 ~$ guix pull

Starting download of /tmp/guix-file.QxbCPt
From
https://git.savannah.gnu.org/cgit/guix.git/snapshot/master.tar.gz...
ERROR: download failed
"https://git.savannah.gnu.org/cgit/guix.git/snapshot/master.tar.gz; 502
"Bad Gateway" failed to download "/tmp/guix-file.QxbCPt" from
"https://git.savannah.gnu.org/cgit/guix.git/snapshot/master.tar.gz;
guix pull: error: failed to download up-to-date source, exiting


I get this also when trying to clone the git repository:

git clone https://git.savannah.gnu.org/git/guix.git

Cloning into 'guix'...
fatal: unable to access 'https://git.savannah.gnu.org/git/guix.git/':
The requested URL returned error: 502

Do you have any idea? Is this temporary, or do I have to reconfigure
something?

Thanks,

Björn



Re: Help with Ruby: rouge 2.0.7

2017-03-17 Thread Björn Höfling
Hi Ben,

On Wed, 15 Mar 2017 22:14:06 +1000
Ben Woodcroft <b.woodcr...@uq.edu.au> wrote:

> Hello there,
> 
> 
> On 15/03/17 08:08, Björn Höfling wrote:
> > Hello,
> >
> > I want to import the Ruby package 'rouge' 2.0.7 into Guix. I'm new
> > to Ruby, Gem, Rake, etc. and tried the importer with some success.
> > Maybe someone with more Ruby experience can tell me what's the
> > right way here?
> >
> > OK, I thought this is an easy one, because it has no dependencies:  
> Unfortunately, as you found, often the dependencies needed for
> testing are sometimes not listed at rubygems.org, since it is not
> common for tests to be run as part of the "gem install" installation
> process.
> 
> > https://rubygems.org/gems/rouge/versions/2.0.7
> >
> > I started with:
> >
> > guix import gem rouge > rouge.scm
> >
> > Then added some import headers in the file and tried to build it
> > with [..]
> > /gnu/store/6ks5gf4088qd23hac1cbd14aml6h1pgw-bundler-1.14.5/lib/ruby/gems/2.3.0/gems/bundler-1.14.5/lib/bundler/resolver.rb:386:in
> > `block in verify_gemfile_dependencies_are_found!': Could not find
> > gem 'wrong' in any of the gem sources listed in your Gemfile.
> > (Bundler::GemNotFound)
> > from 
> > /gnu/store/6ks5gf4088qd23hac1cbd14aml6h1pgw-bundler-1.14.5/lib/ruby/gems/2.3.0/gems/bundler-1.14.5/lib/bundler/resolver.rb:356:in
> > `each'
> > [..]
> >
> > Does that mean that I have to install
> > 'wrong' (https://rubygems.org/gems/wrong) that itself has 5
> > dependencies, 4 are not in Guix?  
> That seems to be the case, unfortunately. There also seems to be some 
> other gems in the Gemfile which aren't yet packaged for Guix. There
> are also a number of packages in the wip-rails branch on savannah
> which might be of use - these aren't quite ready yet but if there was
> interest I could finish them off.
> 
> If the number of packages needed gets too large, then there may be a 
> case for not running the tests in some packages.
> 
> Good luck.
> ben.


Rouge was just a leaf node in my dependency graph to Jekyll. Now it is
no longer a leaf, it is a node nearly on top... That dependency hell is
frustrating.

I would prefer not skipping the tests. For now I installed Jekyll from
my current distribution (Guix is currently just on top of that). I will
try to find some real leaf nodes later and start with them. But that
has low priority for me.

Thank you for your help,

Björn



Help with Ruby: rouge 2.0.7

2017-03-14 Thread Björn Höfling
Hello,

I want to import the Ruby package 'rouge' 2.0.7 into Guix. I'm new to
Ruby, Gem, Rake, etc. and tried the importer with some success. Maybe
someone with more Ruby experience can tell me what's the right way here?

OK, I thought this is an easy one, because it has no dependencies:

https://rubygems.org/gems/rouge/versions/2.0.7

I started with:

guix import gem rouge > rouge.scm

Then added some import headers in the file and tried to build it with

guix build -f rouge.scm -k -K --rounds=2

But it failed:

phase `build' succeeded after 0.4 seconds
starting phase `check'
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb,
Rakefile.rb)

(See full trace by running task with --trace)
phase `check' failed after 0.1 seconds

Yes, there is no Rakefile in

/tmp/guix-build-ruby-rouge-2.0.7.drv-7/gem/

It seams this is not bundled into the Gem. Also the spec folder is not
there. Is that usual behaviour? If so, is 'guix import gem' the right
way?

If I skip the tests via:

  (arguments
   '(#:tests? #f))

it works. But I want tests. So I tried it with the package from github:

(uri "https://github.com/jneen/rouge/archive/v2.0.7.tar.gz;)


It has a Rakefile, but I have to modify the test target name:

(arguments '(#:test-target "spec"))


And I have to add some inputs, although on the RubyGem site, there are
neither dev nor runtime dependencies declared:

  (native-inputs
   `(("ruby-minitest-4" ,ruby-minitest-4)
 ("bundler" ,bundler)))

OK, let's get started:

bjoern@g64 ~/guix [env]$ ./pre-inst-env guix build -f rouge-git.scm
--rounds=2 -k -K

[..]
/gnu/store/6ks5gf4088qd23hac1cbd14aml6h1pgw-bundler-1.14.5/lib/ruby/gems/2.3.0/gems/bundler-1.14.5/lib/bundler/resolver.rb:386:in
`block in verify_gemfile_dependencies_are_found!': Could not find gem
'wrong' in any of the gem sources listed in your Gemfile.
(Bundler::GemNotFound)
from 
/gnu/store/6ks5gf4088qd23hac1cbd14aml6h1pgw-bundler-1.14.5/lib/ruby/gems/2.3.0/gems/bundler-1.14.5/lib/bundler/resolver.rb:356:in
`each'
[..]

Does that mean that I have to install
'wrong' (https://rubygems.org/gems/wrong) that itself has 5
dependencies, 4 are not in Guix?

What's your Guix/Ruby advice here?

Thanks,

Björn








Re: Several questions on Guix(SD)

2016-08-29 Thread Björn Höfling
Hi Leo,

On Fri, 26 Aug 2016 19:23:11 -0400
Leo Famulari <l...@famulari.name> wrote:

> On Thu, Aug 25, 2016 at 11:03:32PM +0200, Björn Höfling wrote:
> > Leo, thank you for your answers. I would like some more
> > clarifications:
> > 
> > On Mon, 22 Aug 2016 17:49:21 -0400
> > Leo Famulari <l...@famulari.name> wrote:
> > > The log output of the daemon goes wherever your daemons normally
> > > log to. On most recent versions of the major distros, this is
> > > handled by systemd / journald.
> > 
> > My distro in that case is GuixSD, using shepherd. So I found
> > information about guix-daemon start and stop events
> > in /var/log/shepherd.log. But I want some more information about
> > the daemon. Is guix-daemon so silent?
> > 
> > I figured out that I can (modify-services %base-services ...) for
> > adding the "--debug" extra-options to guix-daemon. Still I see only
> > start/stop log entries in shepherd.log. What am I missing?
> 
> Somebody else could answer this better than me, but I'll give it a
> shot. The guix-daemon is indeed laconic, even with --debug. Here, is
> what it prints when I start it manually and run `guix gc
> -d /gnu/store/...-hello`:
> 
> ---
> # /root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild
> --debug extra chroot directories: ''
> automatic deduplication set to 1
> listening on `/var/guix/daemon-socket/socket'
> accepted connection from pid 9343, user leo
> 1 operations
> ---
> 
> On GuixSD, it seems that the daemon just prints to the console. I
> have a non-graphical system and the daemon's output is rather
> annoying in the rare case that I am sitting at the machine.
> 
> If you are looking for logs of package building, you can do `guix
> build foo --log-file`. You will often need to add `--no-grafts` to
> see the "real" build log instead of the log of the grafting operation.
> 
> Does that help answer your question at all?

I also noticed that it prints to the console. I hoped that it would
print a bit more output to some logfile. But that's fine for now, that
answers my question. Thank you.

Björn





Re: Counting Packages yields wrong result

2016-08-25 Thread Björn Höfling

On Tue, 23 Aug 2016 13:56:39 +0300
Alex Kost <alez...@gmail.com> wrote:

> Björn Höfling (2016-08-23 00:10 +0300) wrote:

> > Is that my problem? How can I script over the newest pull?
> 
> "guix pull" updates "~/.config/guix/latest" link, and when you run
> "guix" command, it uses the packages from that directory.  So after
> "guix pull" you'll get the latest package recipes for "guix ..."
> commands.
> 
> But "guix pull" doesn't influence your guile script that uses guix
> modules from some directories that come from GUILE_LOAD_PATH and
> GUILE_LOAD_COMPILED_PATH.  So to make your script use those fresh
> "guix-pulled" modules, you can modify these environment variables to
> include "/home//.config/guix/latest".

Yes, when setting the GUILE_LOAD_PATH that way, counting will increase
witha guix pull.

 
> An alternative is to use guix directly from a git checkout.
> See (info "(guix) Building from Git") for details.

Will try that also at a later time.

Thank you,

Björn



Several questions on Guix(SD)

2016-08-22 Thread Björn Höfling
Dear list,

since I watched that LibrePlanet video on GuixSD, I installed it in a
QEMU environment and I'm very fascinated about it. It's a nice concept,
having package management the functional and FSDG way. And that concept
is reality. It works!

I'm trying to learn to use and understand the system, and found out
several things for myself or through documentation or other people's
question on the list. But there is a lot left which I would like to ask
here. I hope it is not too much:

 * Do you have the concept of package maintainers, like in Debian?
   People who are responsible for each package, apply patches, etc?

 * Are there "recommmended"/"sugggested" dependencies? For example,
   diffoscope complained that "'readelf' is not on the path. Falling
   back to binary comparison." That could be a candidate for a package
   not needed at compile/runtime but that would enhance the usage if
   present.

 * I have for example in my store:
   * /gnu/store/abc...-tar-1.29/
   * /gnu/store/xyz...-tar-1.29/

   Can I somehow figure out what's the differnce between them, how
   they came into the system, which one is "newer"? I tried diffoscope
   and found some marginal, crypted hex-differences.

 * Can I somehow get a store history? I.e. a (ordered) list of
   installation progress. "ls -ltr /gnu/store" was my first try
   but it obviously fails.

 * Is there a log for the deamon? I only found the
   "/var/log/guix/drvs", which seam to be only logs of each compilation.
   BTW, what do the two letters of the subfolders mean? 

 * Is there a list of builds available that are not reproducible? Or is
   that (eq? _ '()) ?

 * Are any other Hydra instances running other than the GNU ones that
   could be challenged?

 * If I would like to set up my own Hydra server, how much storage space
   takes the whole hydra-archive of substitutes (for each platform)? Or
   only the %base-packages?

 * How much time takes it to recompile all packages in Hydra?


Thank you in advance,

Björn