mirror of
https://codeberg.org/jopejoe1/nix-conf.git
synced 2024-12-29 18:56:51 +01:00
some server stuff
This commit is contained in:
parent
ef6b1a72e4
commit
8aab9b29bd
8 changed files with 304 additions and 60 deletions
121
flake.lock
121
flake.lock
|
@ -1,5 +1,25 @@
|
|||
{
|
||||
"nodes": {
|
||||
"disko": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705540973,
|
||||
"narHash": "sha256-kNt/qAEy7ueV7NKbVc8YMHWiQAAgrir02MROYNI8fV0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"rev": "0033adc6e3f1ed076f3ed1c637ef1dfe6bef6733",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-addons": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
|
@ -11,11 +31,11 @@
|
|||
},
|
||||
"locked": {
|
||||
"dir": "pkgs/firefox-addons",
|
||||
"lastModified": 1705103913,
|
||||
"narHash": "sha256-PX6zS6uni5IXZMUQB2DUbhj+oV7QyAfwEEenOb/DstU=",
|
||||
"lastModified": 1705534402,
|
||||
"narHash": "sha256-mOWT45HLd8dm8FJNmrgngotE5NRJ+2arz65m1Kk0LBA=",
|
||||
"owner": "rycee",
|
||||
"repo": "nur-expressions",
|
||||
"rev": "c8e94a42015531a061a4518aff7aee03d5a4f215",
|
||||
"rev": "6a928ce99e4ccb09e59c1f58052bd65027249c8a",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
|
@ -84,11 +104,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1701680307,
|
||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||
"lastModified": 1705309234,
|
||||
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -164,11 +184,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705169127,
|
||||
"narHash": "sha256-j9OEtNxOIPWZWjbECVMkI1TO17SzlpHMm0LnVWKOR/g=",
|
||||
"lastModified": 1705535278,
|
||||
"narHash": "sha256-V5+XKfNbiY0bLKLQlH+AXyhHttEL7XcZBH9iSbxxexA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "f2942f3385f1b35cc8a1abb03a45e29c9cb4d3c8",
|
||||
"rev": "b84191db127c16a92cbdf7f7b9969d58bb456699",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -185,11 +205,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705231543,
|
||||
"narHash": "sha256-W8j0A5n2WOpCgdFRqMqwd9adNORcN1r/DpjRVxiFkAw=",
|
||||
"lastModified": 1705487282,
|
||||
"narHash": "sha256-eX/0O2ybmFKD/MzYO8gDlr4tAurekDbJQa7olAFFbRo=",
|
||||
"owner": "Jovian-Experiments",
|
||||
"repo": "Jovian-NixOS",
|
||||
"rev": "ab807f9740c533070e8b68b0d86034d4a293b5f1",
|
||||
"rev": "a00331e522b9a732f876cf707174ce37ae702762",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -201,15 +221,17 @@
|
|||
"kde2nix": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705232580,
|
||||
"narHash": "sha256-OJHqtLx+VHgwJL8GcpDouQiwDybQ4mzwLwtXPG9QLqg=",
|
||||
"lastModified": 1705586702,
|
||||
"narHash": "sha256-nypd81B18pEHBT/TiKe/rXHUesJGSDy3aObWO61N25M=",
|
||||
"owner": "nix-community",
|
||||
"repo": "kde2nix",
|
||||
"rev": "155d24c82dde0f4738f05760e5dfc1c13d84fe11",
|
||||
"rev": "3a7bb677935b857327d7f4fa5e7bb1dfaa274331",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -236,11 +258,11 @@
|
|||
},
|
||||
"nix-filter": {
|
||||
"locked": {
|
||||
"lastModified": 1701697642,
|
||||
"narHash": "sha256-L217WytWZHSY8GW9Gx1A64OnNctbuDbfslaTEofXXRw=",
|
||||
"lastModified": 1705332318,
|
||||
"narHash": "sha256-kcw1yFeJe9N4PjQji9ZeX47jg0p9A0DuU4djKvg1a7I=",
|
||||
"owner": "numtide",
|
||||
"repo": "nix-filter",
|
||||
"rev": "c843418ecfd0344ecb85844b082ff5675e02c443",
|
||||
"rev": "3449dc925982ad46246cfc36469baf66e1b64f17",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -296,11 +318,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1701689616,
|
||||
"narHash": "sha256-ewnfgvRy73HoP5KnYmy1Rcr4m4yShvsb6TCCaKoW8pc=",
|
||||
"lastModified": 1705400161,
|
||||
"narHash": "sha256-0MFaNIwwpVWB1N9m7cfHAM2pSVtYESQ7tlHxnDTOhM4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-generators",
|
||||
"rev": "246219bc21b943c6f6812bb7744218ba0df08600",
|
||||
"rev": "521fb4cdd8a2e1a00d1adf0fea7135d1faf04234",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -311,11 +333,11 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1705187059,
|
||||
"narHash": "sha256-dSj+iIYqLA+7/5rLXWfUxw9IXRm0w8Mrm39af8klUH0=",
|
||||
"lastModified": 1705312285,
|
||||
"narHash": "sha256-rd+dY+v61Y8w3u9bukO/hB55Xl4wXv4/yC8rCGVnK5U=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "ef811636cc847355688804593282078bac7758d4",
|
||||
"rev": "bee2202bec57e521e3bd8acd526884b9767d7fa0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -326,11 +348,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1705133751,
|
||||
"narHash": "sha256-rCIsyE80jgiOU78gCWN3A0wE0tR2GI5nH6MlS+HaaSQ=",
|
||||
"lastModified": 1705496572,
|
||||
"narHash": "sha256-rPIe9G5EBLXdBdn9ilGc0nq082lzQd0xGGe092R/5QE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9b19f5e77dd906cb52dade0b7bd280339d2a1f3d",
|
||||
"rev": "842d9d80cfd4560648c785f8a4e6f3b096790e19",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -343,11 +365,11 @@
|
|||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"dir": "lib",
|
||||
"lastModified": 1705133751,
|
||||
"narHash": "sha256-rCIsyE80jgiOU78gCWN3A0wE0tR2GI5nH6MlS+HaaSQ=",
|
||||
"lastModified": 1705496572,
|
||||
"narHash": "sha256-rPIe9G5EBLXdBdn9ilGc0nq082lzQd0xGGe092R/5QE=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9b19f5e77dd906cb52dade0b7bd280339d2a1f3d",
|
||||
"rev": "842d9d80cfd4560648c785f8a4e6f3b096790e19",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -374,30 +396,14 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1705133751,
|
||||
"narHash": "sha256-rCIsyE80jgiOU78gCWN3A0wE0tR2GI5nH6MlS+HaaSQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9b19f5e77dd906cb52dade0b7bd280339d2a1f3d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"openrgb": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1705174352,
|
||||
"narHash": "sha256-ZRraHGcGHctHi1pNAOOKhvWPSbkdnBGbEJOQd+o7IDQ=",
|
||||
"lastModified": 1705251489,
|
||||
"narHash": "sha256-UaShlE/VT2mmSO1F91GIUYwTmSPdOOPJRhkzgKIjwkY=",
|
||||
"owner": "CalcProgrammer1",
|
||||
"repo": "OpenRGB",
|
||||
"rev": "ccec0828f99616db36fca4e451c62e35d2833355",
|
||||
"rev": "b79cf82d9676ff1993e43fcec0630b906f84773c",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
|
@ -488,11 +494,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705222259,
|
||||
"narHash": "sha256-JAsVJjT3hCMXZk6YJIcGBH03rPREIUI0GLILPhKA1YU=",
|
||||
"lastModified": 1705531696,
|
||||
"narHash": "sha256-4d3fGCTx/gwhFliXJg1f6hx9IIIF7zXY2KHSz2XRPPk=",
|
||||
"owner": "PrismLauncher",
|
||||
"repo": "PrismLauncher",
|
||||
"rev": "5a0240e709856c3cc4e2ebeeebcf6e56ab544bfc",
|
||||
"rev": "b2c2bf1460eaa89e921ea3fe4cd53ac21c656b79",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -503,6 +509,7 @@
|
|||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"disko": "disko",
|
||||
"firefox-addons": "firefox-addons",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-parts": "flake-parts",
|
||||
|
@ -516,7 +523,7 @@
|
|||
"nix-systems": "nix-systems",
|
||||
"nixos-generators": "nixos-generators",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-lib": "nixpkgs-lib",
|
||||
"openrgb": "openrgb",
|
||||
"pre-commit-hooks": "pre-commit-hooks_2",
|
||||
|
@ -542,11 +549,11 @@
|
|||
"tela-icon-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1702743716,
|
||||
"narHash": "sha256-Ec8AjgDkpsqa8ZcXIT4235N1FJHlCX8+XwtBQ70uxHI=",
|
||||
"lastModified": 1705509115,
|
||||
"narHash": "sha256-J9SUKqpr9kZ0h6KJf2j5FYfu+fWEvQhVYUZ2hETAIz4=",
|
||||
"owner": "vinceliuice",
|
||||
"repo": "Tela-icon-theme",
|
||||
"rev": "6b1c74d9aa7b26e188a65757a9df1fb1f4a3eddd",
|
||||
"rev": "7a700e563df55ae2b28f15033e8b2ce766c06243",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
11
flake.nix
11
flake.nix
|
@ -2,8 +2,15 @@
|
|||
description = "jopejoe1 NixOS configuration";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
kde2nix.url = "github:nix-community/kde2nix";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
kde2nix = {
|
||||
url = "github:nix-community/kde2nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
disko = {
|
||||
url = "github:nix-community/disko";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
firefox-addons = {
|
||||
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
|
@ -22,9 +22,11 @@
|
|||
./steam
|
||||
./sway
|
||||
./users
|
||||
./zerotierone
|
||||
../upstream
|
||||
self.inputs.home-manager.nixosModules.home-manager
|
||||
self.inputs.kde2nix.nixosModules.plasma6
|
||||
self.inputs.disko.nixosModules.disko
|
||||
self.inputs.nixos-generators.nixosModules.all-formats
|
||||
];
|
||||
}
|
||||
|
|
17
modules/zerotierone/default.nix
Normal file
17
modules/zerotierone/default.nix
Normal file
|
@ -0,0 +1,17 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.jopejoe1.zerotierone;
|
||||
in {
|
||||
options.jopejoe1.zerotierone = {
|
||||
enable = lib.mkEnableOption "Enable zerotierone";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.zerotierone.enable = true;
|
||||
services.zerotierone.joinNetworks = [ "7c31a21e86f9a75c" ];
|
||||
environment.systemPackages = with pkgs; [
|
||||
moonlight-qt
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -25,4 +25,6 @@ in
|
|||
benzaiten = mkSystem "x86_64-unknown-linux-gnu" "benzaiten";
|
||||
kamimusubi = mkSystem "x86_64-unknown-linux-gnu" "kamimusubi";
|
||||
ebisu = mkSystem "x86_64-unknown-linux-gnu" "ebisu";
|
||||
hetzner = mkSystem "x86_64-unknown-linux-gnu" "hetzner";
|
||||
zap = mkSystem "x86_64-unknown-linux-gnu" "zap";
|
||||
}
|
||||
|
|
123
systems/hetzner/default.nix
Normal file
123
systems/hetzner/default.nix
Normal file
|
@ -0,0 +1,123 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
jopejoe1 = {
|
||||
local.enable = true;
|
||||
nix.enable = true;
|
||||
user = {
|
||||
jopejoe1.enable = true;
|
||||
root.enable = true;
|
||||
};
|
||||
ssh.enable = true;
|
||||
};
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ahci" "nvme" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.loader = {
|
||||
grub = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
networking = {
|
||||
wireless.enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Berlin";
|
||||
|
||||
services.openssh.settings.PermitRootLogin = lib.mkForce "yes";
|
||||
|
||||
console = {
|
||||
enable = true;
|
||||
};
|
||||
disko.devices = {
|
||||
disk = {
|
||||
one = {
|
||||
type = "disk";
|
||||
device = "/dev/nvme0n1";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
BOOT = {
|
||||
size = "1M";
|
||||
type = "EF02"; # for grub MBR
|
||||
};
|
||||
ESP = {
|
||||
size = "500M";
|
||||
type = "EF00";
|
||||
content = {
|
||||
type = "mdraid";
|
||||
name = "boot";
|
||||
};
|
||||
};
|
||||
mdadm = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "mdraid";
|
||||
name = "raid1";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
two = {
|
||||
type = "disk";
|
||||
device = "/dev/nvme1n1";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
boot = {
|
||||
size = "1M";
|
||||
type = "EF02"; # for grub MBR
|
||||
};
|
||||
ESP = {
|
||||
size = "500M";
|
||||
type = "EF00";
|
||||
content = {
|
||||
type = "mdraid";
|
||||
name = "boot";
|
||||
};
|
||||
};
|
||||
mdadm = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "mdraid";
|
||||
name = "raid1";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
mdadm = {
|
||||
boot = {
|
||||
type = "mdadm";
|
||||
level = 1;
|
||||
metadata = "1.0";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "vfat";
|
||||
mountpoint = "/boot";
|
||||
};
|
||||
};
|
||||
raid1 = {
|
||||
type = "mdadm";
|
||||
level = 1;
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions.primary = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "ext4";
|
||||
mountpoint = "/";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -27,6 +27,7 @@
|
|||
sway.enable = true;
|
||||
minecraft-server.enable = true;
|
||||
repo-sync.enable = true;
|
||||
zerotierone.enable = true;
|
||||
keyboard = {
|
||||
enable = true;
|
||||
layout = "de";
|
||||
|
@ -102,5 +103,6 @@
|
|||
gamemode.enable = true;
|
||||
};
|
||||
|
||||
nix.settings.system-features = [ "gccarch-alderlake" "benchmark" "big-parallel" "kvm" "nixos-test" ];
|
||||
nix.settings.system-features = [ "gccarch-alderlake" "benchmark" "big-parallel" "kvm" "nixos-test" ]
|
||||
++ map (x: "gccarch-${x}") (lib.systems.architectures.inferiors.alderlake or []);
|
||||
}
|
||||
|
|
84
systems/zap/default.nix
Normal file
84
systems/zap/default.nix
Normal file
|
@ -0,0 +1,84 @@
|
|||
{ config, pkgs, lib, modulesPath, ... }:
|
||||
|
||||
{
|
||||
jopejoe1 = {
|
||||
local.enable = true;
|
||||
nix.enable = true;
|
||||
user = {
|
||||
jopejoe1.enable = true;
|
||||
root.enable = true;
|
||||
};
|
||||
ssh.enable = true;
|
||||
};
|
||||
|
||||
imports =
|
||||
[ (modulesPath + "/profiles/qemu-guest.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
|
||||
|
||||
boot.loader = {
|
||||
grub = {
|
||||
enable = true;
|
||||
device = "/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_drive-scsi0";
|
||||
};
|
||||
};
|
||||
|
||||
services.openssh.listenAddresses = [
|
||||
{
|
||||
addr = "134.255.219.135";
|
||||
port = 22;
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
|
||||
networking = {
|
||||
wireless.enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Berlin";
|
||||
|
||||
services.openssh.settings.PermitRootLogin = lib.mkForce "yes";
|
||||
|
||||
console = {
|
||||
enable = true;
|
||||
};
|
||||
disko.devices = {
|
||||
disk = {
|
||||
vdb = {
|
||||
device = "/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_drive-scsi0";
|
||||
type = "disk";
|
||||
content = {
|
||||
type = "table";
|
||||
format = "msdos";
|
||||
partitions = [
|
||||
{
|
||||
name = "ESP";
|
||||
start = "1M";
|
||||
end = "500M";
|
||||
bootable = true;
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "vfat";
|
||||
mountpoint = "/boot";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "root";
|
||||
start = "500M";
|
||||
end = "100%";
|
||||
part-type = "primary";
|
||||
bootable = true;
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "ext4";
|
||||
mountpoint = "/";
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in a new issue