moves home-manager to hostname specific configs

This commit is contained in:
Menno van Leeuwen 2024-11-02 21:05:14 +01:00
parent 1e7baa0365
commit 7134d0c29d
Signed by: vleeuwenmenno
SSH Key Fingerprint: SHA256:OJFmjANpakwD3F2Rsws4GLtbdz1TJ5tkQF0RZmF0TRE
27 changed files with 459 additions and 213 deletions

View File

@ -80,6 +80,7 @@ If you add a new system you should add the relevant files to these paths.
- `nconfig/nixos/hardware/`: Contains the hardware configurations for the different systems.
- `config/ssh/authorized_keys`: Contains the public keys per hostname that will be symlinked to the `~/.ssh/authorized_keys` file.
- `config/nixos/flake.nix`: Contains an array `nixosConfigurations` where you should be adding the new system hostname and relevant configuration.
- `config/home-manager/flake.nix`: Contains an array `homeConfigurations` where you should be adding the new system hostname and relevant configuration.
### Adding a new system

View File

@ -211,7 +211,7 @@ git_repos() {
}
homemanager() {
cd $HOME/dotfiles/config/home-manager && NIXPKGS_ALLOW_UNFREE=1 home-manager switch -b backup
cd $HOME/dotfiles/config/home-manager && NIXPKGS_ALLOW_UNFREE=1 home-manager switch -b backup --flake .#$DOTF_HOSTNAME
}
ensure_homemanager_installed() {

100
config/home-manager/flake.lock generated Normal file
View File

@ -0,0 +1,100 @@
{
"nodes": {
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1726989464,
"narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-24.05",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1730327045,
"narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "080166c15633801df010977d9d7474b4a6c549d7",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-go": {
"locked": {
"lastModified": 1728863046,
"narHash": "sha256-DZBO2465PL5V89e8hFSJewyH4QbCPpW3ssws7ckT/0A=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732",
"type": "github"
},
"original": {
"owner": "nixos",
"repo": "nixpkgs",
"rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732",
"type": "github"
}
},
"nixpkgs-vscode": {
"locked": {
"lastModified": 1728863046,
"narHash": "sha256-DZBO2465PL5V89e8hFSJewyH4QbCPpW3ssws7ckT/0A=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732",
"type": "github"
},
"original": {
"owner": "nixos",
"repo": "nixpkgs",
"rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732",
"type": "github"
}
},
"nixpkgs-zed": {
"locked": {
"lastModified": 1729850857,
"narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "41dea55321e5a999b17033296ac05fe8a8b5a257",
"type": "github"
},
"original": {
"owner": "nixos",
"repo": "nixpkgs",
"rev": "41dea55321e5a999b17033296ac05fe8a8b5a257",
"type": "github"
}
},
"root": {
"inputs": {
"home-manager": "home-manager",
"nixpkgs": "nixpkgs",
"nixpkgs-go": "nixpkgs-go",
"nixpkgs-vscode": "nixpkgs-vscode",
"nixpkgs-zed": "nixpkgs-zed"
}
}
},
"root": "root",
"version": 7
}

View File

@ -0,0 +1,95 @@
{
description = "menno's dotfiles";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
# Pinned versions for specific packages
nixpkgs-go.url = "github:nixos/nixpkgs/d4f247e89f6e10120f911e2e2d2254a050d0f732";
nixpkgs-vscode.url = "github:nixos/nixpkgs/d4f247e89f6e10120f911e2e2d2254a050d0f732";
nixpkgs-zed.url = "github:nixos/nixpkgs/41dea55321e5a999b17033296ac05fe8a8b5a257";
home-manager = {
url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs =
{
self,
nixpkgs,
nixpkgs-go,
nixpkgs-vscode,
nixpkgs-zed,
home-manager,
}:
let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
};
pkgs-go = import nixpkgs-go {
inherit system;
config.allowUnfree = true;
};
pkgs-vscode = import nixpkgs-vscode {
inherit system;
config.allowUnfree = true;
};
pkgs-zed = import nixpkgs-zed {
inherit system;
config.allowUnfree = true;
};
in
{
homeConfigurations = {
"mennos-gamingpc" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./home.nix ];
extraSpecialArgs = {
inherit
pkgs
pkgs-go
pkgs-vscode
pkgs-zed
;
isServer = false;
};
};
"mennos-server" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./home.nix ];
extraSpecialArgs = {
inherit pkgs pkgs-go;
isServer = true;
};
};
"mennos-laptop" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./home.nix ];
extraSpecialArgs = {
inherit
pkgs
pkgs-go
pkgs-vscode
pkgs-zed
;
isServer = false;
};
};
"homeserver-pc" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./home.nix ];
extraSpecialArgs = {
inherit pkgs pkgs-go;
isServer = true;
};
};
};
};
}

