107 lines
2.1 KiB
Nix
107 lines
2.1 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
inputs,
|
|
...
|
|
}:
|
|
|
|
{
|
|
imports = [
|
|
inputs.lix-module.nixosModules.default
|
|
inputs.private.nixosModules.base
|
|
inputs.private.nixosModules.substituter
|
|
];
|
|
|
|
nix = {
|
|
settings = {
|
|
auto-optimise-store = true;
|
|
experimental-features = [
|
|
"nix-command"
|
|
"flakes"
|
|
"ca-derivations"
|
|
];
|
|
trusted-users = [ "@wheel" ];
|
|
use-xdg-base-directories = true;
|
|
};
|
|
|
|
gc = {
|
|
automatic = true;
|
|
dates = "8:00";
|
|
options = "--delete-older-than 14d";
|
|
};
|
|
};
|
|
|
|
nixpkgs = {
|
|
overlays = [
|
|
inputs.artemist.overlays.default
|
|
inputs.fonts.overlays.default
|
|
(final: prev: {
|
|
ryujinx = prev.ryujinx.overrideAttrs (old: {
|
|
runtimeDeps = old.runtimeDeps ++ [ final.udev ];
|
|
});
|
|
})
|
|
];
|
|
config.allowUnfreePredicate =
|
|
pkg:
|
|
(pkg ? passthru && pkg.passthru ? font && pkg.passthru.font)
|
|
|| (builtins.elem (lib.getName pkg) [
|
|
"1password"
|
|
"brscan5"
|
|
"brscan5-etc-files"
|
|
"celeste64"
|
|
"corefonts"
|
|
"google-chrome"
|
|
"jlink"
|
|
"makemkv"
|
|
"steam"
|
|
"steam-jupiter-original"
|
|
"steam-original"
|
|
"steam-run"
|
|
"steamdeck-hw-theme"
|
|
"unrar"
|
|
]);
|
|
};
|
|
|
|
console = {
|
|
keyMap = "us";
|
|
earlySetup = true;
|
|
};
|
|
|
|
time.timeZone = "Etc/UTC";
|
|
environment.shellAliases.cp = "cp --reflink=auto --sparse=always";
|
|
networking.firewall.enable = false;
|
|
programs.fish.enable = true;
|
|
|
|
users = {
|
|
users.artemis = {
|
|
isNormalUser = true;
|
|
description = "Artemis Tosini";
|
|
uid = 1000;
|
|
extraGroups = [
|
|
"wheel"
|
|
"artemis"
|
|
];
|
|
shell = pkgs.fish;
|
|
# hashedPassword set in private
|
|
};
|
|
groups.artemis.gid = config.users.users.artemis.uid;
|
|
mutableUsers = false;
|
|
};
|
|
|
|
security.sudo-rs = {
|
|
enable = true;
|
|
execWheelOnly = true;
|
|
};
|
|
|
|
systemd.extraConfig = "DefaultLimitCORE=infinity";
|
|
security.pam.loginLimits = [
|
|
{
|
|
domain = "*";
|
|
item = "core";
|
|
type = "hard";
|
|
value = "infinity";
|
|
}
|
|
];
|
|
}
|