Basically, the more apps you install, the more space efficient Flatpak becomes. Deduplication ensures that apps that rely on the same dependencies will keep reusing them. Instead, all 10 Qt apps will keep using the same 900 MB that come from the runtime. Instead of redownloading and reinstalling 9 GB (900 MB of runtimes × 10 times the Qt apps), it will not redownload and reinstall 10 times, and you will not have wasted 9 GB either. Now, suppose you install 10 more Qt apps. In the author’s example, KCalc pulls 900 MB because of the runtime and drivers. Flatpak goes through a process called deduplication, where it reuses dependencies whenever possible, avoiding the need of duplicating data. The more apps you install, the more space efficient Flatpak becomes. If you don’t have Plasma dependencies installed, then the package manager will download and install all the needed dependencies, which should install the 4.4 MB for KCalc atop the Qt and Plasma dependencies. Suppose you are using GNOME on your system, and you decide to install KCalc. patched libraries, slightly older or newer versions of libraries, overlooked dependencies, etc.Īlso, this is actually quite similar to system packages. This is done to reduce the amount of quality assurance (QA) needed by app developers and to reduce bugs as much as possible, so they can test builds that were tested against the same toolchain and dependencies.īy running host libraries, there is a risk of running into distribution specific bugs, or from other sorts of negative side effects due to, e.g. It’s an entire general-purpose OS on top of your existing OS.įlatpak installs these runtimes to ensure that you and other users are running the exact same binaries and libraries across different systems, whether the libraries are backwards compatible or not. Because unlike AppImage, the runtime isn’t stripped down to just what the app needs. It ran just fine, because all of the libraries it uses are backwards compatible.įlatpak wants to download 3D drivers, patented video codecs, themes, locales, Qt 5, KDE 5, GTK 3, ICU, LLVM, ffmpeg, Python, and everything else in, all to run a calculator. I just ran the kcalc binary straight out of its Flatpak install path unsandboxed and let it use my native libraries. The rest is all redundant libraries that are already on my system. Note that the app package itself is only 4.4 MB. You’re looking at a nearly 900 MB download to get your first runtime. So how big are these runtimes? On a fresh machine, install KCalc from Flathub. Your app metadata specifies what runtime it wants to use and a service downloads it and runs your app against it. Other solutions like Flatpak or Steam download the runtime separately. Suppose you want to make a simple calculator app. The point of this response is to reduce the amount of misinformation and misunderstanding that the article might have caused, as I have seen (and still see) many users post this article very frequently, without having a proper understanding of the subject. I want to go over some of the author’s arguments and explain some of the misunderstanding and claims.ĭo keep in mind that I have nothing against the author’s opinion. Late last year, this interesting article “ Flatpak Is Not the Future” was published to the public, and very quickly grabbed the Linux community’s attention.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |