Hacker News new | ask | show | jobs
by morsch 5203 days ago
Like I said, the three line process is trivially scriptable, so you could make a one-liner script that works like you describe, ie. install https://foobar.com/repositoryX pkg or install ppa:xorg-edgers/ppa nvidia-graphics-drivers. I suppose you could combine the two parameters into a single URL to make it more familiar for users.

I don't see why it'd have to be integrated into apt-get itself, which does other things. The next step would be to create this a GUI process and to integrate it into apt-url, to make it easy to install stuff from the web. Of course making it easier to install stuff from untrusted sources also makes it easier for users to install malware, which I recon is why they haven't made it this easy yet.

If you want to have the ability to pull updates, you need some location to query for them, and that location is the repository. Even if it's just for a single package. If you want to install a single package without updates, there's deb files.

1 comments

I don't see why it'd have to be integrated into apt-get itself

That's exactly what I'm talking about. To give just one of many reasons: Because currently 'apt-get update' fails hard as soon as a PPA repo disappears. These corner cases must not exist. This is fundamental infrastructure, save the "easy workarounds" for higher levels.

Apt has been "almost there" for about 10 years now. But "almost" is not good enough - neither for desktop-users, nor for professional deployments with puppet/chef that have to fight the same and similar issues (e.g. idiotic license seed files, key conflicts, daemons auto-starting after installation, unreliable exit codes/error reporting, insufficient logging, insufficient hooks to override defaults).

We're in a state of inertia where everyone is so used to working around ever the same bugs that they're not even recognized as bugs anymore. I should absolutely not need a ~80 line puppet manifest or chef cookbook to make apt behave right. Desktop users should absolutely not have to find a bash-script (no matter how small) to be able to seamlessly install third party software.

If you want to have the ability to pull updates, you need some location to query for them, and that location is the repository. Even if it's just for a single package. If you want to install a single package without updates, there's deb files.

I'll quote pg on this: If you think something is supposed to hurt then you're probably doing it wrong.

Apt is a beautiful concept. Sadly the implementation stopped evolving shortly after becoming "good enough" rather than proceeding to "the best we can possibly make it".

Because currently 'apt-get update' fails hard as soon as a PPA repo disappears.

No, it doesn't:

  W: Failed to fetch http://repository.spotify.com/fake-
  url-to-fool-apt/dists/stable/non-free/binary
  i386/Packages  404  Not Found

  E: Some index files failed to download. They have been
  ignored, or old ones used instead.
All the other repositories are refreshed as usual. Again, apt-get and the rest of the underlying infrastructure is not the problem. I agree that users should not have to find a script, I'm just saying that's a reasonable way to solve the problem. The script should be part of the distribution, just like add-apt-repository, another script, already is.

(That said, I can agree that integrating this functionality into apt offers a chance of deeper integration in the future. And while it's not the Unix way, it may be that the Unix way has stood in the way of an ideal Unix desktop experience for some time now.)