refactor: Use sway compositor instead of cage

This commit is contained in:
UGA Innovation Factory
2025-12-05 20:21:44 +00:00
committed by Hunter Halloran
parent 8a0f8ea25b
commit f5e92f4b44

View File

@@ -1,8 +1,46 @@
{ pkgs, inputs, ... }:
{
services.cage = {
programs.sway = {
enable = true;
wrapperFeatures.gtk = true;
};
# Login manager that starts sway on a real TTY
services.greetd = {
enable = true;
settings = {
default_session = {
user = "engr-ugaif";
command = ''
/run/current-system/sw/bin/sway --config /etc/sway-kiosk.conf
'';
};
};
};
# Sway config for kiosk
environment.etc."sway-kiosk.conf".text = ''
# No fancy tiling, just a fullscreen kiosk
exec_always {
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
exec ${pkgs.chromium}/bin/chromium \
--kiosk "https://ha.factory.uga.edu"
}
# On-screen keyboard (once you add wvkbd)
exec_always ${pkgs.wvkbd}/bin/wvkbd-mobintl
# Basic output config if needed
output * scale 1
'';
services.dbus.enable = true;
services.dbus.implementation = "dbus";
services.cage = {
enable = false;
user = "engr-ugaif";
program = "${(pkgs.writeShellScriptBin "chromium-kiosk" ''
sleep 5
@@ -47,13 +85,15 @@
oh-my-posh
zsh
git
squeekboard
dbus
inputs.lazyvim-nixvim.packages.${stdenv.hostPlatform.system}.nvim
];
programs.chromium = {
enable = true;
extensions = [
"ofelldpjbfeheadojfhkagakafgghlji" # Chrome Virtual Keyboard
# "ofelldpjbfeheadojfhkagakafgghlji" # Chrome Virtual Keyboard
];
};