diff --git a/hosts/installer/default.nix b/hosts/installer/default.nix index 0015589..3cf350b 100644 --- a/hosts/installer/default.nix +++ b/hosts/installer/default.nix @@ -2,9 +2,9 @@ lib, pkgs, modulesPath, + inputs, ... }: let - install-script = pkgs.writeShellScriptBin "movcfg-install" (builtins.readFile ./movcfg-install.sh); extraFigletFonts = pkgs.fetchFromGitHub { owner = "xero"; repo = "figlet-fonts"; @@ -23,6 +23,8 @@ in { imports = [ "${modulesPath}/installer/cd-dvd/installation-cd-minimal.nix" + inputs.home-manager.nixosModules.home-manager + ../../modules/sys/software/nixvim ]; nixpkgs.hostPlatform = "x86_64-linux"; system.stateVersion = "24.05"; @@ -35,6 +37,7 @@ in { networking = { wireless.enable = false; networkmanager.enable = true; + hostName = "mov-nixos-installer"; }; environment.systemPackages = with pkgs; [ @@ -57,16 +60,27 @@ in { pciutils usbutils toilet-extrafonts - install-script - nvim ]; + home-manager = { + users.root = { + programs.home-manager.enable = true; + home= { + stateVersion = "24.05"; + file = { + "disko.nix".source = ./disko-ext4-singledisk.nix; + }; + }; + }; + }; + services = { openssh.enable = true; dbus.enable = true; }; - programs.zsh = { + programs = { + zsh = { enable = true; ohMyZsh = { @@ -167,56 +181,57 @@ in { unalias ls clear ''; - }; - programs.starship = { - enable = true; - settings = { - add_newline = true; - right_format = "($custom)"; + }; + starship = { + enable = true; + settings = { + add_newline = true; + right_format = "($custom)"; - format = lib.concatStrings [ - "($username)(bold white)($cmd_duration)($character)" - "($git_branch)($git_status)($rust)($nix-shell)" - "($directory)" - "$line_break[ > ](bold #89b4fa)" - ]; + format = lib.concatStrings [ + "($username)(bold white)($cmd_duration)($character)" + "($git_branch)($git_status)($rust)($nix-shell)" + "($directory)" + "$line_break[ > ](bold #89b4fa)" + ]; - username = { - show_always = true; - style_user = "bold white"; - format = "[$user]($style)"; - }; - directory = { - format = "\n[$path](bold cyan)[/](bold green) "; - style = "bold #b4befe"; - }; + username = { + show_always = true; + style_user = "bold white"; + format = "[$user]($style)"; + }; + directory = { + format = "\n[$path](bold cyan)[/](bold green) "; + style = "bold #b4befe"; + }; - character = { - success_symbol = "[ -> ](bold green)"; - error_symbol = "[ -> ✗](bold red)"; - # error_symbol = "[ ](bold #89dceb)[ ✗](bold red)"; - }; + character = { + success_symbol = "[ -> ](bold green)"; + error_symbol = "[ -> ✗](bold red)"; + # error_symbol = "[ ](bold #89dceb)[ ✗](bold red)"; + }; - cmd_duration = { - format = "[ 󰔛 $duration]($style)"; - disabled = false; - style = "bg:none fg:#f9e2af"; - show_notifications = false; - min_time_to_notify = 60000; - }; + cmd_duration = { + format = "[ 󰔛 $duration]($style)"; + disabled = false; + style = "bg:none fg:#f9e2af"; + show_notifications = false; + min_time_to_notify = 60000; + }; - git_branch = { - format = "\non [$symbol$branch](bold purple)"; - symbol = " "; - truncation_length = 15; - style = "bold purple"; - }; + git_branch = { + format = "\non [$symbol$branch](bold purple)"; + symbol = " "; + truncation_length = 15; + style = "bold purple"; + }; - custom.shellver = { - command = "zsh --version"; - when = ''test $SHELL = "/run/current-system/sw/bin/zsh"''; - symbol = ""; - style = "bold magenta"; + custom.shellver = { + command = "zsh --version"; + when = ''test $SHELL = "/run/current-system/sw/bin/zsh"''; + symbol = ""; + style = "bold magenta"; + }; }; }; }; diff --git a/modules/home/home-manager.nix b/modules/home/home-manager.nix index db7a63b..57ba567 100644 --- a/modules/home/home-manager.nix +++ b/modules/home/home-manager.nix @@ -10,6 +10,7 @@ ... }: let nur = config.nur; + desktop = (host == "oganesson"); in { imports = [inputs.home-manager.nixosModules.home-manager]; home-manager = { @@ -18,12 +19,12 @@ in { backupFileExtension = "backup"; extraSpecialArgs = {inherit self inputs host wallpaper scheme username nur;}; users.${username} = { - dconf.settings = { + dconf.settings = if desktop then { "org/virt-manager/virt-manager/connections" = { autoconnect = ["qemu:///system"]; uris = ["qemu:///system"]; }; - }; + } else {}; programs.home-manager.enable = true; imports = [ ./programs diff --git a/modules/home/scripts/commands/viconf.nix b/modules/home/scripts/commands/viconf.nix index 2d375f9..4861803 100644 --- a/modules/home/scripts/commands/viconf.nix +++ b/modules/home/scripts/commands/viconf.nix @@ -3,11 +3,19 @@ pkgs.writeShellScriptBin "viconf" '' #!/usr/bin/env bash [ ! $# -eq 1 ] && echo "Usage: viconf <*.nix>" && exit 1 + results=$(find "$FLAKEPATH" -wholename "*$1*" -exec find {} \; | sort | uniq | rg '\.nix$') numresults=$(echo "$results" | wc -l) + [ "$numresults" -eq 0 ] && echo "$1 not found in \$FLAKEPATH" && exit 1 + if [ "$numresults" -gt 1 ]; then - echo "$results" | tr ' ' '\n' | fzf | xargs -I {} nvim {} + # cut up the paths to give shorter path names to fuzzy finder + results_prefix=$(echo "$results" | tail -n 1 | cut -d'/' -f-3) + results=$(echo "$results" | cut -d'/' -f4-) + results=$(echo "$results" | grep "$1") + + echo "$results" | tr ' ' '\n' | fzf | xargs -I {} nvim "$results_prefix"/{} else nvim "$results" fi