2023-09-07 14:54:51 +00:00
|
|
|
{ config, pkgs, lib, inputs, ... }:
|
2020-04-11 21:47:33 +00:00
|
|
|
|
|
|
|
{
|
2024-02-15 23:45:15 +00:00
|
|
|
imports = [
|
|
|
|
inputs.private.nixosModules.base
|
|
|
|
inputs.private.nixosModules.substituter
|
|
|
|
];
|
2023-11-26 07:30:29 +00:00
|
|
|
|
2023-09-08 20:15:02 +00:00
|
|
|
systemd.tmpfiles.rules = lib.mapAttrsToList
|
|
|
|
(key: value: "L+ /etc/channels/${key} - - - - ${value.outPath}") inputs;
|
2023-09-07 14:54:51 +00:00
|
|
|
|
2020-11-17 01:51:13 +00:00
|
|
|
nix = {
|
2024-01-29 05:11:49 +00:00
|
|
|
nixPath = [ "/etc/channels" ];
|
|
|
|
registry.nixpkgs.to = {
|
|
|
|
type = "path";
|
|
|
|
path = inputs.nixpkgs.outPath;
|
|
|
|
};
|
2024-02-09 22:12:06 +00:00
|
|
|
settings = {
|
|
|
|
auto-optimise-store = true;
|
|
|
|
experimental-features = [ "nix-command" "flakes" "ca-derivations" ];
|
|
|
|
trusted-users = [ "@wheel" ];
|
|
|
|
use-xdg-base-directories = true;
|
|
|
|
};
|
|
|
|
|
2020-11-17 01:51:13 +00:00
|
|
|
gc = {
|
|
|
|
automatic = true;
|
2023-11-26 07:30:29 +00:00
|
|
|
dates = "8:00";
|
2020-11-17 01:51:13 +00:00
|
|
|
options = "--delete-older-than 14d";
|
|
|
|
};
|
|
|
|
};
|
2020-04-11 21:47:33 +00:00
|
|
|
|
2023-12-02 01:21:16 +00:00
|
|
|
nixpkgs = {
|
2023-12-20 19:06:40 +00:00
|
|
|
overlays =
|
|
|
|
[ inputs.artemist.overlays.default inputs.fonts.overlays.default ];
|
2023-12-02 01:21:16 +00:00
|
|
|
config.allowUnfreePredicate = pkg:
|
2023-12-20 19:06:40 +00:00
|
|
|
(pkg ? passthru && pkg.passthru ? font && pkg.passthru.font)
|
|
|
|
|| (builtins.elem (lib.getName pkg) [
|
2023-12-02 01:21:16 +00:00
|
|
|
"1password"
|
|
|
|
"brscan5"
|
|
|
|
"brscan5-etc-files"
|
2024-01-31 00:26:31 +00:00
|
|
|
"celeste64"
|
2023-12-02 01:21:16 +00:00
|
|
|
"corefonts"
|
|
|
|
"google-chrome"
|
|
|
|
"jlink"
|
|
|
|
"makemkv"
|
|
|
|
"steam"
|
|
|
|
"steam-jupiter-original"
|
|
|
|
"steam-original"
|
|
|
|
"steam-run"
|
2024-01-31 00:26:31 +00:00
|
|
|
"steamdeck-hw-theme"
|
2023-12-02 01:21:16 +00:00
|
|
|
"unrar"
|
2023-12-20 19:06:40 +00:00
|
|
|
]);
|
2023-12-02 01:21:16 +00:00
|
|
|
};
|
|
|
|
|
2020-11-17 01:51:13 +00:00
|
|
|
console = {
|
|
|
|
keyMap = "us";
|
|
|
|
earlySetup = true;
|
|
|
|
};
|
2020-04-11 21:47:33 +00:00
|
|
|
|
2020-11-17 01:51:13 +00:00
|
|
|
time.timeZone = "Etc/UTC";
|
2021-01-10 06:27:22 +00:00
|
|
|
environment.shellAliases.cp = "cp --reflink=auto --sparse=always";
|
2020-11-17 01:51:13 +00:00
|
|
|
networking.firewall.enable = false;
|
2021-01-10 06:27:22 +00:00
|
|
|
programs.fish.enable = true;
|
2020-04-11 21:47:33 +00:00
|
|
|
|
|
|
|
users = {
|
|
|
|
users.artemis = {
|
|
|
|
isNormalUser = true;
|
|
|
|
description = "Artemis Tosini";
|
|
|
|
uid = 1000;
|
2021-08-16 17:38:38 +00:00
|
|
|
extraGroups = [ "wheel" "artemis" ];
|
2021-11-20 00:34:44 +00:00
|
|
|
shell = pkgs.fish;
|
2020-04-11 21:47:33 +00:00
|
|
|
# hashedPassword set in private
|
|
|
|
};
|
2020-12-02 19:35:35 +00:00
|
|
|
groups.artemis.gid = config.users.users.artemis.uid;
|
2020-04-11 21:47:33 +00:00
|
|
|
mutableUsers = false;
|
|
|
|
};
|
2022-01-27 16:19:56 +00:00
|
|
|
|
|
|
|
security.sudo.execWheelOnly = true;
|
|
|
|
|
2020-04-11 21:47:33 +00:00
|
|
|
systemd.extraConfig = "DefaultLimitCORE=infinity";
|
2023-08-26 23:00:18 +00:00
|
|
|
security.pam.loginLimits = [{
|
|
|
|
domain = "*";
|
|
|
|
item = "core";
|
|
|
|
type = "hard";
|
|
|
|
value = "infinity";
|
|
|
|
}];
|
2020-04-11 21:47:33 +00:00
|
|
|
}
|