server-conf-1-HP/configuration.nix

99 lines
2.1 KiB
Nix

{ config, pkgs, ... }:
{
imports = [
./users/luna.nix
./users/jimbo.nix
./hardware-configuration.nix
./server/acme.nix
./server/azuracast.nix
./server/nginx.nix
./server/nfs.nix
./server/nextcloud.nix
];
# Bootloader.
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
networking.hostName = "HP";
# networking.wireless.enable = true;
# Enable networking
networking.networkmanager.enable = true;
# Set your time zone.
time.timeZone = "America/Chicago";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
# Enable X11, Cinnamon, and LightDM.
services.xserver = {
enable = true;
displayManager.lightdm.enable = true;
desktopManager.cinnamon.enable = true;
};
# Enable sound with pipewire.
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
#jack.enable = true;
};
# Enable automatic login for the user.
services.displayManager.autoLogin.enable = true;
services.displayManager.autoLogin.user = "luna";
# Install firefox.
programs.firefox.enable = true;
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# List packages installed in system profile.
environment.systemPackages = with pkgs; [
# programs
vim
neovim
icu
openssl
zlib
];
# Enable git for shit and stuff
programs.git.enable = true;
# Enable ZSH for user shells
programs.zsh.enable = true;
# Enable the OpenSSH daemon.
services.openssh = {
enable = true;
settings = {
PermitRootLogin = "no";
PrintLastLog = "no";
PasswordAuthentication = false;
};
};
# Open ports in the firewall using nftables
networking = {
nftables.enable = true;
firewall = {
allowedTCPPorts = [ 111 2049 20048 32438 ];
allowedUDPPorts = [];
};
};
# This value determines the NixOS release for stateful data
system.stateVersion = "24.05";
}