bcachefs
This commit is contained in:
parent
f561177af5
commit
8d086ffcca
10 changed files with 5545 additions and 37 deletions
16
flake.lock
generated
16
flake.lock
generated
|
|
@ -339,6 +339,21 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-facter-modules": {
|
||||
"locked": {
|
||||
"lastModified": 1728725827,
|
||||
"narHash": "sha256-io1UeGaV2HcmK1zCZPnawJu3CxKHhiZ83NBJ+qshWIo=",
|
||||
"owner": "numtide",
|
||||
"repo": "nixos-facter-modules",
|
||||
"rev": "9f2a45b372830d28412160413d1d83f5ee11cc2f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "nixos-facter-modules",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1728729581,
|
||||
|
|
@ -505,6 +520,7 @@
|
|||
"disko": "disko",
|
||||
"home-manager": "home-manager_2",
|
||||
"nixos-cosmic": "nixos-cosmic",
|
||||
"nixos-facter-modules": "nixos-facter-modules",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"plasma-manager": "plasma-manager",
|
||||
|
|
|
|||
16
flake.nix
16
flake.nix
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
inputs = {
|
||||
nixpkgs.url = "nixpkgs/nixos-unstable";
|
||||
nixos-facter-modules.url = "github:numtide/nixos-facter-modules";
|
||||
nixos-hardware.url = "nixos-hardware/master";
|
||||
agenix = {
|
||||
url = "github:ryantm/agenix";
|
||||
|
|
@ -51,6 +52,7 @@
|
|||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
nixos-facter-modules,
|
||||
nixos-hardware,
|
||||
agenix,
|
||||
disko,
|
||||
|
|
@ -67,6 +69,7 @@
|
|||
system = "x86_64-linux";
|
||||
specialArgs = {inherit inputs;};
|
||||
modules = [
|
||||
disko.nixosModules.disko
|
||||
nixos-hardware.nixosModules.common-cpu-amd
|
||||
nixos-hardware.nixosModules.common-cpu-amd-pstate
|
||||
nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
|
||||
|
|
@ -87,7 +90,16 @@
|
|||
system = "x86_64-linux";
|
||||
specialArgs = {inherit inputs;};
|
||||
modules = [
|
||||
nixos-hardware.nixosModules.framework-16-7040-amd
|
||||
# nixos-hardware.nixosModules.framework-16-7040-amd
|
||||
disko.nixosModules.disko
|
||||
./systems/disk-config.nix
|
||||
nixos-facter-modules.nixosModules.facter
|
||||
{
|
||||
config.facter.reportPath =
|
||||
if builtins.pathExists ./systems/NOlaptop-facter.json
|
||||
then ./systems/NOlaptop-facter.json
|
||||
else throw "Have you forgotten to run nixos-anywhere with `--generate-hardware-config nixos-facter ./facter.json`?";
|
||||
}
|
||||
agenix.nixosModules.default
|
||||
home-manager.nixosModules.home-manager
|
||||
./systems/BASED.nix
|
||||
|
|
@ -125,7 +137,7 @@
|
|||
disko.nixosModules.disko
|
||||
{disko.devices.disk.disk1.device = "/dev/vda";}
|
||||
./systems/NOserver.nix
|
||||
./extras/disk-config.nix
|
||||
./extras/NOserver-disk-config.nix
|
||||
./extras/minecraft-server.nix
|
||||
];
|
||||
};
|
||||
|
|
|
|||
BIN
secrets/password-tao.age
Normal file
BIN
secrets/password-tao.age
Normal file
Binary file not shown.
|
|
@ -9,4 +9,5 @@ in {
|
|||
"syncthing-NOcomputer.age".publicKeys = systems;
|
||||
"syncthing-NOlaptop.age".publicKeys = systems;
|
||||
"syncthing-uwuraid.age".publicKeys = systems;
|
||||
"password-tao.age".publicKeys = systems;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -76,6 +76,8 @@
|
|||
];
|
||||
|
||||
services.openssh.enable = true;
|
||||
users.users.root.openssh.authorizedKeys.keys = [
|
||||
];
|
||||
programs.ssh.startAgent = true;
|
||||
|
||||
services.printing.enable = lib.mkDefault true;
|
||||
|
|
@ -155,7 +157,7 @@
|
|||
boot.loader.systemd-boot.enable = lib.mkDefault true;
|
||||
boot.loader.efi.canTouchEfiVariables = lib.mkDefault true;
|
||||
boot.loader.timeout = lib.mkForce 1;
|
||||
boot.supportedFilesystems = ["ntfs" "btrfs"];
|
||||
# boot.supportedFilesystems = ["ntfs" "btrfs"];
|
||||
hardware.enableAllFirmware = true;
|
||||
hardware.bluetooth.enable = lib.mkDefault true;
|
||||
|
||||
|
|
|
|||
5448
systems/NOlaptop-facter.json
Normal file
5448
systems/NOlaptop-facter.json
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -66,42 +66,21 @@
|
|||
'';
|
||||
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
boot.initrd.availableKernelModules = [
|
||||
"nvme"
|
||||
"sd_mod"
|
||||
"thunderbolt"
|
||||
"usb_storage"
|
||||
"xhci_pci"
|
||||
"usbhid"
|
||||
"uas"
|
||||
];
|
||||
# boot.initrd.availableKernelModules = [
|
||||
# "nvme"
|
||||
# "sd_mod"
|
||||
# "thunderbolt"
|
||||
# "usb_storage"
|
||||
# "xhci_pci"
|
||||
# "usbhid"
|
||||
# "uas"
|
||||
# ];
|
||||
boot.kernelParams = [
|
||||
"amdgpu.abmlevel=1"
|
||||
];
|
||||
boot.kernelModules = ["kvm-amd"];
|
||||
# boot.kernelModules = ["kvm-amd"];
|
||||
powerManagement.cpuFreqGovernor = "powersave";
|
||||
systemd.sleep.extraConfig = "HibernateDelaySec=360m";
|
||||
|
||||
fileSystems."/home/tao/games" = {
|
||||
device = "/dev/disk/by-uuid/d97a81dc-669c-41d1-912b-829f88fd6f69";
|
||||
fsType = "btrfs";
|
||||
options = ["subvol=/home/tao/games" "nosuid" "nodev" "noatime" "compress-force=zstd:3" "users" "rw" "exec" "discard=async"];
|
||||
};
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/d97a81dc-669c-41d1-912b-829f88fd6f69";
|
||||
fsType = "btrfs";
|
||||
options = ["subvol=home" "noatime" "compress-force=zstd:3" "discard=async"];
|
||||
};
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/d97a81dc-669c-41d1-912b-829f88fd6f69";
|
||||
fsType = "btrfs";
|
||||
options = ["noatime" "compress-force=zstd:3" "discard=async"];
|
||||
};
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/8E28-E53F";
|
||||
fsType = "vfat";
|
||||
};
|
||||
swapDevices = [{device = "/dev/disk/by-uuid/36216521-db46-4bb0-8994-38a36d5c4528";}];
|
||||
|
||||
networking.hostName = "NOlaptop";
|
||||
}
|
||||
|
|
|
|||
49
systems/disk-config.nix
Normal file
49
systems/disk-config.nix
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
{lib, ...}: {
|
||||
disko.devices = {
|
||||
disk.disk1 = {
|
||||
device = lib.mkDefault "/dev/disk/by-diskseq/1";
|
||||
type = "disk";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
esp = {
|
||||
name = "ESP";
|
||||
size = "500M";
|
||||
type = "EF00";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "vfat";
|
||||
mountpoint = "/boot";
|
||||
};
|
||||
};
|
||||
plainSwap = {
|
||||
size = "32G";
|
||||
content = {
|
||||
type = "swap";
|
||||
discardPolicy = "both";
|
||||
resumeDevice = true;
|
||||
};
|
||||
};
|
||||
root = {
|
||||
name = "root";
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "bcachefs";
|
||||
mountOptions = ["noatime"];
|
||||
extraArgs = [
|
||||
"--compression zstd"
|
||||
"--background_compression zstd"
|
||||
"--discard"
|
||||
];
|
||||
subvolumes = {
|
||||
"/home" = {};
|
||||
"/nix" = {};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -98,9 +98,9 @@
|
|||
devices = {
|
||||
# we do a lil anti-patterns https://github.com/ryantm/agenix?tab=readme-ov-file#builtinsreadfile-anti-pattern
|
||||
# bootstrap by commenting out devices first and rebuild switch impurely
|
||||
"nocomputer".id = builtins.readFile config.age.secrets.syncthing-NOcomputer.path;
|
||||
"nolaptop".id = builtins.readFile config.age.secrets.syncthing-NOlaptop.path;
|
||||
"uwuraid".id = builtins.readFile config.age.secrets.syncthing-uwuraid.path;
|
||||
# "nocomputer".id = builtins.readFile config.age.secrets.syncthing-NOcomputer.path;
|
||||
# "nolaptop".id = builtins.readFile config.age.secrets.syncthing-NOlaptop.path;
|
||||
# "uwuraid".id = builtins.readFile config.age.secrets.syncthing-uwuraid.path;
|
||||
};
|
||||
folders = let
|
||||
devs = [
|
||||
|
|
@ -173,6 +173,7 @@
|
|||
|
||||
users.users.tao = {
|
||||
isNormalUser = true;
|
||||
passwordFile = config.age.secrets.password-tao.path;
|
||||
extraGroups = ["audio" "video" "wheel" "libvirtd" "dialout" "game"];
|
||||
shell = pkgs.nushell;
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue