* Article: Playing with Guix REPL from scratch
@ 2018-12-25 11:47 swedebugia
2018-12-25 18:01 ` swedebugia
2019-01-05 17:37 ` Ludovic Courtès
0 siblings, 2 replies; 12+ messages in thread
From: swedebugia @ 2018-12-25 11:47 UTC (permalink / raw)
To: guix-devel
Hi people
Today I wrote this draft blog post while playing around:
Playing with Guix REPL from scratch
This is a small example of how to quickly get an environment to play
with Guix in guile.
First setup your environment.
I choose a x86_64 PC and booted up the installer from an usb stick.
This is a nice environment because it already is running GuixSD in a
console and you have are in Guix land with 8500 packages at your
fingertips.
I started by installing a sensible array of packages:
$ guix package -i emacs-no-x lynx git-minimal guile-readline
guile-colorized emacs-paredit nss-certs
To set this up as intended then run:
$ export
GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/2.2:/run/current-system/profile/share/guile/site/2.2
$ export SSL_CERT_DIR=/root/.guix-profile/etc/ssl/certs
Now fire up the guix repl with
$guix repl
Load e.g. this to start hacking on package records:
(use-modules
(guix packages)
(guix import utils)
(gnu)
(gnu packages sync))
Now you can start hacking on all packages in sync.scm using Scheme
procedures from (gnu packages) (see the source of this module for
details or guess and press tab)
E.g. (package<TAB><TAB> shows this list of nice procedures availiable:
package
package->cross-derivation
package->definition
package->derivation
package-build-system
package-cross-build-system-error?
package-cross-derivation
package-derivation
package-description
package-direct-inputs
package-direct-sources
package-error-invalid-input
package-error-package
package-error?
package-field-location
package-file
package-full-name
package-grafts
package-home-page
package-input-error?
package-input-rewriting
package-inputs
package-license
package-location
package-maintainers
package-mapping
package-name
package-native-inputs
package-native-search-paths
package-output
package-outputs
package-patched-vulnerabilities
package-propagated-inputs
package-properties
package-search-paths
package-source
package-source-derivation
package-superseded
package-supported-systems
package-synopsis
package-transitive-inputs
package-transitive-native-inputs
package-transitive-native-search-paths
package-transitive-propagated-inputs
package-transitive-sources
package-transitive-supported-systems
package-transitive-target-inputs
package-upstream-name
package-version
package/inherit
package?
In addition to this there are the following origin-record-procedures:
E.g. (origin<TAB><TAB> shows this list
origin
origin->derivation
origin-actual-file-name
origin-file-name
origin-method
origin-modules
origin-patch-flags
origin-patch-guile
origin-patch-inputs
origin-patches
origin-sha256
origin-snippet
origin-uri
origin?
What can we do with this you might ask?
Well how about getting the url of a specific package?
scheme@(guix-user)> (origin-uri (package-source lsyncd))
$4 = "https://github.com/axkibe/lsyncd/archive/release-2.2.2.tar.gz"
Fetching it?
scheme@(guix-user)> (url-fetch
(origin-uri (package-source lsyncd)) "temp")
Starting download of temp
From https://github.com/axkibe/lsyncd/archive/release-2.2.2.tar.gz...
following redirection to
`https://codeload.github.com/axkibe/lsyncd/tar.gz/release-2.2.2'...
release-2.2.2.tar.gz 253KiB/s 00:00 | 80KiB
transferred
$3 = "temp"
With fold-packages you can walk through the whole stack of package
records if you would like and count say the number of packages with
the prefix "python-":
scheme@(guile-user)> (define snakes
(fold-packages
(lambda (package lst)
(if (string-prefix? "python"
(package-name package))
(cons package lst)
lst))
'()))
Now we can work on this list. As of writing this we have this many
items in the list:
scheme@(guix-user)> (length snakes)
$5 = 1532
scheme@(guile-user)> (define snakes
(fold-packages
(lambda (package lst)
(if (string-prefix? "python"
(package-name package))
(cons (origin-url package) lst)
lst))
'()))
If you create something worth saving, mount an USB stick or a harddisk
partition and save it there.
--
Cheers Swedebugia
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2018-12-25 11:47 Article: Playing with Guix REPL from scratch swedebugia
@ 2018-12-25 18:01 ` swedebugia
2019-01-05 17:37 ` Ludovic Courtès
1 sibling, 0 replies; 12+ messages in thread
From: swedebugia @ 2018-12-25 18:01 UTC (permalink / raw)
To: guix-devel
On 2018-12-25 12:47, swedebugia wrote:
> Hi people
>
> Today I wrote this draft blog post while playing around:
>
> Playing with Guix REPL from scratch
>
> This is a small example of how to quickly get an environment to play
> with Guix in guile.
>
> First setup your environment.
>
> I choose a x86_64 PC and booted up the installer from an usb stick.
>
> This is a nice environment because it already is running GuixSD in a
> console and you have are in Guix land with 8500 packages at your
> fingertips.
>
> I started by installing a sensible array of packages:
>
> $ guix package -i emacs-no-x lynx git-minimal guile-readline
> guile-colorized emacs-paredit nss-certs
>
> To set this up as intended then run:
>
> $ export
> GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/2.2:/run/current-system/profile/share/guile/site/2.2
>
> $ export SSL_CERT_DIR=/root/.guix-profile/etc/ssl/certs
>
> Now fire up the guix repl with
>
> $guix repl
>
> Load e.g. this to start hacking on package records:
>
> (use-modules
> (guix packages)
> (guix import utils)
> (gnu)
> (gnu packages sync))
>
> Now you can start hacking on all packages in sync.scm using Scheme
> procedures from (gnu packages) (see the source of this module for
> details or guess and press tab)
>
> E.g. (package<TAB><TAB> shows this list of nice procedures availiable:
> package
> package->cross-derivation
> package->definition
> package->derivation
> package-build-system
> package-cross-build-system-error?
> package-cross-derivation
> package-derivation
> package-description
> package-direct-inputs
> package-direct-sources
> package-error-invalid-input
> package-error-package
> package-error?
> package-field-location
> package-file
> package-full-name
> package-grafts
> package-home-page
> package-input-error?
> package-input-rewriting
> package-inputs
> package-license
> package-location
> package-maintainers
> package-mapping
> package-name
> package-native-inputs
> package-native-search-paths
> package-output
> package-outputs
> package-patched-vulnerabilities
> package-propagated-inputs
> package-properties
> package-search-paths
> package-source
> package-source-derivation
> package-superseded
> package-supported-systems
> package-synopsis
> package-transitive-inputs
> package-transitive-native-inputs
> package-transitive-native-search-paths
> package-transitive-propagated-inputs
> package-transitive-sources
> package-transitive-supported-systems
> package-transitive-target-inputs
> package-upstream-name
> package-version
> package/inherit
> package?
>
> In addition to this there are the following origin-record-procedures:
>
> E.g. (origin<TAB><TAB> shows this list
> origin
> origin->derivation
> origin-actual-file-name
> origin-file-name
> origin-method
> origin-modules
> origin-patch-flags
> origin-patch-guile
> origin-patch-inputs
> origin-patches
> origin-sha256
> origin-snippet
> origin-uri
> origin?
>
> What can we do with this you might ask?
>
> Well how about getting the url of a specific package?
>
> scheme@(guix-user)> (origin-uri (package-source lsyncd))
> $4 = "https://github.com/axkibe/lsyncd/archive/release-2.2.2.tar.gz"
>
> Fetching it?
>
> scheme@(guix-user)> (url-fetch
> (origin-uri (package-source lsyncd)) "temp")
>
> Starting download of temp
> From https://github.com/axkibe/lsyncd/archive/release-2.2.2.tar.gz...
> following redirection to
> `https://codeload.github.com/axkibe/lsyncd/tar.gz/release-2.2.2'...
> release-2.2.2.tar.gz 253KiB/s 00:00 | 80KiB
> transferred
> $3 = "temp"
>
> With fold-packages you can walk through the whole stack of package
> records if you would like and count say the number of packages with
> the prefix "python-":
>
> scheme@(guile-user)> (define snakes
> (fold-packages
> (lambda (package lst)
> (if (string-prefix? "python"
> (package-name package))
> (cons package lst)
> lst))
> '()))
>
> Now we can work on this list. As of writing this we have this many
> items in the list:
>
> scheme@(guix-user)> (length snakes)
> $5 = 1532
>
> scheme@(guile-user)> (define snakes
> (fold-packages
> (lambda (package lst)
> (if (string-prefix? "python"
> (package-name package))
> (cons (origin-url package) lst)
> lst))
> '()))
>
> If you create something worth saving, mount an USB stick or a harddisk
> partition and save it there.
FYI:
I would like to publish it in the guix blog when it is ready. I
published it here just to get comments/review as it is my first post to
the blog :-)
-- Cheers Swedebugia
--
Cheers Swedebugia
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2018-12-25 11:47 Article: Playing with Guix REPL from scratch swedebugia
2018-12-25 18:01 ` swedebugia
@ 2019-01-05 17:37 ` Ludovic Courtès
2019-01-06 3:24 ` swedebugia
1 sibling, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2019-01-05 17:37 UTC (permalink / raw)
To: swedebugia; +Cc: guix-devel
Hello swedebugia,
Sorry for the late reply!
swedebugia <swedebugia@riseup.net> skribis:
> Today I wrote this draft blog post while playing around:
>
> Playing with Guix REPL from scratch
That sounds like a great topic for a blog post!
I would suggest adding a bit of context: what does “REPL” mean? what are
the possible use cases? how does it differ from what other package
managers provide? etc.
> This is a small example of how to quickly get an environment to play
> with Guix in guile.
>
> First setup your environment.
>
> I choose a x86_64 PC and booted up the installer from an usb stick.
That’s an option, but you could mention that one can install Guix or
GuixSD and run ‘guix repl’ from there.
> This is a nice environment because it already is running GuixSD in a
> console and you have are in Guix land with 8500 packages at your
> fingertips.
>
> I started by installing a sensible array of packages:
>
> $ guix package -i emacs-no-x lynx git-minimal guile-readline
> guile-colorized emacs-paredit nss-certs
>
> To set this up as intended then run:
>
> $ export
> GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/2.2:/run/current-system/profile/share/guile/site/2.2
> $ export SSL_CERT_DIR=/root/.guix-profile/etc/ssl/certs
I don’t think GUILE_LOAD_PATH is needed if you use ‘guix repl’.
> Now fire up the guix repl with
>
> $guix repl
>
> Load e.g. this to start hacking on package records:
>
> (use-modules
> (guix packages)
> (guix import utils)
> (gnu)
> (gnu packages sync))
I’d suggest (guix) instead of (guix packages).
> Now you can start hacking on all packages in sync.scm using Scheme
> procedures from (gnu packages) (see the source of this module for
> details or guess and press tab)
>
> E.g. (package<TAB><TAB> shows this list of nice procedures availiable:
> package
> package->cross-derivation
[...]
> What can we do with this you might ask?
You could show ,describe and ,apropos at the REPL:
--8<---------------cut here---------------start------------->8---
scheme@(guix-user)> ,describe package-derivation
Return the <derivation> object of PACKAGE for SYSTEM.
scheme@(guix-user)> ,a origin
(guix packages): origin-patch-guile
(guix packages): origin-method
(guix packages): origin-patch-inputs
(guix packages): origin-patch-flags
(guix packages): origin-patches
(guix packages): origin->derivation #<procedure origin->derivation (origin #:optional system)>
(guix packages): origin-snippet
(guix packages): origin-modules
(guix packages): origin-actual-file-name #<procedure origin-actual-file-name (origin)>
(guix packages): origin
(guix packages): origin-uri
(guix packages): origin?
(guix packages): origin-file-name
(guix packages): origin-sha256
--8<---------------cut here---------------end--------------->8---
Though for some reason ,a doesn’t seem to work if you only use (guix),
hmm…
> scheme@(guile-user)> (define snakes
> (fold-packages
> (lambda (package lst)
> (if (string-prefix? "python"
> (package-name package))
> (cons (origin-url package) lst)
> lst))
> '()))
‘origin-url’ does not exist. :-) Make sure all the examples work so
that users are not disappointed. It may be worth explaining how
‘fold-packages’ works as it may be the first encounter of ‘fold’ for
someone not familiar with functional programming.
Perhaps you could give another examples or two such as using
‘package-derivation’ and ‘build-derivations’, or integration with (guix
swh) as sketched at
<https://lists.gnu.org/archive/html/guix-devel/2018-11/msg00285.html>,
or uses of ‘package-input-rewriting’, just to give a feel that it’s
actually useful. ;-)
For the blog we write text in Markdown and there’s markup to get proper
syntax highlighting for Scheme. See the .md files at
<https://git.savannah.gnu.org/cgit/guix/guix-artwork.git/tree/website/posts>.
Also I think it’s a good idea to add links to the relevant parts of the
Guix and Guile manuals so that interested readers know where to find
more info about each topic.
Thanks for working on it!
Ludo’.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2019-01-05 17:37 ` Ludovic Courtès
@ 2019-01-06 3:24 ` swedebugia
2019-01-06 11:36 ` Pierre Neidhardt
2019-01-10 7:46 ` Chris Marusich
0 siblings, 2 replies; 12+ messages in thread
From: swedebugia @ 2019-01-06 3:24 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guix-devel
[-- Attachment #1.1: Type: text/html, Size: 6373 bytes --]
[-- Attachment #1.2: Type: text/plain, Size: 5004 bytes --]
"Ludovic Courtès" <ludo@gnu.org> skrev: (5 januari 2019 18:37:10 CET)
>Hello swedebugia,
>
>Sorry for the late reply!
>
>swedebugia <swedebugia@riseup.net> skribis:
>
>> Today I wrote this draft blog post while playing around:
>>
>> Playing with Guix REPL from scratch
>
>That sounds like a great topic for a blog post!
>
>I would suggest adding a bit of context: what does “REPL” mean? what
>are
>the possible use cases? how does it differ from what other package
>managers provide? etc.
>
>> This is a small example of how to quickly get an environment to play
>> with Guix in guile.
>>
>> First setup your environment.
>>
>> I choose a x86_64 PC and booted up the installer from an usb stick.
>
>That’s an option, but you could mention that one can install Guix or
>GuixSD and run ‘guix repl’ from there.
>
>> This is a nice environment because it already is running GuixSD in a
>> console and you have are in Guix land with 8500 packages at your
>> fingertips.
>>
>> I started by installing a sensible array of packages:
>>
>> $ guix package -i emacs-no-x lynx git-minimal guile-readline
>> guile-colorized emacs-paredit nss-certs
>>
>> To set this up as intended then run:
>>
>> $ export
>>
>GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/2.2:/run/current-system/profile/share/guile/site/2.2
>> $ export SSL_CERT_DIR=/root/.guix-profile/etc/ssl/certs
>
>I don’t think GUILE_LOAD_PATH is needed if you use ‘guix repl’.
>
>> Now fire up the guix repl with
>>
>> $guix repl
>>
>> Load e.g. this to start hacking on package records:
>>
>> (use-modules
>> (guix packages)
>> (guix import utils)
>> (gnu)
>> (gnu packages sync))
>
>I’d suggest (guix) instead of (guix packages).
>
>> Now you can start hacking on all packages in sync.scm using Scheme
>> procedures from (gnu packages) (see the source of this module for
>> details or guess and press tab)
>>
>> E.g. (package<TAB><TAB> shows this list of nice procedures
>availiable:
>> package
>> package->cross-derivation
>
>[...]
>
>> What can we do with this you might ask?
>
>You could show ,describe and ,apropos at the REPL:
>
>--8<---------------cut here---------------start------------->8---
>scheme@(guix-user)> ,describe package-derivation
>Return the <derivation> object of PACKAGE for SYSTEM.
>scheme@(guix-user)> ,a origin
>(guix packages): origin-patch-guile
>(guix packages): origin-method
>(guix packages): origin-patch-inputs
>(guix packages): origin-patch-flags
>(guix packages): origin-patches
>(guix packages): origin->derivation #<procedure origin->derivation
>(origin #:optional system)>
>(guix packages): origin-snippet
>(guix packages): origin-modules
>(guix packages): origin-actual-file-name #<procedure
>origin-actual-file-name (origin)>
>(guix packages): origin
>(guix packages): origin-uri
>(guix packages): origin?
>(guix packages): origin-file-name
>(guix packages): origin-sha256
>--8<---------------cut here---------------end--------------->8---
>
>Though for some reason ,a doesn’t seem to work if you only use (guix),
>hmm…
>
>> scheme@(guile-user)> (define snakes
>> (fold-packages
>> (lambda (package lst)
>> (if (string-prefix? "python"
>> (package-name package))
>> (cons (origin-url package) lst)
>> lst))
>> '()))
>
>‘origin-url’ does not exist. :-) Make sure all the examples work so
>that users are not disappointed. It may be worth explaining how
>‘fold-packages’ works as it may be the first encounter of ‘fold’ for
>someone not familiar with functional programming.
>
>Perhaps you could give another examples or two such as using
>‘package-derivation’ and ‘build-derivations’, or integration with (guix
>swh) as sketched at
><https://lists.gnu.org/archive/html/guix-devel/2018-11/msg00285.html>,
>or uses of ‘package-input-rewriting’, just to give a feel that it’s
>actually useful. ;-)
>
>For the blog we write text in Markdown and there’s markup to get proper
>syntax highlighting for Scheme. See the .md files at
><https://git.savannah.gnu.org/cgit/guix/guix-artwork.git/tree/website/posts>.
>
>Also I think it’s a good idea to add links to the relevant parts of the
>Guix and Guile manuals so that interested readers know where to find
>more info about each topic.
>
>Thanks for working on it!
>
>Ludo’.
Wow, thanks a lot for the suggestions. I did not know about apropos and I found the tab-completion by accident.
I still got much to learn about the repl which seem to have all kinds of neat (a bit hidden) eggs 😃
An ideas pop to mind:
1) the repl could hint at startup about some feature
A question too:
2) are there ways to hinder gnutls from flooding the ,trace of e.g. import commands?
--
Sent from my p≡p for Android.
[-- Attachment #2: pEpkey.asc --]
[-- Type: application/pgp-keys, Size: 3825 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2019-01-06 3:24 ` swedebugia
@ 2019-01-06 11:36 ` Pierre Neidhardt
2019-01-08 16:25 ` Ludovic Courtès
2019-01-10 7:46 ` Chris Marusich
1 sibling, 1 reply; 12+ messages in thread
From: Pierre Neidhardt @ 2019-01-06 11:36 UTC (permalink / raw)
To: swedebugia; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 247 bytes --]
Very nice article indeed!
I was wondering if you (or anyone) would have more live-hacks to add to those
examples, the conclusion comes a bit early in my opinion and left me hungry for
more! :D
--
Pierre Neidhardt
https://ambrevar.xyz/
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2019-01-06 3:24 ` swedebugia
2019-01-06 11:36 ` Pierre Neidhardt
@ 2019-01-10 7:46 ` Chris Marusich
2019-01-13 21:52 ` Ludovic Courtès
1 sibling, 1 reply; 12+ messages in thread
From: Chris Marusich @ 2019-01-10 7:46 UTC (permalink / raw)
To: swedebugia; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 1013 bytes --]
Hi,
Nice article! I love seeing how other people hack around on stuff. It
opens one's mind up to new perspectives and techniques.
FYI, there is an email list specifically for blog post review:
guix-blog@gnu.org. I'm not sure if it's still active, since I can't
find an entry for it on lists.gnu.org. In the future (assuming it's
still active), you can send your blog post there specifically for
review.
I've used the Guile REPL, but I haven't used the "Guix REPL". Is it
equivalent to firing up a Guile REPL and importing a bunch of modules,
or does it provide more features than you can get using just the Guile
REPL?
I can probably answer that question myself by browsing the docs and
looking at the source code, but for a blog post, it might be worth
taking a paragraph to explain how it is similar, and how it is
different, from the usual Guile REPL. In particular, what does it offer
that I can't get via a usual Guile REPL?
Thank you for sharing the article!
--
Chris
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2019-01-10 7:46 ` Chris Marusich
@ 2019-01-13 21:52 ` Ludovic Courtès
2019-01-14 9:44 ` Chris Marusich
0 siblings, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2019-01-13 21:52 UTC (permalink / raw)
To: Chris Marusich; +Cc: guix-devel
Hi Chris,
Chris Marusich <cmmarusich@gmail.com> skribis:
> FYI, there is an email list specifically for blog post review:
> guix-blog@gnu.org. I'm not sure if it's still active, since I can't
> find an entry for it on lists.gnu.org. In the future (assuming it's
> still active), you can send your blog post there specifically for
> review.
It’s not a mailing list, just an alias currently pointing to Jelle,
Ricardo, and myself. It’s active but it’ll be even more active if you,
dear reader, offer to add your name to that alias. :-)
Ludo’.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2019-01-13 21:52 ` Ludovic Courtès
@ 2019-01-14 9:44 ` Chris Marusich
2019-01-15 22:32 ` Ludovic Courtès
0 siblings, 1 reply; 12+ messages in thread
From: Chris Marusich @ 2019-01-14 9:44 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 701 bytes --]
Hi Ludo,
Ludovic Courtès <ludo@gnu.org> writes:
> Hi Chris,
>
> Chris Marusich <cmmarusich@gmail.com> skribis:
>
>> FYI, there is an email list specifically for blog post review:
>> guix-blog@gnu.org. I'm not sure if it's still active, since I can't
>> find an entry for it on lists.gnu.org. In the future (assuming it's
>> still active), you can send your blog post there specifically for
>> review.
>
> It’s not a mailing list, just an alias currently pointing to Jelle,
> Ricardo, and myself. It’s active but it’ll be even more active if you,
> dear reader, offer to add your name to that alias. :-)
I see. How would one add their name to the alias?
--
Chris
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Article: Playing with Guix REPL from scratch
2019-01-14 9:44 ` Chris Marusich
@ 2019-01-15 22:32 ` Ludovic Courtès
2019-01-23 1:52 ` Chris Marusich
0 siblings, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2019-01-15 22:32 UTC (permalink / raw)
To: Chris Marusich; +Cc: guix-devel
Chris Marusich <cmmarusich@gmail.com> skribis:
> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Hi Chris,
>>
>> Chris Marusich <cmmarusich@gmail.com> skribis:
>>
>>> FYI, there is an email list specifically for blog post review:
>>> guix-blog@gnu.org. I'm not sure if it's still active, since I can't
>>> find an entry for it on lists.gnu.org. In the future (assuming it's
>>> still active), you can send your blog post there specifically for
>>> review.
>>
>> It’s not a mailing list, just an alias currently pointing to Jelle,
>> Ricardo, and myself. It’s active but it’ll be even more active if you,
>> dear reader, offer to add your name to that alias. :-)
>
> I see. How would one add their name to the alias?
Currently one has to ask on this mailing list and Ricardo, myself, or
really anyone with access to fencepost.gnu.org can adjust accordingly.
Ludo’.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2019-01-23 11:11 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-25 11:47 Article: Playing with Guix REPL from scratch swedebugia
2018-12-25 18:01 ` swedebugia
2019-01-05 17:37 ` Ludovic Courtès
2019-01-06 3:24 ` swedebugia
2019-01-06 11:36 ` Pierre Neidhardt
2019-01-08 16:25 ` Ludovic Courtès
2019-01-10 7:46 ` Chris Marusich
2019-01-13 21:52 ` Ludovic Courtès
2019-01-14 9:44 ` Chris Marusich
2019-01-15 22:32 ` Ludovic Courtès
2019-01-23 1:52 ` Chris Marusich
2019-01-23 11:11 ` Ludovic Courtès
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.