summary refs log tree commit diff stats
path: root/user/settings
diff options
context:
space:
mode:
Diffstat (limited to 'user/settings')
-rw-r--r--user/settings/accounting.nix6
-rw-r--r--user/settings/base.nix64
-rw-r--r--user/settings/chat.nix6
-rw-r--r--user/settings/darwin.nix65
-rw-r--r--user/settings/development/base.nix51
-rw-r--r--user/settings/development/clojure.nix6
-rw-r--r--user/settings/development/javascript.nix72
-rw-r--r--user/settings/development/lisp.nix9
-rw-r--r--user/settings/development/rust.nix6
-rw-r--r--user/settings/development/web.nix21
-rw-r--r--user/settings/dunst.nix6
-rw-r--r--user/settings/emacs.nix247
-rw-r--r--user/settings/gaming.nix6
-rw-r--r--user/settings/git.nix6
-rw-r--r--user/settings/gnupg.nix6
-rw-r--r--user/settings/golang.nix10
-rw-r--r--user/settings/i3.nix70
-rw-r--r--user/settings/ledger.nix6
-rw-r--r--user/settings/mail.nix7
-rw-r--r--user/settings/music-management.nix6
-rw-r--r--user/settings/music.nix10
-rw-r--r--user/settings/nix.nix6
-rw-r--r--user/settings/nixos.nix6
-rw-r--r--user/settings/nixpkgs.nix15
-rw-r--r--user/settings/passwords.nix6
-rw-r--r--user/settings/rofi.nix9
-rw-r--r--user/settings/satoshipay.nix62
-rw-r--r--user/settings/ssh.nix7
-rw-r--r--user/settings/sxhkd.nix6
-rw-r--r--user/settings/tabnine.nix29
-rw-r--r--user/settings/trezor.nix6
-rw-r--r--user/settings/user-interface.nix33
-rw-r--r--user/settings/xresources.nix6
-rw-r--r--user/settings/zsh.nix76
34 files changed, 537 insertions, 416 deletions
diff --git a/user/settings/accounting.nix b/user/settings/accounting.nix
index 65b3a6e1..903d6aa9 100644
--- a/user/settings/accounting.nix
+++ b/user/settings/accounting.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     ledger
     hledger
diff --git a/user/settings/base.nix b/user/settings/base.nix
index 74c759bb..c15b2767 100644
--- a/user/settings/base.nix
+++ b/user/settings/base.nix
@@ -1,6 +1,9 @@
-{ config, lib, pkgs, ... }:
-
 {
+  config,
+  lib,
+  pkgs,
+  ...
+}: {
   imports = [
     ../modules/nvim-coc.nix
   ];
@@ -37,7 +40,10 @@
   };
   home.sessionVariables = {
     EMAIL = "alan@alanpearce.eu";
-    XDG_CACHE_HOME = if pkgs.stdenv.isDarwin then "$HOME/Library/Caches/XDG" else "$HOME/.cache";
+    XDG_CACHE_HOME =
+      if pkgs.stdenv.isDarwin
+      then "$HOME/Library/Caches/XDG"
+      else "$HOME/.cache";
     XDG_CONFIG_HOME = "$HOME/.config";
     XDG_DATA_HOME = "$HOME/.local/share";
   };
@@ -55,33 +61,31 @@
     };
   };
   home.packages = with pkgs;
-  [
-    pv
-    fd
-    sd
-    entr
-    ripgrep
-    iftop
-    nmap
-    moreutils
-    mtr
-    tree
-    abduco
-    dvtm
-    vimv
-  ] ++
-  (
-    if !stdenv.isDarwin
-    then
-    [
-      file
-      ldns
-      lsof
-      unar
-      zip
-    ]
-    else
     [
+      pv
+      fd
+      sd
+      entr
+      ripgrep
+      iftop
+      nmap
+      moreutils
+      mtr
+      tree
+      abduco
+      dvtm
+      vimv
     ]
-  );
+    ++ (
+      if !stdenv.isDarwin
+      then [
+        file
+        ldns
+        lsof
+        unar
+        zip
+      ]
+      else [
+      ]
+    );
 }
diff --git a/user/settings/chat.nix b/user/settings/chat.nix
index 98259fef..f44b2508 100644
--- a/user/settings/chat.nix
+++ b/user/settings/chat.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     signal-desktop
     wire-desktop
