diff --git a/configuration.nix b/configuration.nix index aa3f510..dd21bbd 100644 --- a/configuration.nix +++ b/configuration.nix @@ -1,29 +1,33 @@ -{ config, pkgs, lib, inputs, ... }: - { + config, + pkgs, + lib, + inputs, + ... +}: { # Bootloader. boot.loader.systemd-boot = { enable = true; - configurationLimit = 10; + configurationLimit = 10; }; boot.loader.efi.canTouchEfiVariables = true; # Garbage collection nix.gc = { automatic = true; - dates = "weekly"; - options = "--delete-older-than 1w"; + dates = "weekly"; + options = "--delete-older-than 1w"; }; # Optimize store nix.settings.auto-optimise-store = true; - + # Use latest stable kernel boot.kernelPackages = pkgs.linuxPackages_latest; # Allow power management powerManagement.enable = true; - + # Firmware updates services.fwupd.enable = true; @@ -55,11 +59,11 @@ services.xserver.enable = true; services.displayManager.sddm = { enable = true; - extraPackages = [ pkgs.kdePackages.sddm-kcm ]; + extraPackages = [pkgs.kdePackages.sddm-kcm]; wayland.enable = true; enableHidpi = true; }; - + services.desktopManager.plasma6.enable = true; environment.plasma6.excludePackages = with pkgs.kdePackages; [ elisa @@ -69,8 +73,8 @@ # Hyprland programs.hyprland = { enable = true; - package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; - portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; + package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; + portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; }; # Catppuccin @@ -107,13 +111,13 @@ }; i18n.inputMethod = { - type = "fcitx5"; - enable = true; - fcitx5.addons = with pkgs; [ - fcitx5-mozc - kdePackages.fcitx5-qt - ]; - fcitx5.waylandFrontend = true; + type = "fcitx5"; + enable = true; + fcitx5.addons = with pkgs; [ + fcitx5-mozc + kdePackages.fcitx5-qt + ]; + fcitx5.waylandFrontend = true; }; # Fonts @@ -140,8 +144,8 @@ }; # Enable Flakes - nix.settings.experimental-features = [ "nix-command" "flakes" ]; - + nix.settings.experimental-features = ["nix-command" "flakes"]; + # Allow unfree packages nixpkgs.config.allowUnfree = true; @@ -154,13 +158,13 @@ users.users.chase = { isNormalUser = true; description = "Chase"; - extraGroups = [ "networkmanager" "wheel" ]; + extraGroups = ["networkmanager" "wheel"]; }; # Install firefox programs.firefox = { enable = true; - nativeMessagingHosts.packages = [ pkgs.firefoxpwa ]; + nativeMessagingHosts.packages = [pkgs.firefoxpwa]; policies = { DisableTelemetry = true; DisableFirefoxAccounts = true; @@ -172,12 +176,12 @@ # Install git and enable cache programs.git = { enable = true; - config = { - init = { - defaultBranch = "main"; + config = { + init = { + defaultBranch = "main"; }; - credential = { - helper = "cache --timeout 21600"; + credential = { + helper = "cache --timeout 21600"; }; }; }; @@ -185,16 +189,16 @@ # Install Neovim programs.neovim = { enable = true; - defaultEditor = true; + defaultEditor = true; configure = { customRC = '' - set autoindent - set number relativenumber - set tabstop=4 - colorscheme catppuccin-mocha + set autoindent + set number relativenumber + set tabstop=4 + colorscheme catppuccin-mocha ''; packages.myVimPackage = with pkgs.vimPlugins; { - start = [ catppuccin-nvim ]; + start = [catppuccin-nvim]; }; }; viAlias = true; @@ -215,13 +219,13 @@ bitwarden-cli bitwarden-desktop (catppuccin-kde.override { - flavour = [ "mocha" ]; - accents = [ "pink" ]; - winDecStyles = [ "classic" ]; + flavour = ["mocha"]; + accents = ["pink"]; + winDecStyles = ["classic"]; }) cifs-utils firefoxpwa - flashrom + flashrom gcc nixd pciutils @@ -232,14 +236,14 @@ wget ]; - nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ]; + nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"]; # ssh agent # programs.mtr.enable = true; programs.gnupg.agent.enable = true; programs.ssh = { - enableAskPassword = false; + enableAskPassword = false; }; # List services that you want to enable: @@ -251,10 +255,10 @@ # Enable the OpenSSH daemon. services.openssh = { enable = true; - settings = { + settings = { PermitRootLogin = "no"; - PasswordAuthentication = false; - KbdInteractiveAuthentication = false; + PasswordAuthentication = false; + KbdInteractiveAuthentication = false; }; }; @@ -271,5 +275,4 @@ # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). system.stateVersion = "24.11"; # Did you read the comment? - } diff --git a/flake.nix b/flake.nix index 78f78ef..3aa886e 100644 --- a/flake.nix +++ b/flake.nix @@ -4,16 +4,16 @@ inputs = { # NixOS official package source, using unstable here nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - nur = { - url = "github:nix-community/NUR"; - inputs.nixpkgs.follows = "nixpkgs"; + nur = { + url = "github:nix-community/NUR"; + inputs.nixpkgs.follows = "nixpkgs"; }; catppuccin.url = "github:catppuccin/nix"; - home-manager = { - url = "github:nix-community/home-manager"; - inputs.nixpkgs.follows = "nixpkgs"; + home-manager = { + url = "github:nix-community/home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; }; - hyprland.url = "github:hyprwm/Hyprland"; + hyprland.url = "github:hyprwm/Hyprland"; plasma-manager = { url = "github:nix-community/plasma-manager"; inputs.nixpkgs.follows = "nixpkgs"; @@ -21,57 +21,65 @@ }; }; - outputs = { self, nixpkgs, catppuccin, nur, home-manager, plasma-manager, ... }@inputs: { + outputs = { + self, + nixpkgs, + catppuccin, + nur, + home-manager, + plasma-manager, + ... + } @ inputs: { # Please replace my-nixos with your hostname nixosConfigurations = { - anzu = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = { inherit inputs; }; + anzu = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + specialArgs = {inherit inputs;}; modules = [ # Import the previous configuration.nix we used, # so the old configuration file still takes effect ./configuration.nix - ./hosts/anzu/hardware-configuration.nix - # Add NUR overlay + ./hosts/anzu/hardware-configuration.nix + # Add NUR overlay nur.modules.nixos.default # Add catppuccin catppuccin.nixosModules.catppuccin - # Add home-manager - home-manager.nixosModules.home-manager - { - home-manager.backupFileExtension = "backup"; - home-manager.useGlobalPkgs = true; - home-manager.sharedModules = [ plasma-manager.homeManagerModules.plasma-manager ]; - home-manager.users.chase = { + # Add home-manager + home-manager.nixosModules.home-manager + { + home-manager.backupFileExtension = "backup"; + home-manager.useGlobalPkgs = true; + home-manager.sharedModules = [plasma-manager.homeManagerModules.plasma-manager]; + home-manager.users.chase = { imports = [ ./home/home.nix catppuccin.homeModules.catppuccin ]; }; - } - ]; + } + ]; }; ichigo = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; - specialArgs = { inherit inputs; }; - modules = [ - ./configuration.nix - ./hosts/ichigo/hardware-configuration.nix - nur.modules.nixos.default + specialArgs = {inherit inputs;}; + modules = [ + ./configuration.nix + ./hosts/ichigo/hardware-configuration.nix + nur.modules.nixos.default catppuccin.nixosModules.catppuccin - home-manager.nixosModules.home-manager - { - home-manager.backupFileExtension = "backup"; - home-manager.useGlobalPkgs = true; - home-manager.sharedModules = [ plasma-manager.homeManagerModules.plasma-manager ]; - home-manager.users.chase = { + home-manager.nixosModules.home-manager + { + home-manager.backupFileExtension = "backup"; + home-manager.useGlobalPkgs = true; + home-manager.sharedModules = [plasma-manager.homeManagerModules.plasma-manager]; + home-manager.users.chase = { imports = [ ./home/home.nix catppuccin.homeModules.catppuccin ]; }; - } - ]; + } + ]; }; }; }; diff --git a/home/home.nix b/home/home.nix index 6fc7fa5..1537fdc 100644 --- a/home/home.nix +++ b/home/home.nix @@ -1,6 +1,8 @@ -{ config, pkgs, ... }: - { + config, + pkgs, + ... +}: { imports = [ ./plasma.nix ]; @@ -12,8 +14,8 @@ stateVersion = "24.11"; file = { "scripts" = { - source = config.lib.file.mkOutOfStoreSymlink ./scripts; - recursive = true; + source = config.lib.file.mkOutOfStoreSymlink ./scripts; + recursive = true; }; }; sessionPath = [ @@ -27,15 +29,15 @@ xdg = { enable = true; - userDirs.enable = true; - configFile = { - "emacs/early-init.el" = { - source = config.lib.file.mkOutOfStoreSymlink ./emacs/early-init.el; + userDirs.enable = true; + configFile = { + "emacs/early-init.el" = { + source = config.lib.file.mkOutOfStoreSymlink ./emacs/early-init.el; }; - "emacs/init.el" = { - source = config.lib.file.mkOutOfStoreSymlink ./emacs/init.el; + "emacs/init.el" = { + source = config.lib.file.mkOutOfStoreSymlink ./emacs/init.el; }; - }; + }; }; catppuccin = { @@ -45,17 +47,17 @@ programs.bash = { enable = true; - enableCompletion = true; - bashrcExtra = '' + enableCompletion = true; + bashrcExtra = '' export SSH_AUTH_SOCK=/home/chase/.bitwarden-ssh-agent.sock ''; - historyIgnore = [ - "ls" + historyIgnore = [ + "ls" "ls -a" "ls -l" "ls -la" - "cd" - "exit" + "cd" + "exit" ]; }; @@ -68,122 +70,130 @@ programs.fastfetch = { enable = true; - settings = { - logo = { - source = "nixos_small"; + settings = { + logo = { + source = "nixos_small"; }; - display = { - size = { - binaryPrefix = "si"; - }; - color = "blue"; - separator = ": "; + display = { + size = { + binaryPrefix = "si"; + }; + color = "blue"; + separator = ": "; }; - modules = [ - "title" - "separator" - "os" - "host" - "uptime" - "kernel" - "packages" - "lm" - "de" - "wm" - "shell" - "terminal" - "terminalfont" - { - key = "Display"; - type = "display"; - } - "cpu" - "gpu" - "memory" - "swap" - "disk" - "datetime" - "colors" - "break" - "player" - "media" + modules = [ + "title" + "separator" + "os" + "host" + "uptime" + "kernel" + "packages" + "lm" + "de" + "wm" + "shell" + "terminal" + "terminalfont" + { + key = "Display"; + type = "display"; + } + "cpu" + "gpu" + "memory" + "swap" + "disk" + "datetime" + "colors" + "break" + "player" + "media" ]; - }; + }; }; programs.firefox = { enable = true; - nativeMessagingHosts = [ pkgs.firefoxpwa ]; + nativeMessagingHosts = [pkgs.firefoxpwa]; profiles = { default = { id = 0; - name = "default"; - isDefault = true; - extensions = { - packages = with pkgs.nur.repos.rycee.firefox-addons; [ - awesome-rss - betterttv - bitwarden - clearurls - control-panel-for-twitter - enhancer-for-youtube - facebook-container - flagfox - istilldontcareaboutcookies - privacy-badger - return-youtube-dislikes - search-by-image - sponsorblock - tab-session-manager - tampermonkey - ublock-origin - ]; - }; - settings = { - "browser.formfill.enable" = false; - "browser.ml.chat.enabled" = false; - "browser.ml.chat.shortcuts" = false; - "browser.ml.chat.sidebar" = false; - "browser.newtabpage.activity-stream.feeds.section.topstories" = false; - "browser.newtabpage.activity-stream.feeds.snippets" = false; - "browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false; - "browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false; - "browser.newtabpage.activity-stream.section.highlights.includePocket" = false; - "browser.newtabpage.activity-stream.section.highlights.includeVisited" = false; - "browser.newtabpage.activity-stream.showSponsored" = false; - "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; - "browser.newtabpage.activity-stream.system.showSponsored" = false; - "browser.topsites.contile.enabled" = false; - "browser.urlbar.unitConversion.enabled" = true; - "extensions.formautofill.addresses.enabled" = false; - "extensions.formautofill.creditCards.enabled" = false; - "extensions.pocket.enabled" = false; - "general.autoScroll" = true; - "widget.use-xdg-desktop-portal.file-picker" = 1; - "signon.rememberSignons" = false; - }; - search = { - force = true; - default = "SearX"; - order = [ "SearX" "google" ]; - engines = { - "Nix Packages" = { - urls = [{ - template = "https://search.nixos.org/packages"; - params = [ - { name = "type"; value = "packages"; } - { name = "query"; value = "{searchTerms}"; } - ]; - }]; - icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; - definedAliases = [ "@np" ]; - }; - "SearX" = { - urls = [{ template = "https://searx.traphouse.cathoderaytube.net/?q={searchTerms}"; }]; - definedAliases = [ "@searx" ]; - }; - "bing".metaData.hidden = true; - }; + name = "default"; + isDefault = true; + extensions = { + packages = with pkgs.nur.repos.rycee.firefox-addons; [ + awesome-rss + betterttv + bitwarden + clearurls + control-panel-for-twitter + enhancer-for-youtube + facebook-container + flagfox + istilldontcareaboutcookies + privacy-badger + return-youtube-dislikes + search-by-image + sponsorblock + tab-session-manager + tampermonkey + ublock-origin + ]; + }; + settings = { + "browser.formfill.enable" = false; + "browser.ml.chat.enabled" = false; + "browser.ml.chat.shortcuts" = false; + "browser.ml.chat.sidebar" = false; + "browser.newtabpage.activity-stream.feeds.section.topstories" = false; + "browser.newtabpage.activity-stream.feeds.snippets" = false; + "browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false; + "browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false; + "browser.newtabpage.activity-stream.section.highlights.includePocket" = false; + "browser.newtabpage.activity-stream.section.highlights.includeVisited" = false; + "browser.newtabpage.activity-stream.showSponsored" = false; + "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; + "browser.newtabpage.activity-stream.system.showSponsored" = false; + "browser.topsites.contile.enabled" = false; + "browser.urlbar.unitConversion.enabled" = true; + "extensions.formautofill.addresses.enabled" = false; + "extensions.formautofill.creditCards.enabled" = false; + "extensions.pocket.enabled" = false; + "general.autoScroll" = true; + "widget.use-xdg-desktop-portal.file-picker" = 1; + "signon.rememberSignons" = false; + }; + search = { + force = true; + default = "SearX"; + order = ["SearX" "google"]; + engines = { + "Nix Packages" = { + urls = [ + { + template = "https://search.nixos.org/packages"; + params = [ + { + name = "type"; + value = "packages"; + } + { + name = "query"; + value = "{searchTerms}"; + } + ]; + } + ]; + icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = ["@np"]; + }; + "SearX" = { + urls = [{template = "https://searx.traphouse.cathoderaytube.net/?q={searchTerms}";}]; + definedAliases = ["@searx"]; + }; + "bing".metaData.hidden = true; + }; }; }; }; @@ -191,41 +201,41 @@ programs.ghostty = { enable = true; - enableBashIntegration = true; - installBatSyntax = true; - installVimSyntax = true; - settings = { - font-family = "BlexMono Nerd Font"; - font-size = 11; - }; + enableBashIntegration = true; + installBatSyntax = true; + installVimSyntax = true; + settings = { + font-family = "BlexMono Nerd Font"; + font-size = 11; + }; }; - + programs.git = { enable = true; userName = "chase"; userEmail = "chase@cathoderaytube.net"; - extraConfig = { + extraConfig = { init.defaultBranch = "main"; - }; + }; }; programs.git-credential-oauth.enable = true; programs.gpg = { enable = true; - homedir = "${config.xdg.dataHome}/gnupg"; + homedir = "${config.xdg.dataHome}/gnupg"; }; programs.htop.enable = true; programs.mpv = { enable = true; - config = { - profile = "gpu-hq"; - ytdl-format = "bestvideo+bestaudio"; + config = { + profile = "gpu-hq"; + ytdl-format = "bestvideo+bestaudio"; }; - scripts = [ - pkgs.mpvScripts.mpris + scripts = [ + pkgs.mpvScripts.mpris ]; }; @@ -256,52 +266,52 @@ style = "bold green"; }; }; - }; + }; programs.ranger.enable = true; programs.rmpc = { enable = true; - config = '' - ( - enable_config_hot_reload: true, - ) - ''; + config = '' + ( + enable_config_hot_reload: true, + ) + ''; }; programs.texlive.enable = true; programs.yazi = { enable = true; - enableBashIntegration = true; + enableBashIntegration = true; }; programs.yt-dlp = { enable = true; - settings = { - embed-thumbnail = true; + settings = { + embed-thumbnail = true; }; }; home.packages = with pkgs; [ anki-bin audacity - ffmpeg - fortune - gimp - ibm-plex - imagemagick - kdePackages.kdenlive - libnotify - libreoffice + ffmpeg + fortune + gimp + ibm-plex + imagemagick + kdePackages.kdenlive + libnotify + libreoffice logiops lolcat - nerd-fonts.blex-mono + nerd-fonts.blex-mono picard - protonmail-bridge - thunderbird - ueberzugpp - vcv-rack + protonmail-bridge + thunderbird + ueberzugpp + vcv-rack runelite ]; @@ -322,30 +332,29 @@ services.mpd = { enable = true; - extraConfig = '' - audio_output { - type "pipewire" - name "Pipewire Output" - } + extraConfig = '' + audio_output { + type "pipewire" + name "Pipewire Output" + } ''; - musicDirectory = "/mnt/share/media/music"; + musicDirectory = "/mnt/share/media/music"; }; services.mpd-discord-rpc = { enable = true; - settings = { - hosts = [ "localhost:6600" ]; + settings = { + hosts = ["localhost:6600"]; format = { details = "$track - $title [$duration]"; state = "$artist / $album ($date)"; - timestamp = "elapsed"; + timestamp = "elapsed"; }; - }; + }; }; services.mpd-mpris = { enable = true; - mpd.useLocal = true; + mpd.useLocal = true; }; - } diff --git a/home/plasma.nix b/home/plasma.nix index 9455298..f089f18 100644 --- a/home/plasma.nix +++ b/home/plasma.nix @@ -2,9 +2,9 @@ programs.plasma = { enable = true; shortcuts = { - "ActivityManager"."switch-to-activity-0fb1d4a1-96e6-4dfd-909a-04b78f1e3845" = [ ]; - "KDE Keyboard Layout Switcher"."Switch keyboard layout to English (US)" = [ ]; - "KDE Keyboard Layout Switcher"."Switch keyboard layout to Japanese" = [ ]; + "ActivityManager"."switch-to-activity-0fb1d4a1-96e6-4dfd-909a-04b78f1e3845" = []; + "KDE Keyboard Layout Switcher"."Switch keyboard layout to English (US)" = []; + "KDE Keyboard Layout Switcher"."Switch keyboard layout to Japanese" = []; "KDE Keyboard Layout Switcher"."Switch to Last-Used Keyboard Layout" = "Meta+Alt+L"; "KDE Keyboard Layout Switcher"."Switch to Next Keyboard Layout" = "Meta+Alt+K"; "kaccess"."Toggle Screen Reader On and Off" = "Meta+Alt+S"; @@ -28,24 +28,24 @@ "ksmserver"."Reboot Without Confirmation" = "none,,Reboot Without Confirmation"; "ksmserver"."Shut Down" = "none,,Shut Down"; "kwin"."Activate Window Demanding Attention" = "Meta+Ctrl+A"; - "kwin"."Cycle Overview" = [ ]; - "kwin"."Cycle Overview Opposite" = [ ]; + "kwin"."Cycle Overview" = []; + "kwin"."Cycle Overview Opposite" = []; "kwin"."Decrease Opacity" = "none,,Decrease Opacity of Active Window by 5%"; "kwin"."Edit Tiles" = "Meta+T"; "kwin"."Expose" = "Ctrl+F9"; "kwin"."ExposeAll" = ["Ctrl+F10" "Launch (C),Ctrl+F10" "Launch (C),Toggle Present Windows (All desktops)"]; "kwin"."ExposeClass" = "Ctrl+F7"; - "kwin"."ExposeClassCurrentDesktop" = [ ]; + "kwin"."ExposeClassCurrentDesktop" = []; "kwin"."Grid View" = "Meta+G"; "kwin"."Increase Opacity" = "none,,Increase Opacity of Active Window by 5%"; "kwin"."Kill Window" = "Meta+Ctrl+Esc"; - "kwin"."Move Tablet to Next Output" = [ ]; + "kwin"."Move Tablet to Next Output" = []; "kwin"."MoveMouseToCenter" = "Meta+F6"; "kwin"."MoveMouseToFocus" = "Meta+F5"; - "kwin"."MoveZoomDown" = [ ]; - "kwin"."MoveZoomLeft" = [ ]; - "kwin"."MoveZoomRight" = [ ]; - "kwin"."MoveZoomUp" = [ ]; + "kwin"."MoveZoomDown" = []; + "kwin"."MoveZoomLeft" = []; + "kwin"."MoveZoomRight" = []; + "kwin"."MoveZoomUp" = []; "kwin"."Overview" = "Meta+W"; "kwin"."Setup Window Shortcut" = "none,,Setup Window Shortcut"; "kwin"."Show Desktop" = "Meta+D"; @@ -93,7 +93,7 @@ "kwin"."Switch to Screen Below" = "none,,Switch to Screen Below"; "kwin"."Switch to Screen to the Left" = "none,,Switch to Screen to the Left"; "kwin"."Switch to Screen to the Right" = "none,,Switch to Screen to the Right"; - "kwin"."Toggle Night Color" = [ ]; + "kwin"."Toggle Night Color" = []; "kwin"."Toggle Window Raise/Lower" = "none,,Toggle Window Raise/Lower"; "kwin"."Walk Through Windows" = "Alt+Tab"; "kwin"."Walk Through Windows (Reverse)" = "Alt+Shift+Tab"; @@ -203,7 +203,7 @@ "org_kde_powerdevil"."PowerOff" = "Power Off"; "org_kde_powerdevil"."Sleep" = "Sleep"; "org_kde_powerdevil"."Toggle Keyboard Backlight" = "Keyboard Light On/Off"; - "org_kde_powerdevil"."Turn Off Screen" = [ ]; + "org_kde_powerdevil"."Turn Off Screen" = []; "org_kde_powerdevil"."powerProfile" = ["Battery" "Meta+B,Battery" "Meta+B,Switch Power Profile"]; "plasmashell"."activate application launcher" = ["Meta" "Alt+F1,Meta" "Alt+F1,Activate Application Launcher"]; "plasmashell"."activate task manager entry 1" = "Meta+1"; diff --git a/home/scripts/nixswitch.sh b/home/scripts/nixswitch.sh deleted file mode 100755 index 12d1746..0000000 --- a/home/scripts/nixswitch.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env bash -# -# NixOS rebuild script -# -# original by 0atman: https://gist.github.com/0atman/1a5133b842f929ba4c1e195ee67599d5 - -set -e - -pushd ~/nixos-config - -if git diff --quiet; then - echo "No changes detected, exiting." - popd - exit 0 -fi - -alejandra . &>/dev/null \ - || ( alejandra . ; echo "formatting failed!" && exit 1) - -git diff -U0 - -echo "NixOS rebuilding..." - -sudo nixos-rebuild switch --flake . &>nixos-switch.log \ - || (cat nixos-switch.log | grep --color error && exit 1) - -current=$(nixos-rebuild list-generations | grep current) - -git commit -am "$current" - -popd - -notify-send -e "NixOS Rebuilt OK!" --icon=software-update-available diff --git a/hosts/anzu/hardware-configuration.nix b/hosts/anzu/hardware-configuration.nix index e9626c8..3be7104 100644 --- a/hosts/anzu/hardware-configuration.nix +++ b/hosts/anzu/hardware-configuration.nix @@ -1,49 +1,52 @@ -{ config, lib, pkgs, modulesPath, ... }: - { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + config, + lib, + pkgs, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; ### this machine ### networking.hostName = "anzu"; ### hardware config ### - + # encrypted root boot.initrd.luks.devices."luks-b03a8b46-6a1b-4855-9cf9-304d884f50ae".device = "/dev/disk/by-uuid/b03a8b46-6a1b-4855-9cf9-304d884f50ae"; - + # encrypted swap boot.initrd.luks.devices."luks-9527937d-2d02-4feb-9a16-c9c417b33d0d".device = "/dev/disk/by-uuid/9527937d-2d02-4feb-9a16-c9c417b33d0d"; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; + boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "usb_storage" "sd_mod"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-amd"]; + boot.extraModulePackages = []; - fileSystems."/" = - { device = "/dev/disk/by-uuid/1518dbe1-8322-48d3-9fc9-cd0478ccbf43"; - fsType = "ext4"; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/1518dbe1-8322-48d3-9fc9-cd0478ccbf43"; + fsType = "ext4"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1FCD-5A26"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/1FCD-5A26"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; + + swapDevices = [ + {device = "/dev/disk/by-uuid/dd48a14e-2c90-465b-81a3-661d31ebf39f";} + ]; - swapDevices = - [ { device = "/dev/disk/by-uuid/dd48a14e-2c90-465b-81a3-661d31ebf39f"; } - ]; - # Mount SMB share fileSystems."/mnt/share" = { device = "//haruko/share"; fsType = "cifs"; options = let automount_opts = "x-systemd.automount,noauto,x-systemd.idle-timeout=60,x-systemd.device-timeout=5s,x-systemd.mount-timeout=5s,user,users"; - - in ["${automount_opts},credentials=/etc/nixos/smb-secrets,uid=1000,gid=100"]; + in ["${automount_opts},credentials=/etc/nixos/smb-secrets,uid=1000,gid=100"]; }; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking diff --git a/hosts/ichigo/hardware-configuration.nix b/hosts/ichigo/hardware-configuration.nix index d4ec97e..8f1818b 100644 --- a/hosts/ichigo/hardware-configuration.nix +++ b/hosts/ichigo/hardware-configuration.nix @@ -1,48 +1,51 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - + config, + lib, + pkgs, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + ### this machine ### networking.hostName = "ichigo"; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; + boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-amd"]; + boot.extraModulePackages = []; - fileSystems."/" = - { device = "/dev/disk/by-uuid/d248b616-bdb7-463d-94a6-9718de8dc85a"; - fsType = "ext4"; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/d248b616-bdb7-463d-94a6-9718de8dc85a"; + fsType = "ext4"; + }; boot.initrd.luks.devices."luks-d90b3a3d-bb12-4a29-a2b4-99487f0ff1ca".device = "/dev/disk/by-uuid/d90b3a3d-bb12-4a29-a2b4-99487f0ff1ca"; boot.initrd.luks.devices."luks-877310a4-b495-4060-9ee6-e7a841862f22".device = "/dev/disk/by-uuid/877310a4-b495-4060-9ee6-e7a841862f22"; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/AA5A-18AD"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - swapDevices = - [ { device = "/dev/disk/by-uuid/752114b2-c304-4670-aba8-7288954605bc"; } - ]; - + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/AA5A-18AD"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; + + swapDevices = [ + {device = "/dev/disk/by-uuid/752114b2-c304-4670-aba8-7288954605bc";} + ]; + # Mount SMB share fileSystems."/mnt/share" = { device = "//haruko/share"; fsType = "cifs"; options = let automount_opts = "x-systemd.automount,noauto,x-systemd.idle-timeout=60,x-systemd.device-timeout=5s,x-systemd.mount-timeout=5s,user,users"; - - in ["${automount_opts},credentials=/etc/nixos/smb-secrets,uid=1000,gid=100"]; + in ["${automount_opts},credentials=/etc/nixos/smb-secrets,uid=1000,gid=100"]; }; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking