{ config, lib, pkgs, ... }: let emacsWithPackages = (pkgs.emacsPackagesFor pkgs.emacs30-pgtk).emacsWithPackages; myemacs = emacsWithPackages (epkgs: [ epkgs.mu4e ]); in { services.pcscd.enable = true; services.fwupd.enable = true; environment.systemPackages = with pkgs; [ brightnessctl ghostscript fprintd font-awesome myemacs virtiofsd rocmPackages.rocm-smi ]; users.users.joe.packages = with pkgs; [ system76-keyboard-configurator (import ./scripts/sat-connect.nix { inherit pkgs; }) ]; programs.gnupg.agent = { enable = true; enableSSHSupport = true; }; services.acpid = { enable = true; handlers.lidClosed = { event = "button/lid \\w+ close"; action = '' cat /sys/class/backlight/amdgpu_bl2/device/enabled if grep -Fxq disabled /sys/class/backlight/amdgpu_bl2/device/enabled then echo "Lid closed. Disabling fprintd." systemctl stop fprintd ln -s /dev/null /run/systemd/transient/fprintd.service systemctl daemon-reload fi ''; }; handlers.lidOpen = { event = "button/lid \\w+ open"; action = '' if ! $(systemctl is-active --quiet fprintd); then echo "Lid open. Enabling fprintd." rm -f /run/systemd/transient/fprintd.service systemctl daemon-reload systemctl start fprintd fi ''; }; }; }