Sunday, May 16, 2010

Playdeb, and ubuntu wishlist items

I'm a huge fan of playdeb. The fact there is an apt URI handler available in ubuntu makes everything trivial - and I'd encourage lots of existing games to simply link to playdeb for a stable version.

What does annoy me though - because software installation in ubuntu is nearly flawless as it is - is that I can't have two package managers running at the same time.

Why not? Why can't I queue up several things to install? I can do that in windows; why do I have to wait around and install things one at a time?

If another package manager is working; why not prompt me with a question; rather than an error? "Another package manager is working, would you like to queue this installation task until after it has finished?"



There's some inklings about this, but most miss the point - Bug #74134 wants to make the failure more user friendly; but why should it fail at all?

I've opened a blueprint for it; which is probably a dupe; but I couldn't find anything specifically.


I imagine this to roughly look like the below for apt (if apt were magically written in PHP):

$stdin = fopen("php://stdin");
$path = ...; // /path/to/apt/lock/file/majigger
if (!is_writable($path)) {
print "Another package manager appears to be working; would you like to queue this installation? [Y|n]";
$ans = fgets($stdin);
if ($ans === "n") {
exit(0);
}

while (!is_writable($path)) {
sleep(1);
}
}
install($package);


Perhaps you'd want to cover a few more edge cases, or make it unit testable, but you get the idea. It doesn't seem to hard either for others, like update-manager or synaptic - probably beyond papercut size though.

No comments: