The Perfect Distribution? 13
Q-tip writes, "After researching the various major distibutions, I have come to the conclusion that none of them really stack up to what I want, so I'm wondering just how much work it would entail to create my own Linux setup from scratch. I imagine it would save quite a bit of time to reuse and heavily modify the startup scripts of another distro, but what else am I overlooking that could be a major hangup? " We've talked about creating Linux distros from scratch but Q-tip is looking to make derivatives of existing distributions. Any helpful suggestions?
Start with a Micro Distro (Score:1)
going to be to heavily modify one of the micro
(single disk) distros. I figured having a 2 or 3
floppy distro with the stuff I wanted would be
useful. 1. I could quickly install it on a
machine currently suffering from doze. 2. I
could install it on a palmtop when they get
cheap and good enough. I'm not a big X fan, BTW,
and having learned how to do everything from
a console wasn't a waste of time.
some idle distribution speculation (Score:3)
I have also wanted to create my own distribution for some time now. every distribution i've seen is either lacking something i want/need or doesn't give me enough control over how and what it installs. Slackware [slackware.com] comes the closest to providing the kind of control i am interested in; perhaps the best plan is to build on Slackware.
I think the best use for a custom distribution is in a situation where you envision a large scale rollout, for example when you are going to upgrade or install Linux machines for everyone in your office. In this case, the main advantage would be that you can do all the customizations in advance (non-standard file locations, standardize on applications, customize NFS and NIS, etc). RedHat [redhat.com] provides this with their KickStart option, but it's still installing the RedHat distribution, for better or worse.
My ideal distribution: A custom kernel and a bunch of well-written and well-thought-out Makefiles. It would handle fresh installs as well as upgrades (of the system and of individual packages). It could also possibly allow you to install different kernels -- Hurd anyone? With severla binaries for GCC (Linux, Hurd, FreeBSD, etc) and the preferred kernel, and source for everything, the same install media could handle *BSD, Hurd, or Linux (if you choose Hurd, rather than Linux, for example, the install procedure would compile the packages from the included source using the correct GCC, otherwise it would install the precompiled Linux binaries).
My mind is a mind that I have come to know,
What about Distro-O-Matic? (Score:1)
Such an app would have to be enormous to handle all those distros and every package that ships with most distros.
I suppose it could start by *strictly* adhering to the Filesystem Hierarchy Standard [pathname.com], excuse my ignorance (I've used SlackWare in the past and RedHat currently) but I haven't seen many distros that fully *comply* with FHS (even though FHS gives you a lot of leeway).
This could bring us a little closer to the the universal source package [freshmeat.net].
Also, the "Distro-O-Matic" would allow you to choose your kernel, from a predefined list (SMP, pgcc optimized, full networking, etc.).
Probably a pipe dream :)
Marcus
Start with GFL (Score:2)
It uses R2D2 init scripts which in my opinion kick ass. they are easy to admin and don't reqire any config app to make sure you get it right. It also comes with DevFS which did cause some headaches when I set it up but there is a new version since I installed GFL which may have solved the small problems. IMO DevFS is a good thing TM.
My adivce if you try it is download everything you'll need, GFL, kernel sources, devfs patch, and a good boot disk (Tomsbrst works well), and be familar with the chroot commmand. Then format your install partition and put these files on it so you don't need networking until your up and running.
Once your have GFL up and running it isn't that hard to build the rest into a perfect machine.
Citrix
in my experience... (Score:2)
i had to do just that once for an embedded system. way more of a pain in the ass than it's worth. at one time a few years back this was the way to go. but now with the sheer bulk of software, and complexity inheirent in a modern unix, go with an existing distro.
what exactly do you want to tell the installer to do? do you want a feature that isn't available in any other distro? people who read debian-devel know how i feel about frivilrous project forking, so this answer is not new to them:
if Foobar GNU/Linux doesn't quite do what you want, join their development team and make it do what you want. if it doesn't include Barney, package Barney in their package format! if the installer doesnt give you enough control, send the maintainers a patch! ask for cvs access! contribute!
Start with SuSE (Score:2)
Re:some idle distribution speculation (Score:1)
Its going to be designed for servers rather then workstations and customized to be used for different needs (firewall, web, email...)
LNXS: Linux for a 2U case [lnxs.org]
Distribution (Score:1)
My biggest complaint with slackware is the seemingly illogical placing of files -- having started with redhat. I end up making a bunch of symbolic links to make administration the same as on a redhat system, and to try to get rpms to install properly. That, and I'd like to see more software included. We need a Mandrake for Slackware.
I've wanted to create a custom distribution myself, but the biggest task is to get it to bootstrap itself, if youre not using a generic kernel. If I ever take on the task, I would want to give it the flexibility and common sense approach of slackware with the (option, at least) of a red-hat like file system and the handy hardware configuration of suse. And, most of all, a sane package selection process. The idea of 3 choices, gnome or kde or webserver, or custom package by package selection is insane. Slackware at least lets you choose once and use that template.
If you're serious, send me a note. Though I don't have the expertise for low-level stuff, I'd be glad to help with things like idiot proofing and package selection or even site hosting.
No such thing as "perfect" for everyone. (Score:1)
PS: I use Redhat & Debian based systems at work and home.
LFS Howto (Score:2)
From Scratch HOWTO. An earlier version of this appeared
in Linux Gazette recently. Although it doesn't claim
to be based on any particular distro, he does it by
building the new system using an existing Linux
system on the same machine. I suspect that you would
end up with something based on your existing
installation.
http://tts.ookhoi.dds.nl
THE perfect distro (Score:2)
---
CYA
Kenny Sabarese
Left Ear Music
greasy311@bigfoot.com
Re:LFS Howto (Score:1)
Have a nice day everyone !
wumpie
hmm (Score:1)
slack rocks. But you have the same control if you use RH, or debian, or stampede...
With RH, to get more control during the install go to advanced mode and you'll have complete control of each and every package that gets installed. (not too sure if this is true with the newer ones...)
after RH gets installed, run rpm -qa
I've never used debian, but from what I understand, it is _quite_ configureable.
As you said as well, just use the kickstart option to have complete control over the RH install.
If a distro is missing something you want, go grab the source and compile...if you are a slack user, then you must know all about this. (source code is available for other distros for slack ya know =P)
Its kinda weird that you mention a "custom kernel" in your ideal distro..for the distro you are going to need a very generic, everything-AND-the-kitchen-sink kernel so you can boot up after installing and have things work..its a real pain to try and do a network install when your network card isn't supported by the generic kernel. Once you get it installed, grab the latest kernel and compile away!
...not quite sure why you mention well-thought-out Makefiles...that is more application dependant.
I like the idea of just source on the install media, and compile away after you choose what OS you want...don't try it on a 486 though!