View File

@ -1,116 +1,40 @@
{ config, pkgs, ... }:
{
imports = [
./packages/default.nix
./fonts.nix
./gnome-extensions.nix
./dconf.nix
./keyboard-shortcuts.nix
./virtualization.nix
./packages.nix
];
config,
pkgs,
lib,
isServer ? false,
...
}:
{
programs.home-manager.enable = true;
nixpkgs.config = {
allowUnfree = true;
allowUnfreePredicate = pkg: true;
};
home.username = "menno";
home.homeDirectory = "/home/menno";
home.stateVersion = "24.05";
imports =
[ ./packages/common/default.nix ]
++ (
if isServer then
[
./packages/server/default.nix
./server/default.nix
]
else
[
./packages/workstation/default.nix
./workstation/default.nix
]
);
# Default applications
xdg.mimeApps = {
enable = true;
defaultApplications = {
# Zen Browser
"application/xhtml+xml" = [ "io.github.zen_browser.zen.desktop" ];
"text/html" = [ "io.github.zen_browser.zen.desktop" ];
"x-scheme-handler/http" = [ "io.github.zen_browser.zen.desktop" ];
"x-scheme-handler/https" = [ "io.github.zen_browser.zen.desktop" ];
# Geary
"x-scheme-handler/mailto" = [ "org.gnome.Geary.desktop" ];
# Loupe (Image Viewer)
"image/jpeg" = [ "org.gnome.Loupe.desktop" ];
"image/png" = [ "org.gnome.Loupe.desktop" ];
"image/gif" = [ "org.gnome.Loupe.desktop" ];
"image/webp" = [ "org.gnome.Loupe.desktop" ];
"image/tiff" = [ "org.gnome.Loupe.desktop" ];
"image/x-tga" = [ "org.gnome.Loupe.desktop" ];
"image/vnd-ms.dds" = [ "org.gnome.Loupe.desktop" ];
"image/x-dds" = [ "org.gnome.Loupe.desktop" ];
"image/bmp" = [ "org.gnome.Loupe.desktop" ];
"image/vnd.microsoft.icon" = [ "org.gnome.Loupe.desktop" ];
"image/vnd.radiance" = [ "org.gnome.Loupe.desktop" ];
"image/x-exr" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-bitmap" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-graymap" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-pixmap" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-anymap" = [ "org.gnome.Loupe.desktop" ];
"image/x-qoi" = [ "org.gnome.Loupe.desktop" ];
"image/svg+xml" = [ "org.gnome.Loupe.desktop" ];
"image/svg+xml-compressed" = [ "org.gnome.Loupe.desktop" ];
"image/avif" = [ "org.gnome.Loupe.desktop" ];
"image/heic" = [ "org.gnome.Loupe.desktop" ];
"image/jxl" = [ "org.gnome.Loupe.desktop" ];
# VLC (Video Player)
"video/x-ogm+ogg" = [ "vlc.desktop" ];
"video/3gp" = [ "vlc.desktop" ];
"video/3gpp" = [ "vlc.desktop" ];
"video/3gpp2" = [ "vlc.desktop" ];
"video/dv" = [ "vlc.desktop" ];
"video/divx" = [ "vlc.desktop" ];
"video/fli" = [ "vlc.desktop" ];
"video/flv" = [ "vlc.desktop" ];
"video/mp2t" = [ "vlc.desktop" ];
"video/mp4" = [ "vlc.desktop" ];
"video/mp4v-es" = [ "vlc.desktop" ];
"video/mpeg" = [ "vlc.desktop" ];
"video/mpeg-system" = [ "vlc.desktop" ];
"video/msvideo" = [ "vlc.desktop" ];
"video/ogg" = [ "vlc.desktop" ];
"video/quicktime" = [ "vlc.desktop" ];
"video/vnd.divx" = [ "vlc.desktop" ];
"video/vnd.mpegurl" = [ "vlc.desktop" ];
"video/vnd.rn-realvideo" = [ "vlc.desktop" ];
"video/webm" = [ "vlc.desktop" ];
"video/x-anim" = [ "vlc.desktop" ];
"video/x-avi" = [ "vlc.desktop" ];
"video/x-flc" = [ "vlc.desktop" ];
"video/x-fli" = [ "vlc.desktop" ];
"video/x-flv" = [ "vlc.desktop" ];
"video/x-m4v" = [ "vlc.desktop" ];
"video/x-matroska" = [ "vlc.desktop" ];
"video/x-mpeg" = [ "vlc.desktop" ];
"video/x-mpeg2" = [ "vlc.desktop" ];
"video/x-ms-asf" = [ "vlc.desktop" ];
"video/x-ms-asf-plugin" = [ "vlc.desktop" ];
"video/x-ms-asx" = [ "vlc.desktop" ];
"video/x-msvideo" = [ "vlc.desktop" ];
"video/x-ms-wm" = [ "vlc.desktop" ];
"video/x-ms-wmv" = [ "vlc.desktop" ];
"video/x-ms-wmx" = [ "vlc.desktop" ];
"video/x-ms-wvx" = [ "vlc.desktop" ];
"video/x-nsv" = [ "vlc.desktop" ];
"video/x-theora" = [ "vlc.desktop" ];
"video/x-theora+ogg" = [ "vlc.desktop" ];
"video/x-ogm" = [ "vlc.desktop" ];
"video/avi" = [ "vlc.desktop" ];
"video/x-mpeg-system" = [ "vlc.desktop" ];
# Totem (for those few formats that default to it)
"video/vivo" = [ "org.gnome.Totem.desktop" ];
"video/vnd.vivo" = [ "org.gnome.Totem.desktop" ];
"video/x-flic" = [ "org.gnome.Totem.desktop" ];
"video/x-mjpeg" = [ "org.gnome.Totem.desktop" ];
"video/x-totem-stream" = [ "org.gnome.Totem.desktop" ];
home = {
username = "menno";
homeDirectory = "/home/menno";
stateVersion = "24.05";
sessionVariables = {
PATH = "${config.home.homeDirectory}/go/bin:$PATH"; # Removed extra asterisks
};
};
home.sessionVariables = {
PATH = "${config.home.homeDirectory}/go/bin:$PATH";
};
}

View File

@ -0,0 +1,12 @@
{
config,
pkgs,
pkgs-go,
...
}:
{
programs.go = {
enable = true;
package = pkgs-go.go;
};
}

View File

@ -86,46 +86,5 @@
cmatrix
figlet
lolcat
# GUI Applications
## Utilities
mission-center
flameshot
gnome.gnome-tweaks
pinta
bottles
trayscale
spacedrive
## Chat Apps
telegram-desktop
betterdiscordctl
vesktop
whatsapp-for-linux
signal-desktop
## Multimedia
spotify
plex-media-player
vlc
## Astronomy
stellarium
## Games
### Open-source games
openra
xonotic
mindustry
wesnoth
shattered-pixel-dungeon
### Games launchers
lutris
heroic
### Game utilities
protonup-qt
protontricks
];
}

