[chbot] Updating a program: which Way did I use to install it?

Stephen Irons stephen at irons.nz
Tue Aug 25 01:16:28 BST 2020


It is worse than I thought. Here are the ways that programs are 
installed on my PC:

* Debian packages installed from official repositories
* Debian packages installed from numerous PPA repositories
* Snap installs from some Snap store -- is there more than one?
* AppImages downloaded from arbitrary websites, and manually moved to 
either ~/bin
* AppImages downloaded from arbitrary websites, and somehow ended up in 
~/.local/bin
* Flatpack installed from flathub
* Flatpack installed from the applications' private flat-stores
* Python packages installed using 'pip', from py-pi
* Python packages installed using 'pip' from some other Python package 
place
* Source code tar file downloaded from the applications' website, then 
built manually 'configure; make; sudo make install', ending up in 
/usr/local
* Source code version control repository cloned, then built manually 
'configure; make; sudo make install', ending up in /usr/local
* Tar file with precompile binaries downloaded, unpacked (usually into 
/opt) then created symlink in '~/bin'
* Single precompiled binary downloaded from some website, then moved to 
'~/bin'
* Personal scripts in '~/bin' to set-up before and tear-down after some 
other program (eg. always pass specific arguments, to run pasuspender, 
or to set environment variables), or just to give it a nicer name. 
These are version controlled.
* Command interpreter aliases used for the same purpose. I prefer 
one-line scripts in '~/bin' as they can be version controlled.

Note: after downloading stuff from random web sites, I usually remember 
to compare the hash before using it. This does assume that I trust that 
web site...

No wonder it's confusing.

Stephen Irons

On Tue, Aug 25, 2020 at 11:29, Stephen Irons <stephen at irons.nz> wrote:
> General grumble
> 
> There used to be a few packaging systems (deb, rpm, emerge, pacman, 
> etc), but each distribution chose Their Way and it was the Only Way 
> for that distribution. Of course, every thought Their Way was The One 
> True Way. But at least I knew how to update a package.
> 
> However, we now also have 'portable' packaging systems (AppImage, 
> Flatpak and Snap and probably others) which can be installed on any 
> distribution.
> 
> Then Python has its Way too (pip), and I see that I have at least one 
> Useful Program (youtube-dl) installed using this Way.
> 
> Some applications choose only One Way to release their software, so I 
> have to use that Way to install the software, so, in general, I 
> cannot settle on a single Way, even if there were a Preferred Way. So 
> now, the burden is on Me to remember which Way each application has 
> chosen.
> 
> Specific problem
> 
> I am trying to update Musescore to version 3.5.3 on Ubuntu 20.04. I 
> am using version 3.2.3. Approximately this version 
> (3.2.3-and-some-change) exists in the Ubuntu repos, but this is not 
> installed. I remember installing one of the portable versions when 
> 3.2.3 was the Next Best Thing, before it was available as a deb in 
> the repo. But I cannot remember which Way I ended up using.
> 
> Musescore makes new versions available as AppImage, Flatpak and Snap; 
> these eventually end up in the Ubuntu repo some month later.
> 
> When I auto-complete 'musescore' it completes as 'musescore-portable' 
> which 'which' tells me is '~/.local/bin/musescore-common'. There also 
> exists '~/.local/bin/mscore-common', where 'mscore' used to be the 
> name of the executable when people thought that shorter executable 
> names were better.
> 
> *** Does anyone recognise which Way would install a binary as 
> '~/.local/bin/xxx-portable'?
> 
> General questions
> 
> *** Is any one of these packaging systems (AppImage, Flatpak, Snap, 
> Python pip) significantly better or worse than any other? What are 
> the pros and cons?
> *** Are there any rules of thumb to work out which Way to update an 
> arbitrary program?
> 
> Thank you
> 
> Stephen Irons
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ourshack.com/pipermail/chchrobotics/attachments/20200825/7ee72c9a/attachment.html>


More information about the Chchrobotics mailing list