guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Guile 2.2 packages


From: Ludovic Courtès
Subject: Guile 2.2 packages
Date: Wed, 07 Sep 2016 18:52:12 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Hello!

The Guile 2.2 series is becoming a reality, so time has come to provide
packages built with/for Guile 2.2 (aka. 2.1, aka. ‘guile-next’).

Commit 947a5d47a50252cb0b87b78a8f83f274dec593e2 adds a
‘package-for-guile-2.2’ procedure similar in spirit to
‘package-with-python2’.  It provides a simple way to define 2.2-using
package variants, equivalent to:

  guix build something --with-input=guile=guile-next

You can install 2.0 and 2.2 variants of Guile packages side by side:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix package -p foo -i guile-minikanren guile2.2-minikanren 
guile guile-next
The following packages will be installed:
   guile-minikanren     20150424.e844d85        
/gnu/store/xib2gmbs0pgy572c8k7a658kph76yjra-guile-minikanren-20150424.e844d85
   guile2.2-minikanren  20150424.e844d85        
/gnu/store/8y3cqkrqhg9v3f0cvzcrhv7fcq7rz2yz-guile2.2-minikanren-20150424.e844d85
   guile        2.0.11  /gnu/store/95x5fxvcggyaa8ymjjgv5q0dnzkrign9-guile-2.0.11
   guile-next   2.1.3   
/gnu/store/kqq37w4xnl1q21g6vz93qq1rdb2y7ayc-guile-next-2.1.3

4 packages in profile
The following environment variable definitions may be needed:
   export PATH="foo/bin${PATH:+:}$PATH"
   export 
GUILE_LOAD_PATH="foo/share/guile/site/2.0${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
   export 
GUILE_LOAD_COMPILED_PATH="foo/lib/guile/2.0/ccache:foo/share/guile/site/2.0${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"
   export 
GUILE_LOAD_PATH="foo/share/guile/site/2.2${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
   export 
GUILE_LOAD_COMPILED_PATH="foo/lib/guile/2.2/ccache:foo/share/guile/site/2.2${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"
--8<---------------cut here---------------end--------------->8---

The main difficulty is that upstream build systems and some of our
recipes hard-code “/2.0” in the name of the module installation
directories.  I’ve fixed that in a few packages in the commits preceding
the one above.  I’m afraid there’s no simple automated way to fix that,
other than telling upstream developers to do the right thing.

Anyway, have fun!

Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]