The linux security model is outdated yes, nothing to do with package managers. I recommend using SElinux for finer management.
Software is how it is because people don’t want software that follows the unix philosophy. They want bloated pieces of crap that do everything, they don’t want to compose multiple tools or not have stuff try to guess what you mean to do. They want autoconfiguration and highly customised PCs.
You can set up your own system to be a lovely island of sanity and never install a browser or officer suite (I have walked this path and it’s very relaxing) but 99.999999999% of people are vehmently against this and also completely disinterested in their system. So here we are.
That is not the unix philosophy lol that is a detail of the kernal
In 1978, Doug McIlroy documented a set of principles encapsulating the “characteristic style” that had emerged among Unix system users and developers
Make each program do one thing well. To do a new job, build afresh rather than complicate old programs by adding new “features”.
Expect the output of every program to become the input to another, as yet unknown, program. Don’t clutter output with extraneous information. Avoid stringently columnar or binary input formats. Don’t insist on interactive input.
Design and build software, even operating systems, to be tried early, ideally within weeks. Don’t hesitate to throw away the clumsy parts and rebuild them.
Use tools in preference to unskilled help to lighten a programming task, even if you have to detour to build the tools and expect to throw some of them out after you’ve finished using them.
Expect the output of every program to become the input to another, as yet unknown, program. Don’t clutter output with extraneous information. Avoid stringently columnar or binary input formats. Don’t insist on interactive input.
Not every file format has the complexity of JSON. And most of the files the kernel serves are either trivial enough to be parsed with a simple FSM or not meant to be parsed at all. No dev worth their weight in sawdust is gonna pull an external library just to help parse the space-separated numbers of /proc/uptime.
The linux security model is outdated yes, nothing to do with package managers. I recommend using SElinux for finer management.
Software is how it is because people don’t want software that follows the unix philosophy. They want bloated pieces of crap that do everything, they don’t want to compose multiple tools or not have stuff try to guess what you mean to do. They want autoconfiguration and highly customised PCs.
You can set up your own system to be a lovely island of sanity and never install a browser or officer suite (I have walked this path and it’s very relaxing) but 99.999999999% of people are vehmently against this and also completely disinterested in their system. So here we are.
Everything is a file means that every program needs a parser. Means that every program will at least depend on some parsing library.
That is not the unix philosophy lol that is a detail of the kernal
In 1978, Doug McIlroy documented a set of principles encapsulating the “characteristic style” that had emerged among Unix system users and developers
Make each program do one thing well. To do a new job, build afresh rather than complicate old programs by adding new “features”.
Expect the output of every program to become the input to another, as yet unknown, program. Don’t clutter output with extraneous information. Avoid stringently columnar or binary input formats. Don’t insist on interactive input.
Design and build software, even operating systems, to be tried early, ideally within weeks. Don’t hesitate to throw away the clumsy parts and rebuild them.
Use tools in preference to unskilled help to lighten a programming task, even if you have to detour to build the tools and expect to throw some of them out after you’ve finished using them.
https://en.wikipedia.org/wiki/Unix_philosophy
Parsers
Okay? not at all relevant to anything I’ve said?
Not every file format has the complexity of JSON. And most of the files the kernel serves are either trivial enough to be parsed with a simple FSM or not meant to be parsed at all. No dev worth their weight in sawdust is gonna pull an external library just to help parse the space-separated numbers of /proc/uptime.