implementing home.file instead of xdg.config

This commit is contained in:
2026-03-01 21:03:54 +01:00
parent 9a87e37114
commit 1786fbd39e
11 changed files with 326 additions and 340 deletions
+312 -321
View File
File diff suppressed because it is too large Load Diff
@@ -12,7 +12,7 @@ in
];
# Sync repo wallpapers (including videos/) into ~/nixos_conf/wallpaperstuff
home.file."${userRelRoot}" = {
source = repoWallpaperDir;
source = lib.mkForce repoWallpaperDir;
recursive = true;
};
systemd.user.services.mpvpaper-wallpaper = {
+1 -1
View File
@@ -5,6 +5,6 @@ in
{
home.packages = [ pkgs.hypridle ];
home.file.".config/hypr/hypridle.conf" = {
source = hypridleConf;
source = lib.mkForce hypridleConf;
};
}
+1 -1
View File
@@ -21,7 +21,7 @@ in
};
# Gebruik home.file voor echte bestanden (geen symlinks)
home.file.".config/hypr/scripts/lid-lock.sh" = {
source = lidLockScript;
source = lib.mkForce lidLockScript;
executable = true;
};
xdg.portal = {
+2 -2
View File
@@ -7,9 +7,9 @@ in
home.packages = [ pkgs.hyprlock ];
# Gebruik home.file voor echte bestanden (geen symlinks)
home.file.".config/hypr/lock.png" = {
source = lockPngSrc;
source = lib.mkForce lockPngSrc;
};
home.file.".config/hypr/hyprlock.conf" = {
source = hyprlockConf;
source = lib.mkForce hyprlockConf;
};
}
+4 -4
View File
@@ -24,18 +24,18 @@ in
};
# Copy repo configs/scripts into ~/.config (als echte bestanden)
home.file."${targetRel}" = {
source = repoConf;
source = lib.mkForce repoConf;
};
home.file."${targetOverflowRel}" = {
source = repoOverflowScript;
source = lib.mkForce repoOverflowScript;
executable = true;
};
home.file."${targetPerMonitor}" = {
source = repoPerMonitorScript;
source = lib.mkForce repoPerMonitorScript;
executable = true;
};
home.file."${targetSwitchScript}" = {
source = repoSwitchScript;
source = lib.mkForce repoSwitchScript;
executable = true;
};
}
+2 -3
View File
@@ -10,10 +10,10 @@ in
home.packages = [ pkgs.hyprshell ];
# Gebruik home.file voor echte bestanden (geen symlinks)
home.file.".config/hyprshell/config.ron" = {
source = cfgRon;
source = lib.mkForce cfgRon;
};
home.file.".config/hyprshell/styles.css" = {
source = cssFile;
source = lib.mkForce cssFile;
};
# Autostart (systemd user service)
systemd.user.services.hyprshell = {
@@ -31,4 +31,3 @@ in
WantedBy = [ "graphical-session.target" ];
};
};
}
+1 -1
View File
@@ -7,7 +7,7 @@ in
{
# Ensure script exists in ~/.config/hypr/scripts/
home.file."${targetRel}" = {
source = repoScript;
source = lib.mkForce repoScript;
executable = true;
};
}
@@ -16,7 +16,7 @@ in
home.packages = [ pkgs.wpaperd ];
# Sync everything *except* wallpaper.conf into ~/nixos_conf/wallpaperstuff
home.file."${userRelRoot}" = {
source = repoWallpapersOnly;
source = lib.mkForce repoWallpapersOnly;
recursive = true;
};
# Now safely overwrite the config every activation (no HM collision)
+1 -1
View File
@@ -6,7 +6,7 @@ in
programs.waybar.enable = true;
programs.waybar.style = lib.mkForce ""; # Schakel standaardstijl uit
home.file.".config/waybar/config" = {
source = "${repoWaybarDir}/config.jsonc";
source = lib.mkForce "${repoWaybarDir}/config.jsonc";
};
# Overschrijf style.css handmatig na alle andere stappen
home.activation.waybarStyle = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
-4
View File
@@ -1,21 +1,17 @@
{ config, pkgs, lib, flakeRoot, ... }:
let
repoStarshipToml = flakeRoot.outPath + "/assets/conf/dev/terminal/starship.toml";
# The exact key that appears in the error:
targetKey = "${config.home.homeDirectory}/.config/starship.toml";
in
{
xdg.enable = true;
programs.starship = {
enable = true;
enableZshIntegration = true;
enableBashIntegration = true;
enableFishIntegration = true;
};
# Force the *actual conflicting option* (home.file."<abs path>".source)
home.file."${targetKey}".source = lib.mkForce repoStarshipToml;
}