119 lines
2.8 KiB
Nix
119 lines
2.8 KiB
Nix
{ modulesPath, config, lib, pkgs, ... }: {
|
|
imports = [
|
|
(modulesPath + "/installer/scan/not-detected.nix")
|
|
./disk-config.nix
|
|
];
|
|
|
|
viv.usePatchedVlc = false;
|
|
|
|
# just kind of a grab bag of stuff
|
|
environment.systemPackages = with pkgs; [
|
|
alsa-lib
|
|
udev
|
|
gcc
|
|
tailscale
|
|
rustup
|
|
moonlight-qt
|
|
sunshine
|
|
(wrapOBS {
|
|
plugins = with pkgs.obs-studio-plugins; [
|
|
wlrobs
|
|
obs-backgroundremoval
|
|
obs-pipewire-audio-capture
|
|
obs-livesplit-one
|
|
obs-multi-rtmp
|
|
obs-vaapi
|
|
obs-gstreamer
|
|
input-overlay
|
|
obs-3d-effect
|
|
obs-composite-blur
|
|
obs-gradient-source
|
|
obs-vkcapture # Launch games with `obs-gamecapture %command%` to capture.
|
|
waveform
|
|
];
|
|
})
|
|
(retroarch.override {
|
|
cores = with libretro; [
|
|
bsnes
|
|
bsnes-mercury-balanced
|
|
gambatte
|
|
genesis-plus-gx
|
|
gpsp
|
|
mgba
|
|
mupen64plus
|
|
parallel-n64
|
|
sameboy
|
|
snes9x
|
|
tgbdual
|
|
vba-next
|
|
];
|
|
})
|
|
wl-clipboard # used by waydroid (among other things)
|
|
];
|
|
|
|
boot.supportedFilesystems = [ "ntfs" ]; # i would like to be able towrite to ntfs please
|
|
|
|
services.tailscale = {
|
|
enable = true;
|
|
useRoutingFeatures = "client";
|
|
extraUpFlags = [
|
|
];
|
|
};
|
|
|
|
virtualisation = {
|
|
waydroid.enable = true;
|
|
};
|
|
|
|
networking.firewall = {
|
|
enable = true;
|
|
interfaces = {
|
|
tailscale0 = {
|
|
allowedTCPPortRanges = []; # [{ from = 1000; to = 2000; }]
|
|
allowedUDPPortRanges = []; # [{ from = 1000; to = 2000; }]
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
boot.loader.grub = {
|
|
# no need to set devices, disko will add all devices that have a EF02 partition to the list already
|
|
# devices = [ ];
|
|
efiSupport = true;
|
|
efiInstallAsRemovable = false;
|
|
};
|
|
services.openssh.enable = true;
|
|
networking.networkmanager.enable = true;
|
|
system.stateVersion = "23.11";
|
|
|
|
# unfree as in unfreedom
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
services.xserver.desktopManager.plasma5.enable = lib.mkForce false;
|
|
services.xserver.desktopManager.plasma6.enable = true;
|
|
services.xserver.displayManager.defaultSession = "plasma";
|
|
|
|
|
|
|
|
nix.optimise.automatic = true;
|
|
nix.optimise.dates = [ "04:45" ];
|
|
|
|
nix.gc = {
|
|
automatic = true;
|
|
dates = "weekly";
|
|
options = "--delete-older-than 45d";
|
|
};
|
|
programs.steam = {
|
|
enable = true;
|
|
};
|
|
|
|
# hardware stuff under here
|
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "sd_mod" "rtsx_pci_sdmmc" ];
|
|
boot.initrd.kernelModules = [ ];
|
|
boot.kernelModules = [ "kvm-intel" ];
|
|
boot.extraModulePackages = [ ];
|
|
|
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
|
|
}
|