# ===========================
# 1. SECRETS (Must Block)
# ===========================
.env
.env.*
*.key
*.cert
*.pem
*.crt
*.tfstate
*.tfvars

# ===========================
# 2. GLOBAL GENERICS
# ===========================
**/logs/
**/log/
**/cache/
**/tmp/
**/temp/
**/backups/
**/Backups/
**/BT_Backup/
*.DS_Store
Thumbs.db
*.fastresume
*.torrent
*.jpg
*.vtt
lost+found

# ===========================
# 3. DATABASES (Heavy Data)
# ===========================
**/db/
**/mysql/
**/postgres/
**/postgres_data/
**/prometheus-db/
**/grafana-db/
**/alertmanager-db/
**/stash-db/
**/wud-db/
**/pg_subtrans
**/pg_wal
**/index-v2/
*.db-shm
**/komodo-postgres/
*.db
*.db-wal

# ===========================
# 4. SERVARR STACK (Radarr/Sonarr/Lidarr)
# ===========================
# The posters/banners (Huge)
MediaCover/
# Error reporting cache
Sentry/
# ASP.NET temporary files
asp/
# Dupeguru scan results
scans/

# ===========================
# 5. MEDIA SERVERS (Plex/Jellyfin)
# ===========================
# Plex Metadata (Can be GBs in size)
**/Library/
**/transcode/
# Jellyfin metadata (if local)
**/metadata/

# ===========================
# 6. APP SPECIFIC
# ===========================
# SMTP Relay Queue
**/queue/
# Node-Red dependencies
**/node_modules/
# Frigate database/clips
**/frigate/
# Home Assistant State Registry (Contains secrets)
**/.storage/
# Text-to-speech cache
**/tts/
# Stash scrapers (often binary/heavy)
**/scrapers/
**/smf/

# ===========================
# KOMODO DEPLOYMENT MANAGER
# ===========================
# Ignore Komodo's internal cache of git repos
**/komodo/repo-cache/
**/komodo/core-etc/repos/
**/komodo/periphery-etc/repos/
# Ignore build artifacts
**/komodo/builders/

# ===========================
# 🚨 CRITICAL EXCLUSIONS 🚨
# ===========================

# 1. Gitea Data (PREVENTS INFINITE LOOP)
# This is where Gitea stores the bare repos. Never commit this.
**/gitea/git/
**/gitea/gitea/
**/gitea/ssh/

# 2. Komodo Internals (Huge Cache)
**/komodo/repo-cache/
**/komodo/periphery-etc/
**/komodo/builders/

# 3. Media & Assets (Huge User Data)
**/stash/data/
**/MediaCover/
**/metadata/

# 4. Jellyfin Cache/Metadata (Often inside config)
**/jellyfin/config/metadata/
**/jellyfin/config/data/
**/jellyfin/config/cache/

# ===========================
# HOME ASSISTANT CLEANUP
# ===========================
# System Cache & History
**/.cache/
.ash_history
.bash_history
.HA_VERSION

# ===========================
# TECHNITIUM CLEANUP
# ===========================
# Downloaded Apps/Plugins (Binaries, Zips, DLLs)
**/technitium/config/apps/
# Blocklists
**/technitium/config/blocklists/


# ===========================
# HOME ASSISTANT CLEANUP
# ===========================
# 1. Internal Caches & History
**/.cache/
**/.storage/
**/.HA_VERSION
**/.ash_history
**/.bash_history
**/.cloud/
**/custom_components/

# 2. Dependencies (The 2000+ files usually live here)
**/deps/
**/lib/
**/site-packages/
**/__pycache__/

# 3. Media & Backups
**/tts/
**/backups/
**/www/
**/blueprints/

# 4. Databases & Logs
*.db
*.db-shm
*.db-wal
*.log

# ===========================
# DATABASE & BACKUP BLOCKER
# ===========================
# Block all SQLite databases (Duplicati, Manyfold, Govee, etc.)
*.sqlite
*.sqlite3
*.sqlite-wal
*.sqlite-shm
*.db
*.db3

# Block Large Binaries & Backups
*.tar
*.tar.gz
*.zip
*.7z
*.mmdb
*.iso

# ===========================
# APP SPECIFIC
# ===========================
# Duplicati: Block the heavy local databases, keep only json configs if needed
**/duplicati/data/
**/duplicati/config/*.sqlite

# QBittorrent: Block GeoIP databases
**/GeoDB/


# Local setup folders
.terraform/

# State backup files (The cause of your current error)
*.tfstate.backup
*.tfstate.*.backup

# Crash logs
crash.log

# Ignore local secret files (if you use them)
*.tfvars.json
override.tf
override.tf.json