Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Runtime Dependency Installation for Required System Packages and Library functionality #6

Merged
merged 8 commits into from
Nov 21, 2024

Conversation

kennethdsheridan
Copy link
Collaborator

Title: Add Runtime Dependency Installation for Required System Packages

Description:
This PR introduces functionality to automatically check for and install missing system dependencies at runtime. The required dependencies include numactl, lspci, ethtool, and dmidecode. The changes ensure that all necessary packages are installed before the main logic runs, enhancing usability and reducing setup friction.

Changes:

  • Added install_missing_packages() function to automatically install missing dependencies using apt-get or dnf.
  • Integrated install_missing_packages() within check_dependencies() to ensure dependencies are installed if missing.
  • Updated main() function to run the dependency check and trigger installation if needed.
  • Added ability to be consumed as a library or as a stand-alone executable for linux machines.

Testing:

  • The changes have been tested on both Debian-based and RHEL-based Linux distributions to verify that missing packages are correctly detected and installed.

Notes:

  • The installation process requires root privileges; the program will use sudo to install missing dependencies.

@kennethdsheridan kennethdsheridan self-assigned this Nov 21, 2024
@kennethdsheridan kennethdsheridan merged commit cf89f0d into main Nov 21, 2024
1 check failed
jeztek pushed a commit that referenced this pull request Nov 27, 2024
Add Runtime Dependency Installation for Required System Packages and Library functionality
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant