Contributed by jose on from the do-it-yourself dept.
"I've failed finding the BSD equivalent of 'Linux From Scratch'. A 'BSD From Scratch' e-mail with two replies is archived in MARC; both replies knew not what the person was asking.There are a few projects that kind of do this, but they're usually pared down BSD systems for embedded systems (ie floppy based routers). However, has anyone had a chance to describe how to roll your own BSD system? There are so many free software projects which replace key things (compilers, authentication systems, C libraries) that it should be possible. Anyone done this?So I Ask; does 'BSD From Scratch' exist, if not, what sources would you recommend?"
(Comments are closed)
By Anonymous Coward () on
Want to change libc to glibc... I suppose you could, but why? Not to take away from the glibc people, but the BSD libc works just fine and is more free to me.
I've noticed this about linux. Find something cool and reimplement it ad nausium. The "Free Software" excuse only works until there is a "Free Software" version. Then the job of programmers should be to improve the version that exists. BSD does this. Yes, there are occasionally times when things get ripped out entirely to be replaced with different code, but it's for a good reason. (GEOM in FreeBSD is a good example of this.) The gradual evolution results in a more stable system and better though out changes. (At least when there is going to be gigantic changes the people usually mention that they'd like to improve something and ask if anyone has any ideas.)
Revolutions are great... every once in a while, but they get tiresome when you're trying to keep up. Evolutions work much better. Don't replace entire portions for no good reason. Think it through. Want something to do that doesn't require all that much programming knowledge? Rework OpenBSD's src directory so that it is even more modular. Make everything a package that can be updated periodically via something like portupgrade. That way when a new gcc comes out it's like it is on Redhat or Debian. That's about the only revolution I want right now.
Comments
By Anonymous Coward () on
> Want to have IPF instead of PF in OpenBSD? It's not that much work to replace it.
Mmm... You are somewhat mistaken here. It's kind of opposite - BSD parts are much more integrated together and depend on each other than in Linux.
> Make everything a package that can be updated periodically via something like portupgrade.
> That way when a new gcc comes out it's like it is on Redhat or Debian.
Wow, dude... You can not just swap gcc like this...
Comments
By Anonymous Coward () on
In an ideal world you should be able to swap gcc for a newer version. Of course there is the problem with compatibility between libraries compiled with different versions of gcc (ABI differences in other words), but hasn't the c ABI stayed pretty much the same? I remember when gcc 3 came out. c++ ABI compatibility went out the window.
Seriously, I'd like to see an easier way to upgrade an existing system. Packages exists and I think it could be a really easy way to do it. I come from the Solaris version of Reality, where patches for updates are basically packages. Should the BSD community get something like this, it would definitely help. Hell, Apple has something similar for MacOSX. It's about time something like this became a reality. I've been monkeying around with the idea for a while and I've got a little code chucked at the idea. But my job doesn't involve coding (or even computers), so the code has been slow going. I'll put up the code when the idea gels more into code form.
By RC () on
Quite right... but why is that? (you think)
Well, it's because INSANE ammounts of human effort is going into Linux. Most every program is designed to compile on Linux without problems, lest you are attacked by hordes of 15-year-olds, and Stallman.
Meanwhile, you can make a program that needs extensive modifications to work on OpenBSD, and people will be using it for years, possibly before you even hear that it won't compile without work.
I just thought I'd throw it out there. There are dozens of Linux companies, all contributing cash and software into the project, and although it has some features the BSDs don't, in every other respect, the BSDs are far better--just try loading a few Linux kernel modules. :-)
By mirabile () mirabile@bsdcow.net on mailto:mirabile@bsdcow.net
main repo, including djb ports, IPv6 apache, etc.)
uses egcc (gcc-3.2.1-propolice) as the system compiler
and just in this minutes survived another make build
to bring it up-to-date.
I release snapshots on occasions, even.
Comments
By Matt Van Mater () on
I can understand the licensing crap with the base OS, but I don't think something with optional functionality should apply. Maybe they should do something like make it available for download but not include it on the release cd.
Can you post a link to your djb ports so I can take a look at them?
Comments
By Whatever. () on
read it first, and ask later) "if it doesn't install
where I want, you can't redistribute". Since djb
wants it to make directories under / (and not
under /usr/local) the ports-part is out of the
question.
As always, when something goes out of OpenBSD, it's
not because Theo wants to be a prick, it's really
because he follows the authors license. When you
see that djb and darren reed makes fuss about their
programs/code go out, you realise who the pricks are.
It IS that simple.
Comments
By Matt Van Mater () on
By Anonymous Coward () on
http://marc.theaimsgroup.com/?t=99867604400001&r=6&w=2
Comments
By Matt () on
Comments
By Anonymous Coward () on
That thread was a nightmare... One of the biggest flame wars on misc@ I can remember.
By Anonymous Coward () on
By Lars Hansson () lars@unet.net.ph on mailto:lars@unet.net.ph
But please dont bring this discussion up again.
By Anonymous Coward () on
By Acheron () acheron@sympatico.ca on mailto:acheron@sympatico.ca
First of all, what are the components of an O/S? Besides the various utilities and such, which can be selected, compiled, and packaged as necessary, you need the kernel. While Linux-from-scratch works because it shares a common codebase, the BSD world is completely different.
BSD projects more closely combine work in userland with that of the kernel, it is a much close-knit development model. So, the idea of a generic 'BSD" system is actually senseless. You can fork off of any of the BSD systems you want, as some of them have actually forked off of each other, but the idea of a 'roll-your-own' bsd is not as simple as the poster thinks.
Comments
By Anonymous Coward () on
THE reason to document the process?
By fluffy bunnie () grifter@fuckmicrosoft.com on mailto:grifter@fuckmicrosoft.com
I mean what more can you ask for, you want robust webservers, mail servers dns etc, or something of the sort, HRMMM order me a FreeBSD! you want BSD on your toaster? toilet? tv? sneakers? windmills? watch? HRM order me NetBSD! You want to be so anal about security that you trust not even your own grandmother by DNA match, HRMMM order me OpenBSD. What else is there? am I missing something?
Also note each and all of these can be used for all of the tasks mentioned i'm sure, i just labeled them as I use them for my own needs.
Comments
By Anonymous Coward () on
By Noob () on
By RC () on
Want OpenBSD from Scratch?
cd /usr/src && make
Done and done.
Comments
By Anonymous Coward () on
By Jeffrey () on
I did it for a while when I wanted to poke my brain and
see what it could do ;)
Frankly, I would not do LFS (Linux-From-Scratch) again.
Time is too valuable. Plus, I'll never use Linux again.
Why would I..? There is OpenBSD and NetBSD, both of
which are perfect.
Upgrades with LFS (or any Linux system)..? Not nearly
as simple and painless as doing a `make build'..
The BSDs are the only way to go for me.
Comments
By Anonymous Coward () on
By Nicolai () on
Yes, apt-get update && apt-get upgrade is much more complicated and painful..
Comments
By Anonymous Coward () on
By Anonymous Coward () on
apt-get lots-of-junk-i-don't-need-but-let's-get-it-anyway
apt-get and-now-let's-install-this-shit-on-my-poor-1g-disk-too
apt-get ask-me-all-kind-of-setup-questions-about-services-i-don't-want-and-enable-them-anyway-even-though-they-are-broken-and-giant-security-holes
And then: ERROR: no more space left for the important stuff
Whereas with OpenBSD, you just boot from ONE (and nog six *yuck*) boot disk, and install only a consistent, no-bullshit-whistles-and-bells base system, which you can extend later on. Besides, I don't see the difference in difficulty between apt-get and pkg_add to install packages..., except that apt-get kept on freaking out when I'm low on diskspace.
Comments
By anonymous () on
With what? With nothing?
Then please make my DVB card working for *viewing* TV and I want to fax through my ISDN card, please. Where are the Capi drivers?
BSDs are really sweet, but I have no drivers for something special. So I'll be pleasant to a lot of stupid people at the Linux world and will be able to use something special.
In the BSD world, I have only a small (but very good) community *AND* less drivers.
Sorry, that lost my hopes for BSD... and sucks a little bit! Linux looks like a building site, but you can build towers or a camping. It's on your own how good you make house...
And be happy that Linux exist. Where are the BSD world now?
Installing 1000 systems with only one 1.44mb-disk because disk two is in progress...
Comments
By Anonymous Coward () on
If you want support for every (i386) device there is, heck, why not use windows? Windows supports everything, though you have to make a rather big security/stability sacrifice.
I would say that Linux is somewhere in between windows and *BSD: Linux supports more devices than BSD (and less than windows), but Linux also has more security/stability problems than *BSD imho.
You can't have everything at once (too bad), so choose whatever OS best suits your needs :)
Comments
By currently_without_nickname () on
btw: if you want to have a bsd-like linux, take a look at www.rocklinux.org ... i think its very nice.
By Andrew () andrew@fabbro.org on mailto:andrew@fabbro.org
Comments
By Marina Brown () marina@nospam.surferz.net on mailto:marina@nospam.surferz.net
Well, i personally think that UUCP will make
a BIG comeback in the years to come.
Study TCP/IP and apply it to a network between
the earth and MARS ;-).
UUCP will be the way to go !
...Though, you should note that it WAS removed
in one of the more recent releases and put in the
ports.
Hmmm... , though /usr/libexec/uucpd is still there.
Marina Brown
By Anonymous Coward (65.115.201.2) on
I was also looking into this as a learning tool. But the FreeBSD site recommends you read all the Makefiles.
http://www.freebsd.org/doc/en_US.ISO8859-1/articles/fbsd-from-scratch/why.html
"My goal is to provide an automated and complete installation, not explaining all the gory details that go on under the hood when making the world. In case you want to explore FreeBSD at this level of detail, start looking at /usr/src/Makefile and follow the actions of a make buildworld."
Probably the less detailed approach in this case is to be well acquainted with the FreeBSD Handbook.
By Anonymous Coward () on
"BSD From Scratch" would mean you grabbing a 4.4 BSD kernel and building what you want on top of it. Otherwise do a CVS checkout and learn about make release.
Comments
By Anonymous Coward () on
Comments
By Anonymous Coward () on
By Anonymous Coward () on
Or go play with xMACH. ( http://smokeping.planetmirror.com/pub/xmach/ )
Or, get OpenBSD source, make, move files around to a CD or another system, configure and boot. How's that.
Or, Get 386BSD code, and make it run.
Or get Darwin from Apple and try to make it work on your system.
Get the picture...
Comments
By Anonymous Coward () on
By Anonymous Coward () on
whatever did happen to it?
By Anonymous Coward () on
into a downward spiral of devolution? Hardly!
Have fun!
By mnemonic () mnemonic at mail dot be on mailto:mnemonic at mail dot be
By Anonymous Coward () on http://www.microbsd.net
Comments
By Anonymous Coward () on
By Anonymous Coward () on http://www.microbsd.net
By Anonymous Coward () on
A simple question, yet only 14% of the comments so far address it with a relevant reply. Shame, shame...
Comments
By Anonymous Coward () on
Comments
By Anonymous Coward () on
By John Kennedy () on
One of the reasons I'm working with OpenBSD now is that I didn't want the huge time-suck anymore and I was looking for a project that was security motivated (above and beyond just "secure").
If you do it from scratch, you will be reinventing the wheel a lot. Once you achieve a certain critical mass, it will be hard to do a good job relative to other projects with more people.
If you get too detailed, you're also going to discover the modular joys of chicken-&-egg dependencies. X needs TCL/TK to compile, TCL/TK needs X is one thing won't even come close to everything you would see.
Again, as an educational experience, go for it. You'll probably find it is more product to join in on a collaberative project that suits your needs and help them out to everyone's mutual benefit.
By Anonymous Peon () on
To do "BSD from scratch" in any useful fashion, you need to work backwards- take a full install, cut it down to exactly what you need (again, I'm positing that NetBSD makes this easiest, by virtue of their design goals; it's doable with Open and Free, but NetBSD makes the best training wheel for it), and add/build appropriate packages to put on top.
By Lars Hansson () lars@unet.net.ph on mailto:lars@unet.net.ph
The reason there's LFS is that Linux has a different distribution model. There are a multitude of distributions that does the same thing, only slightly different.
With BSD you always get it from scratch, so to speak. There are no (or at least very, very few) different distributions so the need isn't there.
By zam4ever () on http://www.freebsd.org
cheers