IRC channel logs

2024-07-22.log

back to list of logs

<dckc>is there a direnv / guix integration (searching...)
<dckc>indeed: https://guix.gnu.org/cookbook/en/html_node/Guix-environment-via-direnv.html
<dckc>a bit verbose, but there it is
<msglm>calling for more help again on the kobold.cpp package:
<msglm>kobold.cpp has a python script to launch it that is in its source folder called koboldcpp.py. I want to rename this script to just kobold-cpp, wrap it so it uses all the provided libraries, and also wrap it so it uses the libraries in #$outputs/lib/. I'm trying to get wrap-program to do this, but it's complaining about a file not being found every
<msglm>time I run it.
<dckc>$ type emacs
<dckc>emacs is /gnu/store/g9ihdplzbhakb3k41razimy07ycx39nn-profile/bin/emacs
<dckc>but...
<dckc>$ type guile
<dckc>guile is /home/connolly/.guix-profile/bin/guile
<dckc>why is one in ~ and the other in /gnu/store/ ???
<singpolyma>I think you'll find the one in ~ is a symlink
<dckc>sure; but how did it get that way? why don't they have the same structure?
<dckc>emacs says "Error (use-package): Cannot load direnv" even after I `guix install emacs-direnv`. hm.
<singpolyma>With guix everything is in /gnu/store but for convenience some commands also set up symlinks to /gnu/store from other places to make it more visible or easier to set a PATH etc
<dckc>so... some commands do, and some don't? there's no pattern to it?
<dckc>looks like once I set up GUIX_PROFILE and then did `guix install emacs` things changed...
<dckc>aha!
<dckc>$ type emacs
<dckc>emacs is /home/connolly/.guix-profile/bin/emacs
<mekeor>dckc: you did "guix shell emacs". but the guix-shell is not pure. the shell-environment inherited guile from the user-profile.
<mekeor>you can also do "guix shell --pure", if you want that
<dckc>ok... I'm _starting_ to get a better mental model. thanks. I guess I owe some pictures of what I'm learning.
<dckc>(in my book, if an expert answers my question, I owe an update to some docs somewhere to help the next person in my position)
<dckc>also, when it comes to learning not just the latest version of something but a history of it that spans years / decades, I find that videos can be cost-effective. Anybody care to recommend a "guix for the working programmer" intro video?
<mekeor>"By default, the shell session or command runs in an _augmented_ environment, where the new packages are added to search path environment variables such as ‘PATH’" (info "(guix) Invoking guix shell") / https://guix.gnu.org/guix/manual/en/html_node/Invoking-guix-shell.html
<dckc>thank for the excerpt!
<mekeor>thank you for the interest. keep it up and going
<mekeor>ACTION needs sleep
<dckc>ooh! now I'm cookin' with gas... emacs, magit, direnv all talking nice to each other...
<dckc>hm. I'd like to make a commit to record how I got that working. perhaps a bit later.
<dckc>2024-07-21 17:24 6b7c7db feat(bashrc): GUIX_PROFILE
<dckc>harmless, for my purposes today, I suppose: Unable to activate package ‘nix-mode’.
<dckc>what's the command for "what's the package, including version, whence comes emacs"?
<dckc>equivalent of dpkg -S or something
<dckc>$ dpkg -S /usr/share/doc/emacs
<dckc>emacs: /usr/share/doc/emacs
<dckc>$ apt-cache policy emacs
<dckc>emacs:
<dckc> Installed: 1:27.1+1-3ubuntu5.1
<dckc>is there a debian-to-guix rosetta stone?
<dckc>ls -l $(type -p emacs) <- worked pretty well. /gnu/store/5z3gyg96f7l4zl1j2h1jvgj4p46r6yfd-emacs-29.3/bin/emacs
<Guest67>ohyllad: Thanks Is there a way to ask some questions regarding how this is working, since it basically builds an entire vm into my mac and I just want to be sure it is not secure?
<Guest67>correction: ~not~
<ngz>OOC, where do Guix Home users here put their home configuration, and the configuration files not generated through a service? Also, do you use home-files-service-type, home-xdg-configuration-files, or both to install those files?
<dckc>wow... my quest for nix/guix dotfiles setup goes back to 2016: https://github.com/dckc/madmode-blog/issues/13
<fest1ve>anyone know how to get OpenCL working with an AMD GPU? clinfo doesn't find any platforms
<civodul>Hello Guix!
<z572>hi, civodul
<z572>In fact, our changes to libfaketime are also problematic
<z572>./pre-inst-env guix shell coreutils libfaketime -s i686-linux -- faketime 2039-01-23 date
<z572>Tue Jan 19 11:14:07 CST 2038
<civodul>z572: hmm, it does work with year < 2038, so i wonder what’s up
<zamfofex>Maybe it caps the timestamp to 32‐bits.
<civodul>looks like it
<futurile>Morning all
<civodul>hey futurile!
<cbaines>o/
<rekado>fixed epiphany and mpv on core-updates
<rekado>almost all of my Guix home configuration now builds
<rekado>(exceptions: firefox and libreoffice)
<cbaines>civodul, I don't get why nss tests fail with datefudge, from the logs it looks like it fails to parse some JSON
<jpoiret>rekado: did mpv not build there?
<jpoiret>I have my whole laptop on core-updates
<cbaines>hmm, gtests.sh does cd "$(dirname "$1")"
<cbaines>and that seems to behave differently when using datefudge
<cbaines>it's confusing, since the tests seem to pass when the cd command fails
<cbaines>ok, removing the line seems to make the gtests pass with datefudge
<futurile>Q: what's the situation with core-updates now, I just looked at QA and x86_64 is at 95% - I can't get it to tell me what's blocked though (time-out) - are we getting close?
<cbaines>futurile, I think nss not building on i686-linux/armhf-linux is the biggest blocker I'm aware of, but there may be others
<rekado>jpoiret: mpv failed because yt-dlp failed because python-requests-next failed
<rekado>python-requests failed because of the change in certifi
<cbaines>futurile, I think there's also been some branches merged ahead of core-updates since the last rebase, so I think core-updates needs rebasing on master again
<jpoiret>rekado: ah yes, I have a local patch for this mb
<jpoiret>my solution was to use a dummy ssl cert from nss-certs for the test phase
<attila_lendvai>civodul, you closed the initrd guile crash bug. does that mean that it's not-a-bug that when the initrd guile tries to enter the debugger then it crashes? i.e. it crashes in the least debuggable moment...
<attila_lendvai>shouldn't that have been retitled to something else instead? e.g. "the debugger in the initrd guile is disfunctional"
<attila_lendvai>couldn't we compile a statically linked guile with libreadline also linked into it?
<cbaines>civodul, with this tweak, nss on core-updates builds for me with datefudge: (substitute* "nss/tests/gtests/gtests.sh" (("cd \"\\$\\(dirname \"\\$1\"\\)\"") ""))
<cbaines>I'll send a patch
<cbaines>I don't know why it's relevant, but it seems like using datefudge affects the directory in which some of the scripts run
<civodul>cbaines: uh, weird!
<civodul>datefudge is literally 104 lines of code
<civodul>it does not call chdir or anything like that
<adi-lb-phoenix>Hello! Any idea on how to add extra parameter to while cmake if i'm installing a package from guix installation script. Cmake build system is the one i'm using.
<futurile>adi-lb-phoenix: I don't quite understand what you're asking. So you've created a package that uses the cmake build system - and want to provide a parameter to Cmake? If that's the case you can use #:configure-flags
<dckc>how do i start sshd?
<dckc>context: I'm trying to re-outfit a machine to run guix
<dckc>but first, I want to inventory the storage
<dckc>so I booted the guix 1.4.0 installer, switched to a terminal, and ran `guix install openssh` (after `guix search ssh`)
<dckc>but... now what? `shepherd start sshd` loses
<dckc>ACTION checks docs...
<dckc>I find docs on scheme stuff to configure the system.
<dckc>but I just want to imperatively start sshd so i can explore
<dckc>from another machine
<dckc>just occurred to me... all the "Invoking XYZ" pages are kinda backwards; the reader is not likely just curious about how one can invoke XYZ. They have a goal that XYZ can be used to accomplish. So the section should be more like "ordering vanilla ice cream with XYZ"
<ieure>dckc, I don't believe Shepherd can start services except when they're declaratively part of the operating-system config. You'd need to launch sshd by hand.
<dckc>so... just run `sshd`?
<efraim>I'd check `herd status sshd` to see if it's available but stopped
<dckc>ah. indeed. bingo...
<dckc>so `herd start sshd`?
<efraim>looks like after starting sshd you can login as root without a password
<efraim>oh, you'll have to set a password first actually
<efraim>for root
<dckc>cool... I'm familiar with all the usual ssh stuff...
<dckc>I forget how to get the ascii-art version of the host key, though. I'll look it up, but if anybody knows off hand...
<dckc>`ssh user@domainname.com -o VisualHostKey=yes` on the client
<dckc>not sure on the server
<dckc>anywhoo... I'm now logged in. Thanks!
<dckc>next goal: a treemap of all the storage connected to the machine
<dckc>gonna try ncdu...
<dckc>of course, I get `ncdu: command not found`. on ubuntu, that's followed by "that command would work if you apt install foo". I'd like to see that for guix. I guess IOU an issue?
<dckc>ncdu only finds storage that's mounted. not surprising.
<dthompson>dckc: this gets brought up occasionally and there is probably already an issue for it. it's not easy to implement an equivalent feature.
<dthompson>this is due to guix being fundamentally a source-based distribution
<dlowe>could record additions to /usr/s?bin while building substitutes and build an index
<dthompson>yeah but it's tricky :)
<dlowe>I think with this sort of case, a half-assed solution is better than none. Most of apt isn't indexed either.
<dthompson>there are lots of problems with that approach, though
<bdju>what's needed to mount an NTFS drive with read/write instead of read-only? I keep getting results for fuse and ntfs-3g but I thought there was proper kernel support now.
<dthompson>like if you don't have a package installed, you don't have the index, so what good is it?
<dlowe>The index would be published separately
<dthompson>by whom?
<dlowe>the builder of the substitutes
<dthompson>how do you map the packages in your version of guix to that index?
<dthompson>all I'm saying is that there's a reason it hasn't been done. it's a hard problem.
<kimjetwav>bdju: I'm not sure that's actually supported because Windows tries and fails to validate the checksums. I could be wrong though, I've just had issues with that in the past.
<ieure>dckc, `lsblk' enumerates all attached block devices, does that do what you want?
<dckc>yeah; that sort of thing. I found my notes on when I did it before. thanks.
<kimjetwav>bdju: If you don't need to worry about that though you can mount it write. There's just something Windows will complain about on boot when it tries to access the FS.
<bdju>ah yeah it's a flash drive that was set up as a Windowh installer and I was just gonna toss some files on there for a friend without wiping it because it was all they had on-hand
<kimjetwav>bdju: Ahh yeah for that purpose I actually specifically include a tiny FAT on then end of the device.
<kimjetwav>bdju: If it's bootable via EFI there should be a FAT on there for the ESP partition, depending on what files you wanna toss on (autounattend.xml etc.) you could use that.
<kimjetwav>s/ESP partition/ESP/
<bdju>it was actually some video files, nothing related to the prior contents
<kimjetwav>Ahh maybe not then, that's probably too big for a standard ESP.
<bdju>yeah
<kimjetwav>Well... I definitely thing Windows NT would complain about booting from an installer where the journal checksums seemed dirty.
<kimjetwav>How was the installer made? Was it made by the Windows Install Media Creator thing?
<bdju>I didn't make it, and honestly I think I could probably wipe it, he already used it to do the install the other day, I just didn't wanna delete stuff unnecessarily
<kimjetwav>Well you could copy everything off it for safekeeping.
<kimjetwav>I wish I had time to test some solutions right now as I've done stuff like this in the past.
<bdju>thanks anyway
<bdju> https://wiki.archlinux.org/title/NTFS#Explicit_file_system_type_required_to_mount THIS was my problem, you need -t ntfs3 not -t ntfs. insanity.
<kimjetwav>lol ohh, I thought you were literally already asking about the "why has this seemingly broken" part.
<cbaines>hmm, I give up trying to rebase core updates, the months old changes we're carrying on the branch are just too complicated to try and work with
<z572>cbaines: can you look this? https://github.com/Z572/guix/commits/core-updates-rebased
<z572>I hope I did the right thing
<RavenJoad>Has anyone else been getting "guix substitute: error: TLS error in procedure 'write_to_session_record_port': Error in the push function." more often recently?
<ieure>RavenJoad, Yes, substitute server has been wildly unreliable since at least yesterday.
<ieure>I don't really understand why Guix requires unreliable servers instead of slopping NARs on disk where they can be served statically by any httpd. Disk space optimization, maybe?
<ieure>Seems like that would be key to both reducing substitute server outages and increasing the substitute mirror network, both of which would make Guix infrastructure *way* more resilient.
<rekado>they are in fact served from disk by nginx
<ieure>Okay. So why is it that when substitutes start horking up, restarting fixes it?
<RavenJoad>By recently, I meant the last 2-3 weeks. I has been happening on multiple computers across multiple networks, so it is not my side.
<ieure>RavenJoad, Yeah, this is unfortunately just kinda How Things Are.
<ieure>I don't understand why, but find it frustrating.
<rekado>RavenJoad: has it been reported? Is there a bug tracking it?
<RavenJoad>I don't know. I rebuild so rarely that I just assume it is a fluke.
<rekado>(me too)
<marvin58>hi all
<marvin58>I'm trying to package portfolio performance for guix. Now I need to specify a pom in a subdirectory, but when I use (arguments '(#:pom-file "portfolio-app/pom.xml")) I get Unrecognized keyword: #:pom-file. Is that my mistake or should I file a bug?
<marvin58>Here is what I got so far: https://0x0.st/XpjF.txt
<rekado>marvin58: the manual must be wrong. The mave-build-system does not seem to support a #:pom-file argument.
<ieure>You can add a phase before 'build which changes into the `portfolio-app' directory.
<marvin58>Ok thanks
<weary-traveler>i've taken to using --fallback with guix pull. that being said, that may not be a viable option in all instances
<yumasi>Hi everyone! I have been working on updating the recipe for the Zig compiler, hoping to make it my first contrib to Guix. I have a small question regarding the implentation of that new version: there are currently two versions of Zig in Guix, one inheriting the other. But when I look at other recipes in Guix, they just seem to keep one version of a given package. Should I make my patch replace all existing versions with the latest, or
<yumasi>have it inherit from the previous version (so having three versions of Zig in Guix)?
<attila_lendvai>yumasi, the multiple versions could be for bootstrapping, or maybe some important package fails to compile with the new version, etc. it may not be as simple as updating everything to the latest, but if it's feasible then i think that is the preferred thing to do.
<eikcaz>I sent in a patch, but I don't know if I set up my email server correctly to send. How long should it take for a patch to make it to issues.guix.gnu.org?
<eikcaz>If anyone even has a rough estimate, it would be much appreciated.
<yumasi>attila_lendvai: zig doesn't need old versions for bootstrapping (they have an interesting approach to the bootstrapping problem actually). as for packages depending on zig, I only found two: the zig language server and a wayland window manager.
<RavenJoad>eikcaz: If it is your first ever contribution, 20-30 minutes? Maybe longer. I think there is a manual vetting process there. After that, less.
<eikcaz>RavenJoad: well I sent it over 24 hours ago
<eikcaz>Anyone know who I should contact?
<yumasi>So I should probably make it so the new version inherits the older one first, then see if those packages can be built with it, then finally make a patch to remove the older ones if I all goes well?
<eikcaz>(maybe someone here)
<weary-traveler>eikcaz: the email server shouldn't need anything special to send. it's possible your MUA configuration may need some tweaking before responding to existing issues results in correct threading behaviour, but that won't prevent debbugs from paying attention to the email
<efraim>does mkdir-p swallow the warning if the directory already exists?
<eikcaz>My MTA did report that two of the CC recipients rejected the mail, but guix-patches wasn't one of them. Could it be because I CC'd the mentors group since it's my first patch set?
<eikcaz>Maybe they want a mentor to respond before pushing it to issues.guix.gnu.org?
<weary-traveler>mentors group?
<weary-traveler>eikcaz: could you please link to the instructions you followed?
<eikcaz>section "22.10 Submitting Patches" in the guix manual. I should have said "mentors team" not "mentors group", as per "22.10.3 Teams" in the guix manual
<eikcaz>I ran: git send-email --annotate -1 --header-cmd='etc/teams.scm cc-mentors-header-cmd'
<eikcaz>but it couldn't send directly, so I pasted the output to a buffer and sent via gnus
<eikcaz>So I take it I should be worried that I haven't heard back by now?
<weary-traveler>the git invocation not working isn't odd. however you receiving a rejection notice is odd. assuming you sent correctly via gnus and one of the recipients was guix-patches@gnu.org you should be okay
<eikcaz>I think the git command failed because sendmail fails to send to my MTA, a known issue which is not a problem from my gnus setup. The rejection notice was from two email accounts that require rDNS, which I don't have set up, so all good there. So my patch should have gotten to guix-patches@gnus.org...
<eikcaz>I don't want to spam this irc too much, but I do want to figure out my next step. Since I'm hearing that 24 hour wait is too long, is there some higher level email address I can reach out to to investigate?
<weary-traveler>eikcaz: sorry, has someone said that 24hr is too long for first submission?
<eikcaz>RavenJoad mentioned it was too long. You think I should just wait?
<eikcaz>weary-traveler: ^