How Common Are Homegrown Linux Distributions? 19
Andreas Krennmair asks: "I'm planning to build my new Linux system from scratch, similar to Linux From Scratch. I'm currently collecting all source packages, and I wonder how common it still is to use a self-built Linux system, although graphical (or pseudo-graphical, curses-based) installation programs with automatic hardware component detection and great software package management systems are used in almost every modern Linux distribution. And are there any people left who still use Jurix or Yggdrasil?"
On the university level (Score:2)
In-house work (Score:1)
Unfortunately, the Linux community as a whole does not seem interested in a system like this. The closest 'main-stream' distribution to do anything like this is perhaps Rock Linux [rocklinux.org], though they still use tarballs and scripts to extract/configure/build/etc. Otherwise, binary distros are the norm.
BTW, yggdrasil hasn't had an offering since '95 or '96. If you are still using an original yggdrasil distribution, you are probably complete out-of-date. Hell, you might as well be using SLS.
Doing a similar thing now. (Score:1)
It would seem that the next step, once one has gained some proficiency with Linux is to either HEAVILY modify their distro, or roll their own. Nine times out of ten, I skip the RPM's anyway. And if you aren't using them or DEB's, and have your favorite config tools (I like emacs myself, although I suppose I might have to learn vi to squeeze things onto the drive:) why not roll your own?
BTW, one trick in my install is that I will be installing the laptop drive into a desktop, do the compiling on the desktop (Celeron 550, I think, vs a 486 SX), thus making some of the install steps a little different than the 'official' LinuxFromScratch steps. Should be fun.
One more BTW: why a ratty old 486SX laptop? A few reasons. First, it is free. Second, it has an active matrix screen. Third, it is free. Fourth, I also scored the WaveLan wireless rig we used at work (complete with access point!) Finally, coding in front of the idiot box without annoying the SO with a full tower in the living room:) Oh, did I mention it was free? That last seems to be a great motivator in many a Linux project.
Vector Linux? (Score:1)
I've been using Vector linux as a workstation for a while, I'm quite impressed.
It's intended as a base for home-grown distributions, installs in under 200 megs, has X, GTK, Netscape, licq, spruce, nedit ... most everything you'd want in a basic workstation, including developement tools.
The install is VERY basic, the only real options you get are "Which partition?", but not a real problem in my mind.
Check out their homepage, http://metalab.unc.edu/vectorlinux/ [unc.edu]
Installing in less than 250 megs - Slackware? (Score:2)
You might want to try Slackware for your notebook. Depending on what you leave out, you should be able to get it down to 250 megs without too much difficulty (just don't plan on rebuilding X from source, for instance). I've had to install it on limited space myself a few times.
And if you feel like mixing and matching pieces, all of it's stored as straight tarballs on the CD, so it's easy to pick through (though I'm sure tools for RPM and DEB let you do this too).
Re:Vector Linux? (Score:1)
Try BSD (Not Trolling) (Score:1)
I wouldn't know how easy it is to put together a Linux distribution by hand; I haven't had enough experience with it to form any kind of educated opinion. However, I do know a bit about doing this with BSD -- FreeBSD in particular. It's pretty easy to do, actually. I went from zero to finish in just one day by reading sections from The Complete FreeBSD and by looking at the PicoBSD scripts. Sorry, no links as I've gotta run. I would suggest you include BSD in your considerations.
Agreed (Score:1)
I don't think that I could have built it "from scratch" without another working box.
Re:Installing in less than 250 megs - Slackware? (Score:1)
slackware has a mini-distro called ZipSlack. it's made to run on UMSDOS on a ZipDrive, even a parallel. i use it for recovery, and as a portable linux for any machine with a ZipDrive (i created a DOS boot disk that runs iomega's guest.ese to find the ZipDrive, the i use loadin to boot the kernel from the Zip disk). but you can easily create a ext2 partition on a small drive and copy it over. it comes with a scsi kernel, gcc, the usual docs, many filesystem mods, and drivers for most NICs. if you want X, you can manually trim it down, and ditching GCC will save you a bunch of space if you don't need to recompile (or you could mount a drive with gcc and the sources on it, but i've never tried it before)
FreeBSD, OpenBSD, and NetBSD all have minimum install in about 60 megs or less, add X and you might hit 100 megs.
Re:Doing a similar thing now. (Score:1)
I've installed on several old 486 boxes. I've managed to pull it off in different ways. Hopefully some of this will help you. .
I've used the trick to install with the HDD in a bigger desktop machine. I formated the smaller machines HDD and made just one partition on it - the root partition. /var and /usr were on partitions on the bigger machine. (I used one partition so that I could use the HDD space without any loss.) The swap was later made by using a file put in the / partition of the 120 MB drive. I don't exactly remember how I did it now - I've only done it once, but I used dd and mkswap and swapon. After installing a minimum of packages I started "cleaning". First: "rpm -qa | more" and "rpm -e" on everything I didn't need. Then I killed most of the /usr/doc stuff and removed some other files (mostly html documents) "by hand". I also strongly reduced some big files like /etc/termcap. On a 120 MB HDD it does make sense.. :) ...
Now for the slightly trickyer part. When everything was reduced to fit on the 120 MB HDD I made the swap and "cp -va":ed the /usr and /var in place. I had to edit the /etc/fstab to not lose /var /usr and the swap at reboot on the smaller machine. I had to edit /etc/lilo.conf too aimed at the correct HDD/partition so that the machine would boot. I have to admit I made a couple of mistakes here but the machines survived (keep some boot disks at hand!).. :) .. And they both work fine now. I thin I had to flag some partition as the boot partition on the small HDD, but I'm not sure. It might have been on another machine..
At the end I had a 486/sx25, 8 MB RAM, 120 MB HDD, runing RH linux, DNS, Apache and Samba (no X).. I used that machine as a "ISDN-modem router" at work for a while with a "webinterface" made in perl/sh to turn the modem on and off - in Sweden they charge per minute rates.. :) ..
If this doesn't make any sense mail me, my address is on my page.
--
"No se rinde el gallo rojo, sólo cuando ya está muerto."
Re:Rolling your own--time-consuming but effective (Score:1)
But eventually packages progressed, getting better, newer features, and it became a royal pain to try to keep up. I finally gave up after spending way too much time sorting out dependencies and tracking down old files from older versions of packages.
By '98 or so I had switched to RedHat due to rpm and have been reasonably happy with that, applying a lot of my own customizations. Even now, though, every time I upgrade I like to do a clean install and then apply my custom changes - it turns out to be quite a project for a couple hours. One reason why I still haven't gone up to 6.2. Plus I'd like to try Debian and maybe a BSD or two one of these days... If only I had the time. ;-)
Bottom line, it's a lot of fun but be prepared to spend some time on it.
Roll-Your-Own (Score:1)
Then linuxfromscratch made it to Slashdot, and I decided to do what I had been pondering to do for several months. I took notes the whole way, and started 7-8-2000. I had functioning system by the 21st.
This was great fun, and I learned a lot. I finally figured out how the *complete* boot process works in Linux, and I wrote a Perl script to manage the whole runlevel changing mess. I figured out routing for the first time. I figured out how to start networking from scratch for the first time. I figured out IP Masquerading for the first time (Whee!). Everything went mostly flawlessly, and I'm greatly pleased with the result.
I wanted to keep RPM completely off my computer. Unfortunately, I broke down and installed the binary tar.gz rpm package (the first binary package to go on my system, because the source wouldn't compile), just to install the Mozilla M17 devel package so I could run Galeon.
I copied the libc5 libs from another SuSE 6.3 system--and somehow made those work without destroying my computer--just to run Netscape 3.
This brings up another coolness--I finally figured out how to run Quake II on my computer using SVGAlib! Way cool! It runs smoothly at 512x384 on my S3 ViRGE (2d mode) vid card and an AMD K6/2 400 with 64 MB RAM. (Anybody got a Voodoo 3 card they're willing to sell? lf11@andonet.com)
I'm afraid I've wandered, but I love linux, and I really love building things from scratch, tinkering with them, learning how they work...
In short, GO FOR IT! (but it might take more time than one might suppose)
-lf
Re:Installing in less than 250 megs - Slackware? (Score:1)
BTW, for other folks: no X (at least, not yet). But I hope to be doing some C and/or Perl and/or bash programming. The first (and possibly the last) require a bit of space. I would just use NFS and mount the libraries from a desktop, but then I'd have to have a similar setup at home and work (and keep them sync'ed!) as well as two ethernet configs (one for wireless at home, the other for wired at work).
But thanks for the suggestion. Might consider it in the future (have a few 486 desktops at my disposal with even smaller hard drives. Too easy to just make 'em a router:)
Not Linux, but ... (Score:1)
Re:Doing a similar thing now. (Score:2)
Check out Jed [mit.edu]. Works like Emacs, without all the Emacsy features, meaning it's tiny. (The newest source tarball is 700kb)
--
Re:On the university level (Score:1)
Rolling your own--time-consuming but effective (Score:1)
I've been using Linux since late 1995; I installed with Slackware 2.1 (kernel 1.1.59!), and have been updating via tarballs since. My /usr/src directory has a good 200 or so packages in it at the moment, most of which I've used at one time or another. The system has worked without any problems to speak of, except occasionally when doing upgrades (installing ELF libraries and compiler was a pain).
I personally enjoy tinkering with the system, customizing it to fit my needs best, but I wouldn't dare give my current setup to anyone else. I have libc4, libc5, and libc6 all coexisting somehow, and programs to go with each--some things like gzip which never change haven't been touched since the original a.out install. The directory structure is a mess, too; I've never gotten around to sorting things out. It can take quite a bit of time to keep things up to date, though I probably would have been better off if I had had something like the FHS [pathname.com] to guide me. If you're going to go with your own distribution, such resources are definitely worth a read.
Although it takes effort, the results can be nice. Obviously you can install whatever software you like without having to worry about dependencies or wonder what someone's install script will do to your /etc directory; you can also tune it to fit different configurations if your computing environment changes. When faced with a PC at a summer job whose SCSI card was flakey, I was able to extract the bare bones from my home system and create a two-floppy Linux system with pico, telnet, ftp, and ssh (plus basic shell utilities)--more than enough for what I needed it for.
So yes, there's at least one person out here who uses a homegrown distribution. (-:
I did it last year. (Score:1)
Within a few days of downloading I had a working system which was able to re-compile the kernel and most software. Occasionally I'd find something that wouldn't build, usually due to the build process requiring something obscure I hadn't yet installed. I learnt a lot - pity these skills havn't come in handy workwise.
The system ran for 9 months before the disk expired. I'm now running an old slackware with almost everything upgraded. Next time, though, I'll plump for Debian.
Re:In-house work (Score:1)