29 lines
1.7 KiB
Markdown
29 lines
1.7 KiB
Markdown
+++
|
|
title = "Getting the Nextcloud client to save login info on arch Linux (or any barebones Linux distro)"
|
|
date = 2021-12-12T14:59:31-05:00
|
|
draft = false
|
|
+++
|
|
|
|
During the 5 or so years I've had Nextcloud, I've always been quite happy with the web client, but the device clients... need some work.
|
|
I recently figured out how to resolve one of my biggest pain points on the Linux desktop client, and am recording it here, mostly so I don't forget next time I setup a new computer,
|
|
and to save others with the same problem from endless forum post and GitHub issue crawling.
|
|
|
|
## The cause
|
|
Nextcloud expects the environment it is running in to have a 'keychain manager' installed and accessible by libsecret.
|
|
However, currently, the Arch Linux Nextcloud package does not list libsecret nor any keychain manager as a dependency.
|
|
This does not cause a problem if you are using a desktop environment, as they will come with one in their own dependency cloud, but if you are just using a window manager, you may very well not have one installed.
|
|
|
|
(as a side note, this also seems to cause a significant delay in the client starting up, probably some sort of timeout waiting to access the keyring
|
|
|
|
## The solution
|
|
|
|
The solution is... surprisingly simple. You just need to install the `gnome-keyring` and `libsecret` packages, and set them up to autostart. In order to autostart them properly, adding these 2 lines to your `.xinitrc` is enough.
|
|
|
|
{{<highlight bash "linenos=false">}}
|
|
#get gnome-keyring running
|
|
dbus-update-activation-environment --all
|
|
gnome-keyring-daemon --start --components=secrets
|
|
{{</highlight>}}
|
|
|
|
(yes, you do need `dbus-update-activiation-environment`, as `gnome-keyring` seemingly relies on certain environment variables to start properly.)
|