From 7dd52328906ba877baadcd5c3b36a1529231313f Mon Sep 17 00:00:00 2001 From: UGA Innovation Factory Date: Mon, 8 Dec 2025 17:38:39 +0000 Subject: [PATCH] force gsettings on-screen-keyboard true --- sw-kiosk.nix | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/sw-kiosk.nix b/sw-kiosk.nix index 557c1cb..68be3c3 100644 --- a/sw-kiosk.nix +++ b/sw-kiosk.nix @@ -12,7 +12,6 @@ services.xserver = { enable = true; - displayManager.gdm.enable = true; desktopManager.phosh = { enable = true; user = "engr-ugaif"; @@ -20,6 +19,14 @@ }; }; + services.displayManager = { + gdm.enable = true; + autoLogin = { + enable = true; + user = "engr-ugaif"; + }; + }; + services.dbus.enable = true; programs.dconf = { @@ -47,6 +54,10 @@ }]; }; }; + + security.pam.services."login".enableGnomeKeyring = true; + security.pam.services."gdm-password".enableGnomeKeyring = true; + services.gnome.gnome-keyring.enable = true; systemd.user.services.squeekboard = { description = "Squeekboard on-screen keyboard"; @@ -69,6 +80,24 @@ "/run/current-system/sw/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}/glib-2.0/schemas"; }; + systemd.user.services."force-osk" = { + description = "Force-enable GNOME OSK after session init"; + wantedBy = [ "graphical-session.target" ]; + partOf = [ "graphical-session.target" ]; + + unitConfig = { + After = [ "gnome-session-initialized.target" "graphical-session.target" ]; + }; + + serviceConfig = { + ExecStart = '' + ${pkgs.glib.bin}/bin/gsettings set \ + org.gnome.desktop.a11y.applications screen-keyboard-enabled true + ''; + Type = "oneshot"; + }; + }; + systemd.user.services."chromium-kiosk" = { description = "Chromium kiosk"; wantedBy = [ "graphical-session.target" ];