Package Management
The Zenwalk way of package management is to use NetPkg.
Netpkg is designed to update the system from a central
repository. It can also install new software that is not on the
install CD. Netpkg has a dependency management feature, enabled by
default. A blacklist section in /etc/netpkg.conf can be edited for
packages that you don't want to automatically update. xnetpkg is
the GTK graphical user interface version of netpkg.
netpkg can be started in graphical mode or via the terminal. The
graphical front end is the easiest to use, but with less
fucntionality.
Using netpkg in the Graphical Mode (xnetpkg)
Running xnetpkg
XFCE menu => system > netpkg or via the ZenPanel
The Netpkg window appears, and it starts by loading a mirror
database. At the moment, this version of netpkg does not work
unless your box is connected to the Internet.
To select a mirror and click an downward arrow on the right. A
list of available mirror address will drop down. Select a mirror
which you want to use. There are 3 types of mirrors available:
Current, Snapshop and Restricted.
- Current: select any of available Current mirrors if you wish
to install stable packages and security fixes
- Snapshot : choose any of snapshot mirrors if you want to try
out a cutting edge programs. The repository will contain the
packages included in the development Zenwalk version
- Restricted: Some packages are located under a restricted
mirror due to patent/legal reasons, like lame.
If you wish to edit, add mirrors that are not listed or remove
mirrors, you can do so by writing down a mirror address in the
box.
How to use
Layout
Netpkg has the following layout:
- Mirror selection list.
- Filters: Ticking "Not installed" will give a
list on the left of available uninstalled and new packages on
the selected mirror. Option "Installed" shows packages
installed on your system. Option "Modified" let you
filter the upgraded and downgraded packages. The "Orphans"
filter shows packages that have been installed as a dependency
of other packages, but no longer needed.
- Package list: This is where you can see Categories and Program
names as well as the status of each package.
- Action buttons: To install, upgrade and uninstall packages and
calculates dependencies.
- Description box: This is where you get a brief description of
a program you selected in Package list.
How to install a package
- Select a package you want to install on Package list.
- Read description of selected package. If you are happy with
the selection, than mark it for instalation by a doubleclick.
This will be indicated by a green checkmark in the column "Select".
- Click on "Install button" (left action button) to
proceed.
- Under the Actions window, you will find:
1. Selected program and its dependencies to install.
2. Action buttons to install either the selected package or together with dependencies.
Be warned, installed program may be not functioning as expected if you skip dependencies!
3. Tick "Accept .new config files" option to overwrite related configuration files by the new ones. You can quit this window by pressing [Close].
- If you have chosen to update, downgrade or uninstall, the
following action window similar to the one shown below will
appear:
1. Your selection.
2. Uninstallation button and "Remove dependencies as well" button appear here.
If you try to remove packages which are dependency to others, netpkg will give a warning.
Using netpkg in the Command Line Interface (netpkg)
Running netpkg
Become root by typing su,enter your root password, and
type netpkg.
The terminal version of netpkg can do a lot more than the
graphical version. Netpkg's parameters are covered in the next
section.
How to use
- packageX ... packageZ A list of one or more package
names to query the Internet repository for. There is no need to
specify complex version numbers. For example, to check for
vim-7.3.094-i486-1.txz, just specify netpkg vim. Generic names
are allowed.
When a matching package is found, netpkg will prompt for the action
to perform If the installed package is an older version, the user
will be prompted to upgrade it. If the installed package is the same
version, the user will be prompted to reinstall it. If the package
is not installed, the user will be prompted to install it. Netpkg
takes the package from the local cache or downloads it. The
integrity of the local package is verified, and the package is
downloaded again if it is corrupted. The download option overwrites
any existing package having the same name.
- install package1.tgz package2.tgz... A list of 1 or
more fully defined package filenames to query the Internet
repository for. netpkg will NOT prompt for the action to
perform. If the package is already installed but not in the same
version, the package will be upgraded. If the package is already
installed in the same version, the package will be re-
installed. If the package is not installed, then Netpkg will
install it. Netpkg first try to take the package from the local
cache or download it. Integrity of the local package is checked
: the package is downloaded again in case the local package is
corrupted.
- upgrade netpkg will attempt to upgrade every older
installed package. Dependencies will be installed or upgraded,
if needed, without prompting. A list of packages that should not
be upgraded or installed can be specified in /etc/netpkg.conf by
using the "Black_list" variable. Please use the "upgrade" option
with caution, especially if you have a highly customized system.
ALWAYS BACKUP YOUR CONFIGURATION BEFORE PROCEEDING. If you have
a small storage area, set the "Keep_packages" variable in
/etc/netpkg.conf accordingly.
- download netpkg will attempt to download packages from
the Internet repository to build a local package cache. Packages
will be sorted in directories matching the software categories.
The location of the local cache is specified in
/etc/netpkg.conf.
- list netpkg will list all packages on the Internet
repository, and the similar locally installed versions, if they
exist.
- list I netpkg will list only packages on the Internet
repository that are locally installed.
- list D netpkg will list packages on the Internet
repository newer than those locally installed. This option is
useful to return to the previous repository after trying the
snapshot repository.
- list N netpkg will list packages on the Internet
repository not already locally installed...
- list U netpkg will list packages on the Internet
repository that are not the same version as installed.
- dotnew netpkg will search all ".new" files in /etc and
prompt the user to replace original versions with these newer
versions. dotnew will allow checking for differences between the
current file and the .new one
- mirror netpkg will prompt you to choose a mirror from
the list specified in netpkg.conf
Netpkg.conf (netpkg configuration file)
Located in the /etc directory
You will be able to change some parameters by adding or erasing
the '#' symbol at the beginning of some lines to (un)comment
configuration lines. Uncommented lines (those without hash marks
"#") are read and executed. Here are the most useful:
- If you have to use a proxy to connect to the network, even
with login and password, just complete these lines:
# If you are behind a proxy server, set these options (at least set Proxy_Socket = proxy-address:port, for example 192.168.11.1:8080 )
Proxy_Socket =
Proxy_User =
Proxy_Password =
- If you don't want to discard the netpkg downloaded packages,
change it here:
# Do you want to keep packages in the "local repository" after install or upgrade ?
Keep_packages = yes
# Keep_packages = no
- If you don't want to upgrade some packages (with the netpkg
upgrade command), add them to the blacklist:
# Packages that shouldn't be installed automatically.
Black_list = aaa_base kernel kernelsource ndiswrapper
Never ever try to delist aaa_base from the Black_list. Doing so
may cause Zenwalk to work properly.
- If you've got some strategic files that shouldn't be
overwritten during an upgrade, add them to this list. The files
will be renamed *.old, it's up to you to decide if you want to
get them back or not:
# These files won't be destroyed but renamed ".old" instead, put here all your strategic
# configuration files on a single line
Protected_files = /etc/lilo.conf /etc/fstab /etc/passwd /etc/shadow
/etc/group /etc/inittab /etc/rc.d/rc.local /etc/rc.d/rc.modules
/etc/rc.d/rc.netfilter /etc/profile /etc/hosts /etc/sudoers /etc/X11/xorg.conf
Some advice for upgrading your system
First, always upgrade Netpkg:
# netpkg netpkg
Then, when you have to update "X11, XFCE, Desktop", you should
do it in text mode, with leaving the graphical one
Don't be afraid, it's quite simple:
- Leave your graphical session: Run your root Terminal, and go
to init 3:
# init 3
- Do the needed update:
# netpkg xorg xorg-drivers xfce
- Go back to the graphical session, in init 4
# init 4
Network Configuration
<<< Table of Contents >>> Startup Services