aboutsummaryrefslogtreecommitdiff
path: root/hosts
diff options
context:
space:
mode:
Diffstat (limited to 'hosts')
-rw-r--r--hosts/laurel/configuration.nix85
-rw-r--r--hosts/laurel/hardware-configuration.nix43
2 files changed, 128 insertions, 0 deletions
diff --git a/hosts/laurel/configuration.nix b/hosts/laurel/configuration.nix
new file mode 100644
index 0000000..d0edee3
--- /dev/null
+++ b/hosts/laurel/configuration.nix
@@ -0,0 +1,85 @@
1# Edit this configuration file to define what should be installed on
2# your system. Help is available in the configuration.nix(5) man page, on
3# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
4
5{ config, lib, pkgs, ... }:
6
7{
8 imports =
9 [
10 # Include the results of the hardware scan.
11 ./hardware-configuration.nix
12 ];
13
14 # Use the systemd-boot EFI boot loader.
15 boot.loader.systemd-boot.enable = true;
16 boot.loader.efi.canTouchEfiVariables = true;
17
18 # networking.hostName = "nixos"; # Define your hostname.
19 # Pick only one of the below networking options.
20 # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
21 # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
22 networking.hostName = "laurel";
23 networking.firewall.allowedTCPPorts = [ 80 443 ];
24
25 time.timeZone = "Europe/London";
26 i18n.defaultLocale = "en_US.UTF-8";
27
28
29 nixpkgs.config.packageOverrides = pkgs: {
30 vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
31 };
32
33 # Enable sound.
34 sound.enable = true;
35 hardware.pulseaudio.enable = true;
36 hardware.opengl = {
37 enable = true;
38 extraPackages = with pkgs; [
39 intel-media-driver
40 vaapiIntel
41 vaapiVdpau
42 libvdpau-va-gl
43 intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in)
44 ];
45 };
46
47 environment.systemPackages = with pkgs; [
48 vim
49 wget
50 curl
51 ];
52
53 users.users.op = {
54 isNormalUser = true;
55 extraGroups = [ "wheel" "tty" ];
56 home = "/home/op";
57 openssh.authorizedKeys.keys = [
58 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG4oThdAy5wQtzCarxDPuzWX6ImYw0c1QfkF0+wZNE6o np@myrtle"
59 ];
60 };
61 services.openssh.enable = true;
62 services.tailscale.enable = true;
63
64 nix.settings.experimental-features = [ "nix-command" "flakes" ];
65
66 # This option defines the first version of NixOS you have installed on this particular machine,
67 # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
68 #
69 # Most users should NEVER change this value after the initial install, for any reason,
70 # even if you've upgraded your system to a new NixOS release.
71 #
72 # This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
73 # so changing it will NOT upgrade your system.
74 #
75 # This value being lower than the current NixOS release does NOT mean your system is
76 # out of date, out of support, or vulnerable.
77 #
78 # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
79 # and migrated your data accordingly.
80 #
81 # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
82 system.stateVersion = "23.11"; # Did you read the comment?
83
84}
85
diff --git a/hosts/laurel/hardware-configuration.nix b/hosts/laurel/hardware-configuration.nix
new file mode 100644
index 0000000..142c4a7
--- /dev/null
+++ b/hosts/laurel/hardware-configuration.nix
@@ -0,0 +1,43 @@
1# Do not modify this file! It was generated by ‘nixos-generate-config’
2# and may be overwritten by future invocations. Please make changes
3# to /etc/nixos/configuration.nix instead.
4{ config, lib, pkgs, modulesPath, ... }:
5
6{
7 imports =
8 [
9 (modulesPath + "/installer/scan/not-detected.nix")
10 ];
11
12 boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
13 boot.initrd.kernelModules = [ ];
14 boot.kernelModules = [ "kvm-intel" ];
15 boot.extraModulePackages = [ ];
16
17 fileSystems."/" =
18 {
19 device = "/dev/disk/by-uuid/0a4289c5-753f-410a-aca0-0d70b448dffc";
20 fsType = "ext4";
21 };
22
23 fileSystems."/boot" =
24 {
25 device = "/dev/disk/by-uuid/FDC2-EFD1";
26 fsType = "vfat";
27 };
28
29 swapDevices =
30 [{ device = "/dev/disk/by-uuid/22b596ba-93ef-4a41-8e4c-292e5baa36e8"; }];
31
32 # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
33 # (the default) this is the recommended approach. When using systemd-networkd it's
34 # still possible to use this option, but it's recommended to use it in conjunction
35 # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
36 networking.useDHCP = lib.mkDefault true;
37 # networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
38 # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
39
40 nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
41 hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
42}
43