Skip to content

Proposal: Make microViz available via Bioconda (and/or Bioconductor) #207

@fmerinocasallo

Description

@fmerinocasallo

Hi @david-barnett! 👋

microViz has been very useful for Principal Coordinates Analysis (PCoA) as part of our metatranscriptomics workflows. Installing microViz would be even smoother if it were available through a conda channel. I've been working on conda recipes (most recently for r-khroma) and wanted to share a path forward tailored to microViz.

I noticed that while microViz is available in a private Anaconda channel (CGR-lab), it's not yet available in the official Bioconda or conda-forge repositories. Since microViz depends heavily on Bioconductor packages (phyloseq, microbiome, ComplexHeatmap, etc.) that are already well-maintained in Bioconda, I thought it would make sense to have microViz available there as well.

I've prepared a draft Bioconda recipe for microViz as a starting point. I wanted to reach out to see if you'd be interested in submitting it yourself.

Note that contributing a package to Bioconda makes you the maintainer of that package.

I've attached draft recipe files to this issue (meta.yaml, build.sh, and bld.bat) as a first approximation:

meta.yaml
build.sh

Since GitHub doesn't allow me to upload the bld.bat, this would be its content:

"%R%" CMD INSTALL --build . %R_ARGS%
IF %ERRORLEVEL% NEQ 0 exit /B 1

These should be reviewed and validated before submission to ensure everything is correct.

Why Bioconda/conda matters for microViz

  • Dependencies already shipped: Key Bioconductor dependencies such as phyloseq, microbiome, ComplexHeatmap, vegan, etc., are already packaged in Bioconda (e.g., bioconductor-phyloseq is at 1.50.0 with >250k downloads). Users could therefore install microViz plus its full dependency stack via one conda install command.

  • Minimal friction for Bioconductor-based stacks: Bioconda's contributor workflow mirrors conda-forge's staged-recipes but is tuned for Bioconductor software. The contributor guide and tutorials walk through recipe authoring, optional build scripts, local testing, and PR review/linting (links listed below).

  • ARM builds ready: Bioconda now offers opt-in linux-aarch64 and osx-arm64 builds by adding:

    extra:
      additional-platforms:
        - linux-aarch64
        - osx-arm64
    

    to the recipe, enabling Apple Silicon and ARM server support. Note that if you enable ARM builds, you may need to update the build.sh file to include these platforms in the if clause.

Bioconductor as a complementary (or primary) route

Because microViz already leans heavily on Bioconductor packages, submitting it directly to Bioconductor might also be attractive. Their contribution guides cover the GitHub-issue submission, R CMD check expectations, git workflow, and reviewer milestones (links listed below). If microViz enters Bioconductor, it will automatically flow into Bioconda packages afterward.

Documentation and Resources

If you're interested in the Bioconda route, here are some helpful links:

Conversely, if you prefer the Bioconductor route, here are some useful links:

What's Involved

As a Bioconda maintainer, you would be responsible for:

  • Updating the recipe when new versions are released (usually straightforward - just version number and SHA256)
  • Responding to occasional issues in the feedstock repository
  • Ensuring the package continues to build correctly (Bioconda CI handles most of this automatically)

I'm happy to help with the submission process if needed.

Thanks again for microViz! 💙

Best regards,
Fran

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions