# ServerHub Configuration Example # Copyright (c) Nikolaos Protopapas. All rights reserved. # Licensed under the MIT License. # Default refresh interval (seconds) for all widgets default_refresh: 5 # Storage configuration (enabled by default) storage: enabled: true database_path: ~/.config/serverhub/serverhub.db retention_days: 30 cleanup_interval_hours: 1 max_database_size_mb: 500 auto_vacuum: true # Widget definitions widgets: # Example 1: Slower refresh in expanded view (reduce resource usage) alerts: path: alerts.sh refresh: 30 # Main dashboard: moderate updates expanded_refresh: 60 # Expanded dialog: slower (alerts change infrequently) pinned: false # Optional: SHA256 checksum for security validation # sha256: abc123... # Example 2: Real-time monitoring (keep same rate in both views) cpu: path: cpu.sh refresh: 2 # No expanded_refresh - keep real-time in both views pinned: false # Optional: Specify where to search for widget # location: bundled # bundled, custom, or auto (default) memory: path: memory.sh refresh: 2 # No expanded_refresh - real-time monitoring pinned: false # Example 3: Faster refresh in expanded view (detailed monitoring) disk: path: disk.sh refresh: 10 # Main dashboard: slower updates expanded_refresh: 5 # Expanded dialog: faster when viewing details pinned: false # Example 4: Very slow refresh (same for both views) updates: path: updates.sh refresh: 3600 # Check every hour # No expanded_refresh - hourly is appropriate for both views pinned: false # Layout configuration layout: # Simple list layout (responsive columns based on terminal width) order: - alerts # System health monitoring (first for visibility) - cpu - memory - disk - updates # Package updates # Alternative: Explicit grid layout (advanced) # rows: # - widgets: [alerts, cpu, memory] # - widgets: [disk, updates] # Optional: Custom breakpoints for responsive layout breakpoints: double: 100 # 100+ cols: 2 columns triple: 160 # 160+ cols: 3 columns quad: 220 # 220+ cols: 4 columns