NVIDIA / NVIDIA/nvidia-container-toolkit

[Feature]: Add dlopen locator for better NIX integration

Open
#1,677 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature lifecycle/frozen needs-triage
Dominant language
Go
Stars
4.6k
Forks
592
Avg merge
1d 33m
Merged PRs (30d)
61

Description

The NIX package for the NVIDIA Container Toolkit adds a library locator that uses dlopen to attempt to locate libraries: https://github.com/NixOS/nixpkgs/blob/1c415018b24020442ee94e6b84a8a4a24078a61e/pkgs/by-name/nv/nvidia-container-toolkit/0001-Add-dlopen-discoverer.patch#L50

In order to provide better support for NIX, we should consider adding such a locator -- at least for certain types of libraries.

This was already done in https://github.com/NVIDIA/nvidia-container-toolkit/pull/1646 but removed again in https://github.com/NVIDIA/nvidia-container-toolkit/pull/1676 due to instability.

One option would be to allow the types of locators used for libraries to be configurable. See

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the referenced NixOS dlopen-discoverer patch, then compare NVIDIA Container Toolkit pull requests 1646 and 1676 and commits f62813c and c1af7f5. Define a stable approach for locating selected libraries, including whether locator types should be configurable, and verify that the instability seen in the reverted implementation is addressed.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, nixos
Domain
devops, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.