Another new feature in slack-get media system
There is one thing I hate a lot : answering stupid questions. It makes me loose my time and I certainly do not like that !
The problem is that slack-get is asking stupid questions ! Take the dependencies tracking for example :
Even if it find a package with the exact name you requested it propose to you all the matching results.
And one other thing I really don't like in slack-get (and maybe in other package manager) is that if it find the same package on more than one media it asks you to choose one.
I do not like that because it is typically something which can be decided by software itself. If I talk about slack-get, there is a simple way to prefer one media to another : you have to fill a <official-media> tag in the configuration file ! I mean, it is an obvious way to prefer this official media and not bother user asking him if he prefer to install amarok from Slackware's official servers or from linuxpackages.
But since, yuo can actually prefer this I added a new feature to the media system : a ranking system.
You can now add a <rank> tag in the medias.xml file (inside a <media></media> group), with an integer inside. Since it is a rank, the smaller the number is the highest priority the media get.
In a near futur (this week at most), I will implements the following new decision algorithm in the dependencies tracking and package installation/upgrade systems :
- if there is more than one result for a package check :
- check if there is packages with their name exactly equal to the request select them
- if their is more than one package like that (name == request) :
- check if the medias use ranks
- if yes, then select the package with the highest rank (the smaller number inside <rank></rank>)
- if not, check if the official-media have the requested package
- if yes, select the package
- if not, ask user to choose a package
- else if there is only one, select this package
- else (there is no package where name == request), ask user to choose between the original search results.
- else (there is only one response) select the package.
I think this algorithm, will help to not stupidly bother users by asking unnecessary questions. And since I am fully aware that some users will not like this automated thing, I will also add a configuration key and a command line option to allow them to enable/disable this system.
That's all for today !
See ya' for the slack-get development diary #8.