<farkuhar>
In a way, consolidating all the mounting logic into a single script /etc/rc is similar to what we were proposing in #crux-devel for the consolidation of all user-editable configurations (network, soundcard, http server, ...).
<farkuhar>
When the mounting logic was distributed among multiple files, it was more cumbersome for the user to see at a glance the exact sequence in which mountpoints are activated. Moving the commands from /sbin/start_udev to /etc/rc made the overall process more transparent.
<SiFuh_>
farkuhar: I already found a way to fix the rc scripts in CRUX swiftly and perfectly
<farkuhar>
SiFuh_ challenged my claim that a CRUX newbie might be overwhelmed by seeing all the user-editable settings in one file rather than 3. I meant that with each service's configuration isolated in its own file, the user making changes is not distracted by nearby lines that affect other services (whose interfaces exhibit subtle differences in CLI syntax).
<farkuhar>
In the BSD world, /etc/rc.conf lets the user define unique string variables like moused_flags or sndiod_flags, which contain the whitespace-separated arguments passed to the relevant daemon. In CRUX each service has a hard-coded basic set of flags in its rc.d script, often with the uncreatively-named variable $OPTS as the only way for the user to insert custom arguments.
<farkuhar>
SiFuh_: Would you like to dpaste your patch?
<farkuhar>
Consider the non-core ports that install their startup scripts in /etc/rc.d/ . If we wanted the user-editable flags to appear in /etc/rc.conf, that would require a post-install script (rather than stealing ownership of /etc/rc.conf from another port). But if the user later decides to get rid of that non-core port, then /etc/rc.conf would retain "junk" lines related to that port.
<SiFuh_>
Doesn't effect me ;-)
<farkuhar>
prt-get currently has logic to run pre-install and post-install scripts, but no such logic for a pre-remove or post-remove script. With the latter functionality, you could sed -i '/^sndiod_flags/d' /etc/rc.conf using a post-remove script, so that "junk" lines are obliterated if a user decides to uninstall sndiod.
<SiFuh_>
affect*
<farkuhar>
But a user would have to perform the uninstall using `prt-get remove` rather than the lower-level tool `pkgrm`, in order for the post-remove script to be processed. pkgrm has no notion of the ports tree, and so cannot detect the presence of a post-remove script.
<farkuhar>
So the current design of putting the user-editable fields directly into the /etc/rc.d/ startup script does help to keep the filesystem tidy. When an unwanted port gets removed, no traces of its configuration remain that would "pollute" a global /etc/rc.conf.
<farkuhar>
"polluting" a global /etc/rc.conf is arguably not so bad, in that it saves a user from having to re-create their old config from backups, if they switch among different daemons (e.g., pulseaudio -> pipewire -> sndiod -> pure alsa) with the same frequence that zorz hops between distros.
<farkuhar>
s/frequence/frequency/
<farkuhar>
A user who tries out new daemons on a regular basis, configures each one as desired, and then uninstalls them after getting bored, won't require a complicated backup strategy if the global /etc/rc.conf contains all their customizations. There's only one master file to back up, not N files for the N different services that have been configured.
<farkuhar>
In #crux-devel I pointed out the absurdity of shielding /etc/rc.d/wlan from upgrades, when all the user-editable fields are in /etc/rc.d/wpa_supplicant these days. But at least we have a configuration file for pkgadd. Meanwhile, pkgrm has no corresponding file pkgrm.conf that would allow a user to protect port-specific configs from deletion. If you pkgrm an unwanted daemon without backing up its config file, you lose data.
zorz_ has joined #crux-social
zorz_ has quit [Quit: leaving]
zorz_ has joined #crux-social
zorz_ has quit [Quit: leaving]
zorz_ has joined #crux-social
ppetrov^ has joined #crux-social
<farkuhar>
zorz_: ppetrov^ is here.
<zorz_>
man i changed the order
<zorz_>
of channels and i post to #crux
<zorz_>
hahahahaha
<SiFuh_>
zorz_: None of us are here
ppetrov^ has quit [Remote host closed the connection]
<zorz_>
farkuhar: ready to place runit in contrib ?
<zorz_>
okay guys..... i need ukky and sifuh to review this script
<zorz_>
it works... needs some tweeking
<SiFuh_>
zorz_: I was thinking about taking the entire CRUX RC system and throwing it away and then just take the OpenBSD one
<zorz_>
wait... i did all in one file.... maybe a post-script is better this is what i want to ask SiFuh_
<zorz_>
SiFuh_: have a look
<farkuhar>
zorz_: We're trying to be faithful to Per's vision here. No need for newfangled stuff like runit, if the BSD-style init is working fine.
<zorz_>
question, one file or a post-script to create the ttys and linking ?
<SiFuh_>
zorz_: Told you I wasn't here
<zorz_>
yeah bitch!
<zorz_>
:P
<zorz_>
ukky... he is the expert.
<zorz_>
we wait for him.
<zorz_>
frinst still fights with wayland? heh
<farkuhar>
zorz_: you can combine your three sed commands on $SRC/rc/rc because those are the only lines that match the pattern "\. /etc/.*"
<zorz_>
yes
<zorz_>
thank you
<farkuhar>
Try this: sed -i 's;^\(\. /etc\);\1/runit;' $SRC/rc/rc
<zorz_>
# last mv /sbin/init /sbin/init.bak
<zorz_>
# ln -s /sbin/runit-init /sbin/init
<zorz_>
and is installed
<zorz_>
wait wash my hands, enjoying paprika chips
<farkuhar>
I find it amusing that ppetrov^ timed his exit precisely when SiFuh_ said none of us were here.
<zorz_>
haha
<SiFuh_>
Oh the little things in life
<zorz_>
fuckin hell yes
<farkuhar>
zorz_: It might be more robust to fetch a specific commit or tag, if your source array refers to a tarball from the git.crux.nu/tools/rc repo. The master branch might undergo even more dramatic changes after old Timmy "takes another look", rendering inaccurate all your line numbers like sed '13,32d'
<zorz_>
yes this needs to be followed
<zorz_>
is when i dont use sysvinit for services.
<zorz_>
farkuhar: the tag thing i live it on you, i am not going to read about git... if its to read something, i prefer rsync.
<zorz_>
leave*
<farkuhar>
What do you mean "frinnst still fights with Wayland"? He has the display configured correctly now, it was just a matter of recalling a command that he hadn't used in almost a year.
<SiFuh_>
farkuhar: zorz_ is fighting with English
<farkuhar>
If you don't use it, you lose it, as the saying goes. Kudos to him for being able to keep the TV in the same location for a full year. I'm liable to rearrange furniture every couple months (thereby refreshing my memory on the relevant xrandr commands, if I actually had multiple monitors to deal with).
<zorz_>
farkuhar: i read this <frinnst> ah right, wlr-randr is a thing that I used before
<zorz_>
farkuhar: if in /etc/runit/rc after each if statement you give || exit 0 without the script finishing it goes to /etc/runit/2 and there you change to sulogin
<zorz_>
this is next step
<zorz_>
farkuhar: what do you mean by saying faithful to Per's vision here... the asystole use of rust and wayland? or libinput
<farkuhar>
SiFuh_: You're right, zorz_ is fighting with English. Or maybe the reference to "Per's vision" is lost on him.
<zorz_>
farkuhar: i also use nftables without the use of pause. this small binary of void cunts as per SiFuh_
<zorz_>
farkuhar: I use correct the as per :P
<SiFuh_>
zorz_: My English was #voidlinux is a channel full of wankers.
<zorz_>
this is not better :P
<SiFuh_>
zorz_: You should know by now, I say it as it is. No holding back.
<zorz_>
?
<zorz_>
know what?
<SiFuh_>
zorz_: Of course. I learned the word 'what' at a very early age.
<SiFuh_>
I even use it occassionally in sentences too
<zorz_>
which word man?
<SiFuh_>
The word 'what'. You asked if we knew it.
<zorz_>
zorz_: You should know by now, I say it as it is. No holding back.
<zorz_>
know what by now?
<SiFuh_>
I say it as it is. No holding back.
<zorz_>
aaaaaaaaaaaaa
<zorz_>
okay :P
<zorz_>
yo farkuhar where are the stenur ports?
<SiFuh_>
zorz_: My favorite incident which I have mentioned before was when the Aunt was telling me that my wife's (Well I wasn't married yet) mother hates men who drink alcohol. I then pulled a beer out of my pocket it. Cracked it open, took a sip and said "Cool"
<ukky>
zorz_: my notes about your runit port: 1) /sbin/udev has to be started as runit service, i.e. running under runit supervision, without '--daemon' option; There is no point using runit if udev is started as daemon.
<zorz_>
okay
<ukky>
zorz_: 2) Port should not create /run directory, nor anything in /run directory tree
<zorz_>
okay
<ukky>
zorz_: 3) /etc/runit/rc.local should be started from /etc/runit/1, at the very end of the script; /etc/runit/2 has different purpose
<zorz_>
noted
<zorz_>
you see expert.
<zorz_>
so ukky from crux /etc/runit/rc we remove this printinfo "\nStarting udev.."
<ukky>
zorz_: I agree, it is better to create 1/2/3 like you create run/finish files.
<zorz_>
yes yes... this is what i will do
<zorz_>
ukky: :)
<ukky>
farkuhar: okay, I still have older copy of core/eudev/start_udev on my system
<farkuhar>
ukky: stenur probably reverted to the older start_udev too, once he saw the /etc/rc "improvements" and decided to keep using the CRUX 3.7 version.
<farkuhar>
But spelling errors in comment lines don't bother stenur. He sometimes has "fights with English" too (but not quite as bad as zorz).
<zorz_>
farkuhar: sed -i 's|\. /etc/\(rc\.\(conf\|functions\|modules\)\)|. /etc/runit/\1|' "$SRC/rc/rc"
<zorz_>
this is the one :P
<farkuhar>
Heh, I misread "where are the stenur ports" as "where are the stenur posts". You're right, the portdb seems to be having trouble syncing his repo lately. https://sdaoden.eu/crux/
<farkuhar>
The pam_xdg port has an interesting history. It was a more featureful alternative to dumb_runtime_dir, so maybe beerman introduced dumb_runtime_dir into core (rather than adopting pam_xdg) to antagonize stenur even further.
<farkuhar>
CRUX-MUSL users won't be able to use either option to create /run/user/$UID automatically upon login, unless they go ahead and install linux-pam themselves. Preemptively creating (with /etc/rc) the subdirectory /run/users (and chown'ing it root:users with permissions 1775) can be combined with a mkdir command in ~/.xsession, though.
<farkuhar>
Or you could go ahead and ignore the freedesktop basedir spec entirely, but there's no guarantee that all software will continue to work in that configuration.
<zorz_>
farkuhar: i downloaded before an hour his git
<zorz_>
mostly for apulse till i compile firefox
<zorz_>
farkuhar: you dont read well and then is my english the problem... check your eyes man :PPp
<zorz_>
fuck i forgot the udev
<SiFuh_>
zorz_: I find it funny that farkuhar speed reads and gets lots wrong. Yet he spams the channel with full fucking novels expecting us to read his stuff whilst he only skims through ours.
<zorz_>
hahahahahha correct!
<farkuhar>
SiFuh_: "full fucking novels" have a lot more redundancy. Even people who speed read them will get the main ideas.
<SiFuh_>
Nope ;-)
zorz_ has quit [Quit: Lost terminal]
<farkuhar>
It would have been more redundant of zorz to ask instead: "yo farkuhar why does the portdb now show nothing in stenur's repo?" Then a speed reader would have multiple clues, arguing against the possibility of a typo ("ports" when "posts" was intended).
<farkuhar>
I was inclined toward reading it as "posts" because I had just downloaded stenur's latest post to the mailing list, and cited it above as evidence that he is not "done with CRUX" despite what zorz claimed yesterday.
<farkuhar>
But zorz has good advice "check your eyes man". My current spectacles prescription is over five years old, and there's a noticeable amount of eyestrain after long hours of close-up work.
<farkuhar>
Ironically, it's a scratched-up pair of Zenni lenses (ordered online) with which I experience less eyestrain, not the lenses that I got from the local optometrist (nominally an identical prescription, and not as badly scratched-up). Either way, a new prescription is probably warranted after all these years.