{ lib, ... }:
let
  shellAliases = {
    ll = "ls -alh";
    update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
    update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
    update-flake = "nix flake update pi4-nixpkgs pi4-home-manager pi4-impermanence pi4-sops-nix pi4-nixos-hardware pi4-nixos-raspberrypi pi4-disko --flake /etc/nixos";
    update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
    nas-ssh = "kitten ssh admin@10.0.1.3";
    ducks = "du -cksh * | sort -hr | head -n 15";
  };
in
{
  home.username = "matt";

  sops = {
    age.keyFile = "/home/matt/.config/sops/age/keys.txt";
    defaultSopsFile = "/etc/nixos/secrets/secrets.yaml";
    validateSopsFiles = false;
    secrets = {
      "ssh-keys-public/pi4" = {
        path = "/home/matt/.ssh/id_ed25519.pub";
        mode = "0644";
      };
      "ssh-keys-private/pi4" = {
        path = "/home/matt/.ssh/id_ed25519";
        mode = "0600";
      };
      #     "ssh-keys-public/desktop-nixos" = {
      #       path = "/home/matt/.ssh/authorized_keys";
      #       mode = "0600";
      #     };

      #     "ssh-keys-public/desktop-nixos-root" = {
      #       path = "/home/matt/.ssh/authorized_keys2";
      #       mode = "0600";
      #     };

      #     "ssh-keys-public/desktop-windows" = {
      #       path = "/home/matt/.ssh/authorized_keys3";
      #       mode = "0600";
      #     };

      #     "ssh-keys-public/macbook-macos" = {
      #       path = "/home/matt/.ssh/authorized_keys4";
      #       mode = "0600";
      #     };
    };
  };

  programs = {
    mangohud.enable = lib.mkForce true;
    zsh.shellAliases = shellAliases;
  };

  services = {
    nextcloud-client.enable = lib.mkForce false;
    kdeconnect = {
      enable = false;
      indicator = false;
    };
  };
}
