2023-10-26 16:48:06 +02:00
|
|
|
# This is your system's configuration file.
|
|
|
|
# Use this to configure your system environment (it replaces /etc/nixos/configuration.nix)
|
|
|
|
{
|
|
|
|
inputs,
|
|
|
|
outputs,
|
|
|
|
lib,
|
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: {
|
|
|
|
# You can import other NixOS modules here
|
|
|
|
imports = [
|
2023-11-03 21:57:49 +01:00
|
|
|
# Import home-manager's NixOS module
|
|
|
|
inputs.home-manager.nixosModules.home-manager
|
2023-10-26 16:48:06 +02:00
|
|
|
# If you want to use modules your own flake exports (from modules/nixos):
|
|
|
|
# outputs.nixosModules.example
|
|
|
|
|
|
|
|
# Or modules from other flakes (such as nixos-hardware):
|
|
|
|
# inputs.hardware.nixosModules.common-cpu-amd
|
|
|
|
# inputs.hardware.nixosModules.common-ssd
|
|
|
|
|
|
|
|
# You can also split up your configuration and import pieces of it here:
|
|
|
|
# ./users.nix
|
|
|
|
|
2024-02-07 13:50:03 +01:00
|
|
|
../../desktop
|
2023-11-13 21:26:22 +01:00
|
|
|
|
2024-02-15 19:37:06 +01:00
|
|
|
../../../disko/GLaDOS
|
|
|
|
|
2023-10-26 16:48:06 +02:00
|
|
|
# Import your generated (nixos-generate-config) hardware configuration
|
|
|
|
./hardware-configuration.nix
|
|
|
|
];
|
|
|
|
|
2024-02-15 22:26:20 +01:00
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
podman
|
|
|
|
podman-compose
|
|
|
|
sbctl
|
|
|
|
];
|
|
|
|
|
2024-02-15 22:17:04 +01:00
|
|
|
boot.loader.systemd-boot.enable = lib.mkForce false;
|
|
|
|
|
|
|
|
boot.lanzaboote = {
|
|
|
|
enable = true;
|
|
|
|
pkiBundle = "/etc/secureboot";
|
|
|
|
};
|
|
|
|
|
2024-02-03 18:10:52 +01:00
|
|
|
boot.loader.systemd-boot.configurationLimit = 3;
|
|
|
|
boot.loader.efi.canTouchEfiVariables = true;
|
|
|
|
boot.supportedFilesystems = ["bcachefs"];
|
2024-02-16 10:45:49 +01:00
|
|
|
boot.extraModulePackages = with config.boot.kernelPackages; [v4l2loopback.out];
|
|
|
|
boot.kernelModules = [
|
|
|
|
# Virtual Camera
|
|
|
|
"v4l2loopback"
|
|
|
|
# Virtual Microphone, built-in
|
|
|
|
"snd-aloop"
|
|
|
|
];
|
|
|
|
# Set initial kernel module settings
|
|
|
|
boot.extraModprobeConfig = ''
|
|
|
|
# exclusive_caps: Skype, Zoom, Teams etc. will only show device when actually streaming
|
|
|
|
# card_label: Name of virtual camera, how it'll show up in Skype, Zoom, Teams
|
|
|
|
# https://github.com/umlaeute/v4l2loopback
|
|
|
|
options v4l2loopback exclusive_caps=1 card_label="Virtual Camera"
|
|
|
|
'';
|
2024-02-03 18:10:52 +01:00
|
|
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
|
|
|
|
2023-11-03 21:57:49 +01:00
|
|
|
home-manager = {
|
|
|
|
extraSpecialArgs = {inherit inputs outputs;};
|
|
|
|
users = {
|
|
|
|
# Import your home-manager configuration
|
2024-02-07 13:52:23 +01:00
|
|
|
lillian = import ../../../home-manager/hosts/GLaDOS;
|
2023-11-03 21:57:49 +01:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
networking.hostName = "GLaDOS";
|
2023-10-26 16:48:06 +02:00
|
|
|
|
|
|
|
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
|
|
|
system.stateVersion = "unstable";
|
|
|
|
}
|