Wednesday, April 19, 2006

» How to use smart with SUSE Linux Factory

The current interim release candidate of SUSE Linux 10.1 is RC1. As probably everyone knows, it still has a few major issues with the new package management backend in YaST2, which is quite unfortunate because apart from that, 10.1 is awesome. As an alternative, you might want to use the Smart package manager, for which I provide RPM builds for SUSE Linux (FTP / mirror). My Smart RPM packages come preconfigured with my repository as well as packman and the SUSE Linux repositories (inst-source, inst-source-java and online updates). For the 10.1RC1 RPMs of smart, the preconfigured repositories are wrong, as they point to the locations where the repositories of 10.1 final will be available. Here is how to change the channel (in smart speak) / installation source (in YaST2 speak) configuration to use the SUSE Linux Factory repository instead. (and no, you can't use an online repository of 10.1RC1, that snapshot is only provided as ISO images)

Install smart

First things first, let's install the smart RPM for 10.1RC1 (if you haven't done so already). Here is how to do it with YaST2 (from a shell, as root):
yast2 --install
or with this command if you have a 64bit system (AMD64 or Intel EMT64):
yast2 --install
In case that doesn't work (because YaST2's package management backend still has some issues as of 10.1RC1), here is how to do it with rpm directly:
rpm --install -hv
or like this for a 64bit system:
rpm --install -hv
rpm might complain that you don't have the required package rpm-python installed on your system. If that's the case, use YaST2 to install rpm-python first, and then repeat the rpm command as above. You can also use rpm directly to install rpm-python:
rpm --install -hv
or like this on a 64bit system:
rpm --install -hv
Note that newer versions of smart might be available in the mean time, so please check the latest smart version/release first by pointing your web browser here: and pass the right URL to the yast2 command above.

Remove channels for SUSE Linux 10.1 final

Now that smart is installed, we have to remove the existing smart channels for 10.1:
smart channel --remove suse-apt-base-gwdg
smart channel --remove suse-apt-update-gwdg
smart channel --remove suse-apt-security-gwdg

Add the SUSE Linux Factory channel

The next step is to add a channel for the primary SUSE Linux Factory repository:
smart channel --add factory type=rpm-md    baseurl=

Add a mirror

And finally, let's add the mirror to speed up downloads and to avoid putting to much load on
smart mirror --add

Perform the upgrade

To actually perform the upgrade, use the following command:
smart upgrade --update


Anonymous Anonymous said...

Thanks Pascal. Could you tell me where to find sources for non-oss packages, particularly flash and java? Thanks.

Anonymous Anonymous said...

Thanks Pascal that certainly helps. Are third party packages, eg flash/java/packman, available anywhere?

Blogger Loki said...

The non-OSS package channel ("extra") is being added automatically (well, smart will prompt for confirmation ;)) if you upgrade to my smart package 0.41-22

The "inst-source-java" and packman repositories are already included as channels in my smart package as well.

Anonymous Anonymous said...

Will these work with the final release of SuSE Linux 10.1?

Anonymous Anonymous said...

Smart is great but why do you use the as channel? It could be because I'm on the west coast but I've had nothing but trouble with this source and the speed is slower than dial-up. It took 3 1/2 hours to download the J2RE package. No trouble at all with other packages. It would be nice if there was a list of mirrors so that a user could select one that worked better for them.


Post a Comment

<< Home