Last active
April 7, 2024 12:26
-
-
Save Magicloud/15b422919bf294b207ba933d3cd04da7 to your computer and use it in GitHub Desktop.
configuration.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ config, pkgs, ... }: | |
{ | |
imports = | |
[ # Include the results of the hardware scan. | |
./hardware-configuration.nix | |
]; | |
nix.settings.max-jobs = 24; | |
nix.settings.cores = 24; | |
# boot.kernelModules = [ "kvm-amd" "kvm-intel" ]; | |
# boot.kernelPackages = pkgs.linuxPackages_latest; | |
boot = { | |
kernelPackages = pkgs.linuxPackagesFor (pkgs.linux_6_6.override { | |
argsOverride = rec { | |
src = pkgs.fetchurl { | |
url = "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-${version}.tar.xz"; | |
sha256 = "99d210be87908233a55b0fadc0dccd3b95926c0651b6b82e37350b2029de1f44"; | |
}; | |
version = "6.6.25"; | |
modDirVersion = "6.6.25"; | |
}; | |
}); | |
kernelParams = [ "nomodeset" ]; | |
loader = { | |
grub = { | |
enable = true; | |
device = "/dev/sdi"; # or "nodev" for efi only | |
}; | |
}; | |
extraModprobeConfig = '' | |
options zfs l2arc_noprefetch=0 l2arc_write_boost=33554432 l2arc_write_max=16777216 zfs_arc_max=2147483648 | |
''; | |
supportedFilesystems = [ "xfs" "zfs" ]; | |
zfs.extraPools = [ "raid" ]; | |
}; | |
# services.postgresql = { | |
# enable = false; | |
# package = pkgs.postgresql_16; | |
# dataDir = "/mnt/data/db/${config.services.postgresql.package.psqlSchema}"; | |
# authentication = pkgs.lib.mkOverride 10 '' | |
# local all all trust | |
# host all all 127.0.0.1/32 scram-sha-256 | |
# ''; | |
# }; | |
environment.systemPackages = with pkgs; [ | |
vim | |
]; | |
fonts.packages = [ pkgs.sarasa-gothic ]; | |
nixpkgs.config.allowUnfree = true; | |
networking = { | |
useDHCP = false; | |
hostId = "edeaf675"; | |
firewall.enable = false; | |
interfaces = { | |
enp3s0f0.useDHCP = true; | |
enp3s0f1.useDHCP = true; | |
enp4s0f0.useDHCP = true; | |
enp4s0f1.useDHCP = true; | |
}; | |
}; | |
programs.zsh.enable = true; | |
time.timeZone = "Asia/Chongqing"; | |
services = { | |
zfs = { | |
autoScrub.enable = true; | |
trim.enable = true; | |
}; | |
openssh = { | |
enable = true; | |
ports = [ 22 ]; | |
}; | |
xserver = { | |
enable = true; | |
displayManager.sddm.enable = false; | |
displayManager.lightdm.enable = false; | |
desktopManager.xterm.enable = false; | |
desktopManager.xfce.enable = true; | |
}; | |
xrdp = { | |
enable = true; | |
defaultWindowManager = "startxfce4"; | |
openFirewall = true; | |
}; | |
}; | |
users.users.magicloud = { | |
isNormalUser = true; | |
extraGroups = [ "wheel" "docker" "libvirtd" "kvm" "vboxusers" ]; | |
shell = pkgs.zsh; | |
}; | |
system = { | |
stateVersion = "23.11"; | |
autoUpgrade.enable = false; | |
}; | |
virtualisation = { | |
libvirtd = { | |
enable = false; | |
qemu = { | |
package = pkgs.qemu_kvm; | |
runAsRoot = true; | |
# swtpm.enable = true; | |
# ovmf = { | |
# enable = true; | |
# packages = [(pkgs.unstable.OVMF.override { | |
# secureBoot = true; | |
# tpmSupport = true; | |
# }).fd]; | |
# }; | |
}; | |
}; | |
virtualbox.host = { | |
enable = true; | |
enableExtensionPack = true; | |
}; | |
docker = { | |
enable = true; | |
package = pkgs.docker_25; | |
daemon.settings = { | |
group = "docker"; | |
hosts = [ | |
"tcp://127.0.0.1:2375" | |
"fd://" | |
]; | |
live-restore = true; | |
log-driver = "journald"; | |
storage-driver = "zfs"; | |
data-root = "/mnt/data/docker"; | |
}; | |
storageDriver = "zfs"; | |
# enableOnBoot = true; | |
}; | |
}; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment