Build determinism, dependency granularity, and dependency scope

2020-11-24 Thread Stephen Scheck
I have been trying to package an open source application written in Go for Guix, and along the way as I've come to understand the mechanics better, I've realized a few things which are a bit disconcerting. I'll refer to the package for Yggdrasil, as it was recommended to me as a good blueprint to

Re: Name resolution failures during build

2020-11-20 Thread Stephen Scheck
applications written in Go that are already packaged for Guix jump to mind? On Fri, Nov 20, 2020 at 4:34 PM Christopher Baines wrote: > > Stephen Scheck writes: > > > Sure - I understand the reasoning - but this is an open-source project > with > > its own build system th

Re: Name resolution failures during build

2020-11-20 Thread Stephen Scheck
). Is such a project unsupportable by Guix? On Fri, Nov 20, 2020 at 3:47 PM Christopher Baines wrote: > > Stephen Scheck writes: > > > I'm getting the following error when I try to install a package I'm > working > > on: > > > > go: github.com/Bur

Name resolution failures during build

2020-11-20 Thread Stephen Scheck
I'm getting the following error when I try to install a package I'm working on: go: github.com/BurntSushi/toml@v0.3.1: Get " https://proxy.golang.org/github.com/%21burnt%21sushi/toml/@v/v0.3.1.mod": dial tcp: lookup proxy.golang.org on [::1]:53: read udp [::1]:43973->[::1]:53: read:

Unaltered Git source

2020-11-19 Thread Stephen Scheck
Hello, Is there a way to retrieve the unaltered source of a Git project in a `(package ...)` definition? I'm using `%build-inputs` to retrieve the source, but this is a directory in /gnu/store, and all of the file permissions are changed to read-only (0400), which unfortunately causes problems

trivial-build-system and which

2020-11-17 Thread Stephen Scheck
This package definition always fails with #f returned by `(which "bash")` ... am I missing something? (build-system trivial-build-system) (arguments `(#:builder (begin (use-modules (guix build utils)) (invoke "make" (string-append "SHELL=" (which

Re: Package workspace relocation

2020-11-16 Thread Stephen Scheck
the trick, if I understand it correctly. Thanks. On Mon, Nov 16, 2020 at 3:56 PM Leo Famulari wrote: > On Mon, Nov 16, 2020 at 03:15:46PM -0500, Stephen Scheck wrote: > > Is there a way to relocate the package build workspace for a Git clone > > source, e.g.: > > > >

Package workspace relocation