diff --git a/user/settings/darwin.nix b/user/settings/darwin.nix
index 50d84464..a362bf57 100644
--- a/user/settings/darwin.nix
+++ b/user/settings/darwin.nix
@@ -1,39 +1,42 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   nixpkgs.overlays = [
     (self: super: {
-      darwin-zsh-completions = super.runCommand "darwin-zsh-completions-0.0.0" {
-        preferLocalBuild = true;
-      } ''
-        mkdir -p $out/share/zsh/site-functions
-        cat <<-'EOF' > $out/share/zsh/site-functions/_darwin-rebuild
-        #compdef darwin-rebuild
-        #autoload
-        _nix-common-options
-        local -a _1st_arguments
-        _1st_arguments=(
-        'switch:Build, activate, and update the current generation'\
-        'build:Build without activating or updating the current generation'\
-        'check:Build and run the activation sanity checks'\
-        'changelog:Show most recent entries in the changelog'\
-        )
-        _arguments \
-        '--list-generations[Print a list of all generations in the active profile]'\
-        '--rollback[Roll back to the previous configuration]'\
-        {--switch-generation,-G}'[Activate specified generation]'\
-        '(--profile-name -p)'{--profile-name,-p}'[Profile to use to track current and previous system configurations]:Profile:_nix_profiles'\
-        '1:: :->subcmds' && return 0
-        case $state in
-        subcmds)
-        _describe -t commands 'darwin-rebuild subcommands' _1st_arguments
-        ;;
-        esac
-        EOF
-      '';
+      darwin-zsh-completions =
+        super.runCommand "darwin-zsh-completions-0.0.0" {
+          preferLocalBuild = true;
+        } ''
+          mkdir -p $out/share/zsh/site-functions
+          cat <<-'EOF' > $out/share/zsh/site-functions/_darwin-rebuild
+          #compdef darwin-rebuild
+          #autoload
+          _nix-common-options
+          local -a _1st_arguments
+          _1st_arguments=(
+          'switch:Build, activate, and update the current generation'\
+          'build:Build without activating or updating the current generation'\
+          'check:Build and run the activation sanity checks'\
+          'changelog:Show most recent entries in the changelog'\
+          )
+          _arguments \
+          '--list-generations[Print a list of all generations in the active profile]'\
+          '--rollback[Roll back to the previous configuration]'\
+          {--switch-generation,-G}'[Activate specified generation]'\
+          '(--profile-name -p)'{--profile-name,-p}'[Profile to use to track current and previous system configurations]:Profile:_nix_profiles'\
+          '1:: :->subcmds' && return 0
+          case $state in
+          subcmds)
+          _describe -t commands 'darwin-rebuild subcommands' _1st_arguments
+          ;;
+          esac
+          EOF
+        '';
     })
   ];
-  home.packages = with pkgs; [ aspell aspellDicts.en darwin-zsh-completions ];
+  home.packages = with pkgs; [aspell aspellDicts.en darwin-zsh-completions];
 
   programs.emacs.package = pkgs.emacsMacport;
 
