Ask Your Question

What does "improved Flatpak support" mean, and how does it effect me?

asked 2017-04-24 01:10:22 -0600

wavis gravatar image

I finally got around to upgrading my laptop to Fedora 25 last week, and looking at the What's new in Fedora 25 Workstation page, Flatpak support is a big point. If I don't already know all about Flatpak, is this irrelevant to my life? Does dnf now have access to Flatpak packages, or do I have to install/enable Flatpak? Why is this such a big deal? The ONLY reference to Fedora 25 on says "click to download is available with" but clicking leads to a prompt to open with a text editor.

I can install Flatpak and read the man page. But before I do, I'm asking this question to illustrate a significant reason why lawyers, sales people, psychologists (just to name some of my friends' professions), and many other highly educated, but busy, people may not switch to Linux despite what they could gain from doing so: devs implement a feature and clearly seem to think it's a big deal, but barely try to tell anyone that it exists beyond a cryptic hint. (Flatpak's reputation does not precede it.)

I have a sense that there are thousands of awesome features that developers have spent innumerable hours bringing to the world which are lost to obscurity, each with nothing more than a scant comment on a patch somewhere to describe them. Like a user would read that.

As a developer, I have some sense of why Flatpak may be a big deal before I even start. Maybe, "easier, and safe installation of software from the web" could have been written somewhere? As a forward-thinking distro I would think that we could do more to help our users be proud of their choice. At least a call to "go check out Flatpak" and, importantly, why.

So I guess the real question is, can we advocate better? Fedora may never have a high production, showy release, but we should feel comfortable saying, "and one more thing..."

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2017-04-25 11:32:37 -0600

When programmer releases a program he usually implies some runtimes that program depends on.

If you look at software forums, program users ask questions and developers or power-users in answers demand to post long dumps of some command-line Linux utilities that describe user's environment for them, to get at least some clues in identifying problems. Some programs are traditionally bundled with separate help utilities that analyse environment in which they are installed.

Linux distro maintainers somewhat resolved it by LTS(long time support, Canonical).

As I understand, most development efforts in Linux past several years lay in container technologies, systems that can create isolated controlled runtimes.
Flatpak creates a "container" for a program after installation, a replicated environment that program was meant to run in, in which it was tested during development. "Application virtualization".

For example, Pitivi video editor. It can be installed using dnf, but the installation process in package is broken. I tried to compile it but it won't run because of its complex dependencies. Using flatpak:

flatpak install --user
flatpack run org.pitivi.Pitivi

Each package uses unique reversed domain as its name. Projects without own domains use subdomains of services like github. Flatpak installs Pitivi in user's directory ~/.local/share/flatpak/app/org.pitivi.Pitivi/
It weighs 352M(all runtime is replicated). RPM package of Pitivi weighs 3.5M, but doesn't work.

So for users of Pitivi flatpak package is the only option now: In combination with some nifty GUI app it could provide better user experience in package administration on Linux.

Other technology that I kind of like more(both are grey areas for me yet) is GNU Guix, beta. It uses its own top level directory named /GNU for packages. User directories store a catalog of installed packages for each user. Rollbacks of a whole system are possible. Currently in Linux distros you can't go back after distro upgrades. Whole system can be described and recreated by one Guix file(Guile Scheme language).

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2017-04-24 01:10:22 -0600

Seen: 353 times

Last updated: Apr 25 '17