nixfleet/hosts/pc/configuration.nix
Andrea Ciceri 8b80ba24c2
Various changes
- `hs` host
  - cam subdomain behind reverse proxy
  - dynamic dns updater script
- `pc` host
  - ext4 instead of btrfs
  - ca-derivations experimental feature
- nix from unstable channel (2.8)
- cura from stable (unstable went broken)
- Emacs
  - company-nixos-options
  - helm-nixos-options
  - nix-modeline
  - disable format hook on save for nix mode
- nix from master (only in overlay, not used)
- bat (alias for cat)
- batman (alias for batman)
- disabled weird extra options for nix I couldn't even remember of
- Fira Code for sway/waybar
- New plain style for waybar
2022-05-14 00:15:03 +02:00

81 lines
1.7 KiB
Nix

{ config, lib, pkgs, profiles, ... }:
{
imports = with profiles; [ mount-nas sshd dbus avahi printing xdg docker adb syncthing qmk-udev ];
boot = {
initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
initrd.kernelModules = [ ];
kernelModules = [ "kvm-intel" "snd-aloop" "v4l2loopback" ];
extraModulePackages = with config.boot.kernelPackages; [
v4l2loopback
pkgs.v4l2loopback-dc
];
extraModprobeConfig = ''
options v42loopback exclusive_caps=1 max_buffers=2
'';
binfmt.emulatedSystems = [ "aarch64-linux" ];
loader.grub = pkgs.lib.mkForce {
enable = true;
version = 2;
device = "/dev/sda";
};
};
sound.enable = true;
hardware = {
opengl.enable = true;
pulseaudio = {
enable = true;
package = pkgs.pulseaudioFull;
};
};
fileSystems."/" =
{
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
};
fileSystems."/home" =
{
device = "/dev/disk/by-label/home";
fsType = "ext4";
};
swapDevices =
[{ device = "/dev/disk/by-label/swap"; }];
nix = {
gc = {
automatic = true;
options = "--delete-older-than 3d";
};
# package = pkgs.nixFromMaster;
package = pkgs.nix; # currently from unstable through an overlay
extraOptions = ''
experimental-features = ca-derivations
'';
};
networking.firewall = {
enable = true;
allowPing = true;
};
# TODO: disable, only for playing
services.hydra = {
enable = true;
hydraURL = "http://localhost:3000";
notificationSender = "hydra@localhost";
buildMachinesFiles = [ ];
useSubstitutes = true;
};
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
}