Novell's openSUSE 10.2 is an exciting desktop operating environment that includes or supports nearly every program you need for work and play. But there are those last few programs and issues that make openSUSE just short of perfect. Web browser plugins for some kinds of online content; MP3, Windows Media, and DVD movie playback support; and drivers for Atheros wireless devices and Nvidia and ATI video cards are the chief things holding openSUSE back for some users. This guide will help you remove as many of those barriers as possible.
Is this the right version of Hacking SUSE? This guide is for openSUSE 10.2. If you are looking for a previous version of this guide (SUSE Linux 10 or 10.1, or SUSE Linux Enterprise Desktop 10), you can find them in this directory listing of how-to articles on Software in Review. Why you need this guide openSUSE 10.2 -- as the name implies -- is comprised entirely of open source software. This guide primarily tells you how to install proprietary add-ons for which there are currently no free replacements. Generally this will require you to agree to restrictive software licenses. The DVD playback capabilities are in violation of the U.S. Digital Millennium Copyright Act (and similar laws in other countries), which many believe to be unconstitutional, unethical, silly, and a violation of consumer fair use rights (Click here for more information on DMCA reform). In other words, installing the DVD decoding software could be illegal where you live; therefore I'm not suggesting that you do it if it is, but the instructions are still here for educational and informational purposes, and for those who live in areas where DeCSS is legally acceptable. Furthermore, if you morally disagree with proprietary software and refuse to use it, this guide will be meaningless to you. Before you install If you are coming to this guide before installing openSUSE 10.2, you can make post-install configuration easier for yourself by downloading the Extras CD in addition to either the openSUSE CD set or the DVD. If you did not download this ISO and have not installed SUSE yet, go ahead and get it now from the openSUSE download page. Note that there is only one disc for both the 32-bit and 64-bit editions of openSUSE; this is because the proprietary extras are mostly 32-bit and will work with a 32-bit build of Firefox in the 64-bit edition. Issues related to bit-ness are addressed below where applicable. To add the Extras CD during installation, click the checkbox next to Include Add-On Products from Separate Media in the Installation Mode screen (it's after the license agreement), then follow the directions for adding the Extras CD. If you skip this step, you will have to restart the computer to get back to it -- there's no "Back" functionality for this screen. Near the end of the installation process you will be asked to set up some update servers. Most of that process is automatic, but you will be asked to look at a list of three installation sources and click the checkboxes for the options you want. Make sure you have marked the checkboxes for the /repo/oss/ and /repo/non-oss/ servers (these should be the first and third items in the list). Be warned that this entire repository installation process may take a long time -- anywhere from 30 minutes to more than an hour, even on a high-speed connection -- and you may have to retry some parts of it several times before they completely download. In some instances this process will fail; there is a section below that tells you how to fix it after installation is complete. If you've already installed openSUSE, don't bother downloading the Extras CD unless you plan on reinstalling -- just add the non-oss directory to your YaST software sources as directed below. Prerequisites This guide assumes you are using the traditional SUSE desktop environment, KDE. If you're using GNOME or a window manager, you're on your own as far as getting to the YaST utility and any other KDE-specific instructions. The majority of the information in this guide is environment-agnostic and you should be able to easily figure out how to translate the few KDE-specific steps. Hacking openSUSE 10.2 applies only to the x86 and AMD64/EM64T processor architectures. It does not cover the PowerPC architecture. If someone who has such a machine is willing to contribute a section specific to PPC, please email me at jem at thejemreport.com. The "CD not found" error before installation If you have a Core 2 Duo-capable motherboard and are getting an error message about the installer not being able to find the CD/DVD after you have already booted from it, the problem is likely with your IDE controller. In some modern motherboards, the parallel ATA controller has been taken out of the chipset and moved to a third-party drive controller. That third party is JMicron, and this problem most famously occurs in the Asus P5B motherboard, though other brands and models can be affected as well. First, it will help to do a quick workaround in your BIOS. Press the Del, F1, or F2 key to get into your system BIOS just after powering it on. There should be a message somewhere on the screen that tells you which key to press; if you are not sure, press all three repeatedly and you're sure to get there. Somewhere in the BIOS setup you should see an option for the JMicron drive controller ("Onboard Devices" in the P5B BIOS menu). Set it to AHCI mode, then save and exit the BIOS setup utility. Boot from the openSUSE 10.2 CD 1 or DVD. You'll still get the same message, but now you're better enabled to work around it. Press Enter to get past the error message, then choose your language in the following screen. That will bring you to the main menu. Use the down arrow key to select the Kernel Modules option and press Enter. In the next screen press Enter again to select the default option for IDE/RAID/SCSI Modules. In the long list that follows, find both the JMicron and the Generic IDE drivers, select them, press Enter, then press Enter again when you're asked for special options to pass to them. You will have to do this twice -- one time for each driver. When you return to the kernel module screen, use the Tab or arrow keys to select Back, and press Enter. That should put you back into the Main Menu. Now select the option for Start Installation or System and press Enter, then select Start Installation or Update and press Enter, and lastly select the CD-ROM as the source and press Enter. The normal graphical installation procedure will commence. If the above does not work, write down installation source mirror addresses from the link in the installation source section below and use them to install openSUSE over FTP. The only difference in the procedure will be to change the above instructions to select FTP instead of CD-ROM as the source. Adding sources to YaST By default, openSUSE 10.2 adds online software repository sources to YaST; previously you had to do this manually. There are still several third-party sources that may need to be added to bring your computer up to speed, though. To add sources, go into the YaST utility by clicking on the green chameleon menu icon in the lower left corner of your screen. Select the Computer tab, then scroll up and click on Administrator Settings (YaST). You'll be prompted for your root password. Go ahead and type it in and press the Enter key. You're now in YaST, and the Software category is already selected by default. Click on the Installation Source icon. This will bring up a window that will allow you to add software repositories so that you can download add-on software. You'll notice that your CD or DVD installation media is already listed, along with Web-based sources for OSS and non-OSS software and software updates. Make sure that "On" is listed in the Status field for your OSS and non-OSS Internet sources. If it is not, select the source, then click on the Source Settings button, then select Enable or Disable. To add a source, click the Add button, then click on HTTP in the popup menu. Add the following Internet addresses to the Server Name field and then click on OK (follow the directions below for the sections that apply to your situation): Windows Media, MP3, and DVD playback support Add this address: packman.unixheads.com/suse/10.2 You can also select a mirror from this list if the above address doesn't work or is too slow, or if you are not in the United States. When you add the above address and click Next, a warning message about an unknown GPG key will come up. Click the checkbox next to Do Not Show This Message Again and click Yes. The next screen will ask if you'd like to import the aforementioned GPG key. Click Import. Atheros wireless network devices Add this address: madwifi.org/suse/10.2/ When you add the above address and click Next, a warning message about an unknown GPG key will come up. Click the checkbox next to Do Not Show This Message Again and click Yes. The next screen will ask if you'd like to import the aforementioned GPG key. Click Import. Nvidia graphics cards Click the radio button next to FTP, then add this address: download.nvidia.com/opensuse/10.2/ When you add the above address and click Next, a warning message about an unknown GPG key will come up. Click the checkbox next to Do Not Show This Message Again and click Yes. The next screen will ask if you'd like to import the aforementioned GPG key. Click Import. Adding distribution software sources If you did not have an Internet connection when you installed openSUSE, if the registration of update servers failed, and/or if you did not use the Extras CD, you will need to add some Internet installation sources. While it may be automatic and convenient during the installation process, there is no documented way of getting YaST to set up sources on its own. To do it manually, find a local mirror in this list, and in the table for the mirror closest to you, copy-and-paste the link addresses for Installation Repository and Addon-NonOSS-Installation Repository into the YaST Installation Source screen (minus the "http://"). It will take several minutes for these to register with your system. Once they're in, make sure Status is set to "On." At this point you can disable the CD installation sources by clicking the Source Settings button and then clicking on Enable or Disable from the drop-down menu. To register an update server, click on Online Update Configuration in YaST's Software section. This process is automatic and requires only some obvious button-clicking on your part. Installing the extras When you're done adding sources, click the Finish button in the lower right corner. The new server addresses will synchronize with the ZEN Management Daemon, then the Installation Source window will close, bringing you back to YaST. Click on Software Management. When you get to the next screen, you'll see a search box and a big empty field on the right side of the window. In the search box, type in the search terms below and select the following packages that apply to your situation. When you've selected all of the packages you want to install, click on the Accept button to install them unless otherwise directed: The Flash, Java, and RealPlayer browser plugins These are all installed by default if you used the Extras CD. If you did not, then add the installation sources as instructed above, and search for and mark the following packages for installation in the YaST Software Manager: - flash-player
- realplayer
- java-1_5_0-sun
- java-1_5_0-sun-plugin
Proprietary audio and video codecs, and DVD playback capabilities Type in "w32" and press Enter. In the right-hand field, mark the w32codec-all package for installation. Go ahead and complete the software installation screen by clicking the Accept button. As soon as the process is complete, right-click on the ZENworks update icon in the lower right. It should look like a blue globe or an orange circle with an exclamation point in the middle (if there are updates waiting). In the small popup menu, click on Refresh. If you have not yet applied any updates to your system, you will be asked to add a privileged user at this point; follow the simple directions for completing this process and then click Refresh again. As soon as ZENworks is done polling the new server addresses you added, it will show some updates. Go ahead and install all updates by clicking on the ZMD icon again (it should be an orange circle now) and go through the obvious steps to apply the updates. You may notice that the xine-lib or totem-plugin packages are slated for removal; this is normal and expected. The last step is to add a DVD decoder. 32-bit users can do this by downloading the following RPM: http://download.videolan.org/pub/libdvdcss/1.2.9/rpm/libdvdcss2-1.2.9-1.i386.rpm. Right-click the link and save it to your desktop, then right-click it on your desktop, select the Actions section of the popup menu, then click on Install software with YaST. Theoretically you should be able to open it with "Install Software" as well, but that method does not seem to work for some people. Log out, then log back in again and you should be able to play DVD movies. DVD playback on 64-bit machines Instead of the 32-bit RPM listed above, you must download the DeCSS source code and compile it yourself. So right-click the following link and save it to your desktop: http://download.videolan.org/pub/libdvdcss/1.2.9/libdvdcss-1.2.9.tar.gz Now open a Konsole terminal by going to your chameleon main menu, then clicking on Applications, then System, then Terminal (you may have to scroll down the list a little to see it), then Terminal Program (Konsole). A Konsole window will come up. In it, type this command to switch to the Desktop directory: cd ~/Desktop Now you need to switch to root permissions: su It'll ask for your root password -- go ahead and type it in, then press Enter. Next, decompress the file you just downloaded: gzip -d libdvdcss-1.2.9.tar.gz Then unpack it from its archive by using this command: tar xvf libdvdcss-1.2.9.tar The file will un-tar to its own directory, so you can now safely delete the tar archive: rm libdvdcss-1.2.9.tar Now you need to compile the DVD decoding library. Change to the directory first: cd libdvdcss-1.2.9 And then run the configure program with this command (don't leave out the dot and slash): ./configure When it's done configuring, run the make command to build the files (if you don't have make or gcc installed, stop here and add them via YaST): make Finally, it's time to install the library: make install You can now safely delete the libdvdcss directory: cd .. && rm -rf ./libdvdcss-1.2.9 You now have DVD playback support. It won't work until your library path is updated. There are a variety of ways to do that, but the easiest is just to restart your computer. The Adobe Acrobat and Totem browser plugins WARNING: There is a reason why this section is where it is in this guide. If you added the Packman repo in a previous step, you probably had to remove the browser plugin for your video player. I said that this was expected before; now you are going to fix the problem. Search for acroread and press Enter. Click the checkbox next to the acroread package in the right-hand pane. Search for totem-browser-plugin and install it. Do not install the totem-plugin package; that is the old, broken package that doesn't do Windows media files. Theoretically you could install the vlc-plugin instead, but it seems to have more package overhead than the Totem plugin, especially for GNOME users. Use whichever you want -- they both do the same thing. The MPlayer plugin is no longer available through Packman for openSUSE. 64-bit browser plugins 64-bit users will have some trouble with the Java and video browser plugins because they are 64-bit by default, whereas Firefox in openSUSE is 32-bit by default so that it can better support proprietary plugins. I haven't had much luck trying to install i586 RPMs for these plugins in 64-bit openSUSE, but I did find that using the 64-bit version of Konqueror solved nearly every problem. Anything that wouldn't play or run in Firefox would play or run in Konqueror. Since Java Web applets are fairly rare, and most video sites are currently publishing in Flash or offer RealPlayer as an alternative, I suggest using Firefox for most things, and Konqueror (or Epiphany in GNOME) when Firefox can't play something. Atheros drivers Type in "madwifi" and press Enter. In the right-hand field, click the checkboxes next to these packages: - madwifi
- madwifi-kmp-default
Click Accept or skip down to the next appropriate heading to install more packages. You may be asked to agree to a license; you know the drill here. Now that you have the driver installed, you have to load the driver modules. You can do this from the command line by typing sudo modprobe ath_pci and pressing Enter, or you can simply shut down and restart the computer. Next, go into YaST again and click on the Network Devices tab on the left. Click on Network Card on the right. When the setup screen appears, click the radio button next to the User Controlled with NetworkManager option (it may be selected by default, depending on what method you selected during installation), then click Next. The next screen shows you a list of network cards. If you have a wired connection, it will already be shown as configured if you used it during installation. Your wireless network card will be shown as Not configured in the list, and it'll be named by its brand, model, and chip name. Click on the Atheros-based device, then click Edit. Click Next unless you have a static IP address, in which case you should know what to do here. The next screen sets the ESSID name and encryption options. If you have an open wireless access point, just click Next here, then click Yes, then click Finish -- you're done! If you have a restricted network, put in the appropriate settings here, then click Next, then Finish. To change between wired and wireless, or to change to a different wireless network, click the KNetworkManager in the lower right corner. It's usually between the clock on the Klipper icon, and resembles either a signal meter or a graphical representation of whatever device (wired or wireless) is connected. If there is no connection, it appears as an X. Nvidia video drivers Search for nvidia and mark the following packages for installation: - nvidia-gfx-kmp-default
- x11-video-nvidia
Click Accept or skip down to the next appropriate heading to install more packages. You may be asked to agree to a license; you know the drill here. Now open a Konsole terminal by going to your chameleon main menu, then clicking on Applications, then System, then Terminal (you may have to scroll down the list a little to see it), then Terminal Program (Konsole). A Konsole window will come up. In it, type this command to switch to root permissions: su - (The dash after the su command gives you the root user's environment path). Once you type in your root password, type in this command to load the module you just built (restarting your computer will do this automatically): modprobe nvidia Close all open programs, then press Ctrl-Alt-Backspace to restart the X.org server. You should now have hardware 3D acceleration. ATI video drivers WARNING: These instructions are only a placeholder for a future ATI driver release. If you are reading this paragraph, then ATI has not yet released a driver that supports X.org 7.2, which is what ships with openSUSE 10.2. Following the below instructions will cause X.org to fail to start. I am not sure if this procedure will work with an X.org 7.2-compatible ATI driver when one is released, but it should as far as I can tell. There is also an ATI YaST installation source that may work in the future, but does not currently have a driver that works with openSUSE 10.2. In other words, if you have a late-model ATI video card, 3D acceleration is unavailable at this time. The only workaround is to downgrade to an earlier X.org release, which is a lot of work and will ultimately be unmaintainable, so I strongly suggest that you either wait a few weeks for ATI to catch up to Novell, or choose a different GNU/Linux distribution that better meets your 3D rendering needs. openSUSE 10.2 ships with the newly revamped open source radeon driver. That may be fine for 2D rendering, but it doesn't do direct rendering for 3D graphics. To get hardware 3D acceleration (and for XGL support), you still need the proprietary ATI fglrx driver. To install the hardware-accelerated ATI driver, the following packages have to be installed. Some are installed by default -- check to make sure they're all there by typing these names into the Software Management's search box. If they are not there, install them and all of their dependencies before you continue: - gcc
- make
- kernel-source
- kernel-syms
- compat-expat1
- expat
After that, open up a Web browser (it doesn't matter which one) and go to the ATI driver Web site. In the left field, click on Linux x86 or Linux x86_64 depending on which version of openSUSE you installed (x86 is 32-bit, x86_64 is 64-bit). In the middle field, click on the brand that matches your video card. For most people this will be Radeon or Mobility Radeon, though a small number of readers may have one of the other cards listed. If you are not sure which card you have, consult the documentation that came with either your video card or your computer. After you have clicked the link for your card brand, the far-right field will show a list of model numbers. Click the one that corresponds with your video card model, then click the little green GO button under the field. If you do not see your model in the list and it is an older card (the original Radeon or the Radeon 7000, for instance), openSUSE should already have hardware 3D support for it in the open source radeon or ati drivers. Right-click the green link that says ATI Driver Installer. It should be in the first row under the Download Link column. Select Save Link As (or Save Target As, or whatever it is in your browser of preference) and in the ensuing file dialogue, choose to save it to your user's home directory. If your username is onyxia , then save the file to the /home/onyxia directory. After the file finishes downloading, open up your home folder by clicking the house icon in the lower left portion of the screen. You should see the file you just downloaded among a few standard directories. Right-click on the ati-driver-installer file, then click Properties in the popup menu. When the properties window comes up, click the Permissions tab, then click the checkbox next to is executable, then click OK. Now open a Konsole terminal by going to your chameleon main menu, then clicking on Applications, then System, then Terminal (you may have to scroll down the list a little to see it), then Terminal Program (Konsole). A Konsole window will come up. Type this in and press Enter to make sure you're in the right directory: cd Now it's time to run the ATI driver program as the super user. But first, a note about long file names: When you have to type in a long file name, you don't have to type the whole name into a terminal window. Instead, you can have the terminal do the work for you. Just type the first few letters of the filename and press the Tab key, and the file name will be automatically completed for you. This is useful in situations like the one you're in now, where there is a long and complex file name to type in. This feature is known as tab completion. So type the following command into your terminal, and use the Tab key to complete the ATI driver file name, then press Enter to execute the command: sudo sh ./ati-driver The sudo command runs the command that follows it as the root user. You could also use the su command to switch to root, but it's easier to cut-and-paste if everything's in one line. The sh command runs a shell script, which is basically what the ati-driver-installer program is. The window will go blue and you'll be presented with a basic analysis of your computer's architecture and operating system. Don't worry if it shows your 64-bit system as "x86" -- that's a bug in the message. Press Enter to continue, then press Enter at the next screen as well. For some reason, as of this writing, the program will again show you the system analysis screen. Press Enter to get past it again. Welcome to the license agreement. Basically it says that you can't do anything with anything, ever, no matter what -- more or less a standard proprietary license agreement. Read it if you want, but press Enter to get to the next step, which is to agree to the license. Whether you agree or not, if you want to install this driver you have to press Enter here (Yes is selected by default). The next screen asks what kind of installation you'd like to perform. Just press Enter here. After that you'll see a brief progress meter that shows the driver's many little pieces being transferred to your operating environment. When it's done, you'll be asked if you would like to launch a Web browser. Since this only leads back to the ATI/AMD site, press the right arrow key to select No, then press Enter. A parting message tells you to run the aticonfig program. Don't bother with that -- all it does is overwrite your X.org configuration file, which you don't need to do because you have YaST to do it for you. Or more specifically, you have SaX2, the component of YaST that handles X.org configuration. You can't do sudo on this command because it won't allow access to your X session, so you will have to switch to root permissions by typing this and pressing Enter: su - The dash after the su command gives you the root user's environment path. Anyway, once you type in your root password, type in this command to load the module you just built (restarting your computer will do this automatically): modprobe fglrx Now type this in: sax2 -r -m 0=fglrx That brings you to SaX2 and forces it to use the proprietary ATI driver instead of the open source one that it wants to use by default. You may notice that your monitor settings have gone awry here; you may have to change the monitor, resolution, and color depth. Ideally you want the maximum resolution that your monitor is designed for (or slightly less if you like big text), 24-bit color depth, and make sure the checkbox next to Activate 3D Acceleration is marked (it's at the bottom of the window). When you're done, click OK. A popup message will ask if you'd like to test the new configuration. Click Save, then click OK. Close all open programs, then press Ctrl-Alt-Backspace to restart the X.org server. You should now have hardware 3D acceleration. The End And that's all you need to do to make openSUSE into a maximally useful desktop operating environment. Aside from running Windows and OS X binaries, openSUSE 10.2 can do everything that proprietary operating systems can and more. If you have trouble with the directions in this guide, or if you run into problems that aren't covered here, click the link below to visit The Jem Report's discussion forum -- we'll do our best to help you. Please note that you are not entitled to support through this forum; it is offered purely as a gesture of goodwill, so be nice, be patient, post in the appropriate forum topic, and try to describe your problem in detail. In return we promise not to demean you or call you a "noob." Discuss this article or get technical support on our forum. Copyright 2006 Jem Matzan. |