<hendursaga>Nvm, it's python-xyz.scm, that guix import pypi command is pretty useful. A little buggy, though, on those backports inputs.
<midnight>Was that one of those "woops, is *that* what the clear users command does" things?
<hendursaga>There should be a "do you REALLY want to do that?" warning or something
<nckx>midnight, hendursaga: It was definitely my fault! It's just not clear how -- I'm quite aware of what *!*@* is 🙂. However, it's far more likely that my horrible mess of user scripts (now thoroughly exorcised) is somehow to blame than external malice. I can't find any evidence of compromise anywhere on my server, nor did my Matrix account appear to have been involved. I've changed all my passwords and credentials just in case and will keep an eye on things.
<apteryx>example: (gdb) symbol-file /gnu/store/cr2r9ma109rmm46bfkily661sgpwnnv5-qtserialbus-5.14.2/lib/qt5/plugins/canbus/libqtsocketcanbus.so -> (No debugging symbols found in /gnu/store/4n962icmg4x9safkgwyg8f1jrp0i9zxz-profile/lib/debug//gnu/store/cr2r9ma109rmm46bfkily661sgpwnnv5-qtserialbus-5.14.2/lib/qt5/plugins/canbus/libqtsocketcanbus.so.debug)
<str1ngs>technically GUIX strips . does not strip on install small detail.
<apteryx>but gcc needs to have built the binaries with debug symbols in the first place
<str1ngs>as I mentioned probably all packages have symbols but they are stripped out for out. but kept for debug outputs
<str1ngs>this is in the context of gnu-build-system btw
<apteryx>str1ngs: that's correct. But does simply building something with gcc, without -g, produces debugging symbols? I understand the mechanic and idea, for if debug symbols are not there in the first place, it's not useful.
<apteryx>would there be symbols to strip even when compiling without the '-g' option?
<apteryx>oh, I think I'm confused. Symbols vs debug information. Not the same thing. Symbols should naturally be present in any binary unless stripped.
<apteryx>well, they may overlap. Not totally sure still.
<str1ngs>I think auto tools projects build with debugs symbols by default. most projects you can install with make install-strip
<paul__>Uh oh, another n00b question. I am trying to run `sudo guix system reconfigure /etc/config.scm`, but it's saying i should `guix pull` first. However, running `guix pull` with my normal user doesn't solve the warning. Running it multiple times is a no-op.
<paul__>I tried `hash guix` but that didn't seem to do anything. The hint to set my PATH first is vague -- what should my PATH be?
<guix-vits>str1ngs, leoprikler, nckx, et all: about SBC: Probalby i was needed to (as the boot-loader worked good, and kernel, initrd, and rescue shells too) just use UUID for root-fs.
<dannym>paul__: Yeah, guix pull is per user. If you do sudo guix system reconfigure /etc/config.scm, then do sudo guix pull before.
<dannym>paul__: One used to be able to prevent this duplicate pulling using sudo -E guix system reconfigure /etc/config.scm--but it broke for me half a year ago and wasn't officially documented anyway.
<paul__>dannym: okay, that seems like it makes sense. IIUC, once one user has done a guix pull, surely the other users' guix pull should be fast, since the updated packages are already in the store?
<paul__>weirdly, after doing `guix pull` and `guix package -u` a few times and seeing no changes, `guix system reconfigure..` still moans about what it presumably thinks is an out-of-date set of packages. does it just always complain "in case"? Or is there a way i can help it understand that in fact things are up-to-date?
<dannym>paul__: Yes, it's not that bad to "rebuild" guix package manager&recipes twice
<dannym>paul__: (You can see which "guix" executable it uses using "which guix", so for example compare: "sudo which guix", or "sudo -i" and then "which guix", and "sudo -E which guix". Guix also needs a few environment variables to be correct (HOME, USER, XDG_CONFIG_HOME)--that's what the "-E" is supposed to do. Inspect those three with various sudos if you are curious, too)
<dannym>paul__: It really depends. Guix is different to most other distributions in that it tries to give the regular user a lot of control
<dannym>paul__: So "guix system" is to actually reconfigure the operating system that boots, which is usually not something the user really directly requires
<dannym>paul__: But if you use "guix package" as regular user, that's the packages in the user's profile.
<dannym>paul__: The latter is the rare feature--very few things support this kind of thing (I can only think of "pip --user" right now which does something like it too), so it took some getting used to
<dannym>paul__: Maybe easier to understand: I have almost no packages in /etc/config.scm : (packages (append (specification->package "nss-certs") %base-packages))
<dannym>paul__: Everything else is in my user profile
<dannym>(the programs I actually have a computer for are in my user profile)
<paul__>dannym: interesting. I was kind of expecting that it'd be nice to have a very declarative system, as in, use my global config.scm to install emacs, vlc, ... (i.e., userland programs). That way i should in principle not run into a situation of doing a fresh install on a new computer and discovering at 10pm i want to watch a movie and there's no VLC :)
<paul__>or is there an obvious way to check in and version your user profile, too?
<paul__>I guess the closest analogue i'm familiar with is Bundler for Ruby.
<brendyyn>this is generally due to an environment miss configuration
<paul__>oh and another thing: i've just introduced a new "channel" into my ~/.config/guix/channels.scm, like https://guix.gnu.org/manual/en/html_node/Channels.html 4.7.3 specifies. However, it hasn't complained that i have no make-channel-introduction stanza. Is that expected? I don't understand the difference between introducing a channel like 4.7.1 mentions vs. 4.7.3.
<brendyyn>if guix pull appears to do nothing, then you are running the wrong guix. what does `which guix` show
<paul__>brendyyn: well, guix pull did nothing a second time around.
<paul__>which makes sense because the local Git clone would now be the same as origin
<brendyyn>naturally, i thought you meant it appeared to update and then didnt
<paul__>But to answer your question, which guix => ~/.config/guix/current/bin/guix
<paul__>ah! i'd make a thumbs-up emoji if i could!
<paul__>my current quest is to get mainline linux / nonfree working. unfortunately that's a requirement for my laptop.
<dannym>paul__: Should be possible to do so. I remember how it was for me when I started out on the free-software path. It took some time to de-proprietarify my life, so I remember how it was before and how it felt to always have to fuck around with not-officially-supported things (*cough* nvidia *cough*). Nowadays I'm finally over that crap--but it took years of software kludges and then slow hardware updates. Nowadays I think I should have voted with
<dannym>my wallet more (selling what doesn't work and buying what does work). It's much easier, sends the right signals and doesn't waste as much of your time...
<dannym>paul__: Do you want to be attributed as reporting the bug? I can put your name and E-Mail in the bug report if you want--it will make it into the commit message of an eventual fix...
<paul__>yeah, that's an interesting way of considering it. I have done some looking around, but it's not clear to me what modern hardware would be supported.
<paul__>dannym: sure, why not. i'm Paul <firstname.lastname@example.org>
<paul__>dannym: what laptop do you currently use for that purpose, out of curiosity?
<dannym>paul__: I use Lenovo X240 (but I will use Lenovo X230 in the future because it can take more RAM than the former)
<paul__>Right, that is something i need. Do you just go without?
<dannym>paul__: In the beginning I just always plugged a USB Atheros card
<dannym>paul__: Works fine but it dangles around and/or is a lever
<paul__>Yeah, i'm going to be wanting to use built-in.
<dannym>paul__: Then I found some site in the internet how to patch the BIOS to replace the WLAN whitelist (having such a whitelist should be illegal :P), and then I put an Atheros Wifi M.2 card into it
<paul__>I wonder if mine is replaceable. Will investigate.
<dannym>paul__: I had to do quite some fiddling because the patcher was for X230
<dannym>paul__: I totally should have replaced my X240 by X230 instead :P Oh well, you live and learn
<dannym>paul__: It works fine now on the X240 though. By now I also learned how to disable Intel ME on it while I was at it, and that accidentially got me a job as UEFI developer. Now I worry a lot more about what computers without OS can do... O_O
<dannym>paul__: Yeah. I think it's the usual pragmatism: The laptops like X230 work for years (with some initial fiddling, but then none ever again) and are fast enough even for development work, so there's no incentive to help developing something actually completely libre
<dannym>paul__: The things that exist where all software, including firmware, are libre are usually slow (Allwinner A20, Allwinner R40 for example)
<dannym>paul__: Although I still use the latter as a build server--it's barely fast enough as a desktop, too--but you wouldn't use it in 2020.
<dannym>paul__: (In 2008 it would be totally normal)
<paul__>I've recently ordered a new Thinkpad, and i'm hoping i haven't made a huge mistake in that regard.
<paul__>But i bought it for the solid hardware and keyboard, kind of crossing my fingers for the rest.
<paul__>I realise this is super off-topic, so let me know if i should get my coat.
<dannym>paul__: Yeah, keyboard is so good on those things, and they are mechanically stable (no weird parallelogram when you pull them on one edge). Also, they don't overheat when you compile things (Acer *cough*)
<dannym>paul__: I think Lenovo is a safe bet because (1) They had horrible backdoors in their network switches before (that's a good thing because now they are on the lookout--their image would be tarnished beyond repair if they ever did it again), (2) They actively advertise Linux support and (3) A lot of Linux kernel developers use Lenovos.
<paul__>I hope so! I guess i just worry i'll need non-free iwlwifi. But i can live with that.
<dannym>paul__: For completeness: wikidevi has a list of free-software-only wlan chips and packages
<dannym>paul__: My notes say I got AR9462 package, AR9271, AR5B22
<paul__>dannym: interesting, i don't know that one, will have a look!
<guix-vits>?: Why building linux-libre*.xz uses only one CPU core?
<nefix>hello! I'm getting this error: `Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory` but I have the `dbus-service` in the services operating-system field
<nefix>does someone use guix import nix? I can't figure out how to make it work it and maybe I'm missing something
<nckx>guix-vits: xz -T64 produces different output than xz -T1 which produces different output than plain ‘xz’. Different runs of xz -T<constant> *seem* to be reproducible, so we could *perhaps* hard-code -T2, but it's not very tempting, sorry.
<guix-vits>nckx: I got it, thanks. Is this the case for bzip et all?
*guix-vits "Cool that lebiniou packaged in Arch. Their PKGBUILDS is relatively easy."
<Kimapr>Why does guix system installer redownload all things of my system even though cow-store contains it from previous guix installer run (yes, i checked)?
<guix-vits>Kimapr: IDK, but if installing from a Guix System (not installer image) this isn't happened to me today.
<Kimapr>I grepped `ls /mnt/tmp/grub-inst and it indeed contained a ...-system item`
<Kimapr>Maybe it didn't find it in the database and thus downloads substitutes
<guix-vits>Kimapr: be careful if You want to manipulate the files in Store: I'd sed'ed a few (device node name), and was unable to pull (not related to my ssl issues from yesterday).
<Kimapr>I didn't manipulate store items or anything, i just started cow-store, started building system, went away, unexpected shutdown happened (someone unplugged computer by mistake), then started cow-store with same parameters and i could find a system in /mnt/tmp/guix-inst and same store item in /gnu/store
<Kimapr>Yet when i tell guix to build that same system it redownloads everything it already downloaded before reboot.
<Kimapr>Hello, I installed Guix system on gpt disk close to disk's start to work around BIOS bug that doesnt let it read stuff after 128GiB on usb drives but instead of booting properly, GRUB first gets stuck at Welcome to GRUB, then it shouts at me that it cant find my root fs (which is beyong 128GiB) and a thing on it, then it shows me themeless text men
<Kimapr>u. I tried to ls my root partition in commandline but it says unknown filesystem. Executing nativedisk command makes matters worse as it loses ability to read ANYTHING, and becomes unresponsive. Installing it with nativedisk disk-module gives same problem. What may i do besides installing DUET and install efi bootloader instead?
<Kimapr>Is there any reason i cant install efi grub from system booted with bios?
<str1ngs>Kimapr: does your motherboard support EFI?
<borg`>Hi Guix community! I'm trying to set up OpenVPN, but struggling with the operating-system definition. Should it be sufficient to add something like "(service openvpn-client-service)" to the services section of the config file?
<lfam>borg`: I've never used OpenVPN, but I'd guess that you need to at least point the client at a server
<nckx>borg`: It still uses the old syntax, so (openvpn-client-service) (openvpn-client-service #:config (openvpn-client-configuration ...)).
<borg`>Does someone know why the example I linked above uses "(use-package-modules vpn)" rather than "(use-service-modules vpn)"?
<lfam>borg`: The example you posted doesn't use any of the pre-defined VPN services, but instead defines its own "simple-service". However, it does need to access the wireguard-tools package from the (gnu packages vpn) module. Does that make sense?
<nckx>borg`: It's for wireguard-linux-compat, which is a package.
<borg`>Ahh that makes sense, thanks. So "use-package-modules" to add packages from some package module (is this where they are defined in the git src, e.g. "vpn.scm"?) and "use-service-modules" for pre-defined services?
<nckx>Guix doesn't have any linting tools for operating-systems, but it's just regular Guile code. E.g., if you have a linter that detects unused module imports (not aware of any but sure they exist), it will work.
<nckx>You can auto-indent it in emacs. Generic stuff like that.
<borg`>Haven't really worked with Guile/Scheme before, only CL. More worried about programming errors than indentation etc. I guess guix system reconfigure will crash if something is wrong
<nckx>Trust me. It will not go quietly into that good night.
<apostolis>I had to pass a kernel parameter for it to work "iommu=soft", but still the graphical interface does not ask for a password.
<apostolis>Anyway, thanks for the help. I ll give it another try another time.
<nckx>apteryx: Hmm. That for one will create store references that aren't visible to the GC (since they end up inside the .tar.xz). Maybe that's harmless if you think it through... but do 😉
<nckx>apostolis: When you have more time, can you give more details? Does it show your WLAN interface now, but simply refuse to connect (‘freeze’, even, as described in lfam's links)? Feel free to send a bug report to bug-guix at gnu dot org with as much info as possible.
<nckx>Better bugs that turn out to be dupes than ones that never get reported.
<apostolis>nckx : yes it looks like the bug lfam pointed.
<borg`>Cool, thanks! I will have to learn some basics of Shepherd too.
<lfam>To use Shepherd in that way, you basically put a file like that at '~/.config/shepherd/init.scm', make sure that $XDG_RUNTIME_DIR points to a directory that exists, and then run `shepherd` as your user. Then you can do `herd restart emacs` etc
<borg`>So you run shepherd both as root for the init and as the user?
<apteryx>nckx: how about if I write the snippet as a G-Expression? Would that allow the used inputs to be known by the GC? Or does the GC work strictly with store files rather than metadata kept in the Guix DB?