Skip to content

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 19 Jan 13:11
· 7 commits to main since this release
7dbb133

v0.9.0 — Enterprise Tool Check & Bug Fixes

This release brings Portage-compatible tool handling and critical bug fixes for package installation.

🏢 Enterprise Tool Check

Tool check is now opt-in instead of opt-out, following Portage's BDEPEND pattern:

# Default behavior (no tool pre-check)
grpm emerge @world

# Optional pre-validation
grpm emerge --check-tools @world

Why this change?

  • Portage handles tool dependencies via BDEPEND, not global pre-flight checks
  • Pre-checking 2000+ packages caused false positives (one Rust package requiring cargo for entire @world)
  • Now follows enterprise pattern: BDEPEND + natural build failures + rich error reporting

🐛 Bug Fixes

  • Collision detection — Only files are checked for collisions, directories are skipped (was counting 147 collisions for 49 files)
  • VarDB persistence — Packages are now properly tracked in /var/db/pkg after installation
  • Shared file collision/usr/share/info/dir excluded from collision check (GNU Info directory file)
  • Collision logging — Added detailed collision reporting for better diagnostics

📦 Package Sets (from v0.8.4)

Package sets now work in all commands:

  • grpm resolve @world / @system / @selected
  • grpm emerge @world
  • grpm fetch @system

⚠️ Breaking Change

# Before (v0.8.x):
grpm emerge --skip-tool-check @world

# After (v0.9.0):
grpm emerge @world                    # No flag needed
grpm emerge --check-tools @world      # Optional pre-validation

✅ Tested on Real Gentoo

  • grpm resolve @system → 2086 packages resolved
  • grpm emerge app-misc/hello → builds and installs successfully
  • VarDB tracking → /var/db/pkg/app-misc/hello-2.12.2/ created correctly

📥 Installation

# Download
wget https://github.com/grpmsoft/grpm/releases/download/v0.9.0/grpm_linux_amd64.tar.gz
tar -xzf grpm_linux_amd64.tar.gz
sudo install -m 0755 grpm /usr/bin/grpm

# Verify
grpm -V

Full Changelog: v0.8.4...v0.9.0