IRC channel logs
2024-12-08.log
back to list of logs
<homo>$ git fetch origin keyring:keyring <homo>it's a strange error, I've just cloned the repo <l00py>cancername_ know how to add scroll support to vt? so i can scroll wheel up into the past lines <cancername_>could anyone help me express this clause in my "~/.ssh/config" in scheme for "home-openssh-service-type"? I've checked the documentation and it doesn't say much on the topic: "Match hostname.tld exec "%p = 6969" <cancername_>er -- my bad, I got confused by "match-criteria", it's actually `Match Host hostname.tld exec "test %p = 6969"` <l00py>am i not importing the right module for it or? <l00py>hm you sure? they count out right to me i think? <l00py>maybe you were right. i installed emacs to make balancing them easier <homo>$ ./pre-inst-env guix shell inferno <homo>./pre-inst-env: line 55: exec: guix: cannot execute: Is a directory <cancername_>does it make any sense to install channels.scm as part of guix home? why or why not? <l00py>cancername_ do you know if i need to import the gnu services networking module somehow? for my static ip config to work <divya>./pre-inst-env guix build [package] just rebuilds everything from binutils, gash etc. How can I have it build only the specific package from the git checkout? <dtx>Hey everybody trying to create a containerized image of a system running nginx, php, and node, but it appears to be having trouble when it comes to the nginx configuration for php-fpm. Here is my config: https://pastebin.com/i0qtDcLA <dtx>I put the stacktrace of the output in a pastebin comment <gabber>dtx: your nginx-server-configurations needs to be inside a list which needs to be inside a server-blocks s-expression. <gabber>like so: (service nginx-service-type (nginx-configuration (server-blocks (list (nginx-server-configuration (listen '("80")) ...))))) <gabber>see chapter 11.10.20 (Web Services) for reference <hiecaq>Hi Guix, I'd like to use a customized shell (or at least a customized bashrc) for all my `guix shell -C` invocations (on different projects), so that I can use specific PS1 etc, does anyone has some suggestions on how to achieve this? Currently the best I can come up with is to --expose the configs on host and then pass `-- bash` at the end <basicnpc>Is the only place here to talk about you-know-what the channel #you-know-what ? <robin>basicnpc, i'm sure you can ask basic questions about how to add channels <basicnpc>I added "that" to ~/.config/guix/channels.scm, ran `guix pull`, and saw that it's indeed fetching to that gitlab repo. However, it says "nothing to be done". Ran `hash guix`. But then `guix describe` still only it's only using guix but not "that". <dtx>@gabber: okie dokie. That does indeed fix it. May wish to update the example for "nginx-php-location" to use the correct format. I was modelling it after their example. <dtx>I was wondering why there was seemingly two different ways to configure nginx. lol <dtx>Also, does anybody know how to set the docker image name generated by "docker system image -t docker"? Having them all be "guix" is not ideal. <dtx>Thank you for your help, btw, @gabber . <Guest72>suppose a x86_64 machine is Gnu Guix System on Linux, does guix support by changing /etc/config.scm or some other configuration files to migrate to Gnu Guix System on Gnu Hurd ? Is this possible without having to re-install Gnu Guix System on Gnu Hurd from scratch? <mfg>When packaging rust crates and using `guix import crate', when does it pick up development inputs? Do i need to hunt them down manually? <mfg>I'm trying to update tree-sitter atm, because i'd like to see neovim updated. <mfg>Also: how do i resolve a situation where `rust-foo-2' is needed with 2.5.3 but only 2.5.1 is packaged? Do i just update that and hope, that other crates who depend on it, don't have the minor number pinned? Or do i need to create an additional guix package? <efraim>the tree-sitter update to 0.22.2 is queued up at #70146 <efraim>for the other question, if 2.5.1 is packaged and you need 2.5.3 then upgrading from 2.5.1 to 2.5.3 (or a later version of 2) is the normal move <mfg>Ah, didn't see that one. I'm currently trying to package 0.24.4 ^^ <mfg>I'll look at that series <PotentialUser-13>The notes seem annoying, but maybe there is a way to ignore them. But the error is beyond my abilities to address. <rekado>sneek: later tell l00py The error message should tell you *what* field specifier is invalid. This means that things aren't scoped right (e.g. one expression nested in another) rather than having missing parens. <efraim>it looks like the definition of origin was changed. I'd run 'make clean-go' and then run 'make' again <lilyp>janneke: just saw your guile-emacs patch – is the search path correct? <janneke>lilyp: yes, doesn't guile-emacs' emasc work for you? Use -Q <janneke>iow, it doesn't load with the default (and "more correct") load path, got this info from robin via #guile-emacs irc <janneke>ACTION succeeded in doing: (funcall (@ (guile) /) 2 3) <janneke>maybe we (I) should add a comment about it <janneke>hmm, the version number is a bit awkward indeed <PotentialUser-13>efraim That helped. Thank you for being here and helping newbies like me. <janneke>maybe i should just set the version to 31.0.50 and use that, wdyt lilyp ? <apteryx>I wonder what was the idea behindt implicit 'wheel' output of the pyproject build system <janneke>hmm, that could be awkward too, having multiple "31.0.50" versions... <janneke>ACTION adds "upstream-version" to let and uses that <lilyp>imho, there shouldn't be a version prefix in this thing <janneke>lilyp: i pushed a fix/cleanup/explanation for guile-emacs' load path, thanks <lilyp>the path should refer to site-lisp, whereas the emacs binary itself is wrap-program'd to load its own stuff last <janneke>yes, but we remove the wrapping and need to load its own stuff first because guile-emacs is still quite experimental <lilyp>hmm, I think the wrapping is just broken: 'wrap-emacs-paths' looks like it's still getting executed <janneke>it was my intention to remove wrapping altogether, to aid debugging and lower the entry to contribute <lilyp>the build system also looks like it's loading everything four times, but whatever <lilyp>welp, running EMACSLOADPATH= /gnu/store/6f8ia544bhpd83kfzx4vp7v8c3z6lg25-guile-emacs-31.0.50-0.8f87cbc/bin/emacs just segfaulted on me <lilyp>curiously, it doesn't segfault with the suggested emacsloadpath, but still won't run from store <janneke>lilyp: wdym, "guix shell guile-emacs -- emacs -Q" still doesn't work for you? <lilyp>i want to run it directly from store path – `guix shell` would probably work, but that's no way to test a wrapper <lilyp>but for the record, in your guix shell, what happens if you unset EMACSLOADPATH? <janneke>lilyp: ah, yes unsetting it works too <janneke>i gues it just mustn't include site-dir stuff <graywolf>Hello Guix! :) Are there any rules on when to put new configuration records into a separate file under gnu/services and when to put it into a existing one? <lilyp>if you can fit it into an existing one thematically and size-wise do so <graywolf>I see media.scm, so thematically yes, but unsure what does "size-wise" mean? I hope I will fit into 10k lines of new code. <lilyp>there is no services/media.scm, is there? <lilyp>adding 10k lines to some 69 lines file? you better justify that change well :) <Rutherther>what are you crafting that it will take that many lines? <graywolf>mpv-configuration. Mpv has 900+ options, to that is almost 1k lines just for the #:export block. Now that I think about it, 10k might have been a bit too conservative estimate... <lilyp>never forget that you can offer escape hatches <janneke>lilyp: re guile-emacs: while running directly from the store is really nice, shouldn't we go for ease of debugging right now (and remove all wrapping altogether?) <graywolf>Yeah I will to future proof it for future versions before the configuration record is updated, but escape hatches do no validate the config. Lot of options for mpv can be validated, so I wanna give it a try to do it "properly" instead of just dumping alist into a file. <janneke>ime guile-emacs still segfaulsts very easily <lilyp>explicit no from me – if you want to invoke the thing itself you can still call the real thing <lilyp>graywolf: even if validating, there surely ought to be a way of writing less than 10k lines <graywolf>lilyp: Assuming there is 1k options (to make the math work better), looking at define-configuration, it looks like somewhere between 3 and 7 lines per option (depending if custom sanitizer is required). I guess I could do *some* syntax-case magic, but am curious how much smaller can I make it. <graywolf>I am not counting documentation strings into this though. <lilyp>janneke: more importantly, path wrappers exist for almost every program out there. Leaving the package definition closer to upstream is going to help us in the long run if not even in the short run as well <lilyp>"upstream" being the emacs package here ^^" <PotentialUser34> The source location of the package. It is useful to override this when inheriting from another package, in which case this field is not automatically corrected. <PotentialUser34>This sentence is from the manual (a field when specifying a <package>), but it's unclear to me how to actually fix the location? The default procedure in (guix packages) is not exported... <lilyp>well, `guix edit' works as I expect, so inheriting might change the field actually? <PotentialUser34>ok, might do something wrong while using guix repl... I'll check it out a bit more <janneke>lilyp: right. i see the value in that but i do not see how i can do both. here's a patch that allows unwrapped execution from the store, but it (must afaics) increases the distance with "upstream" by replacing "wrap-emacs-paths" stage => https://paste.debian.net/1338850 <lilyp>I think the = should point to the comment, explaining that loading non-builtin packages isn't supported yet; the copied comments OTOH can be stripped imho <lilyp>s/point to the comment/be pointed out in a comment/ <PotentialUser-85>After last update, my themes went heywire, and gnome no longer respekt the theme settings <Rutherther>if you try using environment variable GTK_THEME and starting a program with it, does it have the theme you want or not? <PotentialUser-85>the configurations manager does respekt the theming, but its the only one, seemingly <Rutherther>PotentialUser-85: GTK_THEME=nameofthethemeyouwant program-to-start, can be something like nautilus (make sure to not have instance of that program running) <Rutherther>if it doesn't work, then it's likely that the theme no longer exists / is not found. How are you installing the theme? <Rutherther>that is not "obviously", there are multiple ways to install, be it with guix system, guix home, guix install... <PotentialUser-85>for same reason the name translates to the word for configuration and not tweek :/ <Rutherther>if you are using the yaru-theme package, and tried GTK_THEME with yaru-dark, it wouldn't work, since the theme name is Yaru-dark, not yaru-dark <Rutherther>alright. So the theme itself is fine, and you also have it in the search paths. Then it's quite strange gnome settings are not applying <efraim>janneke: i686 and aarch64 both fail to build to hello on core-packages-team. riscv64 is still building gcc-cross-boot0 <janneke>well, i guess that's expected, because for commencencement and base packages, i used very specific x86_64-linux guards on my patches <janneke>it should be trivial to extend their scope but i didn't want to do that -- possibly a good call for master, and a bad idea on core-packages-team? <janneke>feel free to write a squash! commit! <efraim>i'm currently fighting an mrustc update <janneke>efraim: hehe, yeah i'm building llvm-17 and rust* <efraim>we're really close to mrustc supporting 1.74, but it's going to take a bit more time. Its not working on all our architectures yet <efraim>this is still on the mrustc master branch, failure on aarch64 <efraim>I have to figure out how deeply to investigate vs reporting upstream :/ <janneke>that means we can drop the whole rust-* boostrap, right? <efraim>we will be able to drop 1.54 through 1.73 <janneke>right, that leaves (/me checks) 1.75..1.82 or so <janneke>ACTION is waay out of touch wrt rusty things <Rutherther> it's actually multiple places. For gtk 2 and 3 it's config files ~/.gtkrc-2.0, ~/.config/gtk-3.0/settings.ini. For gtk4 it's more complicated, it's stored with dconf, under /org/gnome/desktop/interface <Rutherther>additionally, your theme places can contain a default theme that is a symlink to, or a copy or the theme, ie. ~/.local/share/themes/default. Any XDG_DATA_DIRS folders, but this one in particular is more likely to have something created from programs like gnome tweaks <Rutherther>it is fine to unset the particular settings under /org/gnome/desktop/interface, definitely not safe to remove all dconf settings <PotentialUser-85>I might have noob tendensies, but I aint gona delete every setting on my computer, over a theme XD <PotentialUser-85>Hmm theme still just work in gnome tweaks and if I overridde with GTK_THEME variable <PotentialUser-85>Nor does the "prefer-dark"color setting seem to work on much else then the gnome tweak tool <PotentialUser-85>So gnome tweaks and dconf editor works with the theme settings, gnome settup, epiphany and dino does not <dariqq>PotentialUser-85: Last time i had the issue with the 'prefer-dark' setting it was because of missing xdg-desktop-portal . But that should already be installed by if you use gnome-desktop-service-type <basicnpc>I use doomemacs, which manages my emacs packages on its own. How should I best integrate it with guix home? <basicnpc>Also, is it recommended to use guix home on macs? <basicnpc>I mean _guix home_ .. not guix the package manager. <basicnpc>Do you mean that you use install emacs (on macbook) via guix? <PotentialUser-85>If you use guix as a secundary package manager, you can stil just install it regularily through home config <basicnpc>What I'm worrying now is that the emacs (either its build formula or prebuilt binary) may not suit a macbook. <PotentialUser-85>if you have build support for relevant arcitecture, it should go green :) <podiki>may have missed this, but if someone is asking about guix on macos, that doesn't work (no glib for mac as far as i understand) <podiki>as for guix on mac baremetal, that i don't know, i also doubt (or maybe guix on top of asahi?) <podiki>there is a project using guix on macos via a vm though <basicnpc>Yeah I have guix installed on a separate machine. I'm just thinking whether I can manage all machines with guix. <PotentialUser-85>I do not know if however, you may be able to compile a c library for osx <panosalevro>is there a way to edit a .desktop file that is in ~/.guix-profile/share/applications? all .desktop files are read-only <Rutherther>panosalevro: of course they are, but since they are from guix packages, it means you have to change them via guix. Specifically, a good way could be to take the package that gives you that desktop file, and create a new one, that will symlink all files from the package with desktop file, and after that's done, edit the desktop file inside of it <Rutherther>for the symlinking you can use union-build function <janneke>the guile-emacs package has been upated. please note that it's pretty experimental atm, think segfaults, but it's neat to evaluate: (funcall (@ (guile) /) 2 3) => #<scheme 2/3> <freakingpenguin>Is there a way to reference the path to a privileged program in a script without hardcoding /run/privileged/bin/foo? e.g. (file-append sudo "/bin/sudo") will expand to the store path to sudo. <freakingpenguin>Sudo is invoked in a custom script when I start a particular system service <kimjetwav>What I mean is, is this script emitted by a guix build. <mfg>efraim: Is there anything in particular i should look for to get an updated tree-sitter and neovim merged? I'm currently running nvim 0.10.2 and it seems to work. I'll look into the tree-sitter grammars, within the next week. But: What about emacs? Do i need to test that too? <freakingpenguin>Guix does build a file containing my script if that's what you mean. <efraim>mfg: I have no idea, I normally make sure it builds and a certain number of dependants build. Often by the time we package some of the software if there were bugs they'd be picked up already <kimjetwav>You'd use a g-expression to refer to a specific output. <kimjetwav>Unless I'm totally misunderstanding what you're asking for. <freakingpenguin>I could get the /gnu/store/...sudo/bin/sudo path, but the sudo binary needs specific permissions to run that aren't present in the store. Guix copies it to /run/privileged/bin, so I need to use that sudo and not the store sudo. <Rutherther>freakingpenguin: you cannot idiomatically refer to something out of the store, less so guarantee it would exist. Since the packages are just writing to the store. You need a service to guarantee that. With sudo, I personally believe you should never have something refer to it, and rather let the user prepend sudo if they want to execute your script with root permissions <freakingpenguin>Ordinarily the PATH envvar would take care of that, but it looks like it's not set when this system service runs. I'm realizing though that this also runs in a Guix Home environment where /run/privileged/bin may/may-not exist. <Rutherther>you cannot use sudo from a script unless the user configured to not ask for a password <Rutherther>but system service doesn't need sudo, it can already run as root, and can switch to any user at any time if needed, as it's root <freakingpenguin>I suppose I am using sudo when su would be more appropriate, but I would still run into the same issue there would I not? <basicnpc>I just `guix install font-google-noto-sans-cjk`, and use the same shell to launch firefox. However, firefox still doesn't show CJK characters. What did I miss? <Rutherther>if you are root already, you don't need privileged scripts <Rutherther>I don't know what you are after, but if the stuff needs root, I wouldn't try running that as a home service, but rather keep it a system service only <Rutherther>so if you are running the service as root, and want to execute something as other user in the middle, just use su, but do not try to get it out of privileged programs, just refer to the package that has it /bin/su <freakingpenguin>It works as-is for home services, but I'm struggling using it within a system service. To decrypt a password-store owned by not-root, I need to invoke password-store as that not-root user. <Rutherther>the reason for privileged programs, like su, sudo to exist, is to give you root access when you execute the scripts, that's the setuid flag. As long as you are already root, you do not need setuid flag to give you root, you already have it <Rutherther>also do you know even system services can run as arbirtrary user? you do not need to run them as root <freakingpenguin>Rutherther: The service is WireGuard and it is fetching my keys by executing the aforementioned script, so I don't think I can get away with running the entire service as a different user, but good to know. <mfg>efraim: alright, thanks :) <basicnpc>Any success story for managing a bunch of linux machine professionally with guix ? <basicnpc>It seems very promising, and if done right, could theoretically make many things easier! <janneke>ACTION also manages all their machines with guix but imagines that would probably not qualify as "professional" <bdju> https://0x0.st/XhA4.txt so I set XDG_RUNTIME_DIR in my ~/.profile now but I still get the same # of lines of output every single tty login/ssh. and why is it even printing all this wayland stuff every login? maybe some stuff in my ~/.profile should be set elsewhere so it doesn't happen every login or something. https://0x0.st/XhAv.txt here's the .profile <bdju>PotentialUser-13: install xdg-utils I think <bdju>it's something in my .zshrc causing that output on login, I don't see it if I temporarily move/rename my .zshrc. interesting. <bdju>it appears to be one of my alias lines as I deleted every line with alias in it (most of my config) and the problem went away. that's weird. <PotentialUser-13>bdju By the way, could you tell me why you went with zsh instead of the default bash? I feel a bit split in choosing between them. <bdju>I've been using zsh across machines for several years now. I've just got a nice config built up and configured how I like. I'm not sure if I can configure bash to do all the same things, and it would be difficult to figure it out from scratch at this point <bdju>as for why I originally chose zsh, it's tough to remember, I think someone had shown off a few neat things it could do. like syncing history between multiple open shells without having to close one <basicnpc>How is the `guix repl` prepared? It is a scheme run time.. but on top of scheme, it loaded something else, right? Like how does it know where to find (gnu packages fonts)? <PotentialUser-13>Hmm... I find guix packages for `sdl2`, for `sdl12-compat`, but where is SDL 1.2? I'm looking for the `sdl.h` file, for example. <graywolf>Hm, define-configuration produced records seems to be pretty slow when there is a lot of fields. (home-mpv-configuration (global (mpv-profile-configuration (fullscreen "yes")))) takes ~25s, which is surprising since I have <800 fields. <graywolf>Are there any tricks how to speed it up? Should I bug report this?