<vagrantc>i also seem to recall memos getting lost in the noise of logging in
<raghavgururajan>dstolfa, drakonis, nckx, roptat, ixmpp et al: I am opposed to the idea of 'User Repositories/Channels'. Because all contributions are contributions. Anyone can contribute. IF there are services and packages that aren't yet ready for mainline inclusion because of quality concerns, complexity in bootstrap, etc, but FSDG-complaint, WIP branches are the way to go. It means they are in progress to reach t
<raghavgururajan>he standard/completeness. But anyone can use (--branch=) and contribute (guix-patches), from and to that branch. This way the development is less fragmented.
<dstolfa>i basically have an intel/nvidia laptop that i'll grab tomorrow. the idea is to completely turn the nvidia card off, coreboot it, velcro a hub and a wifi device onto the lid and use it that way
<ss2>hey, I'm setting up, yet another Guix system, and am trying to modify %base-services, but now I get a: guix system: error: =>: bad use of '=>' syntactic keyword
<ss2>after I copied over the same functions, that are being used in %desktop-services
<ss2>I'm basically copying and pasting from another declaration, but it is failing now. Has it got to do, that I'm modifying %base-services? Are they not quite the same? -- Just with less services and what not enabled?
<ss2>yeah, sure, I'm trying to _not_ modify %desktop-services, and only have %base-services around, and modify that. And this is what is confusing: I've only got guix-service-type left, and it is erroring out.
<ss2>but using the exact copy in %desktop-services is fine.
<drakonis>now see here, i used base-services and it worked wel
<munksgaard>Is there an easy way to figure out which imports I need to add? I think what I mean to say, is that it would be nice if the manual described how to actually build the result of guix import.
<munksgaard>I think I've figured it out through trial and error now, but the way guix import is described in the manual, I kinda thought those things would be handled for me.
<yoctocell>leoprikler: it runs a command you specify it to run
<yoctocell>you can just tell it to rsync /local/path /host/path every two hours or something
<flatwhatson>i think the idea of cronjob and cron runner need to be separate
<flatwhatson>cronjobs defined at system or user level, and a system-wide cron runner that runs them
<yoctocell>flatwhatson but wouldn't be required to have root access to install the cron runner in the first place?
<flatwhatson>yes, the system administrator would set up cron facility for use by users
<flatwhatson>then users are free to define their jobs independently
<pineapples>> a cron schedule dependent on logged (...); flatwhatson: Speaking of which, mcron doesn't work anachronistically yet. Anyway, you can specify a mcron job to run as a specific user in the system configuration, which I presume would run regardless of the fact if the user is logged in or not
<flatwhatson>pineapples: yep, it's already a supported feature, i think the trick is just letting users define their jobs in their guix home config?
<flatwhatson>on a regular linux system, crontab -e as a user will edit your personal crontab, and sudo crontab -e will edit the systemwide crontab
<flatwhatson>when cron runs, it runs the systemwide crontab as root (or defined user maybe), and the user crontabs as that user
<yoctocell>i guess guix home services would need to somehow be able to interact with guix system services
<pineapples>flatwhatson: Perhaps. From the user's perspective, it would be more patent to have their cron jobs declared in a single place
<pineapples>No, I am not. I'm sorry if what I'm saying isn't clear. In the message above, I meant the average desktop user, not a system administrator
<flatwhatson>right, they would define their jobs in their guix home config, right?
<flatwhatson>maybe there needs to be some concept of a user "subservice", which is dependent on the presence of a system service, and the system service can process all the user subservice defs
<flatwhatson>or in the case of cron, the guix home "service" just writes a crontab file, and the system cron service does its usual thing of checking system crontab and every user's crontab
<yoctocell>flatwhatson: the guix system cron would then have to know where to look for crontab files (in /gnu/store) and which user the file corresponds to, right?
<flatwhatson>hmm, yeah, it would need a way to interrogate the home configs. i'm thinking some general facility to process all the guix home configs from the system level.
<flatwhatson>and whatever the "guix home reconfigure" would need to trigger hooks at the system level to rebuild the aggregate config
<pineapples>flatwhatson: I think so. To preclude confusion, there should be separation between user-specific cron jobs and system-specific ones, which the promotion of Guix Home as the means of configuring everything that is user-specific should achieve
<bricewge>logs.guix.gnu.org only return results up to 2021-06-02\
<bricewge>There was a restart of bayfront-log 2021-06-03, I guess it's related
<pkill9>but if root modifies your user's files, then it gets owned by root
<PurpleSym>There’s CAP_CHOWN, which lets you chown any file.
<oriansj>well system reconfiguration isn't something one should allow to anyone excepted system administrators as regardless of how it is implemented it becomes an unsolvable security hole. As a custom shadow package very easily is a backdoor to full root on the system in question.
<ecbrown>pkill9: yes, i have tripped on this landmine twice. and never again lol
<apapsch>in the local perfect emacs setup, geiser cannot jump to definitions (M-.). the message is always "Symbol not found (mkdir-p)" (any symbol really). Guile REPL starts fine and geiser-guile load path includes the guix checkout
<ecbrown>apapsch: is this guix system or foreign distro?
<apapsch>ecbrown: the REPL still starts fine, and %load-path shows guix checkout. when visiting e.g. gnu/services/science.scm:66 I get symbol not found for shepherd-service-type, though l. 67 it asks me for a module on rshiny-shepherd-service and there are no guix modules in the completion list
<apapsch>pkill9: I have a vagrant debian box for local development, which is configured by ansible playbooks. Production deployment uses the same playbooks to have similar environments. But it's slow and many things can still go wrong. I'm currently looking to adopt Guix to build VM images for the applications I'm running (Shopware). I guess the development workflow can still be improved in a lot of ways
<apapsch>ecbrown: thanks for the tips. It's not a clean clone, some files are changed and I originally cloned it in the VM and ran make there and then rsynced it to the arch host. only then I installed Guix on the host
<roptat>that will give you a second file you can install as .config/guix/channels.scm, to pin guix to your current revision
<ecbrown>sss1: i know you can do it for a specific commit, one may have to look for where package version changed. i don't know if you can dial in specific package version for ever since guix source rolls
<roptat>(and it also saves any channel you currently have)
<ecbrown>sss1: (the subtle point being, e.g. specific postgresql-10 package may not be around forever but the git commit that lets you get tot that state, even if 10 years ago, is still there)
<roptat>also, if you want to install packages from various guix revisions, you'll need inferiors, and ~/.guix-profile/manifest hopefully contains provenance information you can use to set them up properly
<tschilptschilp23>hi all! do you have an idea how i can make an application running from a guix environment connect to the system's pam-authentication? i am trying jupyterhub and it starts nice, but i get an error regarding the app not being able to retrieve authentication info... are environments isolated in this respect?
<yoctocell>yeah, being able to patch channels would be really nice
<ixmpp>It works raw, but guix pull says - guix pull: error: Git error: invalid content-type: 'text/plain; charset=UTF-8'
<roptat>tschilptschilp23, no, unless you use -C (--container)
<roptat>tschilptschilp23, I don't know too much about pam though. If you can't find an answer here, I suggest you send an email to email@example.com (first message is moderated by a human, so it can take some time to appear, usually less than 24h)
<yoctocell>ixmpp: hmm, that's weird, maybe something is broken with my cgit instance...
<ixmpp>Reminds me, i need to demystify sxml for myself at some point
<roptat>that' the one I use, but I don't have C or XML files, I think
<roptat>I find it to be a bit limited too, in terms of how you can highlight things. I'd love to italicize the content of quotes and semi-quotes for instance (but not inside unquotes), which it won't let me define easily
<ixmpp>yeah, id be curious about other things with more alluring features, but for now im content with klaus http://dev.fron.io/ which is terrifyingly fast and i love it for that
<ixmpp>I mean if every site was that responsive the web might actually be a nice experience
<roptat>I tried defining my own library based on regexp, but the regexp in guile scan the whole string everytime even when they match very quickly, which makes it slow when scanning a big file for tokens...
<roptat>so I decided to create my own regexp library with a bit of C, and found that creating a regexp was slow (but super fast to execute), so tried to ensure all my regexps were compiled at compile-time, not during the execution, but doing so was a bad idea, I think the result is just a pointer, but the memory it refers to is not part of the compilation result, it segfaults
<roptat>and after banging my head against the wall, I gave up
<tschilptschilp23>roptat: thank you! for now i will try through config.scm (without an environment as base) to have something to compare...
<roptat>you could also use that to count them at the same time you parse the file, which would be much more efficient for rainbow coloring
<roptat>my goal was to have something like pygments, which seems to be able to do that
<abcdw>ixmpp: I see you actively use Guix Home, how is your experience with it so far?
<roptat>(not in their implementation of the scheme lexer, but it seems possible to define such a lexer)
<ixmpp>abcdw: eminently useful and impeccably functional! I see no reason it shouldnt be merged as is. My only remaining question is figuring out the best architecture for sharing data between os and homes, as i mentioned
<abcdw>Nice to hear that, I would like to see what civodul thinks on it, but don't want to bother him too much) I think we with yoctocell will send commiter access request emails and will start working on guix-home branch if it will be approved)
<ixmpp>I used zsh once. Long time ago. It's just bash but with 1000 plugins. Quite powerful but crazy complicated. Im not massive on fish either, but at least its very simple and yet very functional and powerful too
<ixmpp>Honestly until i killed my filesystem i used Xonsh
<abcdw>yoctocell: I remember about on-change service, it's a tricky one, I need to review it with fresh mind.
<abcdw>ixmpp: not to have an instance of the X server running on my laptop, I completely migrated to pure wayland software. feature-sway have xwayland? flag in case someone need it, but default value is #f.
<abcdw>roptat: Ah, ok, saw it) I thought it was some other discussion.
<roptat>well, there's also the fact it told me a few times how great it would be to merge the home-manager :p
<enpa>Hello, all! Is LVM ready for use in an OS config? If possible, I'd like to set up my configuration using LVM and LUKS but I'm not seeing a way in the info manual to create physical volumes - only volume groups. So I'm curious if that's still in-development/paused/etc.
<roptat>I think lvm works, but maybe not with luks
<lispmacs[work]>Hi, I noticed that if I do a guix pull --commit to the commit that I am already on, guix still builds a new generation. Is that is what is supposed to happen?
<roptat>lispmacs[work], yeah, that's what you're asking for ^^'
<enpa>roptat: Ah, okay. I suppose it may be assuming you only have one disk, or something, unless it creates the physical volumes for you. I'll take a look at the code to get a bit more detail. Thanks!
<lispmacs[work]>I was just wondering because guix package can figure out when you are changing nothing and consequently does nothing
<roptat>enpa, guix won't create any partition for you
<roptat>you describe what you have in the system config, and then guix mounts them for you
<roptat>lispmacs[work], I think that's because it notices you're updating to the same derivation it's already at, but guix pull needs to "compute derivations" anyway
<roptat>so at least that part can't be skipped, after that maybe we can notice it's the same guix and not do anything
<enpa>roptat: Oh, so I should create the physical volumes for each disk (similar to manually creating partitions) and *then* I'd add the "mapped-device" with volume groups to my OS config. That makes more sense.
<ecbrown>it's an option. i have thought of moving to trisquel
<Guest89>I don't know. FreeBSD is Unix, so it should work
<ecbrown>apteryx: i have only tinkered a little bit in the hurd on guix. the main reason is that i have not figured out how to get in my precious emacs since it seems that Python does not compile on hurd
<ecbrown>and it is needed for all the recipes for some reason, i have not gotten a chance to really really strip down emacs-minimal
<Guest89>Which language is better for it? They usually talk that C is very portable
<Noisytoot>C supports a lot of architectures, and if you write it well, it can be portable
<Noisytoot>It's also possible to write very unportable C
<dstolfa>Guest89: linux, freebsd, openbsd, netbsd, illumos, etc all have a different kernel with different system calls all together (and the same named ones may have different semantics, different flags, etc). they also disagree on where things should be put in the system, how they should interface with each other with shared memory and sockets and so on
<dstolfa>so you shouldn't expect anything that wasn't explicitly ported or explicitly written to not use any of the OS-specific things to just work