<drakonis>i wonder which phrase would work out as a replacement for rtfm <M6piz7wk[m]>mekeor[m]: ye i wasn't sure it does what i expected it to do so rather asked O.o <M6piz7wk[m]>rather the more stupid questions the less stupid questiosn :p <drakonis>also the documentation is good enough that it should solve the majority of questions <M6piz7wk[m]>yep it's solving a lot of issues for me otherwise i would be flooding the channel with questions <rekado>nckx: I think it might really be the disk model that’s not working. <rekado>I connected my own Samsung 850 EVO and no longer see any I/O errors. <rekado>the disk that doesn’t work is a SanDisk SSD Plus <nckx>Do these things have firmware settings? Could you (grasping at straws here) disable native AHCI mode or something like that? <nckx>No experience with those, also use 850 EVOs mostly. <rekado>yes, I’ll try fiddling with whatever setting I can find <rekado>it’s a relief that the board doesn’t appear to be broken, though. <nckx>Oh well, it's not like things like Dell servers don't have bizarre demands like this too. *M6piz7wk[m] gives up on vscode and goes to mess with emacs <mekeor[m]>6piz7wk: i've been using emacs for a long time. it's nice. but it sucks, too. for guix, it's nice. but tbh, if i could choose an editor from scratch, i'd probably go for (neo)vim or so, today <M6piz7wk[m]>i have to use vscodium/theia to work on my project atm as it needs unreasonable amount of processing resources and i use it over the cloud *M6piz7wk[m] didn't yet figured out how to use cloudmacs <nckx>mekeor[m]: Honeycomb LX2 boards for the farm. <M6piz7wk[m]>... well i tried cloudmacs but it needs like rework to be usable x.x <M6piz7wk[m]>Is there a way to set a shebang for the guix shell file? *M6piz7wk[m] is not sure what to put there other then #!/usr/bin/env guix shell -f ..? <M6piz7wk[m]>hmm i guess guix shell is not optimized for this workflow? <mekeor[m]>6piz7wk, what do you want to do? where would you want to put that (confusing?) shebang? <drakonis>i think the goal here is to run the file? <M6piz7wk[m]>on nixos i can do `#!/usr/bin/env nix-shell` so that i can do `./default.nix` to get the nix shell environment <drakonis>"guix shell -D -e '(@ (gnu packages maths) petsc-openmpi)'" might this be what you want? <M6piz7wk[m]>i need the file definition since the environment is complicated <M6piz7wk[m]>singpolyma: increased complexity in the repo manager <drakonis>why not invoke guix shell instead of guile? <M6piz7wk[m]>drakonis: doesn't seem to work with `#!/usr/bin/env guix shell` <M6piz7wk[m]>kreyren@leonid ~/Repositories/grilumops/20-editors/emacs/guix$ ./default.scm <M6piz7wk[m]>/usr/bin/env: ‘guix shell’: No such file or directory <M6piz7wk[m]>/usr/bin/env: use -[v]S to pass options in shebang lines <drakonis>perhaps you should pass the options as explicitly said there? <rekado>“shell” is an argument to “guix” <rekado>that’s why guile’s script mode cheats and reads the lines after the shebang. <drakonis>also the command got added this week and it can still be improved <M6piz7wk[m]>but it would probably mean for all guix subcommands to be defined as `guix-command` <dissent>hey guys getting this message when running system reconfigure <M6piz7wk[m]>since afaik that's why nixos does it that way to be used in shebangs <dissent>i suspect the boot partition has been disturbed in my attempts to install debian on an external hd. <rekado>M6piz7wk[m]: or the “guix” command should support a “meta switch” just like guile. <mekeor[m]>6piz7wk: maybe just have a shell-script called "default.sh" and then put the "guix shell -f ..." command in there? <rekado>wouldn’t help with /usr/bin/env guix, I guess, but it would work with /usr/bin/guix <rekado>POSIX shebang allows for *one* argument <drakonis>guile shell as the default for guix when? <M6piz7wk[m]>kreyren@leonid ~/Repositories/grilumops/20-editors/emacs/guix$ ./default.scm <M6piz7wk[m]>/usr/bin/env: ‘guix shell -f’: No such file or directory <M6piz7wk[m]>/usr/bin/env: use -[v]S to pass options in shebang lines <mekeor[m]>6piz7wk: what's the body of your default.scm file? <Christoph[m]><M6piz7wk[m]> "on nixos i can do `#!/usr/bin/..." <- 'guix shell' loads guix.scm or manifest.scm by default. Doesn't that solve the probem? <mekeor[m]>6piz7wk: why not just create a "default.sh" with the shebang "#!/bin/sh" and the body "guix shell -f default.scm" and then just put the guile/guix module into default.scm? <M6piz7wk[m]>increased complexity as i might needs the scm files to load each other later <M6piz7wk[m]>or `#!/usr/bin/env guix shell` if POSIX allows for one argument <mekeor[m]>"guix" would already be an argument for "env" <mekeor[m]>anyway, i think, you can either (1) suggest a change to guix on the guix-devel mailing list; (2) just live on with a single-line shell-script as increased complexity; or (3) package a "guix-shell" executable locally and install it. <Christoph[m]>Why do you not want to type 'guix shell' but a type a script's name instead? <florhizome[m]>when you just want to update your system but a kernel upgrade drops -.- <jgart>mekeor[m], I was thinking of transpiling guile to nix <M6piz7wk[m]>florhizome[m]: then you embrace the power of rollback and caching! :P <dissent>there is no way to pin packages huh? <florhizome[m]>You can though, right? Guix and kernel Version are not locked <mekeor[m]>dissent: i'm not sure but maybe you'd have to create a package declaration for yourself in order to pin the package? <mekeor[m]>jgart: but what if version 1.3 is not defined in all channels because it has been upgraded to 1.4? <lilyp>You can use inferior to look up ancient packages if you need to <florhizome[m]>the hurtful thing is my ThinkPad Fan setup still doesn't work, feels like grinding the processor manually <M6piz7wk[m]>florhizome[m]: i have the perfect solution please wait for me to get the phone <jgart>mekeor[m], not sure what happens then. I remember a package I had in a channel broke because upstream upgraded a dependent <jgart>That's a good question to ask in the mailing list <jgart>I'd be curious for answers to how to deal with that <mekeor[m]>jgart: lilyp just said that you can use inferiors (manual section 5.8) in order to use old package versions from old guix versions <jgart>I tried time-machine once but didn't have good luck with it <lilyp>M6piz7wk[m]: IRC is still not Matrix <mekeor[m]>jgart: you don't have to invoke time-machine. you can add an old guix-revision as channel, then just use "foo@1.2.3" in your manifest or so <jgart>oh you mean pin the channel in channels.scm file? <mekeor[m]>jgart: yes, just take a look at manual section 5.8 :D <lilyp>It's not about generating a URL, it's about netiquette. Sending a bunch of images in a row is not cool. <jgart>I'm chatting from gajim (xmpp) <florhizome[m]>mekeor[m]: But wouldn't that mean pinning all your packages and, foremost guix? <M6piz7wk[m]>> Actually they should provide additional cooling -.- <M6piz7wk[m]>20089 Lenovo G770 that i've modded the hell out of O.o <M6piz7wk[m]>by default it only has one cooling pipe and even when i added 4 more it still wasn't enough so i got a spare back cover and screwed a PSU fan on it :p <mekeor[m]>florhizome, jgart: so, the manual creates a inferior channel inside a manifest.scm. i guess you could also use an inferior channel just as a channel. i guess (!), the order of the channels matters and a package would be installed from the first matching channel? <jgart>what happens if you have a package in your channel named the same as a package in the main channel? <jgart>maybe we should have a way to associate channels with packages in addition to versions <jgart>Ideally, I'd prefer to not have to name the package in my channel something different so as not to conflict with the main channel's package of the same name, for example <attila_lendvai>i packaged an app, built it, and installed it on my profile. should its icon be fine without a relogin? it doesn't show up, and i don't see why, everything seems to be there. <mekeor[m]>jgart: as i said, i guess that the order of channels inside channel.scm matters <jgart>attila_lendvai, what package are you referring to? <florhizome[m]>I have a dell XPS 15 l501x lying around, should be similar hardware? Nvidea though... <florhizome[m]>My Main machine is a x230 and it must live forever, i spent too much time and money <jgart>mekeor[m], it still might be nice to just declare what channel you want to install from instead of reordering entries in your channels file to give preference to one channel over the other <attila_lendvai>i'm not doing any magic in the guix package, just call make install with PREFIX= <jgart>attila_lendvai, oh this is a package you're working on? <jgart>can you share the definition? <florhizome[m]>on the other hand, once some modern ryzen apu mobo just gets the hope of coreboot i will need to pursue <jgart>I just bought a T420s with an nvidia gpu by accident <M6piz7wk[m]>to get an environment with emacs is it just `(use-modules (guix) (gnu packages emacs))` ? <jgart>attila_lendvai, sounds like a good place to put it *M6piz7wk[m] is confused by the (package ... in the example file <jgart>M6piz7wk[m], `guix shell emacs` <M6piz7wk[m]>jgart: i need to define it through a guix shell file <florhizome[m]>jgart: i bought that dell Long Time ago before knowing about nvidea <jgart>you can also pass those vars through the terminal <florhizome[m]>M6piz7wk[m]: You can just specify the packages you want in the command i thought? <mekeor[m]>M6piz7wk[m]: env vars for what? like inside the package declaration? <M6piz7wk[m]>the idea is to provide a standardized environment with the emacs and everything needed to work with the source code <jgart>what are the vars you need to set? <M6piz7wk[m]>don't know yet depends on the configuration since i use the env vars to interact with repository manager <M6piz7wk[m]>and i also want to configure emacs through that file to set the expected configuration and packages <M6piz7wk[m]>so that contributor can just do `makers editors emacs` and get everything needed to work with the source code <jgart>you need to pass the -D flag I think if you want to hack on the elisp libraries now <M6piz7wk[m]>babysteps atm.. so just installing emacs works for now <M6piz7wk[m]>well not installing providing the guix shell with emacs <jgart>manifest.scm is for manifests and guix.scm is for definitions to build packages locally etc... <jgart>those are the standard file names now <jgart>they can be sourced automagically if you name them that way <jgart>manifests are exactly as it sounds, a collection of packages <M6piz7wk[m]>so file that pins the specific versions of the packages? <florhizome[m]>Something about ThinkPad Fan setup: you need to place a thinkpad_acpi.conf File in /etc/modprobe.d which enables Fan Control but in guix it doesn't ;/ at least thinkfan says it can't <jgart>for building a package locally <M6piz7wk[m]>so iiur this will get emacs in guix shell? (specifications->manifest (list "emacs")) <jgart>similar to `guix shell emacs` <M6piz7wk[m]>does the naming holds if i hold the files in editors/emacs/guix/...scm instead of root of the repo? <jgart>I've only tested calling from the same working directory as the file <jgart>I think other variations are possible if I read correctly <jgart>like from a parent dir or something... <M6piz7wk[m]>since on nixos i am using `default.nix` instead of `shell.nix` as `shell.nix` is for root of the repo only <jgart>you can call it whatever you want <jgart>but only guix.scm and manifest.scm do something automagical <jgart>you'd have to pass it the -f flag <jgart>guix shell -m foo-manifest.scm <jgart>I've only used one or the other <jgart>but maybe there is a use case for both <M6piz7wk[m]>i can't use both? like to get the emacs package and configure it? <M6piz7wk[m]>seems to work, but how do i pin the package? afaik it currently uses the available emacs package which breaks reproducibility <jgart>If you find an example use case for that please do share <jgart>the version has to be packaged for it to work <jgart>I made up the above version number for show <M6piz7wk[m]>yep it failed :d looking for the version in guix search now <jgart>what would people like to see in the cookbook? <jgart>it can also be a version in a channel <M6piz7wk[m]>(on nixos i have to ping specific commit of nixpkgs) <jgart>guix is really good at managing elisp <jgart>attila_lendvai, oh that's great to hear <jgart>are you going to send a patch? <M6piz7wk[m]>How do i manage rustlang packages? Do they have to be defined for guix? e.g. i need cargo-make <M6piz7wk[m]>might be great opportunity to learn how to submit new packages ⭐️.⭐️ <M6piz7wk[m]>kreyren@leonid ~/Repositories/grilumops$ guix import -r cargo cargo-make *M6piz7wk[m] is reading to help page <singpolyma>Stick it all in a file and `guix build -f thefile` <M6piz7wk[m]>what do i do with it now assuming the end-goal is defining manifest.scm <singpolyma>Well, once you get it to build with guix build you could then use it in your manifest directly <singpolyma>But yes, then patching it into guix and submitting would be good too <singpolyma>Yeah, I'm just too impatient to wait for merges so I use my local definitions until my patches go in <M6piz7wk[m]>Is there something like AUR for users to define their repositories and share packages? <singpolyma>You could make a channel, but if it's something that fits the criteria better to just submit to guix <M6piz7wk[m]>i meant for scenario where i am waiting for merge upstream and then deprecating it <singpolyma>I don't think there are many channels because getting stuff merged is so easy <ajarara>is it possible to have mutually recursive packages? <singpolyma>ajarara: no, but there are known for arounds for most such cases <singpolyma>Usually two versions of one the packages to break the loop depending on what they need each other for <jgart>might be a way forward for javascript packages <jgart>given it is "designed to replace Babel, ESLint, webpack, Prettier, Jest, etc..." <jgart>we'll probably have to wait a bit for it <jgart>attila_lendvai, cool! thanks for sharing <jgart>I'll try testing it if I find the time tomorrow <M6piz7wk[m]>oh is there some kind of emacs configuraiton that fills the modules for me or something <ajarara>singpolyma: I think there's a cycle in the dependency tree for guix. Lemme figure out some code that demos it. <podiki[m]>does --dry-run not work on core-updates-frozen for anyone? *M6piz7wk[m] goes to work on his system management in the meinwhile <M6piz7wk[m]>Can i submit it as unfinished patch so that it can be used as a reference for the next guy as i work on it there? <M6piz7wk[m]>Ehh how does the guix wiki work? Can i just contrib useful things there somehow? <M6piz7wk[m]>aaa finally i can customize my guix without breaking reproducibility my eyes were suffering from that white color everywhere <ajarara>singpolyma: nope nvm, the build tree for guix is just big enough that walking it recursively isn't instant. <M6piz7wk[m]>I need to set a `dired-sidebar-toggle-sidebar` in emacs using guix shell.. that's done in guix.scm right? <M6piz7wk[m]>and if so how.. i don't know where to start looking.. <M6piz7wk[m]>can anyone even see my messages or did matrix bridge sudoku-ed itself? x.x *M6piz7wk[m] cba to configure his hexchat so he continues to read guix.git <kozo[m]>Your messages are visible, just that the people who are able to help you are sleeping <mahmooz>do we not have a torbrowser package? <M6piz7wk[m]>psst.. TBB sucks configure your own browser if you know what you are doing <M6piz7wk[m]>which is very bad advise unless you really know what you are doing <M6piz7wk[m]>like running the browser in a VM with disabled JS and regular checks against fingerprinting tests *M6piz7wk[m] couldn't resist <M6piz7wk[m]>mahmooz: ask me in a week i am using it for 2 days atm so i can't really be taken for an expert opinion <M6piz7wk[m]>that said the backend is just on whole different level so far <M6piz7wk[m]>i might be even able to use this in my aircraft if i can get sufficient real-time kernel with it <mahmooz>lol im planning on using it everywhere too even on my live servers <M6piz7wk[m]>somewhere where you can give me SSH and resources to help me on my conquest to dominate the world ideally? <M6piz7wk[m]>assuming clear energy else none is making you my right hand when that happens <mahmooz>lol best i can do is make u a delicious burger <M6piz7wk[m]>FWIW i plan on using this on +200 servers atm developing a system manager for it atm <M6piz7wk[m]>is it a job if people give you money for not doing anything? <M6piz7wk[m]>well i am great at screaming and threatening so i guess i am getting underpaid <M6piz7wk[m]>... well i used to beat up people with a hammer for not doing their job, but that responsibility was passed up on me by my predicessor there <M6piz7wk[m]>it was an inflatable hammer that does funny sounds don't panic <dissent>when i remove %base-services the config works fine but with it i'm getting some errors. <dissent>my god these parentheses are going to give me a stroke <jgart>dissent, if you're already using %desktop-services then you're also already using %base-services <jgart>see gnu/services/desktop.scm ***janneke_ is now known as janneke
<jpoiret>cannot close compressed lock file when building inkscape on c-u-f, anyone else? <jpoiret>did not reproduce a 3rd time, disregard that <jpoiret>alright, libva needs an update on c-u-f, at least for wayland compositors to work with it <rovanion>Is it possible to start a service as part of a guix shell/environment? The software I develop needs a postgres database and it would be sweet if I could just declare it in a .envrc and have it start up if I enter that project folder. <jpoiret>docs are unclear, `guix graph --path FIRST SECOND` tries to find the shortest path to SECOND in the dependencies of FIRST, and so you cannot exchange those arguments. None of the docs mention this argument order issue. Patch incoming then <jpoiret>nckx: are you running your system on master? if so and since libva isn't broken for compositors there, should the libva version bump be submitted to c-u-f instead of master? i'm still struggling to differentiate between where to send the patches <jpoiret>i mean, c-u and master are kind clear, but c-u-f is supposed to be the "next" version so is not just "lots of rebuilds" vs. "just a handful", right? <jpoiret>by the way, manifests and package rewriting are very impressive. Just tested upgrading libva in the dependency graph of a wayland compositor + libva-utils, used `guix environment`, and everything worked <lilyp>rovanion: Guix environments are cheap -- they're no containers most of the time and even then it's often just a manual shell process <lilyp>if you can arrange everything on your own inside of that then that's fine, but it is severely less expressive than operating-system ***stikonas_ is now known as stikonas
<tom112>Hi. I'm working on "erase your darlings" for Guix System. This will involve some small patches in the short term, and some longer term work. How am I best interacting with the mailing lists to track this? <tom112>Raise an issue for long term tracking, and send separately send some the smaller patches to guix-patches@ ? <tom112>Raise an issue for long term tracking, and separately send some the smaller patches to guix-patches@ ?* <jpoiret>does anyone use a LUKS setup on Guix along those lines: encrypted root, use one passphrase in Grub, unlock in early userspace using key embedded in initramfs? if so, isn't the initramfs world-readable since it is in the store? <lilyp>hmm, I wonder if there's a way to pass memory from GRUB to early userspace ***boosh[m] is now known as boost[m]
<jpoiret>tbf, i'm thinking of adding kexec support to shepherd so that we can reboot fast without going to grub, once we have that we could even consider using an EFISTUB minimal kernel+initramfs as a bootloader <jpoiret>because one of GRUB's deficiencies is its terrible crypto performance for luks <jpoiret>(also that would mean guile bootloader!) <nckx>jpoiret: EFISTUB only works with UEFI firmware, though, which many people don't have and/or want, so we can't use it by default. That's GRUB's great advantage. Do you know if there's an alternative? <jpoiret>nckx: yes, of course. That'd just be an alternative bootloader to GRUB, it ain't going anywhere! <jpoiret>alternatives as in alternatives to Grub for legacy bios boot? unfortunately, no, especially if you're looking for great features <jpoiret>maybe grub shim -> small bootloader kernel -> actual kernel, but that'd complicate things i feel like <nckx>I guess the closest is LILO 😛 <jpoiret>yes. But then, if we don't really need the grub features, we could simply chose the smallest bootloader to chainload into the bootloader kernel. Although that would mean having an extra partition <nckx>Oh. Does it? I forgot that then. <nckx><we don't really need the grub features> Right, that's what I meant: not maintaining two full-featured full-menu boot loaders. <jpoiret>yes. although, you could argue that we "already" maintain a capable bootloader: the linux kernel <nckx>It literally can't boot itself. <jpoiret>yes, but the same can be said for grub <nckx>You need another boot loader like GRUB or UEFI to get there. <nckx>That is not true for GRUB. <jpoiret>but i mean, you can use it with a small bootloader shim instead of the whole grub along with its features <jpoiret>that is, you wouldn't need to add much more to Guix to support that use case <nckx>Or rather, the bare states it can boot from are much barer and multiple than just ‘a full-blown UEFI run-time’. <nckx>We're talking about the same thing, just not considering the same thing a ‘boot loader’. <jpoiret>Also, that'll mean rebooting into a newly configured system will be faster <jpoiret>nckx: about the libva version bump I talked about earlier, which branch should i send the patch for? master or c-u-f? it works fine as is on master, and only broke with c-u-f updates, that's why i'm wondering <jpoiret>also since c-u is not c-u-f is not master <nckx>Does it break on master? *nckx reading backlog now. <nckx>c-u-f by the way means bugfixes only, not new features/versions. Those go on c-u if they rebuild > 1800 packages, master if <= 300, staging otherwise. That's the only rule. <nckx>libva rebuilds 249 packages so if it doesn't break acceleration on master, that's where it goes. <janneke>using a usb installer from yesterday, the size of tty3 is wrong: stty size reports 48 170, where it should be 24 80 <janneke>i used: stty rows 25 cols 80 to work around this, any idea what could cause this annoyance? ***dekenevs is now known as kitzman
<roptat>ah, the website still lists all languages as "English" :/ <janneke>hmm, on a second boot from the usb, the console fonts have been reset to match the size <M6piz7wk[m]>I need a guix shell with emacs that invokes `M-x treemacs` ... how can i do this? *M6piz7wk[m] wasn't able to find the derivation yesterday <M6piz7wk[m]>or preferably setting emacs keybinding on C-/ to toggle the treemacs <roptat>guix shell can only give you software, not configuration <roptat>(I don't use emacs, so maybe I'm wrong but I assume keybindings are part of some configuration?) <M6piz7wk[m]>i basically need an emacs derivation that allows me to set a keybind assuming there being one to do that? <jpoiret>don't you rather need `guix home` to write your init.el M6piz7wk[m]? <jpoiret>minikN: shepherd-root-service-type extensions take lists of (parametrized) shepherd services <jpoiret>I use (compose list myservice-def) as the value <M6piz7wk[m]>jpoiret: i guess if that can do it? don't know what guix home is <jpoiret>guix home is for managing your home folder, configurations, and user daemons <jpoiret>basically what guix system does but for your user session <jpoiret>note however that it is highly experimental for now <jpoiret>do you want a temporary shell or an emacs binding? <M6piz7wk[m]>temporary shell with emacs binding.. the idea is `makers editors emacs` to deploy temporary environmen with standardized configuration to work on the repo <M6piz7wk[m]>(makers is cargo-make used to manage the repository to invoke commands and tasks) <minikN>jpoiret: Hm.. Okay. I've looked at both the sddm and nix service definitions and they do it also like I do. I basically copied them <M6piz7wk[m]>fwiw i was thinking `guix shell -m manifest.scm -f guix.scm` where guix.scm has defined the derivation to provide the init.el in the shell <jpoiret>ah nooo, your iptsd-shepherd-service procedure does return a list <jpoiret>how are you using it in your operating-system? <jgart>M6piz7wk[m], guix.scm usually contains a package definition and people usually put that file in the root of their project repo in order to build the project locally with guix <jpoiret>minikN: no idea why you would get that backtrace <jgart>that's what I've usually seen guix.scm used for <minikN>jpoiret Yeah I'm clueless as well. I don't understand the error as well. <jpoiret>by the way, do you actually need to add iptsd to the system profile? <jgart>It always builds guix.el from the latest commit <minikN>jpoiret I got it. Quite embarrasing. I started coding that service directly in my config and moved it to its own file eventually, but I forgot to delete the residual shepherd service in my config :( <jpoiret>heh, no worries, glad to see it's working :) <minikN>jpoiret Not working yet, but at least I'm off to the next error :P <M6piz7wk[m]>How could i standardize the environment then? Just using init.el ? <M6piz7wk[m]>probably better implementation if i define something like `workspace.code-workspace` though <M6piz7wk[m]>but that kinda defeats the point of using guix to manage emacs packages <vivien>Hello Guix! I noticed that I can’t run jami, unless I start dring first. Is it normal? Is it supposed to be started automatically, and I screwed up something? <vivien>I would appreciate if you could try to run guix shell jami-qt -- jami-qt (replace -qt with -gnome if you prefer), and tell me if it works. <vivien>By "it works", it means: a window opens (jami-qt), or a window opens and an error message is NOT displayed a few seconds after that (jami-gnome) <lilyp>vivien: yep, that's pretty much expected <vivien>lilyp, are people already working on a guix home shepherd service to run dring? <lilyp>I think dring might start normally if you have jami in you profile rather than using `guix shell' for it <vivien>Oh, maybe that’s a guix home bug then? <vivien>(I can’t run it within guix home) <lilyp>There is a system jami service, but no home jami service afaik <lilyp>system and home services are still different entities <vivien>But, the shepherd home service accepts extensions with the same API as the system shepherd, if I understand the manual correctly <lilyp>dbus stuff is not handled through shepherd last i recall <vivien>I think I understand the problem: the dbus interface is meant to be lazily started, but for this to work, the system configuration must be aware of the .service file <apteryx>vivien: it's a dbus configuration problem <apteryx>but it's not easily fixed I'm afraid; it could be documented at least though. <apteryx>there's an issue about it on our tracker <vivien>apteryx, do you remember which one? <vivien>Oh wow, prefixing the command with dbus-run-session works <apteryx>in the next release of jami the clients won't use dbus anymore to communicate with the daemon, so the issue will be side stepped for this specific case <apteryx>it'd be good to document this pain point for general knowledge though <apteryx>for example attempting to use any guix provided dbus services on a foreign distribution <vivien>I’m not on a foreign distribution <apteryx>what I said for non-default profiles then ;-) <apteryx>(which includes the profiles generated for guix environment/shell) *mekeor[m] sees only little value in guix-home as long as there's no compatibility between system- and user-shepherd-services <apteryx>vivien: should we merge your recently opened jami/dbus issue with 48538? <vivien>I was writing a reply to ask you to do that ^^ <lilyp>daily reminder that `guix home' is still in its infancy and bugs are fixed left and right <lilyp>though not that related to the jami thing <vivien>I’m already dependent, I have set a bunch of services that makes my life easy :) <vivien>Or at least, easier even counting the accidental guix home bug <vivien>(aside from jami, I haven’t seen any to be honest) <M6piz7wk[m]>> error: failed to run custom build command for `openssl-sys v0.9.70` <efraim>isn't that the one that wants openssl-1.0? <efraim>ah, no that was a different one. We have a patch to skip using the openssl-src crate <efraim>looks like the patch has to be refreshed for 0.9.70 <efraim>hmm, that one looks for openssl-3.0 <M6piz7wk[m]>oh makers != cargo-make even though cargo-make has makers <vivien>Is somewone working on the webkitgtk failure? <mekeor[m]>6piz7wk, i guess you could've found out which package is missing by searching /gnu/packages/rust.scm for openssl <M6piz7wk[m]>the package in question (cargo-make) is not packaged so i couldn't <mekeor[m]>it's often helpful to look into similar package definitions for hints ;) *M6piz7wk[m] used the pre-built binary as a hotfix to his problem <efraim>you could also do `guix import crate -r cargo-make > cargo-make' and then do `guix build -L. cargo-make' and see if that works <M6piz7wk[m]>i was trying to define a package for contrib yesterday but got stuck *M6piz7wk[m] wants to focus on managing his system prior to working on that <M6piz7wk[m]>and the binary needs a rustlang backend which seems like a lot of pain to set up <M6piz7wk[m]>forget it then i write the commands manually for the time being >.< <M6piz7wk[m]>The file works file with just (display "something").. seems like i did something that generates an unhelpful err <M6piz7wk[m]>kreyren@leonid ~/Repositories/grilumops$ guix system build --debug=5 ./src/default.scm <M6piz7wk[m]>/home/kreyren/Repositories/grilumops/src/users/kreyren.scm:32:0: error: (operating-system (users (cons* (user-account (name "kreyren") (comment "Jacob Hrbek") (group "users") (shell (file-append bash "/bin/bash")) (supplementary-groups (quote ("wheel" "netdev" "audio" "video"))))))): missing field initializers (bootloader host-name file-systems timezone) <mekeor[m]>maybe read the error messages first before flooding the channel. also, i'm not sure if you really want to share your real name here etc. <vagrantc>hrm. guix to be removed from debian testing due to a failed i386 build ... have there been i386-specific fixes since 1.3.x? <vagrantc>GC Warning: Failed to expand heap by 131825664 bytes <vagrantc>GC Warning: Out of Memory! Heap size: 3401 MiB. Returning NULL! <vagrantc>i think i've seen that failure semi-randomly, but with updates to debian's toolchain (e.g. gcc-11 by default), seems to be happening more <roptat>vagrantc, not enough memory on the builder <roptat>vagrantc, have the same issue on my armhf board, 2GB is not enough <roptat>there were some fixes to lower the memory consumption, by splitting the build, but that's no longer sufficient for me <roptat>and, the build absolutely doesn't swap for some reason <roptat>minikN, oh, your when blocks are probably the issue: when the condition is met, the result is a string, but otherwise it's #<unspecified> <roptat>(also, (when (not cond) body) is the same as (unless cond body)) <minikN> Well, I think the way I approached this isn't good any way. The goal was to only write the line if the string is not "" <ss2>What does it mean when an lambda* expression is terminated with a #t? <roptat>maybe something like: `(,@(if cond '() '("the line")) ...). It would create a list with only the strings you want <ss2>nothing more? Can it be left out, or why is it placed there? <minikN>roptat: Or maybe there is a better way? I'd like to only write the config option to file if the user specifies it. With strings that's easy, I can just set the default to "" and check for that, but with booleans, I have a problem because they need to either be #f or #t. <roptat>it used to be required, so there's a message telling you to end the phase in #t, but it's actually not required anymore, so it's fine to leave it out <vagrantc>roptat: i get that with a machine that has 140 GB of ram <roptat>is it used by something else that takes 138GB of ram? :D <roptat>minikN, maybe with #nil? (careful though: (nil? #nil) and (nil? #f) are both true :/) <minikN>roptat: A boolean can't be #nil, can it? I tried that before and got an error <GNUHacker>how I start/stop/reload services in guix system? <ss2>sudo herd {start,stop,reload} service <roptat>minikN, do you really need a boolean? where does the error come from? <roptat>if it's necessarily a boolean, then there's no way to say if a field was set or not <minikN>roptat: Not necessarily, I used strings for now, that way the downside is that the user has to set them to "true"/"false" in their config but that's okay I guess <roptat>you could also ask for a symbol, 'true, 'false or 'unset <minikN>Hm.. I want to get it to work first :P <tricon>How does Guix System determine which static-networking-service will supply the default route? <minikN>roptat: What you suggested worked. Will work on the symbols next. Many thanks. <roptat>tricon, I think it doesn't, it'll be somewhat arbitrary (maybe controlled by the order the services are declared in) <tricon>roptat: I tried reversing their order but the results were the same. The issue I have is that when I reconfigure and restart networking, I lose access to my VM with dual NICs due to the default route changing. I can work around this, however. <tricon>roptat: I may do that, thank ya! <roptat>the_tubular, you can define packages in any files, including a manifest.scm <roptat>although, your manifest.scm needs to return a manifest object <roptat>manifest.scm is the usual name for a manifest file, that you would use with "guix package -m manifest.scm" <roptat>it can't just return a package, it needs to return a manifest object <roptat>the file can define any number of objects (including packages) before returning a manifest though <minikN>the_tubular the last thing in your file needs to be the name of the pkg <roptat>no, the name of the package would be expanded to a package object, not a manifest <the_tubular>So I need to define the package before the list of installed package ? <roptat>something like (define my-pkg (package ...)) and then your list of packages can include my-pkg <vagrantc>oh, manifests can define custom packages? <roptat>vagrantc, manifests are just scheme files that return a manifest <roptat>although, it won't work with specifications->manifest <vagrantc>roptat: i haven't read up enough to know what a "return a manifest" is <roptat>because you won't be able to use a specification to refer to your custom package, you need to use the variable bound to the package <roptat>a manifest is different type of scheme object <roptat>essentially, it's a list of packages <roptat>manifest.scm is a scheme program that needs to return that list <roptat>that means it can do whatever it wants before returning that list, including defining a custom package <minikN>roptat: I take the "it's working back". Can I pass the list I create with `(,@(if ...)) to mixed-text-file as a 2nd argument? <vagrantc>hmmm... maybe i'll play the ./bootstrap && ./configure ... dance less often :) <roptat>minikN, (apply mixed-text-file "myfile" `(...)) <GNUHacker>how can I fix that?: "Received a bad CERTS cell: At least one certificate expired." <minikN>roptat: It's working. This is how it is rn: https://paste.debian.net/1217683/ but if I pass a config option like so: (service iptsd-service-type (iptsd-configuration (block-on-palm "true"))) I get unbound variable block-on-palm. <ajarara>If a dependency that guix itself depends on changes... then every guix involved in the boot-stripping process is rebuilt? How many are in the chain? <apteryx>jgart: re the jami package in guix; have you tried it yet? works for me, at least the basic features such as video calling and sending messages. I haven't had much luck with calls recording though. <roptat>minikN, '((string-append "BlockOnPalm = " block-on-palm)) makes block-on-palm a symbol, and in the gexp this symbols becomes a variable, that was never bound inside the gexp <apteryx>sending files is also flaky (as in; requires an uninterrupted connection to the destination from the moment you initialize the request -- which is bound to fail) in the current release; that's supposed to change with a complete rework of the way it works in the upcoming release <roptat>minikN, use `(,(string-append "BlockOnPalm = " block-on-palm)) instead <roptat>GNUHacker, mh, I don't know, maybe it would be easier to tell with more context? <ajarara>I'm imagining that guix-1 is used to build guix-2, guix-2 to build guix-3. If all 3 depend on a dependency that changes, guix-1,2,3 must be rebuilt to correctly arrive at 3 <roptat>ajarara, sorry I don't understand the comment at all :/ <lilyp>I think the real problem is that the term "boot stripping" does not really lend itself well to being searched (the confusion with bootstrapping is real) <lilyp>ajarara: I don't think it is a hard requirement to build revision 3 with 2 with 1 with 0 with 1.2.x-n, and so on <lilyp>but there are particular points where guix pull might fail to get you ahead <lilyp>so you can't really jump from 0.14 all the way to 1.4 <lilyp>but with some intermediate steps (let's say, 0.16, 1.0, 1.2, 1.3-8) you might <ajarara>I think I understand what you're saying: you mean that it's possible you pull before the latest version of guix, cache miss, and start building? But that we update guix infrequently enough that there's only a small window to observe that? <ajarara>but I don't know how that relates, so I'm probably misunderstanding. <lilyp>Well, cache miss and manual build might happen either way. <ajarara>lilyp: I'm trying to update libssh for guix, specifically for ssh keys stored on security keys. It takes a _very_ long time, and the dependency graph when I swap out libssh for a local checkout is very large. I'm thinking this is the problem. <lilyp>Well, yeah, updating libssh is probably a core-updates endeavour <ajarara>hmm.. I'm going to play around with this some more and see if I can explain myself better later. <jgart>has anyone used the jami package in guix successfully? <roptat>ajarara, lilyp but guix pull has nothing to do with the guix package definition <jgart>apteryx, oh saw you're reply above now ;) <jgart>apteryx, have you tried it on a foreign distro? <lilyp>jgart: It's not that hard to use successfully, you only need to jump to a few hoops regarding dbus <jgart>lilyp, this is on Guix System or a foreign distro? <lilyp>Guix System, but you should be able to manually start dring even on foreign distro, I believe <lilyp>keyword being manually start <jgart>It seems to be autostarting for me with xfce environment <jgart>but haven't chatted yet with anyone <lilyp>roptat: but the package definition only gives us some recent version of guix, no? <jgart>It wasn't autostarting before when I was using dwm <roptat>lilyp, yes, but not the latest commit <roptat>and guix pull doesn't use it at all, it has its own machinery at guix/self.scm <jgart>roptat, what desktop environment do you use? <avp>Hello, Guixers. How can I re-build a single package in Guix so that will not be using already built derivations in the store? <jgart>oh right, I remember seeing that in guix home manager <roptat>yes, I converted it to guix home, I'll send a patch :) <jgart>cool, I look forward to checking out that patch <roptat>I've configured it to do exactly what I want, I don't want to switch to anything else now :) <roptat>although, I would be able to reproduce that on most other window managers I guess <podiki[m]>avp: look for the no-substitutes option I think (though if you don't prebuilt dependencies either, I'm not sure) <jgart>roptat, what terminal do you mostly use? <avp>podiki[m]: I tried '--no-substitutes' option but it seems that Guix keeps using derivatives from the store. <roptat>(because it has relatively few dependencies, but I'm not particularly attached to it) <avp>Basically I want to re-build some package to check the if the offloading works. <podiki[m]>avp: you mean for dependencies the package needs? then I'm not sure...maybe garbage collect first? <jgart>I'm not attached to tilix either. I just started using it a few days ago <roptat>well, just because they force drawing a title bar on windows :p <jgart>right, yeah I'm finding that a bit annoying currently <jgart>I just switched from dwm to xfce <florhizome[m]><jpoiret> "tbf, i'm thinking of adding..." <- That sounds neat :) it’s really is annoying :) <jgart>I've mostly used dwm for the past couple of years though <roptat>and the "Gnome Human Interface Guidelines" makes confusing designs <jgart>just software hopping a bit at the moment <roptat>got stuck on the presentation interface for a good 5 minutes until I found the "next" button was on top of everything <jgart>roptat, do you use a terminal multiplexer like tmux <jgart>or just what is built into neovim? <roptat>also "tmux list-sessions" is a mess on my servers, it goes to 26 on one of them ^^' <jgart>I tried using abduco and dvtm for a bit but ran into some bugs that were kind of annoying <jpoiret>jgart: i feel like the few use cases where tiling linux console would be useful aren't the ones where you can install the software you want <apteryx>jgart: for jami on a foreign distro, currently launching it is a bit tricky (because of the incontrolled dbus config of the host). You'll find pointers in the http://issues.guix.gnu.org/48538 issue. <jgart>it seems pretty straightforward for me on xfce <jgart>there's some magic going on that I'm not aware of <jgart>I installed xfce with xbps package manager <apteryx>it's just a 'guix pack -f deb' bundle with an initscript to setup updates from the above apt repo, bundled nss-certs and some symlinks to integrate with the system nicely <avp>podiki[m]: '--no-grafts' along with the '--check' for 'guix build' did the trick. <jgart>it's too bad that there is not a pack output for void <avp>apteryx: Have you checked if my changes to Guile-SSH helped to solve the offloading problem in Guix? <avp>Currently I try to run the checks myself but my current knowledge of Guix is probably less than yours. <podiki[m]>avp: ah, that's the one. you can also do multiple builds (to check reproducibility for instance) which should force a build <pranavats>jpoiret: Remember that issue where I couldn't get Grub to boot a few days ago? (LVM on LUKS setup) <jpoiret>roughly, although i don't remember the specifics <jpoiret>oh, what was the cause (if you could figure it out) <pranavats>My Macbook firmware just didn't recognize that SSD. Interestingly enough, it refused to recognize the previous preinstalled SSD once another one was inserted. <jpoiret>oh, better! maybe this we can find the cause of <jpoiret>so grub prompts a password, attempts to decrypt and fails (or hangs)? <avp>Now Guix says "unauthorized public key" for my offloading machine. I have the machine's host key added to the 'machines.scm', but still I'm getting the error. Probably I overlooked something... <pranavats>I created an ESP on an SD card, and the rest of the system is on that SSD in a single LUKS1 partition. <pranavats>jpoiret: It says "no such cryptodisk found" and gives an lvmid of the disk. <jpoiret>well it should be trying to decrypt luks volume using its luks UUID <jpoiret>did you put the luks UUID inside the luks mapped-device? <pranavats>I can see it in grub.cfg it has "cryptonount -u " with the correct luks UUID. <jpoiret>oh, okay then. Maybe GRUB can't find the device either <jpoiret>can you get into a Grub shell? you should be able to <pranavats>This is strange. Installation OS can read and write to it just fine. <jpoiret>mhmmm, maybe try ls'ing after some delay, maybe the device takes some time to initialize <pranavats>Does grub rely on the UEFI I/O to detect the disk, and maybe the installer OS doesn't? Just trying to wrap my head around this. <jpoiret>nice. You could try adding some delay then <jpoiret>add `sleep n` manually at the top of the grub.cfg <jpoiret>now, how to add that in config.scm is another matter entirely (not sure if it is doable) <pranavats>jpoiret: I'm sorry, it was the installer disk that remained in the USB slot. It doesn't detect the SSD. <pranavats>jpoiret: Thanks for looking into it. Let me get back to you after diagnosing some firmware issues. <jpoiret>it does seem weird. I think you should look into making the ssd visible to the firmware <attila_lendvai>tough luck: i imported countless packages with the go importer, but it probably produces circular dependencies, because attempting to build it runs for a while silently and eventually the heap blows up. is there circular dependency detection? <nckx>M6piz7wk[m]: The latest IceCat release is 60.7. For comparison, the latest Firefox release is 93.0. <nckx>I cannot in good conscience recommend running a release version of IceCat at this time. <M6piz7wk[m]>the ice cat i have is 91.2.0 though so i assume it's maintained just the binaries are not released? <nckx>That's a ‘preview release’. <nckx>Yes, the project is maintained, I don't know why they don't release binaries but I think it's because they don't quite consider the current state up to their own standards, or something. <nckx>As the link you posted says, Guix has up-to-date binaries. I recommend using them. <nckx>Good thing Guix has lower standards! /s <nckx>Oh, 91.3 just got pushed. <lilyp>Well, I think their standards has "doesn't break for Debian oldoldstable" hidden somewhere in the fine print <nckx>I don't envy them. I can only imagine that they are stuck between several rocks and various hard places simultaneously. It's very hard to move then. <lilyp>Meh, I do wish less browsers felt the need to break Debian oldoldstable like... every five minutes. <nckx>Do they literally break the distro, or just on the distro? <nckx>I'm not about to search for ‘Debian old old stable’ to install & test 😛 <lilyp>depends on how far you're willing to go to install them as package *nckx .oO would Guix be a solution here? <lilyp>Sure, because you have everything in the gnu store, nothing touches le ancient libs. <nckx>(I'm sure Debian old old stable doesn't support namespaces or something Guix-breaking. Linux 2.6, much stable.) <lilyp>apropos browsers breaking stuff, our Webkit security update broke master *nckx just got back though. Hasn't done anything about it or anything. <lilyp>hmm, it's time for `guix pack -RRR' then <lilyp>I just checked and libsoup 3 requires glib 2.69 (which means 2.70 most likely given GNOME versioning) <lilyp>do we at least have that on c-u-f? <nckx>It seems the update fixed ‘only’ one CVE. Has anyone looked at the fix and whether it's backportable? *M6piz7wk[m] would just deprecate support for debian and binary distros as it requires an unreasonable amount of resources and forces malpractice <nckx>I hope you don't have to deal a lot of anti-vax puns. I'm sorry if you do. <ajarara>heh. I'd think they don't land well on IRC. <jab>anti-vax puns? I can't say anyone's "pulled-me-o" leg that way. (polio). <jab>that was possibly the worse pun I've ever created.