Describe and hack around the Seafile problem.
This commit is contained in:
parent
227585b0ee
commit
8320832fc7
2 changed files with 71 additions and 1 deletions
|
@ -1,5 +1,5 @@
|
|||
with import <nixpkgs> {};
|
||||
stdenv.mkDerivation {
|
||||
name = "seafile";
|
||||
buildInputs = [ seafile-client ];
|
||||
buildInputs = [ seafile-shared ];
|
||||
}
|
||||
|
|
|
@ -21,6 +21,76 @@
|
|||
6. Run =nix-shell [[file:shell-seafile.nix][shell-seafile.nix]]= and, within it,
|
||||
=seafile-applet= to sync the changes to the server.
|
||||
|
||||
* Seafile problem <2020-02-17 Mon>
|
||||
** Problem
|
||||
After another update, Seafile started telling me this when I tried
|
||||
to start it:
|
||||
#+BEGIN_QUOTE
|
||||
qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""
|
||||
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
|
||||
|
||||
Aborted (core dumped)
|
||||
#+END_QUOTE
|
||||
|
||||
I did a couple hours of searching, and found some threads, which did
|
||||
not help:
|
||||
|
||||
- https://github.com/NixOS/nixpkgs/issues/42893
|
||||
|
||||
Idea: imperatively install Seafile and then tell it where to
|
||||
search for plugin:
|
||||
#+BEGIN_SRC shell
|
||||
nix-env -iA nixpkgs.qt5.qtbase
|
||||
export XDG_DATA_DIRS=$HOME/.nix-profile/share:$XDG_DATA_DIRS
|
||||
#+END_SRC
|
||||
Tried this literally, got
|
||||
#+BEGIN_QUOTE
|
||||
error: attribute 'nixpkgs' in selection path 'nixpkgs.qt5.qtbase' not found
|
||||
#+END_QUOTE
|
||||
|
||||
- https://github.com/NixOS/nixpkgs/issues/65399
|
||||
|
||||
There is a new way to describe Qt packages which correctly handles
|
||||
looking for plugins, this issue is there to help track all the
|
||||
problems that this may lead to. There is [[https://hydra.nixos.org/build/96804884/download/1/nixpkgs/manual.html#sec-language-qt][some documentation]] as to
|
||||
how to do it properly. I didn't feel like hacking Nixpkgs right
|
||||
away.
|
||||
|
||||
- https://forum.qt.io/topic/111553/solved-qt-qpa-plugin-could-not-find-the-qt-platform-plugin-xcb-in/7
|
||||
|
||||
Tell Seafile where to look for plugins. This is not necessarily
|
||||
even applicable with Nix.
|
||||
|
||||
- https://github.com/haiwen/seafile/issues/6
|
||||
|
||||
Apparently, Seafile has a CLI interface, but I don't find it in
|
||||
my installation. More concretely, the file =seafile-cli= appears
|
||||
in shell completions, but it doesn't launch nor could I find
|
||||
where it was.
|
||||
|
||||
** My hack <2020-02-17 Mon>
|
||||
My current hack consists in the following modifications:
|
||||
|
||||
1. Add =qt5.qtbase= and =seafile-client= to =home.packages= in
|
||||
[[/home/scolobb/.config/nixpkgs/home.nix][=home.nix=]].
|
||||
|
||||
2. Install =seafile-shared= instead of =seafile-client= in
|
||||
[[file:shell-seafile.nix][=shell-seafile.nix=]].
|
||||
|
||||
Very weirdly, this makes =seafile-applet= work. I tried not doing
|
||||
(1) and putting all the packages in [[file:shell-seafile.nix][=shell-seafile.nix=]], but it
|
||||
won't work. Also, again weirdly, outside of Nix shell the
|
||||
=seafile-applet= coming from the home-manager installation never
|
||||
gets past the message
|
||||
#+BEGIN_QUOTE
|
||||
lang = English, translation = (null), locale.name() = en_US
|
||||
#+END_QUOTE
|
||||
without showing the interface or doing whatsoever.
|
||||
|
||||
** Proper solution?
|
||||
A proper solution would probably consist in updating the Seafile
|
||||
package to comply with the new [[https://hydra.nixos.org/build/96804884/download/1/nixpkgs/manual.html#sec-language-qt][way to describe Qt packages]].
|
||||
|
||||
* Removing the publish cache
|
||||
Org-publish will not detect files being deleted from the output. To
|
||||
force it to clear its caches, do the following:
|
||||
|
|
Loading…
Reference in a new issue