# Host configuration for GuzioPadV4 # GuzioPad V4 host: GuzioPadV4 description: GuzioPad V4 # Import shared configurations (optional) #Example: #import: # - hosts/shared/laptop-common.yaml # Enabled modules enabled_modules: - base - system-packages-GuzioPadV4 - waydroid-init - hyprland-sddm-autologin #- hyprpm-update - forgiving-power-button - xdg-user-dirs - atama-branding - pipewire # Module processing mode # parallel: Collect and install all modules at once (faster, default) # sequential: Process modules one-by-one in enabled_modules order (more control) module_processing: parallel strict_package_order: false # Host-specific packages packages: [] # Exclude packages from base or modules exclude: [] # Configuration backup settings config_backups: enabled: true # Auto-backup on sync max_backups: 5 # Keep last 5 backups (0 = unlimited) # System backup settings system_backups: enabled: false # Global toggle for system backups backup_on_sync: false # Create backup during dcli sync backup_on_update: true # Create backup during dcli update tool: timeshift # Backup tool: timeshift or snapper snapper_config: root # Snapper config name (if using snapper) max_backups: 5 # Keep last N backups (0 = unlimited) # Settings flatpak_scope: system auto_prune: true #Note on what --prune (or this YAML option) actually does: It will NOT uninstall packages that are entirely unmanaged by DCli (as I thought it would) AND THAT'S BY DESIGN (not a bug/issue to report)! Instead, it will remove packages that once-were-in-your-DCli-config-but-were since removed. Kinda underwhelming, tbh; I'd be expecting that kind of behavior to be the default on a declarative system (and the the „extra” to be „we remove EVERYTHING that you don't actively track”), but I at least now understand what it does... Yay!(?) See: https://gitlab.com/theblackdon/dcli/-/work_items/6 # AUR helper to use (auto-detects paru or yay if not specified) aur_helper: yay # Options: paru, yay, or any AUR helper # Update hooks (optional - run scripts before/after system updates) #update_hooks: # pre_update: "scripts/pre-update.sh" # Run before system update # post_update: "scripts/post-update.sh" # Run after flatpak update # behavior: ask # Options: ask, always, once, skip # devel: false # Set to true to always use --devel flag (updates -git packages) services: enabled: - NetworkManager - NetworkManager-dispatcher - NetworkManager-wait-online - systemd-networkd-wait-online - bluetooth - cups - docker - getty@ - sddm disabled: [] scope: system # I don't think it's possible to let DCli manage both user and system services at the same time, so I'm commenting-out user services out of this for now #services: # enabled: # - hyprpolkitagent #ENABLE THIS MANUALLY!!!! # - wireplumber #Should be auto-enabled by the pipewire module, tho currently isn't because running-hooks-as-user is broken in DCli # - xdg-user-dirs #gets auto-enabled on package install; nothing needs to be done # disabled: [] # scope: user default_apps: scope: system browser: app.zen_browser.zen text_editor: org.onlyoffice.desktopeditors file_manager: open_folder terminal: null #apparently, this is related to the xdg-terminal-exec binary, which is an in-progress XDG standard - leaving it null for now video_player: org.videolan.VLC audio_player: org.videolan.VLC image_viewer: app.zen_browser.zen pdf_viewer: app.zen_browser.zen mime_types: {} #I had A LOT OF associations set up here, but it seems that dcli didn't auto-pull them, and I'm too lazy to migrate them manually, so I'm leaving this empty for now (I'll set up important ones manually as-I-encounter-them) # This magically appeared as I was syncing services and default apps. It doesn't seem to be documented anywhere, so I guess it's an in-progress feature - leaving it commented out for now. #theming: # scope: user # cursor: null # icons: null # theme: null # dark_or_light: null # font: null # gtk: null # qt: null # env_vars: {} #editor: null # #sync_sudo: false #auto_commit: false