Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
By motub at 2005-05-29 09:38
The 1-5 CDs or DVD you downloaded/got from a magazine's cover disk/bought from Mandriva/whatever contain the base Mandrake/Mandriva software and many extras. However, there are thousands of applications and games available that couldn't fit on those CDs, but are readily available from special locations on the Internet.
A piece of software is in general known as a package, but a package usually comes in one of two basic forms: source packages, and binary packages. Some special packages come in the form of script installers, but those are fairly rare and not relevant for this discussion. The basic difference between source and binary packages is that source packages have to be compiled to create an executable application (source is just the raw code that forms the building blocks of an application), whereas binary packages are precompiled, so they only need to be installed (just like Windows).
Mandrake/Mandriva is a binary distribution, which means that the distribution itself prefers that you do not compile from source (although it is do-able and on rare occasions unavoidable), but rather that wherever possible you install binary packages precompiled specifically for the distribution. It sounds easy, but isn't, always-- where are you supposed to get these Mandrake-specific binary packages?
Mandrake/Mandriva is an RPM-based distribution, which means that precompiled installable packages for the distribution will end in the file extension *.rpm. However, Mandrake/Mandriva is not the only RPM distro (SuSE and RedHat/Fedora are examples of others). RPMs compiled for SuSE or RedHat are not compatible with Mandrake/Mandriva, and vice-versa-- and you may not be able to tell which RPM-based distro the package was compiled for from the name alone, if you're traveling randomly to the download pages of any given software's website. What you, the user, need, is "one-stop shopping" for software for your distribution.
"One-stop shopping" exists, in the form of repositories. Repositories are collections of packages, mirrored all over the world, for each distribution. The Mandrake/Mandriva repositories have literally thousands of packages, all precompiled for Mandrake/Mandriva and ready to download and install. But before you can do so, you have to know where the repositories are, and then you have to tell Mandrake/Mandriva where they are.
Mandrake/Mandriva learns where such software is when you add repositories to your Software Media Manager. To see this resource, go to Kicker/Foot=>Configuration=>Configure your computer; or just click the Mandrake/Mandriva Control Center icon on your panel. Then go to Software Management. Unfortunately, the SMM only contains the CDs you installed from as sources for additional software. That is still necessary, and can be useful, but you want to add external Mandrake/Mandriva repository sources from the Internet. Of course, at the moment you don't know where they are, but fortunately, a site has been created to help you easily locate the Mandrake repositories closest to you and add them to your SMM.
Go to Easy URPMI, and follow the instructions there to add external repositories to your Software Sources Manager.
If you're on dial-up, make sure to check the "Use compressed index, much smaller than normal, with less informations" checkbox.
For those of you who installed one of the 10.2 betas before Mandrake became Mandriva and now want to upgrade, use "2005" when selecting your version; "2005" is what would have been called "10.2 Official/Community" if Mandriva was still Mandrake.
The instruction "Type this in a terminal as root" is performed as follows:
1) Open a terminal. This means Konsole if you use the KDE desktop, gnome-terminal if you use the GNOME desktop, or xterm under any desktop. You should be able to find one or more of these terminals in your menu or on your panel.
2) Type su and hit enter.
3) Type the root password at the Password: prompt and hit Enter. The password will not be echoed to the screen, even with stars, so type carefully.
4) If the password was correctly typed, the prompt should change from a "$" which indicates user access, to a "#" which indicates root access. All commands typed into this terminal window from this point on will be performed as if root had requested them. If this does not work (and you have correctly entered the root password), the problem is that the user is not a member of the wheel group; go to the Mandrake/Mandriva User Management tool in the Mandrake/Mandriva Control Center and add the user to that group, then try steps 2 and 3 again.
5) Select and copy one line of output from the Easy URPMI page (from urpmi.addmedia to hdlist.cz or synthesis.hdlist.cz depending on whether you checked the "use compressed index" box) and paste that line into the root terminal using CTRL+Shift+V (Ctrl+Shift+V is the "Paste" keybinding for gnome-terminal; it's Shift+Insert if you use Konsole, and middle mouse button-- or right and left buttons together if you don't have a middle button or wheel/button-- in an xterm). You should see the repository being added before you are returned to the prompt. Repeat for all repositiores listed in the Easy URPMI Step 3 output.
You should now be able to open RPMDrake (Mandrake/Mandriva Control Center=>Software Management=>RPMDrake (Install Software) and see a great deal of software available for download and installation. You will see even more if you change the filter at the top of the dialog from "Mandrake/Mandriva Choices" (the default) to "All Software by...." (I usually use "by group", but you can choose from several options). And of course, if you know what you want to install, you can just type the program name (or a partial name) in the Search box to filter the list.
To install any program, check its checkbox, and the program and all dependencies will be downloaded (or pulled off the CDs, which will be requested by Mandrake/Mandriva complete with ejection of your CD tray) and installed. Be warned that large programs with many dependencies will obviously take a long time for you to download if you're on dialup, so keep an eye on the details before clicking the "install" button.
You can also use urpmi <program_name> to install programs from the command line with full dependency resolution (RPMDrake is a GUI front-end for URPMI).
If you are using Mandrake/Mandriva 9.2 or lower, you may also get alarming-looking messages telling you that there was "no public GPG key found", and asking if you want to install anyway; if you are installing from Mandrake/Mandriva mirrors, you can safely install, and get the GPG keys later to stop this message even coming up.
GPG signatures are encryptions on the RPMs to ensure that the file has not been tampered with. The packager signs the final RPM with a private key and with a public key, then makes the public key available to the public (you and me). RPMDrake compares the key on the RPM with the key on your GPG keyring (the little keyring in your system tray when you run the Mandrake/Mandriva Control Center), and gives this error message if the two do not conform (in this case, because you don't have the key on your keyring at all, so RPMDrake has nothing to compare the RPM's key with).
Mandrake/Mandriva's public GPG keys can be found in the /base/ folder of the Mandrake/Mandriva mirror that EasyURPMI gave you as output for Step 3; if you put the url (/questions/without the "with synthesis.hdlist.cz" part) into a browser, and go up a level in the FTP site that will be displayed, you will see the /base/ folder. Go into that folder and you will see 3 "pubkey" files; select them and right-click to download them to a safe location. The public key for the PLF repository is right in the folder given in the Easy URPMI output, so you will see it if you type that address into a browser. Download that, too.
Once you have downloaded the keys, open a terminal, su to root (as above) and then use the cd command to browse to the folder that you saved the files to. Then do an ls to display the names of the files in that folder for easy reference for the next step.
Type gpg --import <keyfile_one_name> <keyfile_two_name> <keyfile_three_name> <keyfile_four_name> (that's why we displayed the file list; you should be able to type in the names correctly since you can just look above on the same terminal screen to see what they are), and hit Enter.
The keys should be added to your keyring, and you should get no more key-related errors when installing software unless there's really something wrong with the key. In which case, don't install the software, and check Mandrake/Mandriva-specific resources like the forums to try and discover what the problem is, or report it. It's usually not an actual issue (the maintainer could have changed their key, for example, and you didn't know to update yours), rather than the server being hacked and the files replaced by malicious clones (which is what GPG signing is designed to protect you from) but better safe than sorry.
Alternatively, you could upgrade to Mandrake/Mandriva >9.2, since under these later versions GPG keys are updated automatically when a repository is added or updated.
Extra Credit (community service):
If you've bought Mandriva, are a member of the Club, or just a dedicated user, write or petition Mandriva to add some form of interoperation with Easy URPMI to their first-run Wizard, their Help documentation, or even to the MCC itself. It is a disservice to both this wonderful distribution and those who have contributed to it by creating and maintaining repositories and the Easy URPMI site, not to mention a disservice to the user, that a user should not be aware of and have the ability to access the external software repositories as soon as possible after installing Mandriva. The Mandriva tools are far too good to deserve being crippled for lack of the information provided in this HOW-TO.