Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Good question, I personally find gVisor-like [0] snippets that suggests to copy & paste in order to install the program as the most pleasant way:

   (
     set -e
     URL=https://storage.googleapis.com/gvisor/releases/release/latest
     wget ${URL}/runsc ${URL}/runsc.sha512
     sha512sum -c runsc.sha512
     rm -f runsc.sha512
     sudo mv runsc /usr/local/bin
     sudo chmod a+rx /usr/local/bin/runsc
   )
Thanks to the used parentheses it feels like a "one-liner" script. Is there any better way to share installation script?

[0]: https://gvisor.dev/docs/user_guide/install/



Yes, a .deb package. Much easier to UNinstall. That's the biggest problem with these install scripts, they give a crap across your entire system and it's not obvious how to get rid of it if you decide you don't want it.


Actually, deb is way how to "distribute" software not to "just" install something. Let's say I would like to install Docker I will need to type following commands in case of Ubuntu:

  (
      sudo apt-get update
      sudo apt-get -y install \
          apt-transport-https \
          ca-certificates \
          curl \
          gnupg-agent \
          software-properties-common
      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
      sudo apt-key fingerprint 0EBFCD88
      sudo add-apt-repository -y \
          "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
          $(lsb_release -cs) \
          stable"
      sudo apt-get update
      sudo apt-get install -y docker-ce docker-ce-cli containerd.io
  )
How would `.deb` help you to install/uninstall such software? Do mind mean embedding some scripts to add third-party repository and then install your app?

Even then, what it actually changes from the script I have already suggested in previous post? It is still about downloading two files (signature and packaged application) and install it (e.g. via dpkg --install).


Why not just:

    sudo apt install docker.io
And for more up-to-date versions, why doesn't Docker create a ppa? At most it should be something of the sort of:

    sudo apt-add-repository ppa:docker/docker
    sudo apt install docker
That's how these things were intended to work.


PPA's are just Ubuntu's way to make creating APT repositories easier. Those steps above are the longer way of achieving the same result without relying on Canonical's infrastructure. The same instructions can also be used with minor changes to also work on Debian and Raspbian (and could probably work on most other Debian-based distros).

Those steps above are covering all the bases for Debian-based distros, adding the signing keys Docker uses for their packages, and then finally inst


You can just download the .deb files from https://download.docker.com/linux/ubuntu/dists/focal/pool/st... and install them. No need to add another repo.


Erm, no. I think I haven't been clear in my first post. I am not asking about "how to install apt package", but how to provide a universal recipe to provide 3rd-party software as handy installation script. What you suggest is how to download and install few debs from a website. When I writing such script, I don't trust the host name "just like that" as you suggest. It can be malformed or point totally to different host that we would expect.


It installs a single static binary, hardly sprawling all over your system. It's also available in brew, AUR, and a bunch of other places.


Linux package management systems are old enough to purchase alcohol in the United States.


Of course they are but they are meant for more sophisticated purposes, (i.e. install, update, reinstall, remove app or even purge program with user data, etc.) and all of that logic is usually covered with signature checking with other security-oriented algorithms. I agree, I find apt/dnf/pacman/apk/xbps are great, but...

In case of Ubuntu, in order to install some deb-based software you usually have to bring your own script (this is what I call "copy & paste installation script") to add third-party repository that contains given package.


well, the definition of a linux distribution is a repository + a package manager.

https://en.wikipedia.org/wiki/Linux_distribution

:)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: