Initial release

This commit is contained in:
Lauren Lagarde 2025-03-03 23:07:58 -06:00
commit 8fbb25bbac
53 changed files with 1648 additions and 0 deletions

67
features/headless.nix Normal file
View file

@ -0,0 +1,67 @@
{ config, lib, pkgs, callPackage, ... }: {
##############################################################################
##############################################################################
##############################################################################
# Packages
environment.systemPackages = with pkgs; [
# Basic Utilities
bc pv killall unzip unrar-wrapper unar
# System Monitoring / TUI QoL Tools
btop iotop tmux byobu
# Backup Tools
restic rclone
# Networking Utilities
dig tinc_pre traceroute wireguard-tools iperf3
# Security / Cryptography
(pass.withExtensions (ext: with ext; [ pass-otp pass-update ]))
ssss gnupg pwgen qrencode diceware
# NixOS Helpers
nixos-generators nix-index nix-search-cli
# Applications
vim_configurable
# File Systems
nfs-utils cifs-utils exfatprogs
# Multimedia Utilities
ffmpeg imagemagick
# Services
podman-compose
units usbutils pciutils
];
##############################################################################
##############################################################################
##############################################################################
# Services
# TODO: Split this out further
services.uptimed.enable = true;
services.openssh = {
enable = true;
settings = {
PermitRootLogin = lib.mkForce "no";
PasswordAuthentication = false;
};
};
# TODO: Attempt to use podman
virtualisation.docker.enable = true;
virtualisation.containers.enable = true;
virtualisation.podman = {
enable = true;
dockerCompat = false;
defaultNetwork.settings.dns_enabled = true;
};
}