2024-04-11 13:16:26 +02:00
{
pkgs ,
lib ,
. . .
} : {
imports = [
./hardware-configuration.nix
../../common/default.nix
2024-04-17 20:39:12 +02:00
../../common/full-install.nix
../../common/allow-unfree.nix
2024-04-11 13:16:26 +02:00
../../common/locales/en.nix
2024-04-18 21:10:13 +02:00
../../common/locales/fr-keymap.nix
2024-04-11 13:16:26 +02:00
../../common/hardware/intelcpu.nix
2024-04-22 04:21:07 +02:00
../../common/hardware/nvidiagpu.nix
2024-04-17 22:28:27 +02:00
../../common/hardware/ssd.nix
2024-04-11 13:16:26 +02:00
../../common/de/plasma6.nix
2024-04-18 21:10:13 +02:00
# ../../common/de/hyprland.nix
2024-04-11 13:16:26 +02:00
2024-04-17 22:28:27 +02:00
../../common/tasia-packages.nix
2024-04-22 04:57:27 +02:00
../../common/packages/sshd.nix
../../common/packages/steam.nix
# ../../common/packages/syncthing.nix
2024-04-18 21:10:13 +02:00
# ../../modules/nixos/vedirect-reader.nix
2024-04-11 13:16:26 +02:00
] ;
boot = {
kernelPackages = pkgs . linuxPackages_latest ;
# boot.kernelModules = [ "fuse" "kvm-intel" "coretemp" ];
} ;
2024-04-22 04:21:07 +02:00
hardware . nvidia . prime = {
# Make sure to use the correct Bus ID values for your system!
intelBusId = " P C I : 1 : 0 : 0 " ;
nvidiaBusId = " P C I : 0 : 2 : 0 " ;
offload = {
enable = true ;
enableOffloadCmd = true ;
} ;
} ;
2024-04-11 13:16:26 +02:00
networking = {
2024-04-18 21:10:13 +02:00
hostName = " n e w - n e w - p h o e n i x " ;
2024-04-11 13:16:26 +02:00
2024-04-18 21:10:13 +02:00
firewall = {
enable = true ;
allowedTCPPorts = [
8080 # ?
12345 # tildefriends
13378 # audiobookshelf
] ;
allowedUDPPorts = [
8080 # ?
] ;
} ;
2024-04-11 13:16:26 +02:00
} ;
2024-04-18 21:10:13 +02:00
users . users . tasia = {
2024-04-11 13:16:26 +02:00
isNormalUser = true ;
description = " U s e r " ;
2024-04-17 20:39:12 +02:00
extraGroups = [ " n e t w o r k m a n a g e r " " w h e e l " " s y n c t h i n g " ] ;
2024-04-11 13:16:26 +02:00
initialPassword = " c o r r e c t h o r s e b a t t e r y s t a p l e " ;
openssh . authorizedKeys . keys = [
2024-04-22 04:21:07 +02:00
" S H A 2 5 6 : K i R j U a y 5 C 9 i 6 o b j s E O I y c y g B H n 5 4 p D B B 3 L j 7 f y J 0 E l w t a s i a @ n e w - n e w - p h o e n i x " # self
2024-04-11 13:16:26 +02:00
] ;
} ;
2024-04-11 17:08:50 +02:00
services . btrfs . autoScrub = {
enable = true ;
interval = " w e e k l y " ;
fileSystems = [ " / " ] ;
} ;
2024-04-11 13:16:26 +02:00
2024-04-18 21:10:13 +02:00
# services.vedirect-reader.enable = true;
virtualisation . docker . enable = true ;
# services.flatpak.enable = false;
2024-04-11 13:16:26 +02:00
2024-04-11 17:08:50 +02:00
services . syncthing = {
2024-04-18 21:10:13 +02:00
dataDir = lib . mkForce " / h o m e / u s e r " ;
configDir = lib . mkForce " / d a t a / s y n c / c o n f i g u r a t i o n / " ;
2024-04-11 17:08:50 +02:00
} ;
2024-04-11 13:16:26 +02:00
2024-04-18 21:10:13 +02:00
# Needed to build enry
boot . binfmt . emulatedSystems = [ " a a r c h 6 4 - l i n u x " ] ;
2024-04-11 13:16:26 +02:00
environment . systemPackages = with pkgs ; [
2024-04-17 22:28:27 +02:00
#
2024-04-11 13:16:26 +02:00
] ;
2024-04-22 04:21:07 +02:00
# security.auditd.enable = true;
# security.audit.enable = true;
# security.audit.rules = [
# "-a exit,always -F arch=b64 -S execve"
# ];
# You can monitor these logs with journalctl -f. If you don't see any audit logs show up, ssh in from another window and run some commands like ls. You should see a flurry of them show up.
2024-04-11 13:16:26 +02:00
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
2024-04-18 21:10:13 +02:00
system . stateVersion = " 2 3 . 1 1 " ;
2024-04-11 13:16:26 +02:00
}