IRC channel logs

2021-09-23.log

back to list of logs

<zamfofex>I have been trying to update the various packages for Hurd, but I’m unable to create a system image because apparently there are conflicting variants of ‘shepherd’ in the system profile. I think there is something I’m missing about this. If anyone wants to help me out, I wrote some more details here: https://gist.github.com/zamfofex/bc7279a5bddd25e8603c84c799d835dd
<zamfofex>(Any form of help is appreciated, by the way!)
<zamfofex>sneek: later tell attila_lendvai A solution I found was satisfactory enough was to write ‘export CC=gcc’ on my ‘~/.bashrc’, so that it uses GCC by default and I can then just run ‘make’.
<sneek>Got it.
<whoisatalo>How can I remove gedit and other gnome stuff like totem from guixsd gnome install?
<jab>hmmm. So apparently I can run gnome on wayland on guix system. that's kind of cool.
<jab>whoisatalo: I've no idea...
<jab>that should probably be something that guix lets you configure.
<jab>sweet action! My latest email to google says that my SPF record passed, and so did DMARC! Now I just need to get dkimsigning to work...
<whoisatalo>:/
<apteryx>raghavgururajan: about x200, yes, sometimes
<apteryx>hmm, I think I finally grok why Bash on Guix sources /etc/profile when invoked in a non-login, non-interactive way (e.g. ssh remote-guix-system 'echo $-'; it has to do with -DNON_INTERACTIVE_LOGIN_SHELLS in the Guix bash recipe, which causes Bash to source startup files such as /etc/profile even when run non-interactively
<apteryx>it seems to me that the most definitive way to get Guix on PATH on a foreign OS for SSH is to replace the login shell used by Guix's bash and augment the PATH accordingly in /etc/profile
*apteryx tries
<guixy>hi guix!
<apteryx>whoisatalo: you may have to customize the gnome metapackage that is used by the gnome-desktop service
<apteryx>(e.g., remove some of the things it propagates you don't want)
<apteryx>I haven't tried or even looked, but I think I remember this being suggested in the past
<apteryx>guixy: hello!
<guixy>I sent a patch adding jupyter as a service
<guixy>The first patch I sent was broken, so I fixed it and sent a second patch.
<apteryx>did you send the 2nd patch to the same email created for the first one?
<guixy>Yes. It's bug#50708
<apteryx>OK, good!
<guixy>Not as a reply, but to the email address connected to the issue.
<guixy>I'm looking for feedback. Was it good to make a system user for jupyter?
<apteryx>that's good!
<guixy>I figured I want it to be flexible.
<guixy>I also included an update to the manual. Is there anything I should include?
<guixy>in the manual not already in the patch
<guixy>I'm a relative newbie at system security considerations. I don't want the jupyter service to introduce a new security hole.
***califax- is now known as califax
<apteryx>what is the 'agate service' ?
<guixy>apteryx: `guix system search agate`
<guixy>no results :(
<guixy>`guix search agate`
<guixy>"Agate is a server for the Gemini network protocol, built with the Rust programming language. It has very few features, and can only serve static files. It uses async I/O, and should be quite efficient even when running on low-end hardware and serving many concurrent requests.
<drakonis>its always a good time to write a new package
<apteryx>guixy: I see, thanks
<guixy>drakonis: You writing a new package?
<drakonis>not yet
<drakonis>got other things to do atm
<apteryx>guixy: so Jupyter is an Agate service?
<guixy>Not that I know of.
<guixy>I copied one of the services' documentation as a template for jupyter. Did Agate end up in the jupyter documentation?
<guixy>I see. I missed an `@subheading`
<guixy>I fixed it. Anything else I should add to the documentation?
<apteryx>I've sent my comments in an inline reply
*apteryx using Guix's bash as /bin/sh didn't seem to cause /etc/profile to be sourced... eh
<apteryx>ah, it's sourced via ~/.bashrc: [[ -n "$SSH_CLIENT" ]] && source /etc/profile
<apteryx>the above is in the default .bashrc skeleton installed with Guix System
<raghavgururajan>apteryx: Nice! What processor type you have?
<apteryx>I think it's a Core 2 Duo, I forgot the exact model
<brendyn>warning weak hash table corruption @_@
<apteryx>ah, I think the login shell must be invoked as bash, not sh
<apteryx>for the record, to get Guix on PATH on a foreign distribution: 1. build Bash with -DSSH_SOURCE_BASHRC and -DNON_INTERACTIVE_LOGIN_SHELLS or use the one from Guix and set the login shell to invoke it (as *bash*, not *sh*). 2. Do the configuration in your $HOME/.bashrc file.
<apteryx>oh, the shell must be listed in /etc/shells as well, at least on buildroot
<lilyp>shouldn't we put profile stuff in ~/.bash_profile tho?
<lilyp>are foreign distros that borked?
<RRRRedEye[m]>i do put profile at ~/.xprofile
<lilyp>I think .xprofile is only read by X (maybe?)
<RRRRedEye[m]>yeah, but if you use only terminal bashrc is the correct choice for ba(shell)
<lilyp>bash has .bash_profile tho
<lilyp>same as .zprofile for zsh
<attila_lendvai>10 minutes into a websearch for magit send patch... how do i send a git patch from emacs/magit? do people just git send-email it from the shell?
<sneek>attila_lendvai, you have 1 message!
<sneek>attila_lendvai, zamfofex says: A solution I found was satisfactory enough was to write ‘export CC=gcc’ on my ‘~/.bashrc’, so that it uses GCC by default and I can then just run ‘make’.
<lilyp>attila_lendvai: pretty much, either that or format-patch + your special oauth sendmail
<vivien>attila lendvai, I still haven’t figured out so I use attachments.
<civodul>Hello Guix!
<RRRRedEye[m]>welcome~
<efraim>hi!
<attila_lendvai>i just sent an updated patch with git send-email, but i had no idea where i am allowed to write extra commentary in the email, so i just sent it verbatim. this all feels somewhat archaic in 2021...
<lilyp>Call it archaic, but the project couldn't really exist if it required non-bootstrappable JS hell.
<efraim>under the commit message is a line like ---, I normally put any extra message there
<PurpleSym>Does anyone know how to debug this message from the daemon? cycle detected in the references of `/gnu/store/a0wcf4bcw8xr24zwys0idah2gvbpprwj-pandoc-2.14.0.3'
<sneek>PurpleSym, you have 2 messages!
<sneek>PurpleSym, iskarian says: can you give the diff settings from #50363 a try? They make etc/committer a bit bit better at determining the package a hunk belongs to
<sneek>PurpleSym, iskarian says: that won't do anything for multiple new packages in one hunk, though
<civodul>PurpleSym: hi! this message means that you're building a multiple-output packages, but that there's a cycle among them
<civodul>this is not permitted
<civodul>the way to debug it is to build with -K
<civodul>and then grep around to see which refers to which
<PurpleSym>Ah, so files from :out cannot refer to :lib for example?
<civodul>yes
<abcdw>hi guix! When 1.4 release is planned?
<sneek>Welcome back abcdw, you have 1 message!
<sneek>abcdw, ixmpp says: looks like `guix home` has stopped working for me, despite home.scm still being in ~/.config/guix/current/.../guix/scripts, and me using that particular guix. Any ideas?
<PurpleSym>Ah, thanks civodul! Now pandoc builds if I put everything into one output.
<civodul>perhaps there are other options, splitting files differently
<civodul>abcdw: hi! i think we haven't discussed a date yet, there's still work to do on core-updates-frozen before it can be merged
<abcdw>ixmpp: Provide more details please. I removed the code, which sets the GUILE_LOAD_PATH from rde, because we are moving code to wip-guix-home right now, so you have to set them manually if you still use master branch of rde repo.
<civodul>that's also why i haven't been responsive on wip-guix-home, but i did take a look
<PurpleSym>civodul: It looks like the statically-built mega-pandoc-binary has a stray reference to :lib. I’ll strip down that package to just the binary if possible.
<PurpleSym>And then I’m almost done with Haskell updates.
<civodul>alright
<civodul>woow, awesome
<PurpleSym>Just need someone with Emacs+magit to create one commit per package update xD
<civodul>heheh
<civodul>does it even make sense?
<civodul>i mean, i we can't guarantee that each update works separately (and my understanding is that they don't), then one big commit makes more sense to me
<civodul>provided this is the state that's tested
<civodul>*if we
<PurpleSym>I’m sure there’s a way to duplicate packages and have a working intermediate state, but getting everything to *just work* already took two weeks, so right now it’s all or nothing.
<civodul>yes, and i think "all" is better :-)
<civodul>so i'm all for big patches when the packages being updated are tightly coupled, as is the case here
<PurpleSym>Good, let’s do that then :)
<civodul>you can send it as one patch on guix-patches to test water
<civodul>yeah
<lilyp>abcdw: hopefully post c-u-frozen merge
<abcdw>civodul: ok, I just wanted to know the date to adjust the amount of additional work I'll put in wip-guix-home (I would like to have it included in 1.4). It's already in a working state and I use wip-guix-home for a week now. There are a few question, which not solved yet: 1. Decide on moving a home services to (gnu services ...) or keeping them in (gnu home-services ...). 2. Covering `guix home` with tests. I need a few more opinions
<abcdw>on #1 and will proceed with it.
<efraim>my rust packaging talk for packagingcon was accepted, now I need to actually write the talk and mess with rust packages :)
<abcdw>efraim: cool, would like to see it. Perhaps some people from our local community will be interested too.
<wigust>abcdw: 1. Suppose we decide to move home services. We will make a separate commit, right? So, why we not just merge current working state to master? 2. Same as 1. :-)
<efraim>do we have an example in Guix of appending to an existing file? with-output-to-file overwrites it I think
<civodul>abcdw: alright, sounds good
<civodul>wigust: thanks for taking care of the branch BTW, much appreciated!
<abcdw>wigust: The only concern about 1. is that it is a breaking change, so we either break compatibility or do some deprecation process
<civodul>efraim: you have to (open-file file "a")
<abcdw>wigust: Other than that I'm ok with merging it to master.
<patrickx>Hey, i am a newbie with guix and try to package emacs tree-sitter. It requires emacd-tsc , however when I try to install this based on the output of guix import I get the following errorIn toplevel form:
<patrickx>tsc.el:26:1:Warning: Package tls is deprecated
<patrickx>Opening TLS connection to ‘github.com’...
<patrickx>Opening TLS connection with ‘gnutls-cli --x509cafile nil -p 443 github.co\
<patrickx>m’...
<patrickx>Opening TLS connection with ‘gnutls-cli --x509cafile nil -p 443 github.co\
<patrickx>m’...failed
<patrickx>Opening TLS connection with ‘gnutls-cli --x509cafile nil -p 443 github.co\
<patrickx>m --protocols ssl3’...
<patrickx>Opening TLS connection with ‘gnutls-cli --x509cafile nil -p 443 github.co\
<patrickx>m --protocols ssl3’...failed
<patrickx>Opening TLS connection to ‘github.com’...failed
<patrickx>Any ideas? Is this a common problem?
<ixmpp>> abcdw wrote:
<ixmpp>> ixmpp: Provide more details please. I removed the code, which sets the GUILE_LOAD_PATH from rde, because we are moving code to wip-guix-home right now, so you have to set them manually if you still use master branch of rde repo.
<ixmpp>Bingo, that was it
<abcdw>ixmpp: ok, I was mentioned it some time ago: https://lists.sr.ht/~abcdw/rde-devel/%3C87a6l3fndr.fsf%40trop.in%3E#%3C874kbbfmuz.fsf@trop.in%3E Hope soon this hack won't be needed anymore)
<ixmpp>Thanks
<abcdw>patrickx: Use pastebins for sharing logs and code snippets next time, please.
<abcdw>wigust: Ok, I have a plan of deprecation process in case we decide on moving home services to (gnu services ...). I'll make a thread on merging wip-guix-home to master.
<efraim>civodul: thanks. I found some examples in commencement.scm
<patrickx>abcdw: I will. Sorry about that.
<abcdw>patrickx: Np. Share the output of guix import you are reffering to.
<attila_lendvai>i'm seeing this after pulling master, and i think it's not my fault: (exception unbound-variable (value #f) (value "Unbound variable: ~S") (value (linux-libre-5.13)) (value #f))
<efraim>attila_lendvai: linux-libre-5.13 was removed from guix proper a few hours ago, now the default version is 5.14
<efraim>if you have any extra channels they might need to be adjusted too
<attila_lendvai>oh, i see. i do have that other channel for my laptop, that's the problem then... thanks efraim!
<patrickx>abcdw: Here it is paste.debian.net/1212939
<maximed>patrickx: tsc.el is calling tsc-dyn-get-ensure which tries to access the network
<maximed>And the network is inaccessible from the build environment to close a can of irreproducibility and insecurity worms
<maximed>Looking at tsc-dyn-get-ensure, it appears adding tsc-dyn to propagated-inputs (and native-inputs, because tsc-dyn appears to be required at expansion time) would work
<paul_j>Good morning all. Is there a way to execute guix pull, but without downloading the repositories again? I am trying to fix a problem by editing the files locally. Thanks!
<maximed>paul_j: What are you trying to achieve, exactly? guix pull _needs_ to download the latest version of guix, it cannot predict what the newer versions of itself will look like
<maximed>And the purpose of "guix pull" is to update to the latest version of guix
<paul_j>It isn't a problem with the latest version of guix, but another channel. The download of the channel works correctly, but then there is a build fail when building one of the derivations. I think I know what the problem is, so I want to edit the local file then run guix pull again to see if the problem is fixed. However, I am assuming guix pull will download the repository again and overwrite my changes.
<abcdw>paul_j: You can create a channels file, which references the local repository using file:/// instead of remote and do guix pull -C ./channels
<paul_j>abcdw: thanks - I will give that a go.
<abcdw>to get an example you can do `guix describe -f channels > ./channels`
<abcdw>pual_j: IIRC name and url are required, commit can be omitted.
<paul_j>Thanks!
<abcdw>Have a nice day, guix! See you soon.
<efraim>you can use a channels file with time-machine, that can get you an older specific commit
<paul_j>efraim: I am resolving an issue with a change in the contents of the latest version of the channel, so abcdw's approach works nicely. As I write this, the guix pull has completed correctly with my modified version.
<paul_j>efraim: Thanks for the comment!
<vivien>Hi! Do you know how module-reverse-lookup in guile works? The name suggests it will tell me which module defines a variable, but I don’t know how to use it.
<vivien>(I’d like to see if I can use the GOOPS meta-object protocol to have automatic serialization and deserialization of classes, but I need to encode the class name and where it is defined so I can reconstruct it in the deserialize function)
<saile>Hi. I have a problem I couldn't really find much about, but is probably quite basic: I've created a new profile from a manifest and sourced its profile file. I noticed that I wasn't able to run any of that profile's software and that its /bin and /sbin were not actually part of $PATH. Is that something I would need to add myself when enabling a
<saile>profile?
<lilyp>normally, PATH should be set accordingly, did you by any chance set GUIX_PROFILE to a wrong value?
<saile>I don't think so. I'll just check and come back to you
<awb99>I want to ssh into my machines; I have private keys for all machines; can someone tell me how I can configure this in guix. In other distros, I would edit the ~/.ssh and make entries to a textfile. But I guess with guix I can / should do this differently?
<saile>Right, from what I can see I am doing it correctly when I compare to any example in the docs. I'll try to do it again from scratch
<jab>morning guix!
<zamfofex>Hello, Guix! I hate to be a bother and ask again, but since there are more people online now, I have been trying to install Guix with the Hurd on one of my computers for quite a while now, and I have been trying to update the packages for the Hurd to use ‘netdde’. I wrote some definitions to update the various Hurd packages for an OS definition, but I think I’m missing something, because there appears to be a conflict between two v
<zamfofex>ariants of the “shepherd” package.
<zamfofex>If anyone wants to try to help me out in some way, I wrote more information about what I have been doing here: https://gist.github.com/zamfofex/bc7279a5bddd25e8603c84c799d835dd
<zamfofex>Any kind of help is really appreciated!
<apteryx>zamfofex: awesome!
<zamfofex>apteryx: I’m glad you appreciate my efforts! I just wish I could be able to know what I was missing, though. I think I should continue investigating, but it’s a bit difficult, because I don’t exactly know what I’m looking for.
<apteryx>from a repl, perhaps you can investigate what (operating-system-essential-services your-system) returns, along operating-system-user-services ?
<apteryx>there may be (erroneously) a 2nd shepherd instance somewhere
<zamfofex>Yes, that was my guess too. I think one of my problems is that I don’t know how to start a REPL at all. I have been using ‘(display foo)’ and ‘(exit)’ before running ‘guix system image’ to debug, and that seems fairly suboptimal, specially because the default ‘display’ of values is not the most useful.
<zamfofex>But I tried manually looking for such dependencies by finding the service definitions in their respective files, but that was quickly getting tiresome, I think. If there is some other way to do that more efficiently, that would be fairly useful, I think!
<zamfofex>Oh, there is literally just ‘guix repl’. That ought to be helpful!
<brendyn>I'm getting these cannot link /gnu/store.links/... no space left on device messages again. should i be worried about them?
<attila_lendvai>is there an equivalent of (eval-when :compile-toplevel ...) in scheme? what i want is a macro that based on a compile time value either expands to two define-public forms, or just one...
<attila_lendvai>what shall i read up on, or grep for to find examples?
<singpolyma>attila_lendvai: probably the guile manual is the place to look?
<attila_lendvai>i was hoping for something shorter than the entire manual... :) i have found an example in the buix sources, define-database-entry, but i don't know how to make the expansion conditional. maybe i'll just resort to commenting out/in for now.
<maximed>attila_lendvai: I don't think you need eval-when for that
<attila_lendvai>maximed, most probably not. what i want is a toplevel macro that expands conditionally to two different forms
<maximed>(define-syntax stuff (if compile-time-value (identifier-syntax 'this) (identifier-syntax 'that))
*attila_lendvai is coming from common lisp
<maximed>(identifier-syntax ...) can be replaced by syntax-rules or syntax-case + lambda
<maximed>attila_lendvai: What are ‘toplevel macros’?
<maximed>Scheme just has macros, which can be defined on the ‘toplevel’, but also within a procedure
<attila_lendvai>maximed, that looks looks simple, i'll try, thanks! ignore the toplevel part. what i wanted to say is that i want to use it at the toplevel
<maximed>Technically, Scheme macros can't expand to multiple forms, but it can expand to a (begin one-form another-form ...)
<maximed>where one-form and another-form ... are allowed to be definitions
<attila_lendvai>i know all the basics from CL, except maybe the hygienic part. i just need the the local incantations to name them... :)
<maxwell_TGAP>hey my guix is not building and i have no idea why. Its breaking on /gnu/store/*ca-certificate-bundle.drv. It directs me to a log file but there doesnt seem to be anything in it. This is stoping me from running guix pull and guix system reconfigure so im kind of woryed
<saile>I have finally fixed my issue with new profiles not being added to the environment variables. Turns out it was entirely my inexperience with *nix and shells specifically. I was sourcing the profile files of the profiles I wanted inside a script and ran the script in a subshell. It did indeed add the profile to $PATH, it just got lost once the
<saile>script was done. Just leaving this here in case others have ever had the same problem
<maximed>maxwell_TGAP: sounds like https://issues.guix.gnu.org/50264
<maximed>it has been fixed recently
<maximed>IIUC, running "guix pull" twice in a row should fix things
<maxwell_TGAP>thanks ill check it out
<dthompson>"what's in a package" hit the hacker news front page https://news.ycombinator.com/item?id=28618074
<slyfox>\o/
<slyfox>that's a great article
<rekado_>the comment at https://news.ycombinator.com/item?id=28628382 reminds me of that old discussion I once started on the mailing list
<rekado_>the discussion is here: https://yhetil.org/guix-devel/87r2qj1d6o.fsf@elephly.net/
<zamfofex>A short update about my Hurd endeavors: I was able to build a system image, but it is now stuck at ‘start ext2fs:’ and I’m not fully sure why. I suppose maybe it would make sense to ask further about it on #hurd, but I’m unsure.
<zamfofex>I will update my gist with information about it, in case anyone cares about it.
<rekado_>this sounds familiar
<rekado_>pretty sure we encountered this before
<zamfofex>It’s the same efect as described here: https://guix.gnu.org/en/blog/2020/a-hello-world-virtual-machine-running-the-hurd/
<rekado_>we should also upgrade our hurd packages; there have been a few upstream changes.
<zamfofex>But I’m unsure whereht it’s the cause.
<zamfofex>whether*
<rekado_>ah, yes, that’s what I remembered.
<rekado_>zamfofex: does the childhurd service work for you?
<zamfofex>rekado_: I’m unsure, to be honest. Do I need a working Hurd installation to test it? (Note that I’m not particularly familiar with the Hurd, I just want to try it out.)
<roptat>the childhurd is a service on a linux install that lets you run a VM with the hurd
<roptat>no need to install the hurd otherwise
<jab>so I've finally gotten SPF, DKIMsign, and DMARC working! Let me know if you want to exchange email!
<zamfofex>rekado_: If you want, you may use whatever might be useful from my gist to update the Hurd packages and whatnot. I remember the latest commit of the netdde package causes a problem with includes, so I had to use the second‐to‐latest commit.
<jab>Now I suppose that I will write up an opensmtpd-configuration and try to submit that.
<jab>roptat: Are you using a childhurd for funsies?
<roptat>no I'm not
<jab>roptat: it might be fun to see what services can run on the Hurd...
<zamfofex>rekado_, roptat: Could this “childhurd service” provide some form of indication about what might be wrong?
<zamfofex>I remember being able to install the Hurd (with Guix) on a different computer, but as I mentioned in my gist, it lacked networking, so I was unable to do much with it.
<zamfofex>I feel like I have a really difficult time giving up. I’m not sure whether that’s good or bad, but I personally like to think it’s good!
<jab>zamfofex: definitely good!
<nckx>“I'm not actually good at computers I'm just bad at giving up” —mjg59
<nckx>jab: How fares the mail?
<rekado_>zamfofex: I have a childhurd service running and I can connect to it.
<jab>nckx: it works! I just sent and email to gmail, and I passed DKIM, DMARC, and SPF!
<nckx>Nice.
<jab>Further work includes writing a opensmtpd-configuration record with support for openmstpd-filter-dkimsign.
<jab>and I need to write a bogofilter service.
<nckx>I need to write an rspamd service.
<jab>nckx: thanks for your tips and encouragement along the way.
<nckx>Nothing tickles me more than people self-hosting things.
<rekado_>zamfofex: network seems to work fine. I run “guix install wget” and it starts fetching substitutes from ci.guix.gnu.org
<jab>nckx bogofilter vs. rspamd vs. spamassassain ? My goal is to become an email provider.
<zamfofex>rekado_: I see. I suppose I could try it out again. I remember someone telling me that I likely had trouble because the builtin networking drivers in GNU Mach maybe don’t support my hardware, and that I should try using netdde.
<podiki[m]>big fan of self-hosting (I wrote an article about it recently, though not guix related), though I haven't tried email
<jab>podiki[m]: what do you self-host?
<podiki[m]>currently (on a Pi, not yet Guix though): matrix (and how I am communicating here), gitea, miniflux (rss reader), wallabag (article saver), pi hole, dns, ...
<podiki[m]>various matrix bridges
<jab>I want to set up pi hole...
<jab>May I ask why you run a dns server?
<podiki[m]>pi hole was pretty easy (though careful, with anything, if you want to expose the web interface outside of home network), it runs as a dns on your network
<podiki[m]>so rather than forwarding to cloudflare or google, I run a local one
<rekado_>zamfofex: running the Hurd on real hardware is tricky.
<rekado_>what hardware do you have?
<rekado_>the childhurd is easier because it’s using virtualized hardware
<jab>rekado_: I want to run the Hurd on real hardware...
<civodul>running the Hurd on real hardware is possible but (1) you'll get a 32-bit userland, and (2) you'll miss support for some devices
<civodul>someone said they'd work on this after Guix 1.0
<civodul>"after 1.0" is kinda open-ended
<rekado_>I’ll work on this even after Guix 2.0!
<civodul>yup!
<attila_lendvai>will my patch automatically rejected if i use define-macro in it?
<zamfofex>rekado_: Is there a significant distinction between a childhurd and, say, QEMU?
<zamfofex>About my hardware: I took this image last year when I was using IRCCloud: https://usercontent.irccloud-cdn.com/file/jx4Kmucu/20201013_151218.jpg I’m not sure how telling it is, though. I could try to query for some more information if anything stands out as potentially useful.
<rekado_>the childhurd uses qemu
<zamfofex>I see. I was going to ask whether it does anything more than just running QEMU manually, but I suppose maybe I should read up on it.
<rekado_>it’s a full system declaration with a few minor services (e.g. networking, VNC, etc)
<attila_lendvai>why is string->symbol unbound in guix? is that intentionally hidden?
<attila_lendvai>i mean, i can see matches for that, but in my macro i get "unbound variable"
<maximed>attila_lendvai: string->symbol should be bound
<maximed>can I see the macro
<attila_lendvai>maximed, i ,m (gnu packages idris), then ,reload, and then in the guile repl: string->symbol => unbound variable. right now i'm back to trying to do this with syntax-case.
<maximed>attila_lendvai: I can't reproduce from "guix repl"
<maximed>do you see the error when not using ,m ... and ,reload?
<attila_lendvai>maximed, this is driving me nuts, it must be something with my environment: if i copy-paste my macro into the repl while ,m (gnu packages guile), then it works. if i do the same in ,m (gnu packages idris), then it fails.
*attila_lendvai tries without emacs
<maximed>Usually, I write the macro in the .scm file and run "make && ./pre-inst-env guix repl" or "make && ./pre-inst-env guix $SOME_COMMAND" as appropriate
<attila_lendvai>i'll try that next. it seems to work from the terminal, guix repl, but not when in emacs geiser
*attila_lendvai is used to the comfort of slime
<attila_lendvai>maximed, your workflow works. it's something when i'm in emacs/geiser. it's probably set up incorrectly, but then ,reload and stuff seems to be doing what i expect, and even ,expand is doing what i expect after C-c C-c'ing the form.
<podiki[m]>speaking of, any recommended guides/examples on guix and guile repl? I'm a big fan of slime but haven't tried the guile and guix experience yet
<ardon>i
<nckx>Yes.
<nckx>Greetings ardon.
<apteryx>sneek: later tell civodul I'm encountering the "Throw to key `match-error' with args `("match" "no matching pattern" #<eof>)'." offloading issue with a weak ARM board; it is returned after ~16 s. On the board, a Guix process continues running for much longer (the inferior process), apparently reading all package modules slowly. Let me know if you have ideas of things to look for/try!
<sneek>Okay.
<Noisytoot>sneek: botsnack
<sneek>:)
<yosys-questions>Have any of you tried/played around with Cuirass? If so, would you be kind enough to share an example of how to use it? I have GUIX installed on a machine and would like to use Cuirass to setup a CI system for my git repositories hanging out on Gitea.
<roptat>yosys-questions, looks like the answer is no :/
<roptat>you might have more luck on the guix-help@gnu.org mailing list
<roptat>(if it's your first message, you will be moderated by a human, so it can take up to 24h for your message to appear)
<yosys-questions>Ah yes, it's my first message :)
<itd>yosys-questions: something like this works for me: https://paste.debian.net/plainh/d6346355
<yosys-questions>Thank @itd will give it a shot
<itd>yosys-questions: there's also a nice example in the documentation: https://guix.gnu.org/en/manual/en/html_node/Continuous-Integration.html
<yosys-questions>Yes, I did see that one, I was looking for something with a little more real information.
<ixmpp>sneek: later tell raingloom i packaged it https://github.com/bqv/rc/blob/live/rc/packages/yggdrasil.scm - feel free to start with this when you update, not sure if i did it right but at least it works
<sneek>Will do.
<ixmpp><3
<hackeryarn>So I am trying to setup a guix dev environment in emacs. I followed the steps in the manual, and the guix stuff loads, but now I'm getting `no code module for (gcrypt hash)`. What is the correct way to make the code for dependencies like that available to geiser?
<roptat>I don't use emacs, but I get this "no code for module" when I try to use ./pre-inst-env outside a "guix environment guix" on foreign distros
<maximed>roptat,hackeryarn: I think you're supposed to run ./pre-inst-env within "guix environment guix"
<maximed>Or the foreign distro equivalent
<roptat>yeah, that's what I was trying to say ^^'
<maximed>(e.g. installing the build-deps of guix when on debian)
<hackeryarn>roptat,maximed: good call. That worked perfectly.
<maximed>It's also required on Guix System I think
<roptat>it works without it, at least sometimes
<roptat>might be because I have most if not all dependencies already in my user profile
<roptat>I only run pre-inst-env outside an environment when I'm confused and in the wrong terminal :p
<hackeryarn>I was hoping to make it available everywhere without being in that env, but it seems like that would be a lot configuration to get done.
<hackeryarn>I can live with running that env when I need to hack on guix :)
<hackeryarn>Thanks!
<attila_lendvai>so, i would expect `guix environment --file` but it's called --load... shall i open an issue, or is this already being discussed somewhere?
<roptat>ah indeed, it would be more consistent
<attila_lendvai>...or will someone with the commit bit just rename it, or alias it straight away? :)
<roptat>I think we need some discussion, make sure we didn't oversee something
<roptat>overlook
<attila_lendvai>roptat, shall i write a mail to guix-devel?
<attila_lendvai>or open an issue rather?
<roptat>maybe guix-devel
<jab>Hello guix people!
<nckx>sneek: botsnack?
<sneek>:)
<nckx>tf.
<nckx>jab: Say another thing for me brother.
<nckx>Also, hello.
<jab>nckx What up bro? I'm thinking about creating an opensmtpd-configuration record...I think it will take a list of (opensmtpd-domain records. Each opensmtpd-domain records will specify the domain to serve emails, the email accounts, a boolean to use opensmtpd-filter-dkimsign, and maybe some other items. Thoughts?
<nckx>First let me paste what sneek should have relayed but didn't:
<nckx>rspamd does a lot more than ‘just’ filter spam: it can send DMARC aggregate reports (which allegedly helps tiny personal mail servers maintain a reputation at the megaproviders', although I haven't verified that), greylisting, RBLs, and doesn't require an external DKIM filter. The others don't do all of that, although Spamassassin does more than Bogofilter. rspamd is probably heavier-weight, though (I run a Redis service just for it). I ca
<nckx>n't comment on the effectiveness of the spam content filters themselves; that would need a proper benchmark.
<nckx>Note that ‘heavy-weight’ doesn't mean slow, in fact rspamd seems faster than others.
<nckx>Sorry for using so many words.
<jab>Also, I am wanting to get into email hosting (opensmtpd, dovecot), XMPP prosody, and other web service...Is there a default way to update the services that depend on certbot? That way when certbot updates my certs, my web services stay encrypted.
<singpolyma>I think DMARC reports as only useful for medium-to-large setups with many mailservers usually
<singpolyma>If all your mail comes through one server the report will only show you things you can do nothing about
<nckx>jab: I'm really not a fan of such high-level opinionated abstractions when it comes to service foo-configuration records. I think they should closely follow the upstream format and just Schemify it a little.
<nckx>singpolyma: Sending, not receiving.
<nckx>Just as a way to increase your legitimate outgoing traffic on tiny sites.
<singpolyma>nckx: yes
<singpolyma>Oh! You mean sending the reports
<singpolyma>Hmm. *Maybe*
<jab>nckx: Thanks! I think when I looked it up rspamd recommended to use amount of memory...I only have 1GB on my linode. I really need to get my 32GB server set up soon...
<nckx>That was my reaction, but this person presumably knows more about mail then me, or I wish I got paid as much to know less.
<nckx>singpolyma: ☝
<singpolyma>OCI is giving away 24GB arm servers for free
<nckx>Have you successfully installed Guix on one? I think I did, then went to bed, and it was day 30. Sigh.
<jab>nckx: Perhaps at a first shot then I'll just avoid high level abstractions. I could always take a second shot at it and abstract away more details.
<jab>singpolyma say what!? Why?
<nckx>Marketing.
<singpolyma>Yup. Arm servers new hotness want devs to use it
<singpolyma>Then get bosses to pay at work later
<nckx>(OCI = Oracle, in case anyone else didn't recognised that acronym. I just recognised ‘giving away 24G-RAM ARM servers’ ☺)
<nckx>Yes, you will get mails from somebody who likes to ‘reach out’.
<nckx>But they are finite.
<jackhill><offtopic> have they given up on sparc?
*nckx → tiramisu.
<dstolfa>(1) no; (2) they never really cared about sparc, it's just bitrotting until all the huge deployments move from it
<singpolyma>nckx: I didn't try guix yet. I tried the Debian cloud image and hit a problem I didn't dig deep on yet. Official Ubuntu works fine
<singpolyma>I assume I could upgrade the Ubuntu and then apt install guix at the very least
<Guest58>linux-libre-HARDENED
<jab>Guest58 I do actually want to "harden" my guix system installs. That is a noble pursuit
<jab>Well this is cool! https://git.thj.no/thor/bogofilter-smtpd/src/branch/master
<jab>Someone's already written a bogofilter for opensmtpd.
<nckx>As sneek will probably screw this one up as well: ‘jonsger: XFS ready for bare-metal testing on master :)’
<nckx>jab: Neato.
<Noisytoot>nckx, singpolyma: oracle have been known to suspend users' accounts for no reasons
<Noisytoot>s/s$//
<jab>nckx You've got XFS support already!?
<nckx>s/no/$$$/
<nckx>jab: It's really not that hard; mainly testing.
<Noisytoot> https://ariadne.space/2021/07/14/oracle-cloud-sucks/
<Noisytoot>This caused pissnet's us-east.hub to go down
<nckx>Noisytoot: Well, sure, but s/Oracle/any ‘cloud’ SaaSS clownfest/ .
<Noisytoot>this account got restored, but many don't
<nckx>Pissnet went down? How is Oracle still in business? I expect congressional hearings.
<Noisytoot>only one hub
<nckx>Still, the smell.
<Noisytoot>it still has 149 servers
<Noisytoot>which is more than libera.chat and freenode combined
<jab>nckx: I had assumed that it was really hard adding more filesystem support to guix proper...
<Noisytoot>actually more than libera.chat, freenode, OFTC, hackint, and efnet combined
<zamfofex>In case anyone might care, I just wanted to say that I recently added Liquid War 6 to my “Guix packages” repo: https://github.com/zamfofex/packages I wonder what I should if I wanted to get it included in the main Guix packages repo. It’s a neat game, and it’s also a GNU project, rather amusingly!
<nckx>Getting xfsprogs to build statically (for the initrd) was *really* tedious until I found the right magic variable (because I don't know libtool).
<nckx>jab: This is the meat of it: https://git.savannah.gnu.org/cgit/guix.git/commit/?id=34c105f929b73560a2476486660c0cbba7a7410a - then it's just remembering all the random places you need to add ‘xfs’. That can probably be improved.
<Noisytoot>zamfofex, send a patch to guix-patches@gnu.org
<nckx>++!
<zamfofex>Is there some kind of formatting style I should follow?
<nckx>Yes, search the manual for indent-code.el
<nckx>but this isn't LKML, we don't expect first patches to follow all of our arcane rules from day 1.
<singpolyma>Just expect it to take awhile, I think the patch volume is highish vs reviewers :)
<jab>zamfofex How hard was it to package?
<jonsger-laptop>ohoa nckx for the XFS support :) will try later or tomorrow :)
<makx>:/
<makx>Scanning the generated tarball for blobs...
<makx>building of `/gnu/store/wxgzshrxf9r0msk8zp2zmyf7h7d7w3nj-linux-libre-5.14.7-guix.tar.xz.drv' timed out after 3600 seconds of silence
<zamfofex>jab: Interestingly, it was easier than Liquid War 5. Only a few gotchas here and there, like having to disable errors on warnings and such.
<jab>nckx Thanks for the link. Do you have to set up support for it in the installer?
<jab>nckx I'm surprized how few lines of code that is.
<nckx>jab: Seemed rude not to. Also trivial, really, just scattered around again: https://git.savannah.gnu.org/cgit/guix.git/commit/?id=f34b8087411cffb0a572c0ecdce92084f0593fd4
<nckx>makx: I'm guessing that's on ARM? Someone suggested making that part print periodic progress reports to avoid that. I don't know if it was a proper bug report or just idle chat.
<nckx>zamfofex: I had never heard of Liquid War, so thanks!
<makx>nckx it's indeed on arm and apparently the reason one cannot get substitutes for the Linux libre packages
<dstolfa>liquid war sounds like a netflix documentary on the war between coca cola and pepsi for marketshare... or something
<makx>Which is a bit annoying because they take quite some time to build
<zamfofex>dstolfa: Pfft, heh.
<zamfofex>nckx: I’m glad you found it interesting in some way!