IRC channel logs

2022-05-13.log

back to list of logs

<emacsomancer[m]>does anyone have experience running mullvad's vpn from nix on top of guix? I run mullvad elsewhere without issue and have run mullvad via nix on top of another linux distro without issue. But on guix, though it works, from time to time guix seems to lose dns lookup ability until I turn off the vpn.
<jackhill> /win 23
<apteryx>lechner: like icons or fonts, the choices of certificates is left to users to choose which one they prefer/trust.
<horizoninnovatio>The problems I was having with evolution on XFCE has been solved by adding gnome-desktop-services to config.scm and "reconfigure. Obviously pulled in some gnome packages that fixed the problem. Shouldn't these "gnome packges" be dependencies of evolution so it can run on other desktops? Just curious.
<Aurora_v_kosmose>If evolution requires them to work properly? Yes.
<horizoninnovatio>That then raises the question of why haven't they?
<Aurora_v_kosmose>Just guesses: The dependency might not be explicitly written in their documentation, wasn't at some time, or is marked as "optional/recommended".
<horizoninnovatio>If it stops the app from working then it shouldn't be "optional/recommended"?
<Aurora_v_kosmose>horizoninnovatio: If it was never tested by its devs outside of Gnome, dependencies might have snuck in.
<Aurora_v_kosmose>Unawares.
<Aurora_v_kosmose>That would be somewhat neglectful, I suppose, but many have yet to learn how useful guix graph is.
*Aurora_v_kosmose is of course hinting that Guix is a great development tool they failed to use.
<lechner>apteryx: Thanks! Does Guix offer choices?
<oriansj>lechner: what do you mean by choices?
<lechner>oriansj: CA certificates other than nss-certs
<oriansj>like le-certs or just creating your own? because those are options
<lechner>oriansj: one of them should be required. 'guix system reconfigure' fails when nss-certs is not installed in the system profile (user or root are not enough) and installing any certificates becomes impossible
<lechner>i think
<oriansj>lechner: dictating roots of trust has implications. You should be free to choose for yourself who you trust.
<lechner>oriansj: guix, not i
<oriansj>lechner: Guix is about empowering you and with that comes responsibility
<apteryx>lechner: is your guix up to date? I think guix itself is immune to lacking certs to update itself (it includes them as dependency)
<apteryx>to be verified, perhaps done in the guix pull code
<lechner>i used guix from Debian 11 to cross-install but ran 'guix pull' before. when i followed the first file here, no furter 'reconfigures' were possible after booting into the system https://guix.gnu.org/manual/en/html_node/Using-the-Configuration-System.html
<jgart>hi guixers! what might I be missing with this one? https://todo.sr.ht/~whereiseveryone/guixrus/166
<jgart>I'm trying to upgrade nsxiv to the latest
<jgart>I have a patch in the comments that can be applied to master branch if you'd like to try it out
***LispyLights is now known as Aurora_v_kosmose
<GNUverkty[m]>what is that guix software forge thing called again?
<jgart>GNUverkty[m]: https://guix-forge.systemreboot.net/
<jgart>Arun Isaac will present on it on the 28th
<jgart>GNUverkty[m]: I'll announce the event soon.
<jgart>on the mailing list
<GNUverkty[m]>jgart @jgart:libera.chat: thanks!
<GNUverkty[m]>I couldn't find it at all by searching for guix-forge
<jgart>GNUverkty[m]: the source code for guix-forge is here: https://git.systemreboot.net/
<jgart>Yeah, it's a bit hard to find. I first learned about it because Arun had mentioned it to me and had asked me to review the docs for it.
<jpoiret>jgart: maybe you already found out but https://github.com/nsxiv/nsxiv/commit/696f68753f1b85299f64592f9cc57c2e77d914f1
<jpoiret>arf, not even what i was meaning to look up
<jpoiret>it should be make install-icons note make -C icons install
<jpoiret>lechner: wdym by no further reconfigures were possible?
<PotentialUser-42>Hi. How do I specify a branch inside a package definition? I skimmed over guix/gnu/packages but so far without luck.
<PurpleSym>PotentialUser-42: Usually you don’t, because a branch is not atomic and can change, invalidating the hash.
<jgart>PotentialUser-42: that's funny that you asked that question becuase I was asking myself that just a few moments ago in regards to something I was trying to package haha
<Aurora_v_kosmose>Fascinating @ guix-forge
<jgart>PotentialUser-42: I think there must be an example of how to specify a branch somewhere...
<jgart>iirc I did it once for a package but can't remember now ;()
<jgart>I do a grep for branch filtered to only lisp files in the guix source tree
<jgart>s/I'd do
<Aurora_v_kosmose>Between Sourcehut and Guix-Forge, I like what's happening in the forge space.
<jgart>jpoiret: thanks for the link. I hadn't read the Makefile yet
<jgart>;()
<jgart>thanks for pointing that out! :)
<jgart>Aurora_v_kosmose: SourceHut is really cool but I also like the philosophy of guix-forge:
<jgart>BYOF
<jgart>Bring Your Own Forge
<Aurora_v_kosmose>jgart: The "email is already quite reliable and appropriate" outlook is a large part of what I like.
<jgart>All we need is a "forge ring" to connect all these BYOF's
<Aurora_v_kosmose>Despite the inconvenience, I'm perversely glad of what happened with youtube-dl, because it provides a great example of why relying on takedown-vulnerable forges is a bad idea.
<Aurora_v_kosmose>And public-inbox + email + git = lol have fun
<jgart>I <3 the email workflow
<jpoiret>PotentialUser-42, jgart: you'd need to use a git-checkout object as the source
<jgart>and sharing patches instead of PR's over a proprietary JS UI
<jgart>PotentialUser-42: for picking a branch you mean?
<jpoiret>yes
<jgart>oh
<jgart>ok
<Aurora_v_kosmose>public-inbox stores email in maildir, right?
<jgart>what is a git-checkout object exactly?
<jgart>Aurora_v_kosmose: I haven't looked into it fully yet
<jpoiret>it's a lowerable object (so it fits into a (source ...) field) that checks out a git repo in your cache, and adds what you specified into the store
<Aurora_v_kosmose>If it does, then one can get nice indexing & searchability just by pointing mu at it.
<jpoiret>that's what guix pull uses internally to update to the latest commits
<jpoiret>but you can use it on your own, although you won't get the benefits of hashing
<jgart>We started hosting this irc logger that I think is pretty nice: http://litterbox.whereis.みんな/
<jgart>I recommend the other projects by June and causal agency: https://git.causal.agency/
<Aurora_v_kosmose>I'm running a test, I'll be able to tell soon-ish how stores stuff.
<jgart>Aurora_v_kosmose: This might be a nice alternative to public-inbox by June: https://causal.agency/list/
<jgart>That link is a live instance of bubger
<jgart> https://git.causal.agency/bubger/about/
<jgart>IMAP archive generator
<jgart>I needed to know how to pick a different branch in a guix package for this package: https://github.com/bozokopic/mbgui
<Aurora_v_kosmose>Stored in IMAP...? But IMAP isn't a storage format...
<jgart>The master branch holds the QT GUI and there is a tk branch
<jgart>mbgui is a maildir GUI for mblaze
<jgart>highly recommend checking out mblaze if you want to procrastinate on replying to emails further
<Aurora_v_kosmose>bleh @ mbox
*littlebobeep is not the biggest fan of basing a forge around email
<littlebobeep>cgit is not the worst but gitea has way better UI
<jgart>littlebobeep: have you checked out smithy?
<littlebobeep>jgart: never heard, have link?
<jgart>there's also cgit-pink, which is a fork of cgit by June from causal agency
<jgart>it has lots of nice patches applied and the UI is snazzier
<jgart> https://github.com/honza/smithy
<jgart> https://git.eletrotupi.com/
<jgart>This would be a great one to package: https://github.com/aartaka/nx-search-engines
<jgart>say good bye to ddg
<jgart>It'd be great to crowd-source duckduckgo bangs in an open format in one mono project
<jgart>maybe someday
<jgart>ddg!->nyxt
<Aurora_v_kosmose>hmmmm... seems like I was wrong.
<Aurora_v_kosmose>It just stores individual mbox mails in hash-indexed directories
<Aurora_v_kosmose>How obnoxious.
<maximed>jgart, Aurora_v_kosmose: Also, support for multiple fallback URIs in the 'url' field of 'git-reference'
<maximed>like is the case for 'url-fetch'
<Aurora_v_kosmose>Seems like isync/offlineimap is still going to be required whether I use public-inbox or something else.
<jpoiret>Aurora_v_kosmose: you can use piem instead
<jpoiret>or lei
<jpoiret>piem is emacs, lei is a binary
<jpoiret>jgart: the irc logger seems to have the wrong motd for today
<jpoiret>otherwise it looks good! the search even works :p
<Aurora_v_kosmose>Hmm... piem doesn't seem to support mu4e though.
<littlebobeep>Nyxt has no extensions hmmmm
<Aurora_v_kosmose>littlebobeep: Eventually, webext is wip
<Aurora_v_kosmose>jpoiret: I'll need a link for lei, I can't seem to find it in search engines
<jpoiret>Aurora_v_kosmose: https://people.kernel.org/monsieuricon/lore-lei-part-1-getting-started
<jpoiret>i'll try moving my workflow to that when i stop procrastinating on that front
<jpoiret>subscribing to a mailing list and filling up my personal mailserver isn't a good idea
<jgart>jpoiret: You mean this line from the MOTD? "This server provided by Hyperfilter (https://hyperfilter.com)"
<Aurora_v_kosmose>jgart: Thanks
<jgart>jpoiret: If so, thanks for reminding me: https://todo.sr.ht/~whereiseveryone/services/6
<jgart>fun times with emacs: https://paste.sr.ht/~whereiseveryone/df86e55ec6bb5eaf36281bf6e6027c0a17fdea35
<littlebobeep>Aurora_v_kosmose: what is the license of these payware apps on top of Nyxt? It says Dementer costs 10 USD but is it proprietary?
<Aurora_v_kosmose>hmm... lei seems interesting, but it basically has the same issue as offlineimap. It just duplicates something I already have on my machine (since I just cloned the public-inbox storage repo)
<jpoiret>oh, no, i was talking about the topic line silly me https://litterbox.whereis.xn--q9jyb4c/scooper/events?network=Libera.Chat&context=%23guix&before=2022-05-13T07%3A01%3A11
<Aurora_v_kosmose>So I still need to basically use 2x space just to get it into a format I can index & use with Emacs.
<Aurora_v_kosmose>littlebobeep: As I can recall, yes.
<Aurora_v_kosmose>littlebobeep: It's basically a classic Lisp proprietary-with-source arrangement.
<jpoiret>lei lets you download only the parts you care about, but if you need/want to fully clone the public-inbox repo then yes i guess it's not the best
<littlebobeep>Aurora_v_kosmose: I am not familiar with Lisp arrangements like this
<Aurora_v_kosmose>littlebobeep: The majority of commercial LispM-era software came with the source, but without the same rights as GPL gives you.
<Aurora_v_kosmose>littlebobeep: So you can modify it, patch it, run it, read it, etc. But you can't just share or resell it. Presumably. I haven't read the specific license they used.
<Aurora_v_kosmose>It's little different from Android APKs being trivially decompilable with source, but being non-free.
<littlebobeep>M-era?
<littlebobeep>Machine?
<Aurora_v_kosmose>Lisp Machine, yes.
<littlebobeep>ok I am too young for that haha
<littlebobeep>I know Lisp from Emacs Lisp and Scheme dialects
<AceTheMercenary[>Aurora_v_kosmose: Is guix lisp machine? lol
<mekeor[m]><PotentialUser-42> "Hi. How do I specify a branch..." <- you can use this tho: guix install foo --with-branch=foo=branchname
<Aurora_v_kosmose>AceTheMercenary[: It is not. Guix is very definitely in the GNU/*nix-like lineage.
<Aurora_v_kosmose>It's a GNU take on the GNU operating system.
<Aurora_v_kosmose>:p
<AceTheMercenary[>Hmm yeah, I was just kidding
<AceTheMercenary[>I was brought to lisp when I heard of this wonder machines called lisp machines
<Aurora_v_kosmose>But yeah sadly object-oriented OSes like Lisp Machines had are currently not in vogue.
<AceTheMercenary[>There were videos on history of lisp
<AceTheMercenary[>I was like dang, this is the thing I need in ma life
<AceTheMercenary[>and here I am
<littlebobeep>Aurora_v_kosmose: what does OO have to inherently do with Lisp machines?
<littlebobeep>AceTheMercenary[: what videos?
<Aurora_v_kosmose>littlebobeep: https://en.wikipedia.org/wiki/Genera_(operating_system) Basically the way the APIs & access to things worked.
<AceTheMercenary[>AceTheMercenary[: Lisp is:
<AceTheMercenary[>((((♡))))
<littlebobeep>Flavors, New Flavors, and Common Lisp Object System
<Aurora_v_kosmose>Text displayed on-screen usually kept references to its backing objects, which you could dynamically modify.
<AceTheMercenary[>littlebobeep: History of Lisp videos, on invidious (YT)
<Aurora_v_kosmose>Basically a bit like what Windows tried to do with its APIs, except done right.
<Aurora_v_kosmose> https://en.wikipedia.org/wiki/Object-oriented_operating_system This sort of design just lends itself very well to making a system with capability-based security.
<Aurora_v_kosmose>It's hardly impossible without, but it'll feel a lot more forced.
<AceTheMercenary[>littlebobeep: https://yewtu.be/watch?v=G3FDnNZF5uA
<AceTheMercenary[> https://yewtu.be/watch?v=OyfBQmvr2Hc
<AceTheMercenary[>AceTheMercenary[: This was gun to watch and was an early intro to scheme for me
<AceTheMercenary[>s/gun/fun/
<civodul>Hello Guix!
<hnhx[m]>Hey! I just installed Guix and i have some issues with xorg. My integrated AMD GPU is new and it doesnt really work with the amdgpu without firmware so what i did on parabola is set nomodeset in the kernel params and use the fbdev driver. I already set nomodeset but im unsure how to use the fbdev driver with xorh. Could someone help me out?
*hnhx[m] uploaded an image: (164KiB) < https://libera.ems.host/_matrix/media/r0/download/matrix.beparanoid.de/FnIPdeTIAeOjOUdricwYZLtn/Screenshot_20220513-075142.jpg >
<hnhx[m]>I tried this
<hnhx[m]>But it didnt really work
<htsr[m]>Hi guix! A lot of CI jobs for aarch64 are failing with the same error message <https://ci.guix.gnu.org/build/711882/log/raw> Is there something that can be done or is it just a known error on this builder?
<rekado>apteryx: my colleague will recreate the Rocky live image.
<civodul>hnhx[m]: hi! i'm no expert, but i seem to recall that people would blacklist the "amdgpu" driver in this case
<civodul>i think you can do that with "modprobe.blacklist=amdgpu" in the 'kernel-arguments' field of 'operating-system'
<civodul> https://guix.gnu.org/manual/en/html_node/Initial-RAM-Disk.html#Initial-RAM-Disk
<hnhx[m]>Tried it
<hnhx[m]>Didnt work
<hnhx[m]>Now im doing a full system update to get the latest kernel
<hnhx[m]>Might helo
<hnhx[m]>* Might help
<hnhx[m]>Since the installer gave me 5.11 💀
<mesaoptimizer>how do I ensure that the initial ramdisk starts with a specific keyboard layout (colemak) so I can input my LUKS passphrase using that layout?
<civodul>htsr[m]: hi! something's wrong, not sure what that is though :-/
<reyman>yes i have the same problem @mesaoptimizer, the layout is in english during boot, and after that that switch in french
<reyman>typing a long passphrase both in english then just after in french ...
<reyman>:-/ i see there is an old issue open about that somewhere
<htsr[m]>I think it's not the ramdisk but GRUB stage1 (if that can help in your search)
<civodul>reyman: yay that's annoying; the issue is that we're not configuring GRUB to use the right layout in its "stage1" (if that's possible)
<mesaoptimizer>reyman: could you link to that issue please?
<reyman>i will search @mesaoptimizer
<reyman>I found that, but the issue is closed : https://issues.guix.gnu.org/25453
<reyman>and open here :
<reyman> https://issues.guix.gnu.org/49435
<reyman>this is exactly ou problem, bad keyboard layout stored
<reyman>+r
<mesaoptimizer>how do you get a list of all initrd modules? If there's one for keymap, adding that may fix this issue
<allana>Hi #guix! Any users of libvert-service-type here? I'm struggling a bit with host-to-guest networking and would love to know how others work with libvert
<allana>libvirt*
<rekado>apteryx: perhaps you can boot Rocky-8.5-XFCE-GuixFarm; it’s new.
<lechner>jpoiret: Guix issued a certificate error in a Proxmox console for git.savannah.gnu.org
<a13x5>Hi everyone! I'm still exploring guix and one thing got me puzzled. How do I define specific package output in configuration.scm?
<a13x5>So I want to install bind:utils, and I add to packages specification->package "bind:utits" and this doesn't work. guix system reconfigure says that bind:utils is unknown package
<a13x5>Hi everyone! I'm still exploring guix and one thing got me puzzled. How do I define specific package output in configuration.scm?
<a13x5>So I want to install bind:utils, and I add to packages specification->package "bind:utils" and this doesn't work. guix system reconfigure says that bind:utils is unknown package
<ekaitz>a13x5: try with (list bind "utils")
<ekaitz>that's the way to select outputs (i had the same problem yesterday)
<janneke>dongcarl: i'm getting a page fault when cross-compiling guile to mingw using guix master, when loading/calling the first function in libguile-3.0-1.dll
<janneke>ring any bells?
<maximed>a13xb: Maybe (specification->package+output "bind" "utils")?
***lukedashjr is now known as luke-jr
<lechner>Hi, has anyone ever seen: herd: exception caught while executing 'start' on service 'networking': Throw to key `%exception' with args `("#<&netlink-response-error errno: 17>")'. ? Thanks! https://paste.debian.net/1240771/
<lechner>a very similar setup works elsewhere with dynamic networking instead of static
<maximed>lechner: I wonder if this is due to multiple rules for destination="default" or device="eth0"
<maximed>Recommend reporting it at bug-guix@gnu.org, at least the error reporting can be improved here if that is the issue
<maximed>(maybe verify against duplicates while building the system configuration?)
<reyman>@mesaoptimizer
<reyman>perhaps we need to "up" the issue ?
*pashencija[m] sent a code block: https://libera.ems.host/_matrix/media/r0/download/libera.chat/a6db9e1ce9be5364a5815fe9cae79f13c8ae7703
<pashencija[m]>initializer should be a gexp function, should not it?
<mesaoptimizer>reyman: I think it would be better to first check whether we can add a kernel module for keymaps into the initial ramdisk. That's what I plan to do eventually. If that doesn't work, then I would make an update regarding that issue.
<reyman>Thanks @mesaoptimizer, i'm interested to know how to do that if you success :D
<mesaoptimizer>I'll ping you here if I do, but trust me, I'm very new to guix and I still haven't completed the first `reconfigure` of the system (building takes so long! why!)
<reyman>If there are no binary available it seems guix compile the code, yesterday guix compile firefox 100 ... that take 2 hour, why, i suppose the binary server was not available or something like that ?
<mekeor[m]>reyman: firefox is not packaged for guix, so please consult the channel you use, not #guix :)
<mekeor[m]>but yes, i'd guess the same
<reyman>oh sorry, firefox is not totally FLOSS ? oups.
<mekeor[m]>i dont remember the exact reasoning. maybe it was due to licensing of images/logos?
<mekeor[m]>guix offers icecat, tho
<maximed>reyman: maybe the issue is that Firefox automatically download the non-free library ‘Widevine’?
<maximed>It's not even only non-free, it's also a pre-built binary.
<maximed>(Not great security-wise)
<maximed>Well, it asks something along the lines ‘install DRM module’ or such first, but it's actually a case ‘install non-free module pre-compiled by third-parties that cannot be verified against the sourec code’
<maximed>* it's actually a case -> it actually means
<maximed>IceCat also does some privacy things, though I don't know of the details.
<reyman>thanks for explanation
<mekeor[m]>> <@pashencija:matrix.org> ```... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/9cac1e55888b461a6874ded25f795292aed59b90)
<pashencija[m]>I know
<pashencija[m]>The idea is to make a functon to fill the partition with bootloader
<pashencija[m]>So I'm trying to understand how to make initalizer at least empty or creating one file
<pashencija[m]> * So I'm trying to understand how to make initializer at least empty or creating one file/directory
<mekeor[m]>okay
<singpolyma>reyman: yeah, Firefox is fully FLOSS but it doesn't fit some of the stricter GFSD rules
<mekeor[m]>singpolyma: its complicated: https://www.mozilla.org/en-US/foundation/trademarks/distribution-policy/ "If you wish to distribute Firefox and other Mozilla software branded with our trademarks, you must comply with the relevant software licenses, the Mozilla Trademark Guidelines and either the Unaltered Software Distribution Policy or the terms of a written distribution agreement with Mozilla."
<singpolyma>mekeor[m]: yes, that's normal. Doesn't affect freedom issues. Many free licenses require you to mark modified versions
<mekeor[m]>it's not about marking modified versions, but the opposite: if you keep firefox trademarks in the firefox you distribute, you either have to comply some strict set of trademark rules or need a written agreement with mozilla...
<mekeor[m]>pashencija: i'm a gexp noob but did you try (partition (initializer (gexp (lambda (root) (mkdir "foo"))))? :)
<mekeor[m]>pashencija: because initialize-efi-partition also receives one parameter
<pashencija[m]>O_o
<pashencija[m]>I did not
<mekeor[m]>pashencija: source for initialize-efi-partition receiving two args: https://github.com/guix-mirror/guix/blob/f9c62b23cc88541756656b3ec602ce987828d906/gnu/build/image.scm#L158
<mesaoptimizer>hello, how can I see the corresponding source code for an installed package?
<pashencija[m]>mekeor[m]: Of course. I have even tried coping that function to my code "as is". It failed
<mekeor[m]>mesaoptimizer: you could use emacs-guix or use 'guix show package-name' and then it shows the module name...
<pashencija[m]><mekeor[m]> "pashencija: because initialize-..." <- building /gnu/store/cal3m1cf4a2qvmzdz5f2a982hskf62i2-partition.img.drv...... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/f17aa9ed35024336b668365ed261c8debcbd1484)
<mekeor[m]>mesaoptimizer: emacs-guix offers an "edit" button or so
<mesaoptimizer>mekeor[m]: Yes, seeing the module name isn't enough. I know that `guix edit date` shows the build / definition of the package, but does this mean that the actual source of the package isn't accessible?
<mekeor[m]>mesaoptimizer: oh apparently there's also guix edit!
<mekeor[m]>oh you were faster x)
<mekeor[m]>ahh now i get what you mean!
<mekeor[m]>mesaoptimizer: looks like you gotta use the --source or --sources param (manual @ 9.1.3 Additional Build Options)
<mesaoptimizer>huh. That's unfortunate, looks like I have to separately download the source code for any package I'm interested in looking at. That's a sensible default though.
<mesaoptimizer>mekeor[m] thanks
<mekeor[m]>yea :(
<maximed>mesaoptimizer: You can download the source code of the package:
<maximed>e.g. "guix build --source hello"
<maximed>(like mekeor writes)
<apteryx>rekado: hi! the only one that succeeded was "Rocky-8-x86_64-LIVE" (non-GuixFarm variant). But it leaves me at a login prompt and I don't know what credentials to use to log in
<mesaoptimizer>sweet! two questions: how do I get the exact version that is installed, and how do I safely remove the source (I know I shouldn't manually try messing with `/gnu/store/`
<mesaoptimizer>)
<mekeor[m]>you could try out if guix gc removes the sources
<mesaoptimizer>got the first one: `guix build --source coreutils@8.32` is how you get a specific version
<mesaoptimizer>`guix gc` does that, yes!
<mesaoptimizer>I think I will enjoy using guix.
<mekeor[m]>mesaoptimizer: yes but that's still not necessarily 100% the exact same thing. you would also need to consider the guix-version/commitHash and channels etc. or you first run 'guix build --source packageName' and then build the sources but idk how latter works
<mesaoptimizer>I'm sorry, you lost me here. Could you explain it in a way that someone very new to guix can understand?
<mekeor[m]>mesaoptimizer: you can also stop guix gc from deleting it by using guix build --source foo -r link, apparently
<maximed>I'm not sure what the point is of removing the sources.
<maximed>Is it a space saving measure?
<maximed>mesaoptimizer: I think what meseoptimizer was referring to, is that you can have multiple variants of a package on one system. E.g.,
<mesaoptimizer>If you are asking me, I don't *want* to remove sources, but I want to know how to do so. Ideally I would like to have sources for *all* installed packages, so I can refer to the source code if necessary
<mekeor[m]>mesaoptimizer: assume the developers of a package calles "foo" release it twice with the same version. or imagine that guix' package declaration for foo changed since you built it as an executable...
<maximed>there's a hypothetical package "foo@1.2.3" in Guix commit abcdef.
<maximed>But then it's discovered there's a bug in it.
<maximed>While there is no new release yet, there's a patch for fixing the bug.
<maximed>So the patch is added to Guix, in commit fedcba.
<maximed>So "guix build --source" on the old Guix returns the old source code, whereas on the new Guix, it returns the new source code.
<maximed>mesaoptimizer: I think you can use "--source" on manifests:
<maximed>Maybe with "guix build --source -m manifest.scm"? (not sure)
<mesaoptimizer>I understood what you said, but I didn't get the point you were making.
<maximed>To also have the source code of the dependencies, --sources=transitive
<maximed>This was my explanation for mekeor's ‘yes but thtat's stil not necessarily 100% the exact same thing ...’
<maximed>* thtat's -> that's
<mesaoptimizer>I see. But when you do a `guix pull`, isn't guix always updated?
<mesaoptimizer>Oh I see, when you download a source with the old guix in the past, you get the unpatched source
<maximed>mesaoptimzer: (on `guix pull`): It updates guix (+ channels) itself (the "guix" command), including the set of package definitions.
<maximed>However, it does not update any other packages you have installed.
<mesaoptimizer>But that only makes sense if you are downloading source separately. Ideally what I would like is access to the source for the specific binary that I have.
<maximed>For that, you need "guix package -u".
<mesaoptimizer>maximed: oh yeah, I meant the `guix` command and not the system
<maximed>mesaoptimizer: I don't think there currently is a method for automatically mapping a binary in /gnu/store to its corresponding source code.
<mesaoptimizer>:( that's what I was most excited about. a nix user claimed this was possible in nixOS using `nix-store --binding src --query $(which emacs)`, and also claimed that guixSD can do the same
<maximed>Though in principle it could be done by determining its derivation (there's a mapping from store items to derivations somewhere I think? not sure how to access them though) and sniffing through the derivation for source-code.tar.gz/zip/git-checkout/... inputs.
<maximed>Should be relatively simple to implement though.
<maximed>Basically, do the equivalent of "guix gc --derivers" to find the derivation, use (guix derivation) to parse the derivation, use derivation-inputs to get the inputs, look through the list for an input named "source", output the result of "derivation-input-path"
<mesaoptimizer>the fact that it is even possible is nice. I think I'll spend some time getting used to guix before deciding whether implementing such a feature makes sense.
<maximed>Also, GuixSD has been renamed to Guix System.
<mesaoptimizer>It has? when did this happen?
<maximed>See footnote in (guix)Introduction
<maximed> (2) We used to refer to Guix System as “Guix System Distribution” or
<maximed>“GuixSD”. We now consider it makes more sense to group everything under
<maximed>the “Guix” banner since, after all, Guix System is readily available
<maximed>through the ‘guix system’ command, even if you’re using a different
<maximed>distro underneath!
<mesaoptimizer>So Guix System is the Guix based distro, and guix system is also a command
<maximed>The distro is Guix.
<maximed>where distro = a bunch of packages
<maximed>Guix System (a part of Guix) allows you to boot your computer with only Guix (and not on top of a ‘foreign’ system like Debian or such)
<maximed>it also supports making VMs
<mesaoptimizer>Guix is a distro, a distribution of packages. Guix System is Guix, but with kernels and whatever, that enable native support for Guix. Is this correct?
<maximed>Terminology is confusing, distro can mean different things.
<maximed>mesoptimizer: Maybe?
<a13x5>ekaitz ok so this gets strange with (packages (cons (list bind "utils") %base-packages)) guix throws and error
<a13x5>ice-9/boot-9.scm:1685:16: In procedure raise-exception:
<a13x5>In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): #<procedure bind (_ _ #:optional _ . _)>
<a13x5>Also I tried (specification->package+output "bind" "utils") as maximed suggested. No errors on that, but  it seems that nothing installed - I don't have any dns utils in path...
<mesaoptimizer>okay, I think I shall call it GuixSD or GuixOS to ensure people understand what I am talking about.
<maximed>Super-technically, the kernel (linux-libre) is actually available as a package in Guix.
<maximed>but it has been renamed from GuixSD to Guix System
<maximed>and it has never been named GuixOS.
<mesaoptimizer>Hmm. I agree that the latter is distinctly worse.
<maximed>Anyway, the general term is Guix, which covers everything.
<mesaoptimizer>So guix on foreign systems is called Guix
<mesaoptimizer>and guix native is called Guix System
<maximed>Maybe we shouldn't have introduced a separate term ‘Guix System’, and instead just have said something along the lines of ‘Guix now supports bootloaders and kernels and init systems and such’.
<maximed>I think I could continue discussing the exact terminology but it would only get more confusing I'd think.
<ekaitz>a13x5: it's because of the cons you are using, you are concatenating to that list, and the list should be one element
<ekaitz>a13x5: try this (packages (list (list bind "utils") %base-packages))
<maximed>For example, ‘on foreign systems it is called Guix’ is not 100% correct, you can use Guix System on foreign systems to make VM images that boot into a Guix System environment.
<pashencija[m]><mekeor[m]> "pashencija: source for initializ..." <- ice-9/eval.scm:336:13: Wrong number of arguments to #<procedure initializer (a b)>
<pashencija[m]>It happens with two args as well
<maximed>and ‘guix native is called Guix System’ isn't 100% correct either, because on multi-user Guix Systems, most users probably aren't administrators so they cannot do "guix system reconfigure" (though they can do "guix system vm" and "guix install")
<mesaoptimizer>oh hold on, so these VM images give you Guix System, and are run inside the host OS which isn't Guix System but a foreign distro.
<maximed>yes, exactly. Though of course you can also run the VM images with Guix System as host OS.
<maximed>The "guix system vm" doesn't care if you're on Guix System or a foreign distro, as long as _inside_ the VM it's Guix System.
<mesaoptimizer>interesting. thank you for showing how my naming convention was based on an incorrect set of concepts about guix
<maximed>When in doubt, I recommend using the name "Guix", which is always correct, though not always 100% specific.
<a13x5>ekaitz Nope, it doesn't work((( And right now I literally have only (packages (list (list bind "utils") %base-packages)) in the config
<a13x5>Example with cons I took from here btw https://guix.gnu.org/manual/en/html_node/Using-the-Configuration-System.html
<maximed>a13x5: did you import the module defining 'bind'?
<maximed>I think the problem is that 'bind' is also a Guile procedure for networking things.
<maximed>Whereas you probably meant the package named 'bind' instead.
<maximed>Try 'isc-bind' instead.
<ekaitz>a13x5: i made it wrong lol
<maximed>(that's the variable name for the "bind" package)
<maximed>Or use specification->package+output
<ekaitz>a13x5: you did it right before i think
<ekaitz>i have something similar now but with packages->manifest and it's working
<a13x5>Yes, I imported package-module named dns
<a13x5>Ok, I'll try again))
<mesaoptimizer> https://ambrevar.xyz/guix-packaging/ ambrevar has deleted all his posts
<mesaoptimizer>(for context, his posts introduced me to guix)
<tricon>mesaoptimizer: Ambrevar has become one of my favorite programmers. I wonder why he dumped his posts?
<maximed>IIRC, ambrevar has a repo in a Git forge somewhere accepting PR and allowing reporting issues.
<civodul>oh, weird
<maximed>Or maybe that was someone else.
<a13x5>So it worked! With (packages (cons (list isc-bind "utils") %base-packages))
<a13x5>Thank you very much maximed ekaitz !
<htsr[m]>mesaoptimizer: You said you have layout problems during boot, if you only type your password once there's a simple fix
<mesaoptimizer>I type it twice: once when grub loads the kernel and initial ramdisk, and once after I select guix system in grub menu.
<mesaoptimizer>the first time, I need to use qwerty, the second time I can use colemak
<mesaoptimizer>(both are the same FDE passphrase, to be clear)
<mesaoptimizer>one hack is that I could add another passphrase that is the colemak->qwerty version of the passphrase
<htsr[m]>Okay, same here, there is no simple fix then :/
<mesaoptimizer>reyman: here's a hack we can use! I completely forgot about it
<lechner>maximed: the duplicate interfaces were supposed to be okay starting with the commit here https://issues.guix.gnu.org/44571
<peterpolidoro>does the python build system not include the files listed in the python package MANIFEST.in file? Those extra files are included in the downloaded python package source, but do not seem to be placed into the gnu store
<unmatched-paren>bjc: were you the one worried about rust dependencies?
<bjc>shouldn't we all be? ;)
<unmatched-paren>well, apparently crates.io just had its first supply chain attack :P
<unmatched-paren> https://drewdevault.com/2022/05/12/Supply-chain-when-will-we-learn.html
<bjc>i can't believe it took this long
<unmatched-paren>hilarious that it happened just after you were talking about it
<bjc>the thing is… i'm *sure* there's more just sitting around waiting
<unmatched-paren>just like how after #bootstrappable was talking about how writing a kernel would be more difficult than bootstrapping gcc, someone announced that they wrote one :P
<unmatched-paren>Lots of surprises recently. The nvidia kernel module thing too
<jackhill>Is ci.guix.gnu.org unwell? More of my packages seem to be missing substitutes recently. I'm vaguely aware that some maintenance was in progress, but haven't been following.
<rekado>(I’m not working on it)
<civodul>jackhill: yes, i've noticed that too, and the web interface suggests something's wrong
<civodul>i'm not sure what tho :-/
<civodul>sneek: seen mothacehe
<sneek>mothacehe was in #guix 4 days ago, saying: we should maybe define some timeout for evaluations, so that the never finishing one do not consume all the db slots.
<apteryx>the problems seems to have started following rebooting the reconfigured machine
<apteryx>perhaps a change in postgres or related?
<apteryx>another thing to keep in mind is the fix for the bogus substitute reply bodies reverted a commit that was meant to fix problems seen on the CI, although it appears unrelated at first sight here
<apteryx>restarting the CI fixes it, but it seems to come back rather quickly
<zubbie>anyone manage to get emacs eaf working on guix?
<maximed>zubbie: do you mean emacs leaf?
<rekado>EAF emacs application framework
<zubbie>yeah
<dongcarl>janneke: Huh! No I haven't seen that... Do you have logs I can take a look at (no promises that I'll know what's going on haha)
*janneke re-reads their post...
<janneke>dongcarl: it's not *while* cross-compiling, sorry. it's when running guix.exe under wine
<dongcarl>janneke: RUNNING GUIX.EXE UNDER WINE????
<janneke>main () runs OK, but the first call into libguile-3.0-1.dll gives the page fault
<janneke>dongcarl: yeah, is that so weird?
<civodul>apteryx: my guess is that it's a pure Guix/Cuirass problem, not postgres, but i really don't know what to look at
<dongcarl>janneke: Not so werid, just SO AWESOME
<janneke>ah, hehe
<dongcarl>I haven't tried anything like that though :-/ Apologies
<unmatched-paren>you're trying to create Guix4Win(R) i see :P
<janneke>dongcarl: okay, then i'll just bisect some more
<dongcarl>janneke: Great! Lemme know if you find anything
<janneke>gcc-10 does not seem to be the problem, neither does libgc, so possibly binutils-2.37 or glibc-2.33
<janneke>dongcarl: sure, will do
<janneke>for now i'm "stuck" on a year old guix
<unmatched-paren>(Guix4Win(R) provides a rewrite of GNU Guix in VB.NET and a clicky GUI because how dare you subject those poor windows users to a command-line interface.)
<unmatched-paren>It occasionally pops up ads for a program you have no interest in using and constantly berates you for not making it the default package manager.
<dongcarl>XD
<unmatched-paren>To disable telemetry in Guix4Win(R), go to each of the 50 sections in the GUI's Data Collection menu and toggle the switch to Disabled.
<lechner>Hi, does ssh sometimes fail to start but silently? herd status ssh says it is started, but there is nothing in the process table. nothing in the logs, either
<unmatched-paren>Guix4Win's revolutionary cloud-based package management system stores your /gnu/store directory in OneDrive.
<unmatched-paren>To get started with Guix4Win(R), go to https://guix4win.org/login and provide your full real name, the names of all known ancestors, your postcode (or local equivalent), your credit card number, and your full gene sequence in plain text.
<unmatched-paren>(ok, i'll stop now :P)
<civodul>:-)
<unmatched-paren>i wish it was the end of march right now, we could have an April Fool's "Announcing Guix4Win(R)" blog post :P
<maximed>zubbie: eaf is currently not packaged in Guix.
<maximed>‘installation method is very simple, just clone the git repo, change some permission bits, run python scripts, modify a configuration file, add more configuration to load configurations, follow these instructions to keep it up to date’
<unmatched-paren>oh wow eaf looks amazing
<maximed>I think I prefer "guix pull, guix install and guix package -u". Though it needs to be packaged first for that ...
*unmatched-paren doesn't use emacs though
<maximed>The install script runs npm and pip
<unmatched-paren>ugh, that's gross
<maximed>looks complicated
<unmatched-paren>modernizing Emacs by bringing the modern software installation experience to it!
<unmatched-paren>with that you could just run emacs-pgtk in cage and not bother with a desktop environment though... hmm.
<euandreh>how could I increment the PATH used by mcron to execute jobs?
<euandreh>other than ". ~/.profile; job-cmd"
<maximed>euandreh: "/gnu/store/.../bin/binary do stuff"?
<maximed>Something like (string-append #$the-package "/bin/binary do stuff") probably
<euandreh>maximed: what I'm targeting are user scripts, like "~/.local/bin/binary do stuff"
<maximed>You can also create a wrapper script for job-cmd, with program-file
<maximed>See the %battery-alert-job example in the manual
<maximed>It's not Guix System specific, should also work for Guix Home.
<maximed>(untested)
<euandreh>maximed: IIUC that's a different problem. What I want are PATH values added by the user, not by the store
<maximed>maximed: As user, you can add a PATH value to the mcron job specification you write.
<maximed>with appropriate use of (setenv "PATH" "/.../somewhere")
<euandreh>maximed: how do I do that? What do you mean?
<euandreh>OK, so manually enriching the PATH value in the job
<maximed>Maybe there's a nicer way to do this, but yes
<apteryx>raghavgururajan: pidgin is stuck at python 2; is it possible to update it?
<apteryx>so are telepathy things
<AceTheMercenary[>telepathy?
<apteryx>the messaging library
<emacsomancer[m]>is there a way to use guix graph to just show which currently installed packages depend on a certain package?
<maximed>$ guix gc --referrers /gnu/store/the-store-item-of-the-certain-package
<maximed>it will list all store items (mostly packages) that are somewhere on your system that run-time depends on the package
<maximed>with some exceptions
<maximed>Oops that's not "guix graph"
<maximed>(exceptions = propagation, not build-time-only ...)
<maximed>Found it: guix graph --type=referrers hello
<maximed>hello = the certain package
<maximed>(here, installed = exists somewhere in /gnu/store, not necessarily in your current profile)
<zubbie>yeah, the eaf install is complicated, sadly.. even more so because they don't have a script for guix
<apteryx>rekado: "Packages depending on JACK should always prefer jack-1" -> still true?
<zubbie>but it gives you a legit browser in emacs among other things
<tricon>unmatched-paren: could just use EXWM.
<emacsomancer[m]>maximed: hmm, while `guix gc --referrers` seems to work (though I have to manually keep querying), `guix graph --type refererrs PKGNAME` just gives me back a graph with the package itself and the 'debug' version' of the same package
<emacsomancer[m]>maybe it's a build-time only package
<mekeor[m]><lechner> "Hi, does ssh sometimes fail to..." <- lechner: and does it succeed to restart sshd after it fails silently?
<mekeor[m]>tree-sitter is packaged. but what about emacs-tree-sitter? cbaines, it looks like you did some work on that some time ago?
***dgcampea-2 is now known as dgcampea
<mekeor[m]>maximed and pierre langlois were involved in this pr for emacs-tree-sittee: https://issues.guix.gnu.org/49946
<raingloom>ooh, i tried packaging it recently-ish. nice to see someone else did the work already.
<lechner>Hi, is that a reasonable deploy hook for certificates for smtpd, please? (program-file "smtpd-deploy-hook" (gexp (herd restart smtpd)))
<KarlJoad>Has anyone ever had issues getting the bootloader to "stick" on their Guix system installation? Mine seems to disappear after I remove the disk from the system.
<sneek>KarlJoad, you have 2 messages!
<sneek>KarlJoad, podiki[m] says: there is the --log-file option for just that
<sneek>KarlJoad, nckx says: Guix's linux-libre package saves a copy of the complete .config file in the output store directory (which is symlinked from /run/{booted,current}-system/kernel/.config on Guix System).
<lechner>KarlJoad: My bootloaders reside on disks, but that is probably a misunderstanding of your message.
<KarlJoad>lechner: Mine does too. It's sitting on /dev/sdc1, a SATA SSD. But, it is in a server disk-swap bay, allowing for easy removal.
<arkhan>Hello, could someone explain this argument better?
<arkhan> https://github.com/daviwil/dotfiles/issues/11
<KarlJoad>When I pull it out, and boot to another OS (NixOS) and then try to boot back to Guix, Guix does not have a bootloader.
<KarlJoad>But, when I stay on Guix the whole time, I can reboot as many times as I want.
<mekeor[m]>arkhan: both users, root and "arkhan" (i guess) have guix installed in their PATH. when arkhan runs "guix", which guix does it execute? could you tell me by running "which guix"?
<pashencija[m]>Is sending email to bug-guix@gnu.org enough to report a bug?
<pashencija[m]>I cannot see my message on https://issues.guix.gnu.org
<horizoninnovatio>Good morning! Has anyone successfully installed guix on the pine64 pinephone?
<pashencija[m]>I have installed it on raspberry
<pashencija[m]>And I also own pinebook pro. What's the question?
<horizoninnovatio>Is there a way to update grub where it recognises other linuxes on the machine?
<pashencija[m]>O_o
<pashencija[m]>I didn't know pinephone uses grub
<pashencija[m]>I'm not much of a helper
<pashencija[m]>It's uboot and extlinux on rk3399 boards
<pashencija[m]>I mean extinux.conf and uboot
<horizoninnovatio>pashencija[m]: The pinehone "requires" a mobile interface, and the modem now can have open source firmware. Curious as to how far long it is. I'd like to help.
<unmatched-paren>not sure installing guix on a phone is a good idea; wouldn't it ruin the sd card? guix does a lot of disk i/o
<pashencija[m]>SD cards are cheap these days
<pashencija[m]>Check this https://issues.guix.gnu.org/issue/55283
<pashencija[m]>Guix won't reconfigure until it's fixed
<horizoninnovatio>> <@pashencija:matrix.org> O_o
<horizoninnovatio>> I didn't know pinephone uses grub
<horizoninnovatio>It can I suppose but generally doesn't. The grub question is for a standard x86-64 machine!
<pashencija[m]>horizoninnovatio: Oh, got you
<apteryx>rekado: OK, thanks to your colleague :-) I guess I could put the single user mode at the end of the kernel line to get a root session, if that still works
<lilyp>civodul: does it make sense to build emacs-28 on CI still or should I go ahead and push to master or staging?
<civodul>lilyp: hi! oh, i was waiting for a confirmation that we could build it actually
<civodul>but then you mentioned that things like native compilation were missing and that you were not going to work on it, right?
<lilyp>I replied to you via mail, but it seems to have gotten lost
<civodul>oh ok
<lilyp>oh, I was just putting the achievements of that series in context
<lilyp>IIUC people really want native-comp, but I'm as of yet unsure what that'd entail to our emacs-build-system as a whole
<civodul> https://issues.guix.gnu.org/54829#19
<civodul>that's the message i remembered
<civodul>i think native compilation is a big part of Emacs 28
<civodul>it'd be sad to miss out on it
<civodul>WDYT?
<lilyp>Right now we're missing out either way, not just on native compilation, but on the rest of Emacs 28 as well
<rekado>apteryx: re “jack-1”: no, we should use jack2 instead, wherever possible. Unfortunately, a user cannot just set LD_LIBRARY_PATH to the libs of jack2 to swap it out.
<apteryx>OK
<lilyp>can we just add that configure flag without it affectig emacs-build-system? I doubt it
<apteryx>I'll remove that obsolete command then.
<apteryx>thanks
<apteryx>lilyp: sounds worth trying, it may be easier to enable than expected
<apteryx>also, there's a channel with it enalbed IIRC, so if it needs something special, the recipe should be readily available
<civodul>lilyp: what does it take to enable native comp?
<lilyp>Well this might be just be thinking too hard, but we'd want to native-comp our emacs-* packages, no?
<lilyp>s/be thinking/be me thinking/
<civodul>hmm that's AOT or JIT?
<civodul>i've kinda lost track of all the good things happening in Emacs land :-)
<lilyp>JIAT
<lilyp>If I understand correctly, it works like a JIT, but it also writes caches.
<lilyp>so we should ideally pregenerate those like our ld.so.cache
<civodul>hmm, ok
<lilyp> https://www.gnu.org/software/emacs/manual/html_node/elisp/Native_002dCompilation-Functions.html
<civodul>so, if nobody's willing to do the work, let's first get the upgrade
<civodul>we still need to have it built though
<civodul>could you rebase the branch on master?
<lilyp>sure
<civodul>lemme know when you're done and i'll add the jobset
<pashencija[m]>I have sent two email to bug-guix@gnu.org
<pashencija[m]>With my gmail
<pashencija[m]>Both of them are lost somewhere
<apteryx>pashencija[m]: first time contributor? there's a moderation queue
<pashencija[m]>So someone is actually checking emails before they land at https://issues.guix.gnu.org and https://lists.gnu.org/archive/html/bug-guix/2022-05/index.html?
<pashencija[m]>Ok, I can wait, no problem. I hope two emails with the same body won't trouble the moderator much. It's my first experience with mailing lists
<lilyp>only for the first submission or if you've been marked a spammer
<pashencija[m]>No problem. Thank you for the info!
<pashencija[m]>Yes, it's my first email
<apteryx>civodul: I've restarted postgres, hoping to work around the Cuirass issue