2022-07-28 09:29:58 +00:00
|
|
|
{ config, pkgs, lib, ... }:
|
2021-11-25 11:55:30 +00:00
|
|
|
|
|
|
|
{
|
2021-12-11 05:37:27 +00:00
|
|
|
imports = [
|
|
|
|
# Include the results of the hardware scan.
|
2021-11-25 13:45:48 +00:00
|
|
|
./hardware-configuration.nix
|
2023-12-12 13:20:55 +00:00
|
|
|
./modules
|
2023-07-05 03:40:40 +00:00
|
|
|
|
2022-07-09 05:54:05 +00:00
|
|
|
(lib.mapHomeManagerUser "foo-dogsquared" {
|
2022-08-10 04:14:11 +00:00
|
|
|
extraGroups = [
|
|
|
|
"adbusers"
|
|
|
|
"wheel"
|
|
|
|
"audio"
|
|
|
|
"docker"
|
|
|
|
"podman"
|
|
|
|
"networkmanager"
|
2023-02-11 01:01:31 +00:00
|
|
|
"wireshark"
|
2022-08-10 04:14:11 +00:00
|
|
|
];
|
2022-07-09 05:54:05 +00:00
|
|
|
hashedPassword =
|
|
|
|
"$6$.cMYto0K0CHbpIMT$dRqyKs4q1ppzmTpdzy5FWP/V832a6X..FwM8CJ30ivK0nfLjQ7DubctxOZbeOtygfjcUd1PZ0nQoQpOg/WMvg.";
|
|
|
|
isNormalUser = true;
|
|
|
|
createHome = true;
|
|
|
|
home = "/home/foo-dogsquared";
|
2023-01-26 05:10:56 +00:00
|
|
|
description = "Gabriel Arazas";
|
2022-07-09 05:54:05 +00:00
|
|
|
})
|
2021-11-25 13:45:48 +00:00
|
|
|
];
|
2021-11-25 11:55:30 +00:00
|
|
|
|
2023-12-12 13:20:55 +00:00
|
|
|
hosts.ni = {
|
2023-12-12 13:28:41 +00:00
|
|
|
hardware.qol.enable = true;
|
2023-12-13 02:04:18 +00:00
|
|
|
networking.enable = true;
|
2023-12-12 13:20:55 +00:00
|
|
|
networking.setup = "networkmanager";
|
|
|
|
networking.wireguard.enable = true;
|
2023-12-13 02:45:29 +00:00
|
|
|
setups.desktop.enable = true;
|
2023-12-13 02:50:33 +00:00
|
|
|
setups.development.enable = true;
|
2023-12-13 02:42:43 +00:00
|
|
|
setups.music.enable = true;
|
2023-12-13 02:46:46 +00:00
|
|
|
setups.gaming.enable = true;
|
2023-12-12 13:20:55 +00:00
|
|
|
};
|
|
|
|
|
2023-06-30 05:38:22 +00:00
|
|
|
disko.devices = import ./disko.nix {
|
|
|
|
disks = [ "/dev/nvme0n1" ];
|
|
|
|
};
|
|
|
|
|
2022-07-17 05:25:36 +00:00
|
|
|
services.openssh.hostKeys = [{
|
2023-07-05 05:11:47 +00:00
|
|
|
path = config.sops.secrets."ssh-key".path;
|
2022-07-17 05:25:36 +00:00
|
|
|
type = "ed25519";
|
|
|
|
}];
|
2022-12-31 03:13:27 +00:00
|
|
|
|
2023-10-28 04:23:24 +00:00
|
|
|
networking.timeServers = lib.mkBefore [
|
|
|
|
"ntp.nict.jp"
|
|
|
|
"time.nist.gov"
|
|
|
|
"time.facebook.com"
|
|
|
|
];
|
|
|
|
|
2023-07-05 03:38:58 +00:00
|
|
|
sops.secrets = lib.getSecrets ./secrets/secrets.yaml {
|
2023-07-05 05:11:47 +00:00
|
|
|
"ssh-key" = { };
|
2023-07-05 03:38:58 +00:00
|
|
|
};
|
2022-12-31 03:13:27 +00:00
|
|
|
|
2023-09-11 02:14:39 +00:00
|
|
|
# The keyfile required for the secrets to be decrypted.
|
2022-07-17 05:25:36 +00:00
|
|
|
sops.age.keyFile = "/var/lib/sops-nix/key.txt";
|
|
|
|
|
2021-11-25 11:55:30 +00:00
|
|
|
# My custom configuration with my custom modules starts here.
|
2022-01-09 05:38:59 +00:00
|
|
|
profiles = {
|
2021-11-25 11:55:30 +00:00
|
|
|
archiving.enable = true;
|
2023-09-30 06:02:40 +00:00
|
|
|
browsers.chromium.enable = true;
|
2023-12-13 02:51:57 +00:00
|
|
|
filesystem.setups.personal-webstorage.enable = true;
|
2022-01-09 05:38:59 +00:00
|
|
|
};
|
2022-06-12 05:47:55 +00:00
|
|
|
|
2023-09-17 05:58:59 +00:00
|
|
|
# Basically, the most basic nixpkgs configuration.
|
2023-09-24 11:20:05 +00:00
|
|
|
environment.variables.NIXPKGS_CONFIG = lib.mkForce ./config/nixpkgs/config.nix;
|
2023-07-05 03:39:44 +00:00
|
|
|
|
2021-11-25 11:55:30 +00:00
|
|
|
# Set your time zone.
|
|
|
|
time.timeZone = "Asia/Manila";
|
|
|
|
|
|
|
|
# Doxxing myself.
|
|
|
|
location = {
|
|
|
|
latitude = 15.0;
|
|
|
|
longitude = 121.0;
|
|
|
|
};
|
|
|
|
|
2023-12-10 03:26:06 +00:00
|
|
|
system.stateVersion = "24.05"; # Yes! I read the comment!
|
2021-11-25 11:55:30 +00:00
|
|
|
}
|