Since the big update (new gui) keepassXC very very rarely remembers the last database no matter whether I shutdown the desktop cleanly or with a three or four finger salute (KDE only ?). Before the update it remembered fine. It is enabled in the options. Remember and open on startup
As I only ever use one database my workaround has been , just now, to change it's user .desktop file to explicitly open the database
Ask me for the password for the last used database instead of having to navigate to it's location almost every time.
Have to navigate to it's location almost every time.
It occasionally works but I fail to see a pattern. I've tried making sure KeepassXC is closed cleanly but that doesn't make a difference AFAICT.
KeePassXC - Version 2.6.1
Revision: 9a35bba
Qt 5.15.0
Debugging mode is disabled.
Operating system: Gentoo/Linux
CPU architecture: x86_64
Kernel: linux 5.8.3-gentoo-x86_64
Enabled extensions:
Cryptographic libraries:
libgcrypt 1.8.6
Operating System: Linux/
Desktop Env: KDE
Windowing System: X11
You are mounting ~/.cache to a tmpfs?
Well that explains it then. Yes I do. Seems like an odd place to store settings. Or at least a setting.
I have an aversion to having these cache files hanging about potentially forever.
I have my workaround so if you're of the belief that .cache is the place to store settings (it isn't) please feel free to close :)
Edited to add: Cool program. Thanks.
You are not alone, there are a couple others who have mounted it to tmpfs. But really you are totally defeating the purpose of cache which is to prevent recreation of compiled/processed data all the time. You are also unnecessarily taking up space in your RAM (not a big concern these days). Either way, its arguable that its the right/wrong place to store this but XDG defines it as:
$XDG_CACHE_HOME defines the base directory relative to which user specific non-essential data files should be stored. If $XDG_CACHE_HOME is either not set or empty, a default equal to $HOME/.cache should be used.
There is no "local" config storage option in Linux. ~/.local/share is for "data" and so is ~/.cache. There really should be a ~/.local/config standard directory.
My own opinion is that it is a setting. Not data. But then everything is data to one degree or another.
And it IS essential. That is if remembering the last database is going to work as intended for those of us who prefer their local cache to be regularly wiped.
My cache isn't recreated all the time, just at reboots. It's a trade off I'm happy to make and with 32gb of ram and a 8 core recent CPU the impact is almost non existent.
I think ~/.config/keepassxc/keepassxc.ini is where it should be stored. I guess it must have resided there prior to the update ? I've just had a look through my .cache and nothing else seems to be storing settings like last used and windows states etc.
However if you disagree I fully respect that.
I must have been wrong about keepassXC forgetting when I'd only restarted X. It's not something I've been focusing on. Just a tiny annoyance.
A bit of effort but maybe you could check if ~/.cache is mounted on a tmpfs and if so warn the user that remembering databases is not going to work.
However, once again, thanks.
Now I know what's going on, a better workaround for me and others affected possibly ?
mkdir ~/.cache/keepassxc
ln -s ~/.config/keepassxc/keepassxclocal.ini ~/.cache/keepassxc/keepassxc.ini
at the top of my .xinitrc. Now I keep my window states as well. :)
Anyone using a window manager will probably have to put this somewhere else ?
I'm old school. startx !
We should just store the local config in ~/.local/share/keepassxc
Most helpful comment
We should just store the local config in ~/.local/share/keepassxc