nixos/hosts/wireframe/configuration.nix

101 lines
2.3 KiB
Nix
Executable file

{
config,
pkgs,
lib,
outputs,
inputs,
...
}: {
imports = [
./hardware-configuration.nix
../../system/nix.nix
../../system/sops.nix
../../system/impermanence.nix
../../system/battery.nix
../../system/security.nix
../../system/virtualisation.nix
# ../../system/kanata.nix
../../system/sshd.nix
../../system/pipewire.nix
../../system/lnr.nix
../../system/fonts.nix
../../system/console.nix
../../system/gui.nix
../../system/i18n.nix
../../system/nix-ld.nix
];
boot.kernelPackages = pkgs.unstable.linuxPackages_latest;
# just in case for thunderbolt
services.hardware.bolt.enable = true;
sops.secrets.v-password.neededForUsers = true;
sops.secrets.root-password.neededForUsers = true;
users.mutableUsers = false;
users.users.v = {
uid = 1000;
description = "SD. V";
hashedPasswordFile = config.sops.secrets.v-password.path;
home = "/home/v";
createHome = true;
shell = pkgs.zsh;
openssh.authorizedKeys.keys = [
(builtins.readFile ../../files/id_user.pub)
];
isNormalUser = true;
extraGroups = [
"wheel"
"networkmanager"
"audio"
"docker"
"input"
"libvirtd"
"plugdev"
"video"
"adbusers"
"uinput"
];
};
users.users.root = {
shell = pkgs.zsh;
extraGroups = [];
hashedPasswordFile = config.sops.secrets.root-password.path;
openssh.authorizedKeys.keys = [
(builtins.readFile ../../files/id_user.pub)
];
};
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "wireframe";
networking.networkmanager.enable = true;
boot.supportedFilesystems = ["ntfs"];
hardware.bluetooth.enable = true;
hardware.bluetooth.powerOnBoot = true;
# services (in general)
services.gvfs.enable = true;
services.libinput.enable = true;
services.printing.enable = true;
services.flatpak.enable = true;
programs.adb.enable = true;
hardware.graphics = {
enable = true;
enable32Bit = true;
};
programs.appimage.binfmt = true;
environment.systemPackages = builtins.attrValues {
inherit (pkgs.unstable) unzip zip libvterm-neovim steam;
};
# fingerprint support
services.fprintd.enable = true;
system.stateVersion = "24.11";
}