IRC channel logs


back to list of logs

<phodina[m]><drakonis> "you can use it to move the..." <- Here's the code where I'm trying to join the strings:
<phodina[m]>I need them to create one string containing all the paths for rpath. But I get errors (part of the pastezone)
<drakonis>that, is not where you should quasiquote it
<phodina[m]>drakonis: And what's the right place to put the quasiquote?
<drakonis>doing this from the cli is a pain
<Anak>hello guix comunity. I am new here.
<Anak>Does any of you succesfully install guix in wsl2 on ubuntu distro?
<phodina[m]>Anak: There are these notes But personally I didn't test it.
<drakonis>phodina[m]: the way you're quasiquoting this, yields an s-exp containing the procedure call for string-append and the strings you want to join
<drakonis>well that was short lol
<drakonis>phodina[m]: you need to use apply iirc
<drakonis>that'll take the output from map and use it as a input for string-append
<phodina[m]>drakonis: Thanks! Btw is there a way to use just single string-append as I now need to use additional to append `nss "/lib/nss:"` as well
<drakonis>i guess you could?
<drakonis>since it returns a string you could use as an argument for string-append
<phodina[m]>drakonis: I do it like this. My point was about the `apply string-append` if it could be used to join also the `nss /lib/nss` or if the following code is the only way.
<drakonis>it can, yes.
<phodina[m]>drakonis: The issue when I use just single `string-append` is `In procedure apply: Apply to non-list: ("/gnu/store/4jwfs75934swmhdj0hvz06ychj1qda64-nss-3.72" . "/lib/nss:")`. I'm not that familiar with `apply` prodecure
<drakonis>apply takes a procedure and its inputs
<drakonis>let me check something
<phodina[m]>drakonis: So I need to use `apply string-append` on the map and then another `string-append` to get the rest of the strings together. That way it works. I'm just curious if it can't be done with single operation but I get errors as I try to put the additional strings to the apply procedure.
<drakonis>no i think the nss invocation is pointing to an associative list
<drakonis>can you post the full file with the module imports?
<drakonis>so i can run the code?
<phodina[m]><drakonis> "can you post the full file..." <-
<drakonis>well, alright.
<drakonis>gonna test it out real quick
<drakonis>developing on a repl seems like a real pain
<jaft>This should be a simple question; I just can't seem to find anything on it: how would I add channels for the system? I know you can via ~/.config/guix/channels.scm but I assume that makes those channels available for the particular user, rather than for the system itself (and, therefore, would not be included in a, say, =guix system reconfigure= call).
<Michal_Atlas[m]>it is actually included in all calls i can think of
<jaft>Gotcha; then, out of curiosity, how would Guix determine which channels to use if two users had different channels in their =channels.scm= file?
<jaft>(I'm assuming that =guix system reconfigure= runs against /etc/config.scm but my assumption there may be misplaced)
<Michal_Atlas[m]>I'm only a passive user, vut guix system reconfigure usually gets a config file passed in, and /etc/config is something that the installe creates iirc, my system doesn't have it at all, since it was installed woth guix system init
<Michal_Atlas[m]>the guix commands usually operate based on your own user's environment, so whatever channels the user that executes the command has, those will be used
<Michal_Atlas[m]>at least that's my experience so far
<Michal_Atlas[m]>strangely enough, that's the case even with `sudo guix system reconfigure` no idea how they manage to get the user's setup in that scenario, but they do
<jaft>Ahh, O. K. Thanks a ton! This was super helpful, for me.
<SeerLite[m]>As far as I understand, `guix pull` updates the `guix` command itself to have it point to whatever generation you pulled. Then when you do `sudo guix` you're still using the same `guix` command with that setting
<Michal_Atlas[m]>oooh, that's actually so smart and simple
***iyzsong-www is now known as iyzsong-w
<Aurora_v_kosmose>So, what's the general recommended way to deal with dependencies on things like jquery?
***iyzsong-www is now known as iyzsong-w
<jgart>This should be Guile's anthem:
<xelxebar>SeerLite[m]: Oh cool. Indeed, it looks like the command `guix' points to some guix-command output in the store, which is just a guile script that sets up load paths etc.
<xelxebar>In there, we see %load-path getting set with a guix-module-union output, which I assume is the "checkout" created by guix pull.
<xelxebar>Had been wondering how we were able to stop supplying -E to sudo when invoking guix system reconfigure. Neat!
<f1refly>do i actually need to build the rust libs or is it sufficient if they're just present and i skip the build step?
<f1refly>because in some packages the step is skipped, but I didn't see a pattern. The skip build step is set a bit random to my eyes
<f1refly>so apparantly the mint package is direct dependency of rust-winit, but doesn't list it
*f1refly slaps around with a bit trout a bit
<Aurora_v_kosmose> ...well. This ain't encouraging.
<Aurora_v_kosmose>Uhh... should I just use the vendored version in the package I'm trying to add then? Or try to get in touch with the author & see if it can't be removed?
<AwesomeAdam54321>Aurora_v_kosmose: I think you should get in touch with the author
<civodul>Hello Guix!
<user_oreloznog>Hi Civodul!
<abcdw>hey guix. I have no icons in qtox, and it's really hard to use it without them. Is it only me or there is a problem with a package?
<f1refly>Can someone help me with this build log? Does it really just exit without telling me anything or is it just that I'm too dumb to find the pointer?
<civodul>f1refly: hi! looks like rustc terminated with SIGKILL, which could be due to an out-of-memory condition
<civodul>perhaps /var/log/messages has details?
<jaft>What does the mirror:// protocol mean for package definitions? I noticed that LXTerminal is an older version than the latest release but wasn't sure how to update it; I tried just changing the version number for a naïve attempt but that just built v0.3.2, anyway.
<efraim>jaft: re the mirror://, they're defined in guix/download.scm, its a way to shorten the URL and add mirrors when there are many packages using that source location
<efraim>you'll have to download the source and get the hash using `guix hash` so you can update the hash too to make sure you're building the correct version
<efraim>I think there's something wrong with the dtc source, I can't unpack it on riscv64-linux
<efraim>the gzip sources seem to build fine on all the architectures I've tested. I'll switch it later
<amk>hey i've been etsting guix after building from source on a musl system (with a few patches), any idea why guix-daemon when called without --discover=no would kick my user back to the tty login screen? Its very weird
***wingo_ is now known as wingo
***breavyn_ is now known as breavyn
<AwesomeAdam54321>amk: Are you running it from a shell after logging in?
<phodina[m]>Is there a way how to differentiate between gtk2 and gtk3. Both have names `gtk+` and I'd like to get the store paths by `(assoc-ref inputs "gtk+") `?
<phodina[m]> * Is there a way how to differentiate between gtk2 and gtk3. Both have names `gtk+` and I'd like to get the store paths by `(assoc-ref inputs "gtk+")` ?
<phodina[m]>the package has both as inputs
<raghavgururajan>phodina[m]: The variable names are different though. gtk+ and gtk+-2
<phodina[m]>raghavgururajan: Yes they are otherwise Guile would throw an error. Is there a way to use them directly to obtain the path?
<itd_>Hi. For discoverability: had some connection reset problem with openssh-sans-x 8.9p1 on i686; looked like bug and the first patch there seems to fix it.
<raghavgururajan>phodina[m]: Could you try gtk+@2
<phodina[m]>raghavgururajan: Nope, doesn't return the path `In procedure string-append: Wrong type (expecting string): #f`
<phodina[m]>* string): #f` if I use `(assoc-ref inputs "gtk+@2")`
<abrenon>hey guix
<efraim>what's the input label for gtk+@2
<civodul>howdy abrenon & efraim!
<civodul>efraim: "gtk+"?
<efraim>civodul: it sounds like phodina[m]'s package uses gtk+@3 and gtk+@2, and I'm guessing they still have input labels, hence the assoc-ref inputs
<efraim>also, o/
<civodul>efraim: oh got it, i hadn't seen the discussion above
<the_tubular>Lots of new names in the IRC, that's good!
<civodul>phodina[m]: we'd have to see the details, but it sounds like you'd have to refer to gtk+@2 by some other means
<civodul>could be this-package-input, but it doesn't let you distinguish between the two gtk+ inputs
*jonsger finally got his Librem 5, Guix still missing at that party :P
<civodul>or could be searhc-input-file
<Guest59>I've got a copy of sicp at my company, should i read that before attempting to hack on guix or can i pick things up along the way?
<Guest59>I'd need some packages that aren't in the repo, but I'm afraid of the learning curve of defining packages with guile
<Guest59>the guix repos look very complicated and I don't speak lisp
<phodina[m]><efraim> "civodul: it sounds like phodina..." <- Hi efraim, yes both packages are defined as differen variable names `gtk+-2` for gtk-2 and `gtk+` for gtk-3, but the labels are unfotunately the same `gtk+`. So this makes it harder to use together.
<phodina[m]>civodul: That's my main point how to differentiate them
<civodul>Guest59: hi! hopefully you can pick things along the way
<efraim>if they're still using labels then I'd change the gtk2 label to gtk+-2 and then use that
<civodul>phodina[m]: depending on the context, search-input-file might be an option
<phodina[m]>civodul: Thanks, I'll look into that!
<Guest59>okay, i'll give it a shot next weekend then. thank you for the valuation
<efraim>civodul: want some code clean-up? glibc-2.23 is long gone, check out gnu/system.scm:1156
<phodina[m]>civodul: It's part of the definition in the let statement in one of the modified phases.
<efraim>git blame says you touched it last in 2016
***matrixlurkerbot is now known as nckx`
<efraim>looks like making qemu cross-compile is going to take more effort than I expected
<civodul>efraim: indeed, GUIX_LOCPATH can be removed
***user3456_ is now known as user3456
<civodul>efraim: any update on the GUIX_DAEMON_SOCKET issue you reported at ?
<efraim>I'll have to look at it more
<robin>xpra seems broken :/ any other xpra users around? (i use it just for run_scaled, basically, which is also broken)
<robin> i'll try the obvious things, but it doesn't look good
<phf-1>Hello Guix!  So, still battling with Cuirass
<phf-1>It would really help to make it work...
<civodul>phf-1: hi! so what's the status?
<phf-1>The puzzling problem I'm facing is : on a remote-worker, I can build a package with `# guix build pkg' but the web interface keeps telling it fails..
<phf-1>civodul, I can give you full access to the servers if it helps
<civodul>so the web interface sees the worker, the build get performed there, but it fails?
<phf-1>civodul, yes
<civodul>and how does it fail?
<phf-1>The rw output is:
<phf-1>civodul, the interface shows :
<phf-1>civodul, but on the worker I have: `# guix build dldoc -L ./deeplinks-guix-channel' which gives : `/gnu/store/fkmnn9b7v1nsln9d2a50qppxyz9sdfxf-dldoc-1.0'
<phf-1>which is rather puzzling
<civodul>phf-1: what does the log file look like, if you click on that page?
<phf-1>civodul like that:
***rgherdt_ is now known as rgherdt
<phf-1>civodul  not logs are present in `/var/log/guix/drvs' on the worker for the derivation /gnu/store/f401zsp3dlj73958md9vfgfxhpi2fgbv-dldoc-1.0.drv
<civodul>phf-1: did you authorize substitutes between the head node and the build nodes?
<civodul>does "guix build /gnu/store/f401zsp3dlj73958md9vfgfxhpi2fgbv-dldoc-1.0.drv" work on the build node?
<phf-1>Relevant part of the auth config. for the cuirass node:, for the worker node:
<phf-1>No, guix build /gnu/store/f401zsp3dlj73958md9vfgfxhpi2fgbv-dldoc-1.0.drv does not work
<phf-1>civodul  is the trace
<civodul>phf-1: looks like the worker node is not looking for substitutes on the head node, which is where it would find that .drv
<civodul>is Avahi-based discovery enabled on both nodes?
<phf-1>civodul Avahi is disabled since we last spoke in favour of direct IP config as in:
<phf-1>civodul  can enable avahi and check again if it works. Ok?
<civodul>phf-1: the worker needs to be know the substitute URL of the head node
<civodul>so there are two ways: either you change substitute-urls on the worker to manually add it
<civodul>or you enable discovery on the worker (and publication on the head
<phf-1>civodul Ok. Great, than you very much. I will try both
<phf-1>civodul avahi was actually enabled... trying with explicit ip on the worker as in:
<apteryx>civodul: hello! congrats on fixing the underlying problem of local-file at the Guile level!
<sneek>Welcome back apteryx, you have 1 message!
<sneek>apteryx, maximed says: I sent a v5 of the patch series for reducing the number of false positives of 'check-tests-true' (+ some #:tests? fixes): (only difference with the v4 is a rebase)
<civodul>hi apteryx! thanks!
<civodul>BTW i'm running a system with gnu.system & co., all is fine and much prettier :-)
<apteryx>can SSE be assumed on Guix?
<apteryx>for x86 platforms
<apteryx>introduced with Pentium III & AMD AthlonXP microprocessors
<apteryx>in 1999
<phf-1>civodul i've a different output :
<phf-1>civodul as if the derivation was missing from the cuirass node... `substitute: updating substitutes from ''... 100.0%
<phf-1>cannot build missing derivation ?/gnu/store/f401zsp3dlj73958md9vfgfxhpi2fgbv-dldoc-1.0.drv?
<phf-1>guix build: error: build of `/gnu/store/f401zsp3dlj73958md9vfgfxhpi2fgbv-dldoc-1.0.drv' failed'
<apteryx>civodul: re gnu.system & all, neat! :-)
<phf-1>civodul, yet, the derivation exists on the cuirass node:
<phf-1>as if it was not published ... or maybe filtered by a firewall?
<jonsger> what does this mean? it happens when I try to do a `./pre-inst-env guix build icedove-wayland` inside guix environment guix
<robin>xpra git master works fine fwiw, though the run_scaled script is broken for some reason. still a weird "invalid encodings specified: e, n, c, o, d, i, g, s" line that i don't get running it manually
<f1refly>civodul: i doubt it, but I'll keep an eye on it during the next try
<robin>so what's usually done when the bleeding-edge version functions and the last release doesn't? should i post a patch to use the latest git commit or just file a bug report to keep track of it?
<robin>(might be able to git bisect the bug and patch it, i suppose -- and there's still clearly something broken upstream with the accompanying run_scaled script not working)
<robin>(with the same "encodigs" error)
<ceephax>is it possible to do android development with guix, i'm trying to create an environment but i'm getting an error from gradle "Java Compiler is not available", this is the command i'm using to create an environment
<abrenon>ceephax: roptat is working on that and is probably the most competent person to help you
<robin>iiuc android development on guix system isn't feasible due to a circular dependency between gradle and kotlin (gradle written in kotlin, kotlin built with gradle -> lots of old versions to package for bootstrapping)
<robin>feasible yet*
<phf-1>`cuirass-remote-worker-service-type' is absent from the manual but should be present I guess.
<jonsger>ah there were some *.go files left which make clean-go didn't removed. I manually removed them and now its working again :)
<jackhill>Is there a guix package for ?
<phf-1>civodul GREEN LIGHTS IN WORKED :-D
<phf-1>civodul, the reason was that I've rebuilt the cuirass instance which changed the public key and then it's silently ignored as stated in the doc.
<phf-1>civodul here is the relevant part of the doc: Guix detects and raises an error when attempting to use a substitute that has been tampered with. Likewise, it ignores substitutes that are not signed, or that are not signed by one of the keys listed in the ACL.
<jab>Hey guix friends!
<Lumine>Hey jab
<DynastyMic>hey guys, do any of you know whehter it is possible to run JRE java programs in guix
<DynastyMic>without having to package it
<DynastyMic>ex. download the tar.gz, and then execute
<jab>DynastyMic: If you can fine the main jar file... I think that's supposed to be the beauty of Java. Write once run anywhere.
<jab>I am not an expert in Java.
<DynastyMic>Me neither lol
<DynastyMic>the docs say you should execute the file
<DynastyMic>but guix won't work
<DynastyMic>the command reads some symlinks, and afterwards executes java with a bunch of argumens
<DynastyMic>well, not java, but jre/bin/java
<DynastyMic>guess you know what i mean
<jab>DynastyMic: I gotcha bro. If you are wanting to run that in Guix, I know that Java is a really hard problem...usually.
<jab>David Thompson had a talk, where he talked about java programs are really hard to bootstrap. Ie: no one seems to know how to build many common java programs from source.
<DynastyMic>I see, I didn't know such thing. So I won't mind trying to run that progra, i'll find an alternative written in another language
<DynastyMic>thank you!
<jab>DynastyMic: you might try to list of applications in the arch linux wiki. Some of the programs on the arch wiki may not be free, but that resource is awesome
<DynastyMic>nice! ill check that out
<jab>DynastyMic: Yeah the arch wiki is awesome! but it does have some tips about non free software. So just be careful of that.
<DynastyMic>what do you mean?
<leinad>Hello Guix!
<leinad>Anybody using the emacs-doom-modeline package here?
<bdju>has anyone looked into packaging syncplay? would it be difficult? (I don't want to package it myself if possible, but as a last resort I might try to sometime)
<jab>leinad: I am using doom emacs.
<leinad>jab: I am experimenting with the modeline only but the fonts don't show up correctly.
<leinad>from what I understand from the package definition of emacs-all-the-icons, the fonts should also be installed somehow
<leinad>are the fonts working for you?
<jab>leinad: well I am doing console only the icons are not working for me. :)
<oriansj>jab: wait until you discover you can watch videos in the console with emacs
<oriansj>and gpm is a thing too
<ahriman>you can also use mpv with --vo=tct
<jab>oriansj: ah man. I wish I had not have discovered that....The goal was to avoid videos and images (giving them up for lent). Geez. I didn't realize Emacs and the console was that powerful.
<ahriman>you can just lock yourself in 16 color mode, you wont be watching as much video then. :D
<leinad>jab: alright, I see :D very interesting, thank you
<oriansj>jab: well if you really want you can do the classic: only run software that you build locally. Really makes it easier not do install games or video players
<oriansj>get a machine with 8GB RAM and no swap, disable substitutes and you can't even install a video player even if you wanted to
<oriansj>(rust will fail to compile due to insufficient RAM)
<ahriman>keep your machine inside a microwave, like that, the internet will not be able to tempt you.
<oriansj>or dedicate a month to doing a bootstrapping project (great way to learn and kill alot of time)
***ChanServ changes topic to '!! Website, CI, MUMI down for maintenance !! GNU Guix | | videos: | bugs & patches: | paste: | Guix in high-performance computing: | This channel's logged:'
<drakonis>huh, maintenance eh?
<apteryx>yet another reboot attempt
<apteryx>it's proving tricker than I'd hope
<ggoes>ruh roh
<jab>ahriman: how would I lock myself into 16 color mode?
<jab>in guix system?
<ryuslash>hello Guix :)
<ahriman>jab: i was joking with that, does your guix tty do more than 16 colors?
<jab>ahriman: I guess I do not know...
<jab>It was a massive shock that you could watch videos from the console!
<Aurora_v_kosmose>I remember first doing so with mplayer.
<jab>I am surprized that 8GB of ram and disabling substitutes means that you cannot build video players.
<ahriman>you can check with tput, (if you dont already have it, install ncurses), then run tput setaf 16 and see if your prompt changes color.
<Aurora_v_kosmose>Really? You can't build mpv?
<jab>Aurora_v_kosmose: I have not tried. oriansj seems to think that 8GB of RAM is not enough to compile mpv. I have not tried it myself.
<ahriman>i dont know why you cant build mpv with 8GB of ram, does it pull ffmpeg as a dependency or something crazy like that?
<Aurora_v_kosmose>jab: I'm currently building something on a 4GB VM. I'll try mpv right after this.
<Aurora_v_kosmose>(Which will involve building ffmpeg as well)
<oriansj>ahriman: it pulls rustc as a build dependency and that need more RAM
<Aurora_v_kosmose>Sounds like you should log a ticket to rustc regarding its broken build.
<ahriman>so the problem isnt mpv but rustc. Does compiling rustc version n still require rustc version n-1 ?
<ryuslash>It appears the and sites are down?
<jab>oriansj: did it really ? Why does mpv have rust as a dependancy? I had assumed that mpv was written exclusively in C. I guess that's why I should not assume.
<oriansj>Aurora_v_kosmose: for needing more than 8GB of RAM? that isn't a broken build so much as a system which didn't turn on enough swap to run the program in question
<Aurora_v_kosmose>ryuslash: Yes, hence the recent discussing about no-substitutes builds.
<Aurora_v_kosmose>oriansj: A bit of both. There's no reason something like that should require so much memory at a given time.
<ryuslash>Aurora_v_kosmose: ah :)
<jab>oriansj: thanks for the suggestions to limit myself to no videos/images. I appreciate the help.
<ahriman>welcome to the age of rust and electron apps. You will need 64GB of ram, and a 1TB swapfile, and you will be happy :)
<oriansj>Aurora_v_kosmose: wait until you discover GHC does 4TB mallocs and if you turn off lazy allocation for the kernel all haskell programs break
<Aurora_v_kosmose>ahriman: I sure would like to fix my laptop's memory cap.
<Aurora_v_kosmose>It won't take that much memory.
<oriansj>Aurora_v_kosmose: haskell programs generally don't but if you turn off lazy allocation, the kernel will try to allocate that much memory for those programs
<Aurora_v_kosmose>oriansj: On one hand eww, on the other... why does it allocate so much ahead of time?
<oriansj>Aurora_v_kosmose: a design decision of some sort, not sure why. It just kinda is
<ahriman>haskell allocates so much memory because they know that the
<ahriman>kernel wont give it that much*
<Aurora_v_kosmose>I kinda hope GHC doesn't use GNU Libc's malloc for doing that. It has a bug where it doesn't release freed memory.
<Aurora_v_kosmose>(They maintain it's a feature, but I most emphatically disagree.)
<jab>oriansj: this is starting to feel like a free software issue. If you cannot build the program on your must trust it to be built properly on a more power computer.
<oriansj>Aurora_v_kosmose: well releasing memory to the kernel tends to be something to avoid in non-managed languages as it is trivial to create hard to reproduce or debug bugs
<ahriman>jab: thats why i dont like rust, it was preobably designed by some goverment agency in order to sneak into the free software community and push people to compile less and instead rely on compromised binaries.
<Aurora_v_kosmose>oriansj: It could clean-up memory before releasing it. Instead it just keeps it in a pooled cache.
<oriansj>jab: well one could just enable swap and let the build take a week
<Aurora_v_kosmose>oriansj: That cache is why Emacs' memory use bloats to ridiculous levels after a while.
<Aurora_v_kosmose>Despite all of it having already been freed/released by the GC.
<oriansj>Aurora_v_kosmose: ridiculous levels? well I guess 1GB memory usage might look that way for a program which has a reputation for Eight Megabytes And Constantly Swapping
<Aurora_v_kosmose>oriansj: Nah, if for example you use Emacs' dired to manage media and accidentally open an mp4 file, even if you close the buffer, it'll stay bloated by the size of that file + some overhead.
<Aurora_v_kosmose>I've had that happen with movies.
<Aurora_v_kosmose>Having Emacs take >8GB of memory when it wasn't even using >600mb prior to that is just silly.
<ahriman>the solution is to just make emacs your kernel, like that its memory usage wont show in htop!
<Aurora_v_kosmose>Unfortunately Emacs isn't exactly a solid base to build a secure OS on top of.
<Aurora_v_kosmose>(Sadly no Emacs-powered secure Genera forthcoming)
<jab>oriansj: I use mpv usually to play audio files. Is there a lighter weight program that I could use? That I could build locally on my 8BG RAM laptop?
<jab>actually checking online now.
<Aurora_v_kosmose>jab: mpd is pretty lightweight.
<Aurora_v_kosmose>jab: Unfortunately much like mpv it offloads most actual decoding to ffmpeg/libav
<jab>Aurora_v_kosmose: I was about to say mpd, which I can use from Emacs!
<Aurora_v_kosmose>jab: Yeah, I'd check various emms-supported backends.
<Aurora_v_kosmose>jab: mpg321 works if you just want mp3.
<jab>mp3 is fine or ogg.
<Aurora_v_kosmose>ogg123 is also a thing.
<Aurora_v_kosmose>Not sure if Guix packages it.
<jab>must be some lightweight programs.
<Aurora_v_kosmose>jab: Yup, it's part of vorbis-tools outputs, which are in Guix.
<fnstudio>xkcd 303 but with "guix ci under maintenance" :)
<oriansj>emacs xkcd-mode
<Aurora_v_kosmose>Yeah... building everything from scratch is taking a while.
<oriansj>Aurora_v_kosmose: oh, trust me I absolutely know
<oriansj>my config is stripped to the bone to get the setup time to something reasonable
<oriansj>checkout live-bootstrap if you want to go deeper down that rabbit-hole
<oriansj>or if you want to know how to go from hex to a cross-platform C compiler+ Unix shell (powerful enough to build MesCC and thus bootstrap everything)