Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
pseudorandom name
May 6, 2007

spankmeister posted:

I recently found out systemd timers are a thing lol

Because cron, anacron and at weren't enough we needed a fourth place to look for scheduled tasks when diagnosing weird recurring issues.

there's a "the virgin cronie vs. the chad systemd.timer" meme here with OnCalendar=daily Persistent=true on the chad side

Adbot
ADBOT LOVES YOU

The_Franz
Aug 8, 2003

spankmeister posted:

I recently found out systemd timers are a thing lol

Because cron, anacron and at weren't enough we needed a fourth place to look for scheduled tasks when diagnosing weird recurring issues.

yeah, that whole "systemctl list-timers" thing is terribly hard to use

Rufus Ping
Dec 27, 2006





I'm a Friend of Rodney Nano
Used a systemd path unit for the first time the other week (triggers when a specific path changes, using inotify). Worked fine and saved me writing more code or installing some other tool 👍🏿

Arcteryx Anarchist
Sep 15, 2007

Fun Shoe
I’ve written a few systemd files; needs suiting

pseudorandom name
May 6, 2007

The_Franz posted:

yeah, that whole "systemctl list-timers" thing is terribly hard to use

also systemd-analyze calendar --iterations=N

pram
Jun 10, 2001

Rufus Ping posted:

Used a systemd path unit for the first time the other week (triggers when a specific path changes, using inotify). Worked fine and saved me writing more code or installing some other tool 👍🏿

sounds good op

Cybernetic Vermin
Apr 18, 2005

Notorious b.s.d. posted:

the article this links to is really good tho

it's a cool history of the systemd explosion, and also explains in detail some actual weaknesses of systemd, instead of just being neckbeard shrieking about bloat

mostly it well documents that, all technology opinions left aside, poettering is indeed an rear end in a top hat.

Tankakern
Jul 25, 2007

eh, he was when he started the thing. he's a lot better now.

Max Facetime
Apr 18, 2009

Notorious b.s.d. posted:

don't worry there is now systemd-cron, which parses crontabs and twiddles dbus bits to create systemd timer units

