<cnmne>another hint was the emacswiki tramp mode had a comment from someone on nixos <cnmne>thanks! i'll poke around a little more <chipb>aha. I think I actually captured in my dotfiles after all. <chipb>emacs: search remote $PATH set in shell startup files <-- sound promising? <chipb>(setf tramp-remote-path (cons 'tramp-own-remote-path tramp-remote-path)) <chipb>I put that in my (use-package :config) <chipb>if I remember the detail correctly -- in effect instead of only using tramp's concept of what the remote search path should be, supplement it with what gets set through your .profile during shell init. <chipb>I can see why they don't default to that, but it behaves poorly on less "regular" systems that don't install everything in, say, /usr. <bUst4gr0>is someine can say me where i can find the script of the graphical install, he is actually freezing on 'wpa-connect' <cnmne>chipb: using spacemacs, so I'm going to try editing the user-config, then restart <bUst4gr0>i just want to check it, but i'm not sure i can fix it, since it's on the installation media <nckx>But there's no ‘wpa-connect’ in Guix. <nckx>By which I mean the Guix code. <bUst4gr0>i connected from cli but seems like wifi connection not available for gui install <blendergeek>NieDzejkob: I mean `ifconfig -a`, sorry. I just mistyped it here. I typed it correctly in guix and I got no results. <nckx>Can't help you there. Not actually used the graphical installer myself. <nckx>It definitely supports Wi-Fi (including WPA2) though. <nckx>If you were able to connect manually (meaning your card is libre & supported) but not via the GUI that's a bug. <bUst4gr0>not freezed, but connection in progress textbox never disappear <nckx>Definitely sounds like the same problem. <nckx>If my memory serves me, I was able to reproduce it only on a borrowed laptop with 2 wi-fi cards, but I had to give it back. The problem went away when I took either one out. You're not dual-wielding wireless chips by any chance? <bUst4gr0>seems like it's the internal wireless chips who isn't suported <nckx>Connman is supposed to handle rfkill itself, but IIRC it didn't quite do the right thing. Unfortunately the patch to fix it was on that laptop and our parting was not amicable. <nckx>Aha. Still, it shouldn't hang. <jonsger>is there a way to combine a list of specifications->manifest with %base-packages <jonsger>can handle specification->package packages with outputs like transmission:gui <nckx>You need to use specification->package+output for that. <dissoc>how do force a re-download of the source file when installing a package or remove it from /gnu/store? <nckx>dissoc: guix gc -D /gnu/store/foo.tgz <nckx>dissoc: But this is one of those ‘why do you actually think you need to do this questions’. <narispo>janneke: amazing work on bootstrapping! <dissoc>nckx: that's a good question. the package install was failing because of a tar xvf error. but when manually downloaded it worked <dissoc>i just wanted to restart as a sanity check <dissoc>i honestly dont know what went wrong but deleting it worked <nckx>Strange, Guix is really pretty good at hashing things. <nckx>Glad it worked. Also a little worried. <dissoc>im sure it's something i did wrong. not sure what tho <cnmne>chipb: setting tramp-remote-path seems to be working; still getting a failed insertion, and the debug is saying there's no file notification program; I installed inotify-tools, but i guess that's not what it means <cnmne>also the Messages say there's a "wrong method specification for 'ssh'" <chipb>cnmne: hm. I'm not sure I tested tramp shell as I generally do that direct from a non-emacs terminal. <chipb>you did clear the tramp connection cache for the host, yes? <chipb>out of curiousity, what does 'getconf PATH' return for your guix host? I no longer have one running at my disposal. <cnmne>yes, deleted `.emacs.d/tramp'. and getconf isn't a command i have or a package. is that supposed to be a builtin ? <cnmne>all I find is the python package, is that it ? <chipb>huh. well, I guess that'd probably do it. it's apparently used by emacs to seed the remote $PATH setting. <cnmne>whoops haha. installed glibc and `getconf PATH' gives `/bin:/usr/bin' <chipb>well, you almost certainly had glibc before, just possibly not in your profile. <chipb>does guix do a /run/current-system directory? <chipb>or something roughly equivalent? <chipb>that might be a nice guixsd patch to make -- add /run/current-system/sw/bin or its equivalent to getconf. <chipb>e.g. on nixos, I get this output: /run/current-system/sw/bin:/bin:/usr/bin <chipb>I haven't tested, but presumably emacs/tramp behaves a bit more seamlessly when connecting to it. <cnmne>so entering `sh' and checking the path, it seems to have everything I want. will getconf be necessary even though PATH was set in .profile ? <chipb>no. it's not clear at all to me what tools actually use getconf. *shrug* <chipb>like you said, your PATH is likely just getting set in .profile, which is a perfectly cromulent method. <chipb>huh. interestingly enough, I wonder if tramp even knows where to run getconf from, given it probably doesn't know about your profile to begin with. <cnmne>so I misunderstood the -a flag <cnmne>lol i thought it would add, but i see now what you're saying <cnmne>I'm not even sure the path is an issue. tramp is letting me peruse the filesystem, but not open anything <cnmne>setting tramp-remote-path by appending tramp-own-remote-path seemed to do the trick <chipb>I'd bet the easiest path forward is to add the static string for your user and possibly system profiles to tramp-remote-path in emacs configuration. or the 'tramp-own-remote-path thing I ended up doing. <cnmne>chipb: hey, thanks a bunch. I'm gonna play around with it, but gonna have to kill erc :p <chipb>you're welcome. I remember being a little befuddled when I ran into it. <chipb>glad I could help someone be less confused. <romulas>Will Navi 2 have libre firmware so I can use it with guix? <nckx>To put it mildly, that's extremely unlikely. <cnmne>chipb: hey, did the classic off and on again, and everything's working haha. def should have tried that earlier o_o <apteryx>romulas: hi! Are you the one who had problems with Secure Boot on help-guix? <apteryx>did you manage to disable it in the end? <romulas>I can't disable it, I can only go the old path BIOS (UEFI legacy) <apteryx>I see. Perhaps that's ASUS' answer to disabling Secure Boot... oh well. <apteryx>Did you manage to install Guix System on the thing yet? <romulas>I have another bug: firmware for my AMD is nonfree <apteryx>ah, you have one of those fancy GPU? <apteryx>bought a R9 285 once thinking, hell yeah, free drivers, only to find it wouldn't do squat without a firmware blob. I was disappointed, to put it mildly. <romulas>I thought that was because of the UVD <romulas>That is what I remember bridgman saying the forums <romulas>I heard a newer version of it was going to fix that. <apteryx>isn't UVD about decoding video streams? (accelerating MPEG and such) <romulas>I heard there is a nongnu version I could use but meh <romulas>I would rather wait until they have fully free firmware <romulas>Hopefully by that time UEFI will work here <romulas>Could try coreboot but that could brick my system <apteryx>coreboot support is scarce, I doubt your ASUS board has support for it. <romulas>It says it supports it but not the model with R2.0 (no info in the wiki) <bUst4gr0>is there a way to browse your packages by category or i search a replacement for iceweasel i used on arch freedom supported os, i used icecat (really hardened) + iceweasel (for nowaday websites) <romulas>icecat is a newer version of iceweasel <romulas>I don't see a way to search by catagory on the guix site. <romulas>I like Firefox but it still needs to be updated to support some more features by default on Linux <romulas>Wish icecat would do a non-esr releases <apteryx>romulas: if it's just a revision bump and you're not too attached to the board... it could work <apteryx>about your motherboard that is R2.0, potentially compatible with coreboot <apteryx>I'd suggest asking in #coreboot, they may have better advice <jamesb>Greetings, I looking to install Guix system on my Lenove E595 laptop. Problem, failing to boot from USB with error: driver 'pcspkr' is already registered, aborting... any pointers or help appreciated. Thank you <romulas>Just use a live USB/DVD, mount your root system, edit the /etc/modprobe.d/blacklist.conf with root privileges and add the following line: <apteryx> jamesb I get that error too on Guix System. It's not fatal. <apteryx>would be great to have it fixed though. <jamesb>apteryx, it's only to do with the speakers lol! There are some workarounds but they're for already installed systems. Not sure if I'm keen on editing an iso file! A kernel cmd would be helpful though <romulas>Yeah it is a bug that it tries to load it when it is already loaded, lol. <jamesb>I'm going to try and blacklist it at the kernel boot line thingy. I'll be back :) <romulas>guile: warning: failing to install locale <jamesb>so the blacklist didn't work, stops at: invalid ACP audio mode : 2 <apteryx>jamesb: I don't think this error is what stops your machine from booting <jamesb>umm, what Info is needed to decide that? <apteryx>jamesb: Oh, are you attempting 'guix pull' from the installer image? <apteryx>jamesb: I have the same on my perfectly booting machine <apteryx>[ 42.113299] Error: Driver 'pcspkr' is already registered, aborting... <jamesb>There are a number of errors, the pcspkr was the last one <apteryx>usually, as in compilation, the first error is the most relevant one ;-) <jamesb>ah, ok. I haven't installed the system, I'm trying to boot from the usb so I can install! <jamesb>I'll have a look at some of the other errors that are showing! <bUst4gr0>romulas i was wrong, hyperbola haven't icecat in its repo <jamesb>I'm going to log out here and log in from another machine so if you can hold on answering 'till I'm back, that'll be cool! ***emacsoma1 is now known as emacsomancer
<jamesb>I'm back and it looks like not being able to load non-free firmware? <jamesb>thank you romulas. I'll try not to consider it! <jamesb>um manjaro has systemd, which for some strange reason I tend to shy away from. But thank, manjaro is pretty good and has come along way in a short time <apteryx>romulas: indeed, we shouldn't point users to non-free software in Guix official channels. <romulas>It is best for everyone in the long run. <jamesb>trisquel works from usb, but no wifi <apteryx>yeah. Your best bet when this happens is plugging in a mini USB wifi dongle fully supported by free software. <jamesb>maybe, I wanted to try it to see if it would work and to check out the package manager on a system designed around it. <jamesb>I had though if getting one for another project I haave <jamesb>A support forum for guix would be helpful, most answers would be there <romulas>GNU Linux-Libre 5.6 kernel deblobs three new drivers that have been included in the Linux 5.6 kernel series, namely AMD Trusted Execution Environment, ATH11K WiFi, and Mediatek SCP remoteproc Additionally, it also cleans up the Nouveau, AMDGPU, and AMD PSP drivers. <apteryx>jamesb: we have a help-guix@gnu.org mailing list, which archives are searchable. <romulas>ath11k is a driver for Qualcomm IEEE 802.11ax devices, first supporting only IPQ8074 SoC using the shared memory AHB bus. ath11k uses mac80211. <jamesb>So I've booted again from the usb and an intriguing error: error in finalization thread: Success <jamesb>the errors I get are: pic: unable to read/write IOMMU, tmp: error -5, Firmware bug: tpm interrupt not working, GC Warning: pthread... failed, Couldn't read /proc/stat <apteryx>it just stops == still have video signal? <romulas>So the answer is no libre firmware sadly. <apteryx>recycling old nvidia GPUs is cost effective ;-) <romulas>Wish we could have a hardware wiki like page <apteryx>you are welcome to record your findings there, to help the next person shopping for free software friendly hardware. <apteryx>it already is, see: info '(guix) Hardware Considerations' <apteryx>Hardware support is not Guix specific; it's a topic common to any free software distro. The site is Guix focused. <romulas>Maybe the gnu /fsf should make it more prominent <apteryx>on gnu.org, if you click "More" on the top bar, it brings a "Hardware" tab, which brings you straight to h-node.org :-) <romulas>h-node.org could use the stylesheet from gnu <apteryx>indeed, the visuals of h-node.org look a bit dated. <apteryx>gets the job done though. And you can download the whole database for offline usage. <apteryx>mbakke: I have a fix for inkscape 1.0 <mothacehe>hey janneke, see special-files-service-type in (gnu system install) <janneke>=> /gnu/store/xybc3sk5lv06944y6p644k2djrpqr2dn-hello-2.10 <janneke>root@guixygnu ~# file /gnu/store/xybc3sk5lv06944y6p644k2djrpqr2dn-hello-2.10/bin/hello <janneke>/gnu/store/xybc3sk5lv06944y6p644k2djrpqr2dn-hello-2.10/bin/hello: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /gnu/store/cyhsj5d7imsgsph3ddh63q1r7s2608w2-glibc-2.31/lib/ld.so.1, for GNU/Hurd 0.0.0, not stripped <janneke>yeah, that's my first native "guix build hello" on our childhurd ***apteryx is now known as Guest68790
***apteryx_ is now known as apteryx
<janneke>mothacehe: silly question; you need ~ 6GB or bigger to build "hello", could that work with these substitutable images? <mothacehe>janneke: theoretically yes, but as storage is an issue on Berlin, maybe that's not such a great idea <janneke>mothacehe: there are these 'inflatable' images or something, could that work? <mothacehe>we could build a small image in the CI, and let the users build the ~6GiB image on their own <efraim>how much storage is on the nodes? could we only add the childhurds on the build nodes? <efraim>sneek: later tell civodul I giggle-snorted at the 'average scientist' comment <mothacehe>janneke: regarding inflatability, with raw disk-images it's a pain. Maybe it's easier with qcow2 <janneke>ah, right -- i had some half-clouded shreds of memory there <janneke>isn't it "almost trivial" to resize a raw disk image too? <janneke>come to think of it; think i did that with debian's Hurd <mothacehe>it does impy resize2fs an other niceties isn't it ? <sneek>civodul, you have 1 message! <sneek>civodul, efraim says: I giggle-snorted at the 'average scientist' comment <janneke>hey civodul ... just built "hello" in a childhurd <civodul>rekado_: the guix-daemon upgrade on berlin didn't help at all :-/ <civodul>there's 60+ processes with /var/guix/db/db.sqlite-shm open, all stuck <efraim>can we "automate" creating a childhurd and offload hurd builds to it, to be returned to the host's store? *efraim is an "ideas guy," creating work for everyone else <efraim>can I pass a lambda to make-forkexec-constructor? <mothacehe>efraim: it expects a command that will be passed to execlp eventually, so I would say no <efraim>mothacehe: following the code, it looks like it hands off to fork+exec-command, which hands off to exec-command <efraim>I suppose I should really work through it, change it from lambda to exec-command to fork+exec to make-forkexec-constructor to added container <mothacehe>yes, the commented snippet at L40 looks nice <efraim>exec-command worked, fork+exec says it failed to start and then it's actually running anyway <efraim>'herd status' shows it as stopped <efraim>make-forkexec-constructor didn't even start <efraim>makes sense, it expects it to fork so it closes the main thread and follows the child. if it never forks it kills it immediately <efraim>looks like what I really want is exec-command/container <efraim>I wonder if (list #$(file-append bash-minimal "/bin/bash") #$(string-append "/run/current-system/profile/bin/" binary) "&") would work for fork+exec <efraim>no, that puts it in the background, it doesn't fork it <efraim>nohup lets it keep running anyway, 'herd status' shows it as stopped <efraim>oops, no, that's not correct. It helps extract the log for fork+exec but doesn't help with make-forkexec <civodul>i've restarted guix publish on berlin <janneke>ah, i got some transient: substitute: Throw to key `bad-response' with args `("Bad Response-Line: ~s" (""))'. <janneke>but seemed to be a round-robin thingy maybe <efraim>I got substitute: Throw to key `bad-response' with args `("Bad Response-Line: ~s" (""))' when checking for substitutes before <efraim>i'm only getting it with ./pre-inst-env <efraim>looks like I needed to rm guix/ui.go <civodul>actually 'guix publish' had been started by hand so it didn't get restarted when i upgraded the daemon yesterday <civodul>janneke: yeah that's also what i saw <manzerbredes>Hi! I a trying to build my own library package, however I am facing to the error during the "validate-runpath" phase. I have a bunch of .so file generated during the compilation phase which depends on each other. Thus there are not in the RUNPATH, which raise me an error. What is the best way to solve this ? Should I skip the "validate-runpath" phase ? <civodul>manzerbredes: i recommend investigating to find out why some of the dependencies don't show up in RUNPATH <civodul>if you skip this test, most likely it will fail to start then ***MSavoritias__ is now known as MSavoritias
<manzerbredes>civodul: It come from the fact that the RUNPATH do not contains the current package (since the generated .so are using "themselves") I don't know if it is clear... <civodul>manzerbredes: i see, so you need to make sure the output directory is in RUNPATH <civodul>perhaps by passing -Wl,-rpath='$ORIGIN' at link time <manzerbredes>civodul: It is almost done, however RUNPATH is contains $ORIGIN/bin, however I need the lib dir instead of bin. Is it clean to say $ORIGIN/../lib ? <xelxebar>manzerbredes: Jumping in sideways on the discussion here, but $ORIGIN/../lib means that the executable must exist in that exact filesystem relationship with its libraries to work. An absolute path would let it work even if copying the executable to $HOME or wherever. <rekado_>civodul: sorry about the manual “guix publish” <rekado_>that was from a time when we wanted to test that the changes really do make a difference before fully deploying them <Brwo>Greetings! I have a question. What is the best way to add custom locations to PATH on guixSD? I have a few scripts I want to add. <NieDzejkob>Brwo: there's no shame in putting `export PATH="$HOME/.local/bin:$PATH"` in your bashrc, but you could also make a small package with copy-build-system <efraim>can I run a container from inside a container? <efraim>tor is containerized, can I run a tor service inside a guix system container? <civodul>efraim: for what you presented at FOSDEM in the HPC track, you had old versions of packages, right? <civodul>we could make a real collection of "old stuff" <efraim>some of them don't build with glibc-2.31 so I pinned the guix commit for them but python2.4 at least builds <civodul>there are just a few packages in there but my goal was to have them build on current Guix <civodul>anyway, if you want to add packages in there, please do <civodul>you can create an account on gitlab.inria.fr or otherwise i can merge your branches <efraim>I had graphviz-2.26, octave-3.4.3, python-2.4 and some dependants <efraim>I'll probably create an account, then I can also see about working in somehow package-with-python24 <civodul>efraim: i think we can keep the same module names as in Guix <zimoun>civodul: yes, it could be very cool to have a collection of "old stuff". In the same time, something is laking to navigate in the history of version already in Guix. I mean I use "git log" which is not fine. <civodul>in some places i used specification->package to make it less sensitive to API changes <efraim>civodul: that's generally what I am to do with guix-bioinformatics, octave-3.4.3 is in (gn packages maths) <efraim>I should also send a patch for tensorflow-native, with #:substitutable? #f it's a big speed-up if you have the hardware to take advantage of it <zimoun>civodul: and speaking about old version, it raises also the ability to change the building toolchain. I mean, if for example Python 2.5 is in guix-past, but then the version of python-numpy I need is in old Guix, I should be able to rebuild all the graph with specific version. It is already possible but it requires a bit of Guix knowledge. <civodul>zimoun: you mean the implicit inputs, right? <civodul>we won't solve everything today though :-) <zimoun>civodul: yes implicit inputs. Somehow be able to specify which toolchain is used by <foo>-build-system. And not today, sure! Tomorrow morning? ;-) <civodul>janneke: i see you updated the 'guix' package but yesterday mothacehe reverted the update <civodul>due to test failures, though i don't know what exactly <mothacehe>civodul: i think it was an error on my side (corrupted .go), I ended up updating guix just before janneke update ***Kimapr_ is now known as Kimapr
<janneke>civodul, mothacehe: yeah -- i noticed; so guess we're fine <mothacehe>I just created a strace service that logs one process trace to /var/log/strace-pid.log, hope it will help me understand what I suspect to be a very hard to reproduce Shepherd race-condition. <civodul>mothacehe, janneke: ah ok, sounds good! ***MSavoritias_ is now known as MSavoritias
***terpri__ is now known as terpri
<txt-file>but I just ran "guile --version" and got 2.2.6 <civodul>txt-file: in 1.1.0, Guix uses Guile 3.0, but the "guile" package itself was still 2.2 <civodul>you'd have to install "guile-next" to get 3.0 <civodul>this changed ~1 month ago, and now the "guile" package is 3.0 <civodul>try "guix pull" to get the latest & greatest! <txt-file>top also shows that guile 2.2.6 is running when I execute "guix pull" <blendergeeksimpl>I am trying to install guix. Unfortunately, I cannot get the network working. When I use `ifconfig -a`, it only shows the local loopback. I ran `lspci` and I have two network cards. One is an 'Intel Corporation Wireless 3165 (rev 21)'. That one requires nonfree firmware and I thus expect it to not work. The other one is 'Realtek Semiconductor Co., Ltd. RTL810xE'. This one works in other fully free GNU/Linux distros. I ran d <blendergeeksimpl>…ealtek.ko not loaded, maybe it needs to be added to initramfs?' Any ideas on how to enable my network card? <txt-file>Am currently running "guix pull" (and waiting as it takes ages on my test-netbook <nckx>You need the r8169 driver, right? It's definitely available as a module on Guix Systems. <mothacehe>blendergeeksimpl: the relevant module is "r8169" you can check if it's loaded with lsmod command. Sharing the output of the "dmesg" command would also be helpful here <nckx>I'm not sure about that. I have an r8169 card (Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c), not quite the same) and it prints nothing to dmesg. Works though. <rekado_>civodul: I also have a few old things in guix-bimsb:/bimsb/packages/variants.scm <rekado_>I’d be happy to move them to guix-past <civodul>that way we'll have a go-to channel for old stuff <nckx>‘Protocol driver not attached’ hum. ***rekado_ is now known as rekado
<nckx>blendergeeksimpl: I'm reading several reports of people whose r8169 cards just stopped working with ‘newer’ (5.4) kernels. Seems like a real issue. <nckx>blendergeeksimpl: Does removing the r8169 module, manually modprobing realtek, then r8169 change anything? <nckx>(Maybe that's the part of your message that got cut off above.) <blendergeeksimpl>r8169 0000:03:00.0 realtek.ko not loaded, maybe it needs to be added to initramfs? <nckx>blendergeeksimpl: If that helps it would only be a workaround for a dependency bug. <nckx>blendergeeksimpl: You can try adding (initrd-modules (cons "realtek" %base-initrd-modules)) to your operating-system. <nckx>But this should be fixed in 5.6. <nckx>Do we have 5.6? We do not. <nckx>You need to reconfigure. You won't have to recompile the kernel, only rebuild the initramfs. <txt-file>but xe said that xe is trying to install guix … So I assume that xe is using the iso <nckx>txt-file: Thanks, I missed that bit. <nckx>blendergeeksimpl: What I don't understand is ‘realtek.ko not loaded’ after I asked you to ‘modprobe realtek’. That's… weird. Did that give any error messages? <txt-file>NieDzejkob: I do not know if he or she (or something else) is the correct pronoun. So I use a neutral pronoun. <nckx>blendergeeksimpl: Building a custom ISO is an option, but there should be others. <nckx>And then modprobe r8169 produces a new dmesg message saying realtek.ko isn't loaded, correct? <nckx>In the mean time I'm building an ISO with (initrd-modules (cons "realtek" %base-initrd-modules)) but I'm not confident that will fix it. <NieDzejkob>txt-file: Ah. I think 'singular they' is the more common variant, though... <nckx>blendergeeksimpl: Maybe try rmmodding libphy, r8169, and realtek (in whichever order works, until none are loaded), then modprobing them individually in order: libphy, realtek, r8169. <nckx>I can't do much because my r8169 machine is connected over SSH. *NieDzejkob is diving into the kernel sources <nckx>OK, that works too. It needs to be loaded first so that's fine. <nckx>Just double-check that neither realtek nor r8169 are still loaded when you modprobe realtek && modprobe r8169. <nckx>All right, I'll upload the ISO with realtek added to the initrd as suggested above. If you trust me you can try it. If you don't, well, probably a good habit but I'm out of ideas (apart from setting up your own Guix check-out to build one, or trying different kernel versions which also requires the former). <manzerbredes>Hi again, I am able to compile my own package for now. But I wanted to have access to the gcc used to build the package afterward and thus I added gcc to the "propagated-inputs". However, the package failed to build now, and It seems that it is using a different gcc (I just add gcc to the propagated inputs). Then, after investigation, it seems that during the build phase, a different gcc is used (the <manzerbredes>version is the same but the hash in the store is different). How it is possible ? <NieDzejkob>manzerbredes: mind the distinction between gcc and gcc-toolchain. Why do you want to propagate gcc? <nckx>The smaller one is zstd-compressed (not xz) to save time. <nckx>I regret many things but it's too late to turn back. <nckx>Good luck. I added realtek to the head of the list. If it turns out that Guix reverses the list order somewhere I'll be grumpy. <apteryx>is it possible to have a machine in /etc/machines.scm act as more than one 'system' (e.g., i686-linux, x86_64-linu, aarch64-linux, etc)? <apteryx>for offloading builds with --system=... <NieDzejkob>I solved this by returning each machine-system combination separately <NieDzejkob>you might try setting the system field to a list, though <manzerbredes>NieDzejkob: My package is building a bunch of shared libraries. Then package users are expected to used the shared libraies during the linking of their own softwares <apteryx>NieDzejkob: thank you. That'd be most elegant. <NieDzejkob>manzerbredes: why does that imply having to propagate gcc? <manzerbredes>NieDzejkob: I did "guix pack" of my package, tranfert it on another machine (which do not have guix). I extract it on the root of the file system. Then I tried to compile a small app and linked it to my shared libraries under /gnu/store. And I have linking problems related to my .so file like undefined reference to `pow@GLIBC_2.29' <apteryx>ci.guix.gnu.org is repeatedly timing out. <NieDzejkob>manzerbredes: it would be more conventional to use "guix pack your-package gcc-toolchain", I think <nckx>Oh, wow, glorious. (Unless you're typing a ‘but’ right now.) <manzerbredes>NieDzejkob: I'll try that, thank you. However it still strange that adding gcc to the propagated-inputs leads to a different gcc used during the build phase right ? <blendergeeksimpl>Well, now it fails right after it shows me the config file. (I'm using the graphical installer when I can) <nckx>blendergeeksimpl: Any error message? <dftxbs3e>I just noticed Cuirass was under the GPL v3 - shouldnt it be under the AGPL v3 instead? <apteryx>NieDzejkob: re list of systems in machines.scm: In procedure string=: Wrong type argument in position 2 (expecting string): ("x86_64-linux" "i686-linux"). A feature waiting to be added ;-) <blendergeeksimpl>nckx: well, i started from the very beginning (with your iso) and it worked this time! Thank you so much! <nckx>Don't forget to add the (initrd-modules …) line above to your own system configuration before you reconfigure, in the very likely event that it's missing. <nckx>I'm not familiar with the GUI installer but I doubt it re-uses the ISO's configuration. ***langdon_ is now known as langdon
<nckx>dftxbs3e: We'd need assent from all copyright holders. Shouldn't be too hard at this point, feel free to Start The Conversation on the ML. <nckx>I'm personally in favour but have no say 🙂 <nckx>dftxbs3e: AGPL3+ doesn't change how Cuirass would interact with GPL3+ software, right? <bhartrihari>Hello, I installed node package but node binary hasn't been added to my path. (npm gives me the following error: /usr/bin/env: ‘node’: No such file or directory). Is this supposed to be so? <nckx>bhartrihari: Guix's node@10.19.0 provides 3 binaries (node, npm, npx). What's the value of $PATH, and how are you trying to run ‘node’ (i.e. why is /usr/bin/env involved)? Does it work from a (fresh) terminal? <lle-bout>nckx, nope, there's an exception in the AGPL for GPL software <bhartrihari>nckx, `whereis npm` gives me the following `npm: /gnu/store/37lhmlavwvaf58kkqmmw0jx73378j80n-profile/bin/npm`. I have both npm and npx commands after doing a `guix install node`, but not the node command. It doesn't work from a fresh terminal. <bhartrihari>`whereis node` doesn't give any useful output, merely `node: `. <lprndn>rekado, bricewge1 : On the LightDM service, How dirty would it be to use a third servicewhich would expect extentions from lightdm and greeters just to merge everything..? (My brain is melting.) <nckx>bhartrihari: I'm genuinely confused. What does ‘readlink -m /gnu/store/37lhmlavwvaf58kkqmmw0jx73378j80n-profile/bin/npm’ say? <nckx>Installing node 10.19.0 here, from current Guix master, gives me all 3 binaries, and ‘node’ starts a REPL. <NieDzejkob>civodul: I took another look at the LLVM 10 issue, and I can't find the message of Pierre you're referring to. Would you mind posting a link? <bhartrihari>nckx, The output for the command you mention is `/gnu/store/p0b64xpigk7lblw0vbk49qp66vhbjavj-node-10.19.0/lib/node_modules/npm/bin/npm-cli.js` <NieDzejkob>bhartrihari: what does `ls /gnu/store/p0b64xpigk7lblw0vbk49qp66vhbjavj-node-10.19.0/bin` say? <nckx>bhartrihari: Hmkay, and what's in /gnu/store/vkwbavbvnsp58xz34cz11bz63729qph7-node-10.19.0/bin? Also, is your guix up-to-date (guix describe)? <nckx>Installing node here gives me /gnu/store/vkwbavbvnsp58xz34cz11bz63729qph7-node-10.19.0/bin/node (i.e. a different hash, I'm pulling now to make sure I'm current). <niklascarlsson>Hi everyone! :) I want to create a system service so that I can start the tool mbpfan automatically. It requires sudo access so I figured a service that I could add to my system configuration would be the way to go. If I want to start experiment with creating such a service, does anyone have any tip on where to put it and how I could load it into my system config.scm :) <nckx>bhartrihari: I made a pasto above (my hash instead of yours), I meant to ask what's in /gnu/store/p0b64xpigk7lblw0vbk49qp66vhbjavj-node-10.19.0/bin. <bhartrihari>nckx, There are 2 links there, to npm and npx binaries. My guix is not current. <nckx>bhartrihari: Is this deliberate? Did you run ‘guix pull’ and still end up with an old guix (= NieDzejkob's question)? We need to know what we're debugging. <nckx>If you can't pull there's nothing we can do, I guess your Guix version has a broken node package. <bhartrihari>I did a guix pull a few days ago. I'm on guix commit 3857aba7ab25c50d64a6d7468d2b5b09bc4f5d60 *nckx does the opposite and pulls the older commit. <bhartrihari>NieDzejkob, output for `type guix` is `guix is /home/username/.config/guix/current/bin/guix` <NieDzejkob>I'd also consider `guix gc --verify /gnu/store/xxx-node', both the grafted and ungrafted hash <nckx>bhartrihari: That's exactly what it was. Your node isn't corrupted. guix pull and all will be well. <nckx>Happy to help, I just hope you're familiar with Guix's level (= lack) of npm support. ‘It's not great’™. <bhartrihari>I just needed the node binary for some other application. I'm not a fan of Js either. <NieDzejkob>turns out the set intersection of "JavaScript people" and "Scheme people" is quite small :P <nckx>‘OK, well… maybe the crickets will help us package npm!’ <nckx>*the crickets eat all the food and leave* <nckx>I know, I've used it. I meant teh ekasystehm. <nckx>(I know that's a Word to Avoid, but I don't know what replaces it.) <joshuaBPMan>Hey guix....I know that ya'll really care about using guile for everything. Why don't we use guile for the documentation portion? <nckx>bhartrihari: That should work, I've hosted 2 node.js things on Guix System servers after ‘building’ them on Debian. <nckx>joshuaBPMan: That looks awesome. <nckx>The current documentation is a text file manually kept in sync with the code by hand (and, sometimes, not). That includes each service-type and default and the like. So much room for Guile magic. <raghavgururajan>nckx: Sorry, I made a mistake. I thought my patches didn't affect openjdk and icedtea. But they have affected it indirectly. Coud you please apply following patches on current wip-desktop and then try to build openjdk and icedtea please? <joshuaBPMan>nckx: I've never used it. I just read a bit of the guile devel's messages...looks like rendering to html is causing some issues. <nckx>raghavgururajan: No problem, HexChat DTRT. <nckx>raghavgururajan: If this bootstraps icedtea/openjdk again it will take a while. That bootstrap chain can't be parallelised. I guess I'll find out. <raghavgururajan>I was wondering if there are any CFLAGS/CXXFLAGS/CPPFLAGS to prevent those errors. <NieDzejkob>raghavgururajan: unlikely, I'd guess that there's a mismatch of openssl versions <nckx>raghavgururajan: It's due to the code being written for an older openssl <nckx>Using an older openssl is not a great idea, so you'll have to patch (or find a patch for) rtmpdump to use the new API. <NieDzejkob>raghavgururajan: interesting, Arch ships a git commit of rtmpdump <NieDzejkob>also, they patch the makefile with a sed oneliner to switch it to gnutls <bricewge1>lprndn: Really IDK. Will the third service-type would be user facing? How the whole UI would look? <bricewge1>I'm trying to package a static nfs-utils, but I'm stuck at the configuration phase: it can't find 'getrpcbynumber'. <bricewge1>That function is present in glibc's /lib/libc-2.31.so but I don't know where the static version is nor how to specify where the build system should try to find it <bricewge1>Do someone has an idea where should I start looking? <NieDzejkob>you might need some static glibc variant as input <NieDzejkob>bricewge1: is there a configure.log or something? <NieDzejkob>bricewge1: ah, I think you need the "static" output of glibc <bricewge1>The thing is that function (getrpcbynumber) can be provided by 'glibc' or 'libtirpc' <lprndn>bricewge1: the service would be private. I'm not a big fan of the added complexity but it allows the user to define either a lightdm service, a greeter one or both and always get a working service... (does it?) I'm just exploring ideas really... I don't remember why but I ended up discarding most other possibilities (and this one too soon...) <bricewge1>I made a static version of libtirpc, but it doesn't include the function 'getrpcbynumber' because it was already present in 'glibc' ***certifiedcitrus is now known as _
***_ is now known as Guest57951
<nckx>raghavgururajan: Your patch set is missing glib-disable-failing-tests.patch. <txt-file>Is there a way to disallow local builds and tell guix to only use stuff from ci.guix.gnu.org? <txt-file>My netbook is running "guix pull" since 3 hours and I fear to need to do "while true; do guix pull; done;" to stay up to date. <bricewge1>lprndn: I don't remember about talking about the 3 service-type implementation <bricewge1>lprndn: If it is private it seems fine to me, but I found such services in the codebase yet. <Guest57951>txt-file: probably You can use something `if [ $(guix weather) != '' ]; ...`. IDK, though. <nckx>txt-file: If your machine is too weak to pull, use guix pull --commit=<an older commit>. I'd say you can check ci.guix.gnu.org for good commits (a few hours old will suffice) but it's down. 😒 Here are all commits: https://git.savannah.gnu.org/cgit/guix.git/log/ <lprndn>bricewge1: yeah we didn't discuss about it yet. I'm trying it right now. I'll probably send a draft soon with maybe some other possibilities I'm not satisfied with. <txt-file>nckx: ci.guix.gnu.org normally shows how much is already compiled? <nckx>Yes. There's a jobset for guix pull, I forget what it's called. <txt-file>Or is there a need for more build servers and what are the requirements. :-D <NieDzejkob>txt-file: rekado recently mentioned that he added a build node and it stayed idle the whole day. It's a problem with build scheduling AFAIU <nckx>txt-file: We have an insane amount of build servers, they are idling >98% of the time because of a CI bug or bottleneck. <NieDzejkob>cbaines is working on a potential solution, you might want to talk with him if you want to help <cbaines>well cbaines is working on a tangential approach, unfortunately I don't even appreciate the problem faced by ci.guix.gnu.org <nckx>raghavgururajan: Speaking of wasted servers: mine are idle until I get the missing patches. Tick tock, my friend. <nckx>OK, seems to be building now. <nckx>The thing has ‘flaky’ in the name so I'll try again. <gnutec>With the new update, I can open a file from Thunar in XFCE. And Guile 3.0.2 is now the guile command on guix. :) <nckx>gnutec: Thank you for blogging about Guix (with pretty pictures)! <nckx>Glib did indeed build fine the second time, by the way. ***boegel|quassel is now known as boegel
<nckx>raghavgururajan: No, I'm building different hashes again. I started from commit 9c0156a5040683843d594c9b02441f3a1b299d3f (upstream wip-desktop), applied your patches.tar.gz, then downloaded your glib patch directly with curl (sha1sum 8adc5bb6daa2951097eccbe0c0595058692ad349): https://paste.debian.net/plain/1152724 <nckx>raghavgururajan: I suggest we abandon this error-prone method, and you host your own wip-desktop repository at e.g. gitlab or whatever, and I pull from there. <nckx>raghavgururajan: I have applied patches 0017 → 0033, because that's all that was in your patches.tar.gz. <nckx>This patches-new.tar.gz contains patches < 0017 which I did not have. <nckx>Are they identical to what was already on wip-desktop? <raghavgururajan>nckx: I am going to create new branch by pulling wip-desktop and apply my patches 17 to 33. <nckx>raghavgururajan: git am 00{17..33}*.patch <nckx>Does patches-new include the glib patch or is it still missing? <nckx>Never mind. I am going to reset my repository to 9c0156a5040683843d594c9b02441f3a1b299d3f, then apply exactly the patches you send me below. <nckx>Please look into ‘real’ git hosting after this, it's not that hard and will save much time later 🙂 <raghavgururajan>guix build: warning: choosing glib@2.64.3 from /home/rg/guix/wip-desktop/gnu/packages/glib.scm:170:2 <nckx>raghavgururajan: I never specified glib on the command line, only ‘guix build icedtea openjdk’. glib was a dependency. <lfam>I just did `git pull` in order to start packaging multimon-ng, and it's the most recent commit :) <nckx>raghavgururajan: If it's a proper mirror, yes, otherwise it might stop tracking upstream altogether (I've not used Gitea myself). <raghavgururajan>nckx: Locally, I have work-dir "wip-desktop" that tracks origin/wip-desktop (guix upstream). This dir was used for guix bootstrap. Also, this work-dir has a branch called "temp", where I perform my work. From time-to-time, I destroy and create temp. <raghavgururajan>nckx: I am gonna create new repo "guix-wip-desktop" on git.disroot.org. Now, can I push to this remote repo from my local branch 'temp'? <raghavgururajan>Or should I set the 'temp' branch to track the remote "guix-wip-desktop"? <apteryx>hmm, guix deploy is taking a looong time, without telling me what is happening (guile is using CPU on the remote, but the local guix deploy script last output was 'sending 9 store items (4 MiB) to ...' <nckx>raghavgururajan: What I would do, since nckx would really like to start building before they have to leave: check out your ‘temp’ branch, get it in order—exactly how you want me to build it, then ‘git remote add disroot https://disroot/blah/blah.git’, then ‘git push disroot HEAD:wip-desktop’. That will simply ‘send’ the tip of your local temp branch to the ‘wip-desktop’ branch @ disroot. You can decide if/what you want to track later. <nckx>I wish I had more time to talk you to the git part but I don't. <gnutec>nckx: You're welcome. I really think Guix is the best System for our decade. <nckx>The only thing between Guix and world domination are locale warnings. <nckx>And maybe a few other things. <nckx>raghavgururajan: Thanks! Right now I just want something I can pull/download/whatever in the next ~10 minutes and build the exact thing you need, because I won't be around to babysit the build much. <lle-bout>nckx, gnutec: also GNU Guile's startup time and execution speed <drakonis1>nckx: using guix together with guile to string together nix-like environments <raghavgururajan>nckx: I get fatal: the remote end hung up unexpectedly. No worries: I will try to build the openjdk and icedtea myself this time. <drakonis1>keeping dev environments synced like nix does isnt a thing here yet <drakonis1>its one of the primary reasons why nix is great <nckx>raghavgururajan: Oh, I see what likely happened. Try ‘git remote set-url --add --push disroot <the SSH URL>’ and try pushing again. The SSH URL is the one that looks like raghav@git.disroot.or.whatever, it does not contain git:// or https://. <nckx>raghavgururajan: I still have a few mins. <lle-bout>drakonis1, GNU Guix has environments, what are you talking about exactly? You can also create a manifest file to specify an environment in a project's dir <apteryx>my guix deploy problem is probably #41237 (hanging on scanning partitions based on UUID) <drakonis1>it doesn't let you invoke functions to build your environment <drakonis1>nix has, over the years grown a variety of machinery that can be used with their environments <drakonis1>i can build an environment that comes with a variety of packages and scripts <lle-bout>drakonis1, what machinery, can you provide links to exact features? <leoprikler>you can bundle scripts in packages, so I don't really see the issue <bricewge1>apteryx Good news. An idea on how to go forth with this bug? <lle-bout>you can have manifest files external to GNU Guix <raghavgururajan>nckx: fatal: 'raghavgururajan@git.disroot.org/raghavgururajan/guix-wip-desktop.git' does not appear to be a git repository <drakonis1>i'm trying to locate the section in the manual <leoprikler>you could write derivations manually with guix too <leoprikler>how is that different from guix environment --ad-hoc emacs ... <leoprikler>and yes, you can write a manifest, that uses guix import from elpa <leoprikler>"The key is to write a package, that ..." Huh, package. Where did I hear this term before? <nckx>raghavgururajan: When you run ‘git log HEAD’ inside your local checkout, do you see your patches? <drakonis1>leoprikler: eh, it still focuses too much on packages <raghavgururajan>nckx: You may still have to use glib-disable-failing-tests.patch separately, as it was leftout in glib patch. <leoprikler>That's just a claim with nothing backing it up, really. For one, you'd have to show why "packages" are too high an abstraction unit, and also how Nix does does something substantially different. <leoprikler>All I see here is less bracketed code, which is fair enough if that's your preference, but has the same semantics otherwise. <lle-bout>mbakke, in fact - both guix-master wip-marusich-be1 do not even need that patch <mbakke>lle-bout: for #3, the gcc package is 'hidden' and can not be referenced from the CLI apart from -e '(@ (gnu packages gcc) gcc-4.8)' <lle-bout>mbakke, okay! I am just trying to build the "hello" subset, is there something wrong in the spec file? <civodul>leoprikler: Nix doesn't have data types for a package, an origin, an OS, etc. <civodul>it's all about functions that call the "derivation" primitive <mbakke>lle-bout: perhaps the installed 'guix snapshot' (the one from gnu/packages/package-management.scm) is missing that glibc-ldd-powerpc64.patch? <lle-bout>mbakke, I'll check but should not be the case <civodul>lle-bout: i've restarted it, should be fine now <civodul>it's getting tens of requests per second tho <lle-bout>mbakke, you're right there's something off there, thanks a lot! <lle-bout>I forgot to update the URL to my own repo *jonsger wonders how people use qgis? It had 9 derivations in the last 18 days... <raghavgururajan>nckx: You can cancel the build. Hashes still do not match. I don't whats happening. :( <nckx>raghavgururajan: Could you paste yours? <lle-bout>mbakke, uhh nope, it doesnt make sense, I had it right! <lle-bout>mbakke, hmm I got my recursive patch wrong maybe, double checking, the patch basically patches GNU Guix itself to also start patching itself <lle-bout>mbakke, it seems that it didnt patch the guix package definition at the second level (the patched GNU Guix package wouldnt build patched GNU Guix packages) - correcting now <nckx>raghavgururajan: OK, I think we're good to go. <apteryx>when I enter guile repl on a remote machine via SSH, I can't use usual Emacs style shortcuts to navigate <nckx>This is a long bootstrap again, I'll ping you in an hour or two. <apteryx>any clue? should I set XTERM to something? <nckx>raghavgururajan: I think it was graft fuckery but honestly, I'm just happy it's building and don't care. Yay! <nckx>See you in an hour or two. <apteryx>about C-a not working correctly -- had to do with the sudo guix repl I was in. sudo -E guix repl works better. <txt-file>I did run "guix pull" and rebooted but "guile --version" still says 2.2.6 <mbakke>txt-file: you need to run 'sudo guix system reconfigure /your/config/file.scm' to upgrade your system <txt-file>now I need to find the syntax error in my config.scm <txt-file>I would like to add some packages and have autologin for gdm. <NieDzejkob>txt-file: you're only passing one of the specifications to specification->package <rekado>drakonis1: profile hooks allow you to do pretty much anything you want <NieDzejkob>either remove the quotes and add use-package-modules or use (map specification->package '("foo" "bar")) <NieDzejkob>also, (append (list a b c) d) can also be written as (cons* a b c d) <rekado>drakonis1: in any case, the higher-order representation of packages is optional. You don’t lose anything by having them. <apteryx>bricewge1: I think I'm on something for the 'guix deploy' hang <apteryx>because we don't provide the type 'fat32 <apteryx>it's weird that it hangs instead of error though. <bricewge1>apteryx: My entry was '(device (uuid "B5DE-B0B9" 'fat32))' <apteryx>I mean, in the remote-assertion.scm script that guix deploy builds <civodul>apteryx: (string->uuid "209E-67AD" 'fat32) works <apteryx>yep, but (gnu machine ssh) does (string->uuid #$(uuid->string (file-system-device fs))) <apteryx>we need to extract the type from the file-system, and convert this to a type symbol <civodul>(uuid->string (uuid "209E-67AD" 'fat32)) works <civodul>because (uuid ...) returns a self-describing <uuid> record <apteryx>but we still to derive the 'fat32 type from (file-system-type fs) <mbakke>txt-file: there are two problems: you need append instead of cons* in the packages field, because (map ...) returns a list, and you need an extra ) after the gdm-configuration line, while removing one ) from the %base-services line <mbakke>txt-file: also, it looks like ~/.config/guix/current/bin is not first in PATH, since you get that warning from guix system reconfigure <civodul>apteryx: i shouldn't jump in the middle of a discussion ;-) <mbakke>make sure $PATH has ~/.config/guix/current/bin before other profiles <mbakke>(it should be the default, but maybe you changed your .bashrc or .bash_profile?) <apteryx>civodul: hehe, you are welcome. I have only 10 more minutes to try to figure it out. <txt-file>not that I'm aware of a change to .bashrc or .bash_profile <Bryophyllum>No idea if applicable in this case, but I had to run `source bash` on my first `guix pull` for PATH to be corrected <txt-file>I still don't really understand what does what *shrug* but at least it is working. <apteryx>civodul: I think was (gnu machine ssh) is doing at line 214 is serialize the uuid object to a string, and attempt to reform it by refeeding that string to string->uuid (the only way to make an object pass through a Gexp strata) <apteryx>but some information is lost (the type of uuid) it was in the process <bricewge1>apteryx: Thank you for having debugged that. The fact that the code is hanging instead of failing is still mysterious <civodul>apteryx: oooh, i see, that's wrong indeed <apteryx>can we gexp-unquote a string into a symbol? <apteryx>#$(string->symbol (file-system-type fs)) <civodul>you can also use "uuid" instead of "string->uuid" <civodul>but you don't need file-system-type actually, just (uuid-type (file-system-device fs)) <apteryx>uuid is a macro implementation of uuid->string? <bricewge1>civodul: But then y may pass an other type that what the user had defined, no? <apteryx>I can't just (uuid-type my-fs) -> wrong type argument <apteryx>so I need (uuid-type (file-system-type my-fs)) I guess <civodul>no, uuid-type is for a <uuid> record, as returned by 'uuid' <civodul>bricewge1 said they had (uuid "B5DE-B0B9" 'fat32) <apteryx>right, mine is (uuid "209E-67AD" 'fat) <civodul>(uuid-type (uuid "B5DE-B0B9" 'fat32)) => fat32 <civodul>in ssh.scm, you can do (define x (uuid #$(uuid->string (file-system-device fs)) '#$(uuid-type (file-system-device fs)))) <civodul>(i wrote "define x" instead of "define uuid" because of the name clash) <apteryx>I'll use uuid_ for the variable name to avoid the clash <mbakke>Bryophyllum: I use stow but never -D :P <civodul>apteryx: rather use (let ((uuid (uuid ...))) ...) <apteryx>OK! And then there's the other problem that find-partition-by-uuid got stuck in a loop when given a #f uuid <Bryophyllum>mbakke: Haha, I see. It successfully deletes any symlinks it created, though <mbakke>Bryophyllum: it would be good to remove that BUG warning :-) *apteryx groceries interrupt <mbakke>Bryophyllum: heh, good that we're not alone :) <Bryophyllum>mbakke: How didn't I find this earlier?.. Speaking of which, whenever I find a bug report corresponding to my issue, I feel like a weight has been lifted off my mind ^^ <civodul>apteryx: ooh the loop thing is interesting <civodul>it's (uuid=? (uuid "B5DE-B0B9" 'fat32) #f) that loops <civodul>because of the fallback case in uuid=? that swaps parameters <civodul>we should add type predicates in that clause <bricewge1>civodul: Yep that's fun! I don't understand why 'uuid=?' was recursive tho