diff --git a/user/settings/development/base.nix b/user/settings/development/base.nix
index 64f52db9..d57680bd 100644
--- a/user/settings/development/base.nix
+++ b/user/settings/development/base.nix
@@ -1,31 +1,38 @@
-{ config, lib, pkgs, ... }:
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}: {
+  home.packages = with pkgs;
+    [
+      shellcheck
+      shfmt
+      editorconfig-core-c
+      python3Packages.yamllint
+      nodePackages.dockerfile-language-server-nodejs
+      nodePackages.yaml-language-server
 
-{ home.packages = with pkgs; [
-    shellcheck
-    shfmt
-    editorconfig-core-c
-    python3Packages.yamllint
-    nodePackages.dockerfile-language-server-nodejs
-    nodePackages.yaml-language-server
+      mosh
 
-    mosh
+      nix-prefetch-scripts
+      alejandra # nix formatter
 
-    nix-prefetch-scripts
-    alejandra # nix formatter
-
-    httpie
-    jq
-  ] ++ (
-    if !stdenv.isDarwin
-    then [
-      httping
-      (lib.lowPrio firefox-devedition-bin)
-    ] else [
+      httpie
+      jq
     ]
-  );
+    ++ (
+      if !stdenv.isDarwin
+      then [
+        httping
+        (lib.lowPrio firefox-devedition-bin)
+      ]
+      else [
+      ]
+    );
   nixpkgs.overlays = [
     (self: super: {
-      ripgrep = super.ripgrep.override { withPCRE2 = true; };
+      ripgrep = super.ripgrep.override {withPCRE2 = true;};
     })
   ];
 }
diff --git a/user/settings/development/clojure.nix b/user/settings/development/clojure.nix
index 0994ef19..7b06691a 100644
--- a/user/settings/development/clojure.nix
+++ b/user/settings/development/clojure.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     clojure
     node2nixPackages.node-cljfmt
diff --git a/user/settings/development/javascript.nix b/user/settings/development/javascript.nix
index 232ad4ce..9b8bdabf 100644
--- a/user/settings/development/javascript.nix
+++ b/user/settings/development/javascript.nix
@@ -1,9 +1,10 @@
-{ config, pkgs, ... }:
-
-let
-  nodejs = pkgs.nodejs-18_x;
-in
 {
+  config,
+  pkgs,
+  ...
+}: let
+  nodejs = pkgs.nodejs-18_x;
+in {
   nixpkgs.overlays = [
     (self: super: {
       node2nixPackages = super.callPackage ../../packages/node2nix {
@@ -11,37 +12,40 @@ in
       };
     })
   ];
-  home.packages = (with pkgs; [
-    nodejs
-  ] ++ (
-    if stdenv.isDarwin
-    then
-    [
-    ]
-    else
-    [
-      # npm install may use any of these
-      binutils
-      gnumake
-      gcc
-      python2
-    ]
-  )) ++ (with pkgs.nodePackages; [
-    node2nix
-    nodemon
-    javascript-typescript-langserver
-    typescript-language-server
-    eslint_d
-    typescript
+  home.packages =
+    (with pkgs;
+      [
+        nodejs
+      ]
+      ++ (
+        if stdenv.isDarwin
+        then [
+        ]
+        else [
+          # npm install may use any of these
+          binutils
+          gnumake
+          gcc
+          python2
+        ]
+      ))
+    ++ (with pkgs.nodePackages; [
+      node2nix
+      nodemon
+      javascript-typescript-langserver
+      typescript-language-server
+      eslint_d
+      typescript
 
-    node-gyp
-    node-gyp-build
-    node-pre-gyp
-  ]) ++ (with pkgs.node2nixPackages; [
-    pkgs.node2nixPackages."pnpm-7.12"
+      node-gyp
+      node-gyp-build
+      node-pre-gyp
+    ])
+    ++ (with pkgs.node2nixPackages; [
+      pkgs.node2nixPackages."pnpm-7.12"
 
-    pino-pretty
-  ]);
+      pino-pretty
+    ]);
 
   home.sessionVariables = {
     NO_UPDATE_NOTIFIER = "1"; # stop npm update-notifier
diff --git a/user/settings/development/lisp.nix b/user/settings/development/lisp.nix
index 9d591651..7a55c41c 100644
--- a/user/settings/development/lisp.nix
+++ b/user/settings/development/lisp.nix
@@ -1,6 +1,9 @@
-{ config, pkgs, ... }:
-
-{ home.packages = with pkgs; [
+{
+  config,
+  pkgs,
+  ...
+}: {
+  home.packages = with pkgs; [
     ccl
     sbcl
     lispPackages.quicklisp
diff --git a/user/settings/development/rust.nix b/user/settings/development/rust.nix
index d45b1a19..63d0db35 100644
--- a/user/settings/development/rust.nix
+++ b/user/settings/development/rust.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     cargo
     cargo-edit
diff --git a/user/settings/development/web.nix b/user/settings/development/web.nix
index f8b74adc..f1f45878 100644
--- a/user/settings/development/web.nix
+++ b/user/settings/development/web.nix
@@ -1,10 +1,15 @@
-{ config, pkgs, ... }:
 {
-  home.packages = with pkgs.nodePackages; [
-    vscode-css-languageserver-bin
-    vscode-html-languageserver-bin
-    csslint
-  ] ++ [
-    pkgs.nodePackages.stylelint
-  ];
+  config,
+  pkgs,
+  ...
+}: {
+  home.packages = with pkgs.nodePackages;
+    [
+      vscode-css-languageserver-bin
+      vscode-html-languageserver-bin
+      csslint
+    ]
+    ++ [
+      pkgs.nodePackages.stylelint
+    ];
 }
diff --git a/user/settings/dunst.nix b/user/settings/dunst.nix
index 950c77a2..0232d47f 100644
--- a/user/settings/dunst.nix
+++ b/user/settings/dunst.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   services.dunst = {
     enable = true;
     settings = {
diff --git a/user/settings/emacs.nix b/user/settings/emacs.nix
index 32fb24af..f8eb5c19 100644
--- a/user/settings/emacs.nix
+++ b/user/settings/emacs.nix
@@ -1,6 +1,9 @@
-{ config, pkgs, lib, ... }:
-
-let
+{
+  config,
+  pkgs,
+  lib,
+  ...
+}: let
   inherit (pkgs) stdenv;
 
   editorScript = pkgs.writeScriptBin "edit" ''
@@ -29,15 +32,14 @@ let
       Keywords=Text;Editor;
     '';
   };
-in
-{
+in {
   imports = [
     ../modules/eshell.nix
   ];
 
   programs.emacs = {
     enable = true;
-    package = lib.mkDefault (pkgs.emacsNativeComp.override { withGTK3 = true; });
+    package = lib.mkDefault (pkgs.emacsNativeComp.override {withGTK3 = true;});
     eshell = {
       aliases = {
         pk = "eshell-up-pk $1";
@@ -66,120 +68,123 @@ in
         cdg = "cd (projectile-project-root)";
       };
     };
-    extraPackages = epkgs: (with epkgs; [
-      ace-link
-      all-the-icons
-      almost-mono-themes
-      add-node-modules-path
-      ag
-      all-the-icons
-      amx
-      auto-async-byte-compile
-      avy
-      bash-completion
-      caddyfile-mode
-      cider
-      clojure-mode
-      company
-      company-web
-      company-tabnine
-      consult
-      consult-eglot
-      counsel
-      counsel-projectile
-      crux
-      docker-compose-mode
-      dockerfile-mode
-      dired-git-info
-      editorconfig
-      eglot
-      eldoc-box
-      emmet-mode
-      esh-autosuggest
-      esh-buf-stack
-      esh-help
-      eshell-fringe-status
-      eshell-toggle
-      eshell-up
-      evil
-      evil-anzu
-      evil-collection
-      evil-commentary
-      evil-embrace
-      evil-ledger
-      evil-matchit
-      evil-mu4e
-      evil-numbers
-      evil-org
-      evil-quickscope
-      evil-space
-      evil-surround
-      eyebrowse
-      feature-mode
-      format-all
-      flycheck
-      flyspell-correct
-      general
-      git-gutter-fringe
-      git-messenger
-      git-modes
-      git-timemachine
-      gitlab-ci-mode
-      gitlab-ci-mode-flycheck
-      go-mode
-      goto-chg
-      haskell-mode
-      helpful
-      ivy-hydra
-      janet-mode
-      jinja2-mode
-      js2-mode
-      json-mode
-      k8s-mode
-      kubel
-      kubel-evil
-      ledger-mode
-      magit
-      markdown-mode
-      modus-themes
-      doom-modeline
-      nginx-mode
-      nix-mode
-      nix-update
-      org-journal
-      paredit
-      php-mode
-      posframe
-      projectile
-      projectile-ripgrep
-      quickrun
-      racket-mode
-      rainbow-mode
-      rainbow-delimiters
-      restclient
-      ripgrep
-      rjsx-mode
-      rustic
-      scss-mode
-      spacemacs-theme
-      swiper
-      tide
-      toml-mode
-      tree-sitter
-      tree-sitter-langs
-      tree-sitter-indent
-      typescript-mode
-      undo-tree
-      use-package
-      web-mode
-      wgrep-ag
-      ws-butler
-      which-key
-      yaml-mode
-      yasnippet
-    ] ++ lib.optionals (!stdenv.isDarwin) [
-      pkgs.mu
-    ]);
+    extraPackages = epkgs: (with epkgs;
+      [
+        ace-link
+        all-the-icons
+        almost-mono-themes
+        add-node-modules-path
+        ag
+        all-the-icons
+        amx
+        apheleia
+        auto-async-byte-compile
+        avy
+        bash-completion
+        caddyfile-mode
+        cider
+        clojure-mode
+        company
+        company-web
+        company-tabnine
+        consult
+        consult-eglot
+        counsel
+        counsel-projectile
+        crux
+        docker-compose-mode
+        dockerfile-mode
+        dired-git-info
+        editorconfig
+        eglot
+        eldoc-box
+        emmet-mode
+        esh-autosuggest
+        esh-buf-stack
+        esh-help
+        eshell-fringe-status
+        eshell-toggle
+        eshell-up
+        evil
+        evil-anzu
+        evil-collection
+        evil-commentary
+        evil-embrace
+        evil-ledger
+        evil-matchit
+        evil-mu4e
+        evil-numbers
+        evil-org
+        evil-quickscope
+        evil-space
+        evil-surround
+        eyebrowse
+        feature-mode
+        format-all
+        flycheck
+        flyspell-correct
+        general
+        git-gutter-fringe
+        git-messenger
+        git-modes
+        git-timemachine
+        gitlab-ci-mode
+        gitlab-ci-mode-flycheck
+        go-mode
+        goto-chg
+        haskell-mode
+        helpful
+        ivy-hydra
+        janet-mode
+        jinja2-mode
+        js2-mode
+        json-mode
+        k8s-mode
+        kubel
+        kubel-evil
+        ledger-mode
+        magit
+        markdown-mode
+        modus-themes
+        doom-modeline
+        nginx-mode
+        nix-mode
+        nix-update
+        org-journal
+        paredit
+        php-mode
+        posframe
+        projectile
+        projectile-ripgrep
+        quickrun
+        racket-mode
+        rainbow-mode
+        rainbow-delimiters
+        restclient
+        ripgrep
+        rjsx-mode
+        rustic
+        scss-mode
+        spacemacs-theme
+        swiper
+        tide
+        toml-mode
+        tree-sitter
+        tree-sitter-langs
+        tree-sitter-indent
+        typescript-mode
+        undo-tree
+        use-package
+        web-mode
+        wgrep-ag
+        ws-butler
+        which-key
+        yaml-mode
+        yasnippet
+      ]
+      ++ lib.optionals (!stdenv.isDarwin) [
+        pkgs.mu
+      ]);
   };
   home.packages = [
     editorScript
@@ -191,7 +196,7 @@ in
     source = ../emacs/early-init.el;
     onChange = ''
       ${config.programs.emacs.finalPackage}/bin/emacs -Q -batch -f batch-byte-compile .config/emacs/early-init.el
-      '';
+    '';
   };
   xdg.configFile."emacs/init.el" = {
     source = ../emacs/init.el;
diff --git a/user/settings/gaming.nix b/user/settings/gaming.nix
index 4132bba1..fb732904 100644
--- a/user/settings/gaming.nix
+++ b/user/settings/gaming.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     steam
     wineWowPackages.stable
diff --git a/user/settings/git.nix b/user/settings/git.nix
index f52f198d..7a0c35da 100644
--- a/user/settings/git.nix
+++ b/user/settings/git.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     gitAndTools.git-extras
   ];
diff --git a/user/settings/gnupg.nix b/user/settings/gnupg.nix
index 86480aee..7f96223c 100644
--- a/user/settings/gnupg.nix
+++ b/user/settings/gnupg.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.file.".gnupg" = {
     recursive = true;
     source = ../gnupg;
diff --git a/user/settings/golang.nix b/user/settings/golang.nix
index 4cc59343..92abbf4d 100644
--- a/user/settings/golang.nix
+++ b/user/settings/golang.nix
@@ -1,10 +1,12 @@
-{ config, pkgs, ... }:
-
 {
-  home.packages = (with pkgs; [
+  config,
+  pkgs,
+  ...
+}: {
+  home.packages = with pkgs; [
     go
     go-langserver
     goimports
     gotools
-  ]);
+  ];
 }
diff --git a/user/settings/i3.nix b/user/settings/i3.nix
index cb71baf3..5443d1d6 100644
--- a/user/settings/i3.nix
+++ b/user/settings/i3.nix
@@ -1,6 +1,9 @@
-{ config, pkgs, lib, ... }:
-
 {
+  config,
+  pkgs,
+  lib,
+  ...
+}: {
   xdg.configFile.i3status = {
     recursive = true;
     source = ../i3/i3status;
@@ -9,32 +12,58 @@
     mod = "Mod4";
     mode_system = "System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown";
     locker = "${pkgs.xautolock}/bin/xautolock -locknow";
-  in
-  {
+  in {
     enable = true;
     config = {
       modifier = mod;
       assigns = {
-        "1" = [{ class = "^Ripcord$"; }];
-        "3" = [{ class = "^Firefox Developer Edition$"; }];
-        "8" = [{ class = "^Emacs$"; }];
-        "9" = [{ class = "\.exe$"; }];
-        "10" = [{ class = "^Barrier$"; }];
+        "1" = [{class = "^Ripcord$";}];
+        "3" = [{class = "^Firefox Developer Edition$";}];
+        "8" = [{class = "^Emacs$";}];
+        "9" = [{class = "\.exe$";}];
+        "10" = [{class = "^Barrier$";}];
       };
       floating = {
         criteria = [
-          { class = "Pinentry$"; }
+          {class = "Pinentry$";}
           # https://github.com/ValveSoftware/steam-for-linux/issues/1040
-          { class = "^Steam$"; title = "^Friends$"; }
-          { class = "^Steam$"; title = "Steam - News"; }
-          { class = "^Steam$"; title = ".* - Chat"; }
-          { class = "^Steam$"; title = "^Settings$"; }
-          { class = "^Steam$"; title = ".* - event started"; }
-          { class = "^Steam$"; title = ".* CD key"; }
-          { class = "^Steam$"; title = "^Steam - Self Updater$"; }
-          { class = "^Steam$"; title = "^Screenshot Uploader$"; }
-          { class = "^Steam$"; title = "^Steam Guard - Computer Authorization Required$"; }
-          { title = "^Steam Keyboard$"; }
+          {
+            class = "^Steam$";
+            title = "^Friends$";
+          }
+          {
+            class = "^Steam$";
+            title = "Steam - News";
+          }
+          {
+            class = "^Steam$";
+            title = ".* - Chat";
+          }
+          {
+            class = "^Steam$";
+            title = "^Settings$";
+          }
+          {
+            class = "^Steam$";
+            title = ".* - event started";
+          }
+          {
+            class = "^Steam$";
+            title = ".* CD key";
+          }
+          {
+            class = "^Steam$";
+            title = "^Steam - Self Updater$";
+          }
+          {
+            class = "^Steam$";
+            title = "^Screenshot Uploader$";
+          }
+          {
+            class = "^Steam$";
+            title = "^Steam Guard - Computer Authorization Required$";
+          }
+          {title = "^Steam Keyboard$";}
         ];
       };
       window = {
@@ -85,7 +114,6 @@
         "${mod}+Shift+9" = "move container to workspace 9";
         "${mod}+Shift+0" = "move container to workspace 10";
 
-
         # move workspace
         "${mod}+Mod1+h" = "move workspace to output left";
         "${mod}+Mod1+j" = "move workspace to output down";
diff --git a/user/settings/ledger.nix b/user/settings/ledger.nix
index 61d3df7e..6c674ff9 100644
--- a/user/settings/ledger.nix
+++ b/user/settings/ledger.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.file.".ledgerrc".text = ''
     --date-format %F
     --start-of-week 1
diff --git a/user/settings/mail.nix b/user/settings/mail.nix
index 59fdc7d2..b3f288fb 100644
--- a/user/settings/mail.nix
+++ b/user/settings/mail.nix
@@ -1,6 +1,9 @@
-{ config, lib, pkgs, ... }:
-
 {
+  config,
+  lib,
+  pkgs,
+  ...
+}: {
   home.packages = [
     pkgs.html2text
   ];
diff --git a/user/settings/music-management.nix b/user/settings/music-management.nix
index 6dd1f12e..6f42eb35 100644
--- a/user/settings/music-management.nix
+++ b/user/settings/music-management.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     beets
   ];
diff --git a/user/settings/music.nix b/user/settings/music.nix
index 5120bd19..e7b80ce2 100644
--- a/user/settings/music.nix
+++ b/user/settings/music.nix
@@ -1,18 +1,20 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     cmus
     playerctl
     sonixd
-    (tauon.override { withDiscordRPC = true; })
+    (tauon.override {withDiscordRPC = true;})
   ];
 
   xdg.desktopEntries.sonixd = {
     name = "sonixd";
     exec = "sonixd";
     comment = "Sonixd Music Player";
-		categories = [ "Audio" "AudioVideo" ];
+    categories = ["Audio" "AudioVideo"];
     genericName = "Music Player";
   };
 }
diff --git a/user/settings/nix.nix b/user/settings/nix.nix
index 8e4bf513..f7f0a44c 100644
--- a/user/settings/nix.nix
+++ b/user/settings/nix.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   nixpkgs.config = import ../config.nix;
   nixpkgs.overlays = [
     (import ../overlays/extra-packages.nix)
diff --git a/user/settings/nixos.nix b/user/settings/nixos.nix
index de386db3..50e38e89 100644
--- a/user/settings/nixos.nix
+++ b/user/settings/nixos.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   imports = [
     ./nix.nix
     ./nixpkgs.nix
diff --git a/user/settings/nixpkgs.nix b/user/settings/nixpkgs.nix
index 9f939c33..ee993bd5 100644
--- a/user/settings/nixpkgs.nix
+++ b/user/settings/nixpkgs.nix
@@ -1,17 +1,18 @@
-{ config, pkgs, ... }:
-
-let
+{
+  config,
+  pkgs,
+  ...
+}: let
   inherit (pkgs) stdenv;
   stableConfig = config.nixpkgs.config;
-in
-{
+in {
   imports = [
     ./nix.nix
   ];
   nixpkgs.overlays = [
     (self: super: {
-      firefox-bin-unwrapped = super.firefox-bin-unwrapped.override { systemLocale = "en-GB"; };
-      firefox-devedition-bin-unwrapped = super.firefox-devedition-bin-unwrapped.override { systemLocale = "en-GB"; };
+      firefox-bin-unwrapped = super.firefox-bin-unwrapped.override {systemLocale = "en-GB";};
+      firefox-devedition-bin-unwrapped = super.firefox-devedition-bin-unwrapped.override {systemLocale = "en-GB";};
     })
   ];
 }
diff --git a/user/settings/passwords.nix b/user/settings/passwords.nix
index 909c9633..ff78281c 100644
--- a/user/settings/passwords.nix
+++ b/user/settings/passwords.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.packages = with pkgs; [
     keepassxc
     pwgen
diff --git a/user/settings/rofi.nix b/user/settings/rofi.nix
index 4c932224..d62ea7cf 100644
--- a/user/settings/rofi.nix
+++ b/user/settings/rofi.nix
@@ -1,6 +1,9 @@
-{ config, lib, pkgs, ... }:
-
 {
+  config,
+  lib,
+  pkgs,
+  ...
+}: {
   xdg.configFile."networkmanager-dmenu/config.ini".text = ''
     [dmenu]
     dmenu_command = ${pkgs.rofi}/bin/dmenu
@@ -12,7 +15,7 @@
 
   nixpkgs.overlays = [
     (self: super: {
-      rofi= super.rofi.overrideAttrs (oldAttrs: rec {
+      rofi = super.rofi.overrideAttrs (oldAttrs: rec {
         postInstall = ''
           ln $out/bin/rofi $out/bin/dmenu
         '';
diff --git a/user/settings/satoshipay.nix b/user/settings/satoshipay.nix
index 4e96a227..2ecb4761 100644
--- a/user/settings/satoshipay.nix
+++ b/user/settings/satoshipay.nix
@@ -1,12 +1,14 @@
-{ config, lib, pkgs, ... }:
-
-let
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}: let
   inherit (pkgs) stdenv;
   spGitConfig = {
     user.email = "alan@satoshipay.io";
   };
-in
-{
+in {
   imports = [
     ./development/javascript.nix
     ./development/web.nix
@@ -16,32 +18,33 @@ in
     KUBECTX_IGNORE_FZF = "1";
   };
   home.packages = with pkgs; ([
-    caddy
-    openssl
-    mongodb-tools
-    pgcli
-    pgformatter
-    postgresql
-    s3cmd
-    sops
+      caddy
+      openssl
+      mongodb-tools
+      pgcli
+      pgformatter
+      postgresql
+      s3cmd
+      sops
 
-    lumen
+      lumen
 
-    mkcert
-    google-cloud-sdk
-    doctl
-    kubectl
-    kubetail
-    kubectx
-    kubernetes-helm
-    helmfile
-  ] ++ (lib.optionals (!stdenv.isDarwin)
-  [
-    docker-compose
+      mkcert
+      google-cloud-sdk
+      doctl
+      kubectl
+      kubetail
+      kubectx
+      kubernetes-helm
+      helmfile
+    ]
+    ++ (lib.optionals (!stdenv.isDarwin)
+      [
+        docker-compose
 
-    ripcord
-    robo3t
-  ]));
+        ripcord
+        robo3t
+      ]));
 
   programs.git.includes = [
     {
@@ -84,8 +87,7 @@ in
 
   accounts.email.accounts.satoshipay = let
     address = "alan@satoshipay.io";
-  in
-  {
+  in {
     inherit address;
     primary = lib.mkDefault true;
     realName = "Alan Pearce";
diff --git a/user/settings/ssh.nix b/user/settings/ssh.nix
index 0c8300eb..0ccc9796 100644
--- a/user/settings/ssh.nix
+++ b/user/settings/ssh.nix
@@ -1,6 +1,9 @@
-{ config, lib, pkgs, ... }:
-
 {
+  config,
+  lib,
+  pkgs,
+  ...
+}: {
   programs.ssh = {
     enable = true;
     compression = true;
diff --git a/user/settings/sxhkd.nix b/user/settings/sxhkd.nix
index a30db28a..cc21264b 100644
--- a/user/settings/sxhkd.nix
+++ b/user/settings/sxhkd.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   xdg.configFile."sxhkd/sxhkdrc".text = ''
     XF86AudioMute
       pamixer --toggle-mute
diff --git a/user/settings/tabnine.nix b/user/settings/tabnine.nix
index dab2273b..61cbf29c 100644
--- a/user/settings/tabnine.nix
+++ b/user/settings/tabnine.nix
@@ -1,7 +1,9 @@
-{ config, pkgs, ... }:
-
 {
-  imports = [ ../modules/tabnine.nix ];
+  config,
+  pkgs,
+  ...
+}: {
+  imports = [../modules/tabnine.nix];
   home.packages = with pkgs; [
     tabnine
   ];
@@ -26,7 +28,7 @@
       tabnine_cloud_certificate_domain = null;
       tabnine_cloud_host = null;
       tabnine_cloud_port = null;
-      cloud_whitelist = [ ];
+      cloud_whitelist = [];
       api_key = null;
       api_key_service_level = null;
       api_base_url = null;
@@ -44,40 +46,41 @@
     lspConfig = {
       "language.typescript" = {
         command = "typescript-language-server";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.javascript" = {
         command = "javascript-typescript-stdio";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.css" = {
         command = "css-languageserver";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.scss" = {
         command = "css-languageserver";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.html" = {
         command = "html-languageserver";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.dockerfile" = {
         command = "docker-langserver";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.yaml" = {
         command = "yaml-language-server";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.haskell" = {
         command = "hie";
-        args = [ "--stdio" ];
+        args = ["--stdio"];
       };
       "language.go" = {
         command = "go-langserver";
         args = [
-          "-mode" "stdio"
+          "-mode"
+          "stdio"
           "-gocodecompletion"
         ];
       };
diff --git a/user/settings/trezor.nix b/user/settings/trezor.nix
index a4f3ba75..3211bb42 100644
--- a/user/settings/trezor.nix
+++ b/user/settings/trezor.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.file.".ssh/agent.config" = {
     text = ''
       ecdsa-curve-name = ed25519
diff --git a/user/settings/user-interface.nix b/user/settings/user-interface.nix
index f0e4c798..af432a91 100644
--- a/user/settings/user-interface.nix
+++ b/user/settings/user-interface.nix
@@ -1,28 +1,31 @@
-{ config, pkgs, ... }:
-
-let
-  inherit (pkgs) stdenv;
-in
 {
+  config,
+  pkgs,
+  ...
+}: let
+  inherit (pkgs) stdenv;
+in {
   home.sessionVariables = {
     TERMINAL = "xterm";
   };
 
   programs.keychain = {
     enable = true;
-    extraFlags = [ "--quiet" "--systemd" ];
-    keys = [ ];
+    extraFlags = ["--quiet" "--systemd"];
+    keys = [];
   };
 
   nixpkgs.config.librewolf = {
     enablePlasmaBrowserIntegration = true;
   };
-  home.packages = with pkgs; [
-    librewolf
-    logseq
-  ] ++ lib.optionals (!stdenv.isDarwin) (with pkgs; [
-    falkon
-    mu
-    signal-desktop
-  ]);
+  home.packages = with pkgs;
+    [
+      librewolf
+      logseq
+    ]
+    ++ lib.optionals (!stdenv.isDarwin) (with pkgs; [
+      falkon
+      mu
+      signal-desktop
+    ]);
 }
diff --git a/user/settings/xresources.nix b/user/settings/xresources.nix
index 5ab0bb49..3481962d 100644
--- a/user/settings/xresources.nix
+++ b/user/settings/xresources.nix
@@ -1,6 +1,8 @@
-{ config, pkgs, ... }:
-
 {
+  config,
+  pkgs,
+  ...
+}: {
   home.file.".xresources" = {
     recursive = true;
     source = ../xresources;
diff --git a/user/settings/zsh.nix b/user/settings/zsh.nix
index 6e6c04d3..2a30bc63 100644
--- a/user/settings/zsh.nix
+++ b/user/settings/zsh.nix
@@ -1,16 +1,25 @@
-{ config, lib, pkgs, ... }:
-
-let
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}: let
   inherit (pkgs) stdenv;
-  lsOptions = if stdenv.isDarwin then "-p" else "-v --group-directories-first";
-  lsIsoDate = if stdenv.isDarwin then "" else "--time-style=long-iso";
+  lsOptions =
+    if stdenv.isDarwin
+    then "-p"
+    else "-v --group-directories-first";
+  lsIsoDate =
+    if stdenv.isDarwin
+    then ""
+    else "--time-style=long-iso";
   zshrc = ".config/zsh/.zshrc";
   mkZshPlugin = attrs: {
     name = attrs.name;
     src = stdenv.mkDerivation {
       inherit (attrs) src;
       name = "zsh-plugin-${attrs.name}";
-      buildInputs = [ pkgs.zsh ];
+      buildInputs = [pkgs.zsh];
       buildPhase = ''
         zsh -c 'for f in **/*.zsh; zcompile "$f"'
       '';
@@ -19,8 +28,7 @@ let
       '';
     };
   };
-in
-{
+in {
   home.packages = with pkgs; [
     fzf
     ghq
@@ -52,7 +60,7 @@ in
       ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=8";
     };
 
-    plugins = (map mkZshPlugin [
+    plugins = map mkZshPlugin [
       {
         name = "cd-gitroot";
         src = pkgs.fetchFromGitHub {
@@ -93,7 +101,7 @@ in
           sha256 = "0qmm0xm1aiy3fnn2vib26z10cfy707yqg0vg5236r7978glswdlg";
         };
       }
-    ]);
+    ];
 
     shellAliases = {
       l = "ls ${lsOptions} -Bp";
@@ -111,10 +119,8 @@ in
       https = "http --default-scheme https";
 
       history = "fc -l $(( $LINES - 2 ))";
-      hist-freq-lines =
-        "fc -l -10000 | cut -d' ' -f4- | sort | uniq -c | sort -g | tail -n100 | less";
-      hist-freq-commands =
-        "fc -l -10000 | cut -d' ' -f4 | sort | uniq -c | sort -g | tail -n10 | less";
+      hist-freq-lines = "fc -l -10000 | cut -d' ' -f4- | sort | uniq -c | sort -g | tail -n100 | less";
+      hist-freq-commands = "fc -l -10000 | cut -d' ' -f4 | sort | uniq -c | sort -g | tail -n10 | less";
       wprop = "xprop | egrep '^WM_(CLASS|NAME|WINDOW_ROLE|TYPE)'";
 
       # Enable the following commands to support aliases.
@@ -213,26 +219,28 @@ in
       fi
     '';
 
-    initExtra = ''
-      autoload -Uz compinit
-      compinit -C
-      typeset -T GHQ_ROOT ghq_root
-      export GHQ_ROOT="$HOME/projects"
-
-      function hist-freq-subcommands () {
-        fc -l -m "$1*" -10000 | cut -d' ' -f4- | sort | uniq -c | sort -g | tail -n100 | less
-      }
-
-      source ${pkgs.fzf}/share/fzf/key-bindings.zsh
-      source ${pkgs.fzf}/share/fzf/completion.zsh
-
-    '' + builtins.readFile ../zsh/zshrc + (
-      if stdenv.isDarwin
-      then builtins.readFile ../zsh/zshrc.darwin
-      else ""
-    );
+    initExtra =
+      ''
+        autoload -Uz compinit
+        compinit -C
+        typeset -T GHQ_ROOT ghq_root
+        export GHQ_ROOT="$HOME/projects"
+
+        function hist-freq-subcommands () {
+          fc -l -m "$1*" -10000 | cut -d' ' -f4- | sort | uniq -c | sort -g | tail -n100 | less
+        }
+
+        source ${pkgs.fzf}/share/fzf/key-bindings.zsh
+        source ${pkgs.fzf}/share/fzf/completion.zsh
+
+      ''
+      + builtins.readFile ../zsh/zshrc
+      + (
+        if stdenv.isDarwin
+        then builtins.readFile ../zsh/zshrc.darwin
+        else ""
+      );
   };
 
-  home.file."${zshrc}".onChange =
-    "${pkgs.zsh}/bin/zsh -i -c 'autoload -Uz compinit && compinit && zcompile ${zshrc}'";
+  home.file."${zshrc}".onChange = "${pkgs.zsh}/bin/zsh -i -c 'autoload -Uz compinit && compinit && zcompile ${zshrc}'";
 }