i am not kidding :(

what, you wish systemd wouldn’t try to be backwards compliant with legacy apps??





(sometimes I just don’t get at all the Unix philosophy of wanting simple things to do their job badly)






(like now)

Captain Foo
May 11, 2004

we vibin'
we slidin'
we breathin'
we dyin'

Notorious b.s.d. posted:

don't worry there is now systemd-cron, which parses crontabs and twiddles dbus bits to create systemd timer units

i am not kidding :(

lmao

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
"why is all this functionality in pid 1, why not split it out and have it talk some sort of socket protocol like unix apps do"

*creates separate daemon, uses private unix socket connection to talk to pid 1*

"wtf is all this dbus junk"

seriously the dbus here is just a serialization protocol. it was standardized before msgpack and if there was a json parser in pid1 you would be complaining about that too

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
unless you think that the way that things should talk to pid1 would be, like, inotify and the filesystem in which case hoo boy if youve ever used that even once you know it basically never works lmao

Soricidus
Oct 21, 2010
freedom-hating statist shill
they should just make syscalls, op, but systemd-kerneld isn’t quite ready yet

Notorious b.s.d.
Jan 25, 2003

by Reene

Soricidus posted:

they should just make syscalls, op, but systemd-kerneld isn’t quite ready yet

remember kdbus lol

Malcolm XML
Aug 8, 2009

I always knew it would end like this.
systemd owns and you can tell who's never had to do what it does in anger or has thousands of lines of bespoke shell scripts that are wrong in subtle ways

Malcolm XML
Aug 8, 2009

I always knew it would end like this.

Notorious b.s.d. posted:

remember kdbus lol

it's called bus1 now

Notorious b.s.d.
Jan 25, 2003

by Reene

Malcolm XML posted:

systemd owns and you can tell who's never had to do what it does in anger or has thousands of lines of bespoke shell scripts that are wrong in subtle ways

systemd is a lot better than what it replaced but man is it covered in warts

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
ah yes, that famous example of perfect design and true un-warty-ness, unix

Notorious b.s.d.
Jan 25, 2003

by Reene

Malcolm XML posted:

it's called bus1 now

i wouldn't hold my breath for bus1 to make it into the kernel either

Notorious b.s.d.
Jan 25, 2003

by Reene

Suspicious Dish posted:

ah yes, that famous example of perfect design and true un-warty-ness, unix

well the bar to clear here is smf

systemd is a lot better than a shitheap of shell scripts but it's still not as good as smf was

Tankakern
Jul 25, 2007

Malcolm XML posted:

systemd owns and you can tell who's never had to do what it does in anger or has thousands of lines of bespoke shell scripts that are wrong in subtle ways

Tankakern
Jul 25, 2007

Notorious b.s.d. posted:

well the bar to clear here is smf

systemd is a lot better than a shitheap of shell scripts but it's still not as good as smf was

bullshit

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
its even goofier than that.

after kdbus died out, kay sievers and harald hoyer went and did varlink, which replaces the custom serialization with json and removes almost all useful parts of dbus. then kay quit red hat and i think they now just make music gadgets full-time, so harald's the only one working on varlink now and it's kinda dead.

david herrman and tom gundersen did bus1 which broke a lot of dbus stuff but they plan on putting it back with dbus-broker kinda, i'm not sure the latest state of bus1

i think theres a third ipc project somewhere too, can't remember where it is.



basically all of this is an attempt at working around the insane lack of good ipc & messaging primitives in the kernel. kdbus was a really good attempt and would have worked if it wasnt for groups of uninformed completely misunderstanding the system and making large, repeated harassment campaigns

Notorious b.s.d.
Jan 25, 2003

by Reene
kdbus didn't make very much sense as a set of primitives, and it wasn't faster or notably better than userspace dbus

literally the only thing kdbus had to offer was avoiding the boot-time dependency loop for systemd. that was the only use case. it should not be surprising that it went unmerged

which is not to say no new ipc mechanism will ever be added to the linux kernel, just, i don't think it's gonna be kdbus or bus1

Soricidus
Oct 21, 2010
freedom-hating statist shill
why do we need all these different ipc mechanisms anyway. http works fine, just use that. it’ll get a lot easier when they merge khttpd so you can manage everything with systemd-chromiumd

Truga
May 4, 2014
Lipstick Apathy
systemd-npm install linux-kernel-6.6.6

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Notorious b.s.d. posted:

kdbus didn't make very much sense as a set of primitives, and it wasn't faster or notably better than userspace dbus

the goal was to eliminate a large number of race conditions, and it did that just fine. the goal wasn't purely speed, it was to build a comprehensive ipc system where you don't have the problem "pids can get reused so theres tons of TOCTOU bugs and security issues". not a slight against dbus, it's impossible to do in userspace correctly, and still is to the best of my knowledge

the interface it exported was very minimal and was basically a new set of ipc primitives based on device nodes. google said they could easily replace binder with it.

Arcteryx Anarchist
Sep 15, 2007

Fun Shoe

Truga posted:

systemd-npm install linux-kernel-6.6.6

don't give webdevs ideas, there's a lot of them and they have a lot of sinecures

Cybernetic Vermin
Apr 18, 2005

imho just fork mach and call it linux 5.7, ipc mechanism problem solved forever.

Poopernickel
Oct 28, 2005

electricity bad
Fun Shoe
too bad the hipster-cool init system is runit - hoo boy is that codebase terrible

it features:
- bespoke custom build system
- hard-coded install to oddball paths
- no real way to cross-compile it
- lots of runtime feature checks during compilation
- most of the code is K&R C, which will be uncompilable in the next release of the C standard
- plenty of type warnings from using int for everything
- uses obsolete utmp features
- cargo-cults a bunch of djb stuff, which is reason enough to know it's bad
- abandoned by the author like 10 years ago

Poopernickel fucked around with this message at 18:39 on May 5, 2020

Captain Foo
May 11, 2004

we vibin'
we slidin'
we breathin'
we dyin'

Truga posted:

systemd-npm install linux-kernel-6.6.6

close to the metal

FlapYoJacks
Feb 12, 2009
You want bad?

GCC10 is breaking all sorts of packages because of two new cool things:

-fno-common
libsanitizer

Buildroot is now choking pretty hard on building some host packages because Fedora32 comes with GCC 10 by default. :v:

FlapYoJacks
Feb 12, 2009
Also another pain in the rear end thing:

Firewalld requires pretty much every nftable option enabled in the kernel. Over 175 config options.

Tankakern
Jul 25, 2007

ratbert90 posted:

Also another pain in the rear end thing:

Firewalld requires pretty much every nftable option enabled in the kernel. Over 175 config options.

who cares? seriously, why does it matter which modules you enable in the kernel, they're only loaded if needed

or are you trying to wrangle in firewalld in some embedded thing

(nftables will be deprecated sooner or later anyway)

Sapozhnik
Jan 2, 2005

Nap Ghost

Suspicious Dish posted:

the goal was to eliminate a large number of race conditions, and it did that just fine. the goal wasn't purely speed, it was to build a comprehensive ipc system where you don't have the problem "pids can get reused so theres tons of TOCTOU bugs and security issues". not a slight against dbus, it's impossible to do in userspace correctly, and still is to the best of my knowledge

the interface it exported was very minimal and was basically a new set of ipc primitives based on device nodes. google said they could easily replace binder with it.

i mean there's pidfds now, and memfds were originally part of kdbus

Tankakern posted:

who cares? seriously, why does it matter which modules you enable in the kernel, they're only loaded if needed

or are you trying to wrangle in firewalld in some embedded thing

(nftables will be deprecated sooner or later anyway)

bpf in every orifice

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
oh, pidfds were accepted? hell yea, that's a nice way to beat the race then

Sapozhnik
Jan 2, 2005

Nap Ghost
Next what we need is some way to create a new process ex nihilo and load memory mappings, threads, seccomp policy, and fds into it.

Retrofit some sort of actual capability-based security on top of POSIX.

FlapYoJacks
Feb 12, 2009

Tankakern posted:

who cares? seriously, why does it matter which modules you enable in the kernel, they're only loaded if needed

or are you trying to wrangle in firewalld in some embedded thing

(nftables will be deprecated sooner or later anyway)

Embedded. :v:

Sapozhnik
Jan 2, 2005

Nap Ghost

lmaoing forever at the thought of using Python-based anything in an embedded application

Adbot
ADBOT LOVES YOU

FlapYoJacks
Feb 12, 2009

Sapozhnik posted:

lmaoing forever at the thought of using Python-based anything in an embedded application

? Python works fine in the embedded Linux world. Why wouldn't Python work?

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply