From 285d7ba92f7725c5d51d05a1437fc473b88cf472 Mon Sep 17 00:00:00 2001 From: Brian Zalewski Date: Sat, 15 Apr 2023 23:34:26 +0000 Subject: [PATCH] Update 3 files - /home/dot_config/task/Taskfile.yml - /home/dot_local/bin/executable_install-program - /software.yml --- home/dot_config/task/Taskfile.yml | 95 ++++++++++++++++++- home/dot_local/bin/executable_install-program | 2 + software.yml | 2 +- 3 files changed, 94 insertions(+), 5 deletions(-) diff --git a/home/dot_config/task/Taskfile.yml b/home/dot_config/task/Taskfile.yml index 598f9bc1..c8e525d4 100644 --- a/home/dot_config/task/Taskfile.yml +++ b/home/dot_config/task/Taskfile.yml @@ -41,6 +41,22 @@ tasks: printf '%s' "$(echo "$selected" | jq -r '.login.password')" | $COPY brave:profile:backup: + vars: + AppName: Brave Browser + RcloneRepository: brave + summary: | + # {{ .AppName }} Profile Backup + + This command backups the {{ .AppName }} user data profile to an S3-backed Restic repository if the profile exists. If the repository + has not been initialized then it will initialize it. After you backup the profile, you can restore it with the + `{{ .RcloneRepository }}:profile:restore` command like so: + + ``` + run {{ .RcloneRepository }}:profile:restore + ``` + + The {{ .AppName }} backup is encrypted with the same key that Chezmoi uses (stored in `~/.config/age/chezmoi.txt`, by default). + The backup uses Restic so all the functionality that Restic offers is available with backups made by this command. cmds: - task: profile:backup vars: @@ -58,6 +74,22 @@ tasks: RcloneRepository: brave chrome:profile:backup: + vars: + AppName: Chrome + RcloneRepository: chrome + summary: | + # {{ .AppName }} Profile Backup + + This command backups the {{ .AppName }} user data profile to an S3-backed Restic repository if the profile exists. If the repository + has not been initialized then it will initialize it. After you backup the profile, you can restore it with the + `{{ .RcloneRepository }}:profile:restore` command like so: + + ``` + run {{ .RcloneRepository }}:profile:restore + ``` + + The {{ .AppName }} backup is encrypted with the same key that Chezmoi uses (stored in `~/.config/age/chezmoi.txt`, by default). + The backup uses Restic so all the functionality that Restic offers is available with backups made by this command. cmds: - task: profile:backup vars: @@ -75,6 +107,22 @@ tasks: RcloneRepository: chrome edge:profile:backup: + vars: + AppName: Microsoft Edge + RcloneRepository: edge + summary: | + # {{ .AppName }} Profile Backup + + This command backups the {{ .AppName }} user data profile to an S3-backed Restic repository if the profile exists. If the repository + has not been initialized then it will initialize it. After you backup the profile, you can restore it with the + `{{ .RcloneRepository }}:profile:restore` command like so: + + ``` + run {{ .RcloneRepository }}:profile:restore + ``` + + The {{ .AppName }} backup is encrypted with the same key that Chezmoi uses (stored in `~/.config/age/chezmoi.txt`, by default). + The backup uses Restic so all the functionality that Restic offers is available with backups made by this command. cmds: - task: profile:backup vars: @@ -93,14 +141,21 @@ tasks: ferdium:profile:backup: desc: Imports the user's Ferdium profile from the CloudFlare R2 Restic repository for Ferdium + vars: + AppName: Ferdium + RcloneRepository: ferdium summary: | - # Ferdium Profile Backup + # {{ .AppName }} Profile Backup - This command backups the Ferdium profile to the S3-backed Restic repository, if the profile exists. If the repository + This command backups the {{ .AppName }} user data profile to an S3-backed Restic repository if the profile exists. If the repository has not been initialized then it will initialize it. After you backup the profile, you can restore it with the - `ferdium:profile:restore` command. + `{{ .RcloneRepository }}:profile:restore` command like so: - The Ferdium backup is encrypted with the same key that Chezmoi uses (stored in `~/.config/age/chezmoi.txt`, by default). + ``` + run {{ .RcloneRepository }}:profile:restore + ``` + + The {{ .AppName }} backup is encrypted with the same key that Chezmoi uses (stored in `~/.config/age/chezmoi.txt`, by default). The backup uses Restic so all the functionality that Restic offers is available with backups made by this command. cmds: - task: profile:backup @@ -130,6 +185,22 @@ tasks: RcloneRepository: ferdium firefox:profile:backup: + vars: + AppName: Firefox + RcloneRepository: firefox + summary: | + # {{ .AppName }} Profile Backup + + This command backups the {{ .AppName }} user data profile to an S3-backed Restic repository if the profile exists. If the repository + has not been initialized then it will initialize it. After you backup the profile, you can restore it with the + `{{ .RcloneRepository }}:profile:restore` command like so: + + ``` + run {{ .RcloneRepository }}:profile:restore + ``` + + The {{ .AppName }} backup is encrypted with the same key that Chezmoi uses (stored in `~/.config/age/chezmoi.txt`, by default). + The backup uses Restic so all the functionality that Restic offers is available with backups made by this command. cmds: - task: profile:backup vars: @@ -157,6 +228,22 @@ tasks: echo -e " \e[9mStrikethrough\e[0m" librewolf:profile:backup: + vars: + AppName: LibreWolf + RcloneRepository: librewolf + summary: | + # {{ .AppName }} Profile Backup + + This command backups the {{ .AppName }} user data profile to an S3-backed Restic repository if the profile exists. If the repository + has not been initialized then it will initialize it. After you backup the profile, you can restore it with the + `{{ .RcloneRepository }}:profile:restore` command like so: + + ``` + run {{ .RcloneRepository }}:profile:restore + ``` + + The {{ .AppName }} backup is encrypted with the same key that Chezmoi uses (stored in `~/.config/age/chezmoi.txt`, by default). + The backup uses Restic so all the functionality that Restic offers is available with backups made by this command. cmds: - task: profile:backup vars: diff --git a/home/dot_local/bin/executable_install-program b/home/dot_local/bin/executable_install-program index a5c4b70b..b94d88e4 100644 --- a/home/dot_local/bin/executable_install-program +++ b/home/dot_local/bin/executable_install-program @@ -588,6 +588,8 @@ async function afterInstall(packageManager) { } else if (packageManager === 'basher') { } else if (packageManager === 'binary') { } else if (packageManager === 'brew' || packageManager === 'cask') { + log('info', logStage, `Ensuring Homebrew cleanup is run`) + await $`brew cleanup` } else if (packageManager === 'cargo') { } else if (packageManager === 'choco') { } else if (packageManager === 'crew') { diff --git a/software.yml b/software.yml index 04d7c0f2..683fbe96 100644 --- a/software.yml +++ b/software.yml @@ -7113,7 +7113,7 @@ softwarePackages: _home: https://taskfile.dev _name: Task _type: cli - brew: go-task/tap/go-task + brew: task choco: go-task github: github.com/go-task/task go: github.com/go-task/task/v3/cmd/task@latest