IRC channel logs


back to list of logs

<graywolf>Is there a way to pull just one channel? I've added a new channel into /etc/guix/channels.scm, and would like to pull it, but just that one. Is that possible?
<sneek>Welcome back graywolf, you have 1 message!
<sneek>graywolf, lilyp says: the canonical example of (primitive-)load is reading user configuration – i.e. when you can't rely on the module system to do what you want. As for the differences between the two, consult the manual and experiment
<nckx>graywolf: You'll always need a ‘guix’ channel.
<nckx>This is all that %default-channels is at the moment: the default guix channel. You can use a fork, or a different commit, but you need guix.
<graywolf>Then I'm misunderstanding channels on fundamental level I guess. My assumption was that the guix is already there, and I want to just git pull the newly added channel in order to save time (since guix pull takes a lot of time).
<nckx>Yes, that's not how they work. Guix is part of what you're pulling and building.
<akirakyle>Is anyone taking a look at the persistent (intermittent?) issues with building linux-libre for aarch64 on hydra? It's been a few months since I've been able to guix pull since I'm trying not to build locally
<akirakyle>It seems like the builds keep failing with a timeout when scanning for blobs
<akirakyle>Maybe the timeout should be increased?
<nckx>When you build, or when hydra builds, or both?
<nckx>It's probably just a time-out issue.
<akirakyle>When hydra builds
<nckx>Or, indeed, as you say, could also be a time-out issue.
<akirakyle>I haven't tried locally since it's on my laptop and it takes sooo long to bulid
<nckx>The scan is legendarily slow.
<nckx>building of `/gnu/store/sa7946sml096lrbhwckdggbxh6q68hw7-linux-libre-6.0.18-guix.tar.xz.drv' timed out after 3600 seconds of silence
<nckx>That's also a surprisingly ‘low’ time-out.
<akirakyle>I've been meaning to set up my own aarch64 cuirass on a server so I don't have to wait so long for substitutes
<akirakyle>Maybe someone with commit access could try bumping that up?
<nckx>Are you saying your server would not time out?
<bdju>newsboat is missing its man page in the guix package, or it doesn't work at least. works on arch.
<akirakyle>nckx: More that I could just focus on building only what I need and make patches that fix stuff that doesn't build. Currently I try not to build what I don't have to (or can't because I don't have enough mem/time on my laptop)
<nckx>I wonder how (and if) (and from where) the CI will pick up the new max-silent-time, since it won't affect the derivation AFAIK…
<nckx>akirakyle: Which kernel version did you want?
<akirakyle>I suppose I'm fine waiting until the next bump in kernel version
<akirakyle>Whatever the default one is
<nckx>The fact that *all* aarch64 nodes are currently building a clang or llvm certainly won't help matters for now.
<akirakyle>Need some beafier aarch64 nodes
<nckx>Fair. Well, I'll queue the ‘new’ old builds again anyway, but prod me if future versions still fail.
<nckx>Do affordable, aarch64, and beefy coexist?
<akirakyle>Great, thanks nckx!
<akirakyle>Not at all an expert, but it seems like not really at the "consumer" level
<akirakyle>Maybe using asahai linux on some mac minis?
<nckx>(Never heard of that…)
<nckx>The current nodes cost >$1000 a pop each. Certainly not puny.
<nckx>Two FAQ entries are ‘Does Apple allow this? Don’t you need a jailbreak?’ and ‘Is this legal’
<nckx>At least the answers are ‘no’ and ‘yes’ but what a bizarre mindset.
<akirakyle>The team behind asahai has made some amazing progress, especially on reverse engineering the gpu
<akirakyle>And these chips are *really really* fast
<nckx>I admit that I have yet to experience the awesome power of the Macintosh for myself.
<akirakyle>That's actually what I'm running guix on rn, although inside qemu on macos since there's still some stuff they haven't gotten working proper, like speakers and camera
<akirakyle>But for a server, it's probably in a totally usable state rn
<nckx>So Guix System?
<akirakyle>Yup, guix system inside qemu
<akirakyle>It's pretty awesome, even some opengl es acceleration through virgl
<nckx>Do you think GRUB would work?
<nckx>(Maybe that's a stupid question but I don't know in which direction.)
<akirakyle>Yes, asahai takes care of uefi booting, and one could point it to grup
<akirakyle> would boot grub I think
<nckx>Asahai the Linux® distribution would boot GRUB?
<akirakyle>Asahai is the name of the project, and they provide a "reference" implementation with all the correct branches that have yet to be upstreamed based on arch
<akirakyle>but the idea is that everything gets upstreamed eventually
<akirakyle>People are def running fedora/debian and others using the asahai linux kernel branch
<akirakyle>Anyway I gtg to dinner, but thanks for taking a look at the kernel timeout
<lechner>Hi, am I supposed to have a file that is only readable by root (a lock file) in my store? Thanks!
<nckx>λ ls /gnu/store/*.lock | wc -l
<nckx>(And if you don't like it, guix gc is your friend.)
<lechner>nckx / thanks!
<zpiro>efraim: How are you doing? 28 days is a really long time if you ask me.
<zpiro>for a spectacular idiot level, where I now wondered if it was the ISP that set ident. and found the string hard coded in the irssi config under core for some reason, where also, libera actually ignored identd enitrely. along the lines of irc being accessible for anyone that can type handle four times in a row to an irc server and port over telnet and msg a channel or nick.
<zpiro>efraim: "/mode #guix b" come with more than 28 days for zpiro together with the least turst worthy ipv6 ranges.
<zpiro>litharge: thanks!
<nckx>litharge is a kind and just god.
<nckx>zpiro: Welcome back. If you've just come here to bother efraim, however, please don't.
<zpiro>nckx: not really, but to be polite. I can recommend intel arc a380, not because I am a fan boy. But because it is in their exa scale roadmap and builds in the integrated cpu drivers in the kernel.
<zpiro>everyone hate gpu driver rot or source quirks and lack of library support, intel for this, may have technically interested people driving development that includes arm64 and kernel agnostisism for intel gpu cores over pcie on arm64 platforms.
<lechner>Hi, is any of that related to Guix?
<zpiro>lechner: only for what to use to not do anything fancy other than keeping to mainline kernel outside of libre kernel with firmware.
<nckx>If it doesn't need external firmware, that's great.
<nckx>Dunno though:
<zpiro>nckx: yes, but it is in exa scale road map of intel. and it is a rtx 30x0 equivalent gpu from intel that builds on their gpu driver stack.
<zpiro>bug reports for intel products that come with open drivers --- this part --- is likely to take bug reports from primary linux consumers and visualisation issues seriously.
<zpiro>nckx: most know the Iris and related intel GPU's on-die CPU offerings, the stuff in arc a380 is for cpu's geared for mass market in 2024 for intel CPU's.
<zpiro>moore's law, dead and burried. to some extent, for what it matters, that it works over pci-e with intel's evil-inside driver stack now, and that high end CPU's are expected to get its cores integrated after 2024 come with expectations within the exascale roadmap that it works and will work better.
<zpiro>keep radeon what not, not intending to be a chill, but flavour, driver rot---certain things get worked out and fall into shifts of priority where no old intel gpu's are expected to experience driver rot.
<vagrantc>zpiro: welcome back, and i welcome you to please stop off-topic rambling.
<sneek>Welcome back vagrantc, you have 1 message!
<sneek>vagrantc, acrow says: an improved version of debian-copyrighter.scm is available.
<zpiro>intel mantra that makes intel arc a380 a good choice, is "tick tock" new architecture and die shrink. intel arc protypes were in 2020, 2024 for CPU's is likely die shrink---making intel arc a380 tock or some such and a reliable anchor for future architecture developments, competing with RTX and using intel gpu driver stack in xorg.
<vagrantc>zpiro: no, seriously, i insist. please stick to the topic of this channel.
<vagrantc>normally, i see activity in this channel and i think "i wonder what interesting things related to guix are going on" and i check it out, and it is a useful tool for me to manage my time.
<vagrantc>sometimes, people are disrespectful of my time and ramble about whatever they feel like, and are disrepectful of the everyone in the channel by doing so.
<vagrantc>a little bit of rambling is one thing ... but zpiro, it is 90% or more ... it is not ok.
<zpiro>vagrantc: on topic as far as open firmware is less of a mantra than open source, where the aformentioned is expected to promote the latter. As a former HPC person with exposure to Intel, this is my recommendation due to rule-of-linux-kernel driver development.
<vagrantc>can't see the guix in what you're talking about
<vagrantc>other than, they're both related to computers, which is a bit of a stretch
<zpiro>10% of the channel may wonder what else can be done to avoid ad-hoc nvidia stacks in their setups.
<nckx>I would very much like to go to sleep soon (in fact I had already begun a sneak preview). I don't want to babysit this channel. If you're just going to keep rambling like you did last year, I suggest you at least find a relevant place to do so. #guix is *not it*. Seriously.
<zpiro>nckx: now, part of my rambling was suspecting that mbakke would benefit from engagement or work exchange with UiO, now having been idle on irc for the last 11 days.
<nckx>Not this again.
<zpiro>nckx: but you now invited to it, it is not this again, it is partly the baggage of sorting out a 28 day old ban.
<nckx>If mba​kke is interested in talking to you, I'm sure they will contact you themselves. However, since we've seen no evidence of that, please stop trying to get their attention by rambling in this channel.
<zpiro>however, there is nothing wrong with what im saying---across the board of technical interest.
<vagrantc>zpiro: based on the fact that you're doing more-or-less exactly the same thing that led to a 28 day ban, what makes you think behaving the same will be any different?
<mirai>email them if you want to contact them
<mirai>I don't think casting it into the open is going to be an effective avenue
<zpiro>vagrantc: hmmm, hmmmm... which is what drop in the infamous glass that tipped efraim's hand?
<nckx>zpiro: Take a break. If you keep pushing this, you'll be banned again. Furthermore, evading bans is against network policy and might get you banned from more than #guix.
<zpiro>nckx: pushing what? The fact that I am ethnic Norse from north west Norway with a history that extends to the middle east more than a thousand years ago?
<nckx>Yes, the irrelevant rambling about nothing.
<nckx>It's OK not to talk if you don't have anything on-topic to say for now.
<nckx>Check out the list of other channels here if you haven't yet. There are lots of social channels if you just want to have fun, or more focused-but-general ones like #linux. But they also have rules and patience and stuff.
<zpiro>nckx: the ban or my reponse to challenges? That long list of places involve people and places that didnt confront with a question or proposition.
<zpiro>Among the four lines and routes, for trains of thought, i offer an impass.
<nckx>You sure do.
<ecbrown>wtf are you talking about zpiro
<vagrantc>unfortunately, that is the only topic allowed when zpiro is present
<ecbrown>ACTION is rocking 128kbps tonight
<bjc>i think zpiro might be a bot
<vagrantc>an excellent bot, or a poorly intentioned human
<nckx>Please, this is also not helping.
<zpiro>vagrantc: but you and others may very well break the idlenes, as for some reason or another I tend to be correct; that you can work at UiO and mbakke for you where you come from. Rest of the meandering is not my lust or left for want in this channel.
<nckx>I know you're not a bot, zpiro, but I didn't understand half of that. It's a fact that nobody here is interested in your meandering or your obsession with certain members, which has to stop now or the ban will be reinstated. This is the last warning. There's a whole network to explore while you chill and consider what people here have told you. Surely they can't all be wrong or picking on you…
<the_tubular>Hey bjc, I tried to read on the podman related service-type you pasted the other day, and couldn't find either of the 3 are you sure they still work ? Or am I really blind ?
<bjc>i'll go look. there is a slim possibility that it's from a local branch i've been working on
<bjc>oops, it's in the rest of my config
<bjc>lemme paste it somewhere for you
<the_tubular>Thanks :P
<the_tubular>What's a GEXP ?
<zpiro>nckx: This trolling is on your own accord, and I am the sort of person that will entertain it.
<bjc>the_tubular: it's a piece of code evaluated on the build side of things. there's a chapter in the manual about them
<the_tubular>Thanks, will go read
<bjc>i'll be honest, though, it just takes some time with them to start to get them, so don't feel too bad if it's a bit hard to grok at first
<vagrantc>ACTION sighs
<nckx>Truly the victim in all this.
<vagrantc>nckx: rest up and thanks for keeping things reasonable.
<nckx>I will, & thanks. You did your part.
<nckx>ACTION → 😴💤
<Korn[m]>what does expression not valid outside of quasiquote mean? i have been getting that error from my variables section in guix home config, reffering to manuals i see nothing wrong
<cumunculus>There are so many things I hate...but none of them are guix
<cumunculus>which line is invalid, Korn[m]?
<Korn[m]>it doesn't really say, it only appears when i insert my list with variables
<cumunculus>why is line 19 quoted?
<zoglesby>Korn[m]: the (package) list should be closed at the end of that section, and the next (list) with env variables should be in something else, but I am not 100% sure what you are trying to do with it.
<mirai>line 16's missing a closing parenthesis \
<Korn[m]>oh i tried if that helps, it sadly did not do much, i will try closing packages off
<mirai>line 19 needs a `
<mirai>not a '
<mirai>single quote does not allow unquoting
<mirai>only ` does
<cumunculus>i am so slow to get my reading done; i will one day understand what quoting does
<mirai>I'd do the part beginning at line 18 as
<Korn[m]>i do get that whole section printed and told that its invalid field specifier, haven't understood what that means so far
<mirai>`( ("XDG_RUNTIME_DIR" . ,(proc foo)) ("EDITOR" . "emacs") ...... )
<zoglesby>mirai: should that not also be some part of the home-bash-config? I don't really understand what that block is going all alone like that.
<mirai>zoglesby: neither do I
<mirai>I'm assuming that paste is a disjoint collection of snippets
<Korn[m]>im not quite sure either how exactly it is supposed to work either, the manuals are little confusing to me
<mirai>but my guess is that it's supposed to be a list of pairs (to be used as environment variables)
<Korn[m]> i have been reading this
<zoglesby>Oh, you just posted that, you want that whole (simple-service) block
<Korn[m]>do i? iunderstood the first section as i do not need to use service but define it directly
<zoglesby>yes, because you are trying to extend it with your own list
<zoglesby>right now you just have a random (list) in your config and guix has no context for it.
<Korn[m]>btw when i have invalid field specifier, what does that mean? so i know what to look for, is that like unknown function in guix or?
<bjc>a lot of things in guix (like ‘operating-system’) are defining a record (like a struct in c or rust or go). you define the contents of the record with field specifiers, like ‘packages’ inside your ‘operating-system’ definition. an invalid field specifier is when you try to set the value to a field that doesn't exist
<Korn[m]>so i have this simple service which should right with syntax, does that mean im putting it in wrong field?
<bjc>you'll note the structure of the ‘operating-system’ definition is: (operating-system (key value) (key value) (key value)), where the keys are field specfiers, and they always exist one level inside operating-system
<bjc>simple-service belongs inside the ‘services’ field
<bjc>the contents of which are a list. so you'll need to ‘cons’ it on to the head of whatever your base list is (probably ‘%base-services’ or ‘%desktop-services’)
<bjc>eg: (services (cons (simple-service …) %desktop-services))
<Korn[m]>so cons is like if you want multiple of (things) in single field?
<bjc>cons adds an element to the beginning of a list
<bjc>(cons 1 (list 2 3)) ⇒ (1 2 3)
<bjc>lists are made up of so-called cons cells, but we're at a point now where you're better off learning the basics of scheme/lisp, since this is foundational stuff
<mirai>fire up guile or guix repl and play a bit with the "primitive objects of scheme"
<Korn[m]>yeah seems like, i got somewhat recently into emacs and with guix 1.4, i got interested enough to make effort into trying it out and good so far, usually i get confused by names, i likely already get the idea from bunch of things i know already
<mirai>no need to become a full expert on it but you should at least learn how the most elementary operations and data types work
<bjc>yeah, there's a lot of concept overlap, but also a lot of things are subtly different from other languages. lists is lisps are a very particular thing that you may not be familiar with unless you've done functional programming in haskell or erlang (or, obviously, a lisp), so it's worth seeing how they operate here
<Korn[m]>i did haskell but its been far too long to remember much of anything
<bjc>the list = [head | rest] idea that gets used a lot in haskell pattern matching is basically describing how lists work in lisp
<bjc>there are still some subtle differences, but i feel like that'll get you a good 90% of the way there at least
<Korn[m]>so far what has been getting me a lots has been closing some quotes
<Korn[m]>my current favorite is statement valid only inside quasiquote but not without it, why?
<Korn[m]>does guix have some documentation i may have missed that kinda explains all the concepts and names of the language?
<lfam>Korn[m]: Do you mean the language of Guile Scheme? Or the things that are more specific to Guix?
<lechner>Korn[m] / are you looking for GNU Guile?
<Korn[m]>hmm more specific to guix, i can reverse search or just figure it out from snippeta eventually
<lfam>I've been involved with Guix for ~7 years. Before working with Guix, I had never used a language based on s-expressions, such as Scheme or Lisp.
<lfam>I didn't make a concerted effort to learn the language, but rather learned how to be productive at certain tasks within Guix. I understand the language on a superficial level, but I can't read it easily like I can other types of languages
<lfam>I've noticed some people struggle to learn it, others pick it up right away
<lfam>I think it's kind of a crapshoot how easy or hard it is. I would just dive in to accomplishing whatever tasks you are interested in. People will help
<Korn[m]>yeah that is what i am trying, just get things running, it will make sense eventually
<lfam>Guix is generally very well designed. So, if you want to do packages, you only really have to learn about packaging. If you want to do services, likewise. And so on
<Korn[m]>rn i seem to have things parsing properly but getting bashed with quasiquote being required l, but looking online i do have it right, so this is problem for afternoon haha
<lfam>Quoting is a Scheme thing that has to be learned! The Guile manual does cover it:
<lfam>If that's not your style, maybe another Scheme's manual could help, like Racket
<lfam>There's a neat book, The Little Schemer (or The Little Lisper, close enough for the basics of s-expressions) that covers the basics
<Korn[m]>i wanted to look up some public guix home configs but so far i only seen overengineered stuff, could it be that it came out very recently?
<lfam>Guix Home is new-ish, yes. Maybe 2 or 3 years?
<lechner>also, not everyone uses it (although i do)
<Korn[m]>wait wat? i only seen it in 1.4 article, i thought the feature was introduced in same timeframe
<lechner>no one uses the releases, and there are pre-release channels such as guixrus
<lfam>Yeah, the releases are basically just to help people install Guix. After you install, it's a rolling release
<Korn[m]>shame they don't have example on configurating variables
<lechner>Korn[m] / what do you need?
<Korn[m]>just variables for the home environment, things i have tried just don't wanna work
<lechner>Korn[m] / maybe this is helpful to you
<Korn[m]>don't quite see variables anywhere
<lechner>yeah, neither do i
<Korn[m]>shame including it to bashrc and profile won't do
<lechner>think eshell
<Korn[m]>btw does guix home support running commands into environment as config? some things i need only work after dbus launch is executed however i don't wanna do it manually all the time
<lechner>it's called the gnu shepherd
<Korn[m]>would that work for non daemons?
<lechner>you may want one-shot
<lfam>I've got this procedure to create a manifest of Go-language packages:
<Korn[m]>i should have chosen a desktop pre-installed in installer haha, prolly would make process of learning easier
<lfam>It seems to work okay with `guix package -m go-manifest.scm --dry-run`, but it crashes when I try to build it with make cuirass-jobs after adjusting evaluate.scm
<lfam>I adjust evaluate.scm like this:
<lfam>Does anyone have any idea what I'm doing wrong?
<Euler-Maskerony>Hello. Where can I find .scm documentation? I just want to learn what specific functions do.
<lfam>Euler-Maskerony: It might help to ask a more specific question
<shcv[m]>what determines how much space the installer has for its store? I'm trying to install guix on my vps and it's running out of space
<shcv[m]>apparently the installer is running out of space with only 500M for /, even though I have 1GB ram, 2GB swap, and 25GB permanent storage I could be using
<kitty1>Going to switch machines some time soon here, and will likely switch to having a dedicated GPU instead of an iGPU like I have right now, haven't looked at the status of linux-libre compatability in a good while, assume nothing in particular special happen any time recently? going to browse h-node here haha
<lfam>shcv[m]: If I understand correct, the installer downloads things to the partition you are installing to, and that's something that you create during installation
<shcv[m]>hmm. I wonder why it ran out of space then
<lfam>To be honest, installing it on a VM sounds a little more tricky than normal
<lfam>You might need to do some manual steps
<shcv[m]>how so?
<lechner>shcv[m] / 500 MB for the root filesystem?
<shcv[m]>that's the live installer root
<lfam>I mean, not a VM, but a VPS
<shcv[m]>25GB for the vps root
<lechner>just run guix gc a few times throughout
<lfam>I say that because I've done it before, and it was not straightforward. Many VPS hosters don't give you access to the storage in the way that facilitates the happy path
<shcv[m]>I've successfully installed guix on this server twice before, though it seems to get borked regularly
<lfam>For example, how do you boot the VPS, install to another partition, and then boot into the other partition?
<lfam>I'm sure some VPS hosters make this easy
<shcv[m]>I have /dev/vda that's a 25GB block device, which I can partition as usual; hasn't been a problem so far
<lfam>Check if the cow-store service is running
<lfam>`herd status cow-store`
<lfam>That's what makes Guix download things to the (presumably large enough) target partition
<shcv[m]>well, I just rebooted it and am redoing the "herd start cow-store /mnt" and "guix system init /mnt/etc/config.scm /mnt" steps
<shcv[m]>I'll see if it works better this time
<shcv[m]>maybe I missed it on the previous attempt
<lfam>Fingers are crossed
<shcv[m]>seems to be working
<PotentialUser-47>Is there i2pd service in the making? Asking because there is a package yet i cannot find anything about service
<lechner>PotentialUser-47 / you may have to run the daemon manually, or as a custom Shepherd service
<PotentialUser-47>well then i will attempt writing shepherd service
<yasht>Does anyone know how to make EXWM load the .Xresources file?
<unmatched-paren>hello guix :)
<lechner>yasht / how about this, from daviwil?
<dtx>Hi everybody. Just curious if there's any progress adding modern PHP versions and composer to the guix repos?
<yasht>lechner: That depends on having a custom file. I use the guix exwm package which comes with it's own .desktop file and custom script to start exwm.
<abrenon>moin !
<unwox>dtx: i've got 8.1.7 working:
<unwox>dtx: and trevdev's composer
<civodul>Hello Guix!
<abrenon>hey civodul o/
<Korn[m]>anyone has example of simple service used in guix home config? i really cannot quite wrap my head around the quasiquote requirement, even though i seem to meet it
<efraim>Korn[m]: I don't use simple service in guix-home, but perhaps my home config can help
<Korn[m]>i figured it out soon by chance haha, turns out i had to wrap it in more brackets and remove one thing
<janneke>hmm, guix-set-emacs-environment is broken again
<civodul>Korn[m]: do give "guix home import" a try if you haven't
<civodul>it should give you a good starting point
<janneke>error: search-paths-specifications: unbound variable
<janneke>rings any bell?
<civodul>janneke: hi! hmm no
<Korn[m]>i started that way yes
<abrenon>janneke: yes, the variable has no plural (search-path-specification)
<abrenon>but what is this guix-set-emacs-environment thing ? is that a package ?
<janneke>abrenon: it's from emacs-guix
<janneke>emacs-guix/scheme/emacs-guix/profiles.scm (still) has: define (search-paths-specifications profile)
<abrenon>a separate channel ?
<civodul>overall emacs-guix suffers from bitrot
<abrenon>wait what ? how can the variable be unbound if it's defined there ?
<janneke>no, i'm on version-1.4
<civodul>we failed to to really keep it up-to-date so far
<abrenon>sorry, I had no idea what swamp I was venturing in : )
<janneke>hmm, /me does not see any relevant changes in emacs-guix
<civodul>the failure mode of emacs-guix is quite bad
<civodul>if the Scheme side fails to load a module, you get an unrelated error down the road
<civodul>that may be what's happening here
<bumble[m]>Hey everyone I'm a novice new user who installed guixsd first time recently, installed and managed to start sway with seatd. I tried installing and coniguring sway with guix home "home-environment" but do not know how to add home-environment's user to the "seat" group. My question: should one use home-environment to specify and configure sway, or should that be part of the root global config.scm?
<bumble[m]>Is there a recommended way to install and configure something like sway, so that sway-specific parts are organized in one place away from other parts?
<jpoiret>bumble[m]: what do you mean the "home-environment's user"?
<jpoiret>but yeah, i don't think right now there is a good way to avoid installing sway system-wide, although you should be able to configure it from the home environment
<jpoiret>by the way, it's called "Guix system" now, "GuixSD" has been retired for quite a while now
<bumble[m]>@jpoiret if I try to add seatd-service-type to home-environment's services list, then run "guix home container" the error result is "error: no target of type 'account' for service type 'seatd'" which, I believe indicates there is not a user profile with seatd group access
<bumble[m]>thank you for your response
<bumble[m]>if it is "normal" to install sway system wide I will do that
<bumble[m]>I keep reading about home-environments and am basically stumbling around not sure what I am doing
<jpoiret>ah no, seatd-service-type is a system service
<unwox>bumble[m]: it is intended way. seatd must be in your system.scm
<jpoiret>system services and user services aren't interchangeable unfortunately
<jpoiret>(and since seatd manages permissions for files belonging to a seat, running it as a normal user would not work very well)
<civodul>i should share that experiment of mine to automatically turn a system service into a home service
<bumble[m]>if I reconfigure the global config to include sway and seatd, then if create a home-environment with empty services list and "sway" in the packages list... sway does not start and there are errors about logind and failed to load session backend, just like the errors reported here
<bugtitle>sway fails to launch after installing <>
<bumble[m]>perhaps it is wrong to start desktop or window manager inside home environment
<unwox>sway must be installed in the same profile with seatd (i.e. system one)
<bumble[m]>okay, thanks. I will stop that and focus on addng things to the global config
<muradm>hello guix
<sneek>muradm, you have 1 message!
<sneek>muradm, unmatched-paren says: yay, greetd-wlgreet-sway-session has been merged into master! :D
<dtx>unwox: I'm pretty new with this, would you mind helping me with a followup? How do I integrate that package definition so I can install it in a guix shell environment?
<dtx>I'm particularly interested in the composer one.
<rekado>I use a separate profile just for Emacs. Can I use guix home to manage that profile?
<unwox>dtx: you add needed channel to your $HOME/.config/guix/channels.scm and then do "guix pull && hash guix". then you should be able to install a package from needed channel
<dtx>unwox: thank you!
<muradm>please #60707
<bugtitle>[PATCH] gnu: services: Fix fail2ban configuration serialization. <>
<devmsv>anyone using onedruve package ? for my is segfaulting with 'failed to load curl'
<janneke>ACTION compiles their ~/src/guix/master checkout and guix-set-emacs-environment works fine again
<civodul>janneke: it might have been some ABI issue, too?
<janneke>civodul: ah yes, it was most probably an ABI issue; i had to make clean-go
<civodul>hmm a "guix system vm" fails to boot, before GRUB
<civodul>something with SeaBIOS?
<civodul>also, i often see " is somewhat slow", not sure what causes it
<Korn[m]>i see it too, i don't find it slow but it still works
<civodul>right, but it suggests there are load peaks on the server
<jonsger>civodul: where do you see that message? on the website in your browser?
<rekado>jonsger: terminal
<rekado>jonsger: guix prints this when the substitute server is “slow”
<rekado>(could be actually overloaded, or Guix stumbling over the data)
<dirtcastle>I'm learning to write new service definitions (service type procedure with configuration variables) . which service is simple enough so I can learn how to write it by looking at that code?
<dirtcastle>also I need mentors. I need to learn this daily. and write lots of service and package definitions.
<mirai>is it possible to get the hostname of the current system configuration?
<mirai>say I want to make a service that for the default value, one of the configuration fields is the systems hostname
<yasht>you can get the current hostname using (gethostname)
<mirai>doesn't sound like it would work at system reconfigure
<yasht>mirai: what do you mean?
<mirai>if your system has hostname 'foo' but you change your config.scm to have hostname 'bar', this service default value would be 'foo'
<Korn[m]>how would i acess executables that would normally get put on /usr/libexec?
<mirai>at reconfigure
<bjc>you can't access a field of a record that hasn't been defined. so you won't be able, while defining ‘operating-system’ to get its ‘host-name’ field
<bjc>i'd just move that value to an external variable
<nckx>Nixy (and unguixy) magic aside, I'm with yash​t here: why is a host name being hard-coded into a file? It can only become desynchronised. Why can't you query the host name at run time?
<mirai>its a service that generates /etc/hosts file at (boot | reconfigure)
<mirai>I think I give up on it having a implicit default value
<mirai>sounds like a recipe for macro trouble
<civodul>dirtcastle: hi! openssh provides a good starting point IMO; see "guix system edit openssh"
<civodul>mirai: no, it's not possible, but maybe there are other ways, depending on what you want to do?
<civodul>yeah, what nckx writes :-)
<civodul>ACTION should read from bottom to top
<Korn[m]>how much does guix guille care about proper indentation?
<Korn[m]>is it like python or is it like as long as the symbols line up in sequence it works
<bjc>indentation is not significant in any way
<oenone>Korn[m]: there's "guix style" to make it fit the guidelines
<nckx>( display(string-append"this" " " "is ""fine"))(newline ); it doesn't even care about space, much.
<mirai>should guix generated files be "pretty formatted" or can I leave that part out
<mirai>the /etc/hosts file could have the first column aligned
<mirai>results in some cosmetic code to write
<mirai>or it could just be unaligned (but still valid)
<Korn[m]>I'm curious about those aligning rules because something keeps throwing off my file that i just got working today without changing anything, suspicious of nano breaking something
<bjc>while it's always nice to have a pretty looking file when you need to look at it, it's often not worth the cost, and that's why we have the tab (\t)
<mirai>wild-west formatting it is then
<bjc>"ip\tname-list" is fine for basically everyone, easy to do, and commonly done for the hosts file, specifically
<mirai>I'm sure that we're using spaces right now for it
<dirtcastle>I assume everybody here use emacs and geiser. I have added the guix root directory in the geiser load path. is there a way to make geiser open the file where the object is defined? mine opens only if it is in the same file.
<mirai>trivial to change
<bjc>this is one of those cases where tabs are better than spaces
<nckx>mirai: //etc/hosts isn't aligned here, I've never seen it be (because I've never hand-written mine).
<nckx>‘Aligned’ being ‘first, find the longest IP address’ tedium.
<nckx>Korn[m]: Alignment (in the strict sense of pretty leading space) should really never matter. But then I've never heard of nano breaking Scheme.
<mirai>nckx: not even the first localhost lines?
<nckx>Those aren't just tabs?
<nckx>I'll have to fire up an editor :)
<nckx>My point was, no, don't bother, though.
<dirtcastle>hi nckx
<nckx>mirai: Indeed, they are not tabs. Why would one bother.
<mirai>something like (string-join `("" "localhost" ,host-name) "\t") should do the trick
<mirai>nckx: yeah, I was overthinking it
<nckx>Hi dirtcastle.
<mirai>forgot the tab char existed
<Korn[m]>welp i cannot wait till i fix this file, cobble way through and get emacs master branch installed and setup some evaluation plugin for scheme, that will make life so easy, nano does not even have syntax highlight for scheme
<bjc>why do you need the master branch over emacs-next?
<bjc>sorry if you've already explained that
<Korn[m]>no i didn't, i need it because of pgtk build option so it can natively run under wayland
<Korn[m]>emacs doesn't even run in xwayland for me so this is the only way
<bjc>regardless of why, though, you should be able to use the ‘--with-branch’ option when building emacs-next to do what you want. it's unlikely that things will have changed too much
<bjc>i have emacs 28 running in xwayland with sway, fwiw
<Korn[m]>yeah it just never did for me, so i only use the master branch
<yasht>Korn[m]: have you tried the emacs-next-pgtk package in the repos?
<Korn[m]>btw are you using the program light? my user is in video but the program is just not doing anything as it should
<Korn[m]>yasht: i didn't notice that one, will give it a go
<bjc>i don't know what ‘light’ is, sorry
<nckx>I am.
<Korn[m]>its little software that just changes display brightness
<nckx>I've not tried to use it that way, though.
<nckx>Korn[m]: I'm in ‘video’, and light works without privileges. I have ‘light’ in my udev-configuration's rules.
<jpoiret>Korn[m]: you need to add "(udev-rules-service 'light light)"
<jpoiret>add this in the services list
<nckx>(service udev-service-type (udev-configuration (rules (list … light …))))
<Korn[m]>oh thanks, i'd never think you gotta setup that too
<nckx>That might assume you don't use %base-services, though.
<nckx>I always forget about that.
<nckx>What jpoiret wrote should always work, pity it looks so old-fashioned :)
<bjc>my host config is 85% udev rules by volume
<elb>I ran into this once before, but I don't recall the resolution; a lot of packages have transitive dependencies that are _huge_ for no reason that I can see under the normal use case; for example, the command-line program profanity depends on half the world, because it uses libnotify, which depends on gtk-doc, which -> dblatex -> inkscape -> gtkmm -> everything. Is there a way to ... trim those paths?
<elb>like, I probably don't need gtkdoc just for profanity to send libnotify notifications
<nckx>Why does it depend on gtk-doc?
<elb>I have no idea, that feels like a build dep, not a runtime dep
<nckx>I don't think it depends on gtk-doc at all.
<elb>guix show libnotify says it does
<nckx>That just means it refers to it, not that it depends on it.
<elb>ahh ok maybe I don't understand what I'm looking at , then
<elb>(trying to figure out why my guix store is 5.5 GB to provide a few hundred MB of packages)
<nckx>Well, no, there's something bogus that needs to be fixed. You're certainly right about that.
<bjc>have you done a gc since the package installation?
<elb>yeah, but like, this isn't a new thing with installing profanity
<elb>that's just where I started my search :-)
<elb>because hwen I installed it there were a surprising number of new substitutes installed
<nckx> guix size profanity | grep gtk.*doc # returns nothing
<elb>(given that I already have Emacs and a bunch of other stuff already installe,d so I already have Gtk+)
<yasht>elb: maybe no substitutes were available, so guix downloaded packages to build whatever was not substitutable
<elb>no, it was all substitutes
<nckx>elb: So ‘guix show’ using the word ‘dependencies’ is, probably, unfortunate, but it refers specifically to inputs, which are inputs to the build process. ‘guix show’ has no idea what the built package will refer to later, at installation & run time.
<nckx>I am deliberately avoiding the weird foreign terms ‘build deps’ and ‘run-time deps’ but the former are kind of like the former, and the latter kind of like the latter. There. Confusion resolved :)
<elb>ok with guix size I can see more, I did `guix size emacs > f1` and `guix size profanity > f2`, then `'NR==FNR{pkg[$1]=1} NR!=FNR&&pkg[$1]!=1{print $0}' f1 f2` to get the deps of profanity that Emacs _doesn't_ have, and this seems ... moderate
<elb>well, they're not so much "weird foreign terms" as like "normal software development concepts", but OK
<elb>I feel like guix should have some general understanding of those ideas ;-)
<elb>I wish I had kept a log of what was actually drug in when this installed, this output is only 15 packages
<elb>`guix size` is a transitive closure?
<Korn[m]>nckx: i have been trying that udev service but it says light is unbound variable
<nckx>Of the artefact.
<nckx>Did you import the (gnu packages linux) module?
<nckx>Korn[m]: ☝
<Korn[m]>nope, i added it and now it says there is duplicate udev entry for etc
<nckx>This is probably my fault. Did you use my udev-service-type snippet? That assumes that you (like me) are a crazyperson who eschews %base*services, which you probably are not.
<nckx>jpoir​et's (udev-rules-service …)
<nckx>was better in that regard.
<Korn[m]>i do have %base services, it did come with default config
<nckx>That's fine!
<elb>ok perfect, I can now (reasonably) quickly get the delta of a given package over my existing install, in terms of unmet dependencies
<nckx>elb: Can you ‘guix gc -D’ the offending /gnu/store/…gtk-doc…/ ?
<elb>well, I'm still trying to figure out if _something else_ needs it
<elb>guix gc doesn't clean it up
<elb>(with no args)
<elb>I actually don't think it's _installed_, though
<nckx>Then with -D you should get an explicit but unhelpful error (there is no ‘…because it is a reference of XXX’ which would be handy).
<elb>there's a bunch of stuff there, .drvs and -builders, but no actual directory with files in it
<elb>and they're not large
<elb>I mean gtk-doc was just a grabbing-on point for me, I'm trying to undrstand why my /gnu is so large in general, not particularly concerned about _that_ dep
<elb>on this machine I have oodles and oodles of free space, but I'd like to deploy my guix environment to a machine which does _not_
<elb>this machine has installed emacs, emacs-guix, guile, khal, vdirsyncer, mutt, profanity, go, sbcl, nss-certs, and glibc-locales, and has a /gnu of 5.6 GB
<nckx>Oh, OK, I thought you specifically meant gtk-doc was present (as an example of unwanted things).
<elb>even allowing for some extra profiles hanging around, that seems large
<elb>yeah I thought it was!
<elb>but I think maybe it's not, actually, just some metadata (which seems fine)
<bjc>that does seem large. have you tried ‘du -sh /gnu/store/*’ to see if it's just, like, go or something being weirdly huge?
<elb>the biggest thing there is Emacs, at 262 MB
<nckx>The tooling for ‘guix why --the-hell this that --whyyy’ is lacking, I'm afraid.
<elb>there's two giant ass mesas
<nckx>For context, ‘guix size emacs emacs-guix guile khal vdirsyncer mutt profanity go sbcl nss-certs glibc-locales’ → 3114.8 MiB — not saying that's great or can't be improved by motivated packagers but it's not an order of magnitude from 5.6 GiB.
<elb>I'm updating all my profiles to the same guix channel revisions and going to do some cleanup and see how much this reduces
<mirai>can I read a plain-file object without doing a gexp-ungexp dance around it?
<elb>nckx: that's fair
<bjc>well, ‘guix size emacs’ on my system is 1.6gb, fwiw
<elb>yeah, same here
<elb>which is ... unfortunate
<bjc>if you're running guix system, you'll have a bunch of stuff pulled in that won't show up in ‘guix packages -I’
<bjc>the kernel and initrd + support can be pretty big
<nckx>elb: The rabbit hole goes deeper though. First, by default, the guix-daemon deduplicates identical files in the store (that's /gnu/store/.links). Second, one reason for ‘two mesas whyy’ *could* be grafts: Guix takes one mesa, then substitutes all store references with different ones presumably addressing a security fix. This creates a whole second copy which may or may not deduplicate well, but is a deliberate trade-off to avoid everyone (even X200 owne
<nckx>rs) having to recompile the world.
<elb>in this case i"m not running guix system ,tis' foreign
<elb>du should ignore hardlinks, though
<elb>also wow my typing was pretty bad there on that penultimate message
<nckx>bjc, elb: Yeah, Guix's emacs build being chonky is probably a legitimate qualm, but would need to be addressed in the Guix package, you can't ask Guix to ‘remove emacs reference XXX anyway, I don't use it’.
<bjc>yeah, but thankfully there's emacs-minimal if you need it
<elb>I'mma play with guix gc -D here
<nckx>elb: Yes, du should. I was addressing your 2 mesas specifically. They might not be represented twice in that du.
<elb>I'm wondering looking at this du output if I don't have a gc root somewhere that I need to be pruning
<elb>oh, no, sorry, that was twice in the du
<elb>at 168 and 170 MB
<elb>both 21.3.8
<elb>ugh guix gc just says "it is still alive", it doesn't tell me why :-(
<nckx>I know ncdu supposedly has improved hard-link visualisation but haven't tried it yet.
<nckx>elb: I did warn you! :)
<elb>heh ncdu sounds like something newer than my modus operandi
<nckx>ACTION is the harbinger of mild disappointment.
<elb>well here's the thing about my journey with guix
<elb>there's a lot of mild disappointment
<elb>but there are a lot of things that make it worth it, too
<elb>the only _major_ disappointment I have is some incompatibilities (like no -m32 on 64-bit systems, which I've tackled twice now, most recently just a few days ago) and some packages I don't wish to package that aren't there, and those have kept me out of a few specific machines, not my current usage of guix
<elb>my current usage being "please to install this stuff on foreign systems without mucking with the local package management because I need it but the system isn't one I can just jack with right now"
<Korn[m]>btw do you guys use wireplumber? i have everything i should need installed but it just returns this
<Korn[m]>rtkit isn't a problem its the xdg portal
<nckx>A lot of it could be addressed with $work (like the lack of ‘I can't let you GC that Dave, *because* …’ is completely solvable). But it does imply $work. Same for -m32. Guix isn't stopping you from building that, but someone will still need to build it.
<elb>yup, understood
<elb>and some day I may tackle some of those things
<elb>but today is not that day, sadly
<elb>I mean _in theory_ I'm prepping for a semseter that starts in just over two weeks for which I have not yet finalized the curriculum for either of the courses I'm teaching
<nckx>Sorry, didn't mean that as a snarky ‘patches welcome’, we all have our real work to do.
<elb>_in practice_ I'm yak shaving in guix
<elb>oh I understood
<elb>I've been in the floss world for almost 30 years now ;-)
<elb>and don't get any of my griping wrong, I greatly enjoy guix
<elb>hmmm I also have four python 3.9.9s
<nckx>That's a bit much.
<nckx>ACTION has 9.
<elb>ok so here's something that may be propping some stuff, that I don't understand
<nckx>I didn't compare them or check how much space they take up, though.
<elb>as previously mentioned, foreign system
<elb>I have ~/.config/guix/current and ~/.guix-profile, and they're ... different
<elb>what are those and how are they different?
<elb>have I brought this upon myself?
<jpoiret>Korn[m]: are you running the xdg portal?
<Korn[m]>well i don't have any configuration to run it, never neededo n other systems, do i gotta do it here someway?
<nckx>.config/guix/current is *only* Guix: it's the profile that's created (and a new generation added) each time you run ‘guix pull’.
<nckx>So everything it contains is because Guix the package manager/library require{s,d} it.
<nckx>.guix-profile is where everything you ‘guix install’ lives.
<elb>ok great
<elb>so in my case .guix-profile should be ~empty, whch it is
<nckx>(You mustn't ‘guix install guix’ for tedious reasons, but I don't think you have or that it's related to your issues with size.)
<elb>because I have a set of manifests and local profiles
<nckx>If you ‘guix pull’ and then ‘guix upgrade’ everything in your ~/.guix-profile (called your ‘user profile’), there should be a lot shared between the two. Guix (~/.config/guix/current) doesn't need some weird Python fork or anything, for example.
<elb>(the way I use this is, I have ~/.guix-local, which has a set of manifests, including a base manifest with stuff that's installed on every system I use, and some extra manifests that I select/deselect based on a list of profiles; so everything I'm not just _playing with_ should be in one of those manifests)
<elb>(I `guix pull`, then `guix profile -p various-paths -m various-manifests`)
<nckx>elb: Assuming you don't care about old generations, did you clean them up? ‘sudo guix gc -d 1s’
<bjc>guix size guix ⇒ 640mb
<elb>I have done that more manually, but yeah
<bjc>it's not enough to make up the missing space, but a big chunk of it
<nckx>bjc: It fits on free CD-ROMs you get with Guixworld magazine.
<elb>I _almost never mess with_ root guix
<elb>so I'm wondering if an ancient ass profile in /var/guix/profiles/per-user/root might be part of this
<nckx>‘sudo’ here is just a way to make guix clean old generations of *all* users, not just root. It's a bit of a weird implicit interface IMO, but it is what it is.
<elb>it shouldn't have anything in it, but it'll be linked to a guix and channels
<nckx>Well, you obviously know where to look, and there's no second secret place GC roots are kept, so I'll leave you to looking some more.
<jpoiret>Korn[m]: you need the xdg-portal and whatever portal flavor for your DE installed in your user profile
<elb>uhh so the only place I know how to get a complete set of guix roots is `guix gc --list-roots` as root
<Korn[m]>i do have all of them installed
<jpoiret>are they running?
<Korn[m]>and looking at htop, xdg desktop portals are running just fine
<jpoiret>you need xdg-desktop-portal and one variant of xdg-desktop-portal-{wlr,gtk,whatever}
<Korn[m]>i have all of those
<jpoiret>there should be only one running though
<jpoiret>you can try killing all of them and starting them in the terminal to see if they complain
<Korn[m]>well i mean xdg desktop portal, document portal, that is fine if they all run, that is correct behaviour
<Korn[m]>i cannot quite run them in terminal they are not in $PATH
<elb>ok, getting root (with no packages installed) on the same channels as me made ~no difference
<jpoiret>you can do `./.guix-profile/libexec/whatever`
<elb>I'll have to tackle this more later
<elb>thanks for your time!
<jpoiret>Korn[m]: which ones are running exactly?
<jpoiret>you need a xdg-desktop-portal backend, not just xdg-desktop-portal
<elb>nckx / bjc / etc. I appreciate it
<Korn[m]>even if i run it again, wireplumber just isn't picking it up
<mirai>I wonder if the guix system tests also do "fake installs in VM"
<mirai>I'm not sure how this 'os' tinkering will turn out
<lechner>nckx / Hi, 'guix install guix' is a no-no. How about 'guix shell guix'?
<lechner>Hi, what does the presence of a *.lock file indicate in /gnu/store, please?
<muradm>hello guix
<muradm>please 60707
<bugtitle>[PATCH] gnu: services: Fix fail2ban configuration serialization. <>
<muradm>guix deploy is failing on multiple hosts due to that problem
<lechner>please 60707
<bugtitle>[PATCH] gnu: services: Fix fail2ban configuration serialization. <>
<Korn[m]>i also noticed this little silly thing, i have firefox in flatpak and due to guix strange nature it cannot find xcursor theme so it just kinda cycles between random symbols, how would you guys remedy this?
<Korn[m]>should the cursor theme go into .themes in home?
<jonsger>Korn[m]: using a proper packaged firefox as a guix package :)
<Korn[m]>i use flatpak for lot of things because i don't wanna move things over and pollute my already over the top filled home folder :D
<bjc>guix doesn't package firefox
<Korn[m]>oh right icecat
<lechner>Hi, how does using Guix's own icecat pollute my home directory, please?
<mirai>muradm: I suggest you either use a custom channel or bake it into your configuration files for the time being
<mirai>or pin to a specific guix version
<Korn[m]>well pollute is probably overkill, i meant make .mozilla, maybe .icecat on guix, which is just 1 more directory making my big home even bigger mess
<mirai>the review cycle for patches in Guix takes a while
<bjc>some of them, anyway
<bjc>i have a one line patch to .dir-locals.el that's going to turn a year old in april
<muradm>mirai: good known suggestion, but still thanks, however this is issue more related to security i guess
<muradm>and regression also
<mirai>it's not a "security" issue, the service is just plain broken
<mirai>yes, it's an unfortunate regression
<muradm>it was working before, so it is in production, failure to update production is security issue :) even named so (gnu services security) :D
<mirai>did it happen at 7686dd9676ebd54aec96ab22f0942e27a0979656 ?
<muradm>quick digging leaded me to 543d971ed2a1d9eb934af1f51930741d7cc4e7ef
<mirai>that one doesn't touch fail2ban though
<muradm>that touches (gnu services configuration) which is used by fail2ban configuration
<mirai>I wonder where did the service break
<mirai>muradm: oh right
<mirai>if you're up to it, you could write a guix system test for it
<mirai>it = fail2ban service
<muradm>mirai: there is already basic integration test included see (gnu tests security)
<mirai>any reason for preferring fe80::1%lo0 over ::1 ?
<mirai>in a /etc/hosts file entry
<mirai>not quit interchangeable (you could have lo instead of lo0)
<bjc>nothing comes to mind
<bjc>ping6 localhost should almost certainly use ::1
<mirai>::1 is the equivalent to
<mirai>fe80:: are link local addresses
<bjc>more like 127.1, but yes ;)
<mirai>you could have lo0 listen on other addresses as well and still be a loopback
<florhizome[m]>gnome-shell package is broken
<bjc>you can add extra addresses to loopback, but in those cases i'd just leave it to the admin that's decided they need that functionality
<bjc>the default should be only 127/8 and ::1/128 on loopback
<apteryx>florhizome[m]: it is?
<Korn[m]>hey i figured out what was with wireplumber, turns out it was bluetooth monitor plugin trying to start and use logind and for some reason it does not pick up elogind so 🤷 just removing section to use logind makes it run
<bjc>mirai: i use fc00::/7 as my localhost addresses. not fe80. that's what fc00 is for, after all
<mirai>bjc: no
<apteryx>florhizome[m]: builds fine here
<apteryx>successfully built /gnu/store/f0xxl74brqsxqbgw8kh30fa89ndgwf35-gnome-shell-42.4.drv
<mirai>that's for ULAs (fc for allocated prefixes which didn't go anywhere afaik and fd for randomly generated prefixes)
<apteryx>florhizome[m]: tested on d0942bfd2dd383b6224009b0d223ac8c8b7e3d92 for the record
<mirai>they are routable as well, just not globally routable
<bjc>oh my. i think i misunderstood the context of "local" when i set this stuff up years ago
<florhizome[m]>apteryx me too
<apteryx>I think the test suite was reported to not pass on some people machines in the past
<apteryx>reasons unknown
<apteryx>if you have one such machine I'd be nice to understand what is at cause
<apteryx>perhaps it's just performance sensitive
<bjc>so freebsd assigns fe80::1 to lo0, but neither guix nor my manjaro box do
<florhizome[m]>apteryx well it fails later when I run it with less cores
<florhizome[m]>The message on the cli is “OSerror: [Errno 8] Exec format error: ‘msgfmt’”
<apteryx>with less cores? that's strange
<telmo[m]>Guix have support for riscV?
<telmo[m]>Roma laptop?
<jonsger>telmo[m]: not yet, but maybe vagrantc knows more about current state of riscv :)
<jonsger>telmo[m]: reveals some of the work already done...
<florhizome[m]>apteryx what’s also strange is that the installation worked yesterday
<apteryx>florhizome[m]: it built fine here on a Q6700 from 2006 on a single core with "guix build --no-grafts --check -c1 -K gnome-shell"
<florhizome[m]>And also that I don’t get it as a substitute
<apteryx>no substitutes yet indeed
<apteryx>actually there is now, from berlin
<apteryx>according to 'guix weather gnome-shell'
<florhizome[m]>hm I don’t see it
<mirai>I fear that the current tests do not work: FAIL: tests/
<mirai>will do a make clean to recheck this
<florhizome[m]>Ok so guix weather gnome-shell —substitute-urls= seems to succeed
<Euler-Maskerony>Hello. Why is it so important for GNU programs to be released under GPL license?
<shcv[m]>so, I'm using the 1.4.0 installer with a system config file that has worked before, but I'm running into a strange issue where grub doesn't recognize the file systems; using ls in grub rescue for e.g. (hd0,gpt1) just says Filesystem is unknown. Could I be missing something I need to add to my config so it will recognize vfat and btrfs?
<florhizome[m]>shcv not that I know :0
<nckx>Euler-Maskerony: This is #guix and can't speak for all of GNU, but it prevents the loss and abuse of the authors' efforts that ‘permissive’ licences allow. You can't (legally) take a GPL project, modify or build upon it, and redistribute your version without granting the users the same rights you enjoyed.
<Euler-Maskerony>nckx fair enough. Thank you for the answer.
<nckx>Since guaranteeing user freedom rather than some nebulous ‘developer right to free-to-use code’ (users tend to turn into developers if you let them) is the primary purpose of GNU, that's what the GPL aims to do. Since zero-cost code and getting volunteers to do unpaid work is the primary purpose of other organisations, they will try to discourage GPL usage & promote other licences whenever possible.
<nckx>See GitHub etc. pushing lax defaults.
<nckx>(Hey, ask in a GNU space, get a GNU answer—although I mean every word :)
<florhizome[m]>maybe a savior is on the horizon
<Euler-Maskerony>What "guix pull" do exactly? Does it like just updating repositories (as I understand it is equivalent to updating config files) or it actually downloads packages and creates new generation?
<mirai>read the essays there
<lechner>nckx / thank you for that erudite summary. that's exactly why they say everywhere else that MIT/expat is better
<mirai>they're quite well written
<florhizome[m]>Euler-Maskerony it updates your “guix” command
<civodul>Euler-Maskerony: kinda like "apt-get update && apt install apt"
<lechner>Euler-Maskerony / guix pull gives you a new version of 'guix', but not the newest 'guix-daemon'
<nckx>Euler-Maskerony: Guix is a package manager attached to a library of available package recipes, written as Guix code. ‘guix pull’ fetches the latest code but also builds all of it (and anything else required to run Guix), and creates some databases. That's why it's ‘slow’. It's not just rsyncing a tree of bash scripts or text files. Of course, it's too slow, full stop, the speed should be improved.
<lechner>i prefer to call it "expensive"
<nckx>lechner: Thanks. mirai: Absolutely, I just tried to provide a much shorter (& punchier) summary.
<lechner>while we are on the missionary trail, why do we have a mirror on Github?
<mirai>lechner: I don't see a problem with having a mirror there
<mirai>as long the main avenue is Free
<nckx>Because mba​kke created one, is the short answer. It was also briefly the most reliable way to get Guix to China, but that probably passed.
<Euler-Maskerony>And also, as I understand, profile - is config file with full system information, isn't it? GUIX_PROFILE=\"$HOME/.guix-profile\"; . \"$GUIX_PROFILE/etc/profile\" : what then this command do? Documentation says that it updates PATH so it adds to it $HOME/.guix-profile/bin, but why binaries are stored in home folder?
<mirai>otherwise you'll be dependent on non-free services, which is not a good thing
<mirai>feel free to create even more mirrors
<nckx>lechner: Strictly, ‘we’ don't, it's just two Guix contributors who happen to own it, not the project.
<mirai>personally I don't see any problem in having mirrors at nonfree services
<lechner>for me, it would also be the ownership in addition to the codebase
<nckx>And one of those (me) was just added at the insistence of some whiney sod (me) to reduce the bus factor of what is, like it or not, the first search result for ‘guix git’ for most people. I don't *like* GitHub, but I'd rather that first spot be occupied by friends of Guix.
<Euler-Maskerony>florhizome[m] civodul lechner nckx thank you. That is quite bizarre for me. But I still can't understand why do I need to update guix command?
<mirai>(you could argue that indirectly you'll be subjected to nonfree js code when visited with a web browser but I'm not too interested in defending this hill)
<lechner>Euler-Maskerony / because we update it all the time, for your benefit
<nckx>There isn't really a separate ‘command’. There's just Guix, which exports a bit of CLI as part of its job.
<nckx>There is no separate ‘package manager’ & ‘package repo’ like some other distributions have.
<minikN>Hello, I was wondering what the correct way would be to get grammars for tree-sitter working in Guix when using it with emacs 29+? I started writing a package definition for a grammer ( but I'm not sure if this is the correct approach.
<mirai>lechner: as long the main avenue, which is gnu savannah remains libre, the mirrors could be proprietary for all I care
<nckx>lechner: <for me, it would also be the ownership in addition to the codebase> If this was directed partly at me, I don't grok it.
<mirai>they're not where the main activities take place
<nckx>The GitHub mirror explicitly tells you to bugger off with proprietary GitHub-style PRs.
<lechner>it is always less convenient to be consistent and true to one's values
<lechner>but there is no need to argue
<mirai>I feel I should start punching some custom commands in hexchat
<Euler-Maskerony>lechner / civodul said that it is like updating apt or pacman. I, for example, updated pacman only once in my life and there are no critical benefits in this update except parallel downloads. What benefits do you mean?
<florhizome[m]>Euler-Maskerony because the guix command includes all your packages etc
<lechner>Euler-Maskerony / that's the answer
<mirai>> A misunderstanding is circulating that the GNU Project demands you run 100% free software, all the time. Anything less (90%?), and we will tell you to get lost—they say. Nothing could be further from the truth.
<Euler-Maskerony>lechner / so no critical benefits?
<florhizome[m]>guix is simply a guile library. All packages etc are in guile modules. guix cli is a Script that calls guile. guix pull updates your channels and recompiles your modules
<lechner>Euler-Maskerony / depends on your package. security updates appear there
<nckx>Euler-Maskerony: I don't think this civodul person knows what they are talking about. Or, alternatively, the metaphor breaks down if you take it too far. There is no ‘pacman’ in Guix — Guix is a library that is heavily used by the packages that are (also) in that library. The UI is perhaps 1% of that. It would make no sense to separate it, and provide no (speed or size) advantages to do so.
<nckx>(/s, obviously, in the first part.)
<lechner>mirai / not sure why this is so important to you, but i am not advocating for a 100% changeover. i am asking for the small step described in that article
<florhizome[m]>guix is just the scheme files we generate on the way
<lechner>Euler-Maskerony / civodul invented Guix
<Euler-Maskerony>mirai Thank you for the link. Makes sense.
<Euler-Maskerony>lechner / for real?
<nckx>That's the claim.
<nckx>I think it was made by ancient aliens and merely discovered.
<florhizome[m]>can everybody check if gnome shell builds / substitutes for them
<mirai>lechner: I interpreted this 'it is always less convenient to be consistent and true to one's values' as advocating a black-and-white position towards FOSS
<Euler-Maskerony>And also, as I understand, 'profile' - is config file with full system information, isn't it? GUIX_PROFILE=\"$HOME/.guix-profile\"; . \"$GUIX_PROFILE/etc/profile\" : what then this command do? Documentation says that it updates PATH so it adds to it $HOME/.guix-profile/bin, but why binaries are stored in home folder?
<nckx>lechner: I don't see arguing, only interesting arguments. If you don't agree with my ‘let's put at the top of Google search results the only way we can in the current hegemony’ that's valid.
<lechner>Euler-Maskerony / spell civodul backwards, please
<nckx>Euler-Maskerony: It's a symlink tree (into /gnu/store) + a shell file you source to set up environment variables like PATH to point to those locations.
<mirai>lechner: btw, no one argued against having a codeberg mirror
<nckx>All Guix-created files are stored in /gnu/store, profiles are merely collections of packages implemented through symlink trees. You can explore them.
<lechner>nckx / talking about search results, i think we should ditch the release manual and publish only 'devel'
<nckx>My current ‘swap devel & release manuals & add a big banner to the release manual saying you probably want devel’ patch has been stalled for quite some time on me not actually knowing how to add such a banner in Texinfo, so… that would work.
<nckx>*I* would do so. I'm not sure the majority agrees.
<lechner>it still pulls up the wrong version 99% of the time
<nckx>(Just stressing that I'll agree with whatever you say about the subject, probably.)
<bjc>i am grateful for 1.4's release, mostly for it bringing the manual out of the dark ages
<lechner>there is a motivation to focus on the next release
<nckx>Guix has a release/rolling identity crisis that goes beyond the manual, but the manual makes it painfully palpable.
<bjc>guix is, officially, a rolling release, so the manual should be too
<lechner>my point was only, that it ended up on top of the search results
<lechner>i think it ends up on top, then everyone links to it, and PageRank does the rest
<Euler-Maskerony>nckx So as I understand this: guix store all the packages in /gnu/store. Every profile is a environment which contains specific subset of packages from /gnu/store. So in .guix-profile this subset of packages is stored as symlinks to ones in /gnu/store. Am I right?
<nckx>That's a good summary!
<nckx>Technically, profiles are also in the store, and hence immutable, and hence you create a ‘new’ profile each time you modify the old one, but this new profile is then symlinked to (say) ~/.guix-profile so that summary is certainly accurate enough to get real work done.
<Euler-Maskerony>Thank you! Because I can't now touch all this by myself because I haven't installed system yet. I don't want to brake something
<lechner>Euler-Maskerony / you are entering at your own peril. Guix will rock your world and lower your tolerance for most other Linux distributions
<lechner>it's a seminal step
<florhizome[m]>So guix weather says a gnome-shell substitute is available from Berlin but when I say guix build gnome-shell it doesn’t use it
<Euler-Maskerony>Also, can I rollback specific package if I updated it with all other packages? Or I have to update only this package within one transaction so it will have its own generation which I can rollback?
<lechner>you can roll back individually, i think, but how you do so depends on whether you use guix home
<nckx>You roll back profile generations, so to downgrade A after ‘install A && install B && upgrade A’ you'll lose B if you use ‘guix package --roll-back’. But if you get your hands only a little bit dirty, you can ‘manually’ roll back only A in a new profile generation that still contains B. If I catch your drift.
<nckx>(You'd do so by looking at the output of ‘guix package --list-generations’, then explicitly ‘guix install’ing the store file name next to the older version of A you want.
<florhizome[m]><florhizome[m]> "So guix weather says a gnome-..." <- Can someone help me out here
<nckx>florhizome[m]: I'm at 27e40a44630f8932373e2377bc754aa5b5161538 but don't get a substitute. I'll pull. I forgot to mention: I built gnome-shell 5 times on my 8-core i7 3615QE with no trouble. Both with -c8 and -c1. It is g-s itself that fails, right? Not a prerequisite?
<Euler-Maskerony>Ok, but I meant actually not  ‘install A && install B && upgrade A’ , but just "upgrade" and then rollback A.
<nckx>Same mechanism.
<Euler-Maskerony>But I will loose all upgrades then.
<Euler-Maskerony>Or not?
<jpoiret>you wil
<jpoiret>will *
<nckx>I meant the second mechanism, where you explicitly install that exact older version of A you know was part of generation N.
<nckx>florhizome[m]: I still get no substitute… Commit cfd48888dbc1b021d3f0b1aee3d5b0086b8e8e28.
<Euler-Maskerony>Ok, thank you.
<nckx>There is no ‘guix package --roll-back PACKAGE’ to match your ‘then rollback A’.
<nckx>It could be done, but it might make the UI too complex. But you can do it, Guix won't stop you.
<Euler-Maskerony>Also I asked about .guix-profile and bin folder in it, but I now can't understand what does that folder do: $HOME/.config/guix/current/etc/profile?
<nckx>The gnome-shell store item does exist on berlin so it must be a me-problem.
<Euler-Maskerony>Sorry. This: ~/.config/guix/current/bin
<Euler-Maskerony>This is also profile folder?
<guix-helper-bot> <>
<lechner>nckx / helpful?
<florhizome[m]>nckx I’m on d….
<florhizome[m]>but gnome shell doesn’t fetch from Berlin
<nckx>It just collects symlinks to all /bin subdirectories of all packages in that profile that have a /bin subdirectory, so that ‘grep 'export PATH' ~/.guix-profile/etc/profile’ (try it!) can sanely add one element to PATH and not a hundred if you have 100 packages. It is not itself a profile.
<nckx>Euler-Maskerony: ☝
<nckx>florhizome[m]: Weird, I cleared my caches and still get 0.0% toots.
<nckx>I'm going to try a time-machine.
<florhizome[m]>Well I’m pulling
<florhizome[m]>you are three commits ahead
<lechner>something fixed extended Unicode codepoints in my Circe. Please feel free to type some more
<Euler-Maskerony>There: I can't understand why after installation of package I need to redefine GUIX_PROFILE with "$HOME/.guix-profile" and after 'guix pull' with "$HOME/.config/guix/current". Can someone help me there?
<florhizome[m]>The thing is I need to reconfigure badly to enable the evil kernel
<nckx>I'm more (local) commits ahead but none of those touch gnome-shell (and the store file name is *the same* on berlin). Still, I'll rule them out.
<lechner>Euler-Maskerony / it's for your environmental variables. the new store location needs to bec
<lechner>become part of your PAT
<nckx>lechner: 🐃 +🐧= ♥
<lechner>nckx / wow, just the first one did not work. thanks for the heart
<florhizome[m]>yeah actually the gnome-shell I’m using atm should be the same as the one I can’t build now
<nckx>lechner: I personally think it's useful, but maybe roll the new features into one bot. Also, it's up to the majority of the users to like it, not me.
<nckx>2 gnus 1 love.
<nckx>I thought you triggered bugtitle that way earlier? Or did I imagine it.
<lechner>it's all in one bot. i changed the name
<lechner>bugs need some sort of prefix
<lechner>please 60606 is the newest
<guix-helper-bot>[PATCH 0/1] mumi: Depend on guile-email, not guile-email-latest <>
<nckx>There are 4 lights.
<lechner>naming suggestions welcome
<nckx>Neat, so there's a cut-off?
<lechner>wait, what?
<nckx>please 1 is the oldest
<florhizome[m]>nckx but since I can see a substitute on Berlin why doesn’t guix use it
<nckx>lechner: Seems so.
<nckx>I don't know either, florhizome[m].
<nckx>florhizome[m]: Which .drv exactly do you need?
<lechner>'please' is newer than 'bug' or 'issue'
<mirai>lechner: does your bot have any measures against "recursive inputs"
<lechner>it support them
<lechner>what are recursive inputs, please?
<mirai>say, if a bug title contains its own bug number or contains another bug number
<florhizome[m]>nckx: uhm gnome-shell 42.
<nckx>lechner: The ‘(>= 3 numeric)’ is what I meant by ‘cut-off’.
<nckx>florhizome[m]: No, the exact derivation.
<nckx>There are infinite ‘gnome-shells 42’.
<mirai>and the referenced bug title has the bugid of the ancestor
<nckx>‘guix build -d’, for example, but the actual output of your (failed) reconfiguration should mention it too.
<mirai>(a cycle of bug numbers)
<lechner>nckx / different author
<mirai>will it spam all over the channel?
<nckx>It will be flooded off the network.
<nckx>It's a (fun but) academic concern.
<nckx>Still, a counter would be safe.
<mirai>there should be a guix-botfuzz channel
<lechner>mirai / patches are welcome
<nckx>Isn't there a network-wide botfuzz channel?
<mirai>to see how well it fares against human ingenuity
<mirai>lechner: oh you misunderstand me. I'm interested in feeding *garbage data* to the bot
<mirai>let's say they're destructive urges
<mirai>not the constructive kind that result in patches
<nckx>My favourite bugs are bug #43442 #37801
<guix-helper-bot>[PATCH] Fixes init of #42162: down Dec. 2020 <>
<mirai>who knows, maybe the bot is capable of arbitrary computation as well
<florhizome[m]>Nckx it’s /gnu/store/f0xxl74brqsxqbgw8kh30fa89ndgwf35-gnome-shell-42.4.drv
<nckx>Bug #37801
<guix-helper-bot>Possible insight into issue #30756 #include_next bug <>
<mirai>if the email titles have commands
<nckx>Nope, not even with ‘issue’ prefix.
<lechner>the switch to irregex broke having multiple bugs in one message
<vivien>sneek, later tell guix-helper-bot #60358
<guix-helper-bot>[PATCH] gnu: Add gnulib. <>
<sneek>guix-helper-bot, you have 1 message!
<sneek>guix-helper-bot, vivien says: #60358
<guix-helper-bot>[PATCH] gnu: Add gnulib. <>
<vivien>Sneek wins
<nckx>ACTION won't cheat by creating bogus bugs and would rather not see any :)
<lechner>responding to sneek seemed helpful
<nckx>florhizome[m]: Thanks. I don't have that!
<lechner>mirai / you can easily experiment in your own channel by cloning the bot repo and renaming the bot, then just run guix shell --manifest=manifest.scm lightbulb
<lechner>maybe ./lightbulb
<nckx>florhizome[m]: Nor does berlin. How did you obtain this file name? If with ‘guix build -d’, could you add ‘--no-grafts’ as well?
<mirai>or how well does the bot handle IDN homograph inputs? (
<nckx>lechner: Yes, replying to sneek this way makes sense.
<mirai>maybe afl also has some tricks under its sleeve to try as well
<nckx>Failing to see a (ab)use case for homographs though. Perhaps I lack imagination.
<mirai>or sneek paired with lightbulb?
<mirai>that seems potent
<nckx>If you craft bug titles it will almost certainly work.
<nckx>So please also set up a separate shitlist for testing purposes plz.
<lechner>was that directed at me?
<lechner>what am i supposed to do?
<mirai>big lol would be the bot being a turing tarpit
<nckx>No, it was directed at anyone who might rush to file new ‘bugs’ just to test the bot.
<nckx>Which is probably no one, but better safe than sorry.
<lechner>ok. issues belong here, please
<mirai>nckx: there's a cooling period on mailing lists for new accounts so I doubt we'll see anything of the sort
<nckx>mirai: Oh?
<nckx>Which list are you talking 'bout here?
<mirai>already approved accounts could do this sort of chicanery but I don't think guix "contributors" will find it profitable to risk seeing their accounts banned
<mirai>nckx: I'm talking bug-guix and guix-patches lists
<nckx>I don't wish to burst too many bubbles today but that ‘cooling period’ is… me.
<nckx>And some other trusted members but it's like 90% me reading ur mails judging you.
<lechner>ACTION thinks nckx is cool
<nckx>Someone has to.
<nckx>By the way, that does not mean I'm to blame for the hour…day long delays! Those are (no really) the mail server itself. Sorry.
<lechner>yeah, right
<HexMachina>hey all - running Guix on a foreign distro (Ubuntu 18.04), have installed Git, but the GIT_SSL_CAINFO variable that guix sets ($GUIX_PROFILE/etc/ssl/certs/ca-certificates.crt") does not include certs that I've manually installed into my host /etc/ssl/certs directory
<HexMachina>is there any way to get guix to pick these up?
<nckx>To those PM'ing me asking if they can help: that is very kind, but the system has no accountability logging and that's been a problem in the past, so I'm afraid that's not possible. But thanks! Review a patch instead. My work schedule makes code work hard ATM, so this is how I compensate.
<dthompson>random moment of praise: the online issue tracker is so damn nice looking and easy to use. rekado and everyone else who worked on it knocked it out of the park.
<nckx>HexMachina: The problem for Guix is that GIT_SSL_CAINFO takes one file name as value, not a search:path. However, testing here, if the profile containing git doesn't contain anything providing something that looks like CA info (like nss-certs), GIT_SSL_CAINFO is not modified and remains the distro-wide default.
<nckx>I'm not sure how to better handle this.
<HexMachina>nckx: well I also have the nss-certs package installed in my profile, per the info manual's recommendation
<HexMachina>related - is there a way to use guix shell to drop into a temp profiel that does NOT have a certain package installed?
<nckx>I don't use other distributions and don't know why that recommendation was made, but if you explicitly want to use your distro certificates, maybe it's OK just to drop it?
<HexMachina>e.g. I normally have both git and nss-certs installed in my profile, but what if I wanted to temporarily grop into a shell WIHOUT the guix git to use my distros' git?
<nckx>I don't think there's a convenient way to say ‘guix shell --pure --like ~/.guix-profile --without git’.
<HexMachina>nckx: recommends nss-certs it so pacakges wget, git, w3m, etc can properly find certs
<HexMachina>if I were running guix system, and wanted to add a custom CA (e.g. to handle sites on my company intranet), how would I do that?
<nckx>[Non-devel manual? Drink!]
<HexMachina>Would i need to essentially copy the nss-certa package definition and make my own custom one that includes my company's CA?
<nckx>[Not aimed at you, HexMachina, we were just discussing how it's overly prominent.]
<nckx>HexMachina: I'd expect SSL_CERT_* to be either unset or set to your distro-wide settings, and for those applications to work without explicitly installing nss-certs.
<HexMachina>(I'm trying to encourage other folks at work to use/try out guix, and was doing a demo but I couldn't git clone anything from our internally-hosted gitlab because of the missing cert)
<nckx>The manual, at least the part I'm currently reading, says ‘can’, not ‘must’.
<nckx>HexMachina: Unfortunate.
<nckx>In which situation was that? After installing nss-certs with Guix, or before?
<lechner>HexMachina / kudos
<trevdev[m]>unwox: super cool to see someone using my channel. I guess I had better open the mailing list.
<trevdev[m]>Also dtx: if you have a problem with binary blobs maybe avoid my channel. I have a problem with patience
<HexMachina>nckx: I'd previously already isntalled both the git and nss-certs package. I did verify that by manually unsetting the GIT_SSL_CAINFO variable, the system default was picked up and I could clone successfully
<trevdev[m]>Oh and time. Unscheduled time is a big premium
<nckx>My immediate recommendation is to uninstall nss-certs, then see what (if anything) breaks.
<nckx>I think that's a much easier starting point than having to ‘unset’ things back to their distro default, which can't really be done cleanly.
<florhizome[m]>nckx ok guix build -d —no-grafts gnome-shell works
<nckx>florhizome[m]: Buh. And fail without ‘--no-grafts’?
<florhizome[m]>But it's about Berlin, no?
<florhizome[m]>Is it important that you have it?
<nckx>This might have been a flaky build randomly succeeding.
<nckx>florhizome[m]: Who is ‘you’ here?
<nckx>The reason I asked for the exact name is because you said this was somewhat urgent for you, and I wanted to see if I could find a copy for you to import, at least [assuming you trust me, but then I have SSH access to ci.guix to begin with].
<HexMachina>so I think if I uninstall that, the guix-provided wget won't work anymore. I wanted to use the guix-provided git as it's a lot newer than my system default. Ideally there is a way to tell Guix about my custom CA. Long term I'll look at creating my own package definition that extends nss-certs with my custom one. Short term, I'll try uninstalling nss-certs as you suggest
<nckx>As I said, I'm not the foreign-distro expert, but without a clear counterargument I'd say that wget not working here is a bug, full stop.
<lechner>Maybe a Guix channel should instead be called a "platform" or a "conveyor" or a "connector". it would avoid any confusion with IRC channels
<nckx>If a variable is unset, it shouldn't break, and if one is set, it should be set by your host distro, and not clobbered by Guix.
<mirai>lechner: I think those names are even more unclear
<nckx>This might be adoringly naive of me.
<mirai>it doesn't seem that confusing tbh, it can be inferred by context
<lechner>mirai / my emphasis was on distinct
<nckx>I didn't see any confusion to begin with, above.
<mirai>and when talking about IRC channels, they are almost always prefixed by '#'
<lechner>never liked driving in atlanta
<Euler-Maskerony>Can someone help me there, please? What does this command do: 'herd start cow-store /mnt'? It creates copy-on-write /gnu/store, but this implies that there is some where an origin from where we are going to copy.
<lechner>online into store
<Euler-Maskerony>So it creates /gnu/store with references to files on server?
<HexMachina>nckx: unfortunately just removing nss-certs doesn't seem to work. Now when I try to use the guix git, I just get an error about "server certificate verificatoin failed: CAfile: none CRfile: none" ( I verified that there are no GIT_SSL_CAINFO, SSL_CERT_DIR, or SSL_CERT_FILE variables set)
<nckx>The ‘origin’ is the existing /gnu/store on the (read-only) installation medium, which is already overlayfs'd with a tmpfs in RAM. cow-store just adds an extra member to that: instead of aiming new writes at your RAM, which is smol, it points them to /mnt, which is big.
<mirai>omitting 'herd start cow-store' results in some rather interesting results
<nckx>Or nothing at all if you have enough RAM.
<mirai>from memory, 8GB is def. not enough
<florhizome[m]>nckx so I am reconfiguring with —no-grafts
<nckx>HexMachina: So on $your_distro, without Guix, GIT_SSL_CAINFO would not be set at all?
<Euler-Maskerony>nckx / So if I won't run this command it would just download more packages from server?
<nckx>florhizome[m]: Whoah, I didn't quite recommend that! That's equivalent to --without-security-fixes. If you're fine with that, fine.
<florhizome[m]>What else should I do?
<HexMachina>nckx: correct. If I manually set GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt, then the guix git is able to see the system defaults and the clone succeeds
<nckx>Euler-Maskerony: No. It would do exactly the same thing in both cases. In case 1 (no cow-store) it would write all new downloads and builds to RAM. In case 2 (cow-store /mnt) it will write the exact same things to /mnt.
<minikN>HexMachina: I have the same problem with Guix running on Debian 11.
<nckx>The installer's store is *already* CoW. ‘cow-store’ just changes the target of new writes.
<HexMachina>the system /usr/bin/git does not need to to have this variable set, I suppose, and automatically looks in the /etc path by default
<florhizome[m]>Same on manjaro
<florhizome[m]>I usually just use the system git
<Euler-Maskerony>nckx / Why would it write it on ram? Why we can't do like in arch 'pacstrap -i /mnt base' and it will download all necessary packages to /mnt?
<nckx>florhizome[m]: As I asked earlier: after ‘guix build --no-grafts gnome-shell’, does ‘guix build gnome-shell’ not succeed? And if not, what exactly fails? If you have answered before, share the log again, because I missed it.
<nckx>Euler-Maskerony: I've never heard of pacstrap.
<lechner>Euler-Maskerony / i think the effect is the same, via a ramdisk
<nckx>It seems like something from Arch? So not relevant to Guix.
<Euler-Maskerony>nckx it is like 'pacman' but you can specify root
<Euler-Maskerony>It is analogy
<Euler-Maskerony>I just don't get this guix installation thing
<nckx>Why bother creating a separate tool?
<nckx>What advantage would there be to justify the work & maintenance?
<lechner>Euler-Maskerony / installing Guix will test the limits of your understanding in all sorts of ways
<lechner>i am still recovering
<Euler-Maskerony>I don't know. I just can't figure out why guix downloads packages to RAM. If I install all my packages on RAM, then what I should do with them next? How to extract them and put to /mnt?
<nckx>‘guix system init /mnt’.
<lechner>Euler-Maskerony / you may be overthinking it. sometimes, you just have to bite into the sandwich (or order a salad)
<nckx>You don't extract anything, if Guix downloads anything it unpacks it as part of the download process.
<Euler-Maskerony>I mean extract from memory and put it on disk
<nckx>Using /gnu/store, the one & only, avoids having to write all kinds of custom and specialised code to deal with a ‘not-quite store but kind of but you can only write to it but not run anything from it because none of the references will resolve’. Which is a lot of work for… unstated & unclear benefit.
<lechner>nckx is also saying to just bite into the sandwich
<the_tubular31>I keep getting kicked :/
<nckx>You keep timing out.
<nckx>‘the_tubular56 has quit (Ping timeout: 260 seconds)’
<the_tubular31>I know, it still boots me :P
<lechner>maybe your client has to PONG?
<nckx>‘Booting’ is just the server closing your connection to free resources because you haven't confirmed your presence with a PONG, 260 seconds after it asked you to with a PING.
<Euler-Maskerony>lechner Ok, I will, but still, what is the point of downloading things to RAM? If this is implemented then this is useful somewhere and you can do something with this data on RAM.
<nckx>the_tubular31: This is something you'll have to resolve somehow, not something we can fix.
<lechner>Euler-Maskerony / i am not positive, but i think the installer is probably using a ramdisk
<the_tubular31>Bring the server next to my computer!
<lechner>the_tubular31 / which client are you using?
<nckx>lechner: Yeah, tmpfs.
<nckx>ACTION remembers actual ramdisks, with ext2 on them and everything, what a world.
<lechner>yeah, sorry about my antique language
<HexMachina>nckx: florhizome[m] : minikN: the best info I've seen so far for adding custom CAs to guix is, but as far as I can tell it's not documented in the manual or cookbook
<HexMachina>I will try that out to merge my custom CA with the nss-certs package
<Euler-Maskerony>nckx lechner / What can I do with data on this tmpfs? Can you, please, clarify?
<lechner>Euler-Maskerony / it not about what you can do with the data, but about what the installer can do with the data
<Euler-Maskerony>What it can do then?
<mirai>I have no idea how to read the content from a (plain file) back
<mirai>what gexp magic do I need to do to read it into a variable
<lechner>Guix is so different, it makes people nervous
<Euler-Maskerony>lechner / This is what I am asking actually. How can I install this data and what if the amount of data will be too large so there won't be enough memory? Just SIGSEGV? And then in summary, 'herd start cow-store /mnt' just binds target fs to /mnt? Or not?
<nckx>This isn't really one of those Guix differences though: you could micro-optimise and overlayfs /mnt/gnu/store directly over /gnu/store, and have a somewhat fragile & finicky sortastore that saves you a gigabyte or two in /mnt/tmp, and a completely separate code path to maintain from ‘guix system init’. The answer to why not do that is simply ‘not worth it’.
<nckx>ACTION AFK, good luck, I guess, florhizome[m], wherever you went.
<lechner>Euler-Maskerony / alfafa sometimes gets stuck between the teeth but is very healthy for you
<Euler-Maskerony>Not a native speaker. Some of your, guys, phrases are very confusing :)
<bjc>i am a native speaker, and also don't understand =)
<lechner>i am not a native speaker, but i do understand
<lechner>Euler-Maskerony / why are you not installing Guix?
<lechner>text us with your real problems, please
<bjc>welp, we nailed it. we got all the combinations
<Euler-Maskerony>Ok, the last question and I will try to install. Why there is no fstab in installation guide?
<vagrantc>fstab is generated
<lechner>Euler-Maskerony / it is created by the configuration
<lechner>Euler-Maskerony / your questions are always welcome here, but we want to see you make progress
<lechner>Euler-Maskerony / Guix configures your system nearly exclusively in GNU scheme and generates whatever files your programs need to run from the definition in Scheme, which is called you system configuration
<lechner>it's magical
<bjc>if you look at the things you can specify in ‘operating-system’ you'll see a (required) field, ‘file-systems’, which is the fstab-equivalent
<bjc>for the most part, you don't deal with the standard linux/unix config files, except for maybe bug-hunting
<Euler-Maskerony>Ok and I really appreciate your help. But in example desktop.scm there are no entries for home and efi partitions. Do I need to add them by myself?
<bjc>you do
<lechner>if you have them, yes
<lechner>Euler-Maskerony / like this, but please start small and work from there
<lechner>Euler-Maskerony / please do not forget this
<lechner>also, you must boot your USB stick in UEFI mode, but maybe that's automatic nowadays
<gnucode>florhizome[m]: I can't get that link to work.
<nckx>Thanks. I had definitely missed that.
<nckx>Just from this I'd say your ‘msgfmt’ executable in the store is corrupt.
<florhizome[m]>who knows a different Paste Service then debians
<lechner>from emacs
<nckx>florhizome[m]: Can you run ‘guix shell --pure -D gnome-shell -- msgfmt --help’?
<bjc>i use the emacs-webpaste package
<nckx>There's also, which gives you those nice ‘raw’ links that people can curl and not end up with a mouth full of markup.
<nckx>florhizome[m]: Any problems with Debian's?
<lechner>spam kick, and wide unicode chars from Emacs
<nckx>That @ me?
<nckx>(On packages: there's also wgetpaste.)
<lechner>no, often categorizes my submissions as spam, and rejects them
<nckx>Ah. Yes. Mine less, but it's happened once or twice.
<nckx>You must just sound spammy 🤷 Stop building r-cialis and ruby-double-your-bitcoin.
<lechner>that's not it. sometimes is length, but there must be something else
<florhizome[m]>what Lechner said
<lechner>come to think of it, it never happened when i was on debian. it probably figured out i switched to Guix
<nckx>That is some conspiracy-level bacon you've just casually dropped.
<lechner>well, i am a special case, having left the fold and all
<nckx>The spiral never forgets and seldom forgives.
<lechner>i am just not sure what to do about that tattoo
<nckx>lechner: It's almost a G. You know what to do. You're just a coward because your forehead is almost full.
<lechner>florhizome[m] / exec error?
<nckx>florhizome[m]: Right, sigh, I should have asked ‘guix shell --no-grafts --pure -D gnome-shell -- msgfmt --help’.
<nckx>Grafts force builds that otherwise wouldn't happen, my bad.
<vagrantc>- /24
<vagrantc>take that.
<nckx>If you don't get a help message, your msgfmt binary is corrupted and you should start with ‘sudo guix gc --verify=contents,repair’. If you do… eh, I'd rather you don't, too weird otherwise.
<f1refly>I'm trying to launch muse4 (muse-sequencer), and it crashes with 'Could not find the Qt platform plugin "wayland" in ""'. I have QT_QPA_PLATFORM=wayland set. The arch wiki states that qt5-wayland should be installed, but I'm not sure how to do that in guix. 'guix search qt wayland' yields qtwayland v6.3.1 and v5.15.5. I just installed 'qtwayland' in my system configuration, but apparently that
<f1refly>doesn't help.
<f1refly>Any ideas how to get muse4 to work?
<nckx>‘Just works’ on Sway here:
<nckx>That --pure means that I have no variables like QT_QPA_PLATFORM set.
<f1refly>..which in turn means that muse4 will run in an xwayland window instead of the wayland renderer of qt5
<f1refly>can confirm that it works in xwayland though
<nckx>Advice like ‘install foo’ for stateful distributions is often unhelpful on Guix.
<f1refly>I know
<mirai>what's this quasiquote monster and why does it only work with quotes
<mirai>`(list ,foo) ??
<f1refly>It would translate to "bring foo in scope for this applictaion", but I'm not sure how to do that. I think I could test it with guix environment and would then have to patch the package definition for a long term fix, right?
<mirai>is that not equivalent to (list foo) ?
<mirai>oops, f1refly's already using 'foo' to talk about something
<f1refly>vlc had the same problem at a point i think, but that seems to have been fixed
<nckx>mirai: No, the list call itself is what's quoted. It literally ‘(list foo)’ evaluated, not ‘('foo)’.
<f1refly>I might take a look at vlcs inputs to see if there's something qtwayland-y there
<mirai>nckx: the idea is that foo returns a string
<mirai>and I want to put it into a list (so a 1-element list with a string in it)
<mirai>(list (proc)) should be a way to achieve it?
<mirai>but from the paste, I end up doing `(list ,(proc)) ?
<mirai>without quotes it looks like it attempts to evaluate the string as if it were a procedure name
<nckx>What is hosts-file?
<mirai>it's a plain-file object
<mirai>or file-like object
<morganw>If I have replied to a debbugs e-mail address using the mbox file linked to the issue, but the subject doesn't include the issue number, will that duplicate the issue? The issue page says to end an e-mail to the numbered mailbox and doesn't mention the subject, but I've just found that elsewhere in debbugs it says to make sure the issue number is in the subject.
<lechner>morganw / which bug, please?
<davidl>Hi, Im in the bournish shell and need to know how to find my boot device in the dev folder. Using ,bournish RET ls dev doesn't help cuz there are too many tty devices for me to see all the devices in that folder on the screen.
<morganw>60361 but I don't think my mail is processed yet
<nckx>The subject isn't relevant, at least as long as the number is correct in
<lechner>what is the 'mbox' way?
<bjc>mirai: the gexp (the stuff inside the #~()) is, itself, a quoting construct. unquoting it isn't going to accomplish much here
<futurile>is there any reason why a particular package is in a particular file? I'm looking at packaging a python package called virtualenvwrapper, I can find some equivalent packages in `python-check.scm` and some in `python-xyz.scm`. Does it make any difference which one I add the package to?
<bjc>the quasiquote isn't necessary at all in what you posted, that i can tell
<lechner>morganw / it's there
<guix-helper-bot>renpy-launcher can't be used to create new projects <>
<morganw>lechner: I didn't have the mail to reply to, so I used the mbox download link on the debbugs web interface and replied to that.
<f1refly>the vlc package includes wayland and wayland-protocols, the other qt-related inputs seem to be the same.
<morganw>You'll have to take my word that is wasn't processed 2 minutes ago...
<bjc>in fact, introducing the quasiquote can lead to issues because you're going to end up with a list who's first element is the symbol ‘list’, which is almost certainly not what you want
<lechner>morganw / like nckx wrote, the subject does not matter. for an initial filing, the subject is used as the bug title, but you can retitle via the control server
<nckx>mirai: And why are you quoting this at all?
<nckx>I.e., why does the obvious (list #~(…)) not work?
<morganw>nckx, lechner: thanks for clarifying. Sorry for the noise.
<lechner>morganw / no noise. we are here to help. well, nckx is
<nckx>Context: I'm currently trying but failing to produce an error without the quasiquote.
<nckx>So knowing why it's there at all would help.
<nckx>f1refly: Pull and try again.
<nckx>bjc: Hadn't seen your messages in the meantime. Free noise for everyone!
<bjc>channel's hopping tonight!
<nckx>futurile: The categorisation is for humans, so the reason is ‘because it makes the most sense’. Technical realities like module dependency graphs can spoil that for everyone, but only when necessary.
<lechner>hey, there are other timezones
<f1refly>nckx: did you just patch the package upstream
<nckx>Well like 5 minutes ago.
<nckx>And Guix upstream, not real upstream.
<f1refly>i meant that with upstream
<f1refly>nice to see the package fixed for everyone, thanks a lot :)
<nckx>Everything's upstream when you're doing it right.
<bjc>what am i doing wrong then =(
<nckx>Thanks for reporting it.
<nckx>bjc: Work, it would seem.
<bjc>dang it, i knew work was the source of all my problems
<futurile>nckx: OK, understood - thank-you
<mirai>bjc: yeah you'd be surprised but it does make a diference
<mirai>nckx: would you believe that without those quotes it tries to evaluate ("string here") ?
<nckx>I'll believe anything.
<mirai>> I.e., why does the obvious (list #~(…)) not work?
<mirai>ask the hair strands on my desk
<nckx>The user having to supply the quote just seems like it's being quoted way too, for lack of a better word, late.
<nckx>Why is ‘your’ code trying to evaluate a string at all.
<nckx>(‘I DON'T KNOW OH GOD WHY’ is a valid answer.)
<bjc>what, exactly, evaluates to "string here" in the code you posted?
<nckx>But for that we'd have to see your new service.
<bjc>everything in there looks like a plain-jane variable, at least in the true branch of the if
<nckx>Mixing gexps (or even just using them) and quotes can lead to some very unintuitive ‘you wrote ( so I'll output ( here’ serialisations across the host → build barrier. It's not you. Well, not just you.
<nckx>ACTION AFK tho', much of luck.
<mirai>apologies for the complete ass way of displaying the changes
<davidl>I converted my .qcow2 virtual disk to vmdk, but when booting from it using VMWare, I am getting an No such file or directory while trying to open /dev/sda2 during the e2fsck check. Any ideas how to fix it?
<mirai>bjc: if this is too horrible, I can try to setup a git server
<bjc>mirai: oh, this is more involved than i thought. i gotta step out for a bit to pick up my kid, but i'll try that patch when i get back
<bjc>nah, it's fine. i keep a fresh checkout at all times ;)
<mirai>(for fun, you can infer my feelings from the last commit messages)
<Euler-Maskerony>nckx / Can someone help me, please. I am now creating configuration file of base operating system. Here is 'packages' field. Do I need to specify all base packages that I need like grep, cat, git or they all will be installed somehow?
<panosalevro>how can i make icecat run natively in Wayland? does `export MOZ_ENABLE_WAYLAND=1` work?
<lechner>Euler-Maskerony / that depends. i have very few, but you may initially have more for comfort. ultimately, you will do nearly all your work as your own user, via Guix Home
<graywolf>How is GUILE_LOAD_PATH set? I do not see the export in $GUIX_PROFILE/etc/profile and it seems to lead to /run/current-system/profile/share/guile/site/3.0 instead of (what I assume is correct) /var/guix/profiles/per-user/root/current-guix-1-link/share/guile/site/3.0/. I'm in install USB environment if that is relevant, logged as root.
<Euler-Maskerony>lechner / So can I after installation install user-space packages (not system wide)? Am I right that here I need to define packages that all users on my machine will have?
<lechner>Euler-Maskerony / all you need initially is an editor and the 'guix' executable. you can then reconfigure, or your can install packages as the root user. you will end up with three different profiles---one system, one for the root user, and one as your user
<lechner>it can be hard to figure out which copy of guix is running. for example sudo guix runs the user's copy as root
<Euler-Maskerony>Does user profile inherits configuration of system profile?
<lechner>yes, in the sense that it shows up in your PATH later
<lechner>user comes earlier
<Euler-Maskerony>Ok thx
<lechner>please let us know when you are running Guix
<Euler-Maskerony>lechner In your config I can see many packages and services. From where you took all these names and is it optional to install linux?
<lechner>Euler-Maskerony / i use a non-free kernel but probably do not have to. what is your equipment, please?
<lechner>my link was only illustrative. please start with one of the simple configs from the cookbook
<shcv[m]>what's the right way to do wireguard with ip forwarding? Normally I see PostUp/PostDown rules for setting iptables rules, but the iptables command doesn't seem to work (manually at least), so I'm not sure
<shcv[m]>a separate iptables service configuration?
<shcv[m]>or do I need the iptables service for the iptables command to work? (I just tried installing the "iptables" package)
<Euler-Maskerony>Ok, but I just don't know if my system would start at all without specific kernel. Does kernel installs from installation media or do I need to specify it explicitly in config?
<gnucode>shcv[m]: I haven't figured out my vpn solution yet either...I'm still doing "sudo openvpn vpn.conf" to use my vpn...
<Euler-Maskerony>lechner / what is equipment?
<lechner>Euler-Maskerony / you will get a kernel. trust me
<lechner>Euler-Maskerony / your hardware
<lechner>i.e laptop
<Euler-Maskerony>The only firmware of my laptop which is not supported by Linux libre is WiFi card that requires iwlwifi. I downloaded systemcrafters image to be able to connect to internet. Their tutorial tells nothing about system config file, so I imply that their kernel will copy to /mnt and I will be able to adjust channels after reboot.
<Euler-Maskerony>*will be copied
<lechner>Euler-Maskerony / do you have an ethernet cable and access to your router?
<Euler-Maskerony>I have no ethernet port
<Euler-Maskerony>And router
<Euler-Maskerony>And cable
<lechner>what does your wifi connect to?
<Euler-Maskerony>My phone
<lechner>that will be either slow, expensive, or both
<lechner>do you have another computer?
<Euler-Maskerony>No, it is not expensive. And it is not so slow as you might think (0.5 MB/s in average)
<Euler-Maskerony>No I have no another computer
<Euler-Maskerony>And I have already deleted my previous system:)
<Euler-Maskerony>I think no worries. System Crafters's image is ok and I will be able to boot and I will have internet connection. I just want to know, why you explicitly added Linux package to config?
<shcv[m]>so, why doesn't the iptables package make the iptables command available? or am I missing something?
<lechner>Euler-Maskerony / the libre kernel is called "linux-libre"
<lechner>congratulations on deleting the other system
<graywolf>Can I somehow tell (in my operating-system definition) if the system is being installed for the first time (system init ...) or just updated (system reconfigure)?
<Euler-Maskerony>How then you specified 'linux' from GNU module? It is not clear by far for me.
<Euler-Maskerony>lechner / It is nothing. All my files are safe
<Euler-Maskerony>lechner And what is nongnu module? Can you please explain from where these names are coming?
<Euler-Maskerony>I can't find it in internet
<lechner>Euler-Maskerony / you would have to check with the #nonguix channel for those
<mirai>the naming for those is unfortunate
<Euler-Maskerony>GNU module, I suppose, from guix. Where can I find all available packages from this module?
<mirai>because there's also a nongnu channel
<mirai>though iirc is not maintained
<Euler-Maskerony>So in summary, if I too type "(gnu package Linux)" would herd init install Linux for me? Another question: what herd init would install if I will not specify this?
<jonsger>Is it possible to gain access to one of those ARM machines we have as community? For development purposes, to check that stuff works on other archs as well...
<florhizome[m]>Euler-Maskerony there is a video on the systemcrafter YouTube on how to install guix using their image
<Euler-Maskerony>florhizome[m] / They use gui installer as I remember, don't they? I want to install manually
<rekado>shcv[m]: it’s in the iptables package output’s “sbin” directory. Perhaps that’s not on your PATH.
<rekado>shcv[m]: Guix tells you that you may have to source the generated $GUIX_PROFILE/etc/profile file to update env vars.
<shcv[m]>I guess that was it
<florhizome[m]><f1refly> "I'm trying to launch muse4 (muse..." <- This is a problem I have with many qt packages… qt plugins are often not detected. one solution could be to set a search path qtwayland QT_QPA_PlATFORM_PLUGIN_PATH (or sth like that)
<florhizome[m]>i also noticed that recently there was a simple commit which added qtwayland to keepassxc to enable wayland for it, maybe that does it for other packages, too…
<florhizome[m]><nckx> "florhizome: Right, sigh, I..." <- This fails at the generating-info-dirs step of guix shell
<bjc>mirai: is that paste from earlier the complete patch? i have different context around the diff than is in it. it looks like you deleted ‘(@ (gnu services) etc-hosts-service)’, but i still have it
<florhizome[m]><Euler-Maskerony> "florhizome / They use gui..." <- The most important thing is at the end when you have a system configuration file that otherwise is generated by the installer
<mirai>bjc: yeah
<mirai>I think it issss?
<mirai>I did a git format-patch -o out | cat out/*.patch
<mirai>nothing was deleted afaik
<mirai>I have no idea if concatenating the patches is allowed
<bjc>ah, i see. i thought it was a single patch, not a bunch concatenated
<jgart[m]>Should `guix refresh -u` be able to take an arbitrary commit?
<bjc>mirai: do you have a sample system config? my minimal one is erroring with: guix system: error: duplicate 'hosts' entry for /etc
<mirai>ah, yes
<bjc>ok, thanks
<panosalevro>is there any way to install hugo without building from source? it's not in guix repositories
<florhizome[m]>panosalevro look at nonguix signal package