IRC channel logs


back to list of logs

<p4r4D0xum>How can I install guix on another partition if i don't have `herd' command?
<nckx>I do not understand the relation at all. I suspect there is none.
<nckx>What do you think you need to do and why?
*nckx throws jpoiret an e-masochists high five.
<p4r4D0xum>I want to install guix system
<nckx>I understand that much. But herd is never used for that.
<p4r4D0xum>So what herd actually does?
<nckx>Is this about cow-store by any chance?
<p4r4D0xum>nckx: There's a good to fare chance that it actually is.
<nckx>p4r4D0xum: It starts & stops services on systems running the Shepherd init system, which basically means Guix Systems, like systemctl does on systemd systems.
<p4r4D0xum>oh that's why it ain't on foreign system.
<nckx>p4r4D0xum: OK. That service is specific the Guix installer ISO (which is itself a Guix System with herd). The cow-store service does $magic to make sure the following steps don't fill your RAM drive with downloaded packages.
<p4r4D0xum>That would also explain the name and why I never heard of it
<p4r4D0xum>Never used Shepherd.
<nckx>It is only needed if you're using that ISO, and it seems you are not.
<p4r4D0xum>what if I dd the installation iso into a partition? Dumb idea?
<nckx>You can install Guix System from any distro (with guix) so you don't *have* to use the ISO, but the instructions assume you are so's not to include 20 'if's in every sentence.
<p4r4D0xum>nckx: I apologise but I have no clue what you just said.
<p4r4D0xum>more specifically you lost me at 'but the instructions...'
<nckx>p4r4D0xum: The manual has to give steps, and if each step is 'if you're using the ISO do this, but do that if you're using Trisquel, but yet another thing if...' it becomes unreadable.
<p4r4D0xum>nckx: I couldn't agree more
<nckx>So it assumes the ISO, and people who don't use the ISO are assumed to know which steps to adapt, and how.
<nckx>Which you can't do yet, I completely understand.
<nckx>So if you can boot the ISO, it'll make thing easier, but if it really refuses to boot on your machine (is that the issue?) don't waste a day on it either.
<nckx>Sorry for not being clear, very tired & will fall asleep soon whether I want to or not.
<p4r4D0xum>nckx: No harm, no foul.
<nckx>Good news is I think that the cow-store step is the most opaquely specific instruction of all.
***caleb__ is now known as KE0VVT
<nckx>Sorry that you stalled on it for such a long time, if I read the backlog correctly. The section already explains why it's needed, so adding a short note on when wouldn't be too jarring IMO. I'll make a note on it.
<nckx> Good night.
<nckx>Oh, and good luck.
<p4r4D0xum>nckx: Good night.
<NaturalNumber>I'm unable to log into my user account. I ended up creating a new user and copying the home directory, but it would be nice to know how to fix it in case it happens again in the future.
<p4r4D0xum>NaturalNumber: You have no root access?
<NaturalNumber>I tried the obvious thing which is log in as root and "su - user" but got endless permission errors.
<NaturalNumber>p4r4D0xum I do :)
<p4r4D0xum>NaturalNumber: So why no use `passwd'?
<NaturalNumber>I don't think passwd is the reason why I can't log in. I think it has to so with a startup file such a .profile.
<NaturalNumber>Oh dear, brb.
<NaturalNumber>p4r4D0xum: I figured it out... how embarasing :D
<NaturalNumber>thanks very much
<NaturalNumber>apparently my home dir was "chown"ed to 1000
<NaturalNumber>I have no idea how that happened or what that means, but it has been fixed.
<p4r4D0xum>NaturalNumber: Good to hear.
<lilyp>re: curl, it seems that curl_global_init is not thread-safe on i686?
<lilyp>or perhaps the thread safety check is shaky on all platforms
<lilyp>either case, it seems to be a 7.84.0 issue, which pops up due to the replacement
***LispyLights is now known as Aurora_v_kosmose
<maximed>nckx: currently borrowing someone’s else laptop, so antiox can be disabled for ~two weeks
<nckx> OK.
<nckx>(Y'know, later, because I'm borrowi... eh.)
<nckx>Enjoy your morning, Guix. o/
<drakonis>a new release is perhaps overdue...
<drakonis>is it going to release in the tenth anniversary event?
<nijj>If a package is unavailable in guix but available in docker hub, I can still use it without pain on a guix system, right?
<the_tubular>10th anniversary was a few months ago drakonis no ?
<the_tubular>Maybe few weeks ...? But we've passed it
<drakonis>related to this
<the_tubular>Haa my bad!
<filinta[m]>Hi,... (full message at
<Aurora_v_kosmose>I think I found a bug with path-rewriting in nyxt.
<Aurora_v_kosmose>It attempts to load only root-based paths like /gnu/store/4d9vfm33hcnvpc7vhx7w1pdx0k85flhj-webkitgtk-2.30.2/lib/ for its libraries in a supposedly-portable pack.
<the_tubular>finktank[m], not sure I understand the issue, just get a new disk and use dd ?
<jpoiret>Aurora_v_kosmose: are you talking about guix packs?
<vivien>A few days ago I discovered that gnulib lets packages compile in a "relocatable" mode, where if they don’t find their prefix, they will start looking around the executable. Why doesn’t the gnu build system try to enable it in any case? We don’t risk anything as in guix proper, the prefix always exists, and we could have more relocatable packs for free.
<vivien>And from how guix works, if we extract such a pack on a system where the prefix already exists, it will likely be bit-for-bit what the gnulib-relocatable executable would find anyway.
<vivien>(would expect)
<Aurora_v_kosmose>The issue in my case is that the paths get compiled into the Lisp program at build-time and whatever rewrite bits Guix has aren't compatible with that atml.
<jpoiret>Aurora_v_kosmose: what pack format are you trying to use?
<raghavgururajan>Hello Guix!
<raghavgururajan>Do we have this license under some other name?
<lilyp>effectively expat?
<lilyp>or wait, some patent shit
<jpoiret>sneek, later tell Aurora_v_kosmose: in case you didn't get my message, what pack format are you trying to use?
<sneek>Will do.
<raghavgururajan>Guix licenses file has expat-0. Not sure if its AML.
<lilyp>no, it's not
<lilyp>this actually looks closer to some bsd
<lilyp>the no ads clause fits bsd-3
<lilyp>the redistribution terms are weaker, though, I think they don't require you to reproduce the copyright notices
<lilyp>expat-0 is IIRC effectively the WTFPL
<lilyp>I just found out that the gnu reuse tool is dumber than it ought to be
<lilyp>why grep only for SPDX license headers and none of the headers actually used in free software?
***Tracnac_ is now known as Tracnac
<raghavgururajan>It mentiones AML as free and GPL compatible.
<lilyp>IANAL, so I'm not going to dispute that, but the naming choice itself is already silly
<nckx>Licensecheck scans for snippets, not REUSE.
<raghavgururajan>How often does `` get updated?
<nckx>Also, did GNU fork reuse and why oh dear god why?
<raghavgururajan>nckx: Are you talking about AML?
*raghavgururajan thinks he might have disconnected in-between
<nckx>I don't think so. That sounds like a license. I was talking about 'gnu reuse' above and the desire for a tool that sniffs licences.
<nckx>Neither of which I
<nckx>There's always logs.guix but I don't think you missed anything.
<raghavgururajan>Yep, just checked.
<nckx>Also, hullo Guix.
<nerthus>are there any Guix/Guile manuals/references/docs that you can actually search through?
<nckx>lilyp: IAANAL but the SPDX identifier, in isolation, even without the longer traditional licence header, is a very strong (read; legally binding) indication of intent. The same cannot be said of a fuzzy regexp match. Not opening the latter can of worms in REUSE is the clever move.
<nckx>nerthus: The Guix and Guile manuals?
<p4r4D0xum>14:17 here. :D
<nckx>14:16 here.
<nckx>TZs are weird.
<lilyp>To be fair, there would need to be very strict matches, for the license header, but I find it weird, that reuse rejects all of guix' license headers
<nckx>REUSE has a specific goal, which is not to be a handy licence guesser script (that's licensecheck :-)
<nckx>The reliance only on machine-readable statements is deliberate.
<nckx>nerthus: Which is to say, I'm not aware of any that you *can't* search through, so if you have a specific problem you'll need to be more specific.
<bost>Hi. I what can I do about? `guix package: error: /gnu/store/...-tar-1.34 (system: i586-gnu) has no substitute`
<nerthus>nckx: well, how do you search through the references?
<nerthus>specifically asking how _you_ do it, not in general
<nckx>nerthus: Oof. You mean 'recursively' search through, say, the Guix manual's Texinfo references to the glibc or other manuals? I must say I've never done that, or know of a more efficient way than starting my search at the Top level.
<nckx>That meaning of 'through' was not clear to me.
<nerthus>yes my question was ambiguous, sorry
<nckx>There might not be a good answer, but I'll stress I'm not an info power user.
<nckx>Maybe emacs would expose something like that or at least the hooks to make it.
<tschilptschilp23>Hi! I'm just playing with qemu on guix to run foreign distros from guix. At the moment I'm forwarding ports to my guix-localhost, which works very well. However, I'd like to assign IPs to my vms, which will be visible on my local network. This calls for interface-bridging, but yet I could not find anything related at Does anyone have a hint how to do this?
<cbaines>tschilptschilp23, I don't think that's a Guix thing, but a QEMU/libvirt/... networking thing
<nckx>bost: If nobody knows (I don't), try the help-guix mailing list with a bit more command context & output.
<nckx>A lot more is also good :-)
<bost>nckx: on I found "While amazing to be able to just run the Hurd in a VM, development without substitutes is a real pain; a Guix system needs substitutes. [...]"
<tschilptschilp23>cbaines: thanks for the hint, I'll check the qemu docs. I thought that the bridge has to be prepared on OS-level. If not, that's a good thing :)
<cbaines>the networking stuff in Guix just interacts with the Linux networking stack similar to other software
<nckx>With the caveat that I'm no Guix/Hurd expert, bost, to me that's more a general 'we need these things in order to be user-friendly', than a hard requirement to build anything at all. I would expect tar to build locally, unless it's the bootstrap tar.
<cbaines>so using "Guix" doesn't mean that all networking configuration can or has to go through the Guix system configuration
<bost>nckx: And since I'm not interested in the Hurd, in the guix/packages.scm I just commented out the content of %hurd-systems to turn it to an empty list.
<tschilptschilp23>cbaines: perfect, I hope I'll get this going!
<nckx>bost: Wait what. If you don't care, why are you getting this Hurd error & why is it fatal? Definitely need more context. What you're running, with which channel(s), the full output...
<bost>nckx: the context is, I'm trying to apply & compile the patch for spacemacs
<nckx>Did you get this error *because* or *before* you started playing with the bowels of Guix, etc.
<bost>nckx: (not that I expect that I'll be able to make some progress or such)
<nckx>But this is a very strange place to end up. Far away from what the patch seems to touch.
<nckx>At first glance in a browser.
<bost>nckx: The command I'm running is `/pre-inst-env guix build --keep-failed emacs-spacemacs`. (I hope that's the correct one to build a package)
<Guest140>Is there a simple way to start a user's home services on boot?
<bost>nckx: Ah WAIT no! Sorry
<nckx>Looks good, but I'd make sure you're in a 'guix shell -D guix' in addition to pre-inst-env, bost.
<nckx>Just to avoid weirdness.
<bost>nckx: I messed up. I get the '... has no substitute' when running `guix package --load-path=./ --manifest=./gnu/packages/spacemacs.scm --list-available=emacs-spacemacs` which is (I guess) the wrong command. Ugh.
<nckx>Hm. That command depends on too much external state to say much.
<nckx>But that --manifest look iffy.
<bost>nckx: Anyway, the `./pre-inst-env ...` gives me cryptic backtrace and I have no clue how to read it
<nckx>And unless you know exactly why -L . is there, what you expect it to do is already done better by ./pre-inst-env.
<nckx>I don't understand why you get that 'trace.
<nckx>I'm assuming the patch is valid.
<nckx>Could you undo the spacemacs commit, and run make, and just ./pre-inst-env guix build emacs as a sanity check?
<nckx>I just realised how old this patch is.
<nckx>I'm sure it worked fine in 2019 but it's likely to need adjustment to work today.
<bost>nckx: "I don't understand" is the state in which my whole computer is today :)
<nckx>You have a computer, so you're still ahead of me.
<nckx>For that reason, I won't be able to adjust the patch if needed.
<nckx>Even reading it is a sidescrolling adventure of pain.
*nckx first person to call phones computers gets slapped by an android.
<nckx>sneek: botsnack
*nckx first to call them 'supercomputers in our pockets' gets slapped by a human.
<bost>nckx: a proper clean build (incl. `git clean -dxf`) helped. `./pre-inst-env guix build --keep-failed emacs-spacemacs` succeeded.
<bost>nckx: thanks.
<nckx>Now I'm still surprised (2019 etc.), but pleasantly so.
<nckx>I hope you can help get the patch unstuck.
<arjan>does anyone know what could cause this during an initial home reconfigure? "guix home: error: mkdir: Permission denied"
<arjan>trying the same configuration in a container does not crash like that
<f1refly>i'm having an issue with icedove. every time at startup it seems to create a new default profile and disregard the old one. when i look into ~/.thunderbird, i can see a whole bunch of XXXXXXXX.default-default-X directories, indicating that the profiles are indeed created but then ignored the next time. i just installed icedove from the repo, is there anything more to it?
<lilyp>f1refly: probably pin icedove to an inferior
<nckx>jonsger[m]: ^ ? (it sounds familiar to me but I don't use it, found and though.
<nckx>f1refly: Definitely not your 'fault'.
<f1refly>i just deleted ~/.thunderbird and for now it seems not to happen again
<nckx> arjan: Did you see ?
<nckx>nckx: issue searchbot snack.
*nckx away.
<Aurora_v_kosmose>jpoiret: I was trying to use the tarball format.
<sneek>Welcome back Aurora_v_kosmose, you have 1 message!
<sneek>Aurora_v_kosmose, jpoiret says: in case you didn't get my message, what pack format are you trying to use?
<jpoiret>it's a bug, but i don't think it could easily be fixed
<Aurora_v_kosmose>I know that the user namespace & docker versions probably both don't have it by virtue of their effective chrooting.
<jpoiret>are you using --relocatable?
<jpoiret>hmmm, that's weird then. proot should transform that path
<Aurora_v_kosmose>The host I'm trying to run the program on doesn't have userns enabled (Debian by default doesn't) and doesn't have Docker. So I'm currently telling it to use proot.
<jpoiret>i think you should open a bug report if you haven't alredy done that
<Aurora_v_kosmose>jpoiret: Oh, so proot is supposed to transparently rewrite the paths?
<jpoiret>it's the whole point of it
<jpoiret>iiuc, it traces the program and intercepts the glibc calls (or maybe only the syscalls) and rewrites them
<Aurora_v_kosmose>Do you think there's any possibility it's a Debian-proot specific problem?
<jpoiret>no, i don't think so. It should be using guix's
<jpoiret>but it's very hacky anyways
<arjan>nckx: thank you, I am indeed using a guix system without desktop services so that is probably it
<Aurora_v_kosmose>I'm also having to explicitly set the GUIX_EXECUTION_ENGINE variable
<Aurora_v_kosmose>This is the command I'm using to generate it: guix pack -f tarball -S /bin=bin -RR bash nyxt
*jorge[m] uploaded an image: (923KiB) < >
<jorge[m]>jorge[m]: this is happening in the installation of my Guix System, some help
<raghavgururajan>What happened to our `indent-code.el` script?
<lilyp>got wiped for guix style, I assume
<randompotato[m]><jorge[m]> "Guix.png" <- I think that happened to me too reflashing the usb in rufus with fixes for old bios fixed it
<jorge[m]><randompotato[m]> "I think that happened to me..." <- ok, i will try again. Thank you
<tissevert>hi guix
<Dr-T>Hello. I just installed guix and emacs on my laptop whose main distrib is Archlinux. I have a problem : the mouse pointer becomes very small when my mouse get into the emacs window. I think because my screen is hidpi. It did not happen when I used pacman to install on archlinux, it happens only with guix.Can you help me ?
<raghavgururajan>jorge[m]: XMPP
<lilyp>Dr-T: that's probably guix using other xresources than arch
<lilyp>there's an environment variable that you can set, probably XCURSOR_something something
<Dr-T>Thanks for the answer. Yes I remember that I have some environment variables somewhere about hidpi things. How can I use environment variables in guix-installed softwares ?
<jorge[m]><raghavgururajan> "jorge: XMPP" <- ??? Jabber o Jami
<Aurora_v_kosmose>jpoiret: Well. The Arch machine manages to run it.
<Aurora_v_kosmose>jpoiret: And I can confirm from htop that it's using the installed proot rather than Guix's.
<Aurora_v_kosmose>Ah wait nvm, I forgot to put the full command option
<Aurora_v_kosmose>It's running the Guix proot.
<Aurora_v_kosmose>So, we have Arch Linux running with proot or userns without issue. But on Debian it doesn't.
<lilyp>jorge[m]: XMPP is the IETF formalization of Jabber. Why we still need to call it "XMPP/Jabber" after more than 20 years is beyond me, but there you have it.
<lilyp>Jami is something else and does not support XMPP afaik
<yewscion>Maybe I'm missing some obvious bit of documentation, but is there an option to pre-fetch the sources/substitutes needed for a profile without actually building any outputs? I have a more portable machine now, that is sometimes without internet access, and I'd like to be able to pull down the sources and build offline.
<singpolyma>It's like email. Jabber is the name of the system / network. Like email. XMPP is the name of the protocol at a technical level, like saying SMTP
<singpolyma>I would never say "XMPP" to a normal user just like I would avoid saying "SMTP"
<lilyp>sure, but people already differentiate between e.g. Evolution and Icedove as mail clients (or user agents if we're talking technical), but know that they're somewhat compatible
<lilyp>calling it "jabber" after one server they probably won't have an account on, when "instant messaging" is already a broadly known term is IMHO silly
<singpolyma>lilyp: jabber is not the name of one server. It's the name of the network
<singpolyma>Just like "email" is the name of that network
<singpolyma>"instant messaging" is no longer a well known term and also encompasses primary stuff that is not compatible with the jabber network
<lilyp>according to the one source of knowledge, jabber either refers to XMPP itself or to some particular implementations of it
<bjc>jabber is the old name. the xsf has been encouraging the use of xmpp over jabber for well over a decade now
<singpolyma>lilyp: sure it "refers to xmpp itself" but as a name for the network. XMPP is the name of the low level protocol
<singpolyma>bjc: some people on the XSF feel that way but it's definitely not an official stance
<bjc>jabber referred to the protocol; xeps used to be called jeps
<lilyp>I think it is very official.
<lilyp>Look at and you'll see "yeah, we're an XMPP service"
<singpolyma>lilyp: is not really relevant. That's a barely functional instance that may someday be compatible again
<lilyp>look at and you'll see "we're a standard, there's clients, there's servers, there's everything you need"
<bjc>it's as official as something like this can get
<bjc>i've never seen an official communication from the counsil refer to it as anything othr than xmpp
<lilyp>Why are we using the name of a barely functional instance as a label then?
<lilyp>no one calls email email because of "the network"
<bjc>tbf, “jabber” is a better name
<lilyp>they call it email, because it's mail but electronic
<bjc> -- Extensible Messaging and Presence Protocol (XMPP, originally named Jabber)
<singpolyma>lilyp: we're not using the name of that instance at the name. It's the reverse. The instance is named after the network
<singpolyma>There are dozens of jabber services named "jabber.something"
<lilyp>there are also dozens of xmpp servers not containing jabber in their name
<singpolyma>Sure. People are free to name their services anything
<Andronikos>I am using Guix as binary on a foreign distro. Can I still
<Andronikos> use Guix home with services like Redshift? Since if I
<Andronikos> start it with "guix home container" Redshift keeps
<Andronikos> restarting until Hurd disables it.
<bjc>if your first login is graphical, redshift will start. that issue occurs when you log in on a text terminal
<Aurora_v_kosmose>Considering how no one knows Jabber anyway, calling it XMPP is much the same.
<Aurora_v_kosmose>Confirming the same result on Fedora as Arch.
<Aurora_v_kosmose>There's something wrong with Debian specifically.
<jpoiret>Aurora_v_kosmose: stracing it should help
<jpoiret>i am nearly done adding C guile extensions to Guix! Time spent pie chart: 20% coding in C, 80% fighting autotools
<jpoiret>posix_spawn here we come
<Aurora_v_kosmose>jpoiret: stracing proot?
<jpoiret>well, yeah
<jpoiret>stracing the command line you're using should work
<Gooberpatrol66>trying to package something
<Gooberpatrol66>make: ./configure: No such file or directory
<Gooberpatrol66>but i look in the build directory and configure is there
<jpoiret>subdirectories maybe?
<Gooberpatrol66>you mean like, the process cd'd to a subdir
<jpoiret>make can recurse into subdirectories
<jpoiret>i'd have a look at the Makefile(.am)
<Gooberpatrol66>i ran make in guix environment, and it found the configure file
<vagrantc>but does that configure file call another configure (directly or indirectly) file in some subdirectory?
<sneek>vagrantc, you have 1 message!
<sneek>vagrantc, civodul says: apparently you're the oldest constributor!
<vagrantc>does upstream use git submodules for other projects
<vagrantc>oldest contributor ... WAT?
<vagrantc>oh wow. that makes my day.... i wonder what i committed to guix 52 years ago
<bjc>the time machine support, obviously
<vagrantc>maybe that was future me
<vagrantc>sneek: botsnack, premium grade
<Gooberpatrol66>vagrantc: i don't know
<nckx>Did you accidentally set SOURCE_DATE_EPOCH on your life.
<Gooberpatrol66>the line before the error is ./configure --prefix=/usr --libdir=/usr/lib
<jpoiret>oh no
<Gooberpatrol66>this is identical to a line directly in the makefile
<nckx>Did you wake up one day and disco was caal.
<vagrantc>my guess is i did some git commits on some aarch64 machine with wonky clock issues ... cuz i have a few of those
<nckx>It couldn't have happened to a more fitting individual.
<Aurora_v_kosmose>...wat. Why does it work now when earlier it didn't?
<vagrantc>thank you b3b33da07097af1c61d23f662902650dcdeb25af
<nckx>Aurora_v_kosmose: This still about proot on Debian?
<Aurora_v_kosmose>nckx: Yes.
<Aurora_v_kosmose>When I tried it 10 hours ago it didn't work and now it does. I did regenerate the tarball in the meantime and stuff got downloaded on the regeneration step... but I didn't guix-pull between pack generations.
<vagrantc>wow, i even had a bizarro timezone Thu Jan 1 00:00:36 1970 -0003
<Aurora_v_kosmose>A bit more than 10 hours ago. Anyway, you get the idea.
<Aurora_v_kosmose>So now we're back to the relatively-normal GUIX_EXECUTION_ENGINE variable being mandatory to set, but otherwise it works. Or at least, works as well as proot does (it does have a pretty serious performance impact on nyxt/webkit)
*Aurora_v_kosmose seems to attract heisenbugs
<vagrantc>they're the best kind except when they're not
<Air4x>Hi guys, have any of you managed to replace pulseaudio with pipewire?
<vagrantc>Air4x: please stick with gender-neutral language (e.g. not all guys here)
<Air4x>vagrantc: sorry, it will not happen again
<vagrantc>i don't have much experience with either pulseaudio or pipewire, unfortunately
<Aurora_v_kosmose>We're all Emacs users ( (just kidding, someone probably uses something else).
<jpoiret>Air4x: i think i have
<jpoiret>make sure to start pipewire, wireplumber and pipewire-pulse when your session starts
<Air4x>jpoiret: ok
<Air4x>but how can i avoid conflicts with pulseaudio?
<Air4x>shouldn't i disable it?
<jpoiret>the guix system pulseaudio service won't conflict with pipewire iiuc
<jpoiret>it doesn't start pulseaudio at all
<jpoiret>and pipewire-pulse is a drop-in replacement for pulseaudio
<Air4x>then what started pulseaudio on my system?
<Air4x>is it part of %desktop-services?
<jpoiret>pulseaudio is part of %desktop-services, but it won't launch pulseaudio
<jpoiret>pulseaudio is launched automatically if an application requests pulseaudio but it isn't launched yet, it's a "feature" of libpulseaudio
<jpoiret>so as long as you've already launched pipewire-pulse, there shouldn't be any issues
<Air4x>ok now it's clear
<Air4x>so i only need to define a service for pipewire, pipewire-pilse and wireplumber and i'm good, right?
<jpoiret>well, depends on what you mean by service
<jpoiret>these 3 shouldn't be launched system-wide
<jpoiret>so if you're talking about guix home services, that's good, otherwise just launch them manually through your WM's config file
<jpoiret>if you're using a big DE, you might want to use xdg-autostart instead
<jpoiret>don't try to define a guix system service for it, they won't run properly system-wide without modifications
<Air4x>I was thinking about using shepherd as a normal user
<Air4x>I already did it for Emacs