-
Notifications
You must be signed in to change notification settings - Fork 9
Description
NOTE: This should likely be done after the alpha phase, and definitely in multiple PRs for each package manager.
As a QoL improvement this is a nice to have not a must have
Problem
Users currently need to install the EigenLayer DevKit by downloading precompiled binaries. This creates a suboptimal experience, especially for users who rely on package managers to handle dependency resolution and installation. Adding proper support across major platforms would improve accessibility, reduce onboarding friction, and align with current developer tooling conventions.
Solution
Create official packages for major platform package managers, including:
- Homebrew (macOS/Linux)
- Arch Linux AUR
- Debian/Ubuntu Snapcraft or Apt repository
- Fedora (DNF)
Motivation
This change would significantly improve the developer experience by:
- Providing a standard way to install the EigenLayer DevKit via familiar package managers
Expected Outcome
-
Installation Experience
- Users should be able to install the DevKit using their preferred package manager without significant configuration changes
# macOS/Linux: $ brew install eigen-devkit # Arch Linux: $ yay -S eigen-devkit
A good reference for how users of other linux distributions are familiar with installing third-party pacakges would be the Brave Browser installation instructions for linux: https://brave.com/linux/
- Documentation
- All package installation methods must be documented in
README.md - The README should include a "Package Manager Installation" section
- All package installation methods must be documented in
Additional Notes
- This feature requires maintaining multiple package definitions simultaneously
- There should be a
contrib/directory at the root of the repository containing all package definitions
Implementation Approach
-
Phase 1: Research
- Investigate official package manager interfaces for each platform
- Create initial draft packages
-
Phase 2: Initial Implementation
- Write and test the package definitions
-
Phase 3: Integration
- Add CI workflows to build and test packages
- Update project documentation