keepassxc autounlock with kdewallet
- the user password in the system must be the same as the password from the kwallet database to automatically unlock the database upon login.
- create folder for keebass db passwords and record with password for db by hand in kwalletmanager5
#!/usr/bin/env bash
USERNAME=$(whoami)
HOMEPATH=$(echo ~$USERNAME)
# $KDBXPATH, $FOLDERNAME, $RECORDNAME and $WALLETNAME you must specify manually
# here i put my details
FOLDERNAME=keepassxc
RECORDNAME=pass.kdbx
WALLETNAME=kdewallet
KDBXPATH="$HOMEPATH/cloud/rslsync/markov/pass.kdbx"
KWALLETQUERYPATH=$(which kwallet-query)
KEEPASSXCPATH=$(which keepassxc)
echo "#!/usr/bin/env bash
$KWALLETQUERYPATH -f $FOLDERNAME -r $RECORDNAME $WALLETNAME | $KEEPASSXCPATH --pw-stdin $KDBXPATH
" > $HOMEPATH/.local/bin/keepass_autostart.sh
chmod +x $HOMEPATH/.local/bin/keepass_autostart.sh
echo "[Desktop Entry]
Exec=$HOMEPATH/.local/bin/keepass_autostart.sh
Icon=dialog-scripts
Name=keepass_autostart.sh
Path=
Type=Application
X-KDE-AutostartScript=true
" > $HOMEPATH/.config/autostart/keepass_autostart.sh.desktop
echo 'auth optional pam_kwallet5.so
session optional pam_kwallet5.so
' | sudo tee -a /etc/pam.d/sddm
Содержание