Why do I bother using Linux?

In my experience, most open source software depends on volunteer effort and so they do not have enough developers to finish everything that should be done. The newer & popular software will get attention, but older packages not so much.

Now that sounds a very valid and plausible reason. Thank you Jason. I can understand that.

I couldn’t continue here yesterday because apparently I was ‘Limited’ to 21 posts, so I’ve come back here today to thank you all for the very valuable help you have all given me. I very much appreciate how much you all accepted my chronic lack of technical knowledge and still continued to help me.

My ‘Ubuntu Store’ is now properly populated. I have Brasero installed despite the website indicating it is “Virtual” - whatever that means. And I have been educated by you good people.

Thank you all, sincerely.

Kind regards

Dragonfly (Malcolm).

However, I can assure you that Gnome is one of the easiest desktop environments out there, and Ubuntu is one of the most beginner-friendly Linux distributions in my opinion. However, anyone who uses a Linux operating system must have some knowledge of the basic Linux commands that can be used in the terminal, since the reason why you use Linux is that certain operations can be used more efficiently in the command line than in the graphical user interface.

I think people use gnu/linux for four reasons:

  1. They have been using some flavor of UNIX and/or gnu-linux almost exclusively for over thirty years and can’t imagine using anything else. Such is the case with myself.

  2. They want or need to learn the *nix ecosystem for their career aspirations or even just for the sake of learning.

  3. It’s free as in “free beer”. They don’t want to pay for software.

4 It’s free as in “freedom”, which I think is a REALLY good reason to use gnu-linux. Although is does require a bit of skill, it is a real luxury to be able to modify source to fix bugs or tweak a package to one’s liking. Customizing source is not something I do often, which speaks to the quality of what is available, but I do maintain a small number of personally customized packages.

That said, I am no longer willing to recommend or advocate the use of gnu/linux for personal use. Although I don’t think this was true a decade ago, Microsoft and Apple both provide a much better user experience for most people.

The quality of gnu/linux has improved dramatically over the last decade and the feature set has expanded as well. However, I think the experience of using gnu/linux for personal computing has actually degraded.

Gnome was much more user friendly a decade ago than it is today. Ironically, it seems like virtually everything done to make Gnome more user friendly has the opposite effect. I think Gnome development has the right idea, but is proceeding in the wrong manner. Perhaps the eleven people running Gnome on their phones would disagree.

I could provide a rather long list of very specific examples, some simple, some more complicated. But I won’t! I’m just not willing to take the time.

1 Like

In the free software world a sort of division of labour took place: people who write software are often not the same people who take care of distributing software. Programmers ≠ distro packagers.

I do both. I write software from time to time and I maintain some packages for my distribution too. The latter most of the times are not packages that I wrote. And when I write software I learn a lot from other distros’ packagers and their distro-specific requests.

I think it is a great model, one that guarantees that software is well audited before being distributed and therefore it is a model that must be preserved.

One of the reasons why I am not very enthusiastic about repositories like Flathub is that they look like a regression to a past in which software developers and distro packagers were the same person (there programmers are encouraged to become packagers too).

This model however implies one thing: you must expect popular software to be installable with one click, while unknown applications that never found any distro maintainers will require you to compile from source. Sounds reasonable to me.

―madmurphy

EDIT: I put “I like” by mistake to this post by Charles Wight but Discourse does not let me remove it. I do not think that “the experience of using gnu/linux for personal computing has actually degraded”.

I have to disagree here, I cannot understand this. I have never seen a distro where the maintainers do a full audit of the packages. I have actually seen the reverse many times: distro maintainers will frequently remove packages when someone reports a security bug and discovers upstream isn’t auditing and fixing the package. Auditing and code review are different (and much more time-consuming) tasks than just packaging it.

1 Like

Thank you to Zoli62, Charles Wright and MadMurphy for your very interesting replies.

My first excursion into Linux was using Mint . I was very much impressed by the plethora of software available in the ‘Mint Store’. Mint had a similar layout to the Microsoft operating systems so I found it extremely easy to use.

I then decided to put Ubuntu 18.04 on another machine. I found Ubuntu a much cleaner interface than Mint so it became my ‘Preferred Flavour’ and I’ve been very happy with it - most of the time.

Being an enthusiastic Ubuntu user obviously causes me to encourage others to leave the confines of Microsoft or Apple and try using Linux. As I mentioned in my original post, everybody who was already aware of Linux regarded it as an operating system for ‘Technically Knowledgable Computer Enthusiasts’. - NOT for the layman!

