| > For simple apps that makes sense. But then you have apps that require kernel drivers. A.k.a drivers. The app is just a control panel. MacOS classic used "extensions" for this, which were basically just app folders you put in a specially designated folder. So the modern version of that could just be dropping a folder into a special location there kernel knows to search for drivers, and include a control panel app. > Or the app itself is a shared library. A.k.a not an app at all. Shared libraries only really make sense as part of a stable base system that developers can target and depend on, otherwise you get DLL hell and require something like a package manager and all its associated limitations for basically no benefit at all. If your application uses a library and you don't want to compile it statically, just include a copy in the app folder, secure in the knowledge that it will never cause a conflict or break your application due to an update or some other application replacing it. > Or multiple users on the same system use the app, etc. Desktops, a.k.a "Personal Computers", don't really have much of a multi-user use case. They did briefly in the time after the internet became a big deal but before smart phones were invented, but that time is over. Know what we did on Windows 98? We just shared the system, it wasn't a big deal. Even so, it's not like you need two copies of the application to have two different configurations. None of this is anywhere near as complicated as the people who promote it like to pretend it is. |
Do you mean the kernel is going to load random files from a user writable location? That sounds like a security nightmare TBH. Also, then you can't safely lazy-load kernel drivers because you never know what the user has done to the folder. Or if the OS has to lock access to the folder then the user has no feedback as to why they can't "uninstall" stuff by simply deleting folders, etc, etc. There are dozens of problems. Turns out, people have already thought over those problems and proposed solutions :)
>otherwise you get DLL hell and require something like a package manager and all its associated limitations for basically no benefit at all.
You claiming there is no benefit to being able to install/remove/update third party shared libraries doesn't solve anything.
>just include a copy in the app folder, secure in the knowledge that it will never cause a conflict or break your application due to an update or some other application replacing it.
That assumes you have the rights to distribute the library and that the library is small enough.
>Desktops, a.k.a "Personal Computers", don't really have much of a multi-user use case.
Maybe not for you. For millions of other users, its a very important use case.
>None of this is anywhere near as complicated as the people who promote it like to pretend it is.
Well its certainly not complicated if you re-define the problems as non-problems.