View File

@ -1,15 +0,0 @@
{ config, pkgs, ... }:
let
pinnedPkgs = import (fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/d4f247e89f6e10120f911e2e2d2254a050d0f732.tar.gz";
# Update this SHA256 when a new version is required ^^^
# You can find them here: https://www.nixhub.io/packages/vscode
}) { };
in
{
# Use the pinned Go for the programs configuration
programs.go = {
enable = true;
package = pinnedPkgs.go;
};
}

View File

@ -0,0 +1,12 @@
{ config, pkgs, ... }:
let
files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ];
# Import all other .nix files as modules
moduleFiles = builtins.map (fname: ./. + "/${fname}") (builtins.attrNames files);
in
{
# Import all the package modules
imports = moduleFiles;
}

View File

@ -0,0 +1,4 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [ ];
}

View File

@ -0,0 +1,12 @@
{ config, pkgs, ... }:
let
files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ];
# Import all other .nix files as modules
moduleFiles = builtins.map (fname: ./. + "/${fname}") (builtins.attrNames files);
in
{
# Import all the package modules
imports = moduleFiles;
}

View File

@ -0,0 +1,49 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
# GUI Applications
## Utilities
mission-center
flameshot
gnome.gnome-tweaks
pinta
bottles
trayscale
spacedrive
## Chat Apps
telegram-desktop
betterdiscordctl
vesktop
whatsapp-for-linux
signal-desktop
## Multimedia
spotify
plex-media-player
vlc
## Astronomy
stellarium
## Games
### Open-source games
openra
xonotic
mindustry
wesnoth
shattered-pixel-dungeon
### Games launchers
lutris
heroic
### Game utilities
protonup-qt
protontricks
### Virtualization
virt-manager
virt-viewer
];
}

View File

