dotfiles/home-manager/programs/topgrade.nix

37 lines
825 B
Nix

{ config, pkgs, ... }:
let
configPath =
if config.machine.isGeneric then
"${config.home.homeDirectory}/.config/home-manager"
else
"${config.home.homeDirectory}/.nixos-config";
in
{
programs.topgrade = {
enable = true;
settings = {
misc = {
assume_yes = true;
ignore_failures = [ "git_repos" ];
no_retry = true;
pre_sudo = false;
cleanup = true;
skip_notify = true;
disable = [
"bun"
"tldr"
"flutter"
"nix"
];
};
git.repos = [ configPath ];
firmware = {
upgrade = true;
};
pre_commands = {
flakeUpgrade = "cd ${configPath} && ${pkgs.nixVersions.latest}/bin/nix flake update --commit-lock-file --verbose --repair";
};
};
};
}