I found this whole thread really interesting reading, because it does illustrate the difficulties and frustrations of new Linux users. @Jack_Sparrow is being needlessly confrontational, but he does raise some valid issues, and I think that it is interesting to discuss them.
I agree with @Jack_Sparrow that PureOS should have Synaptic installed by default, because the graphical interface that PureOS provides for managing software is limited, and the command line tools (apt
, dpkg
, etc.) can be intimidating for new users. I personally find the command line liberating and only use it when installing software, but Purism is trying to market its products to people who want security/privacy, but aren’t necessarily experienced Linux users, so I think Purism should consider the perspective of people like @Jack_Sparrow.
The proper way to deal with this is to file an issue report at https://source.puri.sm/groups/pureos/-/issues and then see what the PureOS devs think, rather than arguing with random users on the forum.
@Jack_Sparrow is also right that it is a pain in the ass to install software which isn’t in the repositories of the Linux distribution that you are using. The people who design Linux distributions aren’t deliberately trying to make it hard to install software outside the repos, but this is what happens in the real world. The reality is that people who write desktop software go out of their way to create installers for Windows (and often for MacOS as well), but they rarely take the time to do the same for Linux. It is mostly the fault of the creators of the software applications (like Slimjet), but it is also partly the fault of the Linux community that it makes it difficult to distribute software for their platform outside of the distro’s repos, and Linux Torvalds has raised this point in the past.
The reality is that if application creators want Linux users to install their software, they can get it included in Snap, Flatpack or AppImage, and provide instructions for how to install it on their web site. I find it very frustrating that the Linux community hasn’t standardized on one method to install applications that are outside the distro’s repos, but that is the decentralized nature of Linux. There is no one authority like Microsoft or Apple to enforce one way of doing things. There have been 3 different initiatives to solve this problem, so we are stuck with 3 different competing methods. I wish that Debian, Arch, Gentoo, Red Hat, Canonical, SUSE, FSF, OSI and Linux Foundation would get together and say, “if you want to distribute your application for Linux outside the repos, then do it this way,” but these groups don’t coordinate. Most of the distros feel that software creators should take the time to package their code for inclusion in the distro’s repos.
There are over 300 Linux distros, but it isn’t that hard to get software packaged for the majority of desktop Linux users. If we can trust the hit count at distrowatch.org, roughly half of desktop Linux users are using the Debian family (Ubuntu, Mint, PureOS, etc) and roughly 25% use the Arch family (Manjaro, etc) and roughly 5% use the Fedora family and another roughly 5% use the openSUSE family, so an application creator can reach 85% of desktop Linux users by submitting their software for packaging to those 4 distros. I never got around to finishing my article on it, but I compiled the data from distrowatch.org between 2002 and 2016, which shows how much Linux tends to concentrate in just a few families (note that Arch has overtaken the rpm-based distros since 2016):
Packaging in distros is often not easy, because it means that the application creator has to separate out all the libraries that have been incorporated into the application. For example, I used to work at a company that never bothered to package its open source software in the distros, because it had incorporated about 20 different FOSS libraries in its code, and hadn’t bothered to update those libraries for years. We discussed trying to get the application into Debian and Fedora, but Debian and Fedora had recent versions of those libraries in their repositories and it would have taken a huge amount of work to update the application’s code to use those same libraries in the Debian and Fedora packages and then test the application in those two distros for clients, so we didn’t bother.
However, once an application creator has done the work to make his/her code packageable for one distro family, so it can use their versions of the libraries (i.e. dependencies), it usually isn’t that hard for volunteers at the other distro famiies to package the software for you.
Purism has made it a little more difficult than most other Linux distros to install software outside its repos, because it only accepts 100% free software in its repos, but most of the difficulty that @Jack_Sparrow has encountered is not Purism’s fault and it doesn’t really make sense to criticize Purism. Slimjet has a web page that explains how to install in Debian/Mint/Ubuntu which explains:
Note: In Ubuntu 20, directly opening the deb package with Software Install from browser won’t work. You need save it to a folder other than “tmp” folder first and then install it. If somehow Ubuntu Software Center fails to install it, you can install the deb package from command line using “sudo dpkg -i filename.deb”. After that, type “sudo apt-get -f install” to install any dependencies.
These instructions could have just as easily told the user to use gdebi-gtk to install the package and then use Synaptic to resolve the broken dependencies for people who want to use graphical tools, but many distros in the Debian family don’t install those tools by default so you have to install them, which is why the instructions revert to using command-line tools.
It is much easier to simply list the commands for people who run into problems, then trying to provide screenshots. After a while, you get used to how Linux works, and you realize that you can replace these commands in the terminal with graphical tools, but there are other distros like Mint which make it much easier for new users. I really think that @Jack_Sparrow would be much happier if he had started with Mint.
However, if the goal is to have the best privacy/security, then it is best to stick with the software in the PureOS Store for that purpose, and it seems really weird for @Jack_Sparrow to complain about lack of freedom in that context. It isn’t the fault of the PureOS devs that the makers of Slimjet haven’t taken the time to get their software packaged in Debian, and thus packaged in the PureOS repos.