[NTLUG:Discuss] Making a User Specific Runit: 9/3/2025 7pm Eastern Daylight time
Michael Wilk
michael.l.wilk01 at gmail.com
Tue Sep 2 15:26:19 PDT 2025
Hi Steve,
I am planning on attending the Developers meeting, after the Business
Networking Social at the CUTX Event Center. I will try to check in to say
hi. It will be a very busy evening. 😄 Thanks for keeping me informed.
Cheers,
Michael
On Mon, Sep 1, 2025 at 4:53 PM Steve Litt <slitt at troubleshooters.com> wrote:
> Hi all,
>
> Where: GoLUG Online: https://meet.jit.si/golug
> When: Wednesday, 9/3/2025 7pm sharp Eastern Daylight time
> Arrive 15 minutes early for Microphone check & discussion
> Who: Steve Litt, Troubleshooter, Developer, Tech Writer
> What: Making a User Specific Runit
>
> Runit is two different things:
>
> 1) An init system
>
> 2) A daemon supervisor
>
> This presentation focuses exclusively on #2, and is init system
> agnostic. You can deploy a user specific runit on any Unix-like
> computer, whether the system inits with sysvinit, systemd, runit, s3,
> OpenRC, the BSD init system, Epoch, Suckless Init with an rc script, or
> GNU Shepherd.
>
> The daemon supervisor part of runit supervises a group of daemons (long
> running background processes). A User Specific Runit is the supervisor
> part of runit, if and only if it is run by a normal user, runs programs
> as that normal user, and is controlled by that normal user. It's
> remarkably easy to implement.
>
> There are many ways of running User Specific Daemons, including from
> the init system itself and from cron jobs. Advantages a User
> Specific Runit has over doing it from the init system or cron include:
>
> 1) It can run after X has been instantiated by that user, so no
> ~/.Xauthority games are necessary to produce graphical daemons or
> daemons that fork off graphical windows.
>
> 2) It happens *after* the user logged in, so it has the right
> environment for the specific user.
>
> 3) It runs your home-grown C, Python, etc programs that would run on a
> terminal, in the background, without requiring your home-grown
> program to "background itself".
>
> 4) If it's forked from ~/.xinitrc then it has absolutely no interaction
> with your init system. It does one thing and does it well.
>
> 5) It's a nicer, more controllable way to control Pulseaudio. This will
> be demonstrated during the presentation.
>
> 6) It's perfect for a one-user power workstation.
>
> 7) Multiple users can each have their own personal Runit.
>
> 8) If a daemon crashes, your personal Runit restarts the daemon.
>
> 9) It can be built so that daemons of your choice have their own log
> files.
>
> The presentation will draw heavily from a website that's now very
> incomplete but will be very useful by Wednesday morning:
>
> https://www.troubleshooters.com/linux/init/normal_user_runit.htm
>
> The presentation will build a personal runit from scratch.
>
> If you want tighter and finer control over your personal computer,
> you'll want to attend this presentation.
>
> SteveT
>
> Steve Litt
> GoLUG Publicity Coordinator
> _______________________________________________
> http://www.ntlug.org/mailman/listinfo/discuss
>
More information about the Discuss
mailing list