Wish List

From Gentoo Linux Wiki

Jump to: navigation, search
This article is part of the Miscellaneous series.
Definitions Listings Licenses Other


Please format this article according to the guidelines and Wikification suggestions, then remove this notice {{Wikify}} from the article


I'm a new Gentoo user, and I noticed many times in the first install and subsequent operation that I found many tiny things that I wish existed. I'm not a particularlly competent shell programmer (yet), so this is my contribution. If any ideas on this page strikes the fancy of a developer with some spare time, maybe they can become reality... I think it's important for new users to come up with these ideas before they get too used to the current Gentoo system and forget what it is that they found awkward in the first place. I know many of these are incredibly minor, but maybe I'm just bad at this. Hopefully other people will include thier annoyances and wish-lists and we'll get some interesting, useful, helpful tools as a result.


Contents

[edit] During Install

[edit] Installation Trainer

Basically without printing out the install guide or having a second machine handy, a new user to the system is royally in trouble... It would be nice if there were just a little "trainer" that could promt you what the next step is. It doesn't have to be particularly advanced... in fact, just the initial install guide, cut up into simple text blocks would be perfect.

I imagine something like this:

>> Hello, welcome to Gentoo. If you need help on what to do next, just type "next" or "last" to go backwards.
root@livecd# next
>> First you'll need to partition your drive. you do so like this: blah blah
root@livecd# fdisk blah blah
root@livecd# next
>> checking drives... good job!
>> Next you'll have to create file systems, your choices are... blah blah
...
etc
The LiveCDs come with the documentation, just set your password first,
ALT-F[2-6] and use less or nano to read the docs in your cd.

[edit] Default Screen Session

Screen should be set up by default when you log in to the livecd, also should be fairly prominent in the documentation, very early on. It's too late to realise, once you already started a 4 hour build, that you could have stuck it into a screen and checked it from the office... Also, people who are installing with other's help (i.e. somone sshing in and watching what they do) screen is the perfect tool to guide somone and watch "over his shoulder" while he goes through the setup process.


Screen quick and dirty:

screen     (start session)
CTRL-a-c   (create window)
CTRL-a-a   (change window)
CTRL-a-d   (detatch session)
screen -rd (resume session + detach attached session elsewhere)

[edit] Post-Install System Setup

[edit] Simple USE and GCC flag optimizer

I noticed in the forums that two things seem to plauge new users:

  • Super agressive optimization -- Some new users turn on all sorts of unreasonable USE flag combonations and add every gcc compiler setting they can imagine. They get halfway through compiling something huge like Gnome and then discover that there is no possible way they can continue compiling without errors, or maybe get all the way through compile and end up with an incredibly flaky system.
  • Super conservative optimization -- Other new users do no optimization whatsoever, install thier entire machine, THEN discover some nifty flags and have to sit through a million-year rebuild.

So, a nice addition would be a simple script that probes the system and recommends, based on the combined knowledge of the Gentoo community, a selection of safe, but *reasonable* CCFLAGS and USE combinations, with a little text blurb explaining in very limited detail the pros and cons of each set of choices.

You can do that by hand: Just do a cat /proc/cpuinfo 
on the machine to be installed and look at the Safe Cflags Wikipage
The first request is an unreasonable request. The USE flags that a
user picks is based upon their selection of packages they plan on
installing a long with a few hardware based ones. The script would
have no idea of knowing what the user wants.
SourceMage uses a question and answer session to determine USE 
flags, so perhaps something similar.

[edit] Protected File Tools -- Minor Annoyances

  • A simple script to show a diff of the ._cfg000_foo.conf and foo.conf and allow me to edit them, side by side.
  • A simple script to scan the CONFIG_PROTECT directories and show me the files that need to be changed.
This already exists...  'etc-update' or 'dispatch-conf'

[edit] Protected Files -- More Options

  • Allow files other then those ending in ".conf" to be protected from being overwriten when upgrading packages with portage. Such as a portage envirement variable like FILEMASK_PROTECT which takes one or more space seperated regexprs (with backslash quoted spaces if needed "\ ") that are matched against files before being allowed to be overwriten.
  • Allow exceptions like with FILEUNMASK_PROTECT also uses space seperated regexprs.

Example:

File: /etc/make.conf
 FILEMASK_PROTECT="^.+?\.cfg$ ^.+?\.xml$"
 FILEUMASK_PROTECT="^blah.+?\.cfg$"

Would protect files ending in .cfg and .xml with the exception of files which start with blah and end with .cfg

[edit] Configuration meta-ebuilds

I noticed that many of the things that I am installing I don't actually care too deeply about configuring. Of course, some things I do want to configure, but other things are time consuming when I really just would like defaults. This is usually ok, but sometimes it's important that certian things work in harmony together. "config-file" ebuilds would be nice, i.e. ebuilds that do nothing put patch config files in certian ways to perform "common" tasks. A quick example, one that properly sets up cron-rkhuner-logwatch for daily scans of the system in one go, or "postfix-dovecot-squirrelmail" for mail, etc.

[edit] "Configure Me" Reminders

To add onto the configuration trip... When 10 things are installed and compiled as dependencies, you don't always know exactly what the heck is really on your system, especially if it's obscure (or at least unknown to you). These things may not have good default configurations. It would be nice to have some kind of a "Things You Still Haven't Configures Yet" script that would report to me everything on my system that requires manual configuration.

No one is stopping you from writing these yourself, but ebuilds arefor
packages, and scripts are for...well...what you are trying to do ;)

[edit] emerge --sync one ebuild

It would be yery usefull to sync only one ebuild and its dependcies, because sitting there 20 minutues or more just for one ebuild is really annoying

 You can download ebuild(s) from www.gentoo-portage.com/cate-gory/package nad put it to /usr/portage/cate-gory/package

[edit] More flexible Network solution

The current run scripts are not a bad solution altogether, though they only help do the right thing (tm) once configured on startup. If you happen to change your connection or driver, you are lost, for example when changing from the rt61 to rt61pci driver, you need a completely different configuration. In this case, the PSKs are saved in different places, which makes the whole thing unnecessary complicated.

So, the network configs should be independent from driver and hardware settings and dynamically changeable during the runtime (e.g. when you lose wlan connection that there is some means of selecting another network and entering the PSK).

[edit] Administration

Webmin-like gui for configuring iptables... but without having to completely install webmin to use it.

There are many gui apps for setting up iptables, mny of which are in portage: 
see http://gentoo-portage.com/s?search=iptables (kmyfirewall is a good one), 
if you want a web based firewall config but without webmin.. well 
you'd probly have to search around on SF or build one yourself.

[edit] Maintenance

Personal tools