98 lines
2 KiB
Nix
98 lines
2 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
|
||
|
];
|
||
|
|
||
|
# 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";
|
||
|
}
|