{pkgs, ...}: let
  toTOML = (pkgs.formats.toml {}).generate;
in {
  users.users.someone.packages = [pkgs.ashell];

  xdg.configFile."ashell/config.toml".source = toTOML "config.toml" {
    modules = {
      left = [["appLauncher" "Updates" "Workspaces" "ScreenMirror"] "MediaPlayer"];
      center = ["WindowTitle"];
      right = ["SystemInfo" ["Tray" "Clock" "Privacy" "Settings"]];
    };
    system_info = {
      indicators = ["Cpu" "Memory" "Temperature"];
      cpu = {
        warn_threshold = 60;
        alert_threshold = 80;
      };
      memory = {
        warn_threshold = 70;
        alert_threshold = 85;
      };
      temperature = {
        warn_threshold = 60;
        alert_threshold = 80;
      };
    };
    tempo = {
      clock_format = "%a %d %b %R";
      weather_location = {City = "Amsterdam";};
    };
    appearance.style = "Islands";
    ScreenMirror = [
      {
        name = "ScreenMirror";
        icon = "";
        command = "bash /etc/nixos/scripts/screen-mirror.sh";
      }
    ];
  };
}
