How to upgrade Salix 14.2 to 15.0

From Salix OS
Jump to: navigation, search


Preparing for the upgrade

You first need to change the default repositories to the ones for Slackware and Salix 15.0. Open file /etc/slapt-get/slapt-getrc and change all "14.2" instances to "15.0". Also make sure the Slackware repositories have an OFFICIAL priority. Example setups are shown below:

i486 architecture


x86_64 architecture



Also edit your /etc/slapt-get/slapt-srcrc file to point to 15.0 instead of 14.2:


Switch to root user

Every command listed below should be executed with root privileges. So run:

sudo su

or alternatively, if you have the root user enabled:


to open a root terminal.

Changing your mirrors

Feel free to try other repositoriy mirrors that might be faster for you. N.B: It is perfectly safe to stop the process while a package is in the process of being downloaded. On resume/restart, the download starts off where it last left. But, do not stop the process, if a package is in the process of being installed.

After you make the changes, run

slapt-get -u


Although slapt-src has nothing to do with the upgrade process itself, better make sure its repos are pointing to 15.0 so that they work correctly after the installation. Open your /etc/slapt-get/slapt-srcrc and change the SOURCE lines to these ones:


Upgrade base package manager tools

Upgrade pkgtools and spkg first as a newer version is needed for proper installation of several packages:

 slapt-get -i pkgtools spkg aaa_base

Upgrading packages

Open a root terminal again first:

 sudo su

Now you need to upgrade glibc and related packages:

slapt-get -i glibc glibc-zoneinfo glibc-i18n aaa_glibc-solibs

Then upgrade slapt-get itself (along with its dependencies):

slapt-get -i aaa_libraries openssl curl libunistring slapt-get

Fix some missing symlinks. On 64 bit systems run:

ln -sf /lib64/ /lib64/
ln -sf /lib64/ /lib64/
ln -sf /usr/lib64/ /usr/lib64/
ln -sf /usr/lib64/ /usr/lib64/

and on 32-bit systems run:

ln -sf /lib/ /lib/
ln -sf /lib/ /lib/
ln -sf /usr/lib/ /usr/lib/
ln -sf /usr/lib/ /usr/lib/

Install basic system packages. On 64-bit systems, run:

slapt-get --install-set slackware64/a

and on 32-bit systems, run:

slapt-get --install-set slackware/a

You'll need to create some symlink again... On 64-bit systems:

ln -sf /lib64/ /lib64/
ln -sf /lib64/ /lib64/

and on 32-bit systems:

ln -sf /lib/ /lib/
ln -sf /lib/ /lib/

GDM has been replaced by lightdm in the default installation, so if you want to do that, run:

slapt-get -i lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings
spkg -d gdm

otherwise gdm will be upgraded later and pull almost all of GNOME with it...

Install some necessary packages that have been renamed:

slapt-get -i man-db python2

And some that are required for the system to be working properly:

slapt-get -i salix-polkit-settings polkit-gnome mozjs78

And then upgrade all other packages to their new versions:

slapt-get --upgrade

DO NOT use:

slapt-get --dist-upgrade

in any case. Although it might seem to be the best option for upgrading to a newer release, it really isn't.

Upgrading the kernel

Lets upgrade the kernel packages next.


 ls /var/log/packages/kernel*

to see which kernel packages you have installed and do a slapt-get -i <packagename> for each one of them. (Do not include the package version in <packagename>).

You will also need to upgrade your lilo, elilo or grub packages at this point. So, for example:

 slapt-get -i elilo

If you have switched to the kernel-generic package instead of the default kernel-huge package, don't forget to recreate the initrd.gz file which will be needed for booting you upgraded system. If you're still using the default kernel-huge package, an initrd is not needed anyway and you needn't be concerned about it.

After upgrading the packages, don't forget to edit your /etc/lilo.conf file accordingly and run:

 lilo -v

to inform the bootloader about the kernel upgrade. If there is no /etc/lilo.conf file, just run:


On similar note, users running multi-boot systems on GRUB2 must log into the distro that controls the bootloader and re-run


to inform the bootloader about the kernel upgrade.

For those using elilo, you need to simply run


If you are using the generic kernel, also copy the initrd to appropriate directory in the ESP, for example:

 cp /boot/vmlinuz /boot/efi/EFI/Salix-Xfce-14.2/vmlinuz
 cp /boot/initrd.gz /boot/efi/EFI/Salix-Xfce-14.2/initrd

Obsolete packages

Some packages have been obsoleted and should be removed. Some have been replaced by new packages. You can remove all obsolete packages automatically with:

slapt-get --remove-obsolete --remove

Careful, because this will also remove all personal packages that you might have installed, if any. It will also remove any packages that used to be part of the Slackware or Salix repos in 14.2, but are not anymore in 15.0. Take a careful look at the list of packages to be removed and if you recognise anything that you want to keep, make a note. It might have been renamed to something slightly different. And it's never a bad idea to have a look at the Slackware CHANGES_AND_HINTS.TXT file:

Update caches

You'll also need to run this command:


This updates icon caches, font indexes, desktop and mime databases, pango files, glib schemas etc. You'll need to run this, or you'll probably won't be able to start a graphical environment and even if you do, you'll probably see garbage instead of readable characters.

Configuration files

After doing all the upgrades, run:


to accept or reject new configuration files. Make sure that you DO NOT replace your /etc/passwd, /etc/shadow or /etc/group files. If you do, you will lose all users/groups/passwords you have in your system. However, even if you do, you can get the old files back, they will be kept in the same locations, with an .orig suffix.

If you are starting your system in init 3 (console), instead of init 4 (graphics) and you start the GUI by running 'startx', you'd better refresh the xinitrc file in your home directory by running (while in init 3):


and selecting your preferred Desktop Environment.

Edit /etc/slackware-version file to fill in:

Slackware 15.0

This is not required but this is used by some apps to show your version (for example grub).

Optional packages

There are several new packages in 15.0 that you might care about or not.

You may want to use flatpak for some of your software needs:

slapt-get -i flatpak flatpak-tools

And if you want your system to look like the default in 15.0:

slapt-get -i qogir-icon-theme salix-gtk-theme salix-xfwm4-theme

(and change the respective settings in Xfce)

And if you want to get rid of annoying Client Side Decorations in GTK+3 applications:

slapt-get -i gtk3-nocsd