LibreOffice 5.2 Beta Flatpak

Flatpak (formerly known under its working title “xdg-app”) is a cool new way of distributing images of Linux applications that run on a wide range of different distros, and run there in a secure way. I have blogged and spoken about making LibreOffice available in this format before in various places (see, e.g., these two previous blog posts and this conference talk).

Now is the time to announce availability of a LibreOffice.flatpak bundle of LibreOffice 5.2 Beta at download.documentfoundation.org/libreoffice/flatpak/5.2.0/LibreOffice.flatpak!

To try it out, do the following:

  • First, you need to install Flatpak itself. See here for details.
  • Second, you need to add the Flatpak repository that contains the GNOME runtime (on which the LibreOffice.flatpak depends; see here for details):
      $ wget https://sdk.gnome.org/keys/gnome-sdk.gpg
      $ flatpak remote-add --user --gpg-import=gnome-sdk.gpg gnome https://sdk.gnome.org/repo/
      $ flatpak install --user gnome org.gnome.Platform 3.20

    Update: If you use another locale than en-US, and want LibreOffice to automatically come up with a matching UI localization, additionally

      $ flatpak install --user gnome org.gnome.Platform.Locale 3.20
  • Then, with the LibreOffice.flatpak file downloaded from the link above, do
      $ flatpak install --user --bundle LibreOffice.flatpak

    to install it. (Don’t worry, it does not interfere with any other LibreOffice you might already have installed on your machine, like the one shipped with your Linux distro.)

  • And now you can run it, either from the command line
      $ flatpak run org.libreoffice.LibreOffice

    or by clicking on one of its icons (LibreOffice Start Center, Writer, etc.) in your distro’s application launcher.

(And if you happen to have an older version of xdg-app installed, installing the LibreOffice.flatpak bundle into it should work, too.)

Behind the scenes, the LibreOffice.flatpak links to a repository on the download.documentfoundation.org server that will get updated with later versions of LibreOffice Fresh. So once a new version of LibreOffice Fresh is released (starting with LibreOffice 5.2 proper), you can simply update your installation with

  $ flatpak update --user org.libreoffice.LibreOffice

A few items to note:

  • LibreOffice.flatpak is based on the GNOME 3.20 runtime, using LibreOffice’s much-improved GTK3 backend. This should offer the most complete set of features in LibreOffice, paving the way to Wayland etc.
  • The single bundle contains all localizations available for LibreOffice (as it doesn’t really affect the bundle’s overall size that much).
  • Flatpak-based apps are not yet able to reach out to other applications installed on the machine (like browsers) to e.g. open URLs through them. That means that e.g. clicking on a hyperlink in a LibreOffice Writer document might not work yet. And since the LibreOffice.flatpak does not contain all the help documentation (for all the localizations!), but instead wants to use the online help through a browser, pressing F1 does not yet work, either.
  • The LibreOffice.flatpak does not include a Java Runtime Environment (JRE). That means that some LibreOffice functionality that requires a JRE will not work.
  • At this time, there is no Flatpak version of the LibreOffice Software Development Kit (SDK).
Advertisements