2020-11-16 Thread Stephen Scheck
Is there a way to relocate the package build workspace for a Git clone source, e.g.: (package (name "my-package") (version "0.0.1") (source (origin (method git-fetch) (uri (git-reference (url

Guix GitLab Runner on Kubernetes

2020-08-17 Thread Stephen Scheck
Hello, I've created some resources for deploying a custom GitLab CI/CD Runner integrated with a Guix daemon with persistent store on Kubernetes clusters. You can use such a Runner to provide Guix services to your project CI/CD jobs which need it running on hosted gitlab.com. Details are here:

Re: Gitlab CI

2020-07-29 Thread Stephen Scheck
Ludovic Courtès writes: > Hello! I’m late to the party but I’m interested in this discussion… :-) > GitLab CI can run jobs directly in a Docker image: > https://docs.gitlab.com/ce/ci/docker/using_docker_images.html > So it would be interesting to have any easy way for people to create a

Re: Gitlab CI

2020-07-14 Thread Stephen Scheck
Jérémy Korwin-Zmijowski writes: > Hey Guixters ! > > I am experimenting with Gitlab CI for a Guile project I am working on. > It is managed with Hall and I would like to benefit the Guix features. > > Does anyone has done that before ? > Is there a way to get a Guix docker image instead of the

Re: Guix Docker image inflation

2020-05-31 Thread Stephen Scheck
On Sun, May 31, 2020 at 2:51 PM zimoun wrote: > Maybe the explosion of size would be slower. If you do, please report > here the number after say 12 generations; I am really interesting. ;-) > Now I'm confused - in your reply to Vincent, it seemed that there were still problems with the GC

Re: Guix Docker image inflation

2020-05-31 Thread Stephen Scheck
On Sun, May 31, 2020 at 5:37 AM zimoun wrote: > No, it is how Docker is designed. Maybe the terminology "layer" is > not the Docker one but when the images are chained, one cannot remove > the data of the previous layer of the total image. > I'm not disagreeing with that, but IF any of the

Re: Guix Docker image inflation

2020-05-31 Thread Stephen Scheck
On Sun, May 31, 2020 at 12:31 AM Chris Marusich wrote: > > Also, layers are helpful in the case of someone pulling down daily > > Guix Docker images on a frequent basis, because then only the new, > > ideally small layers need to be downloaded, whereas if you rebase for > > every image build,

Re: Guix Docker image inflation

2020-05-30 Thread Stephen Scheck
On Fri, May 29, 2020 at 7:55 PM zimoun wrote: > Thank you for the explanation. The issue is these layers. When I > wrote [1], it was not clear for me because I am not enough familiar > with Docker, but with your explanations, it is clear now. :-) > > [1] http://issues.guix.gnu.org/41607#1 >

Re: Guix Docker image inflation

2020-05-30 Thread Stephen Scheck
On Fri, May 29, 2020 at 7:31 PM Chris Marusich wrote: > > Could it be that you are accumulating layers without bound? > > > https://developers.redhat.com/blog/2016/03/09/more-about-docker-images-size/ > > Since Docker images are built up of immutable layers, if you build your > image from an

Re: Guix Docker image inflation

2020-05-29 Thread Stephen Scheck
On Fri, May 29, 2020 at 5:54 PM zimoun wrote: > Do you have '/var/' in your Docker image? Because it looks like the same > than: > Yes: root@guix ~# ls -la /var/guix total 44 drwxr-xr-x 1 root root 4096 May 16 19:36 ./ drwxr-xr-x 1 root root 4096 May 29 22:02 ../ drwxr-xr-x 1 root root 4096

Re: Guix Docker image inflation

2020-05-29 Thread Stephen Scheck
On Fri, May 29, 2020 at 2:44 PM zimoun wrote: > On Fri, 29 May 2020 at 20:37, Leo Famulari wrote: > > > > On Fri, May 29, 2020 at 08:21:08PM +0200, Marius Bakke wrote: > > > Leo Famulari writes: > > > > --branch and --commit would be passed to `guix pull`, and then you'd > run > > > > `guix

Re: Guix Docker image inflation

2020-05-29 Thread Stephen Scheck
On Fri, May 29, 2020 at 4:02 PM zimoun wrote: > Well, could you try > >guix system delete-generations >guix gc > root@guix /# guix system list-generations guix system: error: open-file: No such file or directory: "/var/guix/profiles/system-1-link/parameters" root@guix /# guix system

Re: Guix Docker image inflation

2020-05-29 Thread Stephen Scheck
On Fri, May 29, 2020 at 2:08 PM zimoun wrote: > How the initial Docker image > singularsyntax/guix-bootstrap:1.1.0-alpine-3.11 is built? > To understand, you use the Docker image > singularsyntax/guix-bootstrap:1.1.0-alpine-3.11 to build another > Docker image namely guix-docker-image.tar using

Re: Guix Docker image inflation

2020-05-29 Thread Stephen Scheck
On Fri, May 29, 2020 at 2:02 PM Leo Famulari wrote: > Okay. For debugging, can you try garbage collecting those modules > directories? And if the garbage collector refuses, you can investigate > why with the 3 R's of Guix garbage collection, --referrers, > --references, and --requisites. > #

Re: Guix Docker image inflation

2020-05-29 Thread Stephen Scheck
On Fri, May 29, 2020 at 1:08 PM Leo Famulari wrote: > I'm still not quite sure what you are doing (or what Docker does) so > please bear with me. > > > root@localhost /# du -h --max-depth=1 /gnu/store | egrep > > "guix-system$|guix-packages-base$|guix-[0-9a-f]*-modules$" > [...] > > 191M

Re: Guix Docker image inflation

2020-05-29 Thread Stephen Scheck
On Thu, May 28, 2020 at 3:33 PM Leo Famulari wrote: > I'm not familiar with Docker so I'm not sure exactly what you are doing. > Specifically, I can't tell if you are creating new Docker images from > scratch each day, or if you are continuing to use the same one from day > to day. The previous

Problem with `guix package --install-from-file` and certs on Guix System

2019-12-04 Thread Stephen Scheck
Hello, I'm trying to build a package locally - perl-net-bgp.scm was generated via `guix import cpan Net::BGP`: /# guix package --install-from-file=perl-net-bgp.scm Backtrace: In ice-9/boot-9.scm: 829:9 19 (catch _ _ # ?) In guix/scripts/package.scm: 943:10 18 (_) In guix/status.scm:

Re: Docker image not working

2019-11-30 Thread Stephen Scheck
seem to cause problems. I can then do e.g. $ docker exec -it /run/current-system/profile/bin/bash --login root@guix /# Thanks for your help! On Thu, Nov 28, 2019 at 8:35 PM Maxim Cournoyer wrote: > Hello Stephen, > > Stephen Scheck writes: > > > I don't think the

Re: Docker image not working

2019-11-28 Thread Stephen Scheck
`docker run` to fire up the container ... so what should it be to kick off the Shepherd service you referred to? Thanks. On Thu, Nov 28, 2019 at 11:09 AM Maxim Cournoyer wrote: > Hello Stephen, > > Stephen Scheck writes: > > > Hello, > > > > I'm trying to use the `

Re: Docker image not working

2019-11-28 Thread Stephen Scheck
seems like leveraging the `guix system` infrastructure to build a working, reproducible, and standard `/etc` tree is the way to go, but as already noted I'm not having any luck with the Docker images it produces. On Wed, Nov 27, 2019 at 11:40 PM Stephen Scheck wrote: > No, it does not: >

Re: Docker image not working

2019-11-27 Thread Stephen Scheck
Nov 27, 2019 at 9:39 AM zimoun wrote: > Hi, > > On Sun, 17 Nov 2019 at 18:17, Stephen Scheck > wrote: > > > $ docker run -it system:0qjxd5ljsh316ki7wqkk2xz9b68lynh2 > > /run/current-system/profile/bin/bash --login > > docker: Error response from daemon:

Re: Docker image not working

2019-11-17 Thread Stephen Scheck
> This is the command I invoked to create the image: > >guix system init --no-bootloader --skip-checks --system=x86_64-linux > guix-docker.scm /tmp/guix/docker-image Err, paste mistake, actually this: guix system docker-image --no-bootloader --skip-checks --system=x86_64-linux

Docker image not working

2019-11-17 Thread Stephen Scheck
Hello, I'm trying to use the `guix system` command to create a Docker image as documented here: https://guix.gnu.org/manual/en/html_node/Invoking-guix-system.html#Invoking-guix-system However, the created image does not work: $ docker run -it system:0qjxd5ljsh316ki7wqkk2xz9b68lynh2