Skip to content

feat: add flake-based OpenViking service package#1328

Closed
CUexter wants to merge 1 commit intovolcengine:mainfrom
CUexter:flake-packaging
Closed

feat: add flake-based OpenViking service package#1328
CUexter wants to merge 1 commit intovolcengine:mainfrom
CUexter:flake-packaging

Conversation

@CUexter
Copy link
Copy Markdown

@CUexter CUexter commented Apr 9, 2026

Description

Related Issue

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Test update

Changes Made

Testing

  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • I have tested this on the following platforms:
    • Linux
    • macOS
    • Windows

Checklist

  • My code follows the project's coding style
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • Any dependent changes have been merged and published

Screenshots (if applicable)

Additional Notes

Copilot AI review requested due to automatic review settings April 9, 2026 06:55
@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@CUexter CUexter closed this Apr 9, 2026
@github-project-automation github-project-automation bot moved this from Backlog to Done in OpenViking project Apr 9, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds a Nix flake that builds a Python virtualenv for the OpenViking service by resolving a published openviking wheel (instead of building from the repo checkout), using a small pyproject.toml workspace under nix/openviking-env.

Changes:

  • Add nix/openviking-env/pyproject.toml to pin openviking==0.2.10 for service consumption.
  • Add a root flake.nix that uses uv2nix + pyproject-nix to produce a virtualenv package from the published wheel.

Reviewed changes

Copilot reviewed 2 out of 4 changed files in this pull request and generated 3 comments.

File Description
nix/openviking-env/pyproject.toml Defines a minimal Python project used to resolve/pin the published openviking wheel.
flake.nix Introduces a Nix flake that builds a virtualenv from the nix/openviking-env workspace dependencies.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +26 to +29
outputs = { nixpkgs, pyproject-nix, uv2nix, pyproject-build-systems, ... }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The flake hard-codes system = "x86_64-linux", which makes evaluation/builds on other systems awkward (e.g., nix build on aarch64-linux/macOS won’t expose a packages.<localSystem> attr). Consider generating outputs via an eachSystem/genAttrs pattern so the flake evaluates cleanly across systems, and only defines the package for supported ones (or errors with a clear message).

Copilot uses AI. Check for mistakes.
Comment on lines +53 to +56
packages.${system} = {
default = publishedOpenVikingServiceEnv;
openviking = publishedOpenVikingServiceEnv;
};
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The flake hard-codes system = "x86_64-linux", which makes evaluation/builds on other systems awkward (e.g., nix build on aarch64-linux/macOS won’t expose a packages.<localSystem> attr). Consider generating outputs via an eachSystem/genAttrs pattern so the flake evaluates cleanly across systems, and only defines the package for supported ones (or errors with a clear message).

Copilot uses AI. Check for mistakes.
"openviking==0.2.10",
]

[tool.uv]
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this workspace is intended to be metadata/dependency-resolution only (i.e., not a buildable/installable project itself), it’s worth making that explicit to avoid accidental attempts to build/package openviking-env (which can happen depending on how tooling consumes the workspace). Consider either adding a minimal [build-system] section (so it can be built reliably if needed) or explicitly disabling packaging for the root project in the tool configuration (e.g., via a uv setting) to match the intent stated in the header comment.

Suggested change
[tool.uv]
[tool.uv]
# This workspace is only used for dependency resolution; do not package it.
package = false

Copilot uses AI. Check for mistakes.
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 9, 2026

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 1 🔵⚪⚪⚪⚪
🏅 Score: 90
🧪 No relevant tests
🔒 No security concerns identified
✅ No TODO sections
🔀 No multiple PR themes
⚡ No major issues detected

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 9, 2026

PR Code Suggestions ✨

No code suggestions found for the PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants