This commit is contained in:
Ezri Zhu 2024-09-26 05:44:39 -04:00
parent 9a5c615abe
commit 3b9e973426
Signed by: ezri
SSH key fingerprint: SHA256:PjS2hKMfl3gJ5Furjjq+kXa4ZvS1c0gb4/djAxxAf6c
8 changed files with 123 additions and 1 deletions

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "nixpkgs"]
path = nixpkgs
url = https://github.com/NixOS/nixpkgs.git

View file

@ -1,2 +1,7 @@
# nixos
# Morph Deployment
Common configs are in /common
Host specific are in /hosts
To deploy, run `morph deploy network.nix switch`

20
common/default.nix Normal file
View file

@ -0,0 +1,20 @@
{ pkgs, ... }:
{
imports = [
./users.nix
];
nix.package = pkgs.lix;
environment.systemPackages = with pkgs; [
vim
wget
curl
htop
tmux
openssl
git
];
security.sudo.wheelNeedsPassword = false;
networking.firewall.enable = false;
services.openssh.enable = true;
}

14
common/users.nix Normal file
View file

@ -0,0 +1,14 @@
{ pkgs, ... }:
{
nix.settings.trusted-users = [ "@wheel" ];
users.users.ezri = {
isNormalUser = true;
extraGroups = [ "wheel" ];
openssh.authorizedKeys.keys = [
"ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHp8yRnahmUS7l8STsx0pH25O4xTWGYQyQEWeKWxeM7gbkTNPGpiUswmsHgN8Ng0+FwjIw0FHkjQeLSMH9OTSB4= ipad0esp"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJdN4a3yJUlKIaVezOe4hE8fRK9DkGSzwoZ9vfpsBsHh ide0"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICY1V1im0gnXKWdR/H0Q0tajQFQqnDXoNVG3X8/RseI3 lap0"
];
};
}

53
hosts/stella.nix Normal file
View file

@ -0,0 +1,53 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/profiles/qemu-guest.nix")
];
boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/e31f5386-8b86-4aa0-9666-606680bcd10f";
fsType = "ext4";
};
networking.useDHCP = lib.mkDefault false;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
boot.loader.grub = {
enable = true;
device = "/dev/vda";
};
networking = {
hostName = "stella";
search = ["wolfgirl.systems"];
nameservers = [ "9.9.9.10" "149.112.112.10" ];
dhcpcd.enable = false;
interfaces = {
enp1s0.ipv4.addresses = [{
address = "198.8.59.4";
prefixLength = 27;
}];
};
defaultGateway = {
address = "198.8.59.1";
interface = "enp1s0";
};
};
time.timeZone = "America/New_York";
i18n.defaultLocale = "en_US.UTF-8";
swapDevices = [ {
device = "/swapfile";
size = 4*1024;
randomEncryption.enable = true;
}];
system.stateVersion = "23.05";
}

19
network.nix Normal file
View file

@ -0,0 +1,19 @@
let
pkgs = import ./nixpkgs {};
in
{
network = {
description = "wolfgirl.systems";
inherit pkgs;
};
"stella" = { pkgs, ... }: {
deployment = {
targetHost = "198.8.59.4";
};
imports = [
./hosts/stella.nix
./common
];
};
}

1
nixpkgs Submodule

@ -0,0 +1 @@
Subproject commit 30439d93eb8b19861ccbe3e581abf97bdc91b093

7
shell.nix Normal file
View file

@ -0,0 +1,7 @@
{ pkgs ? import <nixpkgs> {}}:
pkgs.mkShell {
buildInputs = with pkgs; [
morph
];
}