58 lines
1.5 KiB
Nix
58 lines
1.5 KiB
Nix
#
|
|
# Jupiter — NAS server configuration
|
|
#
|
|
|
|
{ config, pkgs, inputs, user, ... }:
|
|
|
|
{
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
../../modules/server
|
|
] ++ (import ../../modules/services/nas);
|
|
|
|
# ── Server module options ───────────────────────────────────────────────
|
|
# No virtualisation on the NAS
|
|
|
|
# ── Host-specific settings ──────────────────────────────────────────────
|
|
|
|
# Example: host-specific overlay — only jupiter gets these packages in its pkgs.
|
|
# nixpkgs.overlays = [
|
|
# (final: prev: {
|
|
# corosync-qdevice = (import ../../packages { pkgs = prev; }).corosync-qdevice;
|
|
# firefox = inputs.nixpkgs-unstable.legacyPackages.${prev.system}.firefox;
|
|
# })
|
|
# ];
|
|
|
|
boot = {
|
|
kernelPackages = pkgs.linuxPackages_latest;
|
|
loader = {
|
|
systemd-boot.enable = true;
|
|
efi.canTouchEfiVariables = true;
|
|
efi.efiSysMountPoint = "/boot";
|
|
timeout = 1;
|
|
};
|
|
};
|
|
|
|
programs = {
|
|
ssh.startAgent = false;
|
|
gnupg.agent = {
|
|
enable = false;
|
|
enableSSHSupport = true;
|
|
pinentryPackage = pkgs.pinentry-curses;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
qemuGuest.enable = true;
|
|
avahi = {
|
|
enable = true;
|
|
nssmdns4 = true;
|
|
publish = {
|
|
enable = true;
|
|
addresses = true;
|
|
userServices = true;
|
|
};
|
|
};
|
|
};
|
|
}
|