JTL's Home Page

University of Manchester
Department of Computer Science

AnotherLevelUp Installation

AnotherLevelUp Home Page


AnotherLevelUp is available under the GPL in two forms:

First download the package as either RPM or as .tar.gz files into, say, your home directory, e.g:

$HOME/AnotherLevelUp-071016-1.noarch.rpm
$HOME/AnotherLevelUpThemes-1.1-2.noarch.rpm
$HOME/AnotherLevelUpExtraImages-1.1-1.noarch.rpm
or
$HOME/AnotherLevelUp-071016.tar.gz
$HOME/AnotherLevelUpThemes-1.1.tar.gz
$HOME/AnotherLevelUpExtraImages-1.1.tar.gz

or something similar. AnotherLevelUp gives you the basic package, with a very small number of themes. AnotherLevelUpThemes gives you the remainder of the almost 60 themes -- you don't need it if you are not really into themes. AnotherLevelUpExtraImages gives you more images which you can use to help make your own themes. You don't need this if you are not short of images to use, or are happy without themes, or happy with the ready made themes.

Installation is different, depending on whether you are installing the RPM version or you are installing the tar version.

RPM installation

This method should work if you are running Red Hat 6.x-9 or Fedora (etc.).

You will need to uninstall AnotherLevel if you have that installed, as AnotherLevelUp is a direct replacement for it. (E.g. RH6.)

rpm -e AnotherLevel
rpm -i $HOME/AnotherLevelUp-071016-4.noarch.rpm
rpm -i $HOME/AnotherLevelUpThemes-1.1-2.noarch.rpm
rpm -i $HOME/AnotherLevelUpExtraImages-1.1-1.noarch.rpm
Or, if you are upgrading from a previous installation of AnotherLevelUp, then
rpm -U $HOME/AnotherLevelUp-071016-4.noarch.rpm
rpm -U $HOME/AnotherLevelUpThemes-1.1-2.noarch.rpm
rpm -U $HOME/AnotherLevelUpExtraImages-1.1-1.noarch.rpm
Note: /usr/share/icons conflicts. (This only affects pre 071016, I think.) AnotherLevelUp nowadays includes icons and mini-icons, so it is self-sufficient in this respect. Various changes have occurred in Red Hat's fvwm-icons RPMs over the past few distributions, but mainly only in minor ways: e.g. small variations in individual mini-icons, etc.. AnotherLevelUp has tracked these changes as appropriate, trying to keep up with the latest Red Hat fvwm-icons of the time. So, for example, AnotherLevelUp-020729 contains icons that will not conflict with those installed by the RH7.3 fvwm-icons RPM. The bottom line: you may find some conflicts reported in /usr/share/icons (especially in /usr/share/icons/mini) if you install an AnotherLevelUp RPM on an older distribution of Red Hat than it was developed in. You should check that these conflicts are only in /usr/share/icons, and then use the --replacefiles option of rpm with the install. You will not even notice the differences in most cases, and the worst cases are merely alternative mini-icons with the same name.

On Red Hat 6.x: Run switchdesk and choose AnotherLevel, if you do not already have this as your default. This should give you AnotherLevelUp when you next login or start X. You can also, or instead, select AnotherLevelUp on login if you use gdm.

On Red Hat 7.x-9, Fedora (etc.?): Switchdesk no longer supports AnotherLevel, so instead you can run the script /usr/local/bin/switchdesk-ALU, to do the work for you. This simply makes your ~/.Xclients into a symbolic link to /etc/X11/AnotherLevelUp/Xclients (it must be a symbolic link, and not a copy of the file). You can also, or instead, select AnotherLevelUp on login if you use a graphical login mode (i.e. run level 5 instead of the quicker to boot, and more flexible when you get there, run level 3).

That is all you have to do if you use the RPM installation.