33 thoughts on “LibreOffice 5.2 Beta Flatpak

  1. zubozrout

    Are you by any chance considering Ubuntu’s native snap packages as well? I know they are still not as mature as they should be but they are getting better.

    Reply
  2. Kostic

    I’ve found some errors when installing and running it on Fedora 23.

    $ flatpak install –user –bundle LibreOffice.flatpak

    (flatpak install:7862): flatpak-WARNING **: Error running trigger desktop-database.trigger: Unable to execute subprocess „/usr/lib64/flatpak/bwrap“ (No such file or directory)

    (flatpak install:7862): flatpak-WARNING **: Error running trigger gtk-icon-cache.trigger: Unable to execute subprocess „/usr/lib64/flatpak/bwrap“ (No such file or directory)

    (flatpak install:7862): flatpak-WARNING **: Error running trigger mime-database.trigger: Unable to execute subprocess „/usr/lib64/flatpak/bwrap“ (No such file or directory)

    And:
    $ flatpak run org.libreoffice.LibreOffice
    error: Unable to start app

    I had xdg-app previously installed which I removed with ‘dnf remove xdg-app’. Maybe something was left behind?

    Reply
    1. stbergmann Post author

      I once ran into a similar problem with bwrap missing when I installed flatpak from locally built RPMS (on Fedora 24), where the flatpak RPM didn’t contain the bwrap helper executable but depended on an additional flatpak-libs RPM that did. Maybe all it takes is to additionally install a flatpak-libs RPM (if for whatever reason that happened to not get installed automatically for you along with the main flatpak RPM)?

      Reply
      1. Kostic

        Yep. That solved it. For anyone else having problems on f23, you need to install both flatpak and flatpak-libs packages via dnf.

        Anyway, working nicely for a prototype. Fonts are a bit funky and for some reason the file open dialog keeps going to my secondary monitor instead being modal to the window where the main LO window is located.

        Good job!

  3. micmon

    On Fedora 24 I get this:

    [micmon ~]$ flatpak install –user gnome org.gnome.Platform 3.20
    Receiving delta parts: 0/9 153,0 kB/s 2,9 MB/171,4 MB
    error: While pulling runtime/org.gnome.Platform/x86_64/3.20 from remote gnome: Error resolving ‘sdk.gnome.org’: Name or service not known

    Any idea?

    Reply
    1. Kostic

      It seems that your computer can’t resolve sdk.gnome.or address. That’s a network problem. To quickly resolve it, you can set Google DNS server as the primary one (8.8.8.8) or add line ‘209.132.180.169 sdk.gnome.org’ (without quotes) to your /etc/hosts file.

      Reply
  4. Chris

    And again – everybody wants their own toys. Instead of simplifying, everything will be fragmented again. New offline package format next to Snap, AppImage, Docker etc… Which one to choose for commercial app? All of them? Choose one and be incompatible with others. Great 🙂

    Linux world is like a programmers sandbox. One programmer is jealousy about others toy, so he need to write they own… It’s not KISS – it’s Ockham’s razor.

    Reply
    1. alex

      Docker solves a different problem. And as far as I heard, it’s really hard to make Snap work on distributions that aren’t Ubuntu.

      Reply
    2. Brandon

      Well Snap is ubuntu-only and Appimage doesn’t resolve the static libraries problem that Flatpak does. This format is universal and lets libraries be updatable independent of the apps that depend on them. Win-win!

      Reply
  5. František Zatloukal

    Do you have any idea what to do with this? (I have latest flatpak and flatpak-libs from f24 updates-testing)
    $ flatpak install –user –bundle LibreOffice.flatpak
    $ flatpak run org.libreoffice.LibreOffice
    Can’t find source path /run/user/1000/doc/by-app/org.libreoffice.LibreOffice: No such file or directory

    Reply
  6. Damien

    Works great with Fedora 23 after flatpak-libs is installed, however the CPU usage is huge – soffice sits at 25% at idle. Is that normal behavior?

    Reply
  7. Piotr Jurkiewicz

    Nice, but why do I need to install GNOME runtime in order to run it? I would understand installing GTK as required dependency (because LO uses this toolkit as a backend), but not GNOME.

    Reply
    1. alex

      There is no Gtk runtime. If they had used the Freedesktop runtime, they would have had to bundle the whole Gtk stack. What real reason is there not to want to install the Gnome runtime?

      Reply
      1. Piotr Jurkiewicz

        The reason is that LibreOffice does not depend on GNOME or anything GNOME-specific. So why would I install GNOME runtime, especially when I use MATE, XFCE, LXDE, KDE, Enlightment or any other non-GNOME desktop environment?

        Yes, LibreOffice depends on GTK, but GTK != GNOME (although GNOME folks are doing everything what they can to hijack it and hinder usage of GTK in desktop environments other than GNOME).

        There should be pure GTK runtime, without any GNOME-specific content, and LibreOffice should depend on it instead of GNOME runtime. But having in mind how much GNOME folks are trying to shove GNOME down our throats, I doubt that they will ever create it.

      2. alex

        A Gtk runtime wouldn’t be that different from the current Gnome runtime. From looking e.g. this https://git.gnome.org/browse/gnome-sdk-images/tree/org.gnome.Sdk.json.in?h=gnome-3-20 I don’t find much that I would call “Gnome-specific”. A Gtk runtime that could be useful for a relevant number of applications would very likely contain most of (if not all of) the stuff that’s currently in the Gnome runtime.

        Also, why wouldn’t you want to install the Gnome runtime? Sorry, but I can’t see how that would be bad in any way.

      3. Piotr Jurkiewicz

        Thank you for the link. Indeed, it seems that this runtime contains mostly GTK things. The only GNOME-specific packages inside this runtime are: cantarell-fonts, adwaita-icon-theme and gnome-themes-standard. It still, however, contains packages which aren’t used by other desktop environments or LibreOffice, for example: cogl, clutter or gjs. Therefore I still thing there is a place for pure GTK platform runtime.

      4. alex

        Well IIRC Cinnamon uses cogl and clutter (and a fork of gjs), so that part of your post is not entirely true. But I don’t see why that point would matter here anyway.

        And you still haven’t answered my question. What’s the benefit in creating a separate Gtk runtime? What’s so awful about installing the Gnome runtime? Maintaining a Flatpak runtime is similar to maintaining an OS. Doing that for no real technical benefit and just because you happen to hate Gnome doesn’t seem like a rational choice to me.

      5. Piotr Jurkiewicz

        > What’s so awful about installing the Gnome runtime?

        Assume that you use flatpak to provide apps of other GTK-based desktop environment, for example MATE. Therefore you probably have ‘org.mate.Platform’ installed, which by the way contains all GTK dependencies required by LibreOffice. But as LibreOffice depends on ‘org.gnome.Platform’ instead generic GTK runtime, you would have to install it and waste 644 MB of space.

        Yes, I know that flatpak supports deduplication, but it would require reproducible builds between shared contents of ‘org.mate.Platform’ and ‘org.gnome.Platform’, what is almost impossible to achieve.

        The correct solution is to have ‘org.gtk.Platform’, which itself will be a dependency of non-GNOME GTK apps (like LibreOffice) and DE-specific platforms (like ‘org.gnome.Platform’ or ‘org.mate.Platform’).

        Making ‘org.gnome.Platform’ instead ‘org.gtk.Platform’ and pushing it as a dependency of non-GNOME apps is yet another egoistic move of GNOME developers, who apparently assume that there are no other GTK consumers than GNOME itself.

        > you happen to hate Gnome

        GNOME deserves the hate it gets, mainly for moves like this. Breaking non-GNOME apps and desktop environments with literally each GTK release is another reason.

      6. alex

        You don’t seem to understand how runtimes work in Flatpak; they can’t depend on other runtimes. Flatpak is not a package manager and is not meant to be one. So if LibreOffice used a hypothetical Gtk runtime, you would have to install both the Gtk and Gnome/Mate runtimes. And since a hypothetical Gtk runtime wouldn’t be much smaller than the Gnome runtime, this would not reduce disk usage by much on Mate (and increase it on Gnome). I also don’t think that 534MB (the size of the Gnome x86_64 3.20 runtime on my machine as reported by du -hs) is that big of a problem. Compared to the size of SSDs/HDDs in current computers (or even those that are several years old) that’s just not a relevant size.

  8. Pingback: Links 2/6/2016: Nextcloud, Arch Linux 2016.06.01 | Techrights

  9. me

    $ flatpak install –user –bundle LibreOffice.flatpak
    error: org.libreoffice.LibreOffice branch fresh already installed

    $ flatpak uninstall org.libreoffice.LibreOffice
    error: org.libreoffice.LibreOffice master not installed

    $ flatpak list
    error: app/org.libreoffice.LibreOffice/x86_64/fresh not installed

    Reply
    1. stbergmann Post author

      Try “flatpak uninstall org.libreoffice.LibreOffice fresh” to explicitly uninstall the “fresh” branch. (There is only a “fresh” branch for LibreOffice in flatpak, but sometimes flatpak might instead want to operate on a branch named “master” by default, and needs to be told explicitly.) Also note to be consistent with adding –user vs. –system (which is the default) to flatpak commands; –user uses your own private area of Flatpak infrastructure (and doesn’t require sudo).

      Reply
      1. Bastián

        Hi. I love Flatpak and I like that LibreOffice is distributed with this system.
        Do you think that in the future be distributed LibreOffice”Still” and “Fresh” version using Flatpak? … Thank you

      2. stbergmann Post author

        Yes, we could have an additional “still” branch (“lagging behind” the “fresh” branch), or we could have individual branches for 5.2, 5.3, etc., or… But nothing is concretely planned yet. Lets first see to get LO 5.2 final published in the “fresh” branch.

      3. haevalencia

        A question. Since version 5.1 minimum OpenGL version was updated to use 3D transitions. I have seen that there have been several reports bug where despite having the minimum requirements, transitions do not work well.

        As a workaround I uninstall ogltrans and everything returns to work well. Is it possible to do the same with Flatpak without having to build a new package?. I would like to again these transitions be handled as an extension that was easily deactivated.

    2. Kostic

      You are missing the –user flag in the second and third command. Flatpak has two “modes” of usage. System wide (where it puts programs in /var/lib/flatpak if I’m not mistaken) and user-specific (.local/share/flatpak dir). You installed to the user namespace but you try to uninstall and list from the system namespace.

      Reply
      1. me

        I tried uninstall with the –user flag as well and got the same error. I managed to fix it by deleting some empty folders in ~/.local/share/flatpak/app/org.libreoffice.LibreOffice then installing again. Must not have installed correctly the first time.
        BTW –user isn’t needed for list.

  10. Pingback: Flatpak is gaining momentum | Brno's hat

    1. stbergmann Post author

      Due to vacations, the 5.2 final flatpak is unfortunately delayed somewhat. But I hope it becomes available for download real soon now.

      (And, for now at least, we’re only planing on a single “fresh” flatpak branch, so there won’t be flatpak’ed versions of 5.1.x, nor of any 5.2.y that will be released after 5.3.)

      Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s