diff --git a/README.md b/README.md new file mode 100755 index 0000000..81b5dae --- /dev/null +++ b/README.md @@ -0,0 +1,67 @@ +# My NixOS Dotfiles + +This is my current multi-system NixOS configuration. + +## File Structure + +### `lib/` + +This defines two helper functions that make it easier to create configurations in the `flake`: + +1. `mkHome`: Creates a Home Manager configuration (for managing user-specific settings and packages) +2. `mkLinuxSystem`: Creates a NixOS system configuration (for managing system-wide settings) + +Both functions take some modules (configuration files) as input and set up the necessary environment with some default settings, like allowing unfree packages and passing through important variables (inputs, config, etc.). + +### `modules/config/` + +This defines a configuration schema or template for managing various aspects of the system: + +1. `people`: Creates records for user accounts, their SSH keys, emails, etc. +2. `services`: Creates records for various services with their domains, hostnames, SSL certificates, etc. +3. `machines`: Creates records for different devices with their mount points, IP addresses, and storage configurations +4. `aesthetics`: Creates records for visual appearance settings like fonts, colours, and cursor properties + +It's essentially creating a structured way to organize abstracted configuration data that is declared in multiple places throughout the system configuration. + +### `modules/home/` + +This defines home environment configurations for different users across different machines in a multi-user, multi-device setup. It's using NixOS's home-manager functionality to manage user-specific configurations. Essentially, this is a configuration file that determines which software and configurations each user gets on each machine, allowing for personalized but reproducible user environments across the system. + +### `modules/nixos/` + +This defines a set of NixOS modules that are used to configure different systems. Each system has its own set of module imports that define what features or services are enabled on that system, as well as some shared modules. The file uses a helper function `directoryImport` (imported from ../helpers.nix) to import all the module definitions from the current directory. This allows for modular system configuration where different machines can easily inherit different sets of features and services. These modules are used in the `flake`. + +### `parts/` + +This defines the development environment configuration for the project, which includes: + +1. `devshells`: Creates a default development shell with several development tools. +2. `pre-commit`: Creates pre-commit hooks that run before git commits. + +This setup ensures that anyone working on this project has access to the same development tools and follows the same code formatting and commit message standards. + +### `profiles/` + +This defines NIxOS user configurations and their respective homes. Each profile is designed to be imported into each system configuration via the `flake`, with different settings and tools based on the user's needs and preferences. It also uses `systemd.tmpfiles` to declare custom home folder structures. + +### `secrets/` + +This contains encrypted secrets and credentials using `sops-nix`. This is a security-sensitive file that should be handled carefully as it contains encrypted credentials for multiple services and systems. + +### `systems/` + +This defines the system configurations for different machines. Each machine has similar configuration structure but with specific customizations. The system naming schema follows a celestial convention, with desktops being named after planets, laptops after moons, and servers after dwarf planets. The `fileSystems` configurations include helper functions for easily configuring mounts for internal storage, Synology, and samba drives. + +### `templates/` + +This defines flake-based development environment templates for projects written in different programming languages, such as Elm and Haskell. This setup also makes use of `devshells` and is designed for developers who want to quickly bootstrap projects with a complete development environment using Nix for reproducibility and dependency management. + +### `flake.nix` + +This defines the core of the NixOS configuration using helper functions from `lib/`, which is organized as a flake-parts-based structure for better modularity: + +1. `inputs`: Declares all external dependencies including, such as core Nix components (`nixpkgs`, `flake-parts`, `systems`) and user environment components (`home-manager`, `sops-nix`). +2. `outputs`: Uses flake-parts to organize system configurations for multiple machines (`mars`, `venus`, `deimos`, `charon`, and `ceres`) and shared modules (`core`, `mantle`, `crust`) imported across systems. + +Each system imports specialized modules and user profiles based on its intended purpose and users, creating a flexible but consistent configuration framework across multiple machines. diff --git a/flake.nix b/flake.nix index 1031401..05e9ba1 100755 --- a/flake.nix +++ b/flake.nix @@ -74,11 +74,11 @@ { config, ... }: { nixosConfigurations = { - jupiter = inputs.self.lib.mkLinuxSystem [ - ./systems/jupiter + mars = inputs.self.lib.mkLinuxSystem [ + ./systems/mars ./profiles/user0 ./profiles/user1 - config.nixosModules.jupiter + config.nixosModules.mars config.nixosModules.core config.nixosModules.mantle config.nixosModules.crust @@ -89,10 +89,10 @@ inputs.sops-nix.nixosModules.sops inputs.nixvim.nixosModules.nixvim ]; - saturn = inputs.self.lib.mkLinuxSystem [ - ./systems/saturn + venus = inputs.self.lib.mkLinuxSystem [ + ./systems/venus ./profiles/user2 - config.nixosModules.saturn + config.nixosModules.venus config.nixosModules.core config.nixosModules.mantle config.nixosModules.crust @@ -100,11 +100,11 @@ inputs.lix-module.nixosModules.default inputs.sops-nix.nixosModules.sops ]; - ganymede = inputs.self.lib.mkLinuxSystem [ - ./systems/ganymede + deimos = inputs.self.lib.mkLinuxSystem [ + ./systems/deimos ./profiles/user0 ./profiles/user1 - config.nixosModules.ganymede + config.nixosModules.deimos config.nixosModules.core config.nixosModules.mantle config.nixosModules.crust @@ -113,10 +113,10 @@ inputs.nur.modules.nixos.default inputs.sops-nix.nixosModules.sops ]; - callisto = inputs.self.lib.mkLinuxSystem [ - ./systems/callisto + charon = inputs.self.lib.mkLinuxSystem [ + ./systems/charon ./profiles/user1 - config.nixosModules.callisto + config.nixosModules.charon config.nixosModules.core config.nixosModules.crust inputs.home-manager.nixosModules.home-manager diff --git a/modules/config/devices/config/callisto.nix b/modules/config/devices/config/charon.nix similarity index 84% rename from modules/config/devices/config/callisto.nix rename to modules/config/devices/config/charon.nix index 347e7fe..b9e1fd7 100755 --- a/modules/config/devices/config/callisto.nix +++ b/modules/config/devices/config/charon.nix @@ -5,8 +5,8 @@ let ; in { - label = "Callisto"; - name = "callisto"; + label = "Charon"; + name = "charon"; sync = { address0 = ""; }; diff --git a/modules/config/devices/config/ganymede.nix b/modules/config/devices/config/deimos.nix similarity index 84% rename from modules/config/devices/config/ganymede.nix rename to modules/config/devices/config/deimos.nix index 575a739..7d4810d 100755 --- a/modules/config/devices/config/ganymede.nix +++ b/modules/config/devices/config/deimos.nix @@ -5,8 +5,8 @@ let ; in { - label = "Ganymede"; - name = "ganymede"; + label = "Deimos"; + name = "deimos"; sync = { address0 = ""; }; diff --git a/modules/config/devices/config/jupiter.nix b/modules/config/devices/config/mars.nix similarity index 92% rename from modules/config/devices/config/jupiter.nix rename to modules/config/devices/config/mars.nix index 94868b3..4d13dda 100755 --- a/modules/config/devices/config/jupiter.nix +++ b/modules/config/devices/config/mars.nix @@ -6,8 +6,8 @@ let ; in { - label = "Jupiter"; - name = "jupiter"; + label = "Mars"; + name = "mars"; sync = { address0 = ""; }; diff --git a/modules/config/devices/config/synology.nix b/modules/config/devices/config/synology.nix index 42037fb..04530a7 100755 --- a/modules/config/devices/config/synology.nix +++ b/modules/config/devices/config/synology.nix @@ -11,7 +11,7 @@ let user0Name = "Nick"; user1Name = "Garnet"; synologyName = "synology"; - synologyIP = "192.168.50.209"; + synologyIP = "192.168.50.210"; in { label = "Synology"; diff --git a/modules/config/devices/config/tablet.nix b/modules/config/devices/config/tablet.nix deleted file mode 100755 index 0d6c7a3..0000000 --- a/modules/config/devices/config/tablet.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ devicesFunctions }: -let - inherit (devicesFunctions) - dummy - ; -in -{ - name = "tablet"; - label = dummy; - sync = { - address0 = "I2ZSCZU-T4JMUJJ-XCUQ3MY-G5EUFZ5-KRG2DRY-XIBJZZM-FQW3UMY-CBCTUQU"; - }; - ip = { - address0 = "192.168.50.189"; - }; -} diff --git a/modules/config/devices/config/saturn.nix b/modules/config/devices/config/venus.nix similarity index 93% rename from modules/config/devices/config/saturn.nix rename to modules/config/devices/config/venus.nix index 7fd0b87..445f3a5 100755 --- a/modules/config/devices/config/saturn.nix +++ b/modules/config/devices/config/venus.nix @@ -8,8 +8,8 @@ let in { - label = "Saturn"; - name = "saturn"; + label = "Venus"; + name = "venus"; ip = { address0 = "192.168.58.104"; }; diff --git a/modules/home/cli/utilities/usbUtils/default.nix b/modules/home/cli/utilities/usbUtils/default.nix new file mode 100755 index 0000000..ac85568 --- /dev/null +++ b/modules/home/cli/utilities/usbUtils/default.nix @@ -0,0 +1,11 @@ +{ + pkgs, + ... +}: +{ + home.packages = builtins.attrValues { + inherit (pkgs) + usbutils + ; + }; +} diff --git a/modules/home/default.nix b/modules/home/default.nix index b8e33e2..1da00fa 100755 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -7,16 +7,16 @@ in flake.homeModules = let inherit (config.machines.devices) - callisto - jupiter - saturn - ganymede + charon + mars + venus + deimos ceres ; inherit (config.people) user0 user1 user2; in { - "${jupiter.name}-${user0}" = { + "${mars.name}-${user0}" = { imports = builtins.attrValues { inherit (modules) cli @@ -52,10 +52,11 @@ in hypr wayland theming + polychromatic ; }; }; - "${jupiter.name}-${user1}" = { + "${mars.name}-${user1}" = { imports = builtins.attrValues { inherit (modules) cli @@ -76,7 +77,7 @@ in ; }; }; - "${saturn.name}-${user2}" = { + "${venus.name}-${user2}" = { imports = builtins.attrValues { inherit (modules) cli @@ -106,7 +107,7 @@ in ; }; }; - "${ganymede.name}-${user0}" = { + "${deimos.name}-${user0}" = { imports = builtins.attrValues { inherit (modules) cli @@ -123,7 +124,7 @@ in ; }; }; - "${ganymede.name}-${user1}" = { + "${deimos.name}-${user1}" = { imports = builtins.attrValues { inherit (modules) cli @@ -144,7 +145,7 @@ in ; }; }; - "${callisto.name}-${user1}" = { + "${charon.name}-${user1}" = { imports = builtins.attrValues { inherit (modules) cli diff --git a/modules/home/gui/apps/browsers/floorp/config/settings/config/cosmetics.nix b/modules/home/gui/apps/browsers/floorp/config/settings/config/cosmetics.nix index c8c209f..ffa4740 100755 --- a/modules/home/gui/apps/browsers/floorp/config/settings/config/cosmetics.nix +++ b/modules/home/gui/apps/browsers/floorp/config/settings/config/cosmetics.nix @@ -32,7 +32,7 @@ "floorp.browser.tabs.openNewTabPosition" = 1; "services.sync.prefs.sync.floorp.browser.note.memos" = false; "floorp.disable.fullscreen.notification" = true; - "floorp.browser.user.interface" = 8; + "floorp.browser.user.interface" = 1; "browser.newtabpage.activity-stream.floorp.background.type" = 0; "browser.startup.homepage" = "chrome://browser/content/blanktab.html"; "browser.newtabpage.enabled" = false; diff --git a/modules/home/gui/apps/browsers/floorp/config/themes/config/userChrome.css b/modules/home/gui/apps/browsers/floorp/config/themes/config/userChrome.css index 8313c11..732818b 100755 --- a/modules/home/gui/apps/browsers/floorp/config/themes/config/userChrome.css +++ b/modules/home/gui/apps/browsers/floorp/config/themes/config/userChrome.css @@ -93,3 +93,78 @@ visibility: visible !important; opacity: 1 !important; } + +/* One-Line Tweak */ +:root { + --navbarWidth: clamp(300px, 30vw, 30vw); + --animationSpeed: 0.15s; +} + + +/* Oneline tweak */ +#TabsToolbar { + margin-left: var(--navbarWidth) !important; +} + +#nav-bar { + margin-right: calc(100vw - var(--navbarWidth)) !important; +} + +#urlbar-container { + min-width: 0px !important; +} + +:root[uidensity="compact"] #nav-bar { + margin-top: -37px !important; + height: 37px !important; +} + +:root:not([uidensity="compact"]):not([uidensity="touch"]) #nav-bar { + margin-top: -44px !important; + height: 44px !important; +} + +:root[uidensity="touch"] #nav-bar { + margin-top: -49px !important; + height: 49px !important; +} + + +/* Dragging space */ +:root[sizemode="maximized"] #TabsToolbar { + margin-top: 1px; +} + +#TabsToolbar { + margin-top: 5px; +} + + +/* Simplifying interface */ +#nav-bar { + background: none !important; + box-shadow: none !important; +} + +#navigator-toolbox { + border: none !important; +} + +.titlebar-spacer { + display: none !important; +} + +#urlbar-background { + border: none !important; +} + +#urlbar:not(:hover):not([breakout][breakout-extend])>#urlbar-background { + box-shadow: none !important; + background: none !important; +} + +/* Add tab width constraints */ +.tabbrowser-tab { + min-width: 80px !important; + max-width: 150px !important; +} diff --git a/modules/home/gui/apps/tools/polychromatic/default.nix b/modules/home/gui/apps/tools/polychromatic/default.nix new file mode 100755 index 0000000..cf99617 --- /dev/null +++ b/modules/home/gui/apps/tools/polychromatic/default.nix @@ -0,0 +1,11 @@ +{ + pkgs, + ... +}: +{ + home.packages = builtins.attrValues { + inherit (pkgs) + polychromatic + ; + }; +} diff --git a/modules/home/gui/desktop/hypr/land/config/bind.nix b/modules/home/gui/desktop/hypr/land/config/bind.nix index cd186c0..a384434 100755 --- a/modules/home/gui/desktop/hypr/land/config/bind.nix +++ b/modules/home/gui/desktop/hypr/land/config/bind.nix @@ -43,7 +43,7 @@ let "PageUp, exec, playerctl next" "PageDown, exec, playerctl previous" "Home, exec, playerctl play-pause" - "Space, workspace, previous" + "Space, exec, rm -r /home/$USER/.cache/tofi* ; tofi-drun" ]; superShiftBinds = builtins.map (x: "SUPER SHIFT, " + x) [ @@ -57,15 +57,14 @@ let "T, exec, ghostty" "S, exec, flameshot gui" "period, exec, emote" - "Space, exec, rm -r /home/$USER/.cache/tofi* ; tofi-drun" "Tab, fullscreen, 0" "Backspace, layoutmsg, togglesplit" "P, pin, enable" "F, togglefloating" # "Print, exec, grim -g \"$(slurp)\"" # Utility - "End, exec, hyprctl dispatch exit" - "Insert, exec, reboot now" + "End, exec, shutdown now" + "Insert, exec, systemctl reboot" "Home, exec, swaylock" ]; superCtrlBinds = builtins.map (x: "SUPER CTRL, " + x) [ diff --git a/modules/home/gui/desktop/wayland/waybar/config/settings.nix b/modules/home/gui/desktop/wayland/waybar/config/settings.nix index ed09a39..3cfdf12 100755 --- a/modules/home/gui/desktop/wayland/waybar/config/settings.nix +++ b/modules/home/gui/desktop/wayland/waybar/config/settings.nix @@ -105,8 +105,8 @@ in tooltip = false; format-muted = " Muted"; on-click = "easyeffects"; - on-scroll-up = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"; - on-scroll-down = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"; + on-scroll-up = "pactl set-sink-volume alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y818KFJ0C671CE-00.HiFi__Line1__sink +5% ; pamixer -i 5"; + on-scroll-down = "pactl set-sink-volume alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y818KFJ0C671CE-00.HiFi__Line1__sink -5% ; pamixer -d 5"; scroll-step = 5; format-icons = { headphone = ""; diff --git a/modules/home/gui/desktop/wayland/wpaperd/default.nix b/modules/home/gui/desktop/wayland/wpaperd/default.nix index 8a4bf44..6fe6221 100755 --- a/modules/home/gui/desktop/wayland/wpaperd/default.nix +++ b/modules/home/gui/desktop/wayland/wpaperd/default.nix @@ -3,7 +3,7 @@ enable = true; settings = { "default" = { - path = "~/Files/Projects/dotfiles/home/modules/gui/desktop/wayland/wpaperd/wallpaper"; + path = "~/Files/Projects/dotfiles/modules/home/gui/desktop/wayland/wpaperd/wallpaper"; apply-shadow = true; duration = "1m"; sorting = "random"; diff --git a/modules/nixos/core/doas/default.nix b/modules/nixos/core/doas/default.nix index 3f52e26..7524240 100755 --- a/modules/nixos/core/doas/default.nix +++ b/modules/nixos/core/doas/default.nix @@ -9,10 +9,10 @@ let devices ; hostname = config.networking.hostName; - jupiter = devices.jupiter.name; + mars = devices.mars.name; ceres = devices.ceres.name; - saturn = devices.saturn.names; - callisto = devices.callisto.name; + venus = devices.venus.names; + charon = devices.charon.name; in { security = { @@ -24,13 +24,13 @@ in noPass = true; users = [ ( - if hostname == jupiter then + if hostname == mars then user0 else if hostname == ceres then user0 - else if hostname == callisto then + else if hostname == charon then user1 - else if hostname == saturn then + else if hostname == venus then user2 else "" diff --git a/modules/nixos/core/ssh/default.nix b/modules/nixos/core/ssh/default.nix index d53bd15..f505f1e 100755 --- a/modules/nixos/core/ssh/default.nix +++ b/modules/nixos/core/ssh/default.nix @@ -16,24 +16,24 @@ let devices ; hostname = config.networking.hostName; - jupiter = devices.jupiter.name; + mars = devices.mars.name; ceres = devices.ceres.name; - saturn = devices.saturn.name; - callisto = devices.callisto.name; + venus = devices.venus.name; + charon = devices.charon.name; userLogic = - if hostname == jupiter then + if hostname == mars then user0 else if hostname == ceres then user0 - else if hostname == saturn then + else if hostname == venus then user2 else ""; in { users.users = - if hostname == callisto then + if hostname == charon then { } else { diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index b1b397f..1f933cc 100755 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -4,7 +4,7 @@ let in { flake.nixosModules = { - jupiter = { + mars = { imports = builtins.attrValues { inherit (modules) mullvad @@ -17,7 +17,7 @@ in }; }; - saturn = { + venus = { imports = builtins.attrValues { inherit (modules) plasma @@ -27,7 +27,7 @@ in }; }; - ganymede = { + deimos = { imports = builtins.attrValues { inherit (modules) gnome diff --git a/modules/nixos/hardware/android/default.nix b/modules/nixos/hardware/android/default.nix index 6384ddb..49f045d 100755 --- a/modules/nixos/hardware/android/default.nix +++ b/modules/nixos/hardware/android/default.nix @@ -4,9 +4,22 @@ adb.enable = true; droidcam.enable = true; }; - services.udev.packages = builtins.attrValues { - inherit (pkgs) - android-udev-rules - ; + services.udev = { + enable = true; + packages = builtins.attrValues { + inherit (pkgs) + android-udev-rules + ; + }; + extraRules = '' + # Amazon Fire Tablet + SUBSYSTEM=="usb", ATTR{idVendor}=="1949", ATTR{idProduct}=="0632", MODE="0666", GROUP="adbusers" + SUBSYSTEM=="usb", ATTR{idVendor}=="1949", ATTR{idProduct}=="0632", SYMLINK+="android_adb" + SUBSYSTEM=="usb", ATTR{idVendor}=="1949", ATTR{idProduct}=="0632", SYMLINK+="android_fastboot" + + # General Android rules + SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666" + SUBSYSTEM=="usb", ATTR{idVendor}=="1949", MODE="0666", GROUP="adbusers" + ''; }; } diff --git a/modules/nixos/hardware/audio/default.nix b/modules/nixos/hardware/audio/default.nix index 49ea641..f0b90b8 100755 --- a/modules/nixos/hardware/audio/default.nix +++ b/modules/nixos/hardware/audio/default.nix @@ -7,19 +7,6 @@ alsa.support32Bit = true; pulse.enable = true; jack.enable = true; - wireplumber.extraConfig.bluetoothEnhancements = { - "monitor.bluez.properties" = { - "bluez5.enable-sbc-xq" = true; - "bluez5.enable-msbc" = true; - "bluez5.enable-hw-volume" = true; - "bluez5.roles" = [ - "hsp_hs" - "hsp_ag" - "hfp_hf" - "hfp_ag" - ]; - }; - }; }; pulseaudio.enable = false; }; diff --git a/modules/nixos/hardware/razer/default.nix b/modules/nixos/hardware/razer/default.nix new file mode 100755 index 0000000..a41b567 --- /dev/null +++ b/modules/nixos/hardware/razer/default.nix @@ -0,0 +1,3 @@ +{ + hardware.openrazer.enable = true; +} diff --git a/modules/nixos/services/ollama/default.nix b/modules/nixos/services/ollama/default.nix index 9876fff..6077616 100755 --- a/modules/nixos/services/ollama/default.nix +++ b/modules/nixos/services/ollama/default.nix @@ -6,7 +6,7 @@ }: let inherit (flake.config.machines.devices) - jupiter + mars ceres ; inherit (flake.config.services.instances) @@ -63,7 +63,7 @@ in user = service.name; } // ( - if hostname == jupiter.name then + if hostname == mars.name then { models = service.paths.path1; # acceleration = "rocm"; @@ -98,7 +98,7 @@ in systemd.tmpfiles.rules = [ ( - if hostname == jupiter.name then + if hostname == mars.name then "Z ${service.paths.path1} 0777 ${service.name} ${service.name} -" else "Z ${service.paths.path0} 0755 ${service.name} ${service.name} -" diff --git a/modules/nixos/services/syncthing/default.nix b/modules/nixos/services/syncthing/default.nix index 3342c08..f94abc2 100755 --- a/modules/nixos/services/syncthing/default.nix +++ b/modules/nixos/services/syncthing/default.nix @@ -39,14 +39,6 @@ in ]; id = phone.sync.address0; }; - ${tablet.name} = { - autoAcceptFolders = true; - name = tablet.name; - addresses = [ - "tcp://${tablet.ip.address0}:${toString service.ports.port2}" - ]; - id = tablet.sync.address0; - }; }; }; }; diff --git a/modules/nixos/sops/default.nix b/modules/nixos/sops/default.nix index b9090ad..6ef123c 100755 --- a/modules/nixos/sops/default.nix +++ b/modules/nixos/sops/default.nix @@ -8,17 +8,17 @@ let devices ; hostname = config.networking.hostName; - jupiter = devices.jupiter.name; + mars = devices.mars.name; ceres = devices.ceres.name; - saturn = devices.saturn.name; - callisto = devices.callisto.name; + venus = devices.venus.name; + charon = devices.charon.name; userLogic = - if hostname == jupiter then + if hostname == mars then user0 else if hostname == ceres then user0 - else if hostname == saturn then + else if hostname == venus then user2 else ""; @@ -32,7 +32,7 @@ in generateKey = false; }; secrets = - if hostname == callisto then + if hostname == charon then { } else { diff --git a/profiles/user0/default.nix b/profiles/user0/default.nix index cf65463..33ba64f 100755 --- a/profiles/user0/default.nix +++ b/profiles/user0/default.nix @@ -31,6 +31,7 @@ in "networkmanager" "nextcloud" "ollama" + "plugdev" "postgres" "redis-mastodon" "samba" diff --git a/profiles/user0/files/justfile b/profiles/user0/files/justfile index 4e83af0..3e7a82c 100755 --- a/profiles/user0/files/justfile +++ b/profiles/user0/files/justfile @@ -5,7 +5,7 @@ vpnoff: sudo protonvpn d rebuild: - nixos-rebuild switch --use-remote-sudo --flake ~/Files/Projects/dotfiles#jupiter --show-trace + nixos-rebuild switch --use-remote-sudo --flake ~/Files/Projects/dotfiles#mars --show-trace elm: cd ~/Files/Projects/website/frontend; elm-land server diff --git a/systems/callisto/config/boot.nix b/systems/charon/config/boot.nix similarity index 100% rename from systems/callisto/config/boot.nix rename to systems/charon/config/boot.nix diff --git a/systems/callisto/config/filesystem.nix b/systems/charon/config/filesystem.nix similarity index 85% rename from systems/callisto/config/filesystem.nix rename to systems/charon/config/filesystem.nix index a146e65..0a7cbd4 100755 --- a/systems/callisto/config/filesystem.nix +++ b/systems/charon/config/filesystem.nix @@ -5,7 +5,7 @@ }: let inherit (flake.config.people) user1; - inherit (flake.config.machines.devices) callisto; + inherit (flake.config.machines.devices) charon; in { fileSystems = { @@ -16,7 +16,7 @@ in "/boot" = { device = "/dev/disk/by-uuid/1703-D452"; fsType = "vfat"; - options = callisto.boot.options; + options = charon.boot.options; }; }; diff --git a/systems/callisto/config/graphics.nix b/systems/charon/config/graphics.nix similarity index 100% rename from systems/callisto/config/graphics.nix rename to systems/charon/config/graphics.nix diff --git a/systems/callisto/config/hardware.nix b/systems/charon/config/hardware.nix similarity index 100% rename from systems/callisto/config/hardware.nix rename to systems/charon/config/hardware.nix diff --git a/systems/callisto/config/networking.nix b/systems/charon/config/networking.nix similarity index 92% rename from systems/callisto/config/networking.nix rename to systems/charon/config/networking.nix index 451c38d..64ecc59 100755 --- a/systems/callisto/config/networking.nix +++ b/systems/charon/config/networking.nix @@ -5,12 +5,12 @@ }: let inherit (flake.config.machines.devices) - callisto + charon ; in { networking = { - hostName = callisto.name; + hostName = charon.name; networkmanager.enable = true; nftables.enable = true; useDHCP = lib.mkDefault true; diff --git a/systems/callisto/default.nix b/systems/charon/default.nix similarity index 100% rename from systems/callisto/default.nix rename to systems/charon/default.nix diff --git a/systems/ganymede/config/boot.nix b/systems/deimos/config/boot.nix similarity index 100% rename from systems/ganymede/config/boot.nix rename to systems/deimos/config/boot.nix diff --git a/systems/ganymede/config/filesystem.nix b/systems/deimos/config/filesystem.nix similarity index 97% rename from systems/ganymede/config/filesystem.nix rename to systems/deimos/config/filesystem.nix index bd0ba53..b8d6cc1 100755 --- a/systems/ganymede/config/filesystem.nix +++ b/systems/deimos/config/filesystem.nix @@ -9,7 +9,7 @@ let user1 ; inherit (flake.config.machines.devices) - ganymede + deimos synology ceres ; @@ -63,7 +63,7 @@ in "/boot" = { device = "/dev/disk/by-uuid/C506-9E18"; fsType = "vfat"; - options = ganymede.boot.options; + options = deimos.boot.options; }; } // (builtins.listToAttrs (map synologyMounts synologyDrives)) diff --git a/systems/ganymede/config/graphics.nix b/systems/deimos/config/graphics.nix similarity index 100% rename from systems/ganymede/config/graphics.nix rename to systems/deimos/config/graphics.nix diff --git a/systems/ganymede/config/hardware.nix b/systems/deimos/config/hardware.nix similarity index 100% rename from systems/ganymede/config/hardware.nix rename to systems/deimos/config/hardware.nix diff --git a/systems/ganymede/config/networking.nix b/systems/deimos/config/networking.nix similarity index 92% rename from systems/ganymede/config/networking.nix rename to systems/deimos/config/networking.nix index 9d71960..76d482e 100755 --- a/systems/ganymede/config/networking.nix +++ b/systems/deimos/config/networking.nix @@ -5,12 +5,12 @@ }: let inherit (flake.config.machines.devices) - ganymede + deimos ; in { networking = { - hostName = ganymede.name; + hostName = deimos.name; networkmanager.enable = true; nftables.enable = true; useDHCP = lib.mkDefault true; diff --git a/systems/ganymede/config/sops.nix b/systems/deimos/config/sops.nix similarity index 100% rename from systems/ganymede/config/sops.nix rename to systems/deimos/config/sops.nix diff --git a/systems/jupiter/default.nix b/systems/deimos/default.nix similarity index 88% rename from systems/jupiter/default.nix rename to systems/deimos/default.nix index 84ec802..a3744f2 100755 --- a/systems/jupiter/default.nix +++ b/systems/deimos/default.nix @@ -2,7 +2,7 @@ let configPath = ./config; - jupiterImports = + deimosImports = let files = builtins.attrNames (builtins.readDir configPath); in @@ -11,7 +11,7 @@ let ); in { - imports = jupiterImports; + imports = deimosImports; nixpkgs.hostPlatform = lib.mkForce "x86_64-linux"; system.stateVersion = lib.mkForce "24.05"; } diff --git a/systems/jupiter/config/boot.nix b/systems/mars/config/boot.nix similarity index 100% rename from systems/jupiter/config/boot.nix rename to systems/mars/config/boot.nix diff --git a/systems/jupiter/config/filesystem.nix b/systems/mars/config/filesystem.nix similarity index 87% rename from systems/jupiter/config/filesystem.nix rename to systems/mars/config/filesystem.nix index 97bae83..1cb70b1 100755 --- a/systems/jupiter/config/filesystem.nix +++ b/systems/mars/config/filesystem.nix @@ -9,7 +9,7 @@ let user1 ; inherit (flake.config.machines.devices) - jupiter + mars ceres synology ; @@ -50,11 +50,11 @@ in }; storageMounts = storageDrive: { - name = "${jupiter.${storageDrive}.mount}"; + name = "${mars.${storageDrive}.mount}"; value = { - device = jupiter.${storageDrive}.device; + device = mars.${storageDrive}.device; fsType = "ext4"; - options = jupiter.${storageDrive}.options; + options = mars.${storageDrive}.options; }; }; @@ -77,7 +77,7 @@ in "/boot" = { device = "/dev/disk/by-uuid/F095-17B7"; fsType = "vfat"; - options = jupiter.boot.options; + options = mars.boot.options; }; } // (builtins.listToAttrs (map synologyMounts synologyDrives)) @@ -91,8 +91,8 @@ in systemd.tmpfiles.rules = [ "Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -" "Z ${config.home-manager.users.${user1}.home.homeDirectory} 0755 ${user1} users -" - "Z ${jupiter.storage0.mount} 0755 ${user0} users -" - "Z ${jupiter.storage1.mount} 0755 ${user0} users -" + "Z ${mars.storage0.mount} 0755 ${user0} users -" + "Z ${mars.storage1.mount} 0755 ${user0} users -" ]; services.udisks2.enable = true; diff --git a/systems/jupiter/config/graphics.nix b/systems/mars/config/graphics.nix similarity index 100% rename from systems/jupiter/config/graphics.nix rename to systems/mars/config/graphics.nix diff --git a/systems/jupiter/config/hardware.nix b/systems/mars/config/hardware.nix similarity index 100% rename from systems/jupiter/config/hardware.nix rename to systems/mars/config/hardware.nix diff --git a/systems/jupiter/config/networking.nix b/systems/mars/config/networking.nix similarity index 89% rename from systems/jupiter/config/networking.nix rename to systems/mars/config/networking.nix index ed015c6..2304177 100755 --- a/systems/jupiter/config/networking.nix +++ b/systems/mars/config/networking.nix @@ -5,12 +5,12 @@ }: let inherit (flake.config.machines.devices) - jupiter + mars ; in { networking = { - hostName = jupiter.name; + hostName = mars.name; networkmanager.enable = true; nftables.enable = true; useDHCP = lib.mkDefault true; @@ -22,7 +22,8 @@ in 2234 # Soulseek 3131 # Deskreen 1234 # Elm-land server - 55473 + 5037 # ADB Server + 52006 ]; }; }; diff --git a/systems/jupiter/config/sops.nix b/systems/mars/config/sops.nix similarity index 100% rename from systems/jupiter/config/sops.nix rename to systems/mars/config/sops.nix diff --git a/systems/ganymede/default.nix b/systems/mars/default.nix similarity index 87% rename from systems/ganymede/default.nix rename to systems/mars/default.nix index 067b37c..9cbf0e4 100755 --- a/systems/ganymede/default.nix +++ b/systems/mars/default.nix @@ -2,7 +2,7 @@ let configPath = ./config; - ganymedeImports = + marsImports = let files = builtins.attrNames (builtins.readDir configPath); in @@ -11,7 +11,7 @@ let ); in { - imports = ganymedeImports; + imports = marsImports; nixpkgs.hostPlatform = lib.mkForce "x86_64-linux"; system.stateVersion = lib.mkForce "24.05"; } diff --git a/systems/saturn/config/boot.nix b/systems/venus/config/boot.nix similarity index 100% rename from systems/saturn/config/boot.nix rename to systems/venus/config/boot.nix diff --git a/systems/saturn/config/filesystem.nix b/systems/venus/config/filesystem.nix similarity index 71% rename from systems/saturn/config/filesystem.nix rename to systems/venus/config/filesystem.nix index 6e54180..c517920 100755 --- a/systems/saturn/config/filesystem.nix +++ b/systems/venus/config/filesystem.nix @@ -5,7 +5,7 @@ }: let inherit (flake.config.people) user2; - inherit (flake.config.machines.devices) saturn; + inherit (flake.config.machines.devices) venus; in { imports = [ ]; @@ -18,11 +18,11 @@ in ]; storageMounts = storage: { - name = "${saturn.${storage}.mount}"; + name = "${venus.${storage}.mount}"; value = { - device = saturn.${storage}.device; + device = venus.${storage}.device; fsType = "ext4"; - options = saturn.${storage}.options; + options = venus.${storage}.options; }; }; in @@ -34,7 +34,7 @@ in "/boot" = { device = "/dev/disk/by-uuid/22BD-5A25"; fsType = "vfat"; - options = saturn.boot.options; + options = venus.boot.options; }; } // (builtins.listToAttrs (map storageMounts storageDrives)); @@ -45,8 +45,8 @@ in systemd.tmpfiles.rules = [ "Z ${config.home-manager.users.${user2}.home.homeDirectory} 0755 ${user2} users -" - "Z ${saturn.storage0.mount} 0755 ${user2} users -" - "Z ${saturn.storage1.mount} 0755 ${user2} users -" + "Z ${venus.storage0.mount} 0755 ${user2} users -" + "Z ${venus.storage1.mount} 0755 ${user2} users -" ]; services.udisks2.enable = true; diff --git a/systems/saturn/config/graphics.nix b/systems/venus/config/graphics.nix similarity index 100% rename from systems/saturn/config/graphics.nix rename to systems/venus/config/graphics.nix diff --git a/systems/saturn/config/hardware.nix b/systems/venus/config/hardware.nix similarity index 100% rename from systems/saturn/config/hardware.nix rename to systems/venus/config/hardware.nix diff --git a/systems/saturn/config/networking.nix b/systems/venus/config/networking.nix similarity index 84% rename from systems/saturn/config/networking.nix rename to systems/venus/config/networking.nix index 54bdeb3..b774ad9 100755 --- a/systems/saturn/config/networking.nix +++ b/systems/venus/config/networking.nix @@ -4,11 +4,11 @@ ... }: let - inherit (flake.config.machines.devices) saturn; + inherit (flake.config.machines.devices) venus; in { networking = { - hostName = saturn.name; + hostName = venus.name; networkmanager.enable = true; useDHCP = lib.mkDefault true; firewall = { diff --git a/systems/saturn/default.nix b/systems/venus/default.nix similarity index 88% rename from systems/saturn/default.nix rename to systems/venus/default.nix index 76e2a29..e5f8f64 100755 --- a/systems/saturn/default.nix +++ b/systems/venus/default.nix @@ -5,7 +5,7 @@ let configPath = ./config; - saturnImports = + venusImports = let files = builtins.attrNames (builtins.readDir configPath); in @@ -14,7 +14,7 @@ let ); in { - imports = saturnImports; + imports = venusImports; nixpkgs.hostPlatform = lib.mkForce "x86_64-linux"; system.stateVersion = lib.mkForce "24.05"; }