NixOS + home-manager configs, mirrored from GitLab SaaS. gitlab.com/andreijiroh-dev/nixops-config
nix-flake nixos home-manager nixpkgs nix-flakes
1
fork

Configure Feed

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

chore(global): update configs and lockfiles

Signed-off-by: Andrei Jiroh Halili <ajhalili2006@andreijiroh.dev>

+132 -77
+3 -3
flake.lock
··· 160 160 ] 161 161 }, 162 162 "locked": { 163 - "lastModified": 1746892839, 164 - "narHash": "sha256-0b9us0bIOgA1j/s/6zlxVyP3m97yAh0U+YwKayJ6mmU=", 163 + "lastModified": 1746925690, 164 + "narHash": "sha256-qbCIdIK3CEMfD+X9bMvp/ZLNxU722RV7zD7kUQS9OBg=", 165 165 "owner": "nix-community", 166 166 "repo": "home-manager", 167 - "rev": "12e67385964d9c9304daa81d0ad5ba3b01fdd35e", 167 + "rev": "de496c9ccb705ed76c1f23c2cad13e8970c37f0b", 168 168 "type": "github" 169 169 }, 170 170 "original": {
+52 -17
hosts/portable/amd64/configuration.nix
··· 4 4 5 5 { config, pkgs, ... }: 6 6 7 + let 8 + baseHmConfig = import ../../../shared/home-manager/main.nix { 9 + inherit config pkgs; 10 + }; 11 + in 7 12 { 8 13 imports = 9 14 [ # Include the results of the hardware scan. 10 - ./hardware-configuration.nix 15 + #../../../shared/desktop/bluetooth.nix 16 + ../../../shared/desktop/firewall.nix 17 + ../../../shared/desktop/kde-plasma.nix 18 + ../../../shared/flatpak.nix 19 + ../../../shared/gnupg.nix 20 + ../../../shared/locale.nix 21 + ../../../shared/meta-configs.nix 22 + ../../../shared/networking.nix 23 + #../../../shared/server/ssh.nix 24 + ../../../shared/server/tailscale.nix 25 + ../../../shared/systemd.nix 26 + ../../../shared/yubikey.nix 27 + ../../../shared/server/devenv.nix 28 + ../../../shared/1password.nix 29 + ../../../shared/desktop/firefox.nix 30 + ../../../shared/shells/bash.nix 31 + ../../../shared/server/cockpit.nix 11 32 ]; 12 33 13 34 # Bootloader. 14 35 boot.loader.systemd-boot.enable = true; 15 36 boot.loader.efi.canTouchEfiVariables = true; 16 37 17 - networking.hostName = "nixos"; # Define your hostname. 18 - # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. 19 - 20 - # Configure network proxy if necessary 21 - # networking.proxy.default = "http://user:password@proxy:port/"; 22 - # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; 38 + networking.hostName = "nixos-portable"; # Define your hostname. 23 39 24 40 # Enable networking 25 41 networking.networkmanager.enable = true; ··· 46 62 # You can disable this if you're only using the Wayland session. 47 63 services.xserver.enable = true; 48 64 49 - # Enable the KDE Plasma Desktop Environment. 50 - services.displayManager.sddm.enable = true; 51 - services.desktopManager.plasma6.enable = true; 52 - 53 65 # Configure keymap in X11 54 66 services.xserver.xkb = { 55 67 layout = "us"; ··· 78 90 # Enable touchpad support (enabled default in most desktopManager). 79 91 # services.xserver.libinput.enable = true; 80 92 93 + # prep for home-manager 94 + home-manager = { 95 + enable = true; 96 + useGlobalPkgs = true; 97 + users.ajhalili2006 = baseHmConfig // { 98 + home.username = "ajhalili2006"; 99 + home.homeDirectory = "/home/ajhalili2006"; 100 + }; 101 + }; 102 + 81 103 # Define a user account. Don't forget to set a password with ‘passwd’. 82 104 users.users.ajhalili2006 = { 83 105 isNormalUser = true; 84 106 description = "Andrei Jiroh Halili"; 85 107 extraGroups = [ "networkmanager" "wheel" ]; 86 - packages = with pkgs; [ 87 - kdePackages.kate 88 - # thunderbird 89 - ]; 90 108 }; 91 109 92 110 # Install firefox. ··· 98 116 # List packages installed in system profile. To search, run: 99 117 # $ nix search wget 100 118 environment.systemPackages = with pkgs; [ 101 - # vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. 102 - # wget 119 + wget 120 + dig 121 + btop 122 + htop 123 + icu 124 + thunderbird 125 + google-chrome 126 + microsoft-edge 127 + kdePackages.kate 128 + libreoffice-qt6-fresh 129 + hunspell 130 + hunspellDicts.en_US 131 + gnupg 132 + gpg-tui 133 + gpgme 134 + byobu 135 + tmux 136 + android-tools 137 + adbtuifm 103 138 ]; 104 139 105 140 # Some programs need SUID wrappers, can be configured further or are
+32 -6
hosts/stellapent-cier/configuration.nix
··· 2 2 # your system. Help is available in the configuration.nix(5) man page 3 3 # and in the NixOS manual (accessible by running ‘nixos-help’). 4 4 5 - { config, pkgs, lib, ... }: 5 + { self, config, pkgs, lib, ... }: 6 + 7 + let 8 + # localhost + local network in HaliliFam WiFi network 9 + baseHostsFile = with import ../../shared/hosts-file.nix; { 10 + "127.0.0.1" = localhost ++ [ 11 + "stellapent-cier.local" 12 + "stellapent-cier.tailnet" 13 + "stellapent-cier.fawn-cod.ts.net" 14 + ]; 15 + } // localNetwork.halilifam; 6 16 17 + # tailnet, blackholing to 0.0.0.0, etc. 18 + extraHosts = with import ../../shared/hosts-file.nix; 19 + tailnet; 20 + hostsFile = baseHostsFile // extraHosts; 21 + in 7 22 { 8 23 imports = 9 24 [ ··· 26 41 ../../shared/server/cockpit.nix 27 42 ]; 28 43 29 - # Bootloader. 30 - boot.loader.systemd-boot.enable = true; 31 - boot.loader.efi.canTouchEfiVariables = true; 32 - boot.binfmt.emulatedSystems = [ "aarch64-linux" ]; # for raspi builds I guess 44 + # Bootloader 45 + boot = { 46 + loader = { 47 + systemd-boot = { 48 + enable = true; 49 + }; 50 + efi = { 51 + canTouchEfiVariables = true; 52 + }; 53 + }; 54 + binfmt.emulatedSystems = [ 55 + "aarch64-linux" 56 + "armv7l-linux" 57 + ]; # for raspi builds I guess 58 + }; 33 59 34 60 networking = { 35 61 hostName = "stellapent-cier"; 36 - hosts = with (import ../../shared/hosts-file.nix {}); hosts.stellapent-cier; 62 + hosts = hostsFile; 37 63 networkmanager = { 38 64 enable = true; 39 65 };
+34 -51
shared/hosts-file.nix
··· 1 1 # An static list of host entries to be used in networking.hosts configuration. 2 - { self, ... }: 3 2 { 4 - directory = { 5 - localNetwork = { 6 - "127.0.0.1" = [ 7 - "localhost" 8 - "localdev.andreijiroh.dev" 9 - "localdev.andreijiroh.eu.org" 10 - ]; 3 + localhost = [ 4 + "localhost" 5 + "localdev.andreijiroh.dev" 6 + "localdev.andreijiroh.eu.org" 7 + ]; 8 + localNetwork = { 9 + halilifam = { 11 10 "192.168.254.160" = [ 12 11 #"stellapent-cier" 13 12 "stellapent-cier.local" 14 13 "stellapent.local" 15 14 ]; 16 15 "192.168.254.179" = [ 16 + "rpi-aether" 17 17 "rpi-aether.local" 18 18 "aether.local" 19 19 ]; 20 20 }; 21 - tailnet = { 22 - "100.87.227.94" = [ 23 - "stellapent-cier" 24 - "stellapent-cier.tailnet" 25 - "stellapent-cier.fawn-cod.ts.net" 26 - "stellapent-cier.fawn-cod.tailnet" 27 - "stellapent" 28 - "stellapent.tailnet" 29 - "stellapent.tailnet.andreijiroh.dev" 30 - "stellapent.tailnet.andreijiroh.eu.org" 31 - ]; 32 - "100.120.57.47" = [ 33 - "rpi-aether" 34 - "rpi-aether.tailnet" 35 - "rpi-aether.tailnet.andreijiroh.dev" 36 - "rpi-aether.tailnet.andreijiroh.eu.org" 37 - "aether" 38 - "aether.tailnet" 39 - "aether.tailnet.andreijiroh.dev" 40 - "aether.tailnet.andreijiroh.eu.org" 41 - ]; 42 - "100.102.205.81" = [ 43 - "go" 44 - "go.tailnet" 45 - "go.fawn-cod.ts.net" 46 - ]; 47 - "100.126.238.86" = [ 48 - "paste" 49 - "paste.tailnet" 50 - "paste.fawn-cod.ts.net" 51 - ]; 52 - }; 53 21 }; 54 - hosts = { 55 - stellapent-cier = { 56 - "127.0.0.1" = [ 57 - self.directory.localNetwork."127.0.0.1" 22 + 23 + # hosts file for my Tailscale network, even with 24 + # MagicDNS disabled as a workaround. 25 + tailnet = { 26 + "100.87.227.94" = [ 58 27 "stellapent-cier" 59 - ]; 60 - "192.168.254.160" = [ 61 - "stellapent-cier.local" 28 + "stellapent-cier.tailnet" 29 + "stellapent-cier.fawn-cod.ts.net" 30 + "stellapent-cier.fawn-cod.tailnet" 31 + "stellapent" 32 + "stellapent.tailnet" 33 + "stellapent.tailnet.andreijiroh.dev" 34 + "stellapent.tailnet.andreijiroh.eu.org" 62 35 ]; 63 36 "100.120.57.47" = [ 64 - self.directory.tailnet."100.120.57.47" 37 + "rpi-aether" 38 + "rpi-aether.tailnet" 39 + "rpi-aether.tailnet.andreijiroh.dev" 40 + "rpi-aether.tailnet.andreijiroh.eu.org" 41 + "aether" 42 + "aether.tailnet" 43 + "aether.tailnet.andreijiroh.dev" 44 + "aether.tailnet.andreijiroh.eu.org" 65 45 ]; 66 46 "100.102.205.81" = [ 67 - self.directory.tailnet."100.102.205.81" 47 + "go" 48 + "go.tailnet" 49 + "go.fawn-cod.ts.net" 68 50 ]; 69 51 "100.126.238.86" = [ 70 - self.directory.tailnet."100.126.238.86" 52 + "paste" 53 + "paste.tailnet" 54 + "paste.fawn-cod.ts.net" 71 55 ]; 72 - }; 73 56 }; 74 57 }
+11
shared/server/devenv.nix
··· 8 8 ]; 9 9 10 10 virtualisation = { 11 + podman = { 12 + enable = true; 13 + extraPackages = with pkgs; [ 14 + gvisor 15 + ]; 16 + }; 11 17 docker = { 12 18 enable = true; 13 19 enableOnBoot = true; ··· 29 35 programs.virt-manager.enable = true; 30 36 services.qemuGuest.enable = true; 31 37 services.spice-vdagentd.enable = true; 38 + 39 + boot.binfmt = { 40 + preferStaticEmulators = true; 41 + addEmulatedSystemsToNixSandbox = true; 42 + }; 32 43 }