Configuration for my NixOS based systems and Home Manager
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

AUTOFORMAT

+29 -23
+2 -2
boot.nix
··· 4 4 boot.loader.systemd-boot.enable = true; 5 5 boot.loader.efi.canTouchEfiVariables = true; 6 6 7 - boot.supportedFilesystems = ["zfs"]; 7 + boot.supportedFilesystems = [ "zfs" ]; 8 8 boot.zfs.forceImportRoot = false; 9 - boot.zfs.extraPools = ["shokuhou" "mentalout"]; 9 + boot.zfs.extraPools = [ "shokuhou" "mentalout" ]; 10 10 }
+2 -1
configuration.nix
··· 6 6 7 7 { 8 8 imports = 9 - [ # Include the results of the hardware scan. 9 + [ 10 + # Include the results of the hardware scan. 10 11 ./hardware-configuration.nix 11 12 ./boot.nix 12 13 ./networking.nix
+1 -1
gui.nix
··· 40 40 noto-fonts-cjk 41 41 noto-fonts-emoji 42 42 noto-fonts-extra 43 - (nerdfonts.override { fonts = ["FiraCode"]; }) 43 + (nerdfonts.override { fonts = [ "FiraCode" ]; }) 44 44 ]; 45 45 46 46 # Polkit is a dependency of Sway. It's responsible for handling security policies
+5 -3
networking.nix
··· 15 15 16 16 networking.interfaces = { 17 17 enp4s0f1 = { 18 - ipv4.addresses = [{ 18 + ipv4.addresses = [{ 19 19 address = "192.168.1.3"; 20 20 prefixLength = 24; 21 21 }]; ··· 27 27 }; 28 28 29 29 networking.nameservers = [ 30 - "192.168.1.5" "45.90.28.93" "45.90.30.93" 30 + "192.168.1.5" 31 + "45.90.28.93" 32 + "45.90.30.93" 31 33 ]; 32 34 33 35 # This is necessary for ZFX ··· 47 49 networking.firewall = { 48 50 enable = true; 49 51 allowPing = true; 50 - allowedTCPPorts = [2049]; 52 + allowedTCPPorts = [ 2049 ]; 51 53 }; 52 54 53 55 services.avahi = {
+4 -3
noah-home.nix
··· 1 - 2 - { pkgs, lib, ... }: let 1 + { pkgs, lib, ... }: 2 + let 3 3 unstable = import <nixos-unstable> { 4 4 config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ 5 5 "jetbrains-toolbox" ··· 9 9 "plex" 10 10 ]; 11 11 }; 12 - in { 12 + in 13 + { 13 14 home.packages = with pkgs; [ 14 15 # main tool 15 16 firefox-devedition
+11 -9
packages.nix
··· 1 1 { pkgs, lib, ... }: 2 - let # bash script to let dbus know about important env variables and 2 + let # bash script to let dbus know about important env variables and 3 3 # propagate them to relevent services run at the end of sway config 4 4 # see 5 5 # https://github.com/emersion/xdg-desktop-portal-wlr/wiki/"It-doesn't-work"-Troubleshooting-Checklist ··· 27 27 name = "configure-gtk"; 28 28 destination = "/bin/configure-gtk"; 29 29 executable = true; 30 - text = let 31 - # TODO: figure out why these bindings exist or where they're used 32 - schema = pkgs.gsettings-desktop-schemas; 33 - datadir = "${schema}/share/gsettings-schemas/${schema.name}"; 34 - in '' 35 - 6 gnome_schema=org.gnome.desktop.interface 36 - gsettings set $gnome_schema gtk-theme 'Dracula' 37 - ''; 30 + text = 31 + let 32 + # TODO: figure out why these bindings exist or where they're used 33 + schema = pkgs.gsettings-desktop-schemas; 34 + datadir = "${schema}/share/gsettings-schemas/${schema.name}"; 35 + in 36 + '' 37 + 6 gnome_schema=org.gnome.desktop.interface 38 + gsettings set $gnome_schema gtk-theme 'Dracula' 39 + ''; 38 40 }; 39 41 in 40 42 {
+1 -1
services.nix
··· 123 123 }; 124 124 125 125 services.plex = { 126 - enable = false; 126 + enable = true; 127 127 openFirewall = false; # we proxy this with nginx 128 128 group = "nas"; 129 129 user = "noah";
+1 -1
shell.nix
··· 1 - { pkgs ? import <nixos-unstable> {} }: 1 + { pkgs ? import <nixos-unstable> { } }: 2 2 pkgs.mkShell { 3 3 packages = with pkgs; [ nil lua-language-server ]; 4 4 }
+2 -2
users.nix
··· 16 16 users.users.noah = { 17 17 isNormalUser = true; 18 18 shell = pkgs.fish; 19 - extraGroups = [ "wheel" "video" "nas"]; # Enable ‘sudo’ for the user. 19 + extraGroups = [ "wheel" "video" "nas" ]; # Enable ‘sudo’ for the user. 20 20 hashedPasswordFile = "/etc/nixos/noah-password"; 21 21 openssh.authorizedKeys.keys = [ 22 22 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDfjMaCPkTDKWEMLxL0iW3uhFHCpnoYDqrIZQUkdIWhj noah@packetlost.dev" ··· 32 32 # No more NIX_PATH, use system pkgs 33 33 home-manager.useGlobalPkgs = true; 34 34 35 - home-manager.users.noah = import ./noah-home.nix ; 35 + home-manager.users.noah = import ./noah-home.nix; 36 36 }