ONLYOFFICE DesktopEditors packaged!

I have packaged onlyoffice-desktopeditors, the best office suite on linux ever from my perspective. This is a local offline version.

Package

{ appimageTools, makeDesktopItem, fetchurl }:

let
  pname = "desktopeditors";
  version = "5.5.1";
  name = "${pname}-${version}";

  src = fetchurl {
    url =
      "https://github.com/ONLYOFFICE/DesktopEditors/releases/download/ONLYOFFICE-DesktopEditors-${version}/DesktopEditors-x86_64.AppImage";
    sha256 = "135ag43r9njphsvfvqczq1v36f67j793idaj7pn4nll169k41i6j";
  };

  appimageContents = appimageTools.extractType2 { inherit name src; };
in appimageTools.wrapType2 {
  inherit name src;
  extraPkgs = pkgs: with pkgs; [ libpulseaudio ];
  extraInstallCommands = ''
    mv $out/bin/${name} $out/bin/${pname}
    install -m 444 -D ${appimageContents}/onlyoffice-desktopeditors.desktop $out/share/applications/onlyoffice-desktopeditors.desktop
    install -m 444 -D ${appimageContents}/asc-de.png $out/share/icons/hicolor/256x256/apps/asc-de.png
  '';
}
5 Likes

Screenshots:


1 Like

Just out of curiosity, I’m a WYSIWYM kind of documents writer, what are your personal pros of onlyoffice over say Libreoffice?

Big pro: less incompatibility with MS word Documents. I hate others send me word docs because I cannot process them or even open them without malformat issue popping out. With this, I can get almost all of documents correctly rendered and processed.
Also, it is pretty looking. It looks pretty the same as MS Office. And it is a free software.

What’s the license situation?

AGPL-3.0

For testing purpose I continued this package in my NUR repository. You can try the package nur.repos.onny.onlyoffice if you want :slight_smile: I’ve packaged version 5.6. Still not sure which features might be missing or bugs still present.

1 Like

Thanks! Will try out!

Unfortunately it does not run yet on Sway (Wayland) because QT cannot find module wayland-egl. Do you know how to fix this?

Thank you for the package!

I noticed a couple of things:

  1. The script which runs onlyoffice produces some errors:
grep: /home/emmanuel/.config/user-dirs.dirs: No such file or directory
/nix/store/6id1am1x354fs30slkws50j62hv84jpz-onlyoffice-desktopeditors-5.6.0-extracted/usr/bin//desktopeditors: line 88: [: =: unary operator expected
mkdir: missing operand
Try 'mkdir --help' for more information.
  1. The system fonts are not recognized. It seems restricted to some built-in fonts.
2 Likes

Oh how much I would fancy that integrated into Nextcloud on NixOS.

2 Likes

Yes, it is known that the fonts and input methods are not working. Not sure how to work around that.
I think it would be better for us to native-build it instead of using buggy AppImage version.
However, the onlyoffice Desktop Editor has no easy-to-follow compilation guide. Help needed.

Seems like the shell error is an upstream bug instead of something specific to NixOS.
https://aur.archlinux.org/packages/onlyoffice-bin/

Hm, I’m not sure if it’s really relevant since if I understand correctly you’re only packing the (AppImage) binaries, but I did start with a source build two years ago. I’ve since abandoned it for LibreOffice Online and forgot almost all I know about the onlyoffice* internals, but maybe it’s useful for your work.

* → I prefer a more quiet way to write it :wink:

2 Likes

ahhhhh…at last…my wishlist app is coming…thanks a lot bro :grinning:

1 Like

Finally, a working one https://github.com/icebox-nix/iceberg/blob/adfe05c7e75b68e91438c60540709d98a62d9578/pkgs/office/onlyoffice-bin/default.nix
Credit:
https://github.com/GTrunSec/onlyoffice-desktopeditors-flake

This fixed everything, no single flaw noticed yet.

I’m adding a nixpkgs package libreoffice-bin in this PR: onlyoffice-bin: init at 6.1.0 by nh2 · Pull Request #116343 · NixOS/nixpkgs · GitHub

It is based on the packages mentioned above.

@LEXUGE @GTrunSec and others: Would you be up for being co-maintainer of that?

1 Like

thanks for your job. it’s ok feel free to put me into the maintainer list.

1 Like

@GTrunSec For this I will have to add you to maintainers-list.nix.

It consists of snippets like this:

  nh2 = {
    email = "mail@nh2.me";
    github = "nh2";
    githubId = 399535;
    name = "Niklas Hambüchen";
  };

Could you tell me what you’d like to have in there for email and name?

Thanks!

Thanks

gtrunsec = {
    email = "gtrunsec@hardenedlinux.org";
    github = "gtrunsec";
    githubId = 21156405;
    name = "GuangTao Zhang";
  };