|
||||
Almost all package managers have one thing in common, they need superuser privileges to install packages. Once packages are installed by the superuser user, there is no way to know by looking at a file to which package it belongs to, because system shows all installed files belongs to the superuser user. Package information are normally stored in a database. In case if this database is corrupted for some reason, there is no way to reliably remove files installed by a package. Since the superuser is used to install a package, a file with a same name already installed by another package can easily get overwritten without your knowledge, because a Unix system won't complain when you use the superuser. This normally happens when you install packages from source using 'make install'. Tomahawk uses a radically different Package Management System. Packages are installed by normal users called package users rather than the superuser. It doesn't maintain a database, therefore, there is nothing to corrupt. Once a package is installed by a package user, all files installed by that package user are marked in the system as installed by that package user. This is one of the standard house keeping information kept by any Unix-based file system. Therefore, in Tomahawk Desktop, just by looking at a file, you can tell to which package it belongs to. In Unix, a normal user cannot a remove or change a file belongs to some other user. Therefore, when you install a package in the Tomahawk Desktop, there is no way to accidentally or deliberately remove or change a file installed by any other package. Since all files carry who installed it, just by scanning the entire file system, you can list or remove all files installed by a particular package.
|