<lfam>davexunit: I read the file in your git repos "dotfiles/.dmd.d/init.scm". How would I use a file like that? Do I need to register it somehow with the system? <davexunit>lfam: I use it without doing anything with guix (beyond installing dmd in the first place) <davexunit>my XFCE desktop is configured to run dmd when I login. <davexunit>someone suggested that I should have guixsd's dmd start it, which is a good idea. <davexunit>dmd reads config from $HOME/.dmd.d/init.scm by default. <lfam>Is that documented anywhere besides the source code? I've been struggling to grok dmd / shepherd, and finding this file really helped. <lfam>Or at least, it showed me that I can make really simple services, like your gpg-agent service, which I wasn't sure how to do before <lfam>Unless I missed some obvious documentation, it would be good to put an example of that in the manuals for dmd / shepherd and maybe GuixSD <davexunit>my service definitions aren't perfect. some of them don't interact with 'deco' as well as they should, but it's a good start. <lfam>At least they clearly show how to invoke a basic command line, with start and stop actions. I'm going to play around and maybe produce a docs patch for a minimal service, just to help new users get started. <CompanionCube>I have to say, 'dmd' is a nice acronym even if it's not the actual name anymore <suitsmeveryfine>I have a couple of issues that I thought I should report as a bugs. Is it OK to list them all in an email to the bug-guix or is it better to use help-guix? <suitsmeveryfine>The issues are related by the way; they all deal with the keyboard and touchpad <NiAsterisk>you could send it to bug-guix and cc help-guix? no idea about bugs.. <lfam>I would submit them individually. It will be hard to keep of the bugs if they are all mixed together. <efraim>does guixsd have a cron system in place? <efraim>I thought I heard dave mention it didn't <mark_weaver>efraim: no. we have mcron packaged, but there's no service. <efraim>from the one time I tried gentoo I found out there were a bunch of cron packages <efraim>that's one of the things as a user I always wished I had <mark_weaver>efraim: mcron is based on guile, so I guess it's our preferred way forward, and it should be easy to extend it to do what's needed. <mark_weaver>that said, if you want to package another cron daemon and make a service for it, I don't see any problem with that either <efraim>that behaviour on laptops section looks... yikes. All at once can't be fun <efraim>I see that dmd was started ~2002, mcron in 2003, looks like I have some FOSS archaeology ahead of me <sneek>Welcome back civodul, you have 1 message. <sneek>civodul, mark_weaver says: Regarding the core-updates merge: I merged master into core-updates and created new evaluations. Here's the current status: <http://hydra.gnu.org/eval/108806?compare=108804#tabs-now-fail>. I would prefer to wait until more of the "tabs-now-fail" problems are fixed, and also until armhf is more fully built out. <petter>mark_weaver: don't know if you've read the scrollback. But there's a new version of the proposal ready now, http://sprunge.us/JNCF I think the structure turned out pretty good. <petter>suitsmeveryfine will take a round on style and grammar and produce a new version. <Cube_>ACTION is just idly wondering how much of his Arch install would be available in Guix/GuixSD <Cube_>does the efl package come with docs <efraim>I don't think so, I don't see doxygen in the inputs <jayforsythe>`guix-daemon --build-users-group=guixbuild` never returns <mark_weaver>civodul: in my message about the core-updates merge, I neglected to add the question: what do you think? (so I ask now :) <mark_weaver>on core-updates right now, there are ~54 queued jobs each for x86_64 and i686, and 477 for armhf. (I don't much care about mips64el anymore) <mark_weaver>but my biggest concern is the number of newly-failed builds, many of which are packages that I suspect have more than a few users. <mark_weaver>petter: thanks for the updated draft! it mostly looks good to me. after suitsmeveryfine makes his revisions (or perhaps even before), would you like to post this to guix-devel@gnu.org for review? <civodul>mark_weaver: the Qt5 issue is probably a blocker, hopefully the last one :-) <civodul>alezost: thanks for the shepherd patch flow! :-) <alezost>civodul: my pleasure ... well, not really, but yeah, I just wanted to switch my user config from dmd to shepherd. (Sigh) also there are many places in Guix where "dmd → shepherd" conversion should be performed <civodul>maybe, while you're at it, you could... <civodul>in (gnu services dmd), i think we'll have to keep "shepherd" in identifiers <civodul>because we really want to make it clear what kind of "service" we're talking about <alezost>civodul: yeah, I'll keep renaming :-) I mean in guix source <NiAsterisk>would it make sense to include the word "firewall" in the description of iptables? you habe to specifically search for iptables because a simple search for firewall does not include iptables. this is not really problematic, but it would be a minor improvement. would it be okay if I tried and work on the description and send in the patch later? <NiAsterisk>i tried to look at it from the perspective of a GNU beginner, not my own <efraim>NiAsterisk: sounds like a good idea. patch? :) <NiAsterisk>efraim: okay, I'll do it when I find time later today and send it in <jay4>Is anyone here that can help me? <alezost>jay4: probably, you can just ask your question <jay4>Most of the time I ask, no one answers and I look like an idiot :P <jay4>Whenever I run `guix-daemon --build-users-group=guixbuild` it never returns <jay4>Is this what it's supposed to do? <alezost>jay4: on IRC "asking" is usual policy <alezost>it is a deamon, so it shouldn't exit <jay4>So then where do I leave it running? <alezost>I don't understand, you just run it, and it is running and running, listens to the guix commands, does some things <jay4>So I just leave it in a tmux session or something <alezost>I think so, if your distro uses systemd, you can run it as systemd service. How do you run other daemons? <alezost>oof, I think if I didn't answer just after jay4 asked the question, (s)he probably left in a minute :-) <bavier>I think it might be nice if we compressed VCS checkouts in the store <bavier>it might make it more difficult to derive the sha, but some checkouts are pretty big <Kabelo>Hi everyone, I put GuixSD on my flash drive, and I got a kernel panic. <Kabelo>"not syncing: VFS: unable to mount root fs on unknown block (0,1)" <Kabelo>It's the default one used to build the image on gnu.org/s/guix <mark_weaver>it panic'd because it couldn't successfully find or mount the root partition. <mark_weaver>anyway, sorry, I have to go afk for a while. maybe someone else can help. <mark_weaver>Kabelo: the configs we use generally specify that the root partition is found by volume label, so if you didn't set the label (via -L to mkfs.ext4, or via e2label), then it won't be able to find it. <Kabelo>K. But the label is set I think, because when I launch a GRUB command line and type <Kabelo>It tells me that there is an ext* partition with the correct label name. <mark_weaver>the initramfs needs to be able to find the root partition, and that's part of the OS config. <mark_weaver>can you just show me the config you used? we use multiple different images. <Kabelo>I just used dd to copy the GNU GuixSD image onto my flash drive. <mark_weaver>when booting from another system, can you mount the filesystem on the USB installer? <mark_weaver>I suppose it might be that our initramfs lacks a module that's needed to access your flash drive. <NiAsterisk>Is putting names in the header not really necessary for small fixes like adding one or two descriptive sentences to a package? <mark_weaver>NiAsterisk: you want to avoid putting your name there? <NiAsterisk>no, i'm just curious if every contribution needs a name <NiAsterisk>not for avoiding names, but for curiosity about when one needs to include names <NiAsterisk>what if I changed just 2 words and did no bigger changes in that file. would I still put my name in the header? <mark_weaver>I don't know the definitive answer. maybe ask civodul. but from my perspective, if the files are changed by you but your name isn't on it, then that suggests that the other people in the header authored that text, and that feels wrong to me. <NiAsterisk>I'll include my name. if this seems wrong to anyone, it can be commented on the list <jubalh>i havent followed guix for some time. did the Go packaging go forward? <efraim>that was me, I got distracted and haven't worked on it for the last week or so <Kabelo>Parabola GNU/Linux could mount my flash drive correctly. <mark_weaver>alas, I don't think that's going to work when a SATA drive is plugged into it. <wgreenhouse>would an iptables ruleset under guixsd typically be defined as a dmd/shepherd service? what might that look like? <efraim>the sata drive might fit in the space under the napkin holder <mark_weaver>wgreenhouse: yes, I think so. look at gnu/services/*.scm for examples. <davexunit>wgreenhouse: is iptables typically a daemon run by PID 1? <mark_weaver>davexunit: it's not a daemon, it just needs to be run once during boot to set packet filtering rules. <mark_weaver>and those kind of things are done as services in GuixSD. <davexunit>I was just curious because I realized that, despite the number of times I've used iptables, I didn't know exactly how it did its job. <efraim>could it be run @reboot through cron? <mark_weaver>wgreenhouse: console-keymap-service might be a good example that's close to what's needed here, because it also just runs one command at startup. <mark_weaver>efraim: the SATA connector on the Novena has both data and power together, such that you can plug the drive directly into it. are SATA cables readily available that include both data and power, female to male? <wgreenhouse>mark_weaver: thanks, this looks very relevant indeed <mark_weaver>efraim: I suppose maybe such a thing exists, but I'm having trouble finding it. most of the SATA power cables I find assume that the motherboard end plugs into a power supply with a different connector type. <wgreenhouse>mark_weaver: technically you're probably looking for eSATA (external SATA) if the port carries data and power together <mark_weaver>the Novena board was designed to be in a laptop, so it's designed for a normal SATA drive to plug directly into it. <mark_weaver>the Novena board has a SATA connector with power that mates directly with a SATA drive. <mark_weaver>so if there's to be a cable, it needs to basically be an extender cable (female to male) with that same connector type. <efraim>I searched newegg for "data cable data+power" but I don't what connectors I'm really looking for <suitsmeveryfine>Hi! I have a question regarding previlegies. I just installed redshift which can automatically modify screen brightness depending on time of day. In other distros I can run this as a user but here it only works if I run it as sudo. Am I doing things wrong? <davexunit>suitsmeveryfine: perhaps your user needs to be added to a particular group in order for it to work? <suitsmeveryfine>I see! Thanks for this thought. I'll do some reading regarding the groups <rekado>does it access a device somewhere under /dev? Maybe the ownership of that device could be modified with a udev rule. <mark_weaver>suitsmeveryfine: if it's normally installed setuid root, then you could add it to the 'setuid-programs' field of your OS declaration, but if it's not important that you be able to run it directly from your normal user, I'm not sure it's worth the potential security risk that setuid-root programs bring. <suitsmeveryfine>How do you other deal with things like this? For example, are you able to modify the theme in Xfce? <mark_weaver>from the Settings sub-menu of the applications menu. <suitsmeveryfine>but it has no effect changing the theme settings. Fonts and icons work <suitsmeveryfine>I have the feeling that I've missed an important section in the manual regarding permissions. <mark_weaver>suitsmeveryfine: what did you try to change that had no effect? <mark_weaver>suitsmeveryfine: doesn't work for me either. probably just a bug in our packaging <suitsmeveryfine>There are more important settings that I want to make but where I find no clues from the manual <suitsmeveryfine>To see how things like this are done in other distros doesn't seem to help much at all. <CompanionCube>I only have ~6iB on my root disk and I want to try out Guix on top of my Arch install. Is it supported if I just mount /gnu/store to another disk / partition / btrfs subvolume <bavier>CompanionCube: that should work, yes <bavier>we had a few others here recently who did the same <CompanionCube>I'll just create another btrfs subvolume on it and mount that at it <bavier>suitsmeveryfine: See 'swap-devices' in "operating-system Reference" in the manual <suitsmeveryfine>Another thing: all the files that were created by the installer seem to have been created in 1970 despite the fact that date was displayed correctly <suitsmeveryfine>and often when I install packages 'guix package' warns about conflicts and that it has arbitrarily chosen one of the packages <CompanionCube>isn't the date deliberately set to the unix epoch to improve reproducibility <lfam>Gah I left qt-5 building "serially" last night to test, and it failed due to a substitution network error! <lfam>suitsmeveryfine, CompanionCube: Yes, all the dates are set to epoch to remove that as a source of non-determinism. <suitsmeveryfine>mark_weaver said that I wouldn't need to reinstall the system again, but actually I felt I had to because it was impossible to run guix reconfigure due to lots of conflicts <suitsmeveryfine>I don't remember the exact error message and I've reinstalled since. <lfam>Which conflicts are you getting? Some are harmless, some are not, all are suboptimal <suitsmeveryfine>they look harmless but I'm afraid that they will accumulate and wreck my system <lfam>Yeah, that's a common one. I would say that in most cases the icon conflicts are harmless although if you are paranoid you might investigate <suitsmeveryfine>What really messed up my system last time was when I ran the garbage collector <lfam>Like, if you had a GUI GPG client and you were getting icon conflicts, I'd want to look into it to be sure the correct icons were displayed <lfam>How'd the garbage collector mess things up? <suitsmeveryfine>It freed 500 MB and then the GRUB background image disappeared, prolonged the booting process, caused the battery indicator in Xfce to warn constantly that the battery was almost empty. <lfam>Didn't you have to do something "unusual" with GRUB? It may be that something that should be a registered "garbage collector root" did not get registered <suitsmeveryfine>after this I tried to reconfigure the system as a way to recover but it regused <lfam>The battery thing is quite strange <lfam>Are you familiar with the gcroot system? <suitsmeveryfine>Lfam: well, yes I did one thing unusual because I'm running libreboot <lfam>Basically, certain things are automatically registered as roots, so they are not garbage collected. But you can also add them manually by linking them to /var/guix/gcroot or building them with `guix build --root`. I'm not sure what other commands have the `--root` option. <lfam>So, /var/guix/profiles is linked into that directory so that anything in a profile on my system is protected from garbage collection <lfam>It's worth figuring out why it didn't work for you and if that is a consequence of your arduous installation or if other users could have the same problem <suitsmeveryfine>In my previous installation I had run guix init like ten times without reformatting in between <lfam>suitsmeveryfine: I know, I was lurking through a lot of your installation. I would send an email to guix-devel or bug-guix since the garbage collector should NEVER break GRUB ***nckx is now known as nckx|offline
***nckx|offline is now known as nckx
<suitsmeveryfine>unfortunately I cannot say exactly what I did and now I've also reinstalled the system. <lfam>Did the garbage collector problem happen before or after you reinstalled? <lfam>Okay, since you have ironed out the installation wrinkles, I'd let sleeping dogs lie unless the problem recurs. Hopefully nobody every has to go through what you went through ;) Thank you for persevering <lfam>The garbage collector runs automatically in the background btw <suitsmeveryfine>Well it made me a bit paranoid and so I started to think that it was only that had strange bugs in the system <lfam>As for the conflicts, I look at them critically. Sometimes they are a problem, sometimes not. <lfam>They happen when multiple '/gnu/store' directories that are symlinked from your profile contain the same path. For example, the packages for GNU Parallel and Moreutils both contain the path '/bin/parallel', although those programs are different. When symlinking both into your profile, the system sees the duplication and chooses one of them arbitrarily, since you can't have two of the same paths '~/.guix-profile/bin/parallel' <lfam>symlinked *to* your profile? Not sure how to say it <lfam>And the path would be better written as 'bin/parallel' <lfam>So, for you, multiple packages in your profile contain the same-named icons, and the system has to pick one. <mark_weaver>suitsmeveryfine: ah, what happened there was that your initial install with "guix system init" failed at the end due to GRUB noticing that it wouldn't be able to access its modules in /boot during its early initialization, because it's encrypted. <lfam>But in the parallel case, it could be disastrous since those programs are completely unrelated in their implementation. <mark_weaver>and at the time, I warned you that you'd better avoid running the garbage collector for now, until you run "guix system reconfigure again" <mark_weaver>but then I forgot about it, and I guess you did too. <mark_weaver>in order to avoid garbage-collecting the resources needed by grub.cfg, there needed to be a GC "root" installed in /var/guix/gcroots <suitsmeveryfine>Since I had the warning this time also, what do you recommend that I do now? <mark_weaver>and that's the last step of "guix system init" and "guix system reconfigure", done after grub is installed, but because the grub install failed that last step was never done. <mark_weaver>so the GC root was not installed to protect the grub.cfg resources. <mark_weaver>please, next time, don't feel the need to reinstall the system from scratch. please ask us and wait for us to help you before doing such a thing. Guix is not the kind of system where such a thing is necessary, because of its purely-functional nature. <mark_weaver>it is not like most distros where everything is in a mutable filesystem and things can get messed up that will never quite be the same as they were on a pristine system. <mark_weaver>when you build a new system via "guix system", it's always building a pristine new system from scratch, and then adding a new entry to GRUB that references that new system. <suitsmeveryfine>that's also good to know. I thought that reinstalling was necessary since I wasn't able to run guix reconfigure <mark_weaver>suitsmeveryfine: next time, show us the errors you get and let us help :) <mark_weaver>so, what errors did you get from "guix system reconfigure" ? <suitsmeveryfine>mark_weaver: I'm sorry but that error message has been wiped from the face of the earth <mark_weaver>suitsmeveryfine: can you successfully run "guix system reconfigure" now? <mark_weaver>well, I guess it will continue to show the same error about the GRUB install failing, and thus also failing to create the GC root for grub.cfg <suitsmeveryfine>I can try, but do you think this is a good idea considering that GRUB hasn't been protected as you said <mark_weaver>suitsmeveryfine: the lack of protection for grub.cfg means that you should avoid "guix gc" for now. other commands are fine. <suitsmeveryfine>I need to set up a swap file and then reconfiguring will be necessary anyway <mark_weaver>suitsmeveryfine: are you low on disk space? I don't have time right now to look into it, but it may take a bit of thought to decide how best to address this issue. <mark_weaver>if you could avoid running "guix gc" until we address this issue, that would be best. ***nckx is now known as nckx|offline
<civodul>too bad, would have been fun to meet <alezost>believe me it's not too bad, I'm a very boring and uncommunicative person <mark_weaver>heh, I also feel that I'm not very good meeting people in real life... <a_e>Boring people meeting boring people can become quite interesting! :-) <civodul>we're all boring in our own ways i guess ;-) <lfam>Any thoughts on my services problem upthread? I'm trying to use dmd to run mcron but it fails with " No applicable method for ~S in call [...]" http://paste.lisp.org/+6K0B <lfam>I'm sure it's a really simple issue since this is the first time I try to make a service <suitsmeveryfine>Can I put system config files in the home directory and use them for system reconfiguration? <a_e>Serial webkitgtk building looks promising. <a_e>At least since I realised that "guix edit" was not a good idea. <lfam>"herd: command not found" ;) <alezost>lfam: I think you also need to register cron service: (define cron (make ...)) (register-services cron) <suitsmeveryfine>I want to make a few changes to the os definition and run reconfigure <alezost>lfam: there is a simple example in the manual: (info "(dmd) Service Examples") <NiAsterisk>system reconfiguration is done with the file you used for the first system init <NiAsterisk>i hope this is what you asked, at least that's what I understood <alezost>suitsmeveryfine: you can put it in your home directory or anywhere else <alezost>suitsmeveryfine: you just use "guix system reconfigure /path/to/your/config.scm" <lfam>alezost, civodul: Thanks, I'll take another shot <mark_weaver>suitsmeveryfine: one suggestion: always keep a backup copy of a known-working config <mark_weaver>if you know how to use a version-control-system to keep track of all versions of it, that's even better, but it's not important. <civodul>lfam: looks good, but (for-each start '()) has no effect <lfam>Yes, I know. I'll add things like cron to it later. <lfam>What do you think about putting an example like this (maybe with a little more detail) in (info "(dmd) Service Examples")? To a Scheme newbie, the service examples in gnu/services are daunting. It could be helpful to show new users just how easy it can be <lfam>Ah, interesting! mcron converts the vixie-cron format to s-expressions automatically <suitsmeveryfine>Can I create a swap file like this and then just enter the absolute path to `swapfile` in the OS config: `dd if=/dev/zero of=/swapfile count=2048 bs=1M` <lfam>Are you familiar with Syncthing? Doing what they suggested is probably the worst possible way to provision those systems. <NiAsterisk>not at all, I had some exposure to similar systems, but that was years ago <bavier>suitsmeveryfine: I think that should work. the swap-service just runs "swapon" of the argument <suitsmeveryfine>OK. I guess the dd command requires 'root' to run it and sudo is not enough <lfam>suitsmeveryfine: dd doesn't generally require root. But writing to /swapfile will because / is owned by root <bavier>suitsmeveryfine: did you not install coreutils in your system config? <lfam>coreutils must be available to root by default. <lfam>Try this as your normal user: `dd if=/dev/zero | sudo dd of=/swapfile count=2048 bs=1M` <lfam>Sometimes there are complications with elevating one's privileges and redirection <lfam>I'm not sure if that applies with dd <suitsmeveryfine>I don't think I would have been able to do what I just did in Debian <lfam>What do I need to do to start dmd / shepherd on login for my unprivileged user? <suitsmeveryfine>And now I just add this to the system config: (swap-devices '("/swapfile"))? <bavier>suitsmeveryfine: I think so. give it a try <bavier>it's easy to revert if it doesn't work <suitsmeveryfine>;;; ./gnu/build/file-systems.scm:353:7: warning: possibly unbound variable `reboot' <suitsmeveryfine>uix system: error: symlink: Permission denied: "/var/guix/profiles/system-2-link" <lfam>Are you reconfiguring with root privileges?