aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortdback <tyler@tdback.net>2025-03-05 20:07:01 -0500
committertdback <tyler@tdback.net>2025-03-05 20:07:01 -0500
commit134264245ff8b1e6f0347b063b58821a938210f4 (patch)
tree9587090d787b75b161f10906cd1d5d23924f1194
parent4063c2a6e59c9cd5233688db679b80fadf16ad33 (diff)
flake: add sol server
-rw-r--r--flake.nix46
-rw-r--r--hosts/sol/default.nix44
-rw-r--r--hosts/sol/filesystems/default.nix17
-rw-r--r--hosts/sol/modules/default.nix15
-rw-r--r--secrets/pushoverAppToken.age28
-rw-r--r--secrets/pushoverUserToken.age28
-rw-r--r--secrets/secrets.nix1
7 files changed, 138 insertions, 41 deletions
diff --git a/flake.nix b/flake.nix
index 27b01fe..4855502 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,17 +1,14 @@
{
- inputs = {
- nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
- nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
- home-manager = {
- url = "github:nix-community/home-manager/release-24.11";
- inputs.nixpkgs.follows = "nixpkgs";
- };
- agenix = {
- url = "github:ryantm/agenix";
- inputs.nixpkgs.follows = "nixpkgs";
- };
- deploy-rs.url = "github:serokell/deploy-rs";
- };
+ inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
+ inputs.nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
+
+ inputs.home-manager.url = "github:nix-community/home-manager/release-24.11";
+ inputs.home-manager.inputs.nixpkgs.follows = "nixpkgs";
+
+ inputs.agenix.url = "github:ryantm/agenix";
+ inputs.agenix.inputs.nixpkgs.follows = "nixpkgs";
+
+ inputs.deploy-rs.url = "github:serokell/deploy-rs";
outputs =
{ ... }@inputs:
@@ -136,6 +133,29 @@
];
}
])
+ (mkSystem "sol" "x86_64-linux" inputs.nixpkgs [
+ {
+ type = "profiles";
+ modules = [
+ "common"
+ "upgrade"
+ ];
+ }
+ {
+ type = "scripts";
+ modules = [
+ "motd"
+ "pushover"
+ ];
+ }
+ {
+ type = "services";
+ modules = [
+ "ssh"
+ "xonotic"
+ ];
+ }
+ ])
(mkSystem "sparrow" "x86_64-linux" inputs.nixpkgs (
inputs.nixpkgs.lib.singleton {
type = "profiles";
diff --git a/hosts/sol/default.nix b/hosts/sol/default.nix
new file mode 100644
index 0000000..bee11d7
--- /dev/null
+++ b/hosts/sol/default.nix
@@ -0,0 +1,44 @@
+{
+ inputs,
+ ...
+}:
+{
+ system.stateVersion = "24.11";
+
+ imports = [
+ ./filesystems
+ ./modules
+ ];
+
+ boot.loader.grub = {
+ enable = true;
+ device = "nodev";
+ };
+ boot.initrd = {
+ availableKernelModules = [
+ "ahci"
+ "xhci_pci"
+ "virtio_pci"
+ "virtio_scsi"
+ "sd_mod"
+ "sr_mod"
+ ];
+ kernelModules = [ "dm-snapshot" ];
+ };
+
+ home-manager = {
+ useGlobalPkgs = true;
+ useUserPackages = true;
+ users = import "${inputs.self}/users";
+ extraSpecialArgs = {
+ inherit inputs;
+ headless = true;
+ };
+ };
+
+ time.timeZone = "America/Detroit";
+ networking = {
+ hostName = "sol";
+ networkmanager.enable = true;
+ };
+}
diff --git a/hosts/sol/filesystems/default.nix b/hosts/sol/filesystems/default.nix
new file mode 100644
index 0000000..e31b2e3
--- /dev/null
+++ b/hosts/sol/filesystems/default.nix
@@ -0,0 +1,17 @@
+{
+ fileSystems."/" = {
+ device = "/dev/disk/by-uuid/5ac7df5a-5908-4b6a-b982-88c34775205a";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" = {
+ device = "/dev/disk/by-uuid/ED26-4D10";
+ fsType = "vfat";
+ options = [
+ "fmask=0022"
+ "dmask=0022"
+ ];
+ };
+
+ swapDevices = [ ];
+}
diff --git a/hosts/sol/modules/default.nix b/hosts/sol/modules/default.nix
new file mode 100644
index 0000000..f1c7109
--- /dev/null
+++ b/hosts/sol/modules/default.nix
@@ -0,0 +1,15 @@
+{
+ modules = {
+ services.xonotic = {
+ enable = true;
+ hostname = "tdback's xonotic server";
+ motd = "GLHF! Please report any issues to @tyler:tdback.net on matrix.";
+ g_mutators.grappling_hook = true;
+ };
+ scripts.motd = {
+ enable = true;
+ networkInterfaces = [ "enp1s0" ];
+ servicesToCheck = [ "xonotic" ];
+ };
+ };
+}
diff --git a/secrets/pushoverAppToken.age b/secrets/pushoverAppToken.age
index 4ffc562..62158ab 100644
--- a/secrets/pushoverAppToken.age
+++ b/secrets/pushoverAppToken.age
@@ -1,15 +1,15 @@
age-encryption.org/v1
--> ssh-ed25519 D2VkFQ /CN/n8yQ3knYsTONwUl03z9tiMbFWieUVgN+8QbWE1s
-6ydJTacuRbV19uk8EFnQfDm2zGa6odWelT0+W1rqnJM
--> ssh-ed25519 VoJMUA dG7UmiPHCvBc0cwgGVdzsxyW2XhEf962AOddDJT/2RM
-BDtjzNwhtP6vDiHlgEJAvBVrpEbw/x73asTCcjQTeJI
--> ssh-ed25519 2ZEkNQ fyZv2aPEYowMWzZ1KOm9pCAiS/AL1w1zeTbqRQT1QyQ
-1t70HCjPvPUKtttbV7y//EZc9+MUllZs7o3od731Gk4
--> ssh-ed25519 gpkhBg wNZAXyq4A0pwkCmtOiGVKJipfBuI3+0J3uOOxTmCshA
-SmYnIahbbSsMOYj+ggvt+AcZRuDYnIuojHAnXcOei4A
--> ssh-ed25519 NJIOsA BN9ECXI3TRjAQPdVhbaJ45GcRwl6ivADLDYiYq4h9yM
-+kIZfEoWwuPs636XNXI6liK1CxMMrvDsUiw4/oRRaIU
--> ssh-ed25519 UWm3sg CVYUF3Y0Y+YMzgekXmbWd8X9QtUaZNuAWqdnDr2ukAM
-EShPIvrxRRLKwuT9gp7Yl4bgt9r2qti2q0Twfb6ryxw
---- V7eXnnTrhFJSLvShXxtOxQlYg77gXLfPQfSfjEg1Gws
-M0*,jK;#Ka%eTh9\{r:"Ԍ]ۙ \ No newline at end of file
+-> ssh-ed25519 D2VkFQ L9MRzcK17CkE5camBJbiZfrHassBaYekPJjqmAKYFxI
+DoJGm6+2thMGzL6EdMyH/LfRQ7kK28sbIp9Svv09O14
+-> ssh-ed25519 VoJMUA Wa/LZwrQ8okAtOpgFWPiLSS5X8RG0tNukmEg9hJdrT0
+DZq6s2evb801hsOSGDx7mjp8uWltX5ieNUerMGWHLwQ
+-> ssh-ed25519 2ZEkNQ b+VVAUVssAdneJPnStnofziitZwT7jiI5CtNreCBjSQ
+KUNxscDeY6bl3xekIeyRaRp3UWc6j1O0RBhmnLiJOjg
+-> ssh-ed25519 gpkhBg ipMc1k8sKLOtgvrxGsyNH9Svcu0DNMAIp+E3WVhM+hY
++aHRqhpJ6B6eM0u/C8TuadUrVkrHHU+ddUdNAAQpafQ
+-> ssh-ed25519 qtQgZQ QEFek3hCYNCHTgNwxd/M9KB1sEoqAJ8Q4fsRaxJuG2M
+VllVC45FeasNWI+LCOxTx44gxmVi60f8Yrr/z8Mt1Ks
+-> ssh-ed25519 NJIOsA 5inML91Qi2o/2UKLUGYs9+RE6+ibCcLc4gbeyGDZuns
+VsusquP7kvQTeK9qKsc4HPIPxYOh02kGs3L5LKtGAQA
+--- ZRx2FNYoZ2CucVabnkbCUnNMIpVBZpbm255M7iFsNdk
+ф}A͏JO]nuЩ)Jny;84 ')xڡ'm= \ No newline at end of file
diff --git a/secrets/pushoverUserToken.age b/secrets/pushoverUserToken.age
index d7a7e58..59dd3a0 100644
--- a/secrets/pushoverUserToken.age
+++ b/secrets/pushoverUserToken.age
@@ -1,15 +1,15 @@
age-encryption.org/v1
--> ssh-ed25519 D2VkFQ e7WexmCoP6hlrH5yXCmdTpKtdCJY7yhImcTId8BsSzI
-FAe9iNpeTSlmZpfobb/eZGuRmFtFUqJgoPS7/rNrlMY
--> ssh-ed25519 VoJMUA RgpGjD+FyzRS8nofK1pCZMIe/BqEM+wpDvmlWntZ834
-ZeiN0BGWnZ1eD5p7ScdfGhPLXFknMACtzUn+jsJrVwo
--> ssh-ed25519 2ZEkNQ saori7azPvF+MpOQsWOdFKDmWF6vdS4gfE64wuoVJww
-/cDJ3ezq4wSY/QTucJEbKWHaLT+Ixm8Zuzf+k8j/t/Q
--> ssh-ed25519 gpkhBg 1tP+wGXNivS1hks0lL/yT9F/K58LMwbh/110OKNiRxc
-wZ6A7VzHkN8nhF8xYZ7eCZOKDs7IYhwd7KTZBes6a5Q
--> ssh-ed25519 NJIOsA 6XxoVtEVyhxTgWw6LpSS5mnczoVYjaCS979FnJjMiU8
-zzgFDvgS/tYvPNg7bmqNOcveDWw6o3opR+nZRw3hx+Q
--> ssh-ed25519 UWm3sg pS3Rv5yqHHVm2mGA3LNj86ocrh6deiQSlZHVSssNVTY
-Rf6JZED4Lu+FsKmzx+K3m5/WNl8jNPebsLKVnmXvsXY
---- cQDPpGRcrJo2vVhmhJndyzMrlMlnM1K2RbDqtyTvUMw
-?U~0 ?*ߥ_Q'ѷqF)4ϰ`MTu \ No newline at end of file
+-> ssh-ed25519 D2VkFQ Kyn96E/D3MaGcLnfciX50aIBnRsYZDPs8KFJvyHtqFY
+BNjA9TTsgq7Cyf3NEvYldTNTfBENHi2cFActKQypxHM
+-> ssh-ed25519 VoJMUA DNzXE2xv2v+A7IxEY7ny4NbB5hJcZBlQxbvgkesmfDg
+oXHzDMbAxjVoWILWxSREyXc5lRMnNbd3jj0nfRjUEtg
+-> ssh-ed25519 2ZEkNQ BwreaGBBZ+F+22MdMyLm1sPCT2oFK5JOQ1hOKl5hO24
+jyZFI5HCEw/+YqGQ8r3hEWYIlR9eVdNw19DtWYpieuY
+-> ssh-ed25519 gpkhBg 2Umaad7v0eW5M7MNjOQEcL2CUngv1lh4OjiAslI/eW0
+X8C8o0K52z64YlNDBqWHPOFE7QfV3bvFNoiPPTD6J8E
+-> ssh-ed25519 qtQgZQ Mwfn5ylMEPcOezB1MU5xXYxGwdxIxvoH2KW5VrBP7FY
+kAdnWQcxvxVbzvx3Pjk6cbvXve1OgQI8rskv9roH25I
+-> ssh-ed25519 NJIOsA Whuz2QQacv7Qz9XMDmGrGj+SKOY3vjd5Vpa5h3ukigU
+KlSkKpJwzvZKFeX2D1HMuv4PK3kU3D6oh3z0IqS+fpY
+--- L9/eRfCbjg4rxOLUyoSAFG9kZwh0/ypT+W3JDycckMg
+muq4py2*M^ ϰ?A[2tulk.tDeՄZ \ No newline at end of file
diff --git a/secrets/secrets.nix b/secrets/secrets.nix
index b936c6d..028ab88 100644
--- a/secrets/secrets.nix
+++ b/secrets/secrets.nix
@@ -4,6 +4,7 @@ let
heimdall = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINq0rMkFlizGPijlHKMYS9CGWJ2T1ZJHqaLozWdoySz2";
loki = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC+5CYbXvvC/h+5YqBkuzt1VAvkX+zj22F5g6Mq1c2yL";
odin = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIByi8x1IgXBC6iw6MJoO7xIkkU4bdIaQ3Mi6zEtm+IJh";
+ sol = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKuwAWmjWNuDwciX9N9N0SL3jZ1IapiHmSU5NVcY6/+I";
thor = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGEn+C6ktSqvvwNVf1zUeNKKtZJ1QgLVhQjU83+0RvSY";
};