4 ms·
I think it's pushback against what a lot of people see as systemd overreach/arrogance. "Hey, can you implement and maintain new platform-specific code to work
by danudey 10y ago
I think it's pushback against what a lot of people see as systemd overreach/arrogance.
"Hey, can you implement and maintain new platform-specific code to work around this problem we're going to introduce by breaking behaviour of programs using a 21-year-old API?"
It feels especially egregious because, as commenters pointed out, implementing the PAM API is a better (and undoubtedly more portable) way to do this that the developers of systemd didn't seem to consider. Instead, they jumped straight to "implement a custom fix just for us so our breaking change doesn't break your app too".
- pfg 10y ago> It feels especially egregious because, as commenters pointed out, implementing the PAM API is a better (and undoubtedly more portable) way to do this that the developers of systemd didn't seem to consider. I wouldn't consider that bit to be particularly egregious. The thought process of a systemd developer confronted with a regression caused by systemd changing some well-known behaviour would naturally lead to a solution where program X tells systemd that it needs to be handled differently. It's basically a version of the anecdote that experienced developers aren't better because they know the answer to every question, but rather that they know which question to ask. Apparently the discussion has lead to a better solution (not that I would be a good judge of that), so this seems like a bit of a storm in a teacup.
- detaro 10y agos/"we're going to introduce"/"we introduced" They already released systemd 230 with this behavior and the bug reports from users of unstable/rawhide sparked the "public" discussion. (The bug report in the link says this right, but it still comes a week after the release instead of before)
- mwfunk 10y agoIf it's a reaction against perceived overreach/arrogance, then those people are just contributing noise to the whole process. People complain about software development in the corporate world being overinfluenced by interpersonal politics rather than pure engineering, but stuff like this is 100x worse than almost anything you'll find in the most toxic corporate environment. Seriously, every single person who feels compelled to offer their opinion based on what is an emotional response to Lennart's (or anyone's) "overreach/arrogance" is contributing little more than noise to the whole process. It's far too easy for someone who doesn't interact face-to-face with someone else to fall in a trap of assuming the worst about another person when there's a technical disagreement; this is a form of cognitive bias that pollutes development in the corporate world all the time. I'm as guilty of it as anyone, and I've learned to be wary of the temptation to project bad qualities on other people who I disagree with but don't interact with directly. In the open source world it's so much worse though- not only do almost all developers interact indirectly (i.e. not face-to-face), but there are potentially thousands of people who are basically just casual observers who want to jump in to give their 2 cents. That's great! But it's only great as long as those 2 cents aren't just people bikeshedding, or actively trying to make things personal rather than technical. Unfortunately, more often than not it is bikeshedding, and literally the only thing they have to bikeshed about is to try to make it personal. :(
- kinkdr 10y agoIMHO this is the root cause: Systemd developers trying to use corporate environment persuading techniques in the open source community. Instead they should take a step back and rethink their proposed solution every time they get strong feedback or face some resistance from the open source community.
- 4ad 10y agoPAM is not portable.
- danudey 10y agoPAM is portable in the sense that it usually exists on Linux systems whether or not they use systemd, and thus is more portable across Linux distributions than systems-specific code is.