nixos-config/users/home-manager/foo-dogsquared/modules/dotfiles.nix

35 lines
981 B
Nix

{ config, lib, pkgs, ... }:
let
userCfg = config.users.foo-dogsquared;
cfg = userCfg.dotfiles;
dotfiles = config.lib.file.mkOutOfStoreSymlink config.home.mutableFile."library/dotfiles".path;
getDotfiles = path: "${dotfiles}/${path}";
in
{
options.users.foo-dogsquared.dotfiles.enable = lib.mkEnableOption "custom outside dotfiles for other programs";
config = lib.mkIf cfg.enable {
# Fetching my dotfiles,...
home.mutableFile."library/dotfiles" = {
url = "https://github.com/foo-dogsquared/dotfiles.git";
type = "git";
};
# Add the custom scripts here.
home.sessionPath = [
"${config.home.mutableFile."library/dotfiles".path}/bin"
];
# All of the personal configurations.
xdg.configFile = {
doom.source = getDotfiles "emacs";
kitty.source = getDotfiles "kitty";
nvim.source = getDotfiles "nvim";
nyxt.source = getDotfiles "nyxt";
wezterm.source = getDotfiles "wezterm";
};
};
}