Flatpak???
Posted: Thu Dec 22, 2022 9:06 am
I spent some precious time looking at Flatpak again seeing if there was a better way to package Bible Analyzer because of the Linux dependency issues. (such as Ubuntu will not have a key required dependency in a LTR until 4/2024). I understand the Flatpak concept that the pak would contain the app and its dependencies, but I didn't realize until last night that a user also has to download a HUGE runtime environment also.
I installed the FP prerequisites to try out a couple FP apps and then went to the Flathub store. I found Xiphos and clicked the "Install" button. It downloaded a tiny repository reference and that's it. I then tried to run the reference. Nothing happened. Does "Install" actually install anything? Then I ran the command line command to install and Terminal said it must download an obsolete runtime environment of several hundred megabytes first!
I live in a rural area and have spotty and often slow internet. Many Bible Analyzer users also have slow internet thus a several hundred megabyte download can be a chore. Nevertheless, I went and did something else for a while while Ubuntu struggled to download the "environment." Later I came back and it was finally installed. and it did run. This morning I decided to try another Flathub app, one developed this year (Xiphos is over two years old), and guess what, it demanded I download another several hundred megabyte runtime environment! I learned there are at least 12 RE and an app could be built against any one of them. Furthermore, I saw where if I made a Bible Analyzer Flatpak it would be built on yet a different RE...which may become obsolete at any time.
Needless to say, my FP experience has not been positive. It is highly convoluted, poorly documented, and doesn't work as expected. When users see an Install button it is not unreasonable to expect the app to install, but I couldn't get it to install anything. Many users anymore shun Terminal and that is understandable because Linux distros anymore brag about how everything works through a GUI, but it doesn't. When I mention Terminal to some Linux users I get emails back saying "What's Terminal?"
Linux has come a long way from its early days and is much more usable for the average user, but if it wants to be part of the mainstream they had better streamline their app making and packaging process. If one only makes a one line "Hello world" app it takes a several hundred megabyte download to view it. This is ludicrous.
It did a little research the other day. 10 years ago the computer market share was about 85% Windows, 7% Mac, and 7% Linux. Now it is about 75% WIndows, 15% Mac, 5% Chromebook, and 3% Linux. In spite of all the new fancy distros, Linux is falling fast. And in my opinion the reason is Linux is very factionalized, has very poor application creation and packaging systems, and thus has mediacore applications. This can be proven by all the Linux users who use Wine because the apps they want are not available in Linux. I could not tell you how many times I have heard, "I'll just run it in WIne," and then write to me complaining that something in Bible Analyzer is not working right in WIne. My thought is why don't you just run it in Windows instead of a Windows emulator.
Take Bible Analyzer for instance, every time I try to develop a new Linux edition, I hit this brick dependency wall. I want to offer the latest versions of libraries, but Linux won't let me and they won't offer a viable workaround without forcing users to download essentially a complete platform. There is no sound reason why someone running a Gnome edition of Ubuntu has to install another Gnome environment just to run a Flatpak app. No wonder Linux desktop usage has gone from 7% to less than 3%. Who wants to mess with all of that. Even Chromebooks have passed them by because users can actually install the apps they want with a click.
(I remember one time I suggested that potential Bible Analyzer users simply add another repository to their system to allow Bible Analyzer to find its needed dependencies and I got letters from people who said they would not do that because of "security reasons" and they will only use a LTR and standard repositories. People seem to live in constant fear of their computers.)
Anyway, I will finish developing Bible Analyzer v5.5 for Linux but how I'll deal with the packaging issue I'm not sure about yet. I may try to include the dependencies in with the app. That will increase its size, but not near as much as the FlatPak system would. It should run on any Ubuntu based system and probably any Debian based system which covers a big part of the Linux world. All of you on other distros will have to deal with it the best you can. I simply cannot make Bible Analyzer work on them all. I only have one lifetime.
I installed the FP prerequisites to try out a couple FP apps and then went to the Flathub store. I found Xiphos and clicked the "Install" button. It downloaded a tiny repository reference and that's it. I then tried to run the reference. Nothing happened. Does "Install" actually install anything? Then I ran the command line command to install and Terminal said it must download an obsolete runtime environment of several hundred megabytes first!
I live in a rural area and have spotty and often slow internet. Many Bible Analyzer users also have slow internet thus a several hundred megabyte download can be a chore. Nevertheless, I went and did something else for a while while Ubuntu struggled to download the "environment." Later I came back and it was finally installed. and it did run. This morning I decided to try another Flathub app, one developed this year (Xiphos is over two years old), and guess what, it demanded I download another several hundred megabyte runtime environment! I learned there are at least 12 RE and an app could be built against any one of them. Furthermore, I saw where if I made a Bible Analyzer Flatpak it would be built on yet a different RE...which may become obsolete at any time.
Needless to say, my FP experience has not been positive. It is highly convoluted, poorly documented, and doesn't work as expected. When users see an Install button it is not unreasonable to expect the app to install, but I couldn't get it to install anything. Many users anymore shun Terminal and that is understandable because Linux distros anymore brag about how everything works through a GUI, but it doesn't. When I mention Terminal to some Linux users I get emails back saying "What's Terminal?"
Linux has come a long way from its early days and is much more usable for the average user, but if it wants to be part of the mainstream they had better streamline their app making and packaging process. If one only makes a one line "Hello world" app it takes a several hundred megabyte download to view it. This is ludicrous.
It did a little research the other day. 10 years ago the computer market share was about 85% Windows, 7% Mac, and 7% Linux. Now it is about 75% WIndows, 15% Mac, 5% Chromebook, and 3% Linux. In spite of all the new fancy distros, Linux is falling fast. And in my opinion the reason is Linux is very factionalized, has very poor application creation and packaging systems, and thus has mediacore applications. This can be proven by all the Linux users who use Wine because the apps they want are not available in Linux. I could not tell you how many times I have heard, "I'll just run it in WIne," and then write to me complaining that something in Bible Analyzer is not working right in WIne. My thought is why don't you just run it in Windows instead of a Windows emulator.
Take Bible Analyzer for instance, every time I try to develop a new Linux edition, I hit this brick dependency wall. I want to offer the latest versions of libraries, but Linux won't let me and they won't offer a viable workaround without forcing users to download essentially a complete platform. There is no sound reason why someone running a Gnome edition of Ubuntu has to install another Gnome environment just to run a Flatpak app. No wonder Linux desktop usage has gone from 7% to less than 3%. Who wants to mess with all of that. Even Chromebooks have passed them by because users can actually install the apps they want with a click.
(I remember one time I suggested that potential Bible Analyzer users simply add another repository to their system to allow Bible Analyzer to find its needed dependencies and I got letters from people who said they would not do that because of "security reasons" and they will only use a LTR and standard repositories. People seem to live in constant fear of their computers.)
Anyway, I will finish developing Bible Analyzer v5.5 for Linux but how I'll deal with the packaging issue I'm not sure about yet. I may try to include the dependencies in with the app. That will increase its size, but not near as much as the FlatPak system would. It should run on any Ubuntu based system and probably any Debian based system which covers a big part of the Linux world. All of you on other distros will have to deal with it the best you can. I simply cannot make Bible Analyzer work on them all. I only have one lifetime.