Managing Repositories
openSUSE comes with an enormous amount of software in the official repositories. But, sometimes you just need something that isn’t in the default release. Either because the package isn’t offered through the official repos, or because you want to track software that’s ahead of the current release.
Adding a repository is a piece of cake. Just go to YaST (and give the admin password) and then select “Software Repositories” from the Software group. You’ll see the list of configured repositories you have already.
Click “Add” at the bottom of the dialog. Here you’ll get the Media Type dialog, where you can start the process of adding a repository. Usually you’ll want to just add an HTTP Uniform Resource Identifier (URI) with the address of the repo, but Zypper supports many other types including HTTPS, FTP, CD/DVD media, NFS, and so on.
Assuming you’re adding an HTTP URL, make sure “Specify URL” is checked and then click Next. You’ll be asked for the repository name (it doesn’t matter a lot what you put in here) and the URL to the repository. Then click “Next” and you should be good to go.
Some of the more popular community repositories are already pre-listed in the YaST module–so you don’t even need to know what the URLs are. Instead of clicking “Specify URL,” click “Community Repositories” in the Media Type dialog and check the repo or repos that you want to add. For instance, you might want the VideoLan repository for the ever-popular VLC media player.
Command line junkies have no fear: You can add repositories from the command line with no problem. The syntax is simple:
zypper ar URI "Name of Repository"
As an example, let’s say you want to add the VideoLan repo from the command line and you know the URI. Here’s how you’d do that:
zypper ar http://download.videolan.org/pub/vlc/SuSE/11.2 "VideoLan Repository"
Want to make sure that the repo was added? To see what repositories Zypper is checking use the lr command:
zypper lr
Finally, if you want to remove a repository, you can do that as well. Just run zypper rr # where # is the number of the repository. (You can get the number by using the zypper lr command.
Now, let’s take a look at some of the repos you might want to check out!
Browser Boosting
openSUSE ships with the latest stable Firefox, but if you’re a Web designer or just like to stay ahead of the curve, the latest stable is just not good enough. You’ll want to add a few repositories to grab the most recent builds of Firefox and get Google Chrome running as well.
To get the latest and greatest Firefox, check out the openSUSE mozilla:beta repository maintained by Wolfgang Rosenauer. He maintains packages for the latest and greatest (or at least the latest, depending on the quality of the release…) bits from Mozilla. Not only Firefox, but also Thunderbird, Prism, and a few other useful bits.
Google Chrome is not shipped in openSUSE. It’s still in developer preview and moving pretty fast. If you’d like to check out Google Chrome, you can get it through the Google RPM repository. Here’s how to add Google’s 32-bit repo from the command line:
zypper ar -t YUM http://dl.google.com/linux/rpm/stable/i386 google
Note the added option -t YUM. That’s because Google provides a Yum repository, rather than a native YaST repository. As you can see, though, Zypper supports Yum as well.
Nvidia Drivers
Yes, closed drivers are nasty business. Unfortunately, for users who have Nvidia cards, closed drivers may be the only way that they can enjoy their video card to the fullest.
If you don’t feel like building your own drivers, you can usually get the goods from the Nvidia repository. One way to do this is to use the One-Click installer on the Nvidia page on the openSUSE wiki.
But if you just want to add the Nvidia repo directly, head over to the page and follow the instructions under “The repository way.”
Packman
The most popular third-party repo for openSUSE is the Packman repo, and the largest. Here you’ll find a bunch of software that’s not shipped with openSUSE–some for legal reasons, some because it just hasn’t been brought into openSUSE Factory or the main distro.
Some packages do overlap, as well, but if you’re looking for software that’s not in the main openSUSE repos, the first place to check is Packman. You can search through the packages first before adding Packman if you’re unsure whether they have what you’re looking for.
Whatever you’re looking for, the odds are it’s been packages for openSUSE. Sometimes it’s just a matter of looking in the right place. If you don’t see it first in the official repos, be sure to check one of the ones I’ve suggested here or other additional package repositories.