diff --git a/.gitignore b/.gitignore index 25dfd80..166984c 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ secrets/ssh_config/*.* secrets/*.* !secrets/*.gpg **/*.keys +secrets/**/*.conf # SHA256 hashes of the encrypted secrets *.sha256 \ No newline at end of file diff --git a/bin/actions/update.sh b/bin/actions/update.sh index 03730e9..e678f3d 100755 --- a/bin/actions/update.sh +++ b/bin/actions/update.sh @@ -92,6 +92,10 @@ symlinks() { done } +sys_packages_upgrade() { + cd $HOME/dotfiles/config/nixos && sudo nixos-rebuild switch --upgrade --flake .#$DOTF_HOSTNAME --impure +} + sys_packages() { #################################################################################################### # Update system packages @@ -177,17 +181,6 @@ tailscalecmd() { # Update system settings #################################################################################################### -fonts() { - if is_wsl; then - printfe "%s\n" "yellow" "Running in WSL, skipping fonts." - return - fi - - printfe "%s\n" "cyan" "Ensuring fonts are installed..." - source $HOME/dotfiles/bin/helpers/fonts.sh - ensure_fonts_installed -} - git_repos() { #################################################################################################### # Ensure git repos @@ -199,6 +192,12 @@ git_repos() { } homemanager() { + # Due to weirdness delete this file if it exists + if [ -f "$HOME/.config/mimeapps.list.backup" ]; then + echo "Removing mimeapps.list.backup" + rip "$HOME/.config/mimeapps.list.backup" + fi + cd $HOME/dotfiles/config/home-manager && NIXPKGS_ALLOW_UNFREE=1 home-manager switch -b backup --flake .#$DOTF_HOSTNAME --impure } @@ -241,6 +240,9 @@ if [ "$#" -eq 0 ]; then else for arg in "$@"; do case $arg in + --nixos-upgrade) + sys_packages_upgrade + ;; --nixos|nixos|nix|nixos-rebuild) sys_packages ;; diff --git a/config/config.yaml b/config/config.yaml index 2e5d0ad..8479750 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -60,18 +60,6 @@ config: starship: source: ~/dotfiles/config/starship.toml target: ~/.config/starship.toml - - # Fonts to install (Mostly tested with Nerd Fonts) - fonts: - Hack: - url: https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/Hack.zip - name: Hack - Meslo: - url: https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/Meslo.zip - name: Meslo - JetBrainsMono: - url: https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/JetBrainsMono.zip - name: JetBrainsMono git: dotfiles: diff --git a/config/home-manager/flake.lock b/config/home-manager/flake.lock index be9b451..f13d163 100644 --- a/config/home-manager/flake.lock +++ b/config/home-manager/flake.lock @@ -37,67 +37,19 @@ "type": "github" } }, - "nixpkgs-go": { + "nixpkgs-unstable": { "locked": { - "lastModified": 1728863046, - "narHash": "sha256-DZBO2465PL5V89e8hFSJewyH4QbCPpW3ssws7ckT/0A=", + "lastModified": 1730531603, + "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732", + "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", "type": "github" }, "original": { "owner": "nixos", + "ref": "nixos-unstable", "repo": "nixpkgs", - "rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732", - "type": "github" - } - }, - "nixpkgs-ollama": { - "locked": { - "lastModified": 1728863046, - "narHash": "sha256-DZBO2465PL5V89e8hFSJewyH4QbCPpW3ssws7ckT/0A=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732", - "type": "github" - }, - "original": { - "owner": "nixos", - "repo": "nixpkgs", - "rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732", - "type": "github" - } - }, - "nixpkgs-vscode": { - "locked": { - "lastModified": 1728863046, - "narHash": "sha256-DZBO2465PL5V89e8hFSJewyH4QbCPpW3ssws7ckT/0A=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732", - "type": "github" - }, - "original": { - "owner": "nixos", - "repo": "nixpkgs", - "rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732", - "type": "github" - } - }, - "nixpkgs-zed": { - "locked": { - "lastModified": 1729850857, - "narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "41dea55321e5a999b17033296ac05fe8a8b5a257", - "type": "github" - }, - "original": { - "owner": "nixos", - "repo": "nixpkgs", - "rev": "41dea55321e5a999b17033296ac05fe8a8b5a257", "type": "github" } }, @@ -105,10 +57,7 @@ "inputs": { "home-manager": "home-manager", "nixpkgs": "nixpkgs", - "nixpkgs-go": "nixpkgs-go", - "nixpkgs-ollama": "nixpkgs-ollama", - "nixpkgs-vscode": "nixpkgs-vscode", - "nixpkgs-zed": "nixpkgs-zed" + "nixpkgs-unstable": "nixpkgs-unstable" } } }, diff --git a/config/home-manager/flake.nix b/config/home-manager/flake.nix index ed5c056..7364e49 100644 --- a/config/home-manager/flake.nix +++ b/config/home-manager/flake.nix @@ -3,12 +3,7 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05"; - - # Pinned versions for specific packages (https://nixhub.io) - nixpkgs-ollama.url = "github:nixos/nixpkgs/d4f247e89f6e10120f911e2e2d2254a050d0f732"; - nixpkgs-go.url = "github:nixos/nixpkgs/d4f247e89f6e10120f911e2e2d2254a050d0f732"; - nixpkgs-vscode.url = "github:nixos/nixpkgs/d4f247e89f6e10120f911e2e2d2254a050d0f732"; - nixpkgs-zed.url = "github:nixos/nixpkgs/41dea55321e5a999b17033296ac05fe8a8b5a257"; + nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager/release-24.05"; @@ -20,10 +15,7 @@ { self, nixpkgs, - nixpkgs-go, - nixpkgs-vscode, - nixpkgs-zed, - nixpkgs-ollama, + nixpkgs-unstable, home-manager, }: let @@ -32,19 +24,7 @@ inherit system; config.allowUnfree = true; }; - pkgs-go = import nixpkgs-go { - inherit system; - config.allowUnfree = true; - }; - pkgs-vscode = import nixpkgs-vscode { - inherit system; - config.allowUnfree = true; - }; - pkgs-zed = import nixpkgs-zed { - inherit system; - config.allowUnfree = true; - }; - pkgs-ollama = import nixpkgs-ollama { + pkgs-unstable = import nixpkgs-unstable { inherit system; config.allowUnfree = true; }; @@ -55,14 +35,9 @@ inherit pkgs; modules = [ ./home.nix ]; extraSpecialArgs = { - inherit - pkgs - pkgs-go - pkgs-vscode - pkgs-zed - pkgs-ollama - ; + inherit pkgs pkgs-unstable; isServer = false; + hostname = "mennos-gamingpc"; }; }; @@ -70,8 +45,9 @@ inherit pkgs; modules = [ ./home.nix ]; extraSpecialArgs = { - inherit pkgs pkgs-go pkgs-ollama; + inherit pkgs pkgs-unstable; isServer = true; + hostname = "mennos-server"; }; }; @@ -79,14 +55,9 @@ inherit pkgs; modules = [ ./home.nix ]; extraSpecialArgs = { - inherit - pkgs - pkgs-go - pkgs-vscode - pkgs-zed - pkgs-ollama - ; + inherit pkgs pkgs-unstable; isServer = false; + hostname = "mennos-laptop"; }; }; @@ -94,8 +65,9 @@ inherit pkgs; modules = [ ./home.nix ]; extraSpecialArgs = { - inherit pkgs pkgs-go pkgs-ollama; + inherit pkgs pkgs-unstable; isServer = true; + hostname = "homeserver-pc"; }; }; }; diff --git a/config/home-manager/home.nix b/config/home-manager/home.nix index e3e49f0..c484f09 100644 --- a/config/home-manager/home.nix +++ b/config/home-manager/home.nix @@ -1,7 +1,5 @@ { config, - pkgs, - lib, isServer ? false, ... }: diff --git a/config/home-manager/packages/common/go.nix b/config/home-manager/packages/common/go.nix index 5c3aa65..716ee11 100644 --- a/config/home-manager/packages/common/go.nix +++ b/config/home-manager/packages/common/go.nix @@ -1,12 +1,12 @@ { config, pkgs, - pkgs-go, + pkgs-unstable, ... }: { programs.go = { enable = true; - package = pkgs-go.go; + package = pkgs-unstable.go; }; } diff --git a/config/home-manager/packages/common/packages.nix b/config/home-manager/packages/common/packages.nix index 45e597c..3b4e8a1 100644 --- a/config/home-manager/packages/common/packages.nix +++ b/config/home-manager/packages/common/packages.nix @@ -1,90 +1,108 @@ -{ pkgs, pkgs-ollama, ... }: { - home.packages = with pkgs; [ - # General packages - git - gnupg - gh - nixfmt-rfc-style - wget - fastfetch - pkgs-ollama.ollama + pkgs, + pkgs-unstable, + hostname, + ... +}: +let + hostSpecificPackages = + if hostname == "mennos-gamingpc" then + with pkgs-unstable; [ ollama-rocm ] + else if hostname == "mennos-laptop" then + with pkgs-unstable; [ ollama-cuda ] + else if hostname == "mennos-server" then + with pkgs-unstable; [ ollama-cuda ] + else + with pkgs-unstable; [ ollama ]; +in +{ + home.packages = + with pkgs; + [ + # General packages + git + gnupg + gh + nixfmt-rfc-style + wget + fastfetch - # Package management - pipx - devbox + # Package management + pipx + devbox - # Development SDKs/Toolkits - gcc - pkg-config - gnumake - stdenv.cc - rustc - cargo - cargo-edit - cargo-watch - cargo-audit - cargo-expand - cargo-tarpaulin - pyenv - act # GitHub Actions CLI + # Development SDKs/Toolkits + gcc + pkg-config + gnumake + stdenv.cc + rustc + cargo + cargo-edit + cargo-watch + cargo-audit + cargo-expand + cargo-tarpaulin + pyenv + act # GitHub Actions CLI - # File and directory operations - eza # Modern ls - bat # Modern cat - zoxide # Smarter cd command - broot # Interactive directory navigator - du-dust # Modern du - duf # Modern df - zip - unzip + # File and directory operations + eza # Modern ls + bat # Modern cat + zoxide # Smarter cd command + broot # Interactive directory navigator + du-dust # Modern du + duf # Modern df + zip + unzip - # Search and text processing - ripgrep # Modern grep - sd # Modern sed - choose # Modern cut - jq # JSON processor - yq # YAML processor - xsv # CSV processor + # Search and text processing + ripgrep # Modern grep + sd # Modern sed + choose # Modern cut + jq # JSON processor + yq # YAML processor + xsv # CSV processor - # System monitoring and process management - procs # Modern ps - bottom # Modern top/htop - hyperfine # Benchmarking tool - bandwhich # Network utilization tool - doggo # Modern dig - gping # Ping with graph - htop # Interactive process viewer + # System monitoring and process management + procs # Modern ps + bottom # Modern top/htop + hyperfine # Benchmarking tool + bandwhich # Network utilization tool + doggo # Modern dig + gping # Ping with graph + htop # Interactive process viewer - # Development utilities - delta # Better git diff - difftastic # Structural diff tool - fzf # Fuzzy finder - tokei # Code statistics - tealdeer # Modern tldr client - lazygit # Terminal UI for git + # Development utilities + delta # Better git diff + difftastic # Structural diff tool + fzf # Fuzzy finder + tokei # Code statistics + tealdeer # Modern tldr client + lazygit # Terminal UI for git - # Shell and terminal - starship # Cross-shell prompt - blesh # Bash ble.sh - zellij # Modern terminal multiplexer - screen # Terminal multiplexer + # Shell and terminal + starship # Cross-shell prompt + blesh # Bash ble.sh + zellij # Modern terminal multiplexer + screen # Terminal multiplexer - # File viewers and processors - hexyl # Modern hexdump - chafa # Terminal image viewer - glow # Markdown renderer + # File viewers and processors + hexyl # Modern hexdump + chafa # Terminal image viewer + glow # Markdown renderer - # Editors - neovim - nano - micro + # Editors + neovim + nano + micro - # Lolz - fortune - cowsay - cmatrix - figlet - lolcat - ]; + # Lolz + fortune + cowsay + cmatrix + figlet + lolcat + ] + ++ hostSpecificPackages; } diff --git a/config/home-manager/packages/workstation/default.nix b/config/home-manager/packages/workstation/default.nix index 7ee986b..2967f5a 100644 --- a/config/home-manager/packages/workstation/default.nix +++ b/config/home-manager/packages/workstation/default.nix @@ -1,4 +1,4 @@ -{ config, pkgs, ... }: +{ ... }: let files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ]; diff --git a/config/home-manager/packages/workstation/packages.nix b/config/home-manager/packages/workstation/packages.nix index 81ae6c0..f301b8c 100644 --- a/config/home-manager/packages/workstation/packages.nix +++ b/config/home-manager/packages/workstation/packages.nix @@ -1,9 +1,9 @@ -{ pkgs, ... }: +{ pkgs-unstable, pkgs, ... }: { home.packages = with pkgs; [ # GUI Applications ## Utilities - mission-center + pkgs-unstable.mission-center gnome.gnome-tweaks pinta bottles diff --git a/config/home-manager/packages/workstation/vscode.nix b/config/home-manager/packages/workstation/vscode.nix index 1a69ac2..df70cc6 100644 --- a/config/home-manager/packages/workstation/vscode.nix +++ b/config/home-manager/packages/workstation/vscode.nix @@ -1,13 +1,8 @@ -{ - config, - pkgs, - pkgs-vscode, - ... -}: +{ pkgs, pkgs-unstable, ... }: { programs.vscode = { enable = true; - package = pkgs-vscode.vscode; + package = pkgs-unstable.vscode; mutableExtensionsDir = true; extensions = with pkgs.vscode-extensions; [ ms-azuretools.vscode-docker diff --git a/config/home-manager/packages/workstation/zed-editor.nix b/config/home-manager/packages/workstation/zed-editor.nix index b3531e8..cf86d1b 100644 --- a/config/home-manager/packages/workstation/zed-editor.nix +++ b/config/home-manager/packages/workstation/zed-editor.nix @@ -1,9 +1,12 @@ +{ pkgs-unstable, ... }: { - config, - pkgs, - pkgs-zed, - ... -}: -{ - home.packages = [ pkgs-zed.zed-editor ]; + home.packages = with pkgs-unstable; [ + zed-editor + nixd + nixdoc + + # We need nodejs due to a stupid bug with CoPilot not loading properly + # https://github.com/zed-industries/zed/issues/12187#issuecomment-2322338504 + nodejs_22 + ]; } diff --git a/config/home-manager/server/default.nix b/config/home-manager/server/default.nix index 7ee986b..2967f5a 100644 --- a/config/home-manager/server/default.nix +++ b/config/home-manager/server/default.nix @@ -1,4 +1,4 @@ -{ config, pkgs, ... }: +{ ... }: let files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ]; diff --git a/config/home-manager/workstation/default-apps.nix b/config/home-manager/workstation/default-apps.nix index 7710d3f..67cc1f9 100644 --- a/config/home-manager/workstation/default-apps.nix +++ b/config/home-manager/workstation/default-apps.nix @@ -1,4 +1,4 @@ -{ config, pkgs, ... }: +{ ... }: { # Default applications xdg.mimeApps = { diff --git a/config/home-manager/workstation/default.nix b/config/home-manager/workstation/default.nix index 7ee986b..2967f5a 100644 --- a/config/home-manager/workstation/default.nix +++ b/config/home-manager/workstation/default.nix @@ -1,4 +1,4 @@ -{ config, pkgs, ... }: +{ ... }: let files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ]; diff --git a/config/home-manager/workstation/gnome-extensions.nix b/config/home-manager/workstation/gnome-extensions.nix index c97c392..ed8529e 100644 --- a/config/home-manager/workstation/gnome-extensions.nix +++ b/config/home-manager/workstation/gnome-extensions.nix @@ -137,7 +137,7 @@ layouts-json = '' [ { - "id": "Layout 1", + "id": "Landscape Ultrawide", "tiles": [ { "x": 0, "y": 0, "width": 0.22, "height": 0.5, "groups": [1, 2] }, { "x": 0, "y": 0.5, "width": 0.22, "height": 0.5, "groups": [1, 2] }, @@ -147,46 +147,20 @@ ] }, { - "id": "Layout 2", - "tiles": [ - { "x": 0, "y": 0, "width": 0.22, "height": 1, "groups": [1] }, - { "x": 0.22, "y": 0, "width": 0.56, "height": 1, "groups": [1, 2] }, - { "x": 0.78, "y": 0, "width": 0.22, "height": 1, "groups": [2] } - ] - }, - { - "id": "Layout 3", - "tiles": [ - { "x": 0, "y": 0, "width": 0.33, "height": 1, "groups": [1] }, - { "x": 0.33, "y": 0, "width": 0.67, "height": 1, "groups": [1] } - ] - }, - { - "id": "Layout 4", - "tiles": [ - { "x": 0, "y": 0, "width": 0.67, "height": 1, "groups": [1] }, - { "x": 0.67, "y": 0, "width": 0.33, "height": 1, "groups": [1] } - ] - }, - { - "id": "Portrait Layout", + "id": "Portrait Ultrawide", "tiles": [ { "x": 0, "y": 0, "width": 1, "height": 0.25, "groups": [1] }, { "x": 0, "y": 0.25, "width": 1, "height": 0.5, "groups": [1, 2] }, - { - "x": 0, - "y": 0.75, - "width": 0.50, - "height": 0.25, - "groups": [2, 3] - }, - { - "x": 0.50, - "y": 0.75, - "width": 0.50, - "height": 0.25, - "groups": [2, 3] - } + { "x": 0, "y": 0.75, "width": 0.5, "height": 0.25, "groups": [2, 3] }, + { "x": 0.5, "y": 0.75, "width": 0.5, "height": 0.25, "groups": [2, 3] } + ] + }, + { + "id": "Landscape Laptop", + "tiles": [ + { "x": 0, "y": 0, "width": 0.33, "height": 0.5, "groups": [1, 2] }, + { "x": 0.33, "y": 0, "width": 0.67, "height": 1, "groups": [1] }, + { "x": 0, "y": 0.5, "width": 0.33, "height": 0.5, "groups": [2, 1] } ] } ] diff --git a/config/home-manager/workstation/wireguard.nix b/config/home-manager/workstation/wireguard.nix new file mode 100644 index 0000000..f9e2b5c --- /dev/null +++ b/config/home-manager/workstation/wireguard.nix @@ -0,0 +1,37 @@ +{ config, pkgs, ... }: +{ + # Enable NetworkManager with Wireguard support + networking = { + networkmanager = { + enable = true; + plugins = with pkgs; [ + networkmanager-vpnc + networkmanager-openvpn + ]; + }; + }; + + # Add NetworkManager connection profiles + environment.etc."NetworkManager/system-connections/work-vpn.nmconnection".source = "${config.home.homeDirectory}/dotfiles/secrets/wireguard/work.wg0.conf"; + + # Ensure NetworkManager Wireguard support is installed + environment.systemPackages = with pkgs; [ + networkmanager-wireguard + wireguard-tools + ]; + + # Add a systemd service to set proper permissions and reload NetworkManager connections + systemd.services.reload-networkmanager-connections = { + description = "Set permissions and reload NetworkManager Connections"; + wantedBy = [ "multi-user.target" ]; + after = [ "NetworkManager.service" ]; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + ExecStart = pkgs.writeShellScript "reload-nm-connections" '' + chmod 600 /etc/NetworkManager/system-connections/* + ${pkgs.networkmanager}/bin/nmcli connection reload + ''; + }; + }; +} diff --git a/config/nixos/configuration.nix b/config/nixos/configuration.nix index 6f57d9f..3cc43dc 100644 --- a/config/nixos/configuration.nix +++ b/config/nixos/configuration.nix @@ -30,7 +30,7 @@ # Enable experimental nix-command flakes nix = { - package = pkgs.nixFlakes; + package = pkgs.nixVersions.stable; extraOptions = '' experimental-features = nix-command flakes ''; diff --git a/config/nixos/flake.lock b/config/nixos/flake.lock index 0f7109b..5a7497d 100644 --- a/config/nixos/flake.lock +++ b/config/nixos/flake.lock @@ -2,11 +2,11 @@ "nodes": { "nixpkgs": { "locked": { - "lastModified": 1730327045, - "narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=", + "lastModified": 1730741070, + "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "080166c15633801df010977d9d7474b4a6c549d7", + "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3", "type": "github" }, "original": { @@ -16,9 +16,26 @@ "type": "github" } }, + "nixpkgs-unstable": { + "locked": { + "lastModified": 1730531603, + "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "root": { "inputs": { - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs", + "nixpkgs-unstable": "nixpkgs-unstable" } } }, diff --git a/config/nixos/flake.nix b/config/nixos/flake.nix index 7f05da9..58bceac 100644 --- a/config/nixos/flake.nix +++ b/config/nixos/flake.nix @@ -3,44 +3,67 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-24.05"; + nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; }; outputs = - { self, nixpkgs }: + { + self, + nixpkgs, + nixpkgs-unstable, + }: + let + system = "x86_64-linux"; + + pkgs = import nixpkgs { + inherit system; + config.allowUnfree = true; + }; + + pkgs-unstable = import nixpkgs-unstable { + inherit system; + config.allowUnfree = true; + }; + in { nixosConfigurations = { "mennos-laptop" = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; + inherit system; modules = [ ./hardware/mennos-laptop.nix ./common/workstation.nix ./configuration.nix ]; specialArgs = { + inherit pkgs-unstable; isWorkstation = true; isServer = false; }; }; + "mennos-gamingpc" = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; + inherit system; modules = [ ./hardware/mennos-gamingpc.nix ./common/workstation.nix ./configuration.nix ]; specialArgs = { + inherit pkgs-unstable; isWorkstation = true; isServer = false; }; }; + "mennos-server" = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; + inherit system; modules = [ ./hardware/mennos-server.nix ./common/server.nix ./configuration.nix ]; specialArgs = { + inherit pkgs-unstable; isWorkstation = false; isServer = true; }; diff --git a/config/nixos/hardware/mennos-laptop.nix b/config/nixos/hardware/mennos-laptop.nix index b5c36cf..36e197e 100644 --- a/config/nixos/hardware/mennos-laptop.nix +++ b/config/nixos/hardware/mennos-laptop.nix @@ -10,9 +10,7 @@ networking.hostName = "mennos-laptop"; # Enable OpenGL - hardware.opengl = { - enable = true; - }; + hardware.opengl.enable = true; # Load nvidia driver for Xorg and Wayland services.xserver.videoDrivers = [ "nvidia" ]; diff --git a/config/nixos/hardware/mennos-server.nix b/config/nixos/hardware/mennos-server.nix index 76d56c2..b9d0fcf 100644 --- a/config/nixos/hardware/mennos-server.nix +++ b/config/nixos/hardware/mennos-server.nix @@ -10,9 +10,7 @@ networking.hostName = "mennos-server"; # Enable OpenGL - # hardware.opengl = { - # enable = true; - # }; + # hardware.opengl.enable = true; # # Load nvidia driver for Xorg and Wayland # services.xserver.videoDrivers = [ "nvidia" ]; diff --git a/config/nixos/packages/common/virtualization.nix b/config/nixos/packages/common/virtualization.nix index 6a98ed3..5704751 100644 --- a/config/nixos/packages/common/virtualization.nix +++ b/config/nixos/packages/common/virtualization.nix @@ -1,4 +1,9 @@ -{ config, pkgs, ... }: +{ + config, + pkgs, + pkgs-unstable, + ... +}: { boot.kernelModules = [ "kvm-amd" ]; @@ -10,6 +15,7 @@ virtualisation = { docker = { enable = true; + package = pkgs-unstable.docker; autoPrune.enable = true; daemon.settings = { "live-restore" = false; diff --git a/secrets/ssh_config/dev.conf.gpg b/secrets/ssh_config/dev.conf.gpg index e56117d..7afa676 100644 --- a/secrets/ssh_config/dev.conf.gpg +++ b/secrets/ssh_config/dev.conf.gpg @@ -1,12 +1,8 @@ -----BEGIN PGP MESSAGE----- -jA0ECQMIJPtjJvUADyj/0sCQAUkXVqShmsjmP11kEL0ooHx94+JCEGWICJIuzRPc -mjhdKO/lcmKotU2GCkx35ejWDuOp0bpCOoTzpbOYRxQEws4F0nuA56EB9Q+YsQd6 -hr31hjIKYQO0vsyW1MItfj5nOKb3Vyars3WQm3zrdIsD/zAJol/Thfbln6j9Y8cc -NcCe2hh0MpZWxpMufl7OEmQj+hp0sOIIEhco/TSnQsJjPHyOajjpbRtdyyI7kClD -U1kBtue5Go5ZcclYvJIL7ZhbN3ncVDVYrjOP59fbmBIlYpscpGuuF62NX8MRmZEf -RIvJgNlfAS9kn9eXTFpG35cjCZMjttRK8JKMrcBq9vdZLfi9ZHF0Lff3b22DfewU -Nb6Hr5fybR6XogcmA+cEBwanZy2fxacZeUDZOihItmWUrHgG9THgUVZo5SBvXAnM -MZcpfbCfKTJGWpSY5dgVpNV4 -=LexE +jA0ECQMI5RidcMTcDnv/0pAB3EfRm5WT3Niz66zAHGrokTLfnp+yZ7BN6Tt3I6M1 +wGWBBCY11yJZ5WcD2h4jSdqJhdxsa2TJPKnUvkn4A2to1KMDpq72U4yzMfGc99K6 +tP9E6FiktACZQGlUaPVZe/Ut15jHSUEo894tso7XG/dWxqKbVMEjzMjwwC6WxJK1 +fd5WM2bor0fY9K9zMIOweCo= +=2wZs -----END PGP MESSAGE----- diff --git a/secrets/wireguard/work.wg0.conf.gpg b/secrets/wireguard/work.wg0.conf.gpg new file mode 100644 index 0000000..002119a --- /dev/null +++ b/secrets/wireguard/work.wg0.conf.gpg @@ -0,0 +1,12 @@ +-----BEGIN PGP MESSAGE----- + +jA0ECQMIy4/a+BamXVv/0sCXAeA0EVKKki2mEoXI7GFg1orbBpnUfvM/sj7ISlHE +hues8qd3343KYZyIv/dBweWK13koZmXchfMPMHN61ygA9Y0uf35VLaMKWSudF77a +aHDdnMtuSnd0fdDQ3GaYIRGFd6SlRCpfiQ2Nhno+69GRotCxpgoNife9AQVPS4nM +ycqURKfck2UG0bPLSpjMEiZz+pFaNQ3vyGl6sjC5Zj2SkZDzftJb+TkEshwI6FZ/ +XFaodI2rFLQb/oGFQKnZ/fbyChhgfqWn3Na+KMupqJ4S3/Ef3WpTdZ/kYvgVUih6 +H3iZFptSJ8sfOnabebwvziHKTh/3H7Tek9jgoBsJ2fYdpDx5l/Oz9jy7IZUo7+hl +xYWEHENxNQAXIZAl80uaCuLzzW8wK0vWDju8en4dAxms1dNRiZRNSMuE4IZ+/eYP +bz9JnJguccAyaJvDGrGnE9GtegN3l3jYaw== +=p0YP +-----END PGP MESSAGE-----