containers / ramalama

The goal of RamaLama is to make working with AI boring.
MIT License
272 stars 47 forks source link

Fix RamaLama container image build #446

Closed ericcurtin closed 1 week ago

ericcurtin commented 1 week ago

Error: (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) Problem: conflicting requests

Summary by Sourcery

Bug Fixes:

sourcery-ai[bot] commented 1 week ago

Reviewer's Guide by Sourcery

This PR fixes the RamaLama container image build by reordering package installation dependencies. The core issue was related to package dependency resolution where mesa-vulkan-drivers required LLVM-17 libraries that weren't available at the time of installation.

Sequence diagram for the package installation process

sequenceDiagram
    participant Script
    participant DNF
    participant COPR
    participant CentOSMirror
    participant RPM

    Script->>DNF: Enable COPR repo slp/mesa-krunkit
    DNF->>COPR: Request repo access
    COPR-->>DNF: Repo enabled

    Script->>DNF: Add CentOS Stream repo
    DNF->>CentOSMirror: Request repo access
    CentOSMirror-->>DNF: Repo added

    Script->>RPM: Import CentOS GPG key
    RPM-->>Script: Key imported

    Script->>DNF: Install packages
    DNF->>COPR: Resolve dependencies
    DNF->>CentOSMirror: Resolve dependencies
    DNF-->>Script: Packages installed successfully

File-Level Changes

Change Details Files
Reordered package installation sequence in DNF to resolve dependency issues
  • Moved glslang installation earlier in the sequence
  • Combined all Vulkan-related package installations into a single DNF command
  • Maintained the same set of packages but changed their installation order
container-images/scripts/build_llama_and_whisper.sh

Tips and commands #### Interacting with Sourcery - **Trigger a new review:** Comment `@sourcery-ai review` on the pull request. - **Continue discussions:** Reply directly to Sourcery's review comments. - **Generate a GitHub issue from a review comment:** Ask Sourcery to create an issue from a review comment by replying to it. - **Generate a pull request title:** Write `@sourcery-ai` anywhere in the pull request title to generate a title at any time. - **Generate a pull request summary:** Write `@sourcery-ai summary` anywhere in the pull request body to generate a PR summary at any time. You can also use this command to specify where the summary should be inserted. #### Customizing Your Experience Access your [dashboard](https://app.sourcery.ai) to: - Enable or disable review features such as the Sourcery-generated pull request summary, the reviewer's guide, and others. - Change the review language. - Add, remove or edit custom review instructions. - Adjust other review settings. #### Getting Help - [Contact our support team](mailto:support@sourcery.ai) for questions or feedback. - Visit our [documentation](https://docs.sourcery.ai) for detailed guides and information. - Keep in touch with the Sourcery team by following us on [X/Twitter](https://x.com/SourceryAI), [LinkedIn](https://www.linkedin.com/company/sourcery-ai/) or [GitHub](https://github.com/sourcery-ai).
rhatdan commented 1 week ago

LGTM