<nckx>justkdng: No, not with the current Guix tooling; but yes in principle, after removing the x86 assumptions from the current code & adding it.
<nckx>justkdng: The current way to install Guix System on aarch64 is to boot a different disto's live ISO or a real system installed to a USB drive, install Guix to it using the 'binary installation method', and run guix system init from there.
<nckx>A much rougher method is to install Guix to whatever distro the machine is already running, and run 'guix system init' *on the same system*, basically turning it into Guix System on the next reboot. It works, but it's filthy and I don't recommend it.
<nckx>Plenty of ways for left-over files to cause havoc, as Guix doesn't wipe the old /etc, etc.
<KarlJoad>nckx: What are the remaining portions of code that assume x86?
<luke-jr>[21:56:39] <justkdng> Is bootstraping rust still a pita? <-- still impractical on non-x86
<oriansj>well the amount of love an architecture gets is in direct proportion to the number of developers who use that platform. Based on that I feel that very few node.js and rust developers do anything except use standard x86 (64bit) laptops with buckets of RAM and SSDs
<podiki[m]>I'm trying to apply the kernel 5.18 patches and on make (of guix checkout) I get "ice-9/eval.scm:293:34: error: validate-configuration: unbound variable"
<sleepydog>i am using sddm. did you check /var/log/Xorg.[0-9].log ?
<trevdev[m]>I know I keep coming back with this stuff, but I just want to re-confirm (again) how these updates via guix home reconfigure should work. If I run `guix pull`, then immediately do a `guix system reconfigure` and follow that with a `guix home reconfigure`, reboot, then run `guix gc`, then immediately after that run something like `guix home container` to see what happens, I should not see a ton of packages re-download and source code re-compile?
<lilyp>trevdev[m]: guix gc also garbage collects stuff that's used for build only
<trevdev[m]>The final guix home container did re-download a bunch of stuff that I presume was build dependency. It also downloaded telegram desktop, which always seems to build from source regardless of the substitutions. I sadly had to walk away before I could observe it attempt to re-build
<trevdev[m]>Or rather, that I now* assume was build dependency
<KarlJoad>Strange. Other than a ton of manually-created `input`s, the telegram-desktop package seems normal enough.
<KarlJoad>Have you tried removing (commenting out) telegram-desktop from the list, just to verify that that package is the root cause?
<trevdev[m]>Do you suspect that removing telegram-desktop will prevent/reduce the need to re-download anything that is currently built and installed already?
<KarlJoad>From what you just described, I would first check that telegram-desktop is the reason that you are experiencing a build between the `home reconfigure` and the `home container`. As a sanity check, I would remove it.
<alphapapa[m]>Forgive the noobish question, but I've been searching for 10 minutes and haven't found the answer: How do I list the output files of an installed package? e.g. the equivalent of "dpkg -L foo"
<KarlJoad>From personal experience, even when I change the home-configuration (not with a new package, but with new config file settings), things like that are not downloaded.
<KarlJoad>alphapapa[m]: Depends on what you are doing. But, I found the easiest way is usually building the package and looking into the output directory.
<alphapapa[m]>KarlJoad: Makes sense, and I tried to do that, but... how do I find that output directory? "guix show foo" doesn't seem to show it
<alphapapa[m]>Well, I ended up just using Fish's directory completion. I just hoped Guix could do it too, haha. Thanks for your help.
<KarlJoad>It probably can. I am just not sure how, especially given there is a database sitting in /var/guix/db...
<trevdev[m]><KarlJoad> "From what you just described..." <- So to control a test of what happens after guix gc, should comment out telegram guix gc, guix home container, see what happens, then uncomment, try again?
<alphapapa[m]>Whew, Guix has saved me again, allowing me to update the TLS certs that Git uses without having to mess with the underlying OS packages!
<KarlJoad>Collisions happen when two profiles refer to two similar things. I get collisions about Emacs in both my home configuration and my system configuration. I am not sure about the severity of the message though.
<trevdev[m]>I would presume my collisions are similar in nature. As many of my packages as I can are declared in my home config. I just ask for the basics and bare-bones DE packages on the system level
<trevdev[m]>Basically every package related to my home env is being re-downloaded.
<trevdev[m]>If this is because "these packages should be handy in case they need to be built" then I suppose that's what I would expect from having garbage collected
<trevdev[m]>It also assured me certain packages would be built as derivations, but I know for sure they have no grafts or updates since the last installation
<KarlJoad>If the GC between the comment and the container is of a similar size, then maybe it is build-time dependencies.
<KarlJoad>Still weird that almost your entire home environment is being re-downloaded.
<trevdev[m]>I know telegram likes to build from source, which is probably the more annoying/concerning thing, as that always takes a bunch of time.
<trevdev[m]>"upower, fuse, wayland, xapian" yeah these did not change.
<trevdev[m]>It definitely feels like it's slowly re-downloading 4.8GiB (less whatever telegram is worth)
<KarlJoad>But you commented telegram out. Guix should not be downloading a boat-load of stuff, because you have nearly everything else already.
<trevdev[m]>I un-commented telegram, ran another guix home reconfigure, 400MiB later I am re-compiling telegram, which is already compiled and installed
<trevdev[m]>I suspect this is not the use case, unless the use case is either very infrequently updating your home config, or very infrequently garbage collecting
<KarlJoad>Is telegram referred to by anything else? A leftover manifest? A config laying around? You commented it out, so it should not be present.
<KarlJoad>Unless you are a constant package developer (which I don't think you are right now), the use case really should not matter, since this is a functional packaging system. If you do not refer to something, it should not be there.
<trevdev[m]>You're right, telegram should have been garbage collected, this makes sense.
<KarlJoad>If telegram is still being built after commenting it out, search for other things that may reference telegram that you are still building.
<trevdev[m]>I wonder what I messed up here, assuming that it was me, which is 85% of the time.
<trevdev[m]>What sorts of things am I looking for? If I `guix search telegram` I get only the gnu repo packages, I *do* have generation for guix package and guix home which appear to be separate, but I have been re-assured that the derivations should align
<KarlJoad>First thing would be to check if your home configuration somehow pulls in (refers to) telegram somewhere else. After that, perhaps remove it from `guix package` for testing? I've never dabbled with `guix package`, so I cannot say what it does.
<trevdev[m]>guix package is the base package manager. You probably invoke it indirectly with `guix install` and `guix remove`
<trevdev[m]>So telegram-desktop is only declared one time, in a file which is used to produce a manifest, and also produce the (packages) field for the guix home config. The manifest isn't really meant to be used unless I intend to maybe bootstrap packages from there with guix package -m instead of guix home reconfigure. Either way, the process of referring to linked packages should not be divergent
<KarlJoad>I don't use `guix install` & co. I prefer `guix shell` and `guix home` to manage packages.
<KarlJoad>So the same file is producing a manifest and is used for the home-environment packages list? Perhaps that is the cause?
<trevdev[m]>It should not be, according to the last few conversations I have had. Whether a package was installed via guix home, or guix package, should always point to the same linked package.
<trevdev[m]>But it's the only spot here that's different for you, versus myself. I cannot go back to using just guix home, or just guix package + XDG_CONFIG files, without destroying the records of both as root. I am willing to do this again if it makes the difference
<KarlJoad>It _should_ point to the same package. But like any software, weird things can happen. Only way to figure out what is going on is to remove variables.
<KarlJoad>Not that I am saying Guix is unstable, but when diagnosing things, remove as many variables as possible until you get to a known-good state and work your way back up.
<trevdev[m]>Being so new to guix, I don't yet know what a "known good state" looks like. It would be really good to know if when I pick one, or the other (guix home or guix package) things don't need frequent re-doing just to make basic changes to my home environment. Though, I suppose, if I am not using guix home, the concern goes away. I'd just be using XDG dirs the old fashioned way.
<trevdev[m]>But it seems like "guix home" is the future of guix.
<sammm>hey - has anyone had an issue where the fat32 bootdrive would require a fsck.fat before we exit single user mode + have the check hang seemingly indefinitely? i've been careful to shutdown properly - haven't had any outages AFAIK
<civodul>sammm: hi! i've seen that on a recently installed machine
<civodul>looks like we might have a problem with things not always being umounted on shutdown
<sammm>civodul: unfortunately - guix doesn't seem to handle the fsck on the boot partition well. It gets stuck on "File system check corrected errors...; continuing". I tried using the 'fastboot' kernel param but didn't skip obvis
<abrenon>there's a field to set a password which is usefull to generate read-only installs such as live CD (where the password is always published anyway for it to be useful), but it's not used on real systems where passwords should be set manually as usual
<james[m]>But I don't want to mess it up. Some pointers would help.
<mbkamble>Hi. can someone help me figure out how to access fields of a configuration record? I have tried numerous sexps, rad the manual several times and looked at example code. But still am unable to get it. I am runing a repl in Emacs using "run-geiser", have imported the necessary modules. And done the following:
<f1refly>I think something is wrong with my mimetype associations. When I click a link in my terminal (or xdg-open an https url), a new firefox windows is opened. Also, firefox asks me if it should set itself as default browser every time I launch it, even though I click yes every time. Is there something I'm doing wrong? When I lauch xfce4-settings-manager firefox is set as default browser in the default
<abrenon>I don't know the objects you're working with so I don't know what should be there instead, but I know why it should fail the way you try
<abrenon>(I've checked locally, and from a guile prompt, having loaded modulse (guix packages) and (gnu packages ibus), the expression (package-version ibus-anthy) is valid and returns, as expected, the string "1.5.9")
<dcunit3d>is there any way to show the config for a shepherd service like nscd? i was looking at ./gnu/services/shepherd.scm and it passes a file to execl on system init, but it looks like the generated config file isn't persisted. the manual says that nscd logs to syslog. the file exists for me, but there's nothing init.
<fps>hmm, how do i do a recursive submodule checkout with git-fetch?
<dcunit3d>do you need to use git fetch or are you pulling?
<fps>dcunit3d: no idea. i just try to package raul
<dcunit3d>how many levels of submodules are there?
<maximed>To make package transformations easy, you can give the input a label, and then refer to the origin input by its label.
<abrenon>mbkamble: so have you been able to fix your issue ? possibly with the home-bash-configuration-aliases that maximed suggested ? or have you been able to determine why that didn't work ? (as in, have you found the module where the data structure you use was defined ?)
<nckx>silicius[m]: Looks fine from afar. I still maintain there was no need to reword the comment, but this one's fine too. The last description sentence should probably go, descriptions aren't really intended document usage that way. unless it's a Guix
<mbkamble>This effort is partly to understand scheme, guile and guix internals, and partly to hack the contents of ~/.profile file generated by home-environment
<nckx>silicius[m]: If someone else mumbles that the description's too short, I volunteer to extend it (doesn't look too hard :-) but that line wasn't the answer. The main point, that it LGTM, seems to've got lost because of it.
<nckx>I'd push it myself and will if nobody beats me to a git machine.
<nckx>It's often if not always great, but it's not on-brand for a welcoming (new )user support channel.
<nckx>Somebody pitched me on a #guix-beginners channel because this one could be intimidating! I'd love to hear opinions on that, but it shows how much subtle messaging matters.
<nckx>(Mine was that we can't afford that split and should work on that perceived problem if at all common.)
<abrenon>I've just updated my system, first time since Maxime Cournoyer's commit on ibus-anthy last week 39b118776bbbaed049f8bcafa27bde30d9d0b2f6, and now ibus doesn't seem to find anthy's engine anymore
<abrenon>has anyone else faced this issue ? upon login, I'm greeted by an error message stating that one of my input methods doesn't exist
<abrenon>I had tried it long ago but it wasn't working that great for me
<abrenon>I have no opposition in principle to discovering new tools, but right now I have tasks to perform and cannot spend time trying something new, and in particular I've just upgraded from a fully working setup
<abrenon>(ok, did not work in gvim but I could live with that)
<abrenon>so I'm back at the first obvious question: what's my "list of methods" where is it defined ? what data could possibly offend ibus ?
<abrenon>I've diffed /var/guix/profiles/system-<nn>-link/profile/lib/gtk-3.0/3.0.0/ for the latest working version and the current one and interestingly anthy doesn't pop out
<singpolyma>Hey all, anyone have experience packaging a python package using setup.cfg with no setup.py ? I tried adding in the trivial setup.py but then I get a package that's just empty
<abrenon>nope, what trivial setup.py do you mean ?
<justkdng>you can modify/remove build-system phases when required
<ardon>Hi, is anyone familiar with the Go build system? I'm trying to package a Go library but I get "pattern x: cannot embed irregular file" errors on its build phase. It complains about source code lines that start with `//go:embed x'
<singpolyma>justkdng: yes, sure, but i'd rather not write a whole new system for this one package if there's best practises around these python "new ways" already
<abrenon>singpolyma: I struggle a lot with the "new ways" in python, with packages recommending to use tox but failing to explain how that's supposed to go in order for me to replace the 'check phase…
<justkdng>Wouldn't just replacing a phase be enough?
<singpolyma>justkdng: every phase of python-build-system uses setup.py
<abrenon>I'm gonna have to leave but I'm very eager to solve this, I'll take a look again as soon as I'm home
<majsharpfourth[m>hello, everybody. I'm trying to setup a readymedia/minidnla 'service' and have trouble grasping the manual here.
<majsharpfourth[m>There seems to be a difference in a shepherd service and a system service, where at some points it seems as though the system services were an upgrade of some kind in while other places it's stated that a shepherd service is still used for handling daemons (which I believe is what I need).
<majsharpfourth[m>Then i was also wondering how to configure minidnla. It does exist in the repo's but the manual doesn't mention it so I'm guessing I'll either have to supply it with a raw config file or write some config translation myself so i can configure it in lisp.
<majsharpfourth[m>Do I have to configure all this in /etc/config.scm, import a seperate file to define this service there or change the readymedia package? if I do manage to translate the config, should I commit that back? It'd help a lot if i'd know the location where the other services are defined so I could have a look there (the manual mentions a heap of them and they should be stored somewhere?).
***Xenguy_ is now known as Xenguy
<unmatched-paren>MajorBiscuit: You need to define services in /etc/config.scm. Unfortunately the manual sometimes falls behind on services.
<unmatched-paren>You'll need to look at the source code to see how to configure the service. See gnu/services/... :)
<unmatched-paren>Hmm, for some reason, even though I'm using gtk pinentry, the ncurses UI is being displayed when I need to unlock my GPG key...
<nckx>Does it expand ~? I have an absolute file name there (it's /run/current-system by the way, though I'd be confused if that mattered, and I've only ever used -tty). Did you restart gpg-agent since the change?
<unmatched-paren>...Anyway, the GUI pinentries are showing TUI frontends when I run them. This is almost certainly unintentional, and a little annoying because I can't run `senpai` (IRC client) directly (it doesn't move out of the way to allow pinentry-ncurses to be displayed) so I have to run `pass show sr.ht-token` first.
<majsharpfourth[m><unmatched-paren> "You'll need to look at the..." <- but i dont have a /gnu/services folder
<nckx>Interesting. So you don't think it's launching the wrong binary, but that the 'pinentry -> pinentry-gtk-2' binary is itself falling back to TTY mode?
<mbkamble>Hi. I am trying to modify the content created in ~/.profile when I build a home-environment. So I cloned the gnu/home/services/shells.scm file into a same-path in my own module directory. Then using -L option, I add my module directory to the begining of %load-path. I have modified the function add-shell-profile-file and thus expect a new
<mbkamble>~/.profile (link to /gnu/store/<blah>-shell-profile) to be generated. But after running "guix home reconfigure -L <my-modules> <path to home-env-decl.scm>" ~/.profile points to the original file in the store. How can I ensure a new /gnu/store/blah-shell-profile gets generated?
<Andronikos>nckx: Just want to mention that I noticed it since two days. Maybe it helps
<nckx>I don't have access to my credentials but I'll file a bug, unless you want to.
<abrenon>if I believe this diff http://ix.io/414p the only difference in terms of file which have *anthy* in their name between my working ('-') and my broken ('+') configuration is the change of versions (5.0.9 -> 5.1.4), additional translations, and a XML file that was removed from share/appdata/
<abrenon>any idea how that could be the cause of the problem ?
<james[m]>But I need my system to work urgently. I've got most things to work with my tweaks. But not everything. I would say python3.10 is the last essential thing.
<james[m]>Because I installed pycharm and some stuff with flatpak.
<james[m]>If its not in guix. That's what I've tried. Because I dont know any scheme and that. It will take days for me to get a working system if I used guix for that now.
<abrenon>and still no time to report the issue properly, sorry about that
<james[m]>I will get round to making definitions for them and publishing them. Bit right now its just getting my system working for what I require.
<elais[m]>you could always install python 10 outside of the package manager and use the binary from ~/.local/bin, failing that there's always running your python projects in a nix shell, I'm sure they have python 3.10
<abrenon>I'll group what I have found so far in a proper issue tomorrow
<james[m]>I would say python is the main one. But its just a version change. So I might have more luck with it.
<james[m]>Python was only missing the switch statements, which most sane languages have to some degree.
<james[m]>And I want to teach someone good practices. Which is why I need 3.10.
<james[m]>I might try doing it the other way. Just manual compile but I've heard people have had issues doing that with guix.
<james[m]>I will post what I've done so far somewhere so it may be of use to someone.
<james[m]>For just tomorrow I might have to use a different distro for doing my lesson.
<james[m]>Thanks everyone for helping. I very much appreciate it. Its a great system, And I intend to contribute.
<james[m]>I just need to get my head around it is all.
<ardon>Does anyone know how to deal with "//go:embed ..." directives when packaging Go libraries? Since the libraries paths get symlinked I get "cannot embed irregular file ..." errors as Go embeds can only take hard links, and can't take an absolute file.
<maximed>james[m]: FWIW you can add #:tests? #false, to disable the tests for now.
<maximed>(i.e., add to the 'arguments' field of the package; substitute-keyword-arguments may be useful.)
<james[m]>maximed: Thanks so much. I will try that...
<james[m]>Anyone interested in python3.10 for guix. Should bookmark this.