2023-07-01 17:23:32 +09:00
|
|
|
|
{ lib, config, pkgs, ... }: {
|
2023-08-15 16:29:39 +09:00
|
|
|
|
imports = [
|
2023-07-04 15:37:53 +09:00
|
|
|
|
# Services
|
2023-07-12 20:52:15 +09:00
|
|
|
|
./services/openssh.nix
|
|
|
|
|
./services/promtail.nix
|
|
|
|
|
./services/fail2ban.nix
|
|
|
|
|
./services/telegraf.nix
|
|
|
|
|
|
|
|
|
|
# Modules
|
|
|
|
|
./modules/nixos.nix # General NixOS items. Flake enablement, etc
|
|
|
|
|
./modules/secureboot.nix # Secureboot Configs
|
|
|
|
|
./modules/fonts.nix # Font Configs
|
|
|
|
|
./modules/networking.nix # Initial Networking configs
|
2023-06-29 21:00:39 +09:00
|
|
|
|
];
|
2023-06-29 15:32:19 +09:00
|
|
|
|
|
2023-07-13 18:08:12 +09:00
|
|
|
|
# Allow unfree packages
|
2023-07-15 21:26:08 +09:00
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
2023-06-29 21:00:39 +09:00
|
|
|
|
|
|
|
|
|
# Select internationalisation properties.
|
|
|
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
|
|
|
|
|
|
|
|
i18n.extraLocaleSettings = {
|
|
|
|
|
LC_ADDRESS = "en_US.UTF-8";
|
|
|
|
|
LC_IDENTIFICATION = "en_US.UTF-8";
|
|
|
|
|
LC_MEASUREMENT = "en_US.UTF-8";
|
|
|
|
|
LC_MONETARY = "en_US.UTF-8";
|
|
|
|
|
LC_NAME = "en_US.UTF-8";
|
|
|
|
|
LC_NUMERIC = "en_US.UTF-8";
|
|
|
|
|
LC_PAPER = "en_US.UTF-8";
|
|
|
|
|
LC_TELEPHONE = "en_US.UTF-8";
|
|
|
|
|
LC_TIME = "en_US.UTF-8";
|
2023-06-29 15:32:19 +09:00
|
|
|
|
};
|
|
|
|
|
|
2023-07-12 20:52:15 +09:00
|
|
|
|
# Define a user account.
|
2023-06-29 21:00:39 +09:00
|
|
|
|
users.users.albert = {
|
|
|
|
|
isNormalUser = true;
|
|
|
|
|
description = "Albert J. Copeland";
|
2023-08-17 15:00:55 +09:00
|
|
|
|
extraGroups = [ "networkmanager" "wheel" "video" "dbus" ];
|
2023-08-17 12:03:04 +09:00
|
|
|
|
# video is required for the "light" command to work
|
2023-07-10 21:29:51 +09:00
|
|
|
|
hashedPassword = "$y$j9T$wKLsIWaA4Gf63RvjedwLJ0$EHKL6BBJV0CAxEKcHHjaBqW085KJ/MGvmbyWzmcWOy6";
|
2023-06-29 15:32:19 +09:00
|
|
|
|
};
|
|
|
|
|
|
2023-07-02 18:14:32 +09:00
|
|
|
|
# List packages installed in system profile
|
2023-06-29 21:00:39 +09:00
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
|
sbctl
|
2023-07-01 19:15:17 +09:00
|
|
|
|
powerline-go
|
2023-06-29 21:00:39 +09:00
|
|
|
|
wget
|
2023-07-16 16:49:12 +09:00
|
|
|
|
killall
|
2023-07-01 21:21:31 +09:00
|
|
|
|
neovim
|
2023-06-29 21:00:39 +09:00
|
|
|
|
git
|
2023-08-18 21:24:56 +09:00
|
|
|
|
duf
|
2023-06-29 21:00:39 +09:00
|
|
|
|
curl
|
|
|
|
|
htop
|
2023-07-15 21:44:41 +09:00
|
|
|
|
btop
|
2023-06-29 21:00:39 +09:00
|
|
|
|
iftop
|
|
|
|
|
nload
|
|
|
|
|
iotop
|
|
|
|
|
glxinfo
|
|
|
|
|
tailscale
|
2023-06-30 22:51:09 +09:00
|
|
|
|
neofetch
|
2023-07-03 17:17:57 +09:00
|
|
|
|
gnupg
|
2023-07-04 15:37:53 +09:00
|
|
|
|
fail2ban
|
2023-06-29 21:00:39 +09:00
|
|
|
|
];
|
|
|
|
|
|
2023-07-15 22:16:10 +09:00
|
|
|
|
# Enable tailscale
|
2023-07-02 18:27:23 +09:00
|
|
|
|
services = {
|
2023-07-02 18:14:32 +09:00
|
|
|
|
tailscale.enable = true;
|
|
|
|
|
};
|
2023-06-29 21:00:39 +09:00
|
|
|
|
|
|
|
|
|
# This value determines the NixOS release from which the default
|
|
|
|
|
# settings for stateful data, like file locations and database versions
|
|
|
|
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
|
|
|
|
# this value at the release version of the first install of this system.
|
|
|
|
|
# Before changing this value read the documentation for this option
|
|
|
|
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
2023-08-14 14:55:14 +09:00
|
|
|
|
# system.stateVersion = "23.05"; # Did you read the comment?
|
2023-08-14 19:56:50 +09:00
|
|
|
|
system.stateVersion = "unstable";
|
2023-07-02 22:46:14 +09:00
|
|
|
|
}
|