# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). { config, pkgs, lib, inputs, ... }: { imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix #./../../modules/nixos/cspark-desktop-plasma/module.nix #./../../modules/nixos/cspark-desktop-gnome/module.nix #./../../modules/nixos/cspark-desktop-sway/module.nix #./../../modules/nixos/cspark-desktop-niri/module.nix #./../../modules/nixos/cspark-desktop-exwm/module.nix ./../../modules/nixos/cspark-desktop-ewm/module.nix inputs.home-manager.nixosModules.default ]; # Bootloader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; # For encrypted swap boot.initrd.luks.devices."luks-fd72f03a-6e52-47d9-a863-0c77c02f249e".device = "/dev/disk/by-uuid/fd72f03a-6e52-47d9-a863-0c77c02f249e"; networking.hostName = "cspark-nixos-elitebook"; # Define your hostname. # Enable networking networking.networkmanager.enable = true; # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # Setting up my desktop computer to be able to build files for my laptop # Make remote builder desktop a known host programs.ssh = { knownHosts = { cspark-desktop-nixremotebuilder = { extraHostNames = [ "cspark-nixos-desktop" "192.168.1.110" ]; publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ/A49FhfRM7cI4MykQAtKdcOXgEya2dV9nCHnO2rqHt"; }; }; extraConfig = '' Host cspark-desktop-nixremotebuilder Hostname 192.168.1.110 IdentitiesOnly yes IdentityFile /root/.ssh/cspark-desktop-nixremotebuilder # The weakly privileged user on the remote builder – if not set, 'root' is used – which will hopefully fail User nixremotebuilder ''; }; nix.buildMachines = [ { hostName = "cspark-desktop-nixremotebuilder"; sshUser = "nixremotebuilder"; system = "x86_64-linux"; protocol = "ssh-ng"; # if the builder supports building for multiple architectures, # replace the previous line by, e.g. # systems = ["x86_64-linux" "aarch64-linux"]; maxJobs = 1; speedFactor = 2; supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ]; mandatoryFeatures = [ ]; }] ; nix.distributedBuilds = true; # optional, useful when the builder has a faster internet connection than yours nix.extraOptions = '' builders-use-substitutes = true ''; # Custom desktop environments # cspark-desktop-plasma.enable = true; # cspark-desktop-gnome.enable = true; # cspark-desktop-sway.enable = true; # cspark-desktop-niri.enable = true; # cspark-desktop-exwm.enable = true; cspark-desktop-ewm.enable = true; # Home Manager Configuration home-manager = { extraSpecialArgs = { inherit inputs; }; users = { "cspark" = import ./home.nix; }; }; # Steam Game Platform #programs.steam = { # enable = true; # # remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play # # dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server # gamescopeSession.enable = true; #}; # AMD graphics driver setup services.xserver = { videoDrivers = [ "amdgpu" ]; }; # Waydroid Android Emulation virtualisation.waydroid.enable = true; # Docker for development virtualisation.docker.enable = true; # List packages installed in system profile. To search, run: # $ nix search wget environment.systemPackages = with pkgs; [ nvtopPackages.amd ]; }