<singpolyma>jlicht: my source tells me that installing custom software on modern Tesla requires desoldering/flashing/resoldering the eMMC. Unless someone finds an unpatched flaw in the OTA which has not happened yet
<Guest58>is it possible in my config.scm to tell if the config file is being run using system reconfigure or system init or another type of command?
<nckx>Guest58: You are abusing Guix in a way it's not meant to be abused, but I feel morbidly obliged to point out that, yes, you do have access to the ‘(command-line)’ in your file, and it will be that of the evaluating guix command.
<nckx>I feel like I've just told a child where to buy crack.
<KE0VVT>I think I just ran 'guix system reconfigure' on the file I did not edit.
<jackhill>KE0VVT: our onionshare package works (at least I used it a few months ago). We don't have torbrowser (browsers are hard enough without worring about fingerprinting), but if you download somthing someone has onionshared, torsocks and wget together do work.
<fcw>What does it mean when I get lots of "Gtk-CRITICAL **: 10:30:58.558: gtk_drag_source_set_icon_pixbuf: assertion 'site != NULL' failed" messages? Is it possible that I forgot to include a dependency of the package?
<easbarbosa>i know about $LIBRARY_PATH, but rails still cant find those
<podiki[m]>easbarbosa: a bit quite in here and I don't have an answer, other than to try guix shell, give it the things you need visible in the profile or a package where you want the inputs (dependencies) available might help
<sirmacik>looks like I'm not able to use pass otp plugin. I have both pass and pass-otp installed but pass otp show command says that otp is not in store :o
<eonn>I have a quick question- I'm installing the Guix System on a partition cut-out from my other GNU/Linux installation, so I already have GRUB installed on an efi partition. When I go do `guix system init`, should I pass `--no-bootloader`? If so, should I omit the bootloader-configuration section from config.scm entirely? If I want to wipe the other
<eonn>GNU/Linux installation, what is the philosophically sound way to go about telling guix that it's now charge of installing the bootloader?
<jpoiret>if you want to overwrite the other bootloader, do not pass --no-bootloader
<jpoiret>if so, Guix will install its own GRUB separately and add an EFI var that points to that GRUB. You'll still have the other Grub on the EFI partition, which you can remove manually if you want to remove your other distribution
<jpoiret>having Guix manage the bootloader is important, as the kernel + initrd are not simply in /boot/, but somewhere in the store, and the easiest way is to let Guix tell GRUB where it is
<eonn>I was thinking Guix would need to manage the bootloader, because of the reproducible nature of the system
<eonn>Should I then create a grub-configuration proper, and then just pass --no-bootloader to prevent overwriting the current installation?
<zimoun>civodul: does Guix compute somewhere SWHID? I do not find something and maybe I am missing it.
<civodul>cbaines, mothacehe: what's your suggestion for this WAL file?
<civodul>ISTR we "did something" in the past about it, but not sure why
<cbaines>given the WAL is ~1/2 the size of the database, I don't really know...
<cbaines>I'd be quite interested in how much the database grows by, and how long it takes though
<mothacehe>we could copy the database elsewhere and test how much time it requires before proceeding on the real database
<jpoiret>eonn: you'll definitely need the bootloader to be managed by guix if you want to load the system. But since you're on EFI, it's all right, you can just have 2 GRUBs installed in different directories of your efi partition
<jpoiret>unless your other system installs grub in /EFI/Guix/ as well :)
<jlicht>sirmacik: did you try logging out and back in again? Or did you see a message about some environment variable not being set after installing pass?
<eonn>jpoiret: Other quick question: guix system init failed when installing the bootloader- and I realized that /sys/firmware/efi/ didn't exist. However, my system is indeed EFI and the directory exists in my other GNU installation. Do you know how I could troubleshoot this?
<jpoiret>maybe your computer booted in legacy bios mode. You can often disable this option in the EFI firmware prior to booting
<jpoiret>it should boot in EFI mode by default though I reckon, that's weird
<vivien>Would you recommend me to switch my server to core-updates-frozen, or keep it on master in case a new version of the updated static networking service needs to be tested?
<eonn>jpoiret: Ah, you were right. For some reason my firmware was configured to boot in legacy mode. Some fiddling fixed it. Never would've thunk.
<jpoiret>fun fact of the day: the whole GDM interface is not in the gdm project, but in gnome-shell :) i'm liking the gnome project even more every day
<mothacehe>jpoiret: heh, it did drive my crazy when updating to GNOME 40
<fcw>Hello, I need some advice. I'm packaging a screenshot tool that relies on 20+ Perl libraries that are not yet in Guix. Should I submit patches to add those 20+ libraries before submitting a patch to add the screenshot tool?
<abrenon>fcw: I think the patch can contain all the new libraries at once ? or maybe submit a set of patches, there are regularly series of related patches on the mailing list (like PATCH 1/15, PATCH 2/15)
<mothacehe>jpoiret: i had a missing icon issue that was caused by hicolor-icon-theme not being part of GDM inputs if it can help
<Guest58>how do i get the hash for a pypi package?
<jpoiret>mothacehe: but the GDM package has no GUI components
<fcw>abrenon: I am still having problems with packaging the tool. There are plenty of error messages printed when the tool is run. Perhaps it should be a WIP patch series, so that someone in the future can refer to it?
<fcw>Guest58: Use "guix import pypi <package-name>"
<jpoiret>also, I still don't understand what hicolor-icon-theme is :( it's empty, while all the icons I see are compiled as gresources inside the gtk shared library
<abrenon>Guest58: if you imported like fcw suggests it should be there, if it's wrong the error message will tell you the right one, you can attempt to predict it from a copy of the repos with guix hash -rx .
<jpoiret>mothacehe: do you have the same issue on c-u-f? the show password/hide password icon being missing in the GDM login prompt
<abrenon>fcw: I may be wrong because I don't have a lot of experience with guix but I don't think people really do WIP patches
<abrenon>maybe you should try to fix those errors before submitting your patch ?
<jpoiret>mothacehe: I have this very issue on a `guix system vm`
<jpoiret>i think it has to do with profile hooks, maybe if i `guix system reconfigure` inside the vm it will go away
<mothacehe>yes the icon cache might be corrupted / missing somehow ?
<jpoiret>let me reconfigure my current machine, I also have this behaviour on the host
<fcw>abrenon: Regarding the patches, how/where can I get help if the final product is somewhat broken?
<jpoiret>where is the logic for the icon caches? i'll look into it
<jpoiret>the thing is, the gdm UI doesn't even use Gtk widgets directly in the JS code, but rather something in St (St.PasswordEntry). I can't find any references to what that thing is, except some very light documentation in the gjs docs
<mothacehe>jpoiret: you can search for gtk-icon-themes in guix/profiles.scm
<mothacehe>i followed the same debug steps without being able to understand anything on how gjs/shell/gdm interact sadly :(
<jpoiret>the switch to gtk 4 seems to have made it even more of a nightmare
<jpoiret>(the example GJS code given on the official gjs website doesn't even run...)
<ss2>speaking of icon caches. Doesn anyone use qt5ct? And has managed to configure it so that qt5 apps will have icons?
<jpoiret>mothacehe: still the same issue, and i don't have the spinning thing either when i mistype my password (totally did that on purpose)
<civodul>cbaines: interesting; it's curious that we observe the bad WAL behavior on berlin only (AFAIK), there must be something about the workload
<civodul>mothacehe: that Cuirass commit has interesting tricks indeed
<civodul>there's this unused settings.useSQLiteWAL boolean in guix-daemon
<Guest58>OOSError: cannot load library 'libportaudio.so.2': libportaudio.so.2: cannot open shared object file: No such file or directoryOSError: cannot load library 'libportaudio.so.2': libportaudio.so.2: cannot open shared object file: No such file or directory
<abrenon>I wonder how installation from live ISO is even possible, the store must then fit in RAM ? how can that be expected to work in the general case ?
<Guest58>any idea why im getting this even tho i included portaudio in propagated-inputs?
<jlicht>don't give up so easily, the first steps are always the hardest. There are usually folks available here to help out when you get stuck, and the email@example.com mailing list is a place to ask for help too
<apteryx>hmm, python-eventlet fails on _proto_tcp = socket.getprotobyname('tcp')\nOSError: protocol not found; on debian that's mediated by installing the 'netbase' package, which installs /etc/protocols
<abrenon>I'm going to follow a MooC which recommends to install a certain number of python library and distributes dataset and I was wondering what the best way to prepare this in guix was
<apteryx>oh, we have net-base too: realpath /run/current-system/etc/protocols -> /gnu/store/zfbbn61ij7w0bl4wbrwi87x5ghqx968c-net-base-5.3/etc/protocols
<abrenon>define a package which propagates the libs, and which only content would be those data (simply copied to the store) ?
<apteryx>so it's probably just a problem for the sanity-check phase of anything using python-evenlet
<apteryx>(because in the build environment such configuration is missing)
<abrenon>there are a couple jupyter notebooks as well, should I perhaps define a package for the data, a package for the notebooks, and then a manifest to group all those packages together inside a profile ?
<abrenon>there are also some environment variables to define, how can they be defined automatically when entering an environment ?
<florhizome[m]><florhizome[m]> "Seems like guix is installing..." <- Oh wow this could be the beginning of uncovering a lot of issues :O
<florhizome[m]>I used gdk pixbuf w/o svg in my packages so far (one that propagates it in the system profile)
<florhizome[m]>many packages just want librsvg but it doesn’t integrate when pixbuf isn’t configured right
<apteryx>vivien: not sure, seems to work now; I guess my openvpn connection had gone stale, had to down & re-up
<roptat>abrenon, maybe use guix-jupyter (or jupyter-guix I don't remember)
<roptat>so you can define the notebook environment
<pseudonymous>Hey, is there a more gentle getting started guide for guix ? Specifically, I've managed to install guix on top of Ubuntu, to clone a custom software channel and install emacs and setup my shell's GUIX_PROFILE, but then I'm stuck not knowing how to run what I installed. The handbook goes into rolling a whole system etc.. I just want to get a sense of whether this is worth bothering with. Any shorter reference ?
<roptat>the manual talks both about guix on a foreign distro and guix system, and of course guix system is taking a big portion of it because there is so much to explain
<roptat>but don't worry, guix on a foreign distro is a perfectly supported use-case :)
<roptat>pseudonymous, just setting GUIX_PROFILE won't help, you need to source the profile. But I think the installation script does it for you, though you might have to log out and in again for changes to take effect globally
<roptat>or ubuntu is doing something weird with the shell's profile scripts
<abrenon>yeah, I remember seeing a message telling that when I installed guix on devuan
<abrenon>roptat: about guix-jupyter, I'm not sure I understand what it does: wouldn't a "guix kernel" be meant to allow me to write guile code for guix in a notebook ?
<abrenon>pseudonymous: your profile contains several links, each pointing to the various pieces of software you've installed
<roptat>pseudonymous, each package resides in a different store path. A profile is a collection of packages, and it also resides in a separate store path, so that's correct
<roptat>oh I wasn't aware of that article, nice :)
<abrenon>so probably, in there, in /gnu/store/.../bin, there is an emacs entry, which you'll find is a symlink to… the actual binary in the store folder with the OTHER-HASH you've noticed
<abrenon>roptat: I don't understand, mustn't I write python code in a cell at the top of a python notebook ?
<abrenon>how could I use that to load packages to an environment ?
<abrenon>I don't know how to do it except from the shell with guix shell or guix environment
<roptat>abrenon, iirc, with the guix kernel, you write guix commands, and one of them loads a different kernel, and the following cells are for that kernel
<roptat>I don't remember too much about it, so I guess you can also just use a guix shell to get your notebook and its dependencies
<pseudonymous>From what I can see, $GUIX_PROFILE ($HOME/.config/guix/current) points to a store whose bin dir only has guix and guix-daemon, not the emacs (and related binaries) of the store where emacs is installed.
<abrenon>thanks for the hint that datasets should be packages as well
<abrenon>I'll try and find an example of environment variable definition from another packages
<roptat>pseudonymous, right, there are two profiles: ~/.config/guix/current and ~/.guix-profile. guix doesn't care about $GUIX_PROFILE, so its value is just the last one that was set and that's ok
<roptat>pseudonymous, the two profiles need to be loaded. ~/.config/guix/current contains your latest guix (the one you got with "guix pull"), and ~/.guix-profile contains the package profile (the one you get with "guix install" and friends)
<roptat>if you remember the article says "GUIX_PROFILE="$HOME/.guix-profile"" and ". "$GUIX_PROFILE/etc/profile"". $GUIX_PROFILE is only used in that second command, never after. So what we do is define that and something similar to also load ~/.config/guix/current
<roptat>if you've logged out and in again, you should check that your $PATH contains ~/.guix-profile
<pseudonymous>roptat: it seems GUIX_PROFILE is indeed respected. Reading the /etc/profile scripts, setting GUIX_PROFILE means running `source ~/.guix-profile/etc/profile` (not sure if correct way) won't take unless GUIX_PROFILE is not even defined.
<jackhill>jpoiret: when trying to run gnome-terminal-server directly, it runs for a little while, and then exits 0. No process call gnome-terminal is left running.
<apteryx>is there a reason to do "socket.getprotobyname('tcp')" (python-dnspython) when it's the default?
<apteryx>it causes problems in the build environment
<roptat>pseudonymous, again, $GUIX_PROFILE is just an implementation detail, you shouldn't have to care about it, just make sure your $PATH is correct
<jackhill>jpoiret: I has the idea to try install gnome-terminal in my user's profile rather that only having it in the system profile, but gnome-terminal (via dconf probably) propogates firstname.lastname@example.org and I have gstreamer in my profile which propagates email@example.com
<apteryx>it probably needs an update to use firstname.lastname@example.org
<jackhill>apteryx: yeah, you're probably right, looks like bothe gnome-terminal and dconf could be upgraded. We probably should to get them in line with the rest of gnome on core-updates-frozen, but touching dconf at this stage seems scary!
<jackhill>jpoiret: also, whith gdm, it works with wayland on a laptop, but not on my primary desktop with 3 monitors and intel graphics. There, it crashes with signal 5 and falls back to x11. I haven't found the debug logs to be that helpful.
<roptat>zimoun, this is an issue: "available: arch != "x86_32" & arch != "arm32""
<roptat>the format is correct for opam, but unexpected for the importer
<jpoiret>jackhill: did you set (debug? #t) in the gdm configuration?
<roptat>I already tried to fix our grammar, but it's... very tricky
<jackhill>re: nightmare: yes indeed. I'm suspicious that it's a timing issue since this setup seems to take a long time for the monitors to settle. I have to run sway with WLR_DRM_NO_MODIFIERS as well, so I wouldn't be surprised if there was some bug between mutter and my graphics as well
<jackhill>yeah, but I still feel very much aligned with GNOME's goals and don't know where else to find a similar solution. I'm happy with sway, but would like to find something with braod appeal an polish for the other folks who use the computers I manager
<jpoiret>it's true that for an end-user perspective, when it works it's the best linux has to offer
<jpoiret>re: gnome-terminal, I wonder if those requests go through the session or user bus (i think user), and if so, where/how is dbus supposed to find those services?
<jackhill>apteryx: oops, I was looking at the wrong `guix` when I thought dconf and gnome-terminal were older than they should be
<jackhill>jpoiret: and also what changed about how it works between master and core-updates-frozen
<apteryx>jpoiret: they'll be looked in ~/.guix-profile/etc/dbus/* I think; it's hard-coded in the guix system configuration to looke them in the user profile
<apteryx>(as well as system profile I think, but nowhere else)
<apteryx>so it won't work if you're not in your default user profile
<pseudonymous>OMG. So... I still don't know half of what is done. But I respect the results. I got guix, got someone's custom channel, installed a bleeding edge copy of emacs with nativecomp and pgtk and... it's simply beautiful. If I understand right, guix allows sandboxing of apps and their dependencies right ? Seems like a quantum leap compared to the messy state of distribution packaging today.
<jpoiret>if this works then we'll need to think a bit about how to approach dbus-update-activation-environment sanely
<jackhill>jpoiret: `WAYLAND_DISPLAY=wayland-1 dbus-run-session sway` doesn't allow sway to start: Could not connect to remote display: No such file or directory
<pseudonymous>rekado: ah, no. Yea, just.. isolate the dependencies of one app from another.
<jpoiret>rekado: `guix shell --container` begs to differ :)
<rekado>pseudonymous: it installs every package to its own prefix directory, so you can’t accidentally install different things into the same location. This avoids a lot of conflicts and problems you would have in a traditional distro — and it adds a couple of its own problems, too :)
<jpoiret>jackhill: ah, sorry, then please try instead inside of the sway session, `dbus-update-activation-environment WAYLAND_DISPLAY` then retry gnome-terminal
<pseudonymous>rekado: compared to the castastrophe that is general distro packaging, I'll take it(!) :D
<rekado>pseudonymous: building things is also done in complete isolation, which is great.
<rekado>(a way around it is to use separate profifles then, easy!)
<rekado>pinoaffe: this looks good to me. I’ll apply it in a moment.
<jpoiret>so, the idea is that gnome-terminal doesn't do anything on its own, it just asks DBus to communicate with org.gnome.Terminal. However, it isn't started yet, so DBus proceeds to start it. The problem is, dbus didn't have any of the needed env variables for it to launch anything graphically, and so gnome-terminal-server just couldn't properly start
<jackhill>in other news, the manpage for dbus-update-activation-environment seems wird to me. It has a bunch of .SH .HP .PP markers, like all the markup didn't get rendered to completion
<jackhill>jpoiret: ah, I see, thanks. Yes that sounds reasonable
<roptat>zimoun, in your utop patches, please add a ocaml4.07-variant property to each package you add with such a variant
<jpoiret>dbus: "i am a standalone program, totally not a systemd underling"
<jpoiret>also dbus: "i have a --systemd option to also update systemd --user env variables"
<roptat>zimoun, also have you checked whether (package-with-ocaml4.07 the-package) works for the packages you added, instead of adding the variant?
<rekado>apteryx: not only on core-updates-frozen; since a while it sometimes just picks the wrong package name. Odd.
<rekado>apteryx: we have etc/committer.scm, so maybe we could remove the snippets and call out to parts of etc/committer.scm instead?
<rekado>bah, I can’t push any more: git/bindings.scm:66:8: In procedure git_libgit2_init: Function not implemented
<Guest58>does guix package --install-from-file actually install the package and the binaries in it?
<Guest58>cuz i did run it and i didnt get the binaries lol
<rekado>vtk-8 is broken. There are a lot of “undefined reference” errors — they all point to symbols defined by the vtk libraries, so perhaps it’s just a matter of adding some directory to the linker invocation.
<rekado>hmm, I just read a comment stating that PureOS is the most popular of all the FSF-endorsed distros (on distrowatch). And it’s true. 45 (PureOS) vs 133 (Guix System).
*rekado doesn’t understand how distrowatch ratings come to be.
<mentat>So I'm pretty new to guix. I'm wondering what the best way to resolve this problem with Info is. The Info directory no longer includes entries for Emacs, Elisp, or Stump. This is caused by Guix overriding the /usr/local/share/info/dir file to a symlink under the current profile. How can I resolve this? I have both Emacs and Stump built from source. I know I can solve it by installing Emacs or StumpWM with Guix, but there has to be a way
<apteryx>I think so; it causes it to expand to the default (hard-coded) locations
<unmatched-paren>the reason 99.99% of people use windows is because it comes preinstalled on stuff, so honestly i don't find that statistic surprising
<vivien>rekado, just wait for the viral marketing campaign for 1.4 with GNOME 41 ^^
<mentat>apteryx: (getenv "INFOPATH") returns a path with a trailing colon...
<zimoun>roptat, it is annoying to repeat ’properties’ when using ’package-with-ocaml4.xy’. It is prone error, IMHO. However, I do not find the way to tweak ’package-with-explicit-ocaml’ and remove ’variant-property’. Have you tried before?
<apteryx>mentat: the trailing column is interpreted by info-reader, I believe.
<apteryx>mentat: you could remove this dir entry if it annoys you more than helps? that's on a foreign distribution?
<hackeryarn>I am loving the new shell command added to guix. As someone coming from nix, I have a workflow question. When I use nix shell, I have arbitrary bash commands that need to execute when I setup a shell environment (provided by postShellHook). Is there a good way to accomplish something similar using guix shell and a package definition?
<mentat>apteryx: Well GUIX actually overwrote the old one :/. And wouldn't that only work until I installed something else with guix and it modified it again? I'm reinstalling Emacs right now to see if it modifies it in a persistent way.
<mentat>I had emacs installed prior to guix, so it wouldn't surprise me
<apteryx>are they moving to a yearly LTS release or something? else I don't see how calling this release "rust 2021 edition" makes sense
<mentat>Like I said, I installed emacs and stump before well before I had guix installed, so if it overwrote it on install, I have no issue just reinstalling them. It's literally ljust add * Emacs (emacs) to the dir file
<hackeryarn>jpoiret: It would be neat to handle that type of shell setup via a shell phase in the build system. We could set it up so that build phase only runs when the package gets invoked using guix shell.
<jpoiret>i'd be more inclined to make guix system definitions able to be modified and booted from user-space too (be it with pid namespaces)
<jpoiret>pseudonymous: unfortunately, channels become part of the guix program when using `guix pull`. You need the channel files to already be a part of guix for `guix package -m ` to work properly
<lfam>podiki[m]: In practice, I would say yes. It's the most used platform and more performant than the next most popular platform, aarch64. That's an important factor for a build-from-source distro like Guix
<unmatched-paren>is there any way to change the search engine in icecat? for some reason it seems to be locked onto duckduckgo
*nckx looks up snooze, strange un-unixy looking thing.
<podiki[m]>apteryx: it is a change in c-u-f at least, so I'd guess librsvg somewhere? but very confused how all the listed inputs are built for wine but still tries to build something when it doesn't use rust in any of those or for itself
<f1refly>sorry if this is a dumb question, but I'm currently trying to install guix on a second partition from my arch system which I'm trying to transition from. I installed guix (the package manager) and using it i installed shepherd. when I start it and try to run 'herd start cow-store /mnt' like in the manual it's telling me "service cow-store not found"
<drakonis>M6piz7wk[m]: depends on the hardware building it
<drakonis>it takes me around half an hour on my current 8 threaded cpu
<jpoiret>sneek, later tell mothacehe: if you're also experiencing the gdm icon issue on c-u-f, i'll reopen the bug on the gnome-shell gitlab as after all my investigations, everything seems to be in place for it to work.
<jgart>civodul, Thanks! Guillaume Le Vaillant sent a patch to Bill fixing the asd file which allowed Bil to publish a new release. I then sent an updated patch for cmn and Guillaume merged it. The new release is what's packaged in Guix now. ambrevar also help with the asd file.
<apteryx>a guile-git test apparently fails after I updated (locally) libgit2 to v1.3.0
<jgart>That's guixy teamwork y'all! Let's do more of it with rust packages... ;)
<lfam>sneek: later tell nckx: I'm looking at turning CONFIG_GCC_PLUGINS on for the kernel 5.10 package, like we discussed. I was able to do this for 5.15, 5.14, 5.13, 5.12, and 5.11. But the option is not offered with 5.10... Even using `make defconfig` in a 5.10 source tree with the Guix toolchain, this option does not appear
<cbaines>civodul, that's good. As far as I remember, the size of the file is an upper bound for the size of the WAL, but at least this should mean we'll know if it gets to large again in the short term