quote:
Original post by mrbastard
Most people just aren''t able or willing to keep track of current versions of 6 or so libs + dependencies.
You really not need to do this with Linux. Take Mandrake for example. It''s given an address to a software repository where Mandrake RPMs are uploaded. RPMs can be thought of as bundles of files along with data about how they should be installed on Linux (a little like an installer, but you don''t have to go through a typical GUI style installation procedure). There is a GUI tool that comes with Mandrake which lets you install, remove or update any RPMs installed on your system. You can either select a new RPM to install from the repositories you have setup (you can add new ones, for example one for a special gaming website), or download a RPM from the internet and tell it to install that. It knows all the dependencies on each RPM and works them out automatically.
For example, you want to install game X which needs version 1.5 of library Y, but you only have version 1.4 and game Y needs this. Mandrake will automatically upgrade the library for you before installing the game, which may even involve removing Y, updating the library, then reinstalling Y.
Once you understand it, it is honestly easier than installing Windows software. You don''t have to specify installation paths, everything is upgraded automatically, everything is removed cleanly and you can install everything from a GUI without having to hunt down installers from the internet. All you need to do is select what you want to install, click a button and wait for a popup to tell you it''s finished. Seriously, it doesn''t ask for any user intervention unless there is a problem.
Like when you have to install a game and don''t have DirectX, you have to obtain the game and DirectX and go through two installations prodecures. Automatically resolving dependencies in Linux makes this process easier for the user.
It''s not perfect. Sometimes it can get into a mess with dependencies where it cannot work out how to upgrade/remove something while keeping everything working, but there are better package managers such as Debian around.