IRC channel logs


back to list of logs

<dongcarl>Hi all, is the best way to remove a `guix archive --authorize`'d key just to edit `/etc/guix/acl`?
<jgart>Hi guix!
<jgart>what are some people's answers/thoughts/explanations to this last question asked by alphapapa?
<cbaines_>can you repeat the relevant question?
<jgart>Why is it necessary to hard-code full paths to executables in the script itself?
<cbaines_>there are different angles on that issue
<jgart>> Having to modify the script itself this way seems wildly impractical. If I ran Guix as my system distro, would I have to modify my own scripts like that?
<cbaines_>it's necessary for things like garbage collection and grafts to work as expected
<cbaines_>but generally, it relates more to having the script not change in behaviour based on the environment
<jgart>cbaines_, thanks! what are some of the different angles on that issue?
<jgart>ohh ok, can you unpack that a bit more.
<cbaines_>which bit?
<jgart>regarding "... not change in behaviour based on the environment"
<jgart>what are some things that can go wrong?
<jgart>and how are grafts expected to work?
<cbaines_>well, on other systems, most binaries/libraries are treated as mutable, so you can write a script, and it can work one way, then you upgrade some related part of your system, and the behaviour of your (unchanged) script, changes
<drakonis>roptat: you around? i need some clarification on how you set up your mail server
<drakonis>i'm trying to set up my own and i'm a bit confused about certs
<cbaines_>maybe that's a good thing, maybe it's not, either way, with Guix, if you go to the trouble of packaging things so that their behaviour just depends on things they reference in the store, you can be much more sure that the behaviour isn't going to unintentionally change in the future
<jgart>cbaines_, thanks for the explanation! I'll relay it to alphapapa
<cbaines>jgart, one approach to packaging scripts though is just to wrap them and adjust the PATH when packaging
<cbaines>while having absolute references in the script itself is good, unless there's an easy way to do that, I'm not sure it's necessarily useful to push for
<jgart>do you happen to have an example of that in a repo?
<apteryx>jgart: basically, it suites the functional model better, where only a change in the inputs (of a package or script) can cause a different outcome
<cbaines>jgart, I just searched for wrap-program in the main guix repository, this package (jamm) seems to use wrap-program on a few scripts
<roptat>drakonis, I'm around now
<roptat>drakonis, I use let's encrypt for certificates, I use the same certs for my website and mail server (it's on the same machine, so it helps)
<roptat>but usually, mail servers don't even check certificates, so you shouldn't worry too much ^^'
<drakonis>i see
<drakonis>i'm worrying over nothing
<drakonis>the actual problem is that i cant generate the certs for the mail subdomain
<drakonis>it halts the generation
<drakonis>mainly because of nginx i believe?
<roptat>maybe nginx doesn't use the correct server bloc?
<roptat>do you use the certbot-service?
<drakonis>i'll upload my config real soon
<drakonis>i'm currently eating
<drakonis>roptat: still around?
<drakonis>pmed the paste
<dstolfa>sigh... sneek come back!
<dstolfa>i need to send a message!
<tpefreedom>The graphical login won't show desktop environments/window managers I've manually installed. It doesn't give me the option to use something besides GNOME (what I initially installed.)
<Guest91>hi, when i run the graphical installer, after completing the final guided step of partitioning my disk, the installer loops back around to the start, flashing a blank terminal for a second or two, then asking me what my locale is. any help?
<jgart>cbaines, thanks for the suggestion
***iskarian is now known as Guest6191
***Theodore is now known as tpefreedom
<Gooberpatrol66>How should I send a coredump that is too large for an attachment to bug-guix?
<bricewge>Hello Guix!
<bricewge>Gooberpatrol66: Upload it somewhere and send it as a link
<tpefreedom>Is the tor browser available on guix system?
<irfus>how is it recommended to send in a set of related patches such as updated definitions for a package and its dependencies/dependents?
<irfus>different email/thread for each patch, or one email but with multiple attachments, or one email with a single patch that applies all changes?
<cybersyn>hiya guix
<cybersyn>is anyone packaging haskell language server? i gave it a spin and really like it, if nobody is already working on it (which appears to be the case from searching guix-devel) I'll start getting to it
<leoprikler>cybersyn: Guix folk tends to advertise the phrase "You can be the one to package this thing" :)
<cybersyn>leoprikler: thanks, yes thats what I was suggesting, insofar as nobody is already sitting on a definition headed upstream
<mekeor[m]>cybersyn: nice, go ahead, looking forward :)
<raghavgururajan>Hello Guix!
<tissevert>hi guix
<tissevert>raghavgururajan: o/
<raghavgururajan>drakonis: Any luck with Gtk v4?
<drakonis>today i'll check
<tissevert>I see that there's a matterbridge package but none for mattermost
<tissevert>is that a license issue ? is there a work in progress ?
<tissevert>GNUtoo: according to git's log, you have added matterbridge, maybe you're more familiar with mattermost and friends ?
<civodul>Hello Guix!
<iskarian>Hello :)
*civodul posted an update on core-updates
<iskarian>civodul, regarding patch removing input labels... was there already a discussion about handling ("a.patch" ,(search-patch "a.patch")) in inputs?
<iskarian>s/patch/your patch/
<raghavgururajan>drakonis: Thanks!
<sarna>hey, I have a program written in guile. it works when I do `guix environment -l guix.scm` and then run it with `guile myprogram.scm`. how do I make it work system-wide, so I don't have to perform the `guix environment` step every time I want to run it?
<tissevert>sarna: if it works with guix environment -l, then I suppose the contents of guix.scm must be an expression which root is (package …), is that correct ?
<sarna>tissevert: correct!
<tissevert>I think we followed the same path to write our first packages : )
<tissevert>I first made .scm files in my code repositories
<tissevert>then, I took them and built a collection out of them in a separate mypackages.scm
<tissevert>wrapping each of them inside a (define-public …) block
<tissevert>and adding the appropriate headers
<tissevert>then, by setting GUIX_PACKAGE_PATH to the folder containing mypackages.scm, they became available normally to guix CLI so I could search them, still enter environments, but also install them to my profile
<tissevert>I suppose the next step in order of cleanness would be to make a proper channel out of it but I?m not there yet
<tissevert>is that of any help ?
<tissevert>still unsure if I'm doing things right but this setup is working for me so far
<sarna>I think we have a bit different goals, to me it seems like `guix pack` would be the command for me
<tissevert>oh yeah, I haven't needed it much so far, I'm still doing more development and wanting to try my software live in a clean environment but since guix pack expects a package I see no reason why it wouldn't work
<tissevert>(in the environments I enter the above setup allows me to use the package's name, I don't have to provide the (package …) file with -l)
<sarna>yeah, I want just to be able to use it from my CLI without the hassle involved with entering environments n stuff :)
<tissevert>well I think my setup would allow me to do that, and if not, I'd be curious to know why not to improve it : )
<pazho>Hey all, when I run `guix environment --pure emacs --ad-hoc gcc-toolchain` it gives me the `ld` executable from `binutils` rather than `ld-wrapper`, in the profile. Is there an easy way (other than editing PATH) to fix this?
<Qoaiaely>Hi! I'm getting a 'failed to resolve partition' error when trying to install Guix System via a USB stick. Any advice would be much appreciated!
<sarna>tissevert: won't help you with that though, since I'm a big guix noob!
<tissevert>but so am I, so we can help each other !
<maximed>sarna: an easy method would be to write "#!/bin/sh exec guix environment [...].scm -- guile -l the-script.scm" to and run ./something.scm, but there probably are better ways
<maximed>(add a newline after #!/bin/sh)
<tissevert>but that won't make it available system-wide
<tissevert>but if I understand correctly what you wrote at 11:25:04, if you only need to use your own packages locally on your machine, then guix pack won't help you, you probably want guix package instead
<maximed>tissevert: not sure what you mean with ‘system-wide’ -- do you want it in /run/current-system/profile/bin?
<tissevert>(guix pack lets one create self-contained packages to distribute, for example to docker or newly to a .deb archive)
<tissevert>maximed: not sure either since I was quoting from sarna @11:11:10, but being a noob too I assumed we shared the same vision of using packages with guix, and to me it means something like «looks like any other package and gets installed smoothly along tmux and cmus»
<tissevert>which is what I achieved using the above setup which I would like to be either criticized for improvements, tried or questioned for more details : )
<sarna>maximed: but it would make startup time a couple seconds longer, no?
<civodul>raghavgururajan: hey! for ytfzf, i suggest moving the patches from inputs to the 'patches' field of the origin
<sarna>tissevert: yeah I basically want it to work like any other guix package that I `guix install`ed. I run `guix install` and then I use it
<sarna>tissevert: I'll try out your setup - I thought it was too involved for what I've been trying to do, but seems like it won't get easier than that haha
<pazho>sarna: Taking off from what tissevert said, it's probably better to package your program with the guile-build-system and add it to your profile - using your own channel, or the -L option.
<sarna>pazho: I'm using this, which uses `gnu-build-system` :(
<sarna>it generated a `.tar.gz` though, can I somehow `guix install` it?
<tissevert>pazho: thanks ! I didn't know about -L, I assume this is more or less equivalent to setting GUIX_PACKAGE_PATH ?
<tissevert>guile-hall sounds cool
<sarna>I'm spoiled by rust's cargo, I expected it to be way less involved :(
<tissevert>but you've already done the hard work by writing your guix.scm
<sarna>actually I copied most of it from `guile-hall`, as my project shares almost the same dependencies
<tissevert>my way of handling packages is just a slight reformulation of it trying to convince me that I have my own repos for my private packages, but it doesn't really add any complexity
<tissevert>I see
<sarna>oh, there's `guix package --install-from-file=guix.scm` which is *exactly* what I was looking for
<sarna>and.. it fails 🙈
<tissevert>that's weird, I wonder why it does if your package works with guix environment -l ?
<tissevert>any relevant error message ?
<GNUtoo>tissevert: we have a VM for that hosts a mail system, git repositories and so on, and for some historic reasons we ended up with 3 IRC channels in 3 different networks,
<GNUtoo>tissevert: someone was kindly hosting a matterbridge instance but due to increased SPAM that person had issues bridging too much channels,
<tissevert>so you provided matterbridge for guix for your server
<GNUtoo>tissevert: so I needed to run matterbridge, but matterbridge isn't in Trisquel, so I used guix for that
<tissevert>ok I get it, thanks
<tissevert>so you haven't been interested in mattermost at all ?
<GNUtoo>I don't know well what mattermost is, I heard of the name, I know it's a kind of network, but that's pretty much all
<GNUtoo>Note that the matterbridge package is far from perfect, it probably has builtin go libraries
*GNUtoo is not very familiar with go
<civodul>maximed_: hey! do you have a lead for the i686 build failure at ?
<tissevert>ok ^^ me neither
<tissevert>thanks a lot for your answers in any case
<GNUtoo>So maybe mattermost and matterbridge have some libraries in common, it might be worth looking
<tissevert>it's funny because I happen to be pretty much in the same situation as you (we share a server with mail, git, web hosting, etc.) except it runs nixos, for which there is already a mattermost package
<tissevert>but I was wondering if I could give it a test locally before shipping that into production
<GNUtoo>ok, in our case we're limited to FSDG distributions in theory, but in practice we're pretty much limited to Trisquel right now due to how VMs are deployed
<sarna>tissevert: it fails inside `guile-hall`, unfortunately.. this function can't find some path, the error is cryptic as heck though
<GNUtoo>I've sent patches to fix that in grub to merge some grub-crypt patches upstream but it takes time as upstream had too much work with all theses security issues and lot of patches to review
<tissevert>hmmm understandable
*GNUtoo would prefer something like Guix than Trisquel, but something stable that autoupdate itself
<tissevert>sarna: ok I have no idea what that does ^^, don't know anything about guile-hall, but maybe someone else here does ?
<sarna>tissevert: I'll just give up for now
<GNUtoo>(I find the usual configuratoin management tools not that great as thre are package managers, configuration manageements and so on and it's not well integrated together)
<tissevert>that's a shame, packaging software is quite easy with guix, I'm surprised that it's packaging a guile software that is painful
<Guest293>Hello #guix! any idea what packages provides the `gem` command?
<GNUtoo>$ pacman -Q -o gem
<GNUtoo>/usr/bin/gem is owned by rubygems 3.2.15-1.1
<GNUtoo>So maybe something like rubygems (the above is from Parabola not Guix)
*GNUtoo doesn't find any rubygems package
<GNUtoo>Though guix source code has mentions of gems
<leoprikler>we do have a gem importer, so there's probably gem somewhere
<leoprikler>I'd hazard ruby itself
<tissevert>yeah apparently
<tissevert>(just tried in an environment)
<raghavgururajan>> ‎civodul‎: raghavgururajan: hey! for ytfzf, i suggest moving the patches from inputs to the 'patches' field of the origin
<raghavgururajan>Oh okay. During review I was suggested to use patches in inputs. Np! I'll make the change.
<tissevert>we need a tool to help do that -Qo operation, people frequently have this need
<leoprikler>Is ytfzf post patch still unusable?
<leoprikler>tissevert: "we're working on it"™
<tissevert>oooh I didn't know that, great news !
<tissevert>is that on a branch or something ?
*civodul tests a patch for
<civodul>raghavgururajan: ah! maybe there were good reasons then, dunno
<civodul>do you have a link to the review discussion?
<raghavgururajan>Just a sec.
<maximed_>sneek: later tell civodul: I think simpler test case for the guile 3.0.7 failure
<maximed_>(When doing (ceil/ x y), where x and y are inexact floats, the C code ceil(x/y) is used)
<maximed_>and when x is inexact and y is fractional, then y is passed to exact->inexact first
<maximed_>at least, IIUC
<maximed_>so I have a C file doing ceil(x/y), where x and y are read from the command line
<maximed_>It compiles fine on "master", but I need to figure out how to compile it on "core-updates" ...
<maximed_>I'll try "./pre-inst env guix build -e '(@@ (gnu packages commencement) guile-final)' --keep-failed", and compile it there
<mroh>Gooberpatrol66: maybe it's better (and enough) to only send a backtrace.
<efraim>libstdc++-boot-@4.9 is too old for riscv64
***stikonas_ is now known as stikonas
<vivien>Hello, I have 2 systems with guix but the clocks are widely off by 15 seconds
<vivien>How do I synchronize them?
<vivien>Oh, ntp-service is not on by default
***jetomit_ is now known as jetomit
*maximed_ afk
<civodul>raghavgururajan: thanks for the link!
<civodul>i understand what maximed_ was suggesting at
<civodul>but i'm not sure it warrants using a phase
<civodul>i'd say the "Corresponding Source" in Guix is the entired package definition
<civodul>not just the thing returned by "guix build -S"
<civodul>but yeah, it's debatable
<civodul>often it's better if "guix build -S" returns something that "works", which wouldn't be the case here
<ekaitz>hey guix! I just installed a new font but my system doesn't find it, what was the trick to refresh the cache?
<efraim>fc-cache -frv
<ekaitz>thanks efraim !!!
<vivien>Hello, I’d like to ask something in #guile but the message does not show up. Is it OK if I post it here?
<vivien>Or maybe in #gnu?
<civodul>vivien: sure!
<civodul>perhaps you need to register your nick to chat on #guile?
<vivien>How do I do that?
<civodul>something like /msg NickServ register EMAIL
<civodul>where EMAIL is your email address
<civodul>(i think, but "/msg NickServ help" should have the details)
<vivien>OK so the question is: I’m writing a web server that occasionally queries things on the web, sometimes it ends up querying itself. I’m using the suspendable ports interface, but the server blocks because it cannot handle the original query and the sub-query at the same time. Is it a known problem? Why does it appear, since the web interface is just socket ports reading and writing?
<vivien>The toy server is:
<roptat>run-server only uses one thread, no?
<roptat>I use guile-fibers' implementation for that
<vivien>I think so, but with suspendable ports it should suspend when it sees that the client request is not ready and switch back to accepting new requests
<roptat>I'm not familiar with suspendable ports, maybe you're right
<vivien>I’m just guessing
<vivien>Trying to understand
<roptat>reading the manual, it seems that it just replaces the blocking ports by non blocking ports that indefinitely poll for more data until EOF
<roptat>so it will never get back to accepting a new connection
<roptat>" The default read and write waiters do the same thing that the C read and write waiters do, which is to poll"
<vivien>Ah OK
<vivien>I need to implement the waiter
<dstolfa>roptat: how come they didn't move this to epoll and kqueue?
<vivien>So I need to spin up the whole select loop
<roptat>dunno, I'm not a guile dev
<roptat>guile-fibers would be a lot easier ;)
<dstolfa>fair enough! :)
<Guest293>Hello! gem installation fails, any idea why?
<efraim>you're going to need something like --user or --local or whatever the gem equivelant is for non-global installation
<raghavgururajan>civodul: Cool! I'll make the change then.
*Guest293 couldn't find anything equivelent
<maximed>civodul: The guile testing suite is running now and should fail soonish
<maximed>oh it failed
<maximed>hopefully the C program can reproduce the issue ...
<maximed>civodul: Unfortunately, my test case doesn't identify an issue
<rekado>it’s probably just my problem but “guix environment pigx-scrnaseq” doesn’t do anything but eat memory.
<rekado>no GUIX_PACKAGE_PATH set, and the only channel is Guix at commit 38bcef1c3b4f67abb314368d2248e08026219de3
<roptat>does guix graph pigx-scrnaseq work?
<roptat>maybe someone introduced a loop involving pigx-scrnaseq or one of its dependencies?
<raghavgururajan>Yo Guixers! Try pipe-viewer's GUI and get flabbergasted. `guix pull` and `guix environment --pure --ad-hoc pipe-viewer mpv hicolor-icon-theme adwaita-icon-theme -- gtk-pipe-viewer`. Don't forget to explore menus and options. ;)
<roptat>rekado, I just pulled, graph works but indeed environment seems to do something in the background (I can see it's using my CPU though)
<Aurora_v_kosmose>Regarding the idea someone here had of porting Qubes setup. I think it might be quite complicated if one wants to only use Guix for config management. What with the Qubes project generally standardizing around saltstack
<maximed>Did someone see this build warning for guile before? <>
<dstolfa>Aurora_v_kosmose: you can sort of do a qubes-y thing with `guix environment`, but there's currently no way to do it with actual VMs
<dstolfa>it's something that could be implemented potentially, though
<roptat>rekado, seems to be related to grafts: with --no-grafts, it's fetching a ton of substitutes
<Aurora_v_kosmose>dstolfa: That kinda defeats most of the point imo. I think Guix effort, if any, in Qubes should be in supporting some community-official Guix templates/images.
<dstolfa>Aurora_v_kosmose: i mean, i don't see why not. i don't personally have much use out of anything like qubes, but i don't see why guix wouldn't be an option on qubes if someone wanted to do the work to support it
<Aurora_v_kosmose>I've been slowly digging into it and while the porting idea is absolutely beyond anything I'd want to try, a supported template might be interesting.
<roptat>yeah, it's a good idea :)
*dstolfa nods
<Aurora_v_kosmose>The per-user nature of Guix profiles would make for some weirdness.
<dstolfa>maybe the first step would just be having one user and trying to make it work like their fedora images?
<dstolfa>it could always be expanded upon incrementally
<Aurora_v_kosmose>Since both $HOME and /gnu directories are modified in updates.
<Aurora_v_kosmose>dstolfa: Single-user (+ root) is generally how all Qubes go, with root being template-level administration only (since only templates have non-$HOME directories as persistent for writes), while for usage you get "seamless" windows of programs.
<dstolfa>ah i see... so templates would need to be updated using `guix system reconfigure` with `guix pull` being run as the root user, but user programs would actually not be updated as a result
<Aurora_v_kosmose>Yeah, which is obviously undesirable.
<Aurora_v_kosmose>That's the part I'm not sure how to work around.
<dstolfa>the first (obvious) solution that comes to mind is qubes itself keeping track of guix VMs and then running the update for every user profile during the update
<dstolfa>but i can see why this is not desirable
<Aurora_v_kosmose>It'd basically require a two-tiered $HOME mount so that one of those tiers is used for template-time updates.
<Aurora_v_kosmose>e.g.: Something like unionfs
<dstolfa>yeah, and it would also require a way to ensure that all of the VMs produced from the template get updated accordingly, on the same commit
<dstolfa>otherwise you may end up with a race condition with guix pull
<Aurora_v_kosmose>That would be relatively simpler by configuring them with a custom override channel that simply pins master at a regular pace.
<dstolfa>right okay, that sounds reasonable then
<Aurora_v_kosmose>Obviously it'd need maintaining but it's the lowest friction part.
<rekado>roptat: interesting. I’ll send a bug report.
<dstolfa>Aurora_v_kosmose: well, sounds like a fun project. i'd be interested to hear about the progress if you do decide to start hacking on it :)
<Aurora_v_kosmose>dstolfa: Yeah, it'll depend on how my free time goes and the hurdles I find as I get more familiar with Qubes in general.
<Aurora_v_kosmose>I'd also like to coordinate with the other user here that had expressed interest in the idea prior.
<Aurora_v_kosmose>Fairly new to it after all.
<dstolfa>Aurora_v_kosmose: unfortunately i don't remember who that was, but you might have some luck finding it if you dig through
<Aurora_v_kosmose>Yeah, I can probably find it back in mine or the online logs without too much trouble.
<apteryx_>civodul: I think I've had a better idea w.r.t. the 'reduce-directories' or 'strip-child-directories'. Just side-step the whole issue by passing "." to the tar command invoked in the self-contained-tarball/builder helper :-)
<apteryx_>in (guix scripts pack)
***apteryx_ is now known as apteryx
<apteryx>perhaps just stripping out ./root
<leoprikler>is "." guaranteed to be minimal tho?
<apteryx>we have control over it, since it's a local directory populated in a gexp
<dstolfa>has anyone looked into the whole audacity situation with privacy policy around being 13 or older? is this a problem for guix?
<dstolfa>i know almost nothing about what they did, just wondering if this is something that should be looked into or if it's just a bunch of noise
<PurpleSym>There’s compile-time switches to turn tracking off afaik.
<dstolfa>PurpleSym: i'm not so much concerned about telemetry, i don't really care for it unless it's a stupid amount of data that actually clogs internet traffic, but the privacy policy seems a bit weird. does it mention that the 13 or older clause is invalid if telemetry is off?
<PurpleSym>Well, if you turn it off then the policy is moot, because point 2 does not apply any more. I’m not a lawyer obviously.
<dstolfa>yeah, would be nice to know if the 3rd clause no longer applies just if the 2nd clause doesn't
<dstolfa>or if it applies anyway
<Aurora_v_kosmose>dstolfa: Aren't we already stripping that code in both musescore and now audacity?
<Aurora_v_kosmose>iirc deleting the involved files
<dstolfa>Aurora_v_kosmose: i think so, but i'm not sure how the privacy policy applies to all of this
<Aurora_v_kosmose>It mentions 13 years or older because GDPR makes spyware illegal for those that age or younger.
<Aurora_v_kosmose>And yes, the intent is explicitly to turn it into a marketable spyware.
*maximed checks the GDPR (spyware being allowed on people older than 13 year seems odd)
<Aurora_v_kosmose>s/that age or younger/younger/
<Aurora_v_kosmose>maximed: It's not quite how they phrase it, but it's effectively what it is.
<dstolfa>what i'm not sure about is how it works regarding compiling the telemetry out. just because clause 2 doesn't apply, does that also mean clause 3 (13+) doesn't apply?
<PurpleSym>Looks like audacity is using a pre-telemetry version.
<dstolfa>PurpleSym: yes, it's a non-issue in guix now, but we'll have to update it at some point
<dstolfa>it'd be good to know if this is an issue or not
<Aurora_v_kosmose>Notice how the files are being deleted and disable flags are explicitly set? We can just keep doing this.
<dstolfa>Aurora_v_kosmose: i know it can keep being compiled out, but does that also mean privacy policy doesn't apply? i have no idea how these things work legally
<Aurora_v_kosmose>dstolfa: The privacy policy applies to their binaries.
<dstolfa>right, so it's really a non-issue for guix then
<Aurora_v_kosmose>It's GPL. Any third-party compiled binary can be argued to be a differenceless fork.
<Aurora_v_kosmose>At least, that's how I'd see it. Perhaps they could whine about trademark, but we could just do a search & replace of Audacity for Guixacity or something.
<dstolfa>yeah, that sounds reasonable
<Aurora_v_kosmose>Basically the iceweasel situation all over again.
<dstolfa>cool, thanks for explaining
<Aurora_v_kosmose>Unlike the iceweasel situation though, I don't foresee this ending otherwise than in a fork.
<dstolfa>yeah, i reckon it's going to end up in the libreoffice direction eventually just to avoid these issues in the future
<dstolfa>but... that's not a problem for guix (yet)
<Aurora_v_kosmose>The CLA is effectively the nail in the coffin.
<dstolfa>i was just concerned in the short term
<Aurora_v_kosmose>All Free contribution to Audacity is hereby dead.
<dstolfa> according to this, Offline Use - The Privacy Policy does not apply to offline use of the application.
<dstolfa>so for guix, all of this is a no-op
<tonos>Hello! Could someone help me generate a custom initrd for full disk encryption? I dont really understand how cpio archives work
<roptat>you don't need to do anything special, guix will generate a proper initrd by default
<tonos>true, but i need to add a file into the initrd guix provides
<tonos>i would like to add the keyfile of my luks setup
<tonos>so i dont have to type my passphrase twice
<roptat>mh, I don't know then
<tonos>well, I guess I'll continue searching for a solution. Thanks for answering though
<nckx>Morning Guix.
<tissevert>hey nckx
<tpefreedom>How do I change what DEs/WMs I can log into in guix system?
<nckx>dstolfa: Audacity is an aSS now?
<zacchae[m]>I assume a lot of people here use EXWM, so I'll just ask. Has anyone had problems where the screen freezes, but you can use the mouse (and the mouse pointer changes when you move over button/text to the appropriate pointer image)? I've been widdling down my setup to find the cause, but was wondering if this is a known bug. I haven't had this problem with i3
<Aurora_v_kosmose>nckx: Not familiar with the acronym?
<nckx>tpefreedom: Not really my wheelhouse but it should be as easy as adding their respective (…-service-types) to your services field. It's the DM's (e.g., sddm, GDM, …) job to present them to the user and launch the right one.
<Aurora_v_kosmose>zacchae[m]: I strongly suspect you're running into single-threaded Emacs problems.
<nckx>‘Service as a Software Substitute, or SaaSS’, but who the hell incorporates indefinite articles in acronyms anyway.
<nckx>Not moi.
<Aurora_v_kosmose>Wouldn't that make it SSS?
<nckx>tonos: Just out of curiosity, what would be the next step? Wouldn't you have to modify the start-up code to actually do something with the key file?
<nckx>‘As’ is functional.
<tonos>nckx: I pass the keyfile to the kernel
<nckx>Anyway, source:
<tpefreedom>Aurora_v_kosmose, then it would be S3. Amazon might sue.
<Aurora_v_kosmose>Or properly written with upperscript if you have fancy keyboard mappings.
<tonos>nckx: I use a kernel parameter "cryptfile=rootfs:/etc/keyfile"
<tpefreedom>Well what probably would have been F^2FS is just F2FS.
<tonos>nckx: the only thing missing, is getting the keyfile inside rootfs
<nckx>Got it. I don't think modifying Guix's initramfs is needed or advisable.
<Aurora_v_kosmose>tpefreedom: One could also argue that to dispute their trademark they need to first invalidate i2p which did it before them.
<nckx>You can instead append your own cpio archive (manually created, if you like, since it would hardly if ever change) to Guix's. That still takes writing some concatination code that isn't in Guix proper but it's less invasive.
<dstolfa>nckx: lol @ audacity
<tonos>nckx: I tried something similar, but I don't really understand how to get such a cpio file
<nckx>You also don't have to deal with cpio; just concat the two. Unfortunately I don't know of any examples I could point to here.
<Aurora_v_kosmose>Apparently it's specifically "Amazon S3" they went with, specificaly because there's a crapton of other things that use S3. Just the wiki disambiguation page is quite long.
<dstolfa>on another note... does anyone know how to get `guix pull` to work inside a `guix environment` with --container? i'm trying to get guix-jupyter to run in a container but it wants the store (obviously)
<tonos>One can just concat cpio files?
<nckx>For Linux, yes.
<dstolfa>i reckon it's not possible... is it :)
<tpefreedom>I'm mostly on guix because it's the only fsdg distro where I've had luch with the installer.
<nckx>It supports any (realistic) number of appended archives. They get extracted in turn and can be used to extend or overwrite the contents of previous members.
<nckx>I just don't know the commands by heart but they should be easy to find.
<tonos>I noticed while using cpio, that the contents of the initrd from guix start with "./", but the ones from my cpio don't
<tonos>I guess the ./ is irrelevant
<tonos>I'll give it a try. Thanks for the help
<nckx>I don't think it is relevant, but did you pipe ‘find .’ into it? I thought that would include the ‘./’.
<nckx>find . | cpio -H newc -o > keyfile.cpio says the Internet.
<nckx>The fine folks at the Internet are never wrong.
<nckx>dstolfa: It was a serious question though. What is ‘using Audacity offline’? That implies an on-line, which is news to me.
<tonos>It came with the last update. I think
<dstolfa>nckx: the new audacity privacy policy is around not being able to use audacity unless you are 13 years old or older because of the telemetry they gather by default
<nckx>Also, not sure why the Audacity team is determined to keep aiming at their foot to see ‘what will happen this time?’, but that's apparently where they are now.
<dstolfa>i was wondering if this applied even if telemetry was disabled, but it isn't, so it's a non-issue for guix
<Aurora_v_kosmose>Muse group is determined to serve as an example of hostile corporate takeover to serve as a known precedent in the future for corporate misbehavior. A truly surprisingly self-less endeavor.
<nckx>OK, so ‘on-line’ here means ‘with telemetry explicitly enabled by the user’? Just trying to learn what this means for Guix (apparently ‘nothing’, so thanks for looking into it).
<Aurora_v_kosmose>Yeah, it mainly applies to their binaries.
<nckx>Aurora_v_kosmose: Right, that's what's changed, I'd heard about that but forgot.
<Aurora_v_kosmose>Which no one FOSS-side is going to trust anymore.
<dstolfa>i think audacity decided that it's been too long since a libreoffice-like thing happened, so they were willing to be the pioneer
<maxwell_TGAP>anyone have experiance with guix on commersial VPSs?
<nckx>I've run it on a few but none of the big names.
<dstolfa>i only run guix locally and in a datacenter controlled by $WORK, not anything public :(
<nckx>Esp. not the ones that demand some weird hoop-jumping instead of booting an ISO.
<nckx>Although as soon as they provide a ‘rescue system’ you can rescue yourself out of not having Guix.
<Aurora_v_kosmose>I recall some blog post on the guix site for bootstrapping Guix from Debian.
<apteryx>it'd be nice if the gc could run in the background without hindering most of guix's operation, such as building stuff.
*nckx nods.
<nckx>There's nothing technically preventing it :)
<dstolfa>i wonder if that could be done without making guix even more I/O intensive with locks
<drakonis>maxwell_TGAP: there's a cookbook example for linode that could be adapted for using it in other environments
<drakonis>and you can use guix deploy for digitalocean
<vivien>Hi! I’m still trying to understand how the suspendable ports work. I have parameterized current-read-waiter and current-write-waiter, but it does not seem to work:
<vivien>The waiters are not called at all.
*nckx still needs to install Guix on their gratis Oracle VPS.
<nckx>Anyone done so already?
<maximed> vivien: Makybe make sure 'nonblocking' is set approrpiate?
<maximed>I don't know if the (web ...) code does that automatically
<vivien>maximed, it looks like it’s not set
<apteryx>mothacehe: mDNS substitutes discovery works well, I enabled it on 4 build machines at work, and immediately our IT wonderered about those "GNU Guix Substitute Server" :-).
<mothacehe>apteryx: hehe, that's nice marketing for Guix :p
<mothacehe>glad you like it!
<apteryx>it's very cool, thanks for it!
<apteryx>it means things will get shared rather than rebuilt twice on these build machines
<tonos>nckx: Concatenating the cpio files worked, from the repl one could see the keyfile. But the kernel still asks for a passphrase, ignoring the cryptkey argument ...
<mothacehe>apteryx: Thanks! In the last systemcrafters video I noticed a misunderstanding between enabling substitutes and enabling substitutes server discovery. I guess the nuance is quite subtle.
<mothacehe>Maybe a small text about it in your last patch series would be nice :)
<mothacehe>but it's otherwise a welcomed addition
<jonsger>nckx: did you already bought a Guix@Oracle VPS license ^^
<dissoc>i see there is some pine images in guix but no pinephone image. has anyone been able to get guix to run on pinephone? i tried the pine64 image but it wouldnt boot
<dissoc>i would glady contribute to the cause but i dont really know what needs to be done to get it to boot
<maxwell_TGAP>why does the building database for manual pages step take so long?
<southerntofu>hello i tried to make a guix.scm for a project, itworks fine for guix package -f guix.scm but doesn't work for guix environment -m guix.scm
<southerntofu>here's the backtrace:
<southerntofu>and here's the guix.scm
<southerntofu>let me know if you have ideas why that happens :)
<roptat>southerntofu, it's not a manifest, that's why you're having issues
<roptat>use guix environment -l guix.scm
<southerntofu>ah yes thanks
<southerntofu>i'm a bit confused between -f/-m/-l but i guess it'll become clearer over time :)
<roptat>-m is always manifest
<roptat>which expects a different type of object in the file (a manifest, not a package)
<southerntofu>can guix.scm be both a package declaration and a manifest?
<southerntofu>or does it depend on the last value returned at the end of file
<roptat>it depends on the value returned at the end
<southerntofu>> guix environment -l guix.scm aparte -- aparte
<southerntofu>does this look correct to you?
<southerntofu>returns guix environment: error: aparte: unknown package (despite guix package -f working)
<roptat>ah no, it creates an environment with the dependencies of aparte, not aparte itself
<roptat>I don't think you can create an environment with aparte from that file
<roptat>unless it's really in gnu/packages/aparte.scm, in which case you can do "guix environment -L . --ad-hoc aparte"
<southerntofu>oooh i didn't figure that out from the docs! would a manifest help here?
<roptat>yes, if aparte is part of the manifest
<apteryx>mothacehe: I see! I'll address it, civodul also had some comment about it.
<southerntofu>thanks roptat i'll try that
<apteryx>mothacehe: just to make sure my understanding is correct; --discover=yes would not do anything if --no-substitutes was also provided to the daemon, right?
<mothacehe>--discover=yes will start the "guix discover" daemon that will run an mDNS scan in the background
<mothacehe>if --no-substitutes is passed i'm pretty sure nothing more happens
<mothacehe>and the potentially discovered servers are ignored
<mothacehe>but i never checked it
<apteryx>OK, thanks
<zacchae[m]>In case someone has not pointed this out, I think the guix matrix room is out of sync from the irc channel. I thought something seemed off so I checked the logs and some time spans are missing from the matrix room.
<apteryx>nckx: gratis Oracle VPS. How did you get that deal? Oracle is not a name typically associated with gratis ;-)
<dstolfa>apteryx: they have some university offerings as well. azure too, but i never claimed mine because i don't know what to exactly to use them for at the moment
<apteryx>I see
<zacchae[m]>Aurora_v_kosmose: Sorry, your reply didn't come up in the matrix room. The thing is, I can still interact with emacs, resize buffers, and usually even `C-x C-c`, just the screen is frozen. (I can tell things are resized because the position on the screen where the mouse changes to the resize pointer changes)
<zacchae[m]>therefore, I don't think it is a single-threaded issue. I've used EXWM on other builds, but never had this problem.
<Aurora_v_kosmose>zacchae[m]: Yeah, that does sound like a different issue.
<southerntofu>should a rust app for messaging (aparte, an XMPP client) be included in gnu/packages/messaging.scm or in gnu/packges/rust-apps.scm ?
<dstolfa>southerntofu: i'd argue messaging.scm, rust-apps is more like stuff that implements something common in rust and has no other place
<ixmpp>Oh christ not another one
<Noisytoot>nckx, Is the Oracle VPS an ARM or x86 one?
<dstolfa>ixmpp: someone should write an xmpp client to rule them all, so we can avoid having like 300 xmpp clients, and we can have 301
<leoprikler>301? That's preposterous!
<southerntofu>sounds like that XKCD comic
<leoprikler>that's the joke :)
<southerntofu>though that's what the folks are doing, to some extent... writing a single client backend that they make frontends for (cli/tui/web/desktop..)
<ixmpp>dstolfa: im actually writing one
<ixmpp>And its also similar to profanity
<ixmpp>Thats why im exasperated
<ixmpp>But xmpp suffers from that each client implements some weird specific subset of features, so none of them have them all
<dstolfa>ixmpp: but is it written in rust? these days that's a must, otherwise people rewrite you in rust
*dstolfa notices an unintended rhyme
<southerntofu>i thought packages were in alphabetical order but it seems they're not, should i just append new packages to the end of the file?
<southerntofu>in crates-io.scm in this case
<dstolfa>southerntofu: huh. i recently packaged hyperfine (it's on the mailing list, not yet pushed) and i just sorted alphabetically
<cbaines>generally avoid adding new packages to the end of modules, since if everyone does this, the chance of conflicts increases
<dstolfa>on that note.. any volunteers to review a patch series of 21? :)
<southerntofu>thanks, i won't replace any existing packges in alphabeticla order but i'll include the new packages where they fit :)
<Noisytoot>ixmpp, Are you using your XMPP client (and a bridge) to connect?
<ixmpp>dstolfa: no it's in C. I like rust but im not gonna fangirl over it like the fanatics
<dstolfa>ixmpp: i was joking, i can't stand rust because of its ecosystem :P
<ixmpp>I mean if someone wants to rewrite mine in rust, go for it. Im writing mine to fill a void not filled, but as long as its filled i dont care if im the author or not
<dstolfa>i think the language is alright for systems programming, but cargo and the stuff around it just makes me sad
<southerntofu>ixmpp: what client are you developing? (curious)
<southerntofu>ah nice, i should try it sometime
<southerntofu>i'm using weechat for IRC but nothing else really
<ixmpp>Youre already using it, so why not add xmpp. Irc is also a plugin anyway
<southerntofu>i intend to try it for matrix becuse even TUI client gomuks is highly susceptible to c2s latency
<ixmpp>That was my logic
<southerntofu>well "why not" because in my perosnal opinion weechat has far from the best TUI UX :) but i understand the appeal
<ixmpp>Weechat-matrix is good, if you like matrix.
<Noisytoot>"This Source Code Form is "Incompatible With Secondary Licenses", as
<Noisytoot> defined by the Mozilla Public License, v. 2.0."
<ixmpp>Anyway i dont use it on desktop, im using it for weechat-android
<ixmpp>Weechat-android is a magnificent client
<ixmpp>Noisytoot: hm?
<Noisytoot>ixmpp, it's at the end of LICENSE
<Noisytoot>It means it's incompatible with the GPL/LGPL/AGPL
<southerntofu>never tried weechat-android, probably should though
<Noisytoot>I think weechat is under the GPL
<ixmpp>Sure, but im not developing weechat
<ixmpp>Im developing a shared library that people might dynamically load using weechat
<Noisytoot>It might have issues similar to ZFS on Linux
<ixmpp>Not that i enjoy playing this kind of crappy politics, but it seems to not even be an issue
<southerntofu>is it considered bad praxis to add several dependencies in a single patch/commit?
<dstolfa>southerntofu: i was told 1 patch per package, so it's probably best to just do taht
<dstolfa>ixmpp: also
<dstolfa>which clearly states from the FSF side that it's compatible
<Noisytoot>ixmpp, dstolfa: That only applies if it is not marked as "incompatible with secondary licenses", but your xmpp client is
<Noisytoot>"When someone combines a file or files licensed under the Mozilla Public License, version 2.0 ("MPL") with a project licensed under the GNU General Public License or Lesser General Public Licenses ("(L)GPL"), the MPL's Section 3.3 allows distribution of the combined work (the "Larger Work") subject to the terms of both licenses, as long as certain conditions are met."
<Noisytoot>and section 3.3: "You may create and distribute a Larger Work under terms of Your choice, provided that You also comply with the requirements of this License for the Covered Software. If the Larger Work is a combination of Covered Software with a work governed by one or more Secondary Licenses, and the Covered Software is not Incompatible With Secondary Licenses, this License permits You to additionally distribute such Covered Software under
<Noisytoot>the terms of such Secondary License(s), so that the recipient of the Larger Work may, at their option, further distribute the Covered Software under the terms of either this License or such Secondary License(s)."
<dstolfa>Noisytoot: pastebin please, that's really difficult to read
<ixmpp>No, it isnt
<ixmpp>Read it again.''
<Noisytoot>Do you mean that you XMPP client isn't incompatible with secondary licenses, or that it is incompatible with secondary licenses, but it's not an issue?
<nckx>apteryx: Oh, it's nothing I ‘got’, I'd never put that much effort in. Everyone can sign up. I'm sure it runs non-free JS at some point so nobody click:‌
<nckx>Noisytoot: The ARM one.
<nckx>There must be a way to get a non-borg'd Guix on the thing whilst keeping it a single 200G volume. Just need to figure out how.
<Noisytoot>nckx, I think it gets deleted in 30 days when your free trial expires, you can then recreate it as always free
<nckx>But it's Oracle quality so who knows.
<nckx>Noisytoot: Correct.
<Noisytoot>a lot of pissnet runs on oracle cloud free tier
<nckx>Do they know?
<nckx>It's a match made in heaven tho.
<Noisytoot>Can you do guix system init?
<Noisytoot>I think you can upload a disk image to object storage and boot from that
<nckx>Orly? Their whole ‘boot volume’ dichotomy didn't read that way, but I admit that I haven't tried yet.
<nckx>The docs explicitly say you can't boot from anything but a boot volume though.
<nckx>Which object storage is not.
<nckx>If you've experienced otherwise that is great news.
<nckx>And probably something I need to exploit before it gets ‘fixed’.
<Noisytoot>I haven't done that, but I think someone in #opers on pissnet has
<nckx>I was thinking about using kexec to basically do that behind Oracle's back but it would be tedious & error-prone. Great news if true.
<nckx>My spirit isn't yet broken enough to connect to Pissnet, but I will add that to my notes. I'm sure Oracle will manage to break it eventually.
<southerntofu>what does guix lint "archival" stage do? is it normal i fail it every tmie with "Connection timed out" ?
<Noisytoot>southerntofu, I think it checks if it's in softwareheritage
<nckx>Request archival by the Software Heritage project. No, not normal.
<southerntofu>(to be fair i'm running guix-daemon over tor sooooo?)
<nckx>southerntofu: ☝ I'm tired and rambly and bad at ‘nick:’ing today, sorry about that.
<southerntofu>nckx: don't worry, thanks for taking the time to answer! i don't read only messages that mention me :D (at least when i ask a question)
<southerntofu>is that done over HTTP(S) ?
<southerntofu>subtitutes downloading seemed to work fine
<nckx>southerntofu: It's an HTTP(S, in this case) API yes.
<nckx>For example
<nckx>Does that time out when curl'd over Tor?
<southerntofu>maybe this API specifically blocks tor? check-archival-package source code mentions API has IP-based limits
<nckx>* other HTTP clients are available.
<southerntofu>but i don't get the limits error message, only timeout
<southerntofu>that doesn't timeout for me
<southerntofu>(torify curl)
<nckx>I searched for ‘software heritage api tor’ but didn't find anything relevant.
<southerntofu>hmmmm HTTP (without TLS) requests could fail if the client doesn't use HTTP Connect, could it be the requests are sent over HTTP not HTTPS?
<nckx>southerntofu: And curl -i -H 'Accept: application/yaml' , to try an actual valid API request?
<nckx>southerntofu: Looking at (guix swh) I don't see how that could happen.
<nckx>By the way, this shouldn't go through the daemon at all.
<southerntofu>someone in another channel said this archival step is not necessarily and i can stop guix lint at this stage, do you folks agree?
<dstolfa>nckx: did you by any chance get an email from the patches i sent yesterday, or did they get lost in the git send-email mistake
<southerntofu>nckx: maybe it doesn't and if so i'm just leaking IPs :P i like it there's docs for tor usage in the cookbook, but i feel like it's not really well integrated yet :)
<nckx>Could you give me an example subject/commit message/as last resort keyword?
<nckx>dstolfa: ☝
<dstolfa>nckx: "Add hyperfine"
<dstolfa>this should find it
<nckx>southerntofu: Into Guix the code or Guix the manual? I don't run Guix over Tor so I can't much comment about that.
<nckx>Thanks dstolfa.
<southerntofu>the cookbook on the website i believe
<nckx>Right right, I meant ‘not well integrated’ specifically.
<nckx>What is not well integrated into what? I thought you meant ‘Tor support’ but maybe you meant ‘the cookbook’ itself.
<nckx>Which is partly the point, but I get yours too.
<nckx>dstolfa: Yep, ‘Add hyperfine’, Sun, 4 Jul 2021 17:31:42 +0100 ?
<dstolfa>yep, that's the one!
<nckx>Received by my MX at 04 Jul 2021 14:06:44 -0400
<nckx>That's quite the delay if I did my TZ maths right, but it arrived.
<dstolfa>fair enough, as long as it arrived, hopefully at some point someone will review it :D
<nckx>(The delay was within debbugs.)
<dstolfa>i was worried that it didn't arrive at all due to the mass spam by the wrong git config
*nckx wishes the spam filters were that good.
<dstolfa>nckx: i know right... all my emails would get filtered (:
<dstolfa>i have a feeling this is going to be a running joke for a while
<nckx>raghavgururajan: What more do I need?
<nckx>dstolfa: I wasn't planning on making it one.
<nckx>raghavgururajan: There was also a very short error dialogue which I didn't screenshot because I expected it appear on the second run, but it didn't, so something stateful is afoot.
<nckx>I only remember ‘…: -1’ 😛 Sorry.
<dstolfa>nckx: maybe i find it funny because i can't believe i didn't check such a simple thing
<southerntofu>apparently the lint which checks homepage for project does not accept some mimetypes
<nckx>southerntofu: For example?
<southerntofu>Accept: text/html,application/xhtml+xml works on, but a package that has a such homepage produces a 404 in lint run
<southerntofu>(default curl params return 404)
<southerntofu>like (one package i'm making which has this set as homepage, as imported by the cargo importer)
<nckx>OK, so this is… hm.
<southerntofu>i agree server-side the server shouldn't give a 404 when the accept header isn't specific enough (talking about that in #rust) but the client should probably send correct Accept headers anyway :D
<nckx>I don't want to cop out, but this is hardly a sane thing for a server to do.
<nckx>I'm not sure about that southerntofu, let's see if this behaviour is standardised 😛 (the question is not if, but where…)
<southerntofu>well text/html and application/xhtml+xml are standard (HTML/xHTML respectively)
<nckx>‘If no Accept header field is present, then it is assumed that the client accepts all media types’
<southerntofu>would be enough
<southerntofu>RFC n°? or link?
<nckx>I don't think Guix should work around broken servers unless it's common and this is the first time I've ever seen this happen.
<nckx>Oh, sure, sorry. 2616.
<jonsger>can someone help me in unbreaking this simple-service: ? I think its not escaped correctly. At least `guix system reconfigure` dies silently and returns 1...
<southerntofu>thanks nckx
<nckx>jonsger: REPL sez
<nckx>illegal character in escape sequence: #\e
<jonsger>ah got it, a "\" in front of \e missing
*jonsger misses '''almost everything allowed''' from python in guile/guix :(
<southerntofu>in the meantime i'll set homepage to the repo instead, since the homepage was a dummy page anyway
<nckx>(For completeness: this is repeated with different verbiage in RFC7231.)
<southerntofu>soooooo > Arnavion | They're not exclusive. It serves 404 and JSON
<southerntofu>because apparently the same URLs are used for HTML and JSON API both
<southerntofu>i read in the docs
<southerntofu>> we try to refrain from skipping the tests or using #:skip-build? when possible
<nckx>(I don't understand how that's supposed to justify returning bogus 404s. By the way, the same page is broken in links.)
<nckx>southerntofu: But?
<southerntofu>i notice that the cargo importer added #:skip-build in many places, should i do anything about it? before submitting package i mean
<nckx>southerntofu: It's added for all non-top-level packages (I guess that means everything the recursive importer adds to the package[s] you gave it on the command line).
<nckx>It does seem to conflict with the spirit of the manual.
<southerntofu>ok so libraries should be skip-build but not apps?
<nckx>I just looked at the code; I don't dabble in Rust and don't know who's right.
<nckx>southerntofu: I guess so?
<nckx>But you could ‘guix import crate [some library you need]’ directly and it would be added.
*apteryx has been deleting unused links... (for the last 4 hours ;-))
<nckx>Maybe it's just an optimisation for the build farm. ‘We know something uses this library so something will break if it does, don't build it separately.’
<nckx>That's true as long as unused libraries are pruned or #:skip-build? is unset when their refcount hits 0 ☺
<southerntofu>yea i guess since rust doesn't do dynamic linking it makes sense not to build libraries separately
<nckx>I think that's the reasoning.