now i am sure this is CRUX specific. i am very much hungry on getting an answer to this question as it is revolving in my brain since beginning. prt-get is a front-end to pkgutils, the CRUX ports-system, and it handles dependencies automatically while installing packages. i want to know why it does not handle dependencies while remove that specific package which is quite opposite to apt-get. i know we have "pkgfoster" available but why that "removal dependency-handling" was not built into prt-get when we have built "installation using dependencies". may be because of KISS approach but myself, being a newbie failed to see a connection. may you explain please ? -- http://arnuld.blogspot.com/
On Fri, Jun 08, 2007 at 06:11:01PM +0530, arnuld wrote:
prt-get is a front-end to pkgutils, the CRUX ports-system, and it handles dependencies automatically while installing packages. i want to know why it does not handle dependencies while remove that specific package which is quite opposite to apt-get. i know we have "pkgfoster" available but why that "removal dependency-handling" was not built into prt-get when we have built "installation using dependencies". may be because of KISS approach but myself, being a newbie failed to see a connection. may you explain please ?
There is no 'why'; there is just no need for this feature. In my opinion prt-get should not remove any ports on its own. To get rid of dependencies which you don't need anymore, you can use pkgfoster or write a very small script by yourself. Regards
Simon Gloßner ha scritto:
On Fri, Jun 08, 2007 at 06:11:01PM +0530, arnuld wrote:
prt-get is a front-end to pkgutils, the CRUX ports-system, and it handles dependencies automatically while installing packages. i want to know why it does not handle dependencies while remove that specific package which is quite opposite to apt-get. i know we have "pkgfoster" available but why that "removal dependency-handling" was not built into prt-get when we have built "installation using dependencies". may be because of KISS approach but myself, being a newbie failed to see a connection. may you explain please ?
There is no 'why'; there is just no need for this feature. In my opinion prt-get should not remove any ports on its own. To get rid of dependencies which you don't need anymore, you can use pkgfoster or write a very small script by yourself.
Regards
or you can use ilenia, an unofficial package manager for CRUX. Regards, Alfredo -- bisco at cruxppc dot org CRUX PPC Team! [http://cruxppc.sunsite.dk]
On Fri, 8 Jun 2007 18:11:01 +0530 arnuld <geek.arnuld@gmail.com> wrote: _omissis__
i want to know why it does not handle dependencies while remove that specific package which is quite opposite to apt-get. i know we have "pkgfoster" available but why that "removal dependency-handling" was not built into prt-get when we have built "installation using dependencies". may be because of KISS approach but myself, being a newbie failed to see a connection. may you explain please ?
you can try # ilenia -R <port> but be very careful when do it greetz, --- vesuvio | LinuxMachine 156116 powered by GNU/Linux CRUX SIP: 652969@ekiga.net # GnuPG/PGP Key_ID: 0x378EECB8
On Fri, Jun 08, 2007 at 18:11:01 +0530, arnuld wrote:
now i am sure this is CRUX specific. i am very much hungry on getting an answer to this question as it is revolving in my brain since beginning. I guess the answers to it might have some (historical :-)) value, so I feel inclined to explain.
prt-get is a front-end to pkgutils, the CRUX ports-system, and it handles dependencies automatically while installing packages. i want to know why it does not handle dependencies while remove that specific package which is quite opposite to apt-get. Well 'prt-get install' doesn't install dependencies either, unlike apt-get.
So one first answer to your question is consistency: # prt-get install openbox # prt-get remove openbox Now, assuming that the former installs only openbox and no additional dependencies, if the later would remove openbox plus dependencies that would be inconsistent, and most certainly surprise the user. Also see http://en.wikipedia.org/wiki/Principle_of_least_surprise
i know we have "pkgfoster" available but why that "removal dependency-handling" was not built into prt-get when we have built "installation using dependencies". may be because of KISS approach but myself, being a newbie failed to see a connection. may you explain please ?
So IOW, why is there no 'depremove'... The reason why it's not there so far is that it's somewhat hard to get it right: a. Since there's no meta data in the pkgdb, there's no way to tell the actual dependecies of a package (unless their dynamically linked, in which case ldd magic can be used). The dependencies in the Pkgfile might change, in which case 'remove' could leave stale dependencies around. b. there might be packages depending on others without having it listed as a dependency in the Pkgfile. Using ldd, it should be possible to identify those, but that comes with a major speed penalty (check all installed packages whether they're linked against it) c. Some package may have no dependent packages, but you want to keep them nevertheless. Consider this real world example: the window manager 'openbox' comes with a configuration tool, called 'obconf'. The 'obconf' port from the portdb depends on 'openbox'. Now imagine you've had openbox installed before, and decide to try 'obconf'; after a while you realize you don't like it. 'prt-get remove obconf' as you imagine it would then remove openbox as well, since there are no other packages depending on it on the system. Here, you have to bring in external knowledge about the user's preferences. One of my credos for prt-get has always been "If you can't do it right, don't do it at all", and with that in mind, adding a 'depremove' feature which would potentially do the wrong thing at times seemed a bad idea. Maybe in the future the gain of having it will overweight the costs, however for the time being just keep in mind that it's very easy to do what you want with the existing commands, as pointed out in an earlier thread of yours [1]. Hope this clears it up. Johannes References: 1. http://lists.crux.nu/pipermail/crux/2007-May/007510.html -- Johannes Winkelmann mailto:jw@smts.ch Zurich, Switzerland http://jw.smts.ch
participants (5)
-
acrux
-
arnuld
-
bisco
-
Johannes Winkelmann
-
Simon Gloßner