To Manchester University, Computer Science Students and staff (and anyone else interested): If you are a fan of text logins (rather than having X running already before login) you may also consider installing the standard dotfiles which you (probably) use within the School. As you know, these permit the user to choose desktop during login, and replaces Red Hat's switchdesk (via /usr/local/bin) with one which runs in a console or xterm. These dotfiles also permit interactive choice of screen resolution (if your X config is set up for that), as well as simultaneous multiple logins, including starting X, of the same or other users using different virtual consoles: very handy if you have more than one account that you wish to switch between (e.g. root and normal user). See here for download.

Compressed tar archive installation

This installation method is instead of the RPM method for Red Hat 6.x-9 and Fedora (etc.) described above.

Having obtained the .tar.gz file(s), next choose where you want to install it -- this can be practically anywhere, but one suggestion is /usr/local/etc/X11 if you have root access and want to install it `properly'. If you haven't got root access, or just want to play with it `safely', then install it in your home directory, as $HOME/ALU, say. Let's assume that here.

cd
mkdir ALU
cd ALU
tar -xvzf $HOME/AnotherLevelUp-071016.tar.gz
tar -xvzf $HOME/AnotherLevelUpThemes-1.1.tar.gz
tar -xvzf $HOME/AnotherLevelUpExtraImages-1.1.tar.gz
cd

If you are intending this installation to be used by users other than yourself, then you should ensure the files are accessible by also running the following.

chmod -R a+rX ALU
Some techy stuff about file permissions. (Freely ignore this is you want!) By request, all AnotherLevelUp tar files made since August 7th 2002 (version 020729 onwards) have file access permissions to suit multi-user access already. (Regrettably, the tar archives made previously were a little inconsistent on this issue!) So, if you are using a recent tar and your umask is generous (e.g. umask 022) then you will not need to do the chmod listed above. However, if your umask is cautious (e.g. umask 077) then the -p option of tar (if it is supported) will not suffice, because only the files are in the tar archive, not the directories. If in doubt, just run the chmod listed above!

The next part depends on what system you are running.

Red Hat Linux 6.x-9 and Fedora (etc.)

If you are running Red Hat Linux 6.x/7.x (and you do not wish to use the RPM version of AnotherLevel), then the simplest way to use AnotherLevelUp is to run $HOME/ALU/AnotherLevel/switchdesk-ALU, which will make your ~/.Xclients into a symbolic link to $HOME/ALU/xinit/Xclients.

Alternatively, on Red Hat 6.x (not 7.x or later), you can make your AnotherLevelUp installation fit in with switchdesk, by simply running the commands

cd
ln -s $HOME/ALU/AnotherLevel/fvwm2rc.m4 .fvwm2rc.m4

Please note the trailing .m4 on both these file names. Also note it is important that you use an absolute symbolic link rather than a relative symbolic link or a hard link; and you must link to, rather than copy, the file. This is so AnotherLevelUp can find its own location. You should then run switchdesk and choose AnotherLevel. This should give you AnotherLevelUp when you next login or start X.

If you later want to remove AnotherLevelUp, you can delete your $HOME/ALU, $HOME/.fvwm2rc.m4 and also the directory $HOME/.fvwm2dir which is where your current personal settings were stored, and any $HOME/.fvwm2dir-* directories -- in which your saved preferences sets were stored.

Other systems

On other systems, you will have to find an alternative! If you're an existing FVWM2 user, and you've got at least FVWM2 version 2 then you might simply replace your FVWM2 starting line (e.g. in your $HOME/.xinitrc or similar) with

fvwm2 -cmd "FvwmM4 -debug $HOME/ALU/fvwm2rc.m4" \
  > $HOME/.ALU-errors-`hostname`-$DISPLAY 2>&1

Or if this is not the case, then an attempt has been made to write a script which should work as a bottom line in most cases (again note the absolute symbolic link):

cd
mv .xinitrc .xinitrc-before-ALU
ln -s $HOME/ALU/xinit/xinitrc-anywhere .xinitrc

Instead, if you have an existing $HOME/.xinitrc, you might exec this file from that, perhaps under certain conditions (e.g. prompt for which desktop you want to use). But you still must use an absolute path name so AnotherLevelUp can find its location.

exec $HOME/ALU/xinit/xinitrc-anywhere

If this doesn't work, you're on your own (but feel free to report back to me).