This repository has been archived on 2024-03-26. You can view files and clone it, but cannot push or open issues or pull requests.
nixos/hosts/hermes/configuration.nix
2023-08-20 14:25:03 +05:30

91 lines
2.1 KiB
Nix

{ pkgs, modulesPath, ... }:
{
imports = [ ./hardware-configuration.nix ];
nixpkgs.config.allowUnfree = true;
system.stateVersion = "22.05";
networking = {
hostName = "hermes";
networkmanager.enable = true;
hosts = {
"192.168.0.7" = [ "bebop" ];
"192.168.0.164" = [ "titan" ];
"192.168.0.181" = [ "lapetus" ];
"192.168.0.239" = [ "rhea" ];
};
};
time.timeZone = "Asia/Kolkata";
documentation = {
enable = true;
man.enable = true;
};
boot = {
binfmt.emulatedSystems = [ "aarch64-linux" ];
loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true;
loader.efi.efiSysMountPoint = "/boot/efi";
supportedFilesystems = [ "ntfs" ];
# Setup keyfile
initrd.secrets = {
"/crypto_keyfile.bin" = null;
};
# Enable swap on luks
initrd.luks.devices."luks-8271922a-e889-4f04-8e87-07f0bcde890d".device = "/dev/disk/by-uuid/8271922a-e889-4f04-8e87-07f0bcde890d";
initrd.luks.devices."luks-8271922a-e889-4f04-8e87-07f0bcde890d".keyFile = "/crypto_keyfile.bin";
kernelPackages = pkgs.linuxPackages_latest;
};
# Enable touchpad support (enabled default in most desktopManager).
services.xserver.libinput.enable = true;
services.xserver.libinput.touchpad.naturalScrolling = true;
services.xserver.libinput.touchpad.middleEmulation = true;
services.xserver.libinput.touchpad.tapping = true;
# Enable CUPS to print documents.
services.printing.enable = true;
# Enable sound with pipewire.
sound.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
environment = {
etc = with pkgs; {
"jdk".source = jdk;
"graal".source = graalvm19-ce;
};
};
programs = {
direnv.enable = true;
nix-ld = {
enable = true;
libraries = with pkgs; [
zlib
fuse3
icu
nss
openssl
curl
expat
];
};
};
}