Changing The Package Selection

From RockWiki

Jump to: navigation, search

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.

Editing the target

Template:Stub

Personal tools