[oi-dev] Desktop Illumos Still Matters

Andrew Gabriel illumos at cucumber.demon.co.uk
Wed Sep 5 23:32:02 UTC 2012

Joerg Schilling wrote:
> Andrew Gabriel <illumos at cucumber.demon.co.uk> wrote:
>> Nick Zivkovic wrote:
>>> Agreed. Also, I see that /opt and /usr/$consolidation overlap in terms
>>> of their purpose.
>>> For example we have /usr/X11. According to `man filesystem` /opt is
>>> meant to hold add-on/third-party software.
>> /opt was meant for unbundled software. Ideally, it should be empty 
>> immediately following a full install of a distro, as everything is by 
>> definition bundled. I don't think Solaris ever quite got that right, but 
>> it was almost there. Everything you install after that (which isn't part 
>> of the distro) should be in /opt (and /etc/opt and /var/opt), but a lot 
>> of 3rd-party software developers got that wrong too.
> There was a nice talk from Steve Bourne at the Sun User Group meeting in 
> December 1990. He explained that first /usr/bin was hijacked by the system and 
> people started with /usr/local. Then external sources hijacked /usr/local and 
> as a result a FHS summit with most UNIX vendors decided to usr /opt.

I went to an AT&T presentation on the upcoming SVR4 for UNIX source 
porters, which was probably 1989 or early 1990, where they went into 
this. One of the key reasons for having it outside /usr was that an 
upgrade required blowing away all of /usr and reinstalling (there was no 
real upgrade capability in their original SRV4.0 other than a 
reinstall), and they didn't expect you would want to lose all your 
3rd-party/unbundled products. It still wasn't very well thought out 
compared with where we are today, but it was vastly better than SVR3.2 
which is what commercial organisations were running at the time. This 
was also why SVR4 moved home directories out of /usr, leaving us with 
the irony of a /usr which no longer contained the users.

> We are now nearly 25 years after that /opt decision and still not everybody got 
> it.


More information about the oi-dev mailing list