[HN Gopher] The Berkeley Software Distribution
       ___________________________________________________________________
        
       The Berkeley Software Distribution
        
       Author : rbanffy
       Score  : 116 points
       Date   : 2024-03-07 15:46 UTC (7 hours ago)
        
 (HTM) web link (www.abortretry.fail)
 (TXT) w3m dump (www.abortretry.fail)
        
       | hcfman wrote:
       | Beautiful bit of history. I remember quite a lot of it being old.
       | 
       | Nice work by the author. Without people taking the time to write
       | things like this up history gets lost.
       | 
       | Years ago I build one of the first local search engines for the
       | Netherlands called Search.NL. I am indebted to the writer of the
       | only page that refers to this history any more here:
       | 
       | https://www.eindhovenfotos.nl/1/ilse.nl.html#news1-y8
        
       | tingletech wrote:
       | > The first copy we know to make it out of Berkeley was to Tom
       | Ferrin at UCSF on the 9th of March in 1978. The license was
       | signed on the 13th, the media was an 800 bpi tape, and on the
       | tape was the "Unix Pascal system" and the "Ex text editor."
       | 
       | UCSF and UCB (as well as all the UC campuses and enterprises) are
       | technically the same legal entity, incorporated by article 9
       | section 9 of the California constitution. Strange that they
       | signed a license, when I worked for the regents we called them
       | MOUs if it was a "contract" with another part of ourselves.
       | 
       | When I started working for UCSD and found out we were licensing
       | BSDi for some boxes I was sort of confused, like why don't we get
       | that for free?
        
         | alberth wrote:
         | > MOUs
         | 
         | MOU = Memo of Understanding?
         | 
         | (Which are typically non-binding but formalized acknowledgement
         | of intent)
        
           | tingletech wrote:
           | yes, we were told we could not contract with ourselves, so we
           | had to do memorandums of understanding when we had revenue or
           | other agreements between units.
           | 
           | We also had a policy to follow state law (which does not
           | apply to UC unless UC is specifically mentioned in the law).
        
             | actionfromafar wrote:
             | Is UC federal land or something?!
        
               | fredoralive wrote:
               | As noted above, the University of California is given
               | special status by a section of California constitution,
               | so it has special status through that. It's presumably
               | clauses like that fact it's governed by the Regents
               | "...subject only to such legislative control as may be
               | necessary to insure the security of its funds and
               | compliance with the terms of the endowments of the
               | university..." that mean it isn't normally affected by
               | new laws.
               | 
               | (https://leginfo.legislature.ca.gov/faces/codes_displaySe
               | ctio...)
        
         | dekhn wrote:
         | Tom was my manager for a while when I was a programmer at UCSF
         | (~20 years after this event). He ran the Computer Graphics Lab
         | which had a bunch of SGIs and DEC Alpha servers to do molecular
         | modelling and I was 'the first linux guy in the group' (they
         | asked me why I used linux when bsd existed). I remember him
         | saying that whenever he licensed a commercial UNIX he insisted
         | the contract include a section giving him access to the source
         | code for the kernel ("because you never know when you will have
         | to recompile the kernel or debug a kernel-space problem").
         | 
         | He's also known for presenting at USENIX on how to enable a
         | hardware-disabled (but physically present) instruction on a
         | cheaper version of the PDP/11. You'd cut a trace in the
         | microcode and add a jumper wire, and presto! you had a fast
         | floating point instruction that was previously disabled.
        
       | retrac wrote:
       | There's an alternate universe, almost identical to our own, where
       | BSD 4.4 was released slightly earlier, its legal status was not
       | ambiguous, it got ported to the 386 in '90, Linus never bothered
       | to write Linux, and every machine from smartphone to server runs
       | some version of BSD.
        
         | jeff_vader wrote:
         | And we're all happy CVS users.
        
           | jmcqk6 wrote:
           | I'm not an expert, but I'm pretty sure there is no universe
           | where that is true.
        
             | drewg123 wrote:
             | We'd all be happy perforce users :)
             | 
             | (For a long time, before git and subversion, even though
             | the official freebsd repo was in CVS, a lot of development
             | happened in perforce)
        
               | bch wrote:
               | > a lot of development happened in perforce
               | 
               | Interesting - that I didn't know. Based on my personal p4
               | experience, I'm sorry anybody else had to use it.
               | 
               | That said - nobody has mentioned that git (and hg) was
               | preceded and directly inspired by Larry McVoys
               | BitKeeper[0]. Indeed, I've heard rumor that both "git"
               | and "mercurial" were named after people's perceptions of
               | others personalities during the Linux/BitKeeper
               | breakup/debacle.
               | 
               | [0] https://en.wikipedia.org/wiki/BitKeeper
        
               | drewg123 wrote:
               | It was a lot better than the alternatives at the time,
               | which were CVS and SCCS.. :)
        
               | bhasi wrote:
               | Still is, in some hardware companies.
        
           | yjftsjthsd-h wrote:
           | My understanding is that git and mercurial were created
           | independently around the same time, so in a world where
           | Torvalds didn't create git we'd probably all use hg.
           | Although, it isn't super hard to imagine him still working in
           | system software and eventually creating git under almost the
           | same circumstances, just that it would be used on a BSD
           | rather than Linux.
        
             | walteweiss wrote:
             | I studied CS in the university and there was that guy who
             | was a computer geek (out of very little among my fellow
             | students), but actually was just your average gamer with
             | close to zero knowledge of anything computer beyond double-
             | clicking the shortcut to CS / Half-Life / WarCraft / Dota /
             | whatever else was popular back then.
             | 
             | I met him 15 years later. We had some casual chat about
             | this and that. And at some point he said--
             | 
             | Well, I have to give you a bit more of the context. He was
             | a junior front-end (React, ofc) developer at that point.
             | Yes, 15 years later! He just arrived into the profession
             | due to his wild incompetence. Although he sold himself as a
             | senior to the company! Still, he was very incompetent, and
             | I had those wild eyes of wondering how on Earth some
             | company would even hire such a guy, not to say giving him a
             | senior role!
             | 
             | He was talking about this front-end thing. That there's
             | that other OS, Ubuntu, and he thinks he'll try it instead
             | of Windows. As _drumroll_ for some reason (for some
             | reason!) this git thing works better on Ubuntu than it
             | works on Windows. My first try of Linux was like 15 to 20
             | years before the talk, so I was like spilling my coffee on
             | him with laughing.
             | 
             | And here is your comment, casually pretending everyone on
             | HN is aware of that history of git. And that it's that git
             | guy is somehow related to this Ubuntu thing, you know.
        
         | arp242 wrote:
         | That BSD would most likely be similar to what Linux is today.
         | There's this idea that this alternative universe would have one
         | of the BSD variants as they exist today be dominant, but colour
         | me skeptical on that.
         | 
         | RedHat would have been a "BSD company", systemd would have been
         | a "BSD thing", Hans Reiser would still have written ReiserFS,
         | but for BSD, Steve Balmer would have ranted that "BSD is
         | cancer", etc.
         | 
         | There would be some technical differences of course, but I
         | suspect many of them would be relatively small and not all that
         | interesting.
         | 
         | So basically it would have been "Linux, but with fewer Penguins
         | and more Satanism".
        
           | yjftsjthsd-h wrote:
           | The key difference would be if they kept permissive licensing
           | or if there would be copyleft BSD derivatives. For example,
           | without GPL forcing the kernel to stay open source, Android
           | phones would be a lot harder to modify
        
             | kmeisthax wrote:
             | To be clear, the only GPL source in Android is the kernel.
             | Google took great pains[0] to avoid shipping copyleft code.
             | This is why they were able to make most of Honeycomb
             | proprietary[1]. They can't withhold source on the kernel,
             | but most of what makes Android Android isn't part of Linux
             | and thus the GPL does not apply[2].
             | 
             | From
             | https://source.android.com/docs/setup/contribute/licenses:
             | 
             | > For userspace (nonkernel) software, Google prefer Apache
             | 2.0 (and similar licenses such as BSD and MIT) over other
             | licenses such as the GNU Lesser General Public License
             | (LGPL).
             | 
             | Android is already permissively licensed and that's half of
             | why Google can legally lock things down[3] so easily. The
             | other half being that Google requires a CLA from outside
             | contributors, which is just plain silly for a permissively
             | licensed project. Then again, GNU did the same thing at one
             | point.
             | 
             | In the alternate world where BSD was unambiguously legal
             | and RMS was the Ted Nelson[4] of Free Software, I don't
             | think they would have independently invented copyleft. A
             | lot of the BSD people had very reactionary opinions to the
             | concept, and while some of it might be motivated by their
             | personal disdain for RMS, it's hard to separate RMS and
             | copyleft.
             | 
             | Given all that, a legally unambiguous BSD almost certainly
             | would have wound up being eaten by Microsoft rather than
             | AT&T and the UNIX Wars. All the anger from early 2000s
             | Microsoft about Linux was solely because the GPL prevented
             | them from just writing a better version of Linux or GNU
             | that other people couldn't have. Microsoft was very good at
             | taking open standards and extending them with the goal of
             | making their implementation _replace_ the standard. The GPL
             | copyleft was the perfect thorn in the foot of a Microsoft
             | that liked to cheat the norms of standards bodies.
             | 
             | [0] At least on early versions of Android, this went as far
             | as changing all the system paths. GNU and Android can
             | technically coexist under the same Android/Linux kernel.
             | 
             | [1] Even the FOSS release of Ice Cream Sandwich
             | deliberately omitted all the Honeycomb-related tags to
             | frustrate attempts to use Honeycomb under the FOSS terms of
             | the later AOSP release.
             | 
             | [2] Linux is commonly stated to be GPLv2, but it
             | additionally has an exception stating that user-mode code
             | never trips the GPL copyleft, as a "just in case" sort of
             | thing. This is the reason why Nvidia is allowed to have
             | kernel modules, and also the reason why Linus explicitly
             | refused GPLv3. The v3 anti-TiVo clause forbids you from
             | shipping an application on the same consumer electronics
             | system as GPL software, if the application refuses to run
             | if the GPL software is modified. This is perfectly
             | reasonable for GNU but flies in the face of the whole "user
             | mode APIs are not copylefted" thing.
             | 
             | [3] Android ain't done 'till Termux won't run.
             | 
             | [4] https://en.wikipedia.org/wiki/Project_Xanadu
        
             | arp242 wrote:
             | Most Android phones are already so locked down and partly
             | proprietary that it's a right pain to meaningfully modify
             | anything without jumping through tons of hoops.
             | 
             | In short, I don't think it would have made much of a
             | difference. "GPL vs BSD" is an old debate that's been done
             | a million times, and I never seen any convincing argument
             | one way or the other. Plus there's long been copyleft (GPL,
             | CDDL) parts to many BSD systems, both in userspace and
             | kernel.
        
           | actionfromafar wrote:
           | I feel a bit of history is slipping away. Linux forced a lot
           | of companies and individuals to keep stuff together in a way
           | that uniquely unified industry against Windows and custom
           | embedded software stacks.
           | 
           | Without the Linux kernel we'd have a bunch of competing
           | proprietary forks bickering at every turn.
           | 
           | You could have forgotten video drivers from major vendors
           | like NVidia. Even with Linux it was an anomaly.
        
             | bluGill wrote:
             | Huh? We have many competing forks - debian, redhat,
             | ubutntu, arch... Sure there is mostly on kernel, but there
             | is a lot more to an OS than a kernel.
             | 
             | Linux didn't force anyone to keep stuff together. It just
             | is to your advantage to work together most of the time.
             | Anyone who didn't work together soon paid a price as
             | something you want couldn't easily be brought to you.
        
           | wbl wrote:
           | No there would have been some big differences. The first is
           | that threads would have a kernel representation unlike in
           | Linux where the kernel just knows about processes. This
           | mistake caries over to tools like strace that grab one thread
           | by default because they don't know the others.
           | 
           | Secondly with integrated user space and kernel packaging and
           | distribution would not be a necessity. That would change a
           | lot of things.
           | 
           | Microsoft had taken the TCP implementation from BSD for
           | Windows as shown in the copyright notice. The relationship
           | would be different.
           | 
           | We would not have alternate libcs. Containerization would be
           | built around slightly more heavyweight jails which look like
           | real systems as more software would be assuming that
           | environment.
           | 
           | With systemd there is a real need, but I would hope the
           | solution is better.
        
           | freeremote wrote:
           | I was a BSD admin for 4 years back in the early 00s after
           | running Sun Solaris DNS servers for a well known domain
           | registrar. Ran Web servers, and later firewalls using
           | FreeBSD. While I really like BSD for a server, I've had
           | terrible times with it on laptops. I've tried them all: Free,
           | Net, Open, Ghost, and others that are no longer being
           | developed. I've standardized on Debian over the years because
           | it just works. I buy refurb Lenovo laptops from eBay for
           | about $120. I would like to see BSD grow and become more
           | popular on the desktop. For now, Debian is just super stable
           | and good enough.
        
         | lproven wrote:
         | It may have come closer than you realise.
         | 
         | << My first choice was to take the BSD 4.4-Lite release and
         | make a kernel. I knew the code, I knew how to do it. It is now
         | perfectly obvious to me that this would have succeeded
         | splendidly and the world would be a very different place today.
         | 
         | RMS wanted to work together with people from Berkeley on such
         | an effort. Some of them were interested, but some seem to have
         | been deliberately dragging their feet: and the reason now seems
         | to be that they had the goal of spinning off BSDI. A GNU based
         | on 4.4-Lite would undercut BSDI.
         | 
         | So RMS said to himself, "Mach is a working kernel, 4.4-Lite is
         | only partial, we will go with Mach." It was a decision which I
         | strongly opposed. But ultimately it was not my decision to
         | make, and I made the best go I could at working with Mach and
         | doing something new from that standpoint.
         | 
         | This was all way before Linux; we're talking 1991 or so. >>
         | 
         | http://www.groklaw.net/article.php?story=20050727225542530
        
         | microtherion wrote:
         | In fact, one of the two major smartphone platforms IS running
         | some version of BSD.
        
           | dboreham wrote:
           | Not really. See: https://en.wikipedia.org/wiki/XNU and
           | https://github.com/apple-oss-distributions/xnu
        
             | bch wrote:
             | Wow! Amazed to see Apple is still committing to the repo
             | (albeit a huge code dump, latest of which was ~5 months
             | ago)!
        
               | ManuelKiessling wrote:
               | Well, they don't really have a choice, do they?
               | 
               | My uninformed understanding is: Darwin is Open Source, so
               | when they improve/extend/modify it for their own needs
               | (Darwin still is the foundation for macOS, iOS etc.),
               | they must make those changes available.
        
               | wbl wrote:
               | Not the kernel: that's BSD licensed
        
               | yjftsjthsd-h wrote:
               | No; open source encompasses copyleft, which broadly
               | requires derivative works to be under the same or similar
               | license, and permissive licenses, which generally don't
               | care and are happy to let you incorporate the code in
               | differently licensed derivatives up to and including
               | producing completely proprietary programs using
               | permissively licensed open source code. Darwin _largely_
               | uses permissive license code, in particular from the
               | BSDs, which means that it 's under very little obligation
               | to share. (IANAL and this is somewhat oversimplified, but
               | that's the gist)
        
             | microtherion wrote:
             | Yeah, I know, it's a somewhat complicated story. But even
             | the kernel has, as the Wikipedia article confirms,
             | considerable BSD heritage, and the userland is even more
             | BSD flavored. I would think that the vast majority of Mac /
             | iOS programmers has never made a direct Mach system call in
             | their code.
             | 
             | At the very least, you can say that OS X is more BSD than
             | Linux is GNU.
        
               | pjmlp wrote:
               | The vast majority also doesn't do POSIX stuff, rather
               | Objective-C and Swift framework calls.
               | 
               | The UNIX compatibility on NeXTSTEP, and follow up culture
               | on OS X, was that BSD layer was to bring UNIX stuff into
               | the system and get those DoD contracts, not much so for
               | the software born on the platform.
               | 
               | Even NeXTSTEP drivers were Objective-C.
        
       | drewg123 wrote:
       | Kirk McKusick gives a great ~45min talk called the history of BSD
       | at conferences. There are essentially 3 versions (one about the
       | lawsuit, one about the TCP wars with BBN, and one about the early
       | history), and he asks the audience to vote on which version they
       | want to hear. Search for Kirk McKusick history of BSD on YouTube,
       | or come to a BSD conference to hear it.
       | 
       | And I'd recommend coming to a conference, just so you can talk to
       | Kirk. He's one of the most down to earth, friendly and just
       | generally nice luminaries I've ever talked to in person.
        
         | microtherion wrote:
         | Yes, I have fond memories of the one or two times I heard him
         | as well.
         | 
         | One bit I remember from his presentation was his parable of BSD
         | as the building of a road, with Bill Joy (IIRC) hacking a path
         | through the jungle with a machete, someone else driving a
         | bulldozer along that path, somebody pouring asphalt, somebody
         | adding streetlights, and finally somebody (I seem to recall it
         | was Sam Leffler) painting the streetlights.
        
         | steve1977 wrote:
         | I've actually bought a recording of these talks something like
         | 20 years ago. It was either on DVD or maybe even VHS.
        
           | drewg123 wrote:
           | Oh! I forgot he still sells those. Its now offered as a
           | downloadable video file as well.
           | 
           | See https://www.mckusick.com/history/videoorderform.html
        
       | TomMasz wrote:
       | I recall the brouhaha that erupted around Sun's move from a BSD
       | foundation to System V. I've always felt it was a downgrade.
        
       ___________________________________________________________________
       (page generated 2024-03-07 23:00 UTC)