@ -1,16 +1,13 @@
{ pkgs, ... }:
let
pinnedPkgs = import (fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/d4f247e89f6e10120f911e2e2d2254a050d0f732.tar.gz";
# Update this SHA256 when a new version is required ^^^
# You can find them here: https://www.nixhub.io/packages/vscode
}) { };
in
{
# Use the pinned VSCode for the programs.vscode configuration
config,
pkgs,
pkgs-vscode,
...
}:
{
programs.vscode = {
enable = true;
package = pinnedPkgs.vscode;
package = pkgs-vscode.vscode;
mutableExtensionsDir = true;
extensions = with pkgs.vscode-extensions; [
ms-azuretools.vscode-docker
@ -42,17 +39,5 @@ in
github.copilot
github.copilot-chat
];
# ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
# {
# name = "warpnet.salt-lint";
# publisher = "warpnet";
# version = "latest";
# }
# {
# name = "mguellsegarra.highlight-on-copy";
# publisher = "mguellsegarra";
# version = "latest";
# }
# ];
};
}

View File

@ -0,0 +1,9 @@
{
config,
pkgs,
pkgs-zed,
...
}:
{
home.packages = [ pkgs-zed.zed-editor ];
}

View File

@ -1,14 +0,0 @@
{ config, pkgs, ... }:
let
pinnedPkgs = import (fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/41dea55321e5a999b17033296ac05fe8a8b5a257.tar.gz";
# Update this SHA256 when a new version is required ^^^
# You can find them here: https://www.nixhub.io/packages/zed-editor
}) { };
in
{
# Add zed-editor to your home packages
home.packages = [
pinnedPkgs.zed-editor
];
}

View File

@ -0,0 +1,12 @@
{ config, pkgs, ... }:
let
files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ];
# Import all other .nix files as modules
moduleFiles = builtins.map (fname: ./. + "/${fname}") (builtins.attrNames files);
in
{
# Import all the package modules
imports = moduleFiles;
}

View File

@ -1,9 +0,0 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
virt-manager
virt-viewer
qemu
OVMF
];
}

View File