Until this image can be proven incorrect, Microsoft and Apple will continue to dominate the computer operating system market. Probably followed by Android.

As Zoli62 said >>>However, anyone who uses a Linux operating system must have some knowledge of the basic Linux commands that can be used in the terminal, since the reason why you use Linux is that certain operations can be used more efficiently in the command line than in the graphical user interface.<<<

In my humble opinion, the requirement to use Terminal needs to be an OPTION in Linux, not a necessity, Being unable to use a chainsaw does not prevent my maiden aunt from using a Log Burner in her lounge! She can buy “ready packaged logs” which she can ‘load’ into her fire with ‘one click’ of the door handle. She would never need to use a chainsaw, log-splitter or an axe to remain warm

Charles Wright listed Four reasons that people use Linux. I would like to add my reasons for sticking with Linux.
(1) I dislike the ‘Closed Source’ environment of Microsoft and Apple. They produce software as profitable business products and they will include or add whatever they can to make the product even more profitable.
(2) I dislike large monopolies and like to support smaller organisations. The larger the company, the less they care about individual Customers. One is simply ‘a drop in the ocean’ when a customer of a large business.
(3) Whilst ‘Free Software’ is naturally a bonus, I still contribute to authors of Free software when I find I’m regularly using good, well constructed software.

MadMurphy said >>>you must expect popular software to be installable with one click, while unknown applications that never found any distro maintainers will require you to compile from source.<<<

I wouldn’t know where to start to ‘Compile’ software for Linux. I used to write code in Visual Basic 4. To create an installation disc I simple clicked a button, typed a name - the installation disc was then created. Surely, something similar for that could be created for Linux? If a complex application such as KdenLive Video Editor can be created, a simple “Compile” routine" should be very easy.

This now brings me full circle to my original, rhetorical question but with the benefit of the responses of you good people of Gnome, and my suggestion that Linux will NEVER gain the massive traction that it deserves whilst delving into Terminal code is a necessity instead of an additional option.

My kind regards to you all

Dragonfly (Malcolm)

I share your desire for a 1-stop “app store” where you can find mostly every apps that exists. Snap was promising in reaching that goal, but it seems they are heading in a direction that aims at apps for servers and not for end users on desktops/laptops computers.

The good news is that an alternative is quickly rising to eventually become the new standard: Flatpak as a way to package software to be easy to install and Flathub as a way to find all those apps. You can take a look at this video for more info: FLATPAK is the FUTURE of LINUX application distribution - YouTube

Unfortunately, as fas as I know, Ubuntu has yet to activate flatpak and flathub by default. But the instructions to do so seems fairly simple. Once you’ve done that, you’ll have an easier way to find and install the apps you want.

You’re right. ÍYou can also buy ready-cut logs. However, in this case, you have to take into account that you have to pay for the labor invested in its production. Linux distributions are mainly developed by volunteers in their free time, for which they receive no salary, only donations. These programs are then made available to the community free of charge, so the users themselves support them, add their knowledge while learning themselves. With paid, closed-source operating systems, you get everything ready for the price of the product, in return you can’t change it very much.

It’s a very good point.

Like many things in life, using Linux is a risk, you’re risking usability and sometimes comfort for the sake of freedom and I think it’s a very good question to ask yourself: What do I risk when using proprietary software vs. what do I risk when I’m using free/open/libre software?
It’s most certainly a trade-off.

We can compare it to the risk of owning a car vs. the risk of using public transportation although I can afford a car etc.

My personal opinion is that the truth lies somewhere in between, you are most probably not going to own a fully open source transportation device (firmware and software) in the next couple of years so you are not going to use cars? buses? airplanes?
You can be free up to a certain point and even then you should ask yourself is it worth it.

@Charles_Wight

Windows is a nightmare for most basic things. You can’t move a window that has a dialog open and you even hear annoying noises if you try. The same program tends to run much slower and you need an antivirus that bothers you with ads. How can that be in any ways satisfying?

@jfrancis

There are distros where a package can never be really removed unless it stops being maintained upstream. In these distros if a package disappears from the official repositories it will immediately appear in the community-led repositories. The amount of auditing however always depends on how popular a package is, and some distros are more technical than others. Furthermore, sometimes a developer will need to search for distro maintainers’ feedback on Google, because these don’t bother reporting upstream. It is an imperfect mechanism that needs to be improved, but it does not need to be brought back to a worse past.

@Dragonfly

