From 226bb9df693de5dd30b034f25722c46324692909 Mon Sep 17 00:00:00 2001 From: cubernetes Date: Fri, 23 Oct 2026 12:29:52 +0200 Subject: [PATCH] kpxc-search update and keepass with accessibility --- hosts/fw/configuration.nix | 10 +++++++++- hosts/fw/scripts/kpxc-search | 4 ++++ modules/home-manager/bash.nix | 3 ++- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/hosts/fw/configuration.nix b/hosts/fw/configuration.nix index f8870b6..53412b4 100644 --- a/hosts/fw/configuration.nix +++ b/hosts/fw/configuration.nix @@ -414,7 +414,6 @@ with lib; jless jq kdotool - keepassxc ksh libarchive libreoffice @@ -484,6 +483,15 @@ with lib; yt-dlp yubioath-flutter + (pkgs.symlinkJoin { + name = "keepassxc"; + paths = [ pkgs.keepassxc ]; + nativeBuildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/keepassxc --set QT_LINUX_ACCESSIBILITY_ALWAYS_ON 1 + ''; + }) + keepassxc (pkgs.writeShellScriptBin "kpxc-search" '' export GI_TYPELIB_PATH=${pkgs.lib.makeSearchPath "lib/girepository-1.0" [ pkgs.at-spi2-core pkgs.glib.out pkgs.gobject-introspection diff --git a/hosts/fw/scripts/kpxc-search b/hosts/fw/scripts/kpxc-search index 0ac7d63..07cec3d 100755 --- a/hosts/fw/scripts/kpxc-search +++ b/hosts/fw/scripts/kpxc-search @@ -88,6 +88,10 @@ def is_line_edit(role, states): and states is not None and states.contains(Atspi.StateType.SHOWING) and states.contains(Atspi.StateType.EDITABLE) + # A disabled (greyed-out) field still reports EDITABLE, e.g. the + # search box while the database is locked. + and states.contains(Atspi.StateType.ENABLED) + and states.contains(Atspi.StateType.SENSITIVE) and not states.contains(Atspi.StateType.MULTI_LINE) ) diff --git a/modules/home-manager/bash.nix b/modules/home-manager/bash.nix index 6dc6cfc..915d54e 100644 --- a/modules/home-manager/bash.nix +++ b/modules/home-manager/bash.nix @@ -10,7 +10,7 @@ source "${pkgs.bash-completion}/etc/profile.d/bash_completion.sh" fi - [ "$DISPLAY" ] && xset r rate 300 60 + [ "$DISPLAY" ] && [ ! "$DISPLAY" = needs-to-be-defined ] && xset r rate 300 60 #-##################### user specific aliases and functions ###################### if [ -d ~/.bashrc.d ]; then @@ -107,6 +107,7 @@ respawn_shell () { : 'Intelligently respawn shell' : 'pure posix sh without forking' + : 'actually, exec -l is not posix, and exec -l /proc/self/exe does not make a lot of sense' if [ "''${BASH_VERSINFO-}" ] && command -v bash 1>/dev/null 2>&1; then if _is_login_shell; then exec bash -l