@ -0,0 +1,93 @@
{ config, pkgs, ... }:
{
# Default applications
xdg.mimeApps = {
enable = true;
defaultApplications = {
# Zen Browser
"application/xhtml+xml" = [ "io.github.zen_browser.zen.desktop" ];
"text/html" = [ "io.github.zen_browser.zen.desktop" ];
"x-scheme-handler/http" = [ "io.github.zen_browser.zen.desktop" ];
"x-scheme-handler/https" = [ "io.github.zen_browser.zen.desktop" ];
# Geary
"x-scheme-handler/mailto" = [ "org.gnome.Geary.desktop" ];
# Loupe (Image Viewer)
"image/jpeg" = [ "org.gnome.Loupe.desktop" ];
"image/png" = [ "org.gnome.Loupe.desktop" ];
"image/gif" = [ "org.gnome.Loupe.desktop" ];
"image/webp" = [ "org.gnome.Loupe.desktop" ];
"image/tiff" = [ "org.gnome.Loupe.desktop" ];
"image/x-tga" = [ "org.gnome.Loupe.desktop" ];
"image/vnd-ms.dds" = [ "org.gnome.Loupe.desktop" ];
"image/x-dds" = [ "org.gnome.Loupe.desktop" ];
"image/bmp" = [ "org.gnome.Loupe.desktop" ];
"image/vnd.microsoft.icon" = [ "org.gnome.Loupe.desktop" ];
"image/vnd.radiance" = [ "org.gnome.Loupe.desktop" ];
"image/x-exr" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-bitmap" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-graymap" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-pixmap" = [ "org.gnome.Loupe.desktop" ];
"image/x-portable-anymap" = [ "org.gnome.Loupe.desktop" ];
"image/x-qoi" = [ "org.gnome.Loupe.desktop" ];
"image/svg+xml" = [ "org.gnome.Loupe.desktop" ];
"image/svg+xml-compressed" = [ "org.gnome.Loupe.desktop" ];
"image/avif" = [ "org.gnome.Loupe.desktop" ];
"image/heic" = [ "org.gnome.Loupe.desktop" ];
"image/jxl" = [ "org.gnome.Loupe.desktop" ];
# VLC (Video Player)
"video/x-ogm+ogg" = [ "vlc.desktop" ];
"video/3gp" = [ "vlc.desktop" ];
"video/3gpp" = [ "vlc.desktop" ];
"video/3gpp2" = [ "vlc.desktop" ];
"video/dv" = [ "vlc.desktop" ];
"video/divx" = [ "vlc.desktop" ];
"video/fli" = [ "vlc.desktop" ];
"video/flv" = [ "vlc.desktop" ];
"video/mp2t" = [ "vlc.desktop" ];
"video/mp4" = [ "vlc.desktop" ];
"video/mp4v-es" = [ "vlc.desktop" ];
"video/mpeg" = [ "vlc.desktop" ];
"video/mpeg-system" = [ "vlc.desktop" ];
"video/msvideo" = [ "vlc.desktop" ];
"video/ogg" = [ "vlc.desktop" ];
"video/quicktime" = [ "vlc.desktop" ];
"video/vnd.divx" = [ "vlc.desktop" ];
"video/vnd.mpegurl" = [ "vlc.desktop" ];
"video/vnd.rn-realvideo" = [ "vlc.desktop" ];
"video/webm" = [ "vlc.desktop" ];
"video/x-anim" = [ "vlc.desktop" ];
"video/x-avi" = [ "vlc.desktop" ];
"video/x-flc" = [ "vlc.desktop" ];
"video/x-fli" = [ "vlc.desktop" ];
"video/x-flv" = [ "vlc.desktop" ];
"video/x-m4v" = [ "vlc.desktop" ];
"video/x-matroska" = [ "vlc.desktop" ];
"video/x-mpeg" = [ "vlc.desktop" ];
"video/x-mpeg2" = [ "vlc.desktop" ];
"video/x-ms-asf" = [ "vlc.desktop" ];
"video/x-ms-asf-plugin" = [ "vlc.desktop" ];
"video/x-ms-asx" = [ "vlc.desktop" ];
"video/x-msvideo" = [ "vlc.desktop" ];
"video/x-ms-wm" = [ "vlc.desktop" ];
"video/x-ms-wmv" = [ "vlc.desktop" ];
"video/x-ms-wmx" = [ "vlc.desktop" ];
"video/x-ms-wvx" = [ "vlc.desktop" ];
"video/x-nsv" = [ "vlc.desktop" ];
"video/x-theora" = [ "vlc.desktop" ];
"video/x-theora+ogg" = [ "vlc.desktop" ];
"video/x-ogm" = [ "vlc.desktop" ];
"video/avi" = [ "vlc.desktop" ];
"video/x-mpeg-system" = [ "vlc.desktop" ];
# Totem (for those few formats that default to it)
"video/vivo" = [ "org.gnome.Totem.desktop" ];
"video/vnd.vivo" = [ "org.gnome.Totem.desktop" ];
"video/x-flic" = [ "org.gnome.Totem.desktop" ];
"video/x-mjpeg" = [ "org.gnome.Totem.desktop" ];
"video/x-totem-stream" = [ "org.gnome.Totem.desktop" ];
};
};
}

View File

@ -0,0 +1,12 @@
{ config, pkgs, ... }:
let
files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ];
# Import all other .nix files as modules
moduleFiles = builtins.map (fname: ./. + "/${fname}") (builtins.attrNames files);
in
{
# Import all the package modules
imports = moduleFiles;
}

View File

@ -1,6 +1,12 @@
{ config, pkgs, ... }: {
{ config, pkgs, ... }:
{
boot.kernelModules = [ "kvm-amd" ];
environment.systemPackages = with pkgs; [
qemu
OVMF
];
virtualisation = {
docker = {
enable = true;

View File

@ -8,8 +8,7 @@ if [ -f $HOME/.dotfiles-setup ]; then
exit 0
fi
# Check if nixos-version is available
ensure_nixos() {
install_nix() {
if [ -x "$(command -v nixos-version)" ]; then
tput setaf 2
echo "Detected NixOS, skipping Nix setup."
@ -151,9 +150,9 @@ prepare_hostname() {
}
prepare_hostname
ensure_nixos
install_home_manager
setup_symlinks
install_nix
install_home_manager
# Rebuild NixOS
cd $HOME/dotfiles/config/nixos && sudo nixos-rebuild switch --flake .#$DOTF_HOSTNAME --impure
@ -165,7 +164,7 @@ if [ $? -ne 0 ]; then
fi
# Rebuild Home Manager
cd $HOME/dotfiles/config/home-manager && NIXPKGS_ALLOW_UNFREE=1 home-manager switch
cd $HOME/dotfiles/config/home-manager && NIXPKGS_ALLOW_UNFREE=1 home-manager switch --flake .#$DOTF_HOSTNAME --impure
if [ $? -ne 0 ]; then
tput setaf 1
echo "Failed to rebuild Home Manager. Exiting..."