---
title: "2026-09-18 NanoVirDx conda release automation"
description: "Added a NanoVirDx conda recipe and manual internal Artifactory release workflow."
image: "https://docs.virdx.dev/img/virdx-social-card.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.virdx.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# 2026-09-18 NanoVirDx conda release automation

## Work Done

- Added a rattler-build recipe for NanoVirDx using the hardcoded version read from `pyproject.toml` through `PACKAGE_VERSION`.
- Declared the Linux runtime package dependencies, including the Histo, DiffSim, vxData, and direct Python imports used by NanoVirDx.
- Added a manual GitHub Actions release workflow that uploads only to the internal `virdx` Artifactory conda channel.
- Validated the workflow with `actionlint`, the recipe with `rattler-build --render-only`, and both files with `git diff --check`.

## Lessons Learned: Pitfalls

- The single-output recipe schema uses `package`, not the `recipe` key used by multi-output recipes such as `vxdata-sdk`. Copying that shape directly fails recipe parsing.
- A local `--with-solve` render panicked inside rattler-build while processing channels; syntax-only rendering succeeded, so this did not provide a dependency-solve result.

## Lessons Learned: Improvements

- The packaging SOP could explicitly contrast the top-level shape for single-output (`package`) and multi-output (`recipe` plus `outputs`) recipes.
- Document a standard dependency-solve validation command that works on macOS for Linux-only/noarch packages and internal channels.

Source: https://docs.virdx.dev/knowledge/inbox/2026-09-18-infrastructure-nanovirdx-conda-release/index.mdx
