3 ms·
I'm kinda confused. The author berates Debian for patching many upstream software packages to conform to "the Debian way", and then says: > The kernel and bas
by perlgeek 7y ago
I'm kinda confused.
The author berates Debian for patching many upstream software packages to conform to "the Debian way", and then says:
> The kernel and base system is completely separated from the third party applications and base system configuration goes into /etc while all third party configuration goes into /usr/local/etc.
Doesn't that mean that FreeBSD has to patch all third-party software to look for its configuration in /usr/local/etc, creating a "FreeBSD way" that is just as much at risk as breaking upstream software, making its documentation not apply etc. as the Debian software?
Or is there a real, technical difference that makes one kind of modification less intrusive than the other?
- Carpetsmoker 7y agoMost software can be compiled with --prefix=/usr/local, and then it will store stuff in /usr/local/share, /usr/local/etc, and so forth. In fact, /usr/local is actually the default for a lot of programs; you manually have to specifically --prefix=/usr if you want to use that. I used to maintain a bunch of FreeBSD ports, and whenever this wasn't supported I'd send a patch upstream, which was pretty much always accepted. In a few cases: yeah, you'll have to patch the paths, which is not ideal, but it's a lot less patching than what Debian does, which often has more changes and backports security fixes etc.
- icedchai 7y agoWhen you build a package from source with ./configure, it generally defaults to /usr/local/etc. Oddly, the Linux way of putting all third party configs in /etc is actually what's weird.
- throwaway2048 7y agoConsidering most unix software is written on linux for linux these days, and has been for many years, its extremely unlikely what you say is true.
- icedchai 7y agoTake a look here: https://www.gnu.org/prep/standards/html_node/Directory-Variables.html https://www.gnu.org/prep/standards/html_node/Directory-Varia... "The default value of prefix should be /usr/local" On traditional Unix systems, /usr was reserved for the operating system. /usr/local is 3rd party software. This is how Solaris behaves. This is how the BSD's behave. The Linux approach is the exception, not the rule.
- throwaway2048 7y agothe fact that 99(.99?)% of modern unix systems are linux systems makes it the rule, not the exception.
- icedchai 7y agoWhat you say is true. I can see it both ways. There's also the issue that Linux is "only" the kernel, so all software is third party software. There is no differentiation between "core OS" and "third party" like you have on other platforms.