Update Fedora state: 2026-04-29 11:50
This commit is contained in:
parent
42ca768584
commit
10f0d5de1d
338 changed files with 18983 additions and 32 deletions
38
dot_config/private_fish/functions/bkp.fish
Normal file
38
dot_config/private_fish/functions/bkp.fish
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
function bkp --description 'Log Fedora apps and sync to Git'
|
||||
set -l SOURCE (chezmoi source-path)
|
||||
|
||||
echo "Logging installed applications..."
|
||||
|
||||
# 1. Export DNF packages (Manually installed only)
|
||||
# Prefer 'dnf repoquery --userinstalled' when available (shows user-installed packages).
|
||||
if dnf repoquery --userinstalled --qf '%{name}\n' > /dev/null 2>&1
|
||||
dnf repoquery --userinstalled --qf '%{name}\n' > "$SOURCE/apps-dnf.txt"
|
||||
else
|
||||
# Fallback: list all installed RPMs (includes dependencies)
|
||||
rpm -qa --qf '%{NAME}\n' | sort -u > "$SOURCE/apps-dnf.txt"
|
||||
end
|
||||
|
||||
# 2. Export Flatpaks
|
||||
flatpak list --app --columns=application > "$SOURCE/apps-flatpak.txt"
|
||||
|
||||
# 3. Export VS Code extensions
|
||||
if command -v code > /dev/null
|
||||
code --list-extensions > "$SOURCE/vscode-extensions.txt"
|
||||
end
|
||||
|
||||
# 4. Sync to Git
|
||||
echo "Pushing to Hestia (Forgejo)..."
|
||||
cd "$SOURCE"
|
||||
# Ensure the remote has an 'origin' remote; add default if missing
|
||||
if not contains origin (git remote)
|
||||
git remote add origin git@git.breadway.dev:Breadway/dotfiles.git
|
||||
end
|
||||
git add .
|
||||
set -l _ts (date "+%Y-%m-%d %H:%M")
|
||||
git commit -m "Update Fedora state: $_ts" || true
|
||||
# Push current branch to origin (don't assume 'main')
|
||||
git push origin HEAD
|
||||
cd - >/dev/null
|
||||
|
||||
echo "System state backed up."
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue