IRC channel logs

2021-03-01.log

back to list of logs

*raghavgururajan rubs eyes after seeing "New in this revision: 101 new packages: ... butt, ..."
<dftxbs3e>cbaines, hey, how exactly do I specify authentication? I have this: (authentication (password-file-auth (uuid "") (password-file "/path/to/file")))
<cbaines>It's (guix-build-coordinator-agent-password-file-auth (uuid ...) (password-file ...))
<cbaines>but yeah, that's pretty much right
<dftxbs3e>cbaines, OK thanks, very long field name
<dftxbs3e>* record type name
<civodul>cbaines: re childhurd, i suspect 6e8cdf1d26092cb9654e179b04730fff7c15c94f
<civodul>let's see tomorrow
*civodul -> zZz
<cbaines>civodul, I spotted that commit, but the childhurd passes on it form me
***butleria1 is now known as butlerian
<pineapples>o/
***iyzsong-- is now known as iyzsong-w
<dftxbs3e>I just packaged "quiterss" it's quite good to keep up with lots of RSS feeds (for me, security related to update GNU Guix in a timely manner)
<wonko_the_sane>cool!
<Whyvn>how can I tell if my system is working/updating or is frozen somewhere? I just did a guix pull and guix package -u, it took 8 hrs to build ungoogled chromium and it just said that, that build is at 100% now its just sitting there.
<Whyvn>dont really want to cancel what its doing it its still working
<Whyvn>wait...... so after 5 min of sitting at the 100% it just went to install phase.
<wonko_the_sane>Hmm.. I wonder will 'guix system reconfigure config.scm' 'Do What I Mean' if config.scm specifies more than one '(operating-system ...)? Let's find out :o
<dftxbs3e>it looks like GNU Guix's Cuirass instance really got stuck 15 hours ago
<Whyvn>is it impossible to run a binary file that a company provides on guix system? the file is an ELF 64-bit LSB executable, but guix system says No such file or directory. Just curious, wasn't really expecting it to work just if its possible to run binary files with guix system, or you have to pacakge with guix
<mjlbach>Is there a way to use the current directory as the input to (source) ? I see local-file, but that only seems to take a file object
<dftxbs3e>Whyvn, because that binary isnt statically linked
<dftxbs3e>mjlbach, on the command line you can try, --with-source=$(pwd) - but when I tried it earlier it wasnt always pretty
<mjlbach>Yeah I was hoping to encapsulate the source in the manifest, like i have previously done with nix-flakes/shells
<mjlbach>using the cli flag, I still need something defined in (package (source x)) or it will refuse to evaluate
<dftxbs3e>mjlbach, I think you can definitely use store items (Scheme records), in some way, you can define a store item with Scheme source code and without any file
<dftxbs3e>But I don't know how exactly
<mjlbach>Yes, this is outside of the store
<mjlbach>You can set the uri to a file object which points to the store
<mjlbach>I was hoping to just distribute a manifest.scm in my project's root directory
<mjlbach>Think I figured it out
<pricly_yellow>hello Guix. Сan i use a version higher than in Stackage LTS in contribution package?
<Whyvn>dftxbs3e: thanks, that makes sense
<PotentialUser-74>I have guix on top of a foreign distro, and when I launch bisq or intellij, I get the following complaint: /var/guix/profiles/per-user/lestephane/guix-profile/lib/gio/modules/libdconfsettings.so: undefined symbol: g_log_structured_standard. Any ideas what I should do or guix install to fix this problem?
<PotentialUser-74>This works if I guix installed openjdk:jdk: IDEA_JDK=$(dirname $(dirname $(readlink -f $(which java)))) idea1
<PotentialUser-74>but i want to use the jdk bundled with intellij (ie the default). So I'd rather solve the symbol lookup failure
<ss2>good morning.
<ss2>I've locally built ungoogled-chromium after which I copied the store item to another machine. But the recpient machine would still rather build the derivation than to use the copied over store item.
<leoprikler>Are the build machine and recipient machine running different Guix checkouts?
<ss2>yes
<ss2>do they have to be the same?
<leoprikler>If they're different you run the risk of it trying to build a different chromium (if the package itself or any of its dependencies changed in the meantime).
<leoprikler>Chromium has lots of inputs, so the hash changes regularly.
<ss2>The checkouts aren't far apart and both versions look the same.
<ss2>Could it be that an input changed in version that the hash changed from there?
<ss2>pulling checkouts now
<maxxcan>hello, I have a stupid question. It's normal that the /etc/config.scm file is read only?
<civodul>Hello Guix!
<maxxcan>hello everyone
<ss2>allright. That makes sense.
<ss2>yes, hello too. :)
<civodul>maxxcan: hi! maybe not, but note that it's just a convention: you don't need to store that file as /etc/config.scm
<civodul>is it what you got after installing Guix System from the ISO?
<maxxcan>civodul: I want to change it, but I don't know if is the best way change the permisions too
<ss2>leoprikler: so I'd have to go do a checkout where the paket can be used?
<ss2>*to
<ss2>maxxcan: Well you can. You can also make a local copy somewhere else and reconfigure the system while calling that local copy/edit.
<maxxcan>ss2: ok. thank you
<muradm>from when making a package i have source origin, in snippet i want to use some other package from store, what is the best way to do that, if possible at all?
<muradm>
<muradm>(source (origin .... (snippet '(begin ... here have path to executable from some package in store
<ss2>leoprikler: that also makes such big pakets with many inputs quite frickle in build farms.
<leoprikler>ss2 you can time-machine build as well, but more or less yes
<leoprikler>and yeah, such packages are problematic
<maxxcan>I'm goint to reboot. Thankss
<muradm>another question, what is the best way to include "po" translations from translationproject.org?
<muradm>I could not find any example in guix git
<civodul>muradm: normally packages already include their po files
<civodul>but if they don't, you can always add them as an input, using one or several origins
<muradm>civ
<muradm>civodul: there are which dont
<muradm>grub specifically has small script which does this:
<muradm>rsync -Lrtvz translationproject.org::tp/latest/grub/ po
<muradm>
<muradm>executing it in phases fails as there is no network connectivity
<civodul>muradm: but that's only for use by GRUB developers, i think
<civodul>see: tar tvf $(guix build -S grub) | grep '\.po$'
<muradm>yes, but they don't package grub since 2.04, i'm trying to build from git head
<muradm>in distribution 2.04 po's are there of course
<muradm>worst case may be i could get them from 2.04 source tar ball
<muradm>but i wanted to have complete build process in guix package
<civodul>i see, makes sense
<atom`>I'm trying to add a connection through nm-connection-editor (as far as I can tell this is the only way to add WPA Enterprise connections) and getting "Connection add failed: Insufficient privileges". Which group should my user be in to be privileged to do this? I am already in the netdev group.
<leoprikler>IIRC some of the operations in nm-connection-editor require root privileges and are bound to fail on Guix System.
<ss2>atom`: connections are edited with nmcli as root.
<ss2>or that's what I've resorted to.
<atom`>ss2: I couldn't figure out how to set the required settings with nmcli. I need to connect to an eduroam network, so: WPA2 Enterprise, PEAP authentication, CA certificate path, MSCHAPv2 inner authentication with username + password. Do you know if this is all possible with nmcli?
<ss2>oh that depends on your university.
<ss2>and how the login credentials are set up.
<ss2>better read ther info page and see how to replicate that in your profile.
<atom`>ss2: Yes these settings are from their info page. However they suggest using the nm-applet (which crashes due to a known bug when you try to connect to WPA Enterprise), and I was trying to replicate the same with nm-connection editor (which fails due to insufficient privileges as mentioned above).
<ss2>you can't edit the profile as a normal user, so you have to do it as root. nmcli has pretty much all the editing capabilities like nm-connection-editor. It's all text based, and is a bit tricky figuring all the right settings, but you'll get there.
<ss2>But I haven't set up an enterprise connection yet.
<atom`>ss2: Ok I will try to figure out how to do it with the CLI. Thanks!
<ss2>on Guix, but it was once my job at a university some part of my life ago. :)
<atom`>Not all heroes wear capes :D
<ss2>Can I see at which checkout a packet was built?
<reepca>trying to init a system with grub-efi, but towards the end I get "/gnu/store/xskzz78ivbsks4xhng8whyl0x3waw3sm-grub-efi-2.04/sbin/grub-install: error: /gnu/store/xskzz78ivbsks4xhng8whyl0x3waw3sm-grub-efi-2.04/lib/grub/i386-pc/modinfo.sh doesn't exist. Please specify --target or --directory."
<reepca>it seems instead of i386-pc in that path it actually has x86_64-efi. Any idea what might be causing that?
<civodul>hi reepca!
<civodul>is /boot/efi mounted?
<civodul>i think that's how grub-install determines whether to do UEFI or not
<reepca>no, only ~/mnt/boot/efi is mounted. I'm trying to init an efi system onto a flash drive from a non-efi system
<atom`>ss2: Got it working now with some work using nmcli.
<atom`>For reference, the commands I used to get it working was (with sudo): nmcli con add type wifi con-name eduroam ssid eduroam; nmcli c modify eduroam connection.interface-name wlp4s0 wifi-sec.key-mgmt "wpa-eap" 802-1x.ca-cert "file://<path>" 802-1x.eap "peap" 802-1x.identity "<id>" 802-1x.phase2-auth "mschapv2" 802-1x.password "..."
<reepca>trying again after creating /boot/efi and bind-mounting it to itself
<reepca>... and the copying phase restarts from scratch. So I guess we'll see whether it works in 2 hours or so
<reepca>I have to wonder whether something's funky with this flash drive or the usb port it's plugged into that it takes that long
<ss2>nice one!
<civodul>reepca: that's the ISO installation image for 1.2.0?
<reepca>civodul: no, I'm running 'guix system init' straight from my main system
<civodul>oh i see
<reepca>command finally failed with the same error as before
*reepca --> sleep
<civodul>reepca: oh :-/
<AllanAdair[m]2>Hi. Anyone know how to include libstdc++ as an input? I'm hoping to have libstdc++.so appear in a /lib directory
<civodul>sneek: seen mothacehe
<sneek>mothacehe was in #guix 3 days ago, saying: civodul: I just replied :).
<civodul>AllanAdair[m]2: hi! libstdc++.so is in the "lib" output of "gcc" or "gcc-toolchain"
<adfeno>apteryx: Re: locale issue: I found what was missing for me
<adfeno>I forgot that all Guix-installed packages use GUIX_LOCPATH instead of LOCPATH, and while I did follow the advice from Guix's info document telling us to do `export GUIX_LOCPATH=$HOME/.guix-profile/lib/locale`, the package I was testing (Minetest) stored locales uder …/share/locale.
<leoprikler>IIRC lots of programs do that, but I think they should come with some bindtextdomain
<apteryx>adfeno: oh! So you can get it work?
<leoprikler>guix environment --ad-hoc minetest -- minetest < launches in German for me
<adfeno>apteryx: Yes
<adfeno>I suspect this is the same issue as of R
<adfeno>R from Guix that is
<adfeno>leoprikler: ^
<adfeno>I agree they should come with some bindtextdomain
<adfeno>Otherwise all stuff goes to share :S
<leoprikler>what I mean is that stuff going to share is not really an issue
<leoprikler>if `guix environment` launches them fine, it can't possibly need stuff from my $GUIX_LOCPATH, that it hasn't written to.
<pkill9>does anyone kow how I might go about caling `guix build` from within guile?
<pkill9>generally using any of the command line interfaces
<pkill9>I know they are kept in 'scripts' directory
<pkill9>i don't know how I might access them directly though
<civodul>right, so you can always do, say: (use-modules (guix scripts build))
<civodul>and then: (guix-build "libreoffice" "-n")
<civodul>but note that this is not the right way to integrate Guix as a library
<pkill9>thanks! that's so simple!
<pkill9>it's alright, it's for a script
<pkill9>actually wait hmm
<pkill9>I think I may need to access it as a library
<pkill9>to pass it a package object
<pkill9>essentially I want to do (guix-build <package-object>)
<pkill9>plus flags to add a garbage collector root
<civodul>see 'build-package' in (guix scripts), then
<civodul>ah well, you may have to write a bit of code yourself
<pkill9>there is a register-root function in scripts/build.scm
<pkill9>maybe I could use that?
<adfeno>leoprikler: Sorry, I expressed myself incorrectly
<adfeno>I meant: Minetest *does* call bindtextdomain
<adfeno>But what worries me is that the stuff goes to other place than lib/locale
<leoprikler>that should not be worrying, lots of packages do that.
<adfeno>leoprikler: Really? I thought that the correct place would be lib/locale, not share/locale .
<leoprikler>GNU Makefile conventions have localedir = $(datarootdir)/locale
<leoprikler>lib/locale feels like an exception for something particular, that I don't think applies here.
<adfeno>Ah, I see
<adfeno>I wonder however, why does Guix's info document advise to use lib/locale
<adfeno>?
<leoprikler>because there's also stuff there, just other stuff
<leoprikler>I think it's just libc
<pkill9>civodul: where would I look for making code that does what I want (basically the guix-build script but taking a package object instead of a specification)?
<pkill9>(so that I can give it the garbage collector root option)
<civodul>pkill9: you can look at (guix scripts build), but like i wrote, 'build-package' in (guix scripts) does part of what you want
<civodul>so yeah, browse these modules and pick what's useful to you :-)
<pkill9>ok
<pkill9>I can't get build-k=package to work, I give it a package object, it returns a procedur
<pkill9>a procedure that wants something
<pkill9>but it's not clear what it wants
<adfeno>leoprikler: Ah, I see, indeed I found only libc stuff
<adfeno>that explains a lot, sorry for bothering.
<Whyvn>what is the default sound package used for guix system? is it alsa or pulse audio?
<leoprikler>Assuming you used the desktop template, it's likely PulseAudio.
<Whyvn>leoprikler: thanks, I just did graphical install and did not change any defaults that were recommended or set so most likely so.
***ztrawhcse is now known as elibrokeit
<cage_>i sucessfully compiled guix from git, i have dadde a package definition to one of the exixting file (lisp-xyz.scm) on the git tree
<cage_>how cai i test building the package i have added?
<cage_>*can i
<leoprikler>./pre-inst-env guix build
<cage_>i tried: ./pre-inst-env guix build cl-tooter
<cage_>leoprikler, thanks! This is what i tried but i get the error: guix build: error: cl-tooter: unknown package
<leoprikler>did you define cl-tooter publicly?
<cage_>i have appended in the file '(define-public sbcl-tooter ...)'
<cage_>i was able to build the package using a local file
<simonsouth>cage_: Have you run "make make-go" to build your changes?
<cage_>simonsouth, yes and the lisp-xyz.scm was compiled to lisp-xyz.go
<simonsouth>Odd then. "./pre-inst-env guix build" should work after that.
<cage_>simonsouth, thanks for your help anyway! :)
<cage_>probably i made a mess building guix from source
<simonsouth>cage_: Perhaps paste the output of "git diff" to paste.debian.net and post the link here so we can take a look.
<cage_>ok!
<cage_>here the link to the diff: https://paste.debian.net/1187328/
<cage_>thanks again!
<simonsouth>Well nothing looks obviously wrong to me. Let me try building this myself...
<simonsouth>That seems to work for me. "./pre-inst-env guix show cl-tooter" shows the package, and "./pre-inst-env guix build cl-tooter" starts to build it.
<simonsouth>Not sure what to suggest. You could try forcing a rebuild of the Scheme module with "touch gnu/packages/lisp-xyz.scm; make make-go".
<simonsouth>Then "./pre-inst-env guix show cl-tooter" and see what you get.
<cage_>i sill get the error, seems there is somenthing broken on my system :(
<joshuaBP`>morning guix!
<simonsouth>cage_: Very strange. Wish I could be of more help.
<simonsouth>cage_: Incidentally, what are the changes to environment.scm for? That's something I don't have on my system.
<cage_>simonsouth, you helped a lot, at least i know that the package works :)
<Ikosit>Is there a reason not to update kbd on version 2.4.0? If not i will package it.
<cage_>these changes are related to a guix bug: https://issues.guix.gnu.org/issue/46826
<simonsouth>cage_: Ah. I tried reproducing that change here and "guix show" still shows the package, so I suppose that's unrelated.
<cage_>that's good :)
<civodul>cage_: i was looking at https://issues.guix.gnu.org/46826 and have a slightly different fix
<Whyvn>I am trying to build my first package, how can I get the sha256 checksum from the cloned repo? sha256 doesnt seem to work on directories
<cage_>civodul, hi, the fix is not actually mine (i am ignorant about guix and guile in general) i just steeped into the bug on my system :)
<leoprikler>guix hash -rx
<Whyvn>leoprikler: thank you. I thought I heard somehwere when making the checksum to not include the .git file in it
<Whyvn>is this true?
<leoprikler>that's what -x does
<Whyvn>ok, thank you for clarification
***Noisytoot is now known as impostor
***impostor is now known as Noisytoot
***rekado_ is now known as rekado
<pkill9>it's possible to run wayland applications remotely like with X11 forwarding :D
<pkill9>i got waypipe working
<pkill9>i'm running sway remotely :D
<pkill9>definitely gonna package that
<joshuaBPMan>Hey guix!
<joshuaBPMan>I've just sent my patch for adding an endlessh service
<joshuaBPMan> https://lists.gnu.org/archive/html/guix-patches/2021-03/msg00033.html
<joshuaBPMan>The service runs as root, but I've got a call to make-forkexec-contructor/container in there.
<pkill9>what does that do?
<pkill9>the call i mean
***spk121_ is now known as spk121
***sneek_ is now known as sneek
<zimoun>hi
<sneek>Welcome back zimoun, you have 2 messages!
<sneek>zimoun, dongcarl says: Thanks for following up in the "Extending package transformation options" thread, I'm not familiar enough with Guix internals to comment but I'm reading every email and learning a lot! :-)
<sneek>zimoun, dongcarl says: Thanks for following up in the "Extending package transformation options" thread, I'm not familiar enough with Guix internals to comment but I'm reading every email and learning a lot! :-)
<civodul>hey!
<zimoun>g_bor[m]: hi! Are you available for the last meeting?
<nojr>hello :)
<nojr>I've been learning guix on my free time for over a year now.. I've contributed two packages so far by watching the videos on the website
<shcv>what's the right way to define a package for basically "the stuff in this directory" for use with `guix pack -f docker`?
<nojr>I'd like to now learn guile seriously, does anyone have any helpful tips? It's hard to find material to start learning
<nojr>if it helps I know python and a bit of Emacs
<zimoun>shcv: do you mean the ’--load-path’ option?
<nojr>I've tried to start with things I'm familiar with like Haunt but honestly it's hard to follow the docs
<nojr>and also hard to understand the guix website source code, that's what I've been doing now for a couple months
<nckx>Morning, Guix.
<shcv>zimoun: I don't think so. Actually, I just realized that my code is probably included in one of the packages I already made, and I can probably just use --entrypoint
<shcv>but my question was about how to cover the generic "docker-like" case, of including a "guix package file" in a repo vs a Dockerfile
<shcv>then use `guix pack -f docker -m <file>` to build a container out of it
<shcv>nojr: I'm also curious (though I haven't looked much) to find some more tutorials that go over proper workflows for guix development
<shcv>I've tried using the emacs tools but haven't gotten them to work reliably
<nojr>shcv: I think this is a great opportunity to improve the docs. People less experienced like me could provide feedback on wording and phrasing to make the docs more accessible
<fossguy[m]11>getting this error when installing guix on gentoo with openrc init: https://paste.gnome.org/pkt1f8onw
<fossguy[m]11>the guix command isn't also available
<muradm>nckx: i have two questions... 1) in fresh installed guix system profile i gets, when i query store for gnupg let's say, I get gnupg-2.25, but if I add gnupg explicitly to (operating-system (packages ..., after reconfiuration same query returns gnupg-2.27. my question: what makes gnupg-2.25 present?
<muradm>shouldn't guix pull && guix system reconfigure ... update whatever packages?
<nckx>fossguy[m]11: The ‘cp’ error assumes that you've run ‘guix pull’ as root (either logged in as root, or with ‘sudo -i’). It seems you haven't? N.B. I don't know why it assumes that or if the assumption is correct.
<nckx>muradm: What do you mean by ‘query store’?
<zimoun>shcv: I do not understand what you mean by: «but my question was about how to cover the generic "docker-like" case, of including a "guix package file" in a repo vs a Dockerfile». What do you mean by “generic docker-like case” and “guix package file”?
<muradm>nxkx: (use-modules (guix store) (gnu packages gnupg)) (let* ((s (open-connection)) (p (run-with-store s (package-file gnupg "/bin/gpg"))) (c (close-connection s))) (display p))
<muradm>something like that
<dftxbs3e>cbaines, interesting way to find outdated packages: https://repology.org/projects/?inrepo=gnuguix&outdated=1
<nckx>How are you running that command? The ‘gnupg’ in your code comes from whatever's interpreting it; the store does not provide packages or versions; perhaps you're evaluating that code with an older ‘guix repl’ or so?
<muradm>how can i have older version guix repl? if i did guix pull && guix system reconfigure? )
<dftxbs3e>muradm, guix time-machine --commit=blah -- guix repl
<nckx>dftxbs3e: Lots of false positives though, adding ‘&families_newest=2-’ improves that slightly.
<dftxbs3e>muradm, guix time-machine --commit=blah -- repl
<muradm>dftxbs3e: not so familiar yet )
<muradm>never touched time-machine
<nckx>muradm: Could you share a working code snippet, not ‘something like that’?
<muradm>fresh installing from guix-1.2.0
<maxxcan>I don't like time machine because play with space-time is very dangerous
<nckx>Guix-1.2.0 isn't that fresh 😉
<nckx>muradm: So ‘guix show gnupg@2’ shows .27?
<muradm>nckx: yes for guix show
<muradm>nckx: guix pull && guix system reconfigure does not make fresh?
<nckx>Yes, ‘guix pull’ suffices to make it so.
<fossguy[m]11><nckx "FossGuy: The ‘cp’ error assumes "> I was installing guix with the script as root
<muradm>nckx: let see for snippet where i faced that
*nckx will return.
***ChanServ sets mode: -o nckx
<zimoun>maxxcan: time-machine is at the “pull” level what “environment” is at the “package” level.
<muradm>nckx: 1) this is how i think i solved issue, there are comments also: https://gist.github.com/muradm/8cf0192dd28154d881c5c7ae657f2531
<nckx>fossguy[m]11: I think there might be a bug in the installer then (hard to tell without a Gentoo box); does /root/.config/guix/current/etc/openrc exist? If not, what are the contents of /root/.config/guix/current/etc, if any?
*nckx to dinner, will be a while.
<fossguy[m]11><nckx "FossGuy: I think there might be "> No, openrc dir doesn't exist
<fossguy[m]11><nckx "FossGuy: I think there might be "> dirs under that are: bash_completion.d init.d profile
<muradm>nckx: this one https://gist.github.com/muradm/959ab35cfbe8481880d5c255acb9690f
<muradm>user level shepherd service
<muradm>gpg agent starting was 2.25, but in my desktop profile explicitly installed gnupg was 2.27
<muradm>it was always was giving warning that gpg agent is older
<muradm>now i think i remember from comment in shepherd script, shepherd comes with guile-3.0.2 in its shebang
<muradm>so presumably as far as understand from your comments guile-3.0.2 may see old packages/profile/what?
<johnwind>guix refresh: error: https://XXXX/XXX/XXX/release: HTTP download failed: 401 (Unauthorized) , can someone help me understand why this happen even with GUIX_GITHUB_TOJKEN
<Christoph[m]>Hi guix!
<Christoph[m]>How is the state of the IPFS integration?
<dftxbs3e>Christoph[m], WIP, basically current implementation uses UnixFS v1 IPFS object that is not suitable because UnixFS v1 can't store file permissions. I don't know if UnixFS v2 solves this issue but the implementation will have to be adapted, for now no one showed up to do that so it's there waiting for love.
<dftxbs3e>Christoph[m], we need file permissions for executable bit mainly
<Christoph[m]>Will there sharing via IPFS?
<dftxbs3e>Christoph[m], when it's implemented, yes
<dftxbs3e>Christoph[m], also there is things around gnunet
<Christoph[m]>I mean, will my computer be contribute to the IPFS then?
<dftxbs3e>Christoph[m], you will have the option of doing so then yes, I don't think that will ever be default though.
<Christoph[m]>Thank you, dftxbs3e!
***lovetolearn is now known as ltl2
<cantillion>Hello, I'm trying to launch Intellij on a foreign distro (ubuntu) from a guix environment, and am hitting the following error: /opt/jetbrains/apps/IDEA-U/ch-1/203.7148.57/jbr/bin/java: symbol lookup error: /var/guix/profiles/per-user/SCRUBBED/guix-profile/lib/gio/modules/libdconfsettings.so: undefined symbol: g_log_structured_standard. Does anyone have a clue what I could do to resolve this symbol lookup error?
<shcv>anyone recognize this error: guix pull: error: open-file: Permission denied: "/var/guix/profiles/per-user/shcv/current-guix.lock"
<shcv>I'm just trying to do "guix pull", and that happens right after pulling the channels
<mdevos>cantillion: intellij isn't packaged in guix?
<mdevos>and isn't it propietary software?
<mdevos>shcv: is this on a foreign distro?
<shcv>no
<mdevos>Also, when was the last time you upgraded the system? There were some changes in the guix daemon regarding profiles in the past
<nckx>shcv: Looks like you ran ‘sudo guix pull’? Try ‘chown -R shcv:shcv /var/guix/profiles/per-user/shcv’ and pull again.
<mdevos>(something to do with a security issue IIRC)
<nckx>Without sudo, of course.
<shcv>huh
<shcv>apparently that was the problem; I don't remember doing that though
<cantillion>mdevos: intellij is proprietary, and it's on a foreign distro. FYI, Launching it with the guix-supplied openjdk:jdk works. But the jdk bundled with intellij has various speed improvements. I'm just trying to understand how I can provide it the g_log_structured_standard it's looking for. I have guix installed glib already, so I'm running out of ideas.
<nckx>muradm: Who is invoking <https://gist.github.com/muradm/8cf0192dd28154d881c5c7ae657f2531>? How do you know that ‘/usr/bin/env -S guix’ refers to the up-to-date guix?
<mdevos>cantillion: IIUC, there's a reluctance to discussing how to use non-free software on #guix. That said,
<shcv>cantillion: maybe look at the --preserve/-E option for preserving environment variables?
<nckx>Less a reluctance than a flat-out refusal.
<cantillion>mdevos: understood
<cantillion>then ignore my question
<mdevos>(actually I don't have any advice other than using guix' openjdk anyway, or using the foreign distro's openjdk)
<cantillion>mdevos: thx
<mdevos>nckx: some exceptions are made though, if the ‘use’ is externally impose. E.g., MS Teams some time ago. Though suggestion (a), (b) and (c) were (a) ask employer not to, and (b) flat-out refuse, and as a last resort (c) well, if you can't find another way ...
<mdevos>*imposed
<nckx>They shouldn't be, though.
<nckx>I phrased that poorly. There isn't.
<mdevos>nckx: There isn't what?
<nckx>There's no ‘oh, well if you have to!’ exception.
<nckx>Not sure where that impression came from. Sorry it happened.
<lfam>Say I wanted to graft the python-2.7 package. The python2-called-python package would need to use package/inherit, right?
<nckx>Ugh, is this going to be on the exam...
<nckx>...I think so?
<lfam>I think it's unlikely anyone is still going to match that package definition
<mdevos>nckx: What's your opinion on <http://logs.guix.gnu.org/guix/2021-02-26.log#133024>? That's what I am was referring to
<lfam>I think so too nckx
<lfam>Tricky
<lfam>I'm not certain
<lfam>I haven't though very much about superseded packages before
<lfam>Difficult to test at this point
<mdevos>nckx: Have Guix maintainers formally taken a stance on whether discussing how to ‘use’ free software on #guix is allowed? We all have somewhat different approaches on how to approach (well, avoid and/o eliminate I guess) propietary software
<nckx>mdevos: Since you ask, I'd say that <http://logs.guix.gnu.org/guix/2021-02-26.log#133652> ‘violates the rules’ (huge quotes, because I don't want that to be the tone of the discussion). Otherwise it would be too easy to skirt the FSDG simply by prefacing ‘well, you shouldn't install MalSoft... but here's a tutorial if you insist’.
<nckx>mdevos: Oh it's a gigantic minefield ☺
<nckx>I don't think we have.
<mdevos>nckx: oops... Yep, this could easily lead to a slippery slope
<nckx>dftxbs3e's answer below it is the GNU answer 😉
<lfam>I think we need to remember our goals
<shcv>we should have an irc bot with answers to these questions
<lfam>We want to guide people to using free software
<shcv>e.g., stock statements about free software, guidelines, etc.
<nckx>I doubt it's even possible to formulate formal rules that are airtight and don't invite outright abuse. As lfam says, it's not about the rules or the wording, but the spirit.
*nckx shoves the tasty words into the lfam mouth.
<shcv>plus possible recommendations of alternatives for specific software people want to run
<lfam>It's difficult to guide people, or persuade them, if they don't like you
<lfam>So, be firm but friendly and helpful
<lfam>I agree with nckx
<shcv>like fsbot in #emacs
<shcv>btw, I agree with everything that's been said; the official guix stance is not to encourage the use of nonfree software
*nckx may or may not send the occasional /msg with resources where the asker might find answers, without having to furnish them myself, which I genuinely don't feel OK doing. But nor do I think ‘no, go away’ is acceptable. The danger is that people might listen; and they'll stay away.
<nckx>A (to us, logical and) polite ‘no, go away’ can still have this effect.
<lfam>I think that responding to a request for help or advice is usually not a good time to to explain the GNU principles to somebody. I spent a lot of time reading them, when I was in the mood
<shcv>*however* (to add some controversy :P) it almost feels contrary to the idea of "free software" to restrict how people use it
<lfam>Yup :)
<lfam>It's a complicated issue
<lfam>It's why I think we should remember our goals (to create and spread free software) and (one of) our tactics: be friendly and helpful
<nckx>shcv: We don't do that, either. Or we shouldn't. We restrict what's on topic here, and proprietary software isn't.
<shcv>I wonder how hard it would be to just add a copy of fsbot to the channel, and teach it some new phrases
<lfam>I think it would turn people off, if they started getting canned replies from a bot
*nckx not a fan of bots.
<shcv>not automated replies, just easy to reference quotes
<lfam>We actually already have a bot that can do that
<lfam>Sneek has that feature
<shcv>ah
<nckx>shcv: ‘fsbot: !fsbasics’ style?
<lfam>But, it's rarely used, because it's basically on-topic spam
<shcv>sure; or ",guidelines"
<nckx>Not to mention sneek is... special.
<nckx>sneek: What is free software?
<lfam>sneek: free software is what we are all about
<sneek>I'll keep that in mind.
<nckx>Forgetful too.
<lfam>sneek: What is free software
<sneek>I've heard free software is what we are all about
<shcv>heh
<nckx>(I taught sneek about this new ‘free software’ fad last year.)
<efraim>sneek: what is the cake
<lfam>Sneek is forgetful
<sneek>So noted.
<nckx>Lol.
<shcv>lol
<lfam>sneek: forget it
<sneek>Consider it forgotten.
<nckx>sneek: What is forgotten?
<shcv>seems a bit hard to use
<lfam>I messed up
<lfam>Sneek used to have a definition of itself
<efraim>sneek: botsnack
<lfam>Oops
<sneek>:)
<nckx>shcv: Yeah.
<apteryx>linking with .a requires that .a to have been produced with the same toolchain, correct?
<nckx>According-to-some-reports-yes.
<nckx>At least, it seems to be unsafe to assume the contrary.
<mdevos>it depends (it can be important for C++)
<shcv>or at least a stable ABI?
<mdevos>mixing C compiled by clang & gcc should be ok though
<apteryx>stable ABI. IIRC GCC's ABI is stable, yes?
<shcv>how can I figure out why mosh-server isn't running when I invoke "mosh <remote>", but it is there when I ssh directly?
<nckx>I've had trouble with mixing GCC+clang before but I can't vouch for the sanity of the subject code.
<lfam>shcv: It's likely a PATH issue on the remote
<lfam>Try inspecting PATH from ssh
<lfam>Are you using Guix System or another distro?
<lfam>It's more likely a problem on other distros
<shcv>GuixSD; my .zprofile has "source /etc/profile" in it - shouldn't that be enough?
<shcv>or do I need a reference to my personal profile?
<lfam>We take steps to fix it on Guix System, but I don't know if we do for zsh
<lfam>The problem is that, by default, OpenSSH creates a remote non-login environment
<lfam>But, Guix assumes a login shell
<lfam>So, .zprofile is only used at login
<shcv>I don't have a .zshrc, so .zprofile should be the only thing running for a login shell, and that works
<mdevos>apteryx: ... theoretically, yes until it's updated.
<mdevos>But sometiems, mistakes are made: https://gcc.gnu.org/gcc-10/changes.html
<mdevos>*sometimes
<shcv>but maybe mosh doesn't get a login shell?
<apteryx>mdevos: thanks the insights
<lfam>I'm saying that OpenSSH (which mosh is based upon) doesn't give you a login shell
<lfam>Mosh uses SSH for the authentication step, before launching the mosh tunnel
<shcv>ah; needed to copy my .zprofile to .zshenv; I guess it doesn't run .zprofile for some reason
<shcv>I think it was a default generated .zprofile
<lfam>You should fix it properly, or it will break `guix environment`
<lfam>zshenv is sourced for every shell
<shcv>maybe make it the .zshrc instead
<lfam>No, same thing
<shcv>hmm
<shcv>then what does "properly" mean?
<lfam>Fix it the same we fix things for SSH+Bash
<lfam>The sameway
<lfam>Same way
<lfam>I'll find it
<shcv>I could customize the ssh command that mosh uses
<shcv>or customize the remote mosh-server command to ".guix-profile/bin/mosh-server"
<lfam> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/system/shadow.scm?h=v1.2.0#n133
<nckx>mdevos: ‘discussing how to ‘use’ free software on #guix is allowed’, depends on the use. ‘Use’ is not some amoral cover-all. Bluntly: you're allowed to use Guix to build nuclear bombs or run MSTeams (and I actually support your very abstract right to do either), but you shall receive no instruction here.
<lfam>We have to detect if SSH is in use, and then manually run the login shell initialization
<lfam>For Mosh, it will only help during authentication, but a new environment is created for Mosh
<lfam>shcv ^
<shcv>so, put that in .zshrc?
<lfam>No, in gnu/system/shadow
<shcv>oh
<lfam>Sorry, I don't have time to explain it, but I recommend reading about the difference between login and non-login shells, and interactive and non-interactive shells. And then the STARTUP/SHUTDOWN FILES part of the zsh man page
<lfam>For Guix, it's important to use them properly or things will break
<lfam>We have taken care that things work with Bash, but not fully with Zsh
<lfam>And, probably, not with Zsh and mosh
<Whyvn>im on day 3 (stopping and starting again) of trying to build guile-emacs. I started it at 12am last night and it is currently 12pm. I checked strace and this has been looping for over 8 hrs. Is this a good sign it is frozen? http://paste.debian.net/1187390/
<nckx>Yeah.
<nckx> http://logs.guix.gnu.org/guix/search?query=sigxcpu
<lfam>Does guile-emacs work, like, at all?
<lfam>It's one of those packages that people are asking about often
<nckx>Hm, I was talking about guix-daemon then. So this is the 2nd time, I guess. But throwing SIGXCPU seems to be a weird failure mode of a very dead Guile.
<Whyvn>thats unfortinute, thanks for clarification
<nckx>Sorry! I don't follow guile-emacs development, but I'm afraid my general impression of it is ‘dead’.
<nckx>Shame because I'd run it if it worked.
<lfam>Maybe we should remove the package...
<Whyvn>all my cpu cores are clearly working on something, but seems to be making no progress
<lfam>I think that it *is* expected that it take a long time to build
<shcv>would be nice if guile-emacs and native-comp could somehow work together to become v28 or 29
<lfam> https://www.servethehome.com/solidrun-honeycomb-lx2-server-announced-1u-2-node-arm/
<nckx>Wait, http://git.hcoop.net/?p=bpt/emacs.git *is* our upstream? I thought I was looking at a dead development repo. C'mon people, look at those dates.
<nckx>lfam: Maybe we definitely should.
<lfam>Seems useful
<nckx>What?
<lfam>Oh, you meant remove the package
<nckx>Yes.
<lfam>The package doesn't seem useful if it doesn't build, no
<Whyvn>especially if you expect it to take a while, but yet it never finishes.
<abcdw>Why do etc-service accepts `(("path" ,file)), while session-environment `(("VARIABLE" . value))?
<Whyvn>if I cancel, will there me any traces of the current progress left on the system?
<nckx>If there's a (somewhat hypocritical) outcry about it's removal, that might be its best hope at development being restarted.
<lfam>Yes Whyvn
<Whyvn>if so, how can i remove them. I dont want a half installed package
<lfam>Oh, no
<lfam>That's not a thing on Guix
<nckx>Barring a failing drive or file system, Guix can't half install or remove things.
<abcdw>s/value/,value/
<Whyvn>ok thanks
<abcdw>Is this inconsistency exists for a reason or just some legacy?
<lfam>abcdw: I'm not an expert Schemer, but I think they are doing different things
<shcv>maybe the first version can sometimes take a third argument?
<nckx>abcdw: Which inconsistency? Are you saying that (define string "strang") (... `(("VARIABLE" . string))) will actually work?
<shcv>the second form is the syntax for a single pair
<lfam>The first one is unquoting "file", and the second one is a dotted pair
<nckx>Oh, I missed the dot.
<lfam>I'd guess the implementation is different
<lfam>The people in #guile could really explain it
<nckx>I think it's just a design choice.
<abcdw>ok, I found it out. It's due to fact that file-union accepts a list of lists instead of list of pairs.
<lfam>It is one of those things that is just baffling is you don't know scheme
<nckx>Yeah.
*lfam looks around
<nckx>‘The simple minimal language that still fucks with your mind.’
<shcv>a good question is *why*
<shcv>maybe the lists that file-union accepts sometimes have additional parameters, like the parameters to native-inputs
<abcdw>shcv: I agree and also interested why. The sad thing is despite the answer the implementation won't be changed)
<abcdw>shcv: Nope, it only takes target and source out of the list and operate on them. No capabilities for any additional items in the list.
<abcdw>nckx: I wouldn't say that scheme is minimalistic)
<nckx>I think it's just an (aesthetic) design choice.
<nckx>abcdw: Oh.
<shcv>well, I guess inconsistencies are to be expected given that humans (and more than one at that) are working on the project
<lfam>Yeah, I think that's the answer
<lfam>Somebody asked why I implemented a service some way, and it was the only way I knew how to do it
<abcdw>shcv: yep, it's ok, just was curious about the reasons behind the implementation choices.
<abcdw>I review the patch for similar service for `guix home` and this inconsistency came to my eyes. Now I have a choice: to go the way of etc-service or use pairs as in session-environment-service
<abcdw>s/review/was reviewing/
<nckx>Knowledge is a curse.
<nckx>(I think it's clear which you prefer?)
<abcdw>nckx: so true)
<shcv>do y'all have libre computers? Which do you use / recommend?
<abcdw>nckx: I don't have an exact preference, because I'm not very fluent with scheme patterns. It is logical to use pairs here, but I also want to be as close to `guix system` implementation as possible.
<shcv>well, now you know you can pick whichever you like and not be wrong :P
<nckx>FWIW (little) I prefer the ‘moar correct’ pairs.
<shcv>if you know you'll never need additional parameters, pairs make some sense
<abcdw>shcv: about libre computers. Don't think so. Depends on your requirement. Laptop or desktop?
<shcv>laptop probably; but then I'm just looking casually at the moment
<abcdw>shcv: the sad reality is: whichever I pick I would be wrong in some sence)
<nckx>shcv: And if you want to hedge against extreme extensibility, maybe a list isn't the best way to do so (vs. keywords, records, ...), is my thinking.
<shcv>though lists are compatible with keyword-based pairs I think?
<nckx>‘We might want to give this third element special meaning some day’ self-documenting is not.
<lfam> https://github.com/nmap/nmap/issues/2199#issuecomment-787623648
<nckx>shcv: I don't (anymore).
<abcdw>shcv: librem, pinebook, old thinkpads.
<nckx>lfam: Please put a trigger warning on nmap licence content 😮
<lfam>Lol
<nckx>The ‘nmap is non-free’ FUD, it... comes to me in the night.
<lfam>It's worth noting that the NPSL's derived works language was basically just copied over from the previous Nmap license where it has been for more than 17 years in the COPYING file, on the top of every source code file, in the man page, etc.
<lfam>That's a quote
<nckx>Yeah.
<lfam>Like... oops
<nckx>Big suprise to anyone who actually read the licence, whoop.
<nckx>lfam: Why is that an oops, though?
<lfam>Seems like nobody ever read it closely
<nckx>Nobody's claiming that nmap is GPL software, I think?
<shcv>reminds me, is there a "license recognizer tool"?
<lfam>If distros have a problem with it now, and it's basically the same as before...
<shcv>Because there are some license formats that don't identify themselves in the text
<shcv>e.g. the 2-clause BSD license I think
<lfam>I think the ultimate license recognizer tool is the process server knocking on your door
<shcv>well, yes
<nckx>shcv: licencecheck is in Guix.
<lfam>Seems like the nmap folks want it to be free
<nckx>But any such tool comes with the obvious mega-caveat.
<shcv>yeah; just to help me identify the license if I don't recognize it. Obviously it's good to check to make sure
*abcdw curious, where is a sneek?
<lfam>In the sneekiverse
<lfam>Sneek's human lives in #guile, I think
<nckx>Their name is dsmith.
<nckx>Maybe I should update nmap for the 3rd time.
<nckx>For the lols.
*nckx won't.
<abcdw>lfam: I probably just misspelled his name and was surprised not to find him. He is here. Everything is fine)
<leoprikler>[PATCH] gnu: Update nmap to 8.0
<cage_>civodul, i have seen you pushed a patch for compilation bug with guile-2.2, i am going to test it asap :)
<pkill9>what is it that creates /run/user/<number>?
<shcv>anyone have an example for installing and running docker?
<nckx>pkill9: elogind.
<pkill9>i don't see it on my vps
<pkill9>looks like i don't have it added
<nckx>Probable. It's seldom used on servers.
<civodul>shcv: there should be a docker-service-type example in the manual
<pkill9>i'm getting this error when deploying: guix deploy: error: open-file: Permission denied: "/home/itsme/.cache/guix/checkouts/last-expiry-cleanup"
<pkill9>how can i fix?
<nckx>Who owns that file?
<nckx>The ‘fix’ is probably: ‘chown -R itsme:itsme ~/.cache/guix/checkouts’, but hey, it's a cache... ‘rm -rf’ is a fix too.
<nckx>Would be good to find out who owns it & why though. Accidentally running guix with sudo is the most likely culprit.
<pkill9>i removed .cache/guix and it still says it
<pkill9>.cache is owned by my user
<pkill9>hmm
<nckx>"/home/itsme/.cache/guix" does not exist and you get ‘Permission denied: "/home/itsme/.cache/guix/checkouts/last-expiry-cleanup"’?
<pkill9>it's setup to ssh as that user also
<nckx>Hmm indeed
<nckx>I've never deployed; I'm not sure why that could be.
<pkill9>yea i'm getting it with that
<nckx>I guess in your situation I'd create a world-writable ~/.cache/guix, run deploy again, and see what was created and by which user. If it contains files owned by itsme, I'm flummoxed.
<pkill9>i did that and it's still doing the same error
<pkill9>weird
<nckx>Def.
<nckx>Worth a bug report at this point.
<raghavgururajan>* Giara - A free-software client for Reddit (#46862) * \o/
<rg-web>Folks! How do I create a custom system-wide environment variable?
<sneek>rg-web, you have 1 message!
<sneek>rg-web, nckx says: Are you blocked from using your regular nick because of this?
*rg-web is raghavgururajan without Gajim
<rg-web>leoprikler: Sorry for asking again, you mentioned about a service-type for this. Could you give mean an example?
<rg-web>I would like to create `QT_QPA_PLATFORMTHEME=qt5ct` environment variable system-wide.
<dftxbs3e>raghavgururajan, hey it's a bit annoying you didnt use git-send-email for your 46862 patch
<nckx>rg-web: That message is utterly ancient.
<rg-web>Giara one?
<nckx>sneek one.
<dftxbs3e>rg-web, yes
<rg-web>dftxbs3e: I used git format-patch.
<dftxbs3e>rg-web, yes but with attachments I can't apply automatically
<nckx>Half a year or so.
<rg-web>dftxbs3e: I am confused. Isn't git format-patch the formal way to generate patch? It is as close to git-sendmail
<rg-web>nckx: I figured. xD
<dftxbs3e>rg-web, there's no tooling to apply a patchset sent in attachments by email made by git format-patch
<rg-web>nckx: By any chance you know how to set custom env-var?
<lfam>With Mutt it's really easy
<lfam>You can also download the patches and use `git am`
<rg-web>dftxbs3e: Ah sorry that you had hard time applying the patch. I have been using git format-patch for long time and had no complaints. But I will also look into git sendmail. :-)
<nckx>rg-web: System-wide? Maybe session-environment-service-type is what you want.
*nckx → zzz.
<rg-web>Night nckx.
<mroh>Sleep well, nckx
<rg-web>I couldn't find session-environment-service-type in manual and not sure what fields to use. Anyone have an example please?
<dftxbs3e>lfam, so I need to figure out the order of patches, download each of them in a directory, use git am on each of them... very troublesome and annoying
<rg-web>dftxbs3e: The patches are auto-numbered.
<rg-web>0001, 0002, 0003 ...
<rg-web>Is this correct? https://paste.debian.net/1187441/
<dftxbs3e>rg-web, I know that, but with git-send-email I just do: curl "https://debbugs.gnu.org/cgi/bugreport.cgi?mboxmaint=yes;mbox=yes;bug=46862" | git am -s
<rg-web>dftxbs3e: I see. I will try to learn and setup git-sendmail. Hope you understand.
<dftxbs3e>rg-web, if you can it's easier
<lfam>I actually think the easiest thing is for the entire patch series to be in one file
<dftxbs3e>lfam, then we can't do inline comments
<rg-web>lfam dftxbs3e: By any chance you know how to use session-environment-service-type?
<rg-web>Not sure if this is correct, https://paste.debian.net/1187441/
<dftxbs3e>rg-web, nope otherwise I would have helped you already :-)
<rg-web>Cool!
<mroh>rg-web: For setting environment variables in your config.scm, try something like `(simple-service 'my-global-env session-environment-service-type '(("myvar1" . "value1") ("myvar2" . "value2")))`
<rg-web>mroh: Thanks a lot. Is this correct? https://paste.debian.net/1187446/
<mroh>should work ;)
<rg-web>Cool!
<shcv>how do I make a guix pack -f docker that doesn't have *all* of the dependencies, just the runtime ones?
<shcv>I just tried to pack a python package, and it ended up being 200MB