From a842256b975a42485455cf94e9c1d509d82cb8b5 Mon Sep 17 00:00:00 2001 From: uku Date: Wed, 14 Feb 2024 12:06:23 +0100 Subject: [PATCH] fuji-wsl: init --- configs/common.nix | 1 + flake.lock | 68 +++++++++++++++++++-- flake.nix | 6 ++ programs/vscode.nix | 6 +- secrets/fuji-wsl/rootPassword.age | 10 +++ secrets/secrets.nix | 1 + systems/default.nix | 9 +++ systems/fuji-wsl/default.nix | 30 +++++++++ systems/fuji-wsl/hardware-configuration.nix | 3 + systems/fuji/default.nix | 5 +- 10 files changed, 126 insertions(+), 13 deletions(-) create mode 100644 secrets/fuji-wsl/rootPassword.age create mode 100644 systems/fuji-wsl/default.nix create mode 100644 systems/fuji-wsl/hardware-configuration.nix diff --git a/configs/common.nix b/configs/common.nix index 00e1849..ddf8f5c 100644 --- a/configs/common.nix +++ b/configs/common.nix @@ -31,6 +31,7 @@ neovim git curl + wget ]; variables = { diff --git a/flake.lock b/flake.lock index 4f54ded..95ca68a 100644 --- a/flake.lock +++ b/flake.lock @@ -236,11 +236,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1681202837, - "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "cfacdce06f30d2b68473a46042957675eebb3401", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -285,6 +285,24 @@ "type": "github" } }, + "flake-utils_6": { + "inputs": { + "systems": "systems_8" + }, + "locked": { + "lastModified": 1681202837, + "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "cfacdce06f30d2b68473a46042957675eebb3401", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -376,6 +394,28 @@ "type": "github" } }, + "nixos-wsl": { + "inputs": { + "flake-compat": [], + "flake-utils": "flake-utils_3", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1707761607, + "narHash": "sha256-OKNdTgnyhZpmqdgba8s78/QvowyTIMJDp0iLxv570bU=", + "owner": "nix-community", + "repo": "NixOS-WSL", + "rev": "c8ddba82ca6b791be1acaae4b336ff8e857ec70b", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NixOS-WSL", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1707546158, @@ -447,6 +487,7 @@ "flake-parts": "flake-parts", "home-manager": "home-manager_2", "lanzaboote": "lanzaboote", + "nixos-wsl": "nixos-wsl", "nixpkgs": "nixpkgs", "ukubot-rs": "ukubot-rs", "vscode-extensions": "vscode-extensions", @@ -502,7 +543,7 @@ }, "rust-overlay_3": { "inputs": { - "flake-utils": "flake-utils_3", + "flake-utils": "flake-utils_4", "nixpkgs": [ "ukubot-rs", "nixpkgs" @@ -627,6 +668,21 @@ "type": "github" } }, + "systems_8": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "ukubot-rs": { "inputs": { "flake-parts": [ @@ -672,7 +728,7 @@ "vscode-extensions": { "inputs": { "flake-compat": "flake-compat_3", - "flake-utils": "flake-utils_4", + "flake-utils": "flake-utils_5", "nixpkgs": [ "nixpkgs" ] @@ -693,7 +749,7 @@ }, "vscode-server": { "inputs": { - "flake-utils": "flake-utils_5", + "flake-utils": "flake-utils_6", "nixpkgs": [ "nixpkgs" ] diff --git a/flake.nix b/flake.nix index b0c8984..01aaaed 100644 --- a/flake.nix +++ b/flake.nix @@ -49,6 +49,12 @@ inputs.nixpkgs.follows = "nixpkgs"; }; + nixos-wsl = { + url = "github:nix-community/NixOS-WSL"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.flake-compat.follows = ""; + }; + # ==== uku3lig stuff ==== api-rs = { url = "github:uku3lig/api-rs"; diff --git a/programs/vscode.nix b/programs/vscode.nix index 8354add..b3fce69 100644 --- a/programs/vscode.nix +++ b/programs/vscode.nix @@ -61,9 +61,9 @@ in { # java redhat.java - # web - astro-build.astro-vscode - vue.volar + # web + astro-build.astro-vscode + vue.volar ]; userSettings = { diff --git a/secrets/fuji-wsl/rootPassword.age b/secrets/fuji-wsl/rootPassword.age new file mode 100644 index 0000000..337c8af --- /dev/null +++ b/secrets/fuji-wsl/rootPassword.age @@ -0,0 +1,10 @@ +-----BEGIN AGE ENCRYPTED FILE----- +YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBObHk5b0diQ1BjZ2hQZXFY +Z2h5aDZJOHkrSTV0NWlKbm1FMk55MjdnMzN3CkNGODdIK25PckV1U09weTRpbEFv +anJqTGxGcms5RHVCZDhWOUlBNTcyZE0KLT4gWDI1NTE5IEZrME5wdGNneVIzdmdQ +Tks4NDgwNVdCaXBYV21WdE9nc2JyNExneGREbFUKNEZWVXZiSHdwOGdrSVRmaEk0 +NFBxZDNWUlp0bzA1cXpVSDNQUUVDeXo4NAotLS0gRithOTVZelFUeVJDSjlmYmtL +TkZKeTlwUlkyVVN2aVRrM01iUjBjRldkVQr/j+fpGsp+TpUPx+KHXuroJz+R0kNG +F1tHo7SHc9mp5tZqt+NVROG7dqg+gRgXleeJ2vLkAP7rFVzXNY2UsvHA8WMxq90a +G4uqp5DONVVA5EM43uxHroiUH4qYn0kLMhQI1Xy08h022E25 +-----END AGE ENCRYPTED FILE----- diff --git a/secrets/secrets.nix b/secrets/secrets.nix index 0c675f0..0fc6d7d 100644 --- a/secrets/secrets.nix +++ b/secrets/secrets.nix @@ -10,6 +10,7 @@ in { "tailscaleKey.age".publicKeys = all; "fuji/rootPassword.age".publicKeys = main; + "fuji-wsl/rootPassword.age".publicKeys = main; "kilimandjaro/rootPassword.age".publicKeys = main; "etna/rootPassword.age".publicKeys = main ++ [etna]; diff --git a/systems/default.nix b/systems/default.nix index 415aca6..20efe92 100644 --- a/systems/default.nix +++ b/systems/default.nix @@ -46,6 +46,15 @@ in { modules = desktop; }; + fuji-wsl = { + system = "x86_64-linux"; + modules = + nixos + ++ (with inputs; [ + nixos-wsl.nixosModules.default + ]); + }; + kilimandjaro = { system = "x86_64-linux"; modules = desktop; diff --git a/systems/fuji-wsl/default.nix b/systems/fuji-wsl/default.nix new file mode 100644 index 0000000..5f103f7 --- /dev/null +++ b/systems/fuji-wsl/default.nix @@ -0,0 +1,30 @@ +{ + lib, + pkgs, + config, + ... +}: let + username = "leo"; +in { + imports = [ + (lib.mkAliasOptionModule ["hm"] ["home-manager" "users" username]) + + ../../programs/fish.nix + ../../programs/git.nix + ../../programs/starship.nix + ]; + + hm.home.stateVersion = "23.11"; + + wsl = { + enable = true; + defaultUser = username; + }; + + users.users."${username}" = { + isNormalUser = true; + shell = pkgs.fish; + extraGroups = ["wheel"]; + hashedPasswordFile = config.age.secrets.userPassword.path; + }; +} diff --git a/systems/fuji-wsl/hardware-configuration.nix b/systems/fuji-wsl/hardware-configuration.nix new file mode 100644 index 0000000..7e74ef2 --- /dev/null +++ b/systems/fuji-wsl/hardware-configuration.nix @@ -0,0 +1,3 @@ +{ + # intentionally empty +} diff --git a/systems/fuji/default.nix b/systems/fuji/default.nix index 6999b30..9b8632f 100644 --- a/systems/fuji/default.nix +++ b/systems/fuji/default.nix @@ -1,7 +1,4 @@ -{ - pkgs, - ... -}: { +{pkgs, ...}: { imports = [./nvidia.nix]; services.xserver.videoDrivers = ["amdgpu"];