Merged
Conversation
- Introduced AUR_HELPER variable to prefer 'paru' if available, falling back to 'yay'. - Updated package installation and verification functions to utilize the selected AUR helper. - Improved error handling and user feedback during AUR package operations. - Added checks for required packages before attempting to install AUR helpers.
- Added AUR_HELPER_CHECKED variable to prevent duplicate checks and installations of AUR helpers within a single run. - Updated check_yay function to set AUR_HELPER_CHECKED after determining the available AUR helper. - Improved user feedback during AUR helper detection and installation process.
- Added support for Manjaro by using pacman-mirrors for mirror updates. - Implemented checks for the installation of pacman-mirrors and provided user feedback. - Updated the existing reflector command to remove hardcoded country specifications for improved flexibility.
…dling - Added support for explicit directory overrides via environment variables for Hyprland setup. - Improved directory search logic to include additional common user directories and increased search depth. - Implemented checks to skip Timeshift installation and configuration if CachyOS Snapper support is detected, providing user feedback accordingly.
… obsolete script - Changed warning messages in setup script to use print_message for consistency. - Enhanced PAM configuration warning to include detailed instructions. - Removed deprecated check_gnome_keyring_pam.sh script and updated autostart configuration to use check_setup_warnings.sh instead. - Introduced StepSeverity enum in the UI to categorize setup section statuses (None, Warning, Error) for better visual feedback. - Updated log handling to follow output and reflect severity in the UI.
- Implemented a mechanism to follow the PAM include chain for gnome-keyring configuration, ensuring modifications are made to the deepest relevant file. - Updated verification logic to check PAM configurations across all candidate files. - Improved UI layout in the menu by adjusting widget rendering and adding a legend for better user guidance.
…ity and safety - Simplified the logic for determining PAM include candidates, reducing complexity while maintaining functionality. - Updated the warning message to specify preferred configuration files for gnome-keyring, enhancing user guidance. - Ensured safer write target selection for PAM configurations, prioritizing system-local-login if available.
…p script - Changed the pacman update command from `-Syu` to `-Syyu` for better handling of package database synchronization. - Refactored the method of appending PAM configurations for gnome-keyring to use `printf` instead of `echo`, enhancing safety and reliability in file modifications.
…t template for clarity
There was a problem hiding this comment.
Pull Request Overview
This PR enhances AUR helper detection to support both paru and yay (preferring paru), adds visual severity indicators (warnings/errors) to the Rust TUI, and includes improvements to directory detection, PAM configuration handling, and Manjaro/CachyOS support.
Key changes:
- AUR helper detection now checks for
parufirst, falls back toyay, and setsAUR_HELPERvariable with state tracking to avoid duplicate checks - Rust UI now tracks and displays step severity (Error/Warning/None) with color-coded indicators and a legend
- Enhanced directory detection with multiple fallback strategies including git root, environment variables, and deeper search paths
Reviewed Changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| setup.sh | Implements AUR helper detection (check_yay), replaces hardcoded yay with $AUR_HELPER, improves directory detection, enhances PAM configuration handling, adds Manjaro/CachyOS-specific logic |
| src/main.rs | Adds StepSeverity enum and tracking, implements color-coded severity display in UI, adds legend for severity indicators, enables auto-follow for output pane |
| dotfiles/.config/hypr/scripts/check_setup_warnings.sh | New script to parse setup logs and notify users of warnings via desktop notifications |
| dotfiles/.config/hypr/sources_example/autostart.conf | Adds autostart entry for the new warning check script |
| .github/PULL_REQUEST_TEMPLATE.md | New PR template with standardized sections |
| .github/ISSUE_TEMPLATE/bug_report.md | Updated bug report template fields |
| .gitignore | Added Documents/* to ignore list |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…logic. Added checks for AUR helper presence before executing commands and updated logging for better clarity. Adjusted indentation for consistency.
… script for Windows and dry-run modes, while ensuring AUR helper checks are still performed. Enhanced logging for clarity on skipped operations.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR enhances AUR helper detection and support in the setup script, adding support for both
paruandyaywith preference forparu. It also improves the Rust UI to display warning and error states visually, and includes various improvements to directory detection, PAM configuration handling, and script reliability.The main improvements include:
paruoveryay, with proper state tracking to avoid duplicate checksType of change
How to test
List exact steps and commands to verify the change. Include flags like
--dry-runwhen appropriate.Checklist
cargo fmt --allran without changes (if Rust changes)cargo clippy --all-targets --all-features -- -D warningsis clean (if Rust changes)cargo test -- --test-threads=1passes (if Rust changes)Images/if applicable--dry-runand degrade gracefully ifpacman/paru/yayare unavailablehyprland-simple-setup-gitrepos)Notes for reviewers
AUR_HELPER_CHECKEDflag prevents duplicate AUR helper checks within a single script run, improving performanceparu(if available) →yay(if available) → installyay(if neither available)yayreferences have been replaced with the$AUR_HELPERvariable for consistency[error],[warning],[!]patterns to determine step severityAUR_HELPER_CHECKED=trueto prevent errorscheck_setup_warnings.shscript provides additional setup validationBreaking changes
None. This is backward compatible - existing setups using
yaywill continue to work, and the script will now also supportparuif available.Additional context
setup.sh) and the Rust TUI application (src/main.rs)check_setup_warnings.shhas been added to the dotfiles configuration