Skip to content

Releases: CachyOS/chwd

1.10.1

10 Nov 22:04
e8694fa
Compare
Choose a tag to compare

Summary

This release introduces several under-the-hood improvements to chwd, including dependency updates, optimization of initramfs updates, and improved handling of installation failures. It also enables nvidia-powerd by default for modern mobile NVIDIA GPUs (30xx and later). Additionally, this release introduces a chwd library crate for external use.

Features ✨

  • chwd Library Crate: A chwd library crate is now available, allowing external projects to leverage chwd's functionality. This includes access to profile information via the profile::get_available_profiles function.

Chores 🧹

  • Dependency Updates: Project dependencies have been updated.
  • Optimized Initramfs Updates: Improved the efficiency of initramfs updates by eliminating redundant updates. The necessary modules are now added before package installation. (#141)
  • Improved Failure Handling: Enhanced handling of installation failures by running the pre_remove hook for cleanup.
  • Internal Refactoring:
    • Made clippy happy in the profile module.
    • Improved handling of shared profile values using cloning where appropriate.
    • Localized printing functions to binary scope.

Other Changes

  • Enabled nvidia-powerd: nvidia-powerd is now enabled by default for Ampere and newer NVIDIA dGPUs. (#140)

This changelog summarizes the key changes in this release. For a detailed view of all modifications, please refer to the full diff on GitHub.

1.10.0

23 Oct 20:42
5180a82
Compare
Choose a tag to compare

Summary

This release focuses on improving NVIDIA GPU detection and simplifying the chwd script. It also includes dependency updates.

Chores 🧹

  • Dependency Updates: Updated project dependencies for better compatibility and performance.
  • Simplified get_profile Function: Simplified the get_profile function in the chwd script, improving code readability and maintainability. (#138)

Bug Fixes 🐛

  • NVIDIA GPU Detection: (#139)
    • Removed PRIME profiles in favor of detection within hooks for more accurate detection of NVIDIA GPUs in PRIME setups.
    • Added a script to dump PCI IDs for NVIDIA GPUs, including closed modules.
    • Used dumped PCI IDs for older NVIDIA profiles instead of device name patterns, improving the accuracy of profile selection.
    • Used the dumped list for closed modules instead of pattern matching for more reliable detection.

This changelog summarizes the key changes in this release. For a detailed view of all modifications, please refer to the full diff on GitHub.

1.9.1

03 Oct 18:09
41ec695
Compare
Choose a tag to compare

Summary

This release includes a minor bug fix for profile reinstallation and adds the xf86-video-amdgpu package to the AMD profile. Additionally, it refactors the execution of the chwd script for improved security and reliability.

Chores 🧹

  • Refactored Script Execution: The chwd script execution has been refactored to use Exec::cmd instead of Exec::shell, improving security and avoiding potential issues with shell escaping. Arguments are no longer passed as a shell process.

Bug Fixes 🐛

  • Profile Reinstallation: Fixed an issue that prevented profiles from being reinstalled correctly.

Other Changes

  • AMD Profile: Added the xf86-video-amdgpu package to the AMD profile.

This changelog summarizes the key changes in this release. For a detailed view of all modifications, please refer to the full diff on GitHub.

1.9.0

28 Sep 10:39
9e2b2ef
Compare
Choose a tag to compare

Summary

This release introduces various improvements and bug fixes, including better handling of multiple profiles, dependency updates, and removal of dead code.

Features ✨

  • Multiple Profiles: Improved handling of installation and removal for multiple profiles.

Chores 🧹

  • Dependency Updates: Updated project dependencies for better compatibility and performance.
  • Dead Code Removal: Removed dead and unused code to improve maintainability (#137).
  • Improved Logging: Refactored logging to use the log crate for better consistency and flexibility.
  • Code Cleanups: (#134)
    • Removed nonfree heuristics, USB options, is_nvidia_card option, and pci option for simplification and clarity.
    • Changed the argument from a vector to an optional string for better usability.
    • Required listing options to be specified for detailed output to avoid accidental verbosity.
    • Removed the type field from Device as it was redundant.
    • All profiles are now PCI-based.
  • Simplified Autoconfigure: Made the argument for autoconfigure optional, making it easier to use in scripts like Calamares (#133).

Bug Fixes 🐛

  • Handheld Ally Detection: Replaced hhd with inputplumber to fix Ally handheld detection issues (#115, #136).
  • PRIME on Hybrid Systems: Removed libva-nvidia-driver from installable packages to prevent issues with Spectacle and other software on hybrid systems (#132).
  • Nouveau Profile Priority: Increased the priority of the Nouveau profile in graphic drivers (#135).

Breaking Changes ⚠️

  • The --pci option has been removed.
  • The --is-nvidia-card option has been removed.

This changelog summarizes the key changes in this release. For a detailed view of all modifications, please refer to the full diff on GitHub.