133 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| { config, pkgs, ... }:
 | |
| 
 | |
| {
 | |
|   imports = [
 | |
|     ./hardware-configuration.nix
 | |
|   ];
 | |
| 
 | |
|   sisyphus = {
 | |
|     desktop = {
 | |
|       sway.enable = true;
 | |
|       hyprland.enable = true;
 | |
|     };
 | |
| 
 | |
|     hardware = {
 | |
|       eid.enable = true;
 | |
|       nvidia = {
 | |
|         enable = true;
 | |
|         model = "Quadro T2000";
 | |
|       };
 | |
|       yubikey.enable = true;
 | |
|     };
 | |
| 
 | |
|     networking = {
 | |
|       networkmanager.enable = true;
 | |
|       openconnect-sso.enable = true;
 | |
|     };
 | |
| 
 | |
|     nix = {
 | |
|       flakes.enable = true;
 | |
|       gc.onFull.enable = true;
 | |
|     };
 | |
| 
 | |
|     programs = {
 | |
|       direnv.enable = true;
 | |
|       home-manager.enable = true;
 | |
|       sops.enable = true;
 | |
|       ssh.enable = true;
 | |
|     };
 | |
| 
 | |
|     services = {
 | |
|       pipewire.enable = true;
 | |
|       tailscale.enable = true;
 | |
|     };
 | |
| 
 | |
|     users.tdpeuter.enable = true;
 | |
| 
 | |
|     virtualisation = {
 | |
|       docker.enable = true;
 | |
|       virtualbox.enable = true;
 | |
|     };
 | |
|   };
 | |
| 
 | |
|   boot = {
 | |
|     # Encryption
 | |
|     initrd = {
 | |
|       # Setup keyfile
 | |
|       secrets."/crypto_keyfile.bin" = null;
 | |
| 
 | |
|       # Enable swap on luks
 | |
|       luks.devices."luks-3825c43c-6cc4-4846-b1cc-02b5938640c9" = {
 | |
|         device = "/dev/disk/by-uuid/3825c43c-6cc4-4846-b1cc-02b5938640c9";
 | |
|         keyFile = "/crypto_keyfile.bin";
 | |
|       };
 | |
|     };
 | |
| 
 | |
|     # Use the systemd-boot EFI boot loader.]
 | |
|     loader = {
 | |
|       systemd-boot.enable = true;
 | |
|       efi = {
 | |
|         canTouchEfiVariables = true;
 | |
|         efiSysMountPoint = "/boot/efi";
 | |
|       };
 | |
|     };
 | |
|   };
 | |
| 
 | |
|   environment.systemPackages = with pkgs; [
 | |
|     git
 | |
|     vim-full
 | |
|     w3m
 | |
|     wget
 | |
|     zenith-nvidia
 | |
|   ];
 | |
| 
 | |
|   programs = {
 | |
|     zsh.enable = true;
 | |
|   };
 | |
| 
 | |
|   hardware.bluetooth = {
 | |
|     enable = true;
 | |
|     powerOnBoot = false;
 | |
|   };
 | |
|   
 | |
|   networking = {
 | |
|     hostName = "Tibo-NixFat";
 | |
|     networkmanager.wifi.powersave = true;
 | |
|   };
 | |
| 
 | |
|   services = {
 | |
|     logind = {
 | |
|       # Handle the laptop lid switch as follows:
 | |
|       lidSwitch = "hybrid-sleep";
 | |
|       lidSwitchExternalPower = "lock";
 | |
|       lidSwitchDocked = "ignore";
 | |
| 
 | |
|       # Handle the power key
 | |
|       powerKey = "suspend";
 | |
|     };
 | |
| 
 | |
|     xserver.xkb = {
 | |
|       # Keyboard layout
 | |
|       layout = "us";
 | |
|       variant = "altgr-intl";
 | |
|     };
 | |
| 
 | |
|     # Touchpad
 | |
|     libinput.enable = true;
 | |
| 
 | |
|     thermald.enable = true;
 | |
|   };
 | |
| 
 | |
|   system.stateVersion = "24.05";
 | |
| 
 | |
|   systemd.coredump.enable = false;
 | |
| 
 | |
|   time.timeZone = "Europe/Brussels";
 | |
| 
 | |
|   # --- Barrier ---
 | |
| 
 | |
|   i18n.defaultLocale = "en_GB.UTF-8";
 | |
|   console = {
 | |
|     useXkbConfig = true; # use xkbOptions in tty.
 | |
|   };
 | |
| }
 |