Linux - DistributionsThis forum is for Distribution specific questions.
Red Hat, Slackware, Debian, Novell, LFS, Mandriva, Ubuntu, Fedora - the list goes on and on...
Note: An (*) indicates there is no official participation from that distribution here at LQ.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm thinking about configuring a derivative of Ubuntu to suit my needs. My plan was to start with the minibuntu image and configure it with things like fluxbox and a few of the programs that I always have installed.
To those of you that have tried (or do on a regular basis) things like this: Are there any tips or tricks that you could give that would make the process easier or more successful.
As well, what programs/tools/packages do you view as absolutely critical to your system?
My list is fairly small:
build-essential
python
gcc/g++
multimedia codecs
firefox/thunderbird
emacs
terminator
guake
pidgin
I see you have an idea what your distribution will be based upon, but how will it be different than Ubuntu or any other distro is what you should be thinking about, that is unless you are just configuring an existing GNU/Linux configuration for your personal minimalistic needs.
To answer your question, the tools I would include depend if it's to be published or not. I wouldn't include closed source drivers, codecs, or web technologies in a F/OSS project.
Critical tools for a successful desktop distribution include:
build tools:
gcc, make, patch and the like. There is a meta-package for these in the apt repositories.
development:
At a bare minimum I would include python, perl, and *sh.
Also a command-line editor such as vim, emacs, or even nano. Maybe a GUI editor such as geany or bluefish, too.
graphics:
To view graphics quick, I use mirage. You can't go wrong with The GIMP and Inkscape for raster/vector editors, and perhaps imagemagick for command line tasks.
codecs:
gstreamer+plugins, vorbis-tools, musepack, flac, lame, and ffmpeg.
multimedia players:
mplayer for video, and mpd with mpc/ario for audio.
system tools:
a basic text editor (mousepad), calculator (galculator), lightweight terminal (sakura), file manager (pcmanfm or thunar), and openssh.
web browser:
Firefox is becoming less and less of a choice for a lightweight distribution. I would choose another browser such as midori for such a configuration. elinks for command line browsing.
The above GUI applications all use the GTK+ toolkit because I believe a pre-configured, lightweight distribution should have a unified look with a one-app-per-task approach. I did not mention KDE/Gnome/XFCE above because I believe there are some much lighter window managers that would fit the shoe better. I left a lot out purposely, and I probably forgot even more, but those are some examples of lightweight applications needed for a typical desktop configuration.
if you do, don't just make it another meaningless variation on ubuntu; there are already enough
decide whether this is just a 'vanity project' (just for you and a few mates - doing it 'because you can') or does it have something to offer the wider world, and, if so, what that is
I'm being slightly unfair here; there is probably a place for another distro, if it does something different (or just better) from what is already out there.
If, after that, you are still determined to do it, work out why you want to do it and what is different about your distro and its abjectives from everything else; I'm not sure that just giving people stuff that they could get by spending 5 minutes selecting and deselecting stuff in synaptic is worthwhile.
Thanks a ton axion0917, you made a few really good points about keeping the footprint small. And you brought up a few things I hadn't really thought about yet like keeping the gui apps all withing the realm of gtk.
As for why I want to do this... Because I want to learn more about what goes into creating a distro. I wanted to play around with "selecting and deselecting stuff in synaptic" at first but I'm thinking that I'd like to try something like the LFS. http://http://www.linuxfromscratch.org/
I have no illusions that my result will probably be not too different from many other Distro's but the main goal is for me to learn more of the underlying system. I'm not quite sure you would call this a 'vanity project' because other than using it as a neat live disk I'm not even sure that I'll use it much as an pure install.
CSandman, I have built countless distributions with LFS, and I must say it is the way to go if you want complete control. However, LFS is a learning tool more than anything else. Don't start an LFS build expecting to have a shiny new, custom distro afterwards. For one, it takes several hours, if not days, to complete an LFS build. Second, it is a wasted effort if you just copy/paste and don't read _everything_. Finally, it only guides you through completing a bare minimum, and then Beyond LFS takes over, which takes even longer to complete. With that said, using LFS you can create a brand-new derivitive-free distribution with some time and learning.
Also check out T2 (www.t2-project.org). T2 is a distribution build kit. With it, you select features from a menu, and it will download source code and compile everything from scratch automatically. It automatically creates a disc image to burn too. This has a huge advantage over LFS if you are limited on time but still want a lot of control.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.