Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Linux Software

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?
This discussion has been archived. No new comments can be posted.

The Perfect Distribution?

Comments Filter:
  • I've given thought to this too. My idea was
    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.
  • 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,

  • I've always thought that it would be cool to have a web application that could select either a "generic" GNU base (just the apps, no kernel), or an already existing distribution (have a layout of it's filesystems, etc.) and generate an ISO image or individual packages tailored to the apps you want.

    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

  • I was in your position about 5 months ago and I got Green Frog Linux [linuxstart.com] and am quite happy witht that. It is a small minimal distro, just enought to get you to a shell with a compliler and your basic utilities. I think the DL is about 26 meg.

    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
  • 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!

  • I did something similar; Got tired of my disparate installations of varying distros on varying machines. Used SuSE as the base, because frankly they include almost everything known to man in their distributions. I ran through to establish what I would need installed on each machine, and lumped into one huge list of packages. After adding a couple of new kernels that would fit the needs of all my hardware, plus a modular one that would work on damn near everything, and making a few modifications to the package list, I burned it to CD using the standard SuSE disk structure so I still could use the SuSE install diskettes. Later, after implementing a Linux rapidinstaller for Win32 systems, I went back and juggled the packages so that they could be tranparently installed/upgraded over the network. Pop a disk into the FD, cycle the machine, and a disk-specific script on the server does the work. Upgrade X to 3.9.xx? Sure.. tar the tree up and slap it on the server. Assign it a new task ID, generate a boot floppy with that ID. Pop that floppy into the boxen you need upgraded and cycle them. Same goes for reinstallation, repartitioning, etc..
  • There is a group that I'm involved with that is working on creating a new distro based on slack.

    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]
  • Like one poster said, slackware comes closest to what I want, in terms of flexibility, as well as being the most consistently sucessful install on oddball hardware with the fewest necessary post-installation tweaks.

    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.

    I
    can code some pretty leet html as you can see.
  • Looking for the perfect distribution is like looking for the perfect car. There is no way that everyone will have the same standards. Different applications have different ideals and different people have different views of what they want. Perhaps a Honda Accord is perfect for you - perhaps Redhat / Debian / SuSe, etc is perfect for you - that's not going to be the same for everyone. I doubt it would be worth creating a distribution just for you. If you have a group of people that have the same needs and standards as you, that might be useful, but even then, the overhead in set-up, config, support, security etc. is unlikely to make that a worthwhile project IMHO. I'd recommend finding a distribution that is easiest to customize to the settings you like, and use that.

    PS: I use Redhat & Debian based systems at work and home. :)
  • there is a guy in Holland who has written a Linux
    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/ products/lfs-howto.html
  • 3 words: DEB - I - AN if yer gunna modify something, modify this distro.

    ---
    CYA

    Kenny Sabarese
    Left Ear Music
    greasy311@bigfoot.com
  • Actually, he uses a 2nd coputer IIRC, only to compile the most basic packages. But the primary system is made from scratch, just by downloading the sources from the internet.

    Have a nice day everyone !

    wumpie
  • by Jose ( 15075 )
    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 comes the closest to providing the kind of control i am interested in; perhaps the best plan is to build on Slackware.
    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 ....if you see something you don't like, rpm -e it. You don't like what is starting up? take it out of the rc scripts.
    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!

Truly simple systems... require infinite testing. -- Norman Augustine

Working...