dotfiles/nixos/systems/liveusb/default.nix

62 lines
1.5 KiB
Nix
Raw Normal View History

# SPDX-FileCopyrightText: 2022 Richard Brežák <richard@brezak.sk>
#
# SPDX-License-Identifier: LGPL-3.0-or-later
{ inputs, lib, config, ... }:
let
inherit (lib)
flip
mapAttrs
singleton;
config' = config;
in
{
flake.nixosConfigurations.liveusb = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
config' = config';
inputs' = inputs;
secret =
if builtins.pathExists "${inputs.secret}/default.nix" then
import inputs.secret { inherit lib; }
else
{};
};
modules = singleton
({ pkgs, config, ... }:
{
imports = [
"${inputs.nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix"
../../common/nixpkgs.nix
];
isoImage.edition = "xfce";
services.xserver.videoDrivers = [ "nvidia" ];
boot.supportedFilesystems = singleton "zfs";
boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_1;
boot.kernelParams = [
"nvidia.NVreg_EnableS0ixPowerManagement=1"
"nvidia.NVreg_S0ixPowerManagementVideoMemoryThreshold=2048"
];
hardware.nvidia = {
powerManagement.enable = true;
package = config.boot.kernelPackages.nvidia_x11_beta;
};
services.xserver = {
desktopManager = {
xterm.enable = false;
xfce.enable = true;
};
displayManager.defaultSession = "xfce";
};
});
};
}