<sebboh>dang, I'm new to rust and I'm having minor problems and I don't know if they are rust, or guix system. So, I did `guix install rust rust:cargo` and then I was able to do `cargo new hello-rust` no problem. <sebboh>but `cargo install rustfmt-nightly` fails with a TLS error (probably I don't have the right ca certificates in place). Meanwhile if I invoke curl from the command line with debug on, I see this line in the output: "* found 154 certificates in /home/sebboh/.guix-profile/etc/ssl/certs/ca-certificates.crt" and I don't get errors. *jonsger misses `guix environment` so much on his power machine :( <sebboh>"The purpose of ‘guix environment’ is to assist hackers in creating reproducible development environments without polluting their package profile." Nice, thanks jonsger! <mbakke>jonsger: what's the scoop on cross-compiling the bootstrap tarballs for ppc? <jonsger>mbakke: ppc32 is easy (efraim did this before), ppc64le needs gcc6.2 or greater <mbakke>jonsger: have you tried it on 'core-updates'? <jonsger>and I don't have a fast x86 machine anymore, only a 2c/4t laptop :( <sebboh>can I list all the packages provided by a certain .scm file? Wait probably with grep XD <dftxbs3e>mbakke, I made a container image with the progress of porting <sebboh>Sorry for the "attention deficit disorder" I am putting on display here but.. `find /gnu/ -iname certs.scm|wc -l` returns 22. How may I know which certs.scm my current guix profile is going to use? (is 'current profile' the right phrase?) <dftxbs3e>compiled at registry.gitlab.com/lle-bout/guix <dftxbs3e>mbakke, currently it's stuck on a header issue on gcc-boot0 <dftxbs3e>just run `guix build hello` within that container to debug <mbakke>sebboh: I think installing 'openssl' into your profile will set up the required environment variables <sebboh>I will try that but there is something missing here. (curl from guix already works. It is installed in the same profile that rust:cargo is. Cargo uses curl under the hood.) <dftxbs3e>mbakke, target triplet is powerpc64le-linux-gnu <dftxbs3e>the branch I linked is patched with using gcc-7 everywhere needed in the bootstrap path <pkill9>sebboh: you can get the list of installed packages with `guix package -I | awk '{print $1}'`, then if you put the output of that in a file you could do on the second machine `guix package -i $(cat package-list.txt | xargs)` <mbakke>dftxbs3e: can you try the current 'core-updates' branch? <mbakke>sebboh: I see. There is a long-standing problem with libcurl in that it cannot locate TLS certificates from the environment. <dftxbs3e>mbakke, how current? This is like not even a week old <mbakke>sebboh: Perhaps Cargo can locate certificates from the environment? <mbakke>sebboh: you should try asking on help-guix@, I'm sure someone has figured out a way to use TLS with Cargo <mbakke>dftxbs3e: oh right, I thought it was based on 'master' <mbakke>dftxbs3e: do you have the build log available somewhere? *mbakke runs `./pre-inst-env guix build --keep-going --target=powerpc64le-linux-gnu bootstrap-tarballs` <dftxbs3e>for ./pre-inst-env guix build --keep-going --target=powerpc64le-linux-gnu bootstrap-tarballs to succeed <dftxbs3e>but unfortunately that's not it, there's some bits that still compile with gcc-4 in commencement.scm so I started figuring it out but stuck on a gcc compilation issue <dftxbs3e>I will set up ppc64le CI and show you logs <dftxbs3e>it's an error about brk, strstr, etc being redefined <mbakke>dftxbs3e: right, so 'gcc-for-libstdc++' fails? <sebboh>mbakke: nope, installing openssl didn't do the trick. yeah I'll check the guix-help list, thank you <mbakke>dftxbs3e: I think you'll have to create a new libstdc++-boot0 variant that does not use GCC 4 <dftxbs3e>mbakke, it's done already, now it's gcc-boot0 I think <mbakke>gcc-boot0 is not using GCC 4 apart from the libstdc++ input <mbakke>dftxbs3e: it's probably failing because the C++ library it uses comes from GCC 4 <mbakke>dftxbs3e: try to make 'libstdc++-boot0' inherit from 'gcc' instead of 'gcc-for-libstdc++' <dftxbs3e>mbakke, okay so sorry, what's buggy is: "../../gcc-7.4.0/gcc/../include/libiberty.h:112:14: error: ambiguating new declaration of 'char* basename(const char*)' <dftxbs3e> extern char *basename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1); <mbakke>I tried to use gcc-7 instead of gcc-4.9 for libstdc++-boot0, and it fails with a similarly confusing error <mbakke>dftxbs3e: I would start by trying to update the bootstrap libstdc++ somehow <mbakke>perhaps you can use the one from the bootstrap compiler ? <leungbk>Is there an easy way of disabling all autoloads for a Guix-installed Emacs? <sneek>Welcome back leungbk, you have 1 message. <sneek>leungbk, efraim says: I'm not sure about making sure packages only appear in cargo-inputs or cargo-dev-inputs, but the package definition only needs to happen once <mbakke>dftxbs3e: did you update gnu/packages/bootstrap.scm with the cross-compiled ppc64le bootstrap-tarballs? <mbakke>dftxbs3e: nvm, I just checked the branch :) <mbakke>dftxbs3e: derp, I patched the wrong GCC... <dftxbs3e>mbakke, it now failed on a configure step saying it can't figure out sizeof(long long) <mbakke>dftxbs3e: does the bootstrap compiler have libstdc++.so ? <dftxbs3e>I'm re-running with --keep-failed to investigate.. <dftxbs3e>mbakke, bootstrap compiler is static linked AFAIK <dftxbs3e>either way the archive doesnt have libstdc++.so <dftxbs3e>it has .o and .a though but that's for linking afterwards <mbakke>dftxbs3e: to build libstdc++ for later versions of GCC, I think you need to do a full GCC build before descending into libstdc++-v3 ***jonsger1 is now known as jonsger
<dftxbs3e>mbakke, the only way I can use gcc-4 on POWER is by compiling full gcc with glibc 2.24 <mbakke>dftxbs3e: in that case this should be a nicer workaround :) <dftxbs3e>mbakke, full path to glibc 2.29 is: gcc-4 + glibc 2.24 => gcc-7 + glibc 2.24 => gcc-7 + glibc 2.<latest> <mbakke>dftxbs3e: I hope building a newer libstdc++ will remove the need for that chain :/ <dftxbs3e>mbakke, I think libstdc++v3 should work, shouldnt it? <mbakke>dftxbs3e: I suppose... I guess there's nothing really ppc64le specific in later versions. ***runejuhl1 is now known as runejuhl
<jollyjester>this stuff doesn't even have a place in the manual, there's absolutely no documentation on how to remove and disable GDM <iv-so>hi, guys! how can I use gcc 9 (or any other specific version) to build the package? <u0_a134>I wan't copy my machine guix to other machine <iyzsong>jollyjester: You need replace [line 45] (service %desktop-service) with (service (remove .... %desktop-service)) (from line 7) <iyzsong>also you may want add another xorg-service like 'slim-service-type'.. <jollyjester>well i don't want to use any other display manager i just want to startx manually, you see <jollyjester>also i can't find ANY documentation for this, would you give me a link so i can examine further? <iyzsong>okay, but guix doesn't have an out-of-box working 'startx' currently. i remember there are some hacking mentioned in the mailing list about how to do it.. <u0_a134>I always install xorg on my alpine and then install guix. There are too many installer bugs in guixsd. I don't want to use it for the time being. <jollyjester>anyways, please give me some advice on how i can replace gdm with another lightweight display manager <jollyjester>just not lightdm or any heavy one, the most minimal one you can get <jollyjester>just go to the 0bin link i sent, edit it accordingly and send it back <jollyjester>make sure to delete GDM and disable it and replace it with slim <quiliro>i cannot understand what he says is the name othe software... alink, slink, .... <reepca>as in 'guix package -i guile-8sync' <sneek>Welcome back jollyjester, you have 1 message. <reepca>jollyjester: the gist of it is that, first, REMOVE is not destructive. It returns a new list that is "like the old one, but without the elements that match the predicate" <reepca>so your use of it up there didn't affect %desktop-services at all <jollyjester>also do you know how i can start services at startup? <jollyjester>does it even have services ootb or do i need to make them myself? <reepca>but, if we bind the result to a variable and use that instead of %desktop-services for the SERVICES field of the operating-system declaration, then it'll pick it up <reepca>and CONS returns a new list consisting of the first argument followed by the elements of the list that is its second argument <reepca>first thing to note: there are two general classes of "services": guix services and shepherd services. The ones you directly specify in your config.scm are guix services, but when the operating-system is built (as part of 'guix system reconfigure ...') it may generate some shepherd services and add them to the list of shepherd services for the system. <reepca>shepherd services have a field, AUTO-START?, which controls whether shepherd will automatically try to start them when it starts up. <reepca>for further reading, let me refer you to the relevant parts of the guix and shepherd manuals: "info guix 'Service Types and Services'" and "info shepherd 'Jump Start'" <reepca>most shepherd services generated by guix where it makes sense already have AUTO-START? set to #t (true), and it's the default if it's not specified. <reepca>for example, slim will be automatically started when your system boots up <reepca>the qtbase package has qmake, libraries, and development headers <reepca>and we have zlib and quazip in (gnu packages compression) <raghavgururajan>reepca Thanks for suggestion. i appreciate it. The reason I asked for help was because I neither have time nor energy to do it at the moment. :/ <zaab>If I want to develop a C program is "guix environment gcc-toolchain" a reasonable way to get a compiler? <reepca>you want guix environment --ad-hoc gcc-toolchain <reepca>the other one would give you an environment for building gcc-toolchain <zaab>reepca: ah so --ad-hoc leaves me in an environment as if it had been installed, whereas no flag gives me the build tools as well? <reepca>zaab: the main argument of 'guix environment' names the package you want /to be able to build/. To accomodate this, 'guix environment' will create an environment with all the dependencies of that package. Anything past --ad-hoc is just a list of packages you happen to want to have in the environment as well. <reepca>so if you want to develop a generic C program, "guix environment --ad-hoc gcc-toolchain" is the way to go. If you want to hack on a specific C program that's been packaged for guix, "guix environment <some-program>" is the way to go. <zaab>I am trying to make a symlink in my system definition. This is what I got: "(extra-special-file "/home/zaab/.guix-profile/bin/vim" (file-append neovim "/bin/nvim"))". This fails because I try to make it in a read-only file system. <zaab>I don't really care where vim is placed as long as it is on $PATH. Any suggestions? <reepca>ah, yes, that'd be because /home/zaab/.guix-profile itself is a symlink to in the store, which is indeed read-only. The only places $PATH is set to by default are /run/current-system/profile/{s}bin and the bin directories of the profiles the user has (usually just the profile 'guix pull' creates and ~/.guix-profile). You could make a package that just produces the desired symlink in a bin subdirectory of its output, then include that in <reepca>although in that case if vim is installed in a per-user profile, it'll be found before the system's symlink is <reepca>alternatively you could augment your PATH in one of your bash dotfiles to include a place that isn't a guix profile and then your extra-special-file could put the symlink there <ng0>I think I'll drop updating gnurl for now, apparently 4 GB RAM and 2 virtual CPUs is not enough anymore/again to build guix from master. Or should I try again and giving it 10 CPUs and 20GB RAM? <reepca>or you could make a vim-symlink package and install it for your user ¯\_(ツ)_/¯ <ng0>zaab: ln -s ~/.guix-profile/bin/nvim ~/bin/vim ? <reepca>ng0: ~/.guix-profile is read-only, as it's a symlink to a profile in the store <reepca>agh, I always get the arguments to symlink backwards <ng0>I'??m not using guix at the moment, but that's how I've always handled things which weren't aliases <ng0>like my "mailget" script, builds in its src/util/ and gets symlinked into ~/bin/, and ~/bin should be in the PATH. if isn't, it's easy to fix. <abralek>Does anyone have a snippet how to define a plugin-configuration for dovecot? <zaab>guess I can just add /bin to path <abralek>It should expand into something like plugin { fts = lucene } <ng0>hm, a bit offtopic. does anyone know if Nijmegen and Arnhem Centraal trainstations provide ways to buy tickets with cash at a ticket machine? or do you have to register in advance for a card? <ng0>I know we had some people circling that region :) <alloy>Hi! Is there a way to import multiple (gnu packages ...) modules at once? So that the gnu packages part can be ommited. Thanks! <abralek>alloy: take a look at (use-package-modules ...) it is defined in gnu module <Minall>I made a generation with the newest kernel, and it froze on xorg so, I want to delete the generation... Using 'guix system list-generations' says that I'm on the latest generation (the one that doesn't work), even thought I entered with the first generation, one that works... <Minall>How should I add new fonts to guix? <rekado_>Minall: do you mean how to *package* fonts for Guix? Or how to install fonts provided by Guix? <rekado_>for packaging I suggest looking at any of the “font-*” packages that already exist. <Minall>rekado_: I mean, install a font I have lol <Minall>I have a .ttf font, and I dont know where to put it in order to use it <Minall>I discovered .guix-profile/share/fonts/truetype, but I can't write on it <pen14641>Hi, has anyone else had a problem with numbers being invisible (they look like tabs) in IceCat? It doesn't happen when using Gnome, but when using XFCE or Enlightenment (desktop services) it does.. <rekado_>you would need to run fc-cache afterward. <Minall>where does it say that, the manual doesn't have anything about manual font installation...} <rekado_>pen14641: I haven’t seen this problem before, but there are other odd problems with fonts and IceCat. <rekado_>Minall: it’s not Guix-specific. I think that’s just how this fontconfig stuff works everywhere. <rekado_>it’s got a list of directories to search and a cache so that it doesn’t need to go look for fonts every time. <Minall>Oh! thanks rekado_ ! it seems that now fc-list sees my font! <Minall>Regarding my latest problem... I made a new reconfigure session that doesn't work, so I entered my oldest one that works <pen14641>rekado_: Ah ok, thanks.. Do you know if there are known fixes for some of the problems? I haven't been able to find anything online <Minall>But using 'guix system list-generations ' says I'm on the latest one, and I'm on the oldest one that works <rekado_>pen14641: the search isn’t working too well but perhaps you can find something on issues.guix.gnu.org? <rekado_>I’m not aware of any fixes, but I haven’t really followed the discussions about IceCat. <pen14641>rekado_: Ok, it's giving me some problems, but I'll try, thanks! <rekado_>we expect the new build farm servers to arrive here on the 30th of August. Could take longer; that’s just the current estimate. <Minall>What does these build farms could have?} <quiliro>Minall: those build farms build guix substitutes <Minall>quiliro: Yes but, do they have more packages for example? <quiliro>Minall: mi fartas malbone....via tasko ne estas lista <quiliro>Minall: no the do not have more packages <pen14641>I found a bug report of from someone with the same IceCat font problems as me from June 23, but noone has commented on it. Is IceCat the only Firefox-based browser on Guix? <pen14641>Does everyone just use text-based browsers? :P <zaab>I'm getting a weird error. Is /homeless-shelter/ a guix thing? <zaab>that is an absolute path <rekado_>Minall: the servers are new and much faster. <bavier>zaab: it's set as the value for the HOME env var inside the build container <rekado_>zaab: it’s a Guix thing. During the build we set HOME to a non-existing directory. <rekado_>pen14641: I’m using icecat and epiphany; I don’t have those problems. <rekado_>pen14641: a difficulty appears to be in reproducing the problems. <zaab>pen14641: I have the exact same problem with IceCat and numbers <alloy>Is there any example on how to skip a phase of gnu-build-system? I'd like to skip the configure phase <quiliro>pen14641: zaab ...what is that problem? <rekado_>there are many examples in gnu/packages where we (delete 'configure) <alloy>rekado_: Thanks for the tip! <rekado_>so… the LDAP auth problem from the point of view of SSHD is that it tries to find the libnss_ldap plugin in the glibc output. <quiliro>pen14641: would you please tell me what i have to do to have your same problem? <rekado_>SSHD seems to try to open it directly <rekado_>only NSCD’s LD_LIBRARY_PATH has been augmented so SSHD doesn’t look anywhere else. <jonsger1>pen14641: there is also ungoogled-chromium browser... <pen14641>jonsger1: Ah okay, maybe I'll have to use that for some time then.. <pen14641>quiliro: Woops forgot to say, I don't have the problem in Gnome <zaab>this is wikipedia frontpage. On most sites it is even more unusable <quiliro>i cannot see that image...perhaps searxes is blocking third party websites <zaab>bavier, rekado_, what is the solution when a build expects to be able to make a folder in my home? <zaab>I do not care if it actually gets to, it is just a cache, but I dont want to build to fail <zaab>quiliro: sorry. How would you prefer I share the image? <bavier>zaab: usually to redefine HOME: (setenv "HOME" "/tmp") <bavier>zaab: and include a comment saying why you're doing that <pen14641>quiliro: I'm back. Sorry, did you write to me after I left? I have the same problem outside the VM. As long as the gnome service is activated/installed in my config, I don't have the problems, even when using XFCE <iv-so>zaab: you can also patch the build script <quiliro>zaab: would you please include those new findings on the mailing list? <zaab>bavier: isnt setenv for runtime environments? this is for build time <zaab>quiliro: which findings? <quiliro>zaab: the fact that it works only when gnome is installed and that it is the same problem on a real system apart from a virtual machine <zaab>quiliro: I think you meant to address pen14641. You are free to include my screenshot <rekado_>everything is better when adding passwd and group caches to nscd! <rekado_>while sshd still doesn’t do the right thing, at least “id” and “su” work as expected. <MaliRemorker>is there a simple way of changing the compilation options in a guix package -i one-liner? <quiliro>zaab: i cannot include your screenshoot, i cannot see it <ngz>MaliRemorker: I don't think it is possible to change compilation options from the command line, but you might change the compiler version with `--with-input=gcc=gcc@8' or some such. Untested, though. <jollyjester>hello does anyone know how i can get openvpn to work with resolv.conf <pen14641>zaab: I can write it in the mailing list.. But which one is it? <Minall>Why is necessary to guix to name files using Hashes? <jollyjester>i think there was some kind of openvpn-resolv package in the AUR of arch, is there something similar to it on guixsd? i'm just trying to get openvpn working with resolv.conf <quiliro>Minall: they are just to identify diffent compilations of programs <quiliro>hashes are calculated and are unique... a file that has 1 bit different from another, has a different hash <quiliro>Minall: so you can test if the file is the same as another by checking its hash <Minall>Thanks for the aclaration quiliro ! <quiliro>it will be of use for all...even for me if someone corrects me! <jollyjester>ok so hol up does anyone here know anything about openvpn resolv.conf or not <ngz>jollyjester: I cannot really help you, but did you read the manual about VPN services? It might give you your answer. <jollyjester>it's just a package that needs to be added to guix i think <jollyjester>but, it NEEDS to be added since if it was in the repos i would've installed it already <jollyjester>it should give you more details about what i'm talking about <jollyjester>i believe the package that needs to also be added is openresolv <quiliro>installed git...but that is the client. or is it also the server? <ng0>quiliro: see git service and also cgit <lfam>Josh_Marshall: I don't that file was ever submitted to Guix <lfam>Josh_Marshall: I mean, I don't think <alloy>Currently trying to build my first package definition! I just get a strange warning: expected keyword arg. What does it mean? <nckx>alloy: Keyword arguments are #:these-things. Looks like you're missing one. We'll need more info (and your code) if you want more 🙂 <alloy>nckx: Thanks alot! That got me thinking about a parathese I had misplaced <alloy>Is there a way to set an environment variable for an entire build/test cycle of gnu-build-system? I need to set CC=gcc <rekado_>alloy: you could add (arguments '(#:make-flags '("CC=gcc"))) <rekado_>alloy: or add a build phase that looks like this: (lambda _ (setenv "CC" "gcc") #t) <rekado_>alloy: using make-flags would be preferable. <quiliro> I found that a user can also run 'git daemon' from inside the git repository working directory in order to make it available remotely. <quiliro>But i cannot access it as user...i know it is available on port 9418...but then how can i git clone remotely? <ng0>provide access remotely via ssh reversetunnel, dyndns, tor, or anything similar <str1ngs>quiliro: just do it over ssh or local file system <str1ngs>quiliro: eg: git clone user@myhost.com:src/project <str1ngs>just keep in mind can't push to checkout branches. it would need to be a bare repo <lfam>ngz: Did you try google any of the phrases? <ngz>I qwant'ified it, and I got this link. <lfam>ngz: If you google it you'll see it's a rearranged BSD 4-clause <ngz>If only I allowed me to use Google... ;) <raingloom>could someone help with this linker error? crt1.o and crti.o are missing but glibc seems to be on the include path. i'm trying to compile Idris 2 by doing the C codegen, compilation and linking steps separately and it worked on Arch but not on Guix SD <lfam>Well you offloaded the use of google on to the rest of us... <raingloom>(it looks like it found everything else, like gmp, idris_rts, etc) <ngz>lfam: That's an unfair claim, btw. I didn't know the solution was to use Google. And asking a question does not imply offloading work on to others, or so I think. <ng0>yeah basically everything which includes 1.,2.,3.,4. or any number of that + its first lines starting with "All Rights Reserved" is an indicator for BSD-*. When the licenses were drafted "All Rights Reserved" was what lawyers considered to be necessary. Today you find this nowhere else <ng0>you basically can fetch a repository with license texts and compare them. and there's an odd chance that a license-checker will catch it too <ng0>it's not that obvious tbh and only gets obvious through practice / reading <lfam>Sorry, ngz. I was way too harsh <lfam>ngz: I stopped using google for a year or so but I realized that people around me were often googling things on my behalf. My personal decision was that some loss of privacy is worth it for what google search gives to me, and not using it was causing me to start falling behind socially and professionally <lfam>I tried really hard with alternatives to search and maps and came up short <ngz>Well, that's a pretty sad story: way too much implications behind the choice of a search engine. <lfam>It's so good because it learns from all the users. So you get some collective knowledge <raingloom>soo, anyone knows why ld might not find something that is very clearly on its search path? :\ <str1ngs>raingloom: is this in a package? or from say console? <raingloom>str1ngs a custom package that failed to build (which was expected) so I jumped into its build directory in /tmp, sourced the environment-variables file, and tried compiling it manually <raingloom>it tries to find crt1.o and crti.o and those are in /gnu/store/whatever-glibc-2.28/lib, which is definitely on the linker path, as the log shows. but just in case i added it with -L, but that didn't change a thing. <str1ngs>-dynamic-linker /lib64/ld-linux-x86-64.so.2 this is definely wrong ang going to fail <str1ngs>guix should set the dynamic-linker but I'm not sure how to do this when calling clang directly from within a build. <str1ngs>unless that was used for testing only? <raingloom>but i think gnu-build-system patches ELF files to link properly? not sure tho <rmk35>Is there any reason why when I run guix system reconfigure, the updating substitutes message gets printed so many times, all for the same host 'https://ci.guix.gnu.org'?