Changing The Package Selection
From RockWiki
There are several ways to change the package selection:
- per configuration
- using a package selection template
- editing the target
changing the package selection per configuration
This is the easiest, though most short-lived way of change the package selection. To do so, follow these steps:
# cd /usr/src/rock-src # or wherever your rock-src directory is # ./scripts/Config -cfg config # replace config with the name of your configuration
Now make sure that Show expert-only and experimental option and then Custom package selection is activated. Then choose ===> Edit package selection rules.
Here a list of the current package selection rules is displayed. This list may be empty. Example:
001: O xfree86 002: X xorg 003: X dgamelaunch 004: O extra/desktop/gnome 005: X extra/desktop/kde 006: <add new rule>
This ruleset would do the following:
- Step 001
deactivate package xfree86 - Step 002
activate package xorg - Step 003
activate package dgamelaunch - Step 004
deactivate all packages in the extra/desktop/gnome category (not repository!) - Step 005
activate all packages in the extra/desktop/kde category (not repository!)
See also Differences Between Categories And Repositories.
You can edit rules by selecting them and create new rules by selecting Step 006.
using a package selection template
Package selection templates have the advantage over the above mentioned that they can easily be reused. The disadvantage is that you have to specify every single package you want.
The package selections are stored in the directory misc/pkgsel and stored as files ending in .in. Let's have a look at the minimal.in package selection:
# Copyright header omitted # TITLE: Minimalistic package selection pkgfilter sed ' / 00-dirtree / { p; d; } / linux / { p; d; } / glibc / { p; d; } / gcc / { p; d; } / binutils / { p; d; } / make / { p; d; } / gawk / { p; d; } / flex / { p; d; } / bison / { p; d; } / perl5 / { p; d; } / strace / { p; d; } / libelf / { p; d; } / ltrace / { p; d; } / gdb / { p; d; } / gzip / { p; d; } / readline / { p; d; } / ncurses / { p; d; } / dialog / { p; d; } / m4 / { p; d; } / time / { p; d; } / gettext / { p; d; } / zlib / { p; d; } / bash=bash2 / { p; d; } / coreutils / { p; d; } / findutils / { p; d; } / diffutils / { p; d; } / mktemp / { p; d; } / patch / { p; d; } / grep / { p; d; } / sed / { p; d; } / tar / { p; d; } / bzip2 / { p; d; } / texinfo / { p; d; } / man / { p; d; } / e2fsprogs / { p; d; } / file / { p; d; } / mine / { p; d; } / util-linux / { p; d; } / iproute2 / { p; d; } / net-tools / { p; d; } / module-init-tools / { p; d; } / modutils / { p; d; } / sysfiles / { p; d; } / autoconf / { p; d; } / automake=automake19 / { p; d; } / cracklib / { p; d; } / libtool / { p; d; } / pam / { p; d; } / shadow / { p; d; } / sysvinit / { p; d; } / grub / { p; d; } / silo / { p; d; } / yaboot / { p; d; } / ed / { p; d; } / vim / { p; d; } s/^X /O /; '
To create a new package selection simply copy the file to a new filename, change the TITLE line and add your packages like this:
/ anjuta / { p; d; }
Just keep the last line intact:
s/^X /O /;
This line will deactivate all packages not in the above package list. Note that it doesn't remove them so that they can still be reenabled using a per-config ruleset as described above.