From 54b277bed280d4182fa55c68f838254154aae80b Mon Sep 17 00:00:00 2001 From: John Lancaster Date: Sun, 17 Nov 2024 18:45:55 +0000 Subject: [PATCH] WIP networking stuff --- configuration.nix | 25 ++++++++++++++++--------- users.nix | 13 +++++++++++++ 2 files changed, 29 insertions(+), 9 deletions(-) create mode 100644 users.nix diff --git a/configuration.nix b/configuration.nix index 284534f..2749dc8 100644 --- a/configuration.nix +++ b/configuration.nix @@ -9,35 +9,42 @@ in (modulesPath + "/virtualisation/proxmox-lxc.nix") (import "${builtins.fetchTarball https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz}/nixos") (fetchTarball "https://github.com/nix-community/nixos-vscode-server/tarball/master") + ./users.nix ]; environment.systemPackages = with pkgs; [ (pkgs.writeShellScriptBin "nrbs" "sudo nixos-rebuild switch") (pkgs.writeShellScriptBin "nrbsu" "sudo nix-channel --update && sudo nixos-rebuild switch") bash + busybox git eza gh ]; - virtualisation.docker.enable = true; - services.vscode-server.enable = true; + # For SSH access services.openssh.enable = true; + # Networking stuff + # networking.interfaces.eth0.useDHCP = true; + # services.resolved = { enable = true; dns = "default"; }; + # services.resolved.enable = true; + # networking.nameservers = [ "192.168.1.1" ]; + # services.avahi = { enable = true; nssmdns4 = true; }; + + # Enables some tools + virtualisation.docker.enable = true; + services.vscode-server.enable = true; + system.activationScripts.startup = '' echo "Starting Nix-Docker container" ''; + # Uses rust-based sudo security.sudo-rs = { enable = true; execWheelOnly = false; - wheelNeedsPassword = false; + wheelNeedsPassword = false; # allows sudo without password for those in the wheel group }; - users.users.myuser = { - isNormalUser = true; - extraGroups = [ "docker" ]; - openssh.authorizedKeys.keyFiles = [ "/root/.ssh/authorized_keys" ]; - }; } - diff --git a/users.nix b/users.nix new file mode 100644 index 0000000..2f7bc64 --- /dev/null +++ b/users.nix @@ -0,0 +1,13 @@ +{ ... }: +{ + users.users.myuser = { + isNormalUser = true; + extraGroups = [ + "wheel" # needed for sudo without password + "docker" # needed for docker without sudo + ]; + openssh.authorizedKeys.keyFiles = [ + "/root/.ssh/authorized_keys" # should already have your public SSH key inside + ]; + }; +} \ No newline at end of file