It is often much easier than it looks like (usually a couple of commands), and if you use a community-led distro it can be as simple as launching makepkg -si.

I do agree that my mother could never type makepkg -si on a terminal. But my mother could also not install a program on Windows. What I am saying is that downloading a program for Windows from the right website, being sure that is not a virus and installing it might be slightly harder than typing makepkg -si. We are all biased by the fact that most of us learned Windows as the first operating system in our lives (you were even able to compile stuff there!), and so we tend to think that things on Windows are easy, when actually they are not.

For my parents things are equally hard on both Windows and GNU/Linux, and I must say that my father slightly prefers the user experience of GNU/Linux + GNOME over that of Windows (but he cannot do anything advanced on both operating systems).

That is exactly what Flathub is, a community-led repository. So I still cannot really understand what your complaint is. If you can run integration tests on random rpm/deb/whatever repositories then you can also run those on Flatpaks…

I am very far from making a complaint about Flathub. In fact, I believe that people that feel attracted by the idea must use it.

If you take the two major community-led distributions, Arch and Debian, you get the astonishing numbers of ~ 94,000 and ~ 153,000 packages respectively (if I am not wrong). In my opinion these numbers are possible only because there is an efficient division of labour and developers can avoid spending their time creating packages (I also think that Debian’s weak point is the obsolescence of its packages, but that is another issue).

On the other hand, on Flathub’s “About” page you can read:

App developers can submit their applications to be distributed to Flathub’s growing user base …”

(emphasis is mine)

I do believe that the division between developers and packagers is a better model. I can be wrong, of course, so the best way to find out is to wait and see. After all Flathub is a relatively new experiment and as such it is worth a try. For sure it doesn’t hurt anyone and free software thrives in diversity.

―madmurphy

I don’t think so, otherwise there would not be a difference of 59,000 packages. Does it make much sense that Debian can use all those packages but Arch cannot? And what about other distros that may have even less? The situation quickly becomes unmanageable. That is why there are a number of applications that are not available in either Arch or Debian, and are only packaged in Flathub…

I think that difference is largely explainable by Debian’s habit of creating split packages. For every single library you will have libfoo and libfoo-dev on Debian, whereas you will have only libfoo on Arch. And libraries are not the only group for which Debian prefers split packages. Arch, on the other hand, hates split packages.

You also have relatively minor distributions that are still community-led, like NixOS and GuixSD, that have a huge amount of packages compared to their small user bases.

All these distributions except Debian have two things in common: the extreme facility of creating new packages and a rolling release model (probably in Debian’s case the longevity of the distribution might compensate for a slightly more complicated packaging process and Debian Sid is rolling release too – although your computer will explode if you use it).

I think in Arch there is a sort of silent competition for the user who first creates the package for a new app. In many years of using it I can barely remember the case of not finding an app on AUR. Sometimes you even get the impression that the Arch package gets released even before the update is released upstream. I don’t know if other models are also efficient, but Arch’s packaging model surely is. And so are NixOS and GuixSD, or so I was told (but I never tried these two). Debian too tends to collect every single app ever created, if you give it time.

Of course if you think of Flathub as a sort of primary repository (a bit like Github or Gitlab) you will definitely have packages that will remain unpopular and therefore will appear only on Flathub and nowhere else (but that is natural, it happens also on Github and Gitlab)…

EDIT: I just read the latest release notes of Guix and… Gosh! What crazy level of fine tuning division of labour can reach! That page makes you clearly understand that you either develop software or you create packages, but you shouldn’t do both.

Sorry, I still cannot understand anything you are talking about. AUR is the “unsupported” repo, packages in there are generally not audited. I have seen many packages there that are just outdated or broken. Doing things that way compounds the compatibility issues with rolling release; if the package was not being audited and maintained before, that still will not change just because the package was dumped in an unsupported repo somewhere. And of course this is all still pretty much useless to you if you use Debian, or really if you use any distro that is not rolling release. None of it applies at all if you want to use Ubuntu LTS, or even some other Arch-based distro that decides to build packages incompatible with the normal Arch base system…

Also I am not sure what you mean by “fine tuning” or “division of labor”, nothing on those release notes seems particularly unusual or complicated for a package manager. That page says Guix has 22,000 packages, which is still much less than both Arch and Debian.

It really depends on the popularity of the package, AUR is no exception. If you maintain an AUR package with thousands of upvotes people will ask you to update the package five minutes after it gets released upstream and you will get all kinds of requests, reports and patches all the time. If instead the package is very unpopular you will probably be the only one auditing it.

I am pretty sure I have seen packages starting a fresh new life after being “dumped” from the official repos to the AUR. Arch official maintainers are humans too, and sometimes they can just loose interest in a particular app: there is when this starts getting less and less maintained until it gets “dumped”. But then someone really passionate about that app might adopt it and the new life starts. It’s not always like that but, again, it’s often about popularity.

I know. I decided to abandon non-rolling-release distributions years ago also for these reasons and personally I think that rolling release is the only possible future, but here we enter into another big discussion… However I think that most distributions have a “rolling release flavor” nowadays – although it is often not as functional as distros that are rolling-release-only.

That’s exactly what I meant: that page does not mention anything too unusual for a package manager (although GuixSD is actually quite freaky in a lot of respects), but if I release my FooBar app, as an app developer I would very much prefer not to be bothered with even one tenth of those things “for package managers” – or otherwise I will do one release every five years and that’s it. No thanks.

Strangely enough, I can get quite passionate about these things as a user (and probably at some point I might even try GuixSD): If I use a certain software I want the package that I install to be as clean as possible.

Very true. But the user base of GuixSD is infinitesimally smaller compared to that of Debian (and derived distros). I believe that in proportion they have a lot of packages. They also mention it: “More than 5,300 packages were added for a total of almost 22,000 packages, making Guix one of the top-ten biggest distros according to Repology (indeed they appear to be number six on Repology).

―madmurphy

I think you are confusing definitions here. A package that is so unpopular it gets barely any support means no one will be auditing it. There is no requirement anything has to be audited to get in an unsupported repo, the package may not even build at all or do anything. You do not need to know anything about auditing to package something nor do you need to know all the features of the particular package manager. I would say the parts you need to know about to write a random package is significantly less than one tenth. The thing about package managers is they tend to have “broad” feature sets to support many different compilers and build systems and quirks in packages and such; you do not need to know all of them just to package a few things. But even with all that, packagers still struggle to keep up, because like you say they are still human.

Anyway this is getting off-topic. My point is that the situation we have just gone through is pretty much the same as it is on Flathub, or if you use another Flatpak repo, etc… Rolling release distros are mainly meant for developers, not for ordinary end users. For end users I expect they will usually end up with something that looks a lot like Flatpak or Snap.

It’s not always so black and white. “Support” on Arch often means that one single official maintainer takes care of a particular package, and if that single maintainer looses interest the package “looses support”. Sometimes I believe that the “collective support” that can emerge in very popular AUR packages can be superior to the support offered by that single official maintainer, but it really depends on each single case and I agree that this discussion is getting off-topic.

Going back to the main topic, my opinion is simple: package creation/maintainance/etc. is for users (or at least that subset of power users with the skills to do it – but they will also do it for everyone else), while app development is for developers (the more these focus on the code the better).

Hello all,

I’ve been following this thread with great interest and I believe I gained some significant knowledge from it but I’m also now becoming somewhat confused.

Surely, if somebody creates an application they will, as part of that application create an “Installation Package”?

Perhaps if I explained (and bored you) with my past experiences, somebody may be able to point out just where I have taken a wrong turning. (and seemingly ended up in a muddy field.}

I used to write (and sell) Windows applications as a small part of my business - (essentially number crunching applications). I had started on Win 3.1 using Visual Basic 4, 16 bit. Then, when Win95 was released I changed to VB4 32 bit. By the time we reached Win 7, I was dabbling with VB6. Whichever system I was using, I would write the code then compile it to an installation package. (Initially this would be the 3 inch Floppy disks, later, Rewritable CD’s.) The installation package would be loaded into a ‘Clean’ PC. - I had one PC which would have a clean operating system installed via a tape drive. Each time an installation disc was tested the PC hard drive was formatted and then the Tape drive loaded a ‘clean and unused operating system’. (Win 3.1 was a pain because that could only be installed manually - 1st 4? Dos 6.1 discs, then 6 or 7? win 3.1 Discs). Although tedious and time consuming, this ensured that ALL the necessary dependencies were included on the installation disc(s).

Once the application had been successfully tested on the clean PC. The installation disc(s) would then become the ‘Master’s’ for me to create and distribute duplicates.

Perhaps somebody could explain to me - Is the Linux operating system so alien and different that my statement in the second paragraph above for creating software is absolutely impossible to copy on Linux?

My kind regards to you all

Dragonfly (Malcolm)