<derivates>is there any way of installing a package with some type of regex?
<derivates>im skimming thru manual for something like "gnupg@2.*", just want to make sure i use v2 instead of v1, don't want to be THAT specific with a full version
<irfus>Hi #guix, I want to create a variant for a package that uses the linux-module-build-system. It has the #linux argument set to '5.4', and I want to change only that to '5.11'. How would I do this?
<apteryx>look at examples of 'substitute-keyword-arguments'
<wdkrnls>what is a user as far as guix package is concerned?
<wdkrnls>I was trying to pass max-jobs and --cores arguments and got an obtuse error which didn't make any sense to me.
<wdkrnls>I guess I was thinking that I could restrict Guix to building with k cores and k jobs, but it complained that there weren't enough users.
<c4droid>Hi, emmm, someone know how to use the bootstrap seeds to build something, or write a package definitions? I watch the document, but I still have a little confused
<wdkrnls>I don't know much, but know the very basics of package definitions... enough to add new R packages to my own software channel. Unfortunately, I don't know what a bootstrap seed is. The only seeds I know are for my random number generator.
<apteryx>lle-bout: what's the correct --system=$name to pass to build for ppc64le via qemu emulation?
<wdkrnls>I guess you are refering to the GNU mes stuff. That is really cool. I love his yogurt analogy.
<c4droid>Because I'm trying build LFS using guix, make LFS reproductible.. just for fun :)
<apteryx>I've added "ppc64le" to the list of qemu-binfmt platforms for my offload machine, then added "powerpc64le-linux" to the systems list of the corresponding machine in my /etc/guix/machines.scm
<apteryx>yet I'm getting: while setting up the build environment: a `powerpc64le-linux' is required to build `/gnu/store/7ahfb5dfv65w3b21jmxdsrds6w9psk65-guile-bootstrap-2.0.drv', but I am a `x86_64-linux'
<iv-so>guys, how can I get a patchset from your beautiful bug tracker?
<derivates>hi people i'm trying to declare a general base os (define-public base-os ...) and then (inherit base-os) but i'm getting into some issues, can anyone give me a hand?
***jx97 is now known as jx96
<apteryx>it's a bit silly that we can't use the local machine as a machine to use for building via QEMU transparent emulation
<apteryx>one has to go through offoading for this use case
<apteryx>wait, nevermind, that's covered with 'guix build --system=X'. Perhaps what I said is just true in the context of using 'make release'.
<apteryx>I'm probably just confused, as what the release target does is just: ./pre-inst-env guix build guix -s x86_64-linux -s i686-linux -s armhf-linux -s aarch64-linux -s powerpc64le-linux -v1 --no-grafts --fallback
<derivates>Can anyone help me with this error: ice-9/eval.scm:293:34: In procedure append: Wrong type argument in position 1 (expecting empty list): #<procedure specification->package (spec)>
<derivates>apteryx: so (define-module NAME ...) must match filename NAME.scm right?
<apteryx>sneek: later tell roptat would you know what the stubs for translations created by ./bootstrap are useful for? ryanprior was wondering if it was possible to not have those po diffs appear everytime it's run
<Shmiggles>Q: When using `guix environment --container`, how does one write shebang lines? E.g. Guix containers do not have a /usr/bin/env. Env is located in $GUIX_ENVIRONMENT, but shebang lines need an absolute path.
<meo>would it be a good idea to add hyperv_keyboard and virtio-scsi modules to default initrd?
<meo>early repl wont work on hyperv and can't install SD on gen 2 VMs
<meo>"won't work" meaning you can't type in the repl without the hyperv driver, as the normal HID ones don't work
<meo>on gen 2 VMs, because of the missing scsi driver, the installation DVD isn't readable, initrd cant mount the installation fs, and crashes into repl... which you can't interact with, because no hyperv_keyboard
***brycecarson is now known as cyberTeX
***require is now known as derivates
<derivates>hi, can anyone tell what this issue might be?
<derivates>In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): #<procedure keyboard-layout (name #:optional variant #:key model options)>
<derivates>this is the only thing i have (keyboard-layout (keyboard-layout "us" "altgr-intl" #:options '("caps:escape")))
<efraim>openjpeg-data is failing to install on powerpc-linux on core-updates
<gagbo[m]>Hi, is there a way/flag to set to limit the number of jobs that run on compilation when using guix package -u ?
<gagbo[m]>I reach load avg of 20 on my machine (4cores 8t HT), I’d like to have a little more control on that
<Christoph[m]2><morgansmith "I noticed an odd thing. We have "> Has anyone looked into this?
<karabunga>brendyyn I want it too but how did you install it if can I ask?
<karabunga>I think I need to manually find xpi file because ungoogled-chromium is not recognized by extensions store? Tried to find some info about it but search engines return mostly conversations about proposal to install extenstions by guix.
<brendyyn>maybe. i installed it ages ago so maybe it didnt have that problem then
<brendyyn>how would you delete all phases except for two particular ones
***roptat_ is now known as roptat
<brendyyn>Yet another weirdness of substitution. If I have (("^foo.*") "bar"), the substitution matches the end of line character, so I actually need bar\n, else it pulls the next line up on to it. However if I substitute (("^foo.*") ""), then it just deletes the line, apparently putting a newline character in automatically?
<nckx>brendyyn: No, if it were to do that it would insert an empty line.
<nckx>There's no difference in behaviour between the two.
<mange>Hi Guix! I'm just trying to do something with Ruby and Rails for the first time ever, and I'm not sure how I'm meant to do things. Using "rails new" always fails in "bundle install" because it can't install the sqlite3 gem. Installing ruby-sqlite3 and/or sqlite into the profile doesn't help. Can anyone help me?
<roptat>mange, you'll need both ruby and ruby-sqlite3 in the same profile, probably
<sneek>roptat, apteryx says: would you know what the stubs for translations created by ./bootstrap are useful for? ryanprior was wondering if it was possible to not have those po diffs appear everytime it's run
<mange>roptat: I'm using a separate profile, and I've installed ruby, ruby-rails, ruby-sqlite3, and sqlite. It looks like bundler keeps trying to download and install the ruby-sqlite3 gem from scratch, but fails because it can't find the sqlite header files.
<roptat>mange, weird, I don't use rails, but I have another ruby project
<mange>I feel like I could solve it by either (a) getting bundler to find the already-installed ruby-sqlite3 gem that has the require native library, or (b) getting it to find the sqlite header files so it can build the native library itself.
<mange>I just have no idea how to do either of those things. :P
<roptat>do you maybe have a Gemfile.lock that specifies a different version from what guix has?
<mange>It looks like GEM_PATH is set to something that looks appropriate, but I don't know what other knobs I have to change what bundler does.
<mange>It looks like both are sqlite3 version 1.4.2, as far as I can tell.
<roptat>well, I'd remove the Gemfile.lock file just to be sure
<mange>I mean, "rails new" should be generating the lockfile with whatever versions it uses, I assumed, but I'll have a look.
<roptat>(in the worst case it will regenerate the same Gemfile.lock :))
<roptat>apteryx, bootstrap doesn't modify po files, it creates dummy texi files in doc, so that Make can work (otherwise it fails with errors saying that doc/guix.xx.texi doesn't exist)
<roptat>but indeed, the first make updates the po files, but I'm not sure why
<roptat>I don't think it's useful, so we can investigate and make sure it doesn't run
<roptat>mange, sorry I can't help you more than that, I just have one project where I install ruby, jekyll and ruby-i18n in a profile, remove the Gemfile.lock and run jekyll
<roptat>tbh I don't know ruby, but a friend does and it worked for us :)
<mange>Thanks anyway! I feel like there's something I'm missing about how to connect bundler to the pre-built gems that Guix gives me, but I just don't know what it is. I'm about to dig into the bundler docs to see if I can figure it out.
<wonko7>ok this is a stupid problem, maybe you've got a tip for me: guix system reconfigure keeps stalling on "receiving objects", my internet connection isn't that good
<wonko7>I keep hoping it'll work but 5 minutes in (between 10 & 25%) it stalls and stays stuck
<wonko7>anything I can do? to restart from where it left off? or a mirror?
<roptat>wonko7, if you run again the same command, it will try again from where it left off (well, the granularity is the substitute, so if it's always the same substitute that's stuck, that's not good)
<mange>efraim: ruby-sqlite3 is already packaged in Guix, as far as I can tell, just bundler can't find it.
<apteryx>I've relaunched it after disabling i686 as a supported target for now
<mange>My new theory is that bundler is built with an older version of Ruby (2.6.5), rather than the most recent packaged version (3.0.0).
<efraim>I did a lot of ruby packaging last month so there's ~300 gems in that file
<efraim>my non-ruby understanding is that you can't really mix ruby versions
<mange>Yeah, that's my understanding, too. I'm trying recompiling bundler with an up-to-date ruby to see what happens. :)
<mange>It looks like ruby-build-system uses firstname.lastname@example.org by default, but email@example.com is what's installed when you reference ruby on the command line. That seems like it would cause any packaged ruby gems to be built with a different version to what one might expect.
<mange>Anyway, I'll let you know if this recompilation works.
<mange>efraim, roptat: Final update for tonight, not working. I've managed to get "rails new" to succeed by removing bundler from my profile (apparently there's a version in the ruby package) and using firstname.lastname@example.org, but it hasn't picked up the Guix-installed libraries so it still fails when I try to run "rails serve".
<mange>It's defeated me for now, so I'll have to come back to it another day.
<roptat>apteryx, nckx I think I know why it's failing
<sneek>nij`, raghavgururajan says: I think you implemented it wrong. You just have to add #:use-module (guix build glib-or-gtk-build-system) at the top. For reference, you can look at telegram-desktop package. :)
<roptat>and include-depth is after the name and value pointers, so it shouldn't play a role here
<apteryx>hmm, berlin doesn't have any ppc64le offload node
<roptat>srcdir=/home/roptat/guile-git ./pre-inst-env guile tests/config.scm doesn't report any issue on armhf
<apteryx>ryanprior: as roptat wrote, it seems the first time we run 'make' the doc-update-po targets seems to run; this is undesirable. If you have an itch you are welcome to look into it and try to find the fix :-)
<apteryx>some weird thing with 'make release' is that if you run it twice the second time it complains about not finding the source tarball
<jgart[m]>Thanks rekado, we'll make sure not to include minified js
<rekado>jgart[m]: we have a bunch of packages in cran.scm / bioconductor.scm that include a copy of concatenated jquery sources
<rekado>jgart[m]: you could probably use those as a template
<rekado>(the latest and greatest way to minify is to use esbuild)
<jgart[m]>rekado: Thanks! I'll take a look at those. Yes, esbuild sounds really awesome! Ryan Prior has been telling me all about it. I haven't used it yet.
<apteryx>nckx: Simon replied; I just added guix-sysadmin in CC. If you know anything about the wireguard setup feel free to enlight them with a reply :-)
<boomerchad>Is gnat packaged for guix? I'm trying to build coreboot for my machine.
<PurpleSym>Maybe dependencies missing? tox.ini declares its own dependencies.
<nckx>God, Python packaging is deathbound. ‘Just run poetry pip install tox setup foo devdependencies docker make check’.
*nckx looks forward to running guix environment poetry pip install tox setup foo devdependencies docker make check.
<PurpleSym>Building is usually fine, but there’s no standard entry point for testing.
<jgart[m]>nckx: It looks like it might be missing a few deps also. See inside the poetry.lock file
<nckx>What intrigues me are not all the above things that are sadly the norm in Python land, but just how the package definition got into a state where it's completely broken, with 0 changes to the package itself.
<jgart[m]><nckx "jgart: I don't know, but why do "> Maybe the tox command that ran those tests for funcparserlib when it was packaged is not the same one that is running now. Maybe some mutation happened. Those are my guesses. I'm speculating now.
<nckx>jgart[m]: Builds can't download anything, so that's out.
<nckx>And the source can't have changed without changing the hash.
<jgart[m]>that's the million dollar question I guess
<nckx>ruffni: Hm. Can you make any temporary space by moving other things? If not, you can try to copy /store to the root of another partition and try bind-mounting it at /gnu (mount -o bind /dev/sdxy /gnu/store). Last I tried the daemon was OK with that.
<ruffni>25G, i guess i'll bind-mount the directory. thanks for the hint!
<nckx>OK, so not tiny but a bit cozy for Guix + another distro. I've been operating under the assumption that you know about ‘guix gc [-d]’ and tried already, but assumptions are my weakness. Maybe you haven't.
<nckx>I find it hard to believe you've filled a 25G partition with Debian and Guix alone with nothing to GC, but it's possible.
<ruffni>i did know about gc; it's a fresh install of guix and the first pull couldn't finish. guix daemon seems happy now
<nckx>Glad to hear that, and sorry for not mentioning it sooner! I tend to assume too much about the other's knowledge. I do try to work on it...
<ruffni>nckx: there's a couple of GB for Tex... but not that much to gc
<ruffni>nothing to be sorry for! thanks for the help!
<nckx>(The monolithic) Tex(live) is notoriously pudgy.
<Bumblehorse>Would anyone like to help me figure out why my tor service cannot be started?
<nckx>ruffni: Did you run ‘guix gc’ with the ‘-d’ option to delete old generations? Otherwise, Guix keeps a potential lot of old versions just in case you'd want to roll back. And rolling back a user profile isn't something *most* people actually do; they'd just run ‘guix install foo’ again.
<ruffni>now to something unrelated to my question before: i thought i was smart when i built a new PC (to run guix) and now i have this amdgpu which apparently contained blobs and now i have to run kubuntu and am somewhat sad. i know about the policy of supporting proprietary stuff (which is one of the reasons why i like this project so much), but i still have this brick of a PC running .. well, not Guix System.
<ruffni>do i have to a) define my own linux package, b) buy a better (more free!) graphics card or c) something completely different?
<jgart[m]>nckx: Michael J. Fox rolls back his profiles.
<nckx>gr0n: There was an attempt, I don't know why it wasn't merged. I the meta-reason is that those who run a Guix System mail server (and there are quite a few, like mine) are quite content with OpenSMTPd.
<sneek>derivates, nckx says: I hope you got your keyboard-layout problem sorted, but if not (and especially where previously valid code suddenly throws errors): share your entire configuration, it's plausible the real error is elsewhere.
<nckx>I think what you want to do is (1) rebase your local wip-gnome branch onto master (2) delete the remote wip-gnome branch (3) push your local wip-gnome to the server. Is that correct?
<raghavgururajan>nckx: Cool! I usually create new branches via worktrees. For example, my local worktree named rg-core-updates tracks the remote core--updates. So when I create new branch/worktree, I will be naming rg-wip-gnome locally, but would like pust to remote as wip-gnome.
<derivates>nckx: thanks man :) I'm just trying to setup a base OS config so my laptop cna inherit, it's giving me a headache!
<raghavgururajan>This is the command I usually use. `git worktree add --track -b <branch> <path> <remote>/<branch>`.
<nckx>That would be too confusing for me but whatever works for you. If you want to push a branch that has a different name locally than remotely you can use ‘git push origin rg-wip-gnome:wip-gnome’, if you didn't already know.
<nckx>derivates: And how do you invoke reconfigure?
<raghavgururajan>I use rg- prefix because, I also want to create worktree of master, but without that prefix there was name conflict with master checked out at ~/guix. So I started using that prefix for everything.
<Noisytoot>Why would you use a different name for a local branch?
<nckx>Bumblehorse: Does ‘pgrep tor’ return anything? I've had the Shepherd lose track of it several times in the past. If not, try ‘sudo herd enable tor && sudo herd restart tor’, and report what it says.
<Telc[m]>I'm trying to build my first package "broot" a rust cl utility, I've made good progress with guix import but I'm having trouble with the build of a c library that cargo is trying to work with https://paste.debian.net/1194333/
<nckx>raghavgururajan: No, between <<<< and ==== OR ==== and >>>>. You have to choose.
<nckx>I was hoping someone else would chime in with the long answer 😛 I'm way too tired to answer coherently. But yes, basically. *Inside* (operating-system ...), there's some magic to make the keyboard-layout variable refer to the value of the o-s's own keyboard-layout field. But that magic only works in the same definition.
<nckx>That keyboard-layout is used both a field name and its value makes error messages super confusing.
<civodul>yeah it's a bit too much of keyboard-layout
<civodul>but hey, it's such a nice name, and naming is hard
<nckx>Don't feel pressured to understand this now, btw, derivates. It's not on the test.
<Noisytoot>raghavgururajan, "Users should be aware that Qt WebEngine is based on Chromium and therefore contains many of the same flaws. Proprietary codecs and other anti-features must be removed at compile time to ensure user's freedom is respected. Due to Qt being a primary component of KDE and many applications, ensuring it is compiled correctly and removing nonfree software is of even greater importance to the Free Software Movement. "
<rekado>Noisytoot: I encourage you to look at how Chromium in Guix is built.
<nckx>derivates: Please don't feel obligated, but I appreciate the gesture and have PM'd you my identity.
<civodul>other _foreach bindings may have the same problem
<raghavgururajan>Noisytoot: That's what I mentioned yesterday. Quoting myself "QtWebEngine does bundle chromium stuff. But the non-free parts have been patched.". Please do let us know if there is anything missed to be patched.
<nckx>gr0n: I always wear a dark hoodie whilst hacking. I was told this would do the trick.
<gr0n>do you also run a matrix on your other screen?
<roptat>civodul, I see, that's why the finalizer breaks things in this case
*gr0n wishes he had more time to package a few things into guix... maybe in a month
<roptat>civodul, so my fix is incorrect, as I should still use the finalizer in get_entry
<wonko7>hmmm, xmonad is ignoring my config and I don't get why. xmonad --recompile first complains that /home/me/.xmonad/build does not exist, (which it does) and then fails with: xmonad: ghc: runProcess: runInteractiveProcess: exec: does not exist (No such file or directory)
<andreas-e>Concerning the Java issue, I almost managed to reach openjdk@14 before an out of space error. (Outer space error?)
<andreas-e>If I understand the patch correctly, I can now garbage collect icedtea and openjdk@<=12 and try again.
<wonko7>I can cat ~/.xmonad/xmonad.hs, ls ~/.xmonad/build, and this config works on other distros (same git head), I'm not seeing what I missed
<civodul>andreas-e: oh good; i hope i'll be able to build it entirely!
<wonko7>xmonad is in a user profile rather than the system's, could this be a problem?
<andreas-e>civodul: I have too little space, since I am guix pulling more frequently recently. And having to keep a collection of jdks around may be almost as bad as my collection of texlives, grafted and ungrafted ones.
<andreas-e>Ah, I forgot to gc the ungrafted packages and am not actually freeing any space. Did I already mention that I do not like grafting?
<nckx>wonko7: I just want to answer, although I can't help you. I'd focus on the strange error, and check the output of running it under strace for that file name.
<nckx>derivates: /dev/null as in, deliberately making it invalid to catch errors? You could do that, but the errors might not occur until boot time, which is... risky. I'd just put (file-systems %base-file-systems) in the base-system.
<nckx>Maybe an empty list, I don't know what that does :)
<derivates>nckx: thanks, just want to use the correct terminology for when asking for help
<nckx><home-directory> No, that's a fair question.
<avalenn>Is it possible to get a guile debugger on a builder script ?
<nckx>derivates: I think it would be technically possible to make that happen in Scheme... If civodul has time maybe they can explain why it's the way it is, but I think it's just ‘magic is tempting but makes things very hard to debug very quickly’.
<derivates>I added that myself, it works (as for my personal testings), just raised my awareness haha