Re: Problem installing Guix (through binary installation script) on AWS EC2
Sorry, I did not check the log files. I think it was probably the installation (through the script) had not been completed, causing subsequent problems. On Mon, Jul 19, 2021 at 7:28 PM Ricardo Wurmus wrote: > > > Lo Peter writes: > > > substitute: guix substitute: warning: ACL for archive imports > > seems to > > be uninitialized, substitutes may be unavailable > > Is this on purpose? > > > building > > /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv... > > > > \ 'build' phasebuilder for > > `/gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv' > > failed with exit code 1 > > > > build of > > /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv > > failed > > > > View build log at > > '/var/log/guix/drvs/hi/fim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv.bz2'. > […] > > Any idea on what might be the problem? Thanks. > > What does the log file say? > > -- > Ricardo
Re: Problem installing Guix (through binary installation script) on AWS EC2
Dear all, Some more updates. I tried uninstalling guix, and installing again using the script. It stopped somewhere in the middle saying "guix" not found. Probably it was also the case the first time I installed it. So the binary installation script probably has some problems. I then manually follow some of the steps in https://guix.gnu.org/manual/en/html_node/Binary-Installation.html#Binary-Installation And then I can "guix pull" and "guix install hello", "guix install glibc-locales" without problems. So I will proceed with the setup of guix, just to report that the binary installation script probably has problem. Regards, Peter Lo On Mon, Jul 19, 2021 at 3:30 PM Lo Peter wrote: > > Also, it seems I cannot install anything, e.g. "guix install > glibc-locales" as described in > https://guix.gnu.org/manual/en/html_node/Application-Setup.html would > result in the same error. > > On Mon, Jul 19, 2021 at 3:27 PM Lo Peter wrote: > > > > Dear all, > > > > Today I am trying to install guix on AWS EC2 using the binary > > installation script as described here: > > https://guix.gnu.org/manual/en/html_node/Binary-Installation.html#Binary-Installation > > > > It seems it can be installed, but then I try "guix pull", it gives errors: > > > > $ guix pull > > > > Updating channel 'nonguix' from Git repository at > > 'https://gitlab.com/nonguix/nonguix'... > > > > Updating channel 'guix' from Git repository at > > 'https://git.savannah.gnu.org/git/guix.git'... > > > > Building from these channels: > > > > guix https://git.savannah.gnu.org/git/guix.git 0f46e0b > > > > nonguix https://gitlab.com/nonguix/nonguix bdb3db9 > > > > substitute: guix substitute: warning: ACL for archive imports seems to > > be uninitialized, substitutes may be unavailable > > > > building > > /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv... > > > > \ 'build' phasebuilder for > > `/gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv' > > failed with exit code 1 > > > > build of /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv > > failed > > > > View build log at > > '/var/log/guix/drvs/hi/fim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv.bz2'. > > > > cannot build derivation > > `/gnu/store/1wld08ibgbxciq2wqlfrfs7i87p1lcbq-binutils-2.34.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/9z04i2yfif9wx69g88254xylfi2xrlnp-bzip2-1.0.8.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/0khkqdc4bcr9nbyg7h45hxspy6j14909-coreutils-8.32.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/m9yqd2aspkhabvhdl3sc42f8vh1ls1ps-diffutils-3.7.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/3jwiqbgrhrgalvks0hjkhbmf6vz2q3qs-file-5.38.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/rkbjigda3mpbb8gcxrgjdnmm1wnfq48y-findutils-4.7.0.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/fyazyla09myashz9dv10w21y77b8nlqz-gawk-5.0.1.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/ajb7id4hpgxxsm8lpihpf3ljhngynw7z-gcc-7.5.0.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/szrk3i56cwshfn531n64i7643kx8q987-glibc-2.31.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/1q5y6a4dbzmpa0iypidkyy309j6jl6c6-gmp-6.2.0.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/7hj8kbsqkm3qcpd8dyayx1c53r59ma2v-guile-3.0.2.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/9cdwvkm2r7nf9864qk32fa9g7bj0565x-gzip-1.10.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/qw8xr6frw3xikp5hc25q8ddwv6l7vk5v-gzip-1.10.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/aw32gpxkpq326kmxp28l9ihsqm86icha-libgc-8.0.4.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gnu/store/ha6k697mn6x947aady229n2xc5ascili-libltdl-2.4.6.drv': 1 > > dependencies couldn't be built > > > > cannot build derivation > > `/gn
Re: Problem installing Guix (through binary installation script) on AWS EC2
Also, it seems I cannot install anything, e.g. "guix install glibc-locales" as described in https://guix.gnu.org/manual/en/html_node/Application-Setup.html would result in the same error. On Mon, Jul 19, 2021 at 3:27 PM Lo Peter wrote: > > Dear all, > > Today I am trying to install guix on AWS EC2 using the binary > installation script as described here: > https://guix.gnu.org/manual/en/html_node/Binary-Installation.html#Binary-Installation > > It seems it can be installed, but then I try "guix pull", it gives errors: > > $ guix pull > > Updating channel 'nonguix' from Git repository at > 'https://gitlab.com/nonguix/nonguix'... > > Updating channel 'guix' from Git repository at > 'https://git.savannah.gnu.org/git/guix.git'... > > Building from these channels: > > guix https://git.savannah.gnu.org/git/guix.git 0f46e0b > > nonguix https://gitlab.com/nonguix/nonguix bdb3db9 > > substitute: guix substitute: warning: ACL for archive imports seems to > be uninitialized, substitutes may be unavailable > > building > /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv... > > \ 'build' phasebuilder for > `/gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv' > failed with exit code 1 > > build of /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv > failed > > View build log at > '/var/log/guix/drvs/hi/fim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv.bz2'. > > cannot build derivation > `/gnu/store/1wld08ibgbxciq2wqlfrfs7i87p1lcbq-binutils-2.34.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/9z04i2yfif9wx69g88254xylfi2xrlnp-bzip2-1.0.8.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/0khkqdc4bcr9nbyg7h45hxspy6j14909-coreutils-8.32.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/m9yqd2aspkhabvhdl3sc42f8vh1ls1ps-diffutils-3.7.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/3jwiqbgrhrgalvks0hjkhbmf6vz2q3qs-file-5.38.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/rkbjigda3mpbb8gcxrgjdnmm1wnfq48y-findutils-4.7.0.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/fyazyla09myashz9dv10w21y77b8nlqz-gawk-5.0.1.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/ajb7id4hpgxxsm8lpihpf3ljhngynw7z-gcc-7.5.0.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/szrk3i56cwshfn531n64i7643kx8q987-glibc-2.31.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/1q5y6a4dbzmpa0iypidkyy309j6jl6c6-gmp-6.2.0.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/7hj8kbsqkm3qcpd8dyayx1c53r59ma2v-guile-3.0.2.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/9cdwvkm2r7nf9864qk32fa9g7bj0565x-gzip-1.10.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/qw8xr6frw3xikp5hc25q8ddwv6l7vk5v-gzip-1.10.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/aw32gpxkpq326kmxp28l9ihsqm86icha-libgc-8.0.4.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/ha6k697mn6x947aady229n2xc5ascili-libltdl-2.4.6.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/852hgz8h2ha710sv8db8azqkk8s8k0x3-libunistring-0.9.10.drv': > 1 dependencies couldn't be built > > cannot build derivation > `/gnu/store/3gjjkdq3ll76lffa2563xx62h4w9cxks-linux-libre-headers-5.4.20.drv': > 1 dependencies couldn't be built > > cannot build derivation > `/gnu/store/fgn6d4mhn5bbzd0b17i0l592jqkav14i-make-4.3.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/gb91yqixlm04kcm3v930b7sjxzdgac6r-patch-2.7.6.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/6nvm10nv6wlkpyzdw0ja8llnn0c3afpb-sed-4.8.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/c5risfnmnqm45a29vi7n1f4wggjv3zsp-tar-1.32.drv': 1 > dependencies couldn't be built > > cannot build derivation > `/gnu/store/b7rgn9czp9qfdfrpyrz8ndj5dqfzrjw9-libtiff-4.2.0.drv': 1 > dependencies couldn't be built > > guix pull: error: build of > `/gnu/store/b7rgn9czp9qfdfrpyrz8ndj5dqfzrjw9-libtiff-4.2.0.drv' failed > > > > Any idea on what might be the problem? Thanks. > > Regards, > Peter Lo
Problem installing Guix (through binary installation script) on AWS EC2
Dear all, Today I am trying to install guix on AWS EC2 using the binary installation script as described here: https://guix.gnu.org/manual/en/html_node/Binary-Installation.html#Binary-Installation It seems it can be installed, but then I try "guix pull", it gives errors: $ guix pull Updating channel 'nonguix' from Git repository at 'https://gitlab.com/nonguix/nonguix'... Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... Building from these channels: guix https://git.savannah.gnu.org/git/guix.git 0f46e0b nonguix https://gitlab.com/nonguix/nonguix bdb3db9 substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable building /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv... \ 'build' phasebuilder for `/gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv' failed with exit code 1 build of /gnu/store/hifim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv failed View build log at '/var/log/guix/drvs/hi/fim0h1p7nw81mg6rl00g9q0m6vr0qw-bzip2-mesboot-1.0.8.drv.bz2'. cannot build derivation `/gnu/store/1wld08ibgbxciq2wqlfrfs7i87p1lcbq-binutils-2.34.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/9z04i2yfif9wx69g88254xylfi2xrlnp-bzip2-1.0.8.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/0khkqdc4bcr9nbyg7h45hxspy6j14909-coreutils-8.32.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/m9yqd2aspkhabvhdl3sc42f8vh1ls1ps-diffutils-3.7.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/3jwiqbgrhrgalvks0hjkhbmf6vz2q3qs-file-5.38.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/rkbjigda3mpbb8gcxrgjdnmm1wnfq48y-findutils-4.7.0.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/fyazyla09myashz9dv10w21y77b8nlqz-gawk-5.0.1.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/ajb7id4hpgxxsm8lpihpf3ljhngynw7z-gcc-7.5.0.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/szrk3i56cwshfn531n64i7643kx8q987-glibc-2.31.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/1q5y6a4dbzmpa0iypidkyy309j6jl6c6-gmp-6.2.0.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/7hj8kbsqkm3qcpd8dyayx1c53r59ma2v-guile-3.0.2.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/9cdwvkm2r7nf9864qk32fa9g7bj0565x-gzip-1.10.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/qw8xr6frw3xikp5hc25q8ddwv6l7vk5v-gzip-1.10.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/aw32gpxkpq326kmxp28l9ihsqm86icha-libgc-8.0.4.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/ha6k697mn6x947aady229n2xc5ascili-libltdl-2.4.6.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/852hgz8h2ha710sv8db8azqkk8s8k0x3-libunistring-0.9.10.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/3gjjkdq3ll76lffa2563xx62h4w9cxks-linux-libre-headers-5.4.20.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/fgn6d4mhn5bbzd0b17i0l592jqkav14i-make-4.3.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/gb91yqixlm04kcm3v930b7sjxzdgac6r-patch-2.7.6.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/6nvm10nv6wlkpyzdw0ja8llnn0c3afpb-sed-4.8.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/c5risfnmnqm45a29vi7n1f4wggjv3zsp-tar-1.32.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/b7rgn9czp9qfdfrpyrz8ndj5dqfzrjw9-libtiff-4.2.0.drv': 1 dependencies couldn't be built guix pull: error: build of `/gnu/store/b7rgn9czp9qfdfrpyrz8ndj5dqfzrjw9-libtiff-4.2.0.drv' failed Any idea on what might be the problem? Thanks. Regards, Peter Lo
Re: Fwd: SSH in git-fetch
Dear Chris, Thanks for the suggestion. I have previously tested that fetching from private channel works (after a workaround of use a PEM format of SSH key, due to a bug in libssh2). And I have just tested Luis's suggested workaround and can confirm that it works. Although the private channel will be kept only without our organization, I think the security team will frown if there are passwords in the package definitions committed to the repo. So I think meanwhile I will use the workaround suggested by Luis. Regards, Peter Lo On Wed, Jul 14, 2021 at 5:18 PM Chris Marusich wrote: > > Hi Peter, > > Lo Peter writes: > > > Is it that git-fetch does not support fetching over SSH? > > As Luis mentioned, for a package, if you use "git-checkout" as the > origin and provide a Git SSH URL, it will work. I'm not sure if an > equivalent exists for other transmission methods, but I doubt it (e.g., > using Mercurial over SSH to check out a Mercurial repository, or using > SFTP to fetch a release tarball over the SSH File Transfer Protocol). > For channels, it will work if you just provide a Git SSH URL in your > channels.scm file. I tested this just now on my own machines, and it > definitely works. > > However, since Guix uses libgit2 under the hood, rather than invoking > the "ssh" command, as you noticed there may be subtle differences > between how a vanilla "ssh" command works vs. how Guix will handle the > SSH connection. In any case, running an SSH agent might prove useful. > In both the case of fetching a package via git-checkout and fetching a > channel, Guix will attempt to fetch the repository "outside" the build > environment, so if you are running an agent, it will try to use it. I'm > not sure if Guix will honor your SSH config, though. > > If you are not wedded to SSH, then another option that may be better for > reproducibility is to use HTTPS with the user and password encoded in > the URL. This is nice because it doesn't require a user to to configure > SSH correctly on their local machine or provision an authorized SSH key > just to fetch the channel or the packages. In some situations, > embedding a user name and password in the URL in the package definition > may be sufficient, but in other situations, it may not meet your > security requirements (the URLs will wind up in the store and thus be > visible to anyone else logged into the system); it's up to you to decide > what's appropriate for your situation. > > Leo Prikler writes: > > > Yes, git-fetch does not support fetching over SSH. "Cannot run ssh" is > > the error returned because the ssh program is missing at fetch time, > > but even if it existed, you'd get a different error, namely one of > > lacking keys. You'd have to set up Guix to authenticate itself as you > > for pulling the source and while that is in theory possible, there is a > > potential security risk attached to most ways of solving it and no > > clear path forward. > > > > Furthermore, such a feature, were it integrated in Guix, is likely only > > to be used for nonfree software and thus located closely to such > > software itself. > > It sounds like you're suggesting that Guix should avoid making it easy > to integrate with existing access control mechanisms because access > control is only useful for non-free software. I disagree with that. > Access control is useful, and it is often necessary for security or > compliance reasons, even in the world of free software. > > The issue of controlling access to a particular repository of software > is orthogonal to the question of whether that software is free software. > It is common for someone to want to maintain a local copy of free > software and also to control access to that copy. In many > organizations, it is a hard requirement that all software is securely > stored and can only be accessed by authorized entities. This is true > regardless of whether the software is free software. It is also easy to > imagine that some people or organizations might prefer or be required to > develop all software, even free software, privately within their own > secure network. If Guix makes it difficult for developers to use it in > an environment where access control is required, Guix is less likely to > be used in those environments, and I think that would be a missed > opportunity. > > I don't think it helps the free software movement to encourage the idea > that access control is somehow antithetical to free software. It isn't. > Even the FSF controls access to its software repositories via SSH. > Savannah's projects may be available anonymously via FTP or other means, > but the SSH URLs are only usable
Fwd: SSH in git-fetch
-- Forwarded message - From: Lo Peter Date: Tue, Jul 13, 2021 at 10:38 PM Subject: SSH in git-fetch To: Dear all, I am experimenting with writing a package definition for an example R package (https://github.com/jennybc/foofactors) in a PRIVATE channel, where the R source is also at a PRIVATE github repository. While the private channel works with proper setup of SSH key (that needs to be in PEM format due to a bug in libssh2), I am having trouble with the private git repository for package source. Is it that git-fetch does not support fetching over SSH? The package definition I have is: (define-module (my-packages r-pkgs) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system r) #:use-module (gnu packages) #:use-module (gnu packages statistics)) (define-public r-foofactors (let ((commit "ef71e8d2e82fa80e0cfc249fd42f50c01924326d") (revision "1")) (package (name "r-foofactors") (version (git-version "0.0.0.9000" revision commit)) (source (origin (method git-fetch) (uri (git-reference (url "g...@github.com:peterloleungyau/foofactors.git") (commit commit))) (file-name (git-file-name name version)) (sha256 (base32 "1hmfwac2zdl8x6r21yy5b257c4891106ana4j81hfn6rd0rl9f72" (build-system r-build-system) (propagated-inputs `(("r-forcats" ,r-forcats))) (home-page "https://github.com/jennybc/foofactors;) (synopsis "A R package to make factors less aggravating.") (description "Factors have driven people to extreme measures, like ordering custom conference ribbons and laptop stickers to express how HELLNO we feel about stringsAsFactors. And yet, sometimes you need them. Can they be made less maddening? Let's find out.") (license license:expat Note that I have cloned the original public repository to my private repository (for testing purpose). I have added the package definition to my local ~/to_keep/projects/my-guix-pkgs/my-packages/r-pkgs.scm Then I test building it locally with $ guix build -L ~/to_keep/projects/my-guix-pkgs/ r-foofactors The following derivations will be built: /gnu/store/gnzw26jl9vw3z10cdnpcahd67zlf1ziy-r-foofactors-0.0.0.9000-1.ef71e8d.drv /gnu/store/2l35rb0s5fjk1v8vczir6cp6lfmbbf12-r-foofactors-0.0.0.9000-1.ef71e8d-checkout.drv building /gnu/store/2l35rb0s5fjk1v8vczir6cp6lfmbbf12-r-foofactors-0.0.0.9000-1.ef71e8d-checkout.drv... guile: warning: failed to install locale environment variable `PATH' set to `/gnu/store/378zjf2kgajcfd7mfr98jn5xyc5wa3qv-gzip-1.10/bin:/gnu/store/sf3rbvb6iqcphgm1afbplcs72hsywg25-tar-1.32/bin' hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m Initialized empty Git repository in /gnu/store/7i9py1b47lsg2d2wqjk68ha04rv2l89i-r-foofactors-0.0.0.9000-1.ef71e8d-checkout/.git/ error: cannot run ssh: No such file or directory fatal: unable to fork Failed to do a shallow fetch; retrying a full fetch... error: cannot run ssh: No such file or directory fatal: unable to fork git-fetch: '/gnu/store/ra24wp6glfzmpx1w6i3471aqcqqdrk96-git-minimal-2.32.0/bin/git fetch origin' failed with exit code 128 Trying content-addressed mirror at berlin.guix.gnu.org... Trying content-addressed mirror at berlin.guix.gnu.org... Trying to download from Software Heritage... builder for `/gnu/store/2l35rb0s5fjk1v8vczir6cp6lfmbbf12-r-foofactors-0.0.0.9000-1.ef71e8d-checkout.drv' failed to produce output path `/gnu/store/7i9py1b47lsg2d2wqjk68ha04r build of /gnu/store/2l35rb0s5fjk1v8vczir6cp6lfmbbf12-r-foofactors-0.0.0.9000-1.ef71e8d-checkout.drv failed View build log at '/var/log/guix/drvs/2l/35rb0s5fjk1v8vczir6cp6lfmbbf12-r-foofactors-0.0.0.9000-1.ef71e8d-checkout.drv.bz2'. cannot build derivation `/gnu/store/gnzw26jl9vw3z10cdnpcahd67zlf1ziy-r-foofactors-0.0.0.9000-1.ef71e8d.drv': 1 dependencies couldn't be built guix build: error: build of `/gnu/store/gnzw26jl9vw3z10cdnpcahd67zlf1ziy-r-foofactors-0.0.0.9000-1.ef71e8d.drv' failed Why is there an error of "cannot run ssh"? Is it that git-fetch does not support fetching over SSH? I would like to prompt the use of Guix for per-project management in my small team of data scientists, so we would need a private channel for a few internal R packages. The above problem is a real blocker. Any help is greatly appreciated. Regards, Peter Lo
Re: MIT license?
Thanks all for the clarifications. On Tue, Jul 13, 2021 at 12:09 AM Luis Felipe wrote: > > On Monday, July 12th, 2021 at 4:06 PM, Luis Felipe > wrote: > > > On Monday, July 12th, 2021 at 3:52 PM, Lo Peter peterloleung...@gmail.com > > wrote: > > > > > Dear all, > > > > > > I have a look at guix/licenses.scm, but seems there is no MIT license? > > > > You may be looking for Expat license (see this about "MIT License" > > http://directory.fsf.org/wiki/License:Expat) > > I meant to link to this instead: > https://www.gnu.org/licenses/license-list.html#Expat.
MIT license?
Dear all, I have a look at guix/licenses.scm, but seems there is no MIT license? Am I missing something? Regards, Peter Lo
Re: How to access private channel
After some googling, I found two related bug reports of libssh2: https://github.com/libgit2/pygit2/issues/1013 https://github.com/saltstack/salt/issues/57121 I guess Guix uses libssh2 to process private channels over SSH, if so, I think doing guix pull first would encounter the same problem. The suggested workaround is to generate a SSH key in the older PEM format using the "-m PEM" option of ssh-keygen. I have tried the workaround and it works for me. Regards, Peter Lo On Sat, Jul 10, 2021 at 1:42 AM Chris Marusich wrote: > > Lo Peter writes: > > > Dear all, > > > > I am experimenting with setting up a private channel as a private > > github repository, then I prepared a channels file for testing: > > > > (list (channel > >(name 'guix) > >(url "https://git.savannah.gnu.org/git/guix.git;) > >(commit "9904a15a4c838362673c1affdbaf1e83d92fe8ff")) > > (channel > >(name 'my-guix-pkgs) > >(url "g...@github.com:peterloleungyau/my-guix-pkgs.git") > >(commit "b51d236ebbbdd134bafb64e5092342a2d058ec2a"))) > > > > Then I try it with: > > $ guix time-machine -C channels.scm --disable-authentication -- > > environment --ad-hoc python-radian > > Updating channel 'guix' from Git repository at > > 'https://git.savannah.gnu.org/git/guix.git'... > > guix time-machine: warning: channel authentication disabled > > Updating channel 'my-guix-pkgs' from Git repository at > > 'g...@github.com:peterloleungyau/my-guix-pkgs.git'... > > guix time-machine: error: Git error: Failed to retrieve list of SSH > > authentication methods: Failed getting response > > > > > > So it seems the guix daemon cannot use the SSH of my user to access > > the private git repository? How to get around this? Thanks in advance. > > Does it work if you don't try using "time-machine"? For example: > > guix pull -C channels.scm --disable-authentication > > Followed by: > > guix environment --ad-hoc python-radian > > Does that work? I wonder if the "time-machine" part doesn't properly > handle channels fetched over SSH. > > -- > Chris
How to access private channel
Dear all, I am experimenting with setting up a private channel as a private github repository, then I prepared a channels file for testing: (list (channel (name 'guix) (url "https://git.savannah.gnu.org/git/guix.git;) (commit "9904a15a4c838362673c1affdbaf1e83d92fe8ff")) (channel (name 'my-guix-pkgs) (url "g...@github.com:peterloleungyau/my-guix-pkgs.git") (commit "b51d236ebbbdd134bafb64e5092342a2d058ec2a"))) Then I try it with: $ guix time-machine -C channels.scm --disable-authentication -- environment --ad-hoc python-radian Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... guix time-machine: warning: channel authentication disabled Updating channel 'my-guix-pkgs' from Git repository at 'g...@github.com:peterloleungyau/my-guix-pkgs.git'... guix time-machine: error: Git error: Failed to retrieve list of SSH authentication methods: Failed getting response So it seems the guix daemon cannot use the SSH of my user to access the private git repository? How to get around this? Thanks in advance. Regards, Peter Lo
Re: How to set global environment variables in Guix System
Thanks both for the replies. If I understand correctly, custom environment variables could be added through some kind of session-environment-service-type, I will try it out to learn more. Just for the record, I currently use a custom ~/.xsession script as a hack to source ~/.xprofile to set the needed environment variables and also start ibus-daemon, because I really only need i3 (and xfce as a fallback). Thanks. Regards, Peter On Sun, Dec 27, 2020 at 10:39 PM Tobias Geerinckx-Rice wrote: > > Michael Rohleder 写道: > > (simple-service 'my-ibus-ch-env session-environment-service-type > > '(("GTK_IM_MODULE" . "ibus") > > ("QT_IM_MODULE" . "ibus"))) > > ...much simpler. Thanks! > > Kind regards, > > T G-R
How to set global environment variables in Guix System
Dear All, I am trying to setup ibus-rime for Chinese input in guix system 1.2.0, after a lot of googling and trial and error, I found that I cannot set the needed environment variables: export GTK_IM_MODULE="ibus" export QT_IM_MODULE="ibus" export XMODIFIERS="@im=ibus" I have tried putting them in ~/.profile, ~/.pam_environment, ~/.xprofile and it seems they have no effects. If I am not mistaken, guix system now uses gdm as display manager, but I also cannot find a way to set environment variable for gdm sessions. Any help is greatly appreciated. Also, I think a way to let user customize /etc/environment through the system config will be useful, but I do not find a way to do so. Thanks. Regards, Peter
How to debug / investigate non-reproducible build for r-repr?
Dear all, I am trying to import r-languageserver, and one of its dependency is r-repr, which I found that cannot be built reproducibly (on my laptop's guix, installed on Linux Mint), i.e. guix build --rounds=2 r-repr would give the error saying that "...r-repr-1.1.0.drv differs from previous round". How should I begin to investigate the issue? Regards, Peter
Very slow download speed of substitutes
Dear all, I am trying guix import from cran, and building some R packages, which sometimes needs to download substitutes. i noticed that the download speed can be ridiculously slow and seems especially during night in HKT. Here is a snippet of the downloading: substituting /gnu/store/njhd9w4pvp2c6mbdngg1xvvld82a2c1l-ghc-ansi-wl-pprint-0.6.9... downloading from https://ci.guix.gnu.org/nar/lzip/njhd9w4pvp2c6mbdngg1xvvld82a2c1l-ghc-ansi-wl-pprint-0.6.9 ... ghc-ansi-wl-pprint-0.6.9 123KiB25KiB/s 00:05 [##] 100.0% substituting /gnu/store/p035ilg1b6ywpxxj8df494x8zxnnwg12-ghc-data-default-instances-containers-0.0.1... downloading from https://ci.guix.gnu.org/nar/lzip/p035ilg1b6ywpxxj8df494x8zxnnwg12-ghc-data-default-instances-containers-0.0.1 ... ghc-data-default-instances-containers-0.0.1 42KiB 37KiB/s 00:01 [##] ghc-data-default-instances-containers-0.0.1 42KiB 37KiB/s 00:01 [##] 100.0% substituting /gnu/store/fzvfc1zzqqg2y2f2j7a3p7268gbj8x18-ghc-digest-0.0.1.2... downloading from https://ci.guix.gnu.org/nar/lzip/fzvfc1zzqqg2y2f2j7a3p7268gbj8x18-ghc-digest-0.0.1.2 ... ghc-digest-0.0.1.2 50KiB 26KiB/s 00:02 [##] 100.0% substituting /gnu/store/5vkirs3zzwg7n099f5pwcf3kbf1mjxrg-ghc-entropy-0.4.1.5... downloading from https://ci.guix.gnu.org/nar/lzip/5vkirs3zzwg7n099f5pwcf3kbf1mjxrg-ghc-entropy-0.4.1.5 ... ghc-entropy-0.4.1.5 57KiB 21KiB/s 00:03 [##] 100.0% substituting /gnu/store/vv9mvx9fk8yk49fn0czmszss1s72za8c-ghc-erf-2.0.0.0... downloading from https://ci.guix.gnu.org/nar/lzip/vv9mvx9fk8yk49fn0czmszss1s72za8c-ghc-erf-2.0.0.0 ... ghc-erf-2.0.0.0 51KiB 32KiB/s 00:02 [##] 100.0% substituting /gnu/store/289w11bnbb8v5hav1463my181jchi1ck-ghc-executable-path-0.0.3.1... downloading from https://ci.guix.gnu.org/nar/lzip/289w11bnbb8v5hav1463my181jchi1ck-ghc-executable-path-0.0.3.1 ... ghc-executable-path-0.0.3.1 58KiB 12KiB/s 00:05 [##] 100.0% substituting /gnu/store/8wjlzpx0mxmfmcfq83kqg949vkqy05dh-ghc-extensible-exceptions-0.1.1.4... downloading from https://ci.guix.gnu.org/nar/lzip/8wjlzpx0mxmfmcfq83kqg949vkqy05dh-ghc-extensible-exceptions-0.1.1.4 ... ghc-extensible-exceptions-0.1.1.4 41KiB20KiB/s 00:02 [##] 100.0% One of ghc-* (not shown above) which weights around 97MB took 2 hours to download. But when I use speedtest.net to test my internet speed (https://www.speedtest.net/result/9675438421) I get about 80Mbps both upload and download, while some substitutes are still download (and they are still downloading when I am typing this). So is this problem with my guix setting or is it known that ci.guix.gnu.org is slow? This guix is installed on Linux Mint 19.2, and I did "guix pull" yesterday. Regards, Peter
Re: Install older version of a package with the "@version" specifier
Thanks a lot for the clarifications. On Sat, Jun 27, 2020 at 2:04 AM zimoun wrote: > > Dear, > > On Fri, 26 Jun 2020 at 19:15, Julien Lepiller wrote: > > > - use r from an old revision of guix that had the version you're looking > > for. This can be done using an "inferior". The package will more likely > > build (and even have substitutes), but it uses the old version of all its > > dependencies, which are not necessarily patched for vulnerabilities and may > > require more space to be stored, as they are not shared with other packages. > > It is not easy to find the old revision (commit) which owns the > version you are looking for. In such cases, the Guix Data Service > could help. For example, this URL lists all the R versions in Guix > over the time: > > https://data.guix.gnu.org/repository/1/branch/master/package/r > > As you can see, it is rare that 2 versions of R exist at the same time > in Guix. I let you click and you will find that the last commit > containing the R version 3.6.3 is the commit 899093. > > https://data.guix.gnu.org/revision/89909327d017198969436237acc7c93823ff8147/package/r/3.6.3 > > Then the way for creating an inferior is "guix time-machine". It goes > back but without polluting your current setup; you can have different > versions from different time/commit. The following command creates > temporarily an old Guix version and use it for spawning an environment > containing R. > > --8<---cut here---start->8--- > $ guix time-machine --commit=899093 \ > -- environment --ad-hoc r-minimal \ > -- R > R version 3.6.3 (2020-02-29) -- "Holding the Windsock" > [...] > > sessionInfo() > R version 3.6.3 (2020-02-29) > Platform: x86_64-unknown-linux-gnu (64-bit) > Running under: Debian GNU/Linux 10 (buster) > > Matrix products: default > BLAS/LAPACK: > /gnu/store/vax1vsg3ivf0r7j7n2xkbi1z3r0504l9-openblas-0.3.7/lib/libopenblasp-r0.3.7.so > > locale: > [1] C > > attached base packages: > [1] stats graphics grDevices utils datasets methods base > > loaded via a namespace (and not attached): > [1] compiler_3.6.3 > > > --8<---cut here---end--->8--- > > Instead of 'environment', you can use 'install -p > /path/to/profile/with/old/R'. However, it is important to be clear > with which version of R you are using and which version is used to > "compile" the R packages you will install, and use a manifest.scm file > is really a good practise when traveling in time. :-) > > > Hope that helps, > simon
Install older version of a package with the "@version" specifier
Dear all, I am trying to install r version 3.6.3, where the current version is at 4.0.2. Accordingly to the manual at https://guix.gnu.org/manual/en/html_node/Invoking-guix-package.html it should be possible to specify the package version such as "guix package -i r@3.6.2", but on my guix (installed on slackware 14.2), it says: guix package: error: r: package not found for version 3.6.2 What am I missing here? Regards, Peter