> ~$ apt-cache search marble
> marble - globe and map widget
> marble-data - data files for Marble
> marble-maps - globe and map widget for mobile form factors
> marble-plugins - plugins for Marble
> marble-qt - globe and map widget (no KDE dependencies)

While this list might look over crowded and confusing, actually things are more straightforward than it seems.

I think I ought to explain a peculiarity of GNU/Linux applications: Modularity.

A program that we want to use may need (or be enhanced by) some libraries, data packs, plug-ins etc. These lowe-level "building blocks" are usually packaged separately so that they can be used by more than one high-level program.

Information regarding which package (an end program or a building block) needs which, is recorded in each package's metadata, so when you attempt to install an end program (a program that you will actually use) the system will automatically check for "dependencies" and will also install them along the original one, as long as these dependencies are missing (not already installed on the system).

In the marble list above, there are actually 2 end programs (marble and marble-qt) that you might want to install. The other "marble-something" packages are dependencies of these 2 end programs, so when you install e.g. marble-qt, then marble-data, marble-maps and marble-plugins will also be installed along, automatically.

While talking about dependencies, actually there are 3 levels of them. A package (program) may "depend" on another one - this is an absolute "sine qua non" requirement. May "recommend" another one - this not a hard requirement but recommended package enhances the original program. May "suggest" another one - which may be useful along the original one. Also, depending on system settings, recommended packages may be regarded as dependencies (hard requirements) as well.

This is one reason why you should stick to "Add/Remove Applications" until you feel comfortable with such details, because I think Add/Remove Programs will just list the end programs that you will actually use, and hide the "building blocks", making life easier for you. OTOH, Synaptic (likewise apt-cache command line tool) will show you every package available, be it a end product or a building block.

BTW, I would recommend "marble" if your desktop environment is KDE, and "marble-qt" if it is not. Because marble package seems to be heavily integrated to KDE environment, so it needs (depends on) the KDE suit. If you already use KDE, then this is no problem - most KDE dependencies should already already be installed in your current system, so only a few unsatisfied dependencies will additionally be pulled in. But if you are _NOT_ on KDE, then installing marble will indirectly install (pull in) the whole KDE suit (lots of extra "building block" packages) unnecessarily. In this case just install marble-qt, as it is not integrated to KDE = it doesn't depend on KDE packages. (as I gather from short package descriptions)

Reply via email to