{"id":19623922,"url":"https://github.com/bioconductor/bioc2u","last_synced_at":"2025-10-08T05:19:01.010Z","repository":{"id":194431600,"uuid":"690816022","full_name":"Bioconductor/bioc2u","owner":"Bioconductor","description":"Building containers and holding some code for bioc2u, an attempt at extending r2u to all bioc packages, and provide precompiled binaries for ubuntu systems","archived":false,"fork":false,"pushed_at":"2025-07-16T18:31:16.000Z","size":53,"stargazers_count":4,"open_issues_count":3,"forks_count":1,"subscribers_count":8,"default_branch":"devel","last_synced_at":"2025-09-09T16:22:24.224Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Bioconductor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-09-13T00:07:54.000Z","updated_at":"2025-08-19T16:18:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"a4a39e03-c794-45ab-a9e8-524682b55966","html_url":"https://github.com/Bioconductor/bioc2u","commit_stats":null,"previous_names":["bioconductor/bioc2u"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Bioconductor/bioc2u","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bioconductor%2Fbioc2u","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bioconductor%2Fbioc2u/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bioconductor%2Fbioc2u/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bioconductor%2Fbioc2u/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bioconductor","download_url":"https://codeload.github.com/Bioconductor/bioc2u/tar.gz/refs/heads/devel","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bioconductor%2Fbioc2u/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278891753,"owners_count":26063858,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-08T02:00:06.501Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T11:36:07.160Z","updated_at":"2025-10-08T05:19:00.997Z","avatar_url":"https://github.com/Bioconductor.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Bioc2u (beta): Ubuntu Binaries for Bioconductor packages\n\nThis project aims to extend [r2u][r2u],\nin hopes of providing a repository of Ubuntu binaries via `apt` for all Bioconductor packages.\n\n**Bioc2u is currently available for Ubuntu Jammy (22.04) and Noble (24.04) and is still in beta development.**\n\n### Container Images\n\nWe provide two types of container images for different use cases:\n\n- **User containers** (`bioc2u-user`): Minimal environment built on `ubuntu:jammy` or `ubuntu:noble` with R, BiocManager, and bioc2u/r2u repositories pre-configured\n- **Builder containers** (`bioc2u-builder`): Extended environment based on [r2u][r2u] containers with additional build tools for package development\n\n#### Available Tags\n\nContainer images are available with multiple tagging formats:\n\n- **Ubuntu version**: `jammy`, `noble`\n- **Ubuntu version with R**: `jammy-r-4.4.2`, `noble-r-4.4.2`\n- **Ubuntu version with Bioconductor**: `jammy-bioc-3.21`, `noble-bioc-3.21`\n- **Full version**: `jammy-bioc-3.21-r-4.5.1`, `noble-bioc-3.21-r-4.5.0`\n- **OS version**: `22.04`, `24.04` (corresponding to Ubuntu versions)\n- **OS version with R/Bioc**: eg `22.04-r-4.5.1`, `24.04-bioc-3.21`, `24.04-bioc-3.21-r-4.5.1`\n\n#### Version Strategy and Backward Compatibility\n\nThis design allows for old versions to remain accessible by default, under the full tags. For example: when R 4.5.1 comes out, the containers tagged simply `jammy-bioc-3.21` become `jammy-bioc-3.21-r-4.5.1` but the previous container remains accessible under `jammy-bioc-3.21-r-4.5.0`. When containers get rebuilt within the same version, old containers can still be used via their hash in the `ghcr.io/bioconductor/bioc2u-user@sha256:[hash]` format.\n\nThis ensures reproducibility by allowing users to pin to specific versions or use the latest versions through the shorter tag names.\n\n### Getting started\n\n#### Using Docker containers\n\nFor a minimal R environment with bioc2u pre-configured:\n```bash\n# Ubuntu Jammy (22.04) - latest versions\ndocker run --rm -it ghcr.io/bioconductor/bioc2u-user:jammy\n\n# Ubuntu Noble (24.04) - latest versions\ndocker run --rm -it ghcr.io/bioconductor/bioc2u-user:noble\n\n# Specific Bioconductor/R versions for reproducibility\ndocker run --rm -it ghcr.io/bioconductor/bioc2u-user:jammy-bioc-3.21-r-4.5.0\n```\n\nFor package development with build tools:\n```bash\n# Builder container with development tools\ndocker run --rm -it ghcr.io/bioconductor/bioc2u-builder:jammy\n```\n\n#### Local installation\n\nIn an Ubuntu environment (eg in containers based on `ubuntu:jammy` and `ubuntu:noble`), you may use the [`apt_setup.sh`](https://github.com/Bioconductor/bioc2u/blob/devel/apt_setup.sh)\nscript which will set up the Bioc2u `apt` repository and install R, and basic packages such as BiocManager. This script leverages the [r2u][r2u] setup scripts from the [r2u repository](https://github.com/eddelbuettel/r2u/blob/master/inst/scripts/) to configure the CRAN apt repository.\n\n```bash\n# Install curl if missing\napt update -qq\napt install -y --no-install-recommends curl ca-certificates\n# Run apt script with specific Bioconductor version\ncurl https://raw.githubusercontent.com/Bioconductor/bioc2u/devel/apt_setup.sh | sudo bash -s 3.21\n```\n\nAfter the initial setup, you may use `apt` or `install.packages()` freely. Installing packages through `apt` can be done in any shell session, by using the\n`r-bioc-` prefix and the all-lowercase name of the package, eg `apt install -y r-bioc-genomicranges`. You may alternatively continue to use R traditionally, as you would in any other environment, and observe the speedup resulting from R using the `apt` package manager under the hood.\n\n### Automated Builds\n\nContainer images are automatically built every 2 days and pushed to GitHub Container Registry (GHCR). The build process:\n\n- Builds both user and builder containers for Ubuntu Jammy and Noble\n- Supports linux/amd64 platform\n- Automatically extracts R and OS version information for comprehensive tagging\n- Creates multi-platform manifests with various tag combinations\n\n### Acknowledgments\n\nThis project builds upon and extends the [r2u][r2u] project. Our `apt_setup.sh` script directly uses the [r2u setup scripts](https://github.com/eddelbuettel/r2u/blob/master/inst/scripts/) to configure the CRAN apt repository, and our builder containers are based on the [r2u][r2u] containers.\n\n[r2u]: https://eddelbuettel.github.io/r2u\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbioconductor%2Fbioc2u","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbioconductor%2Fbioc2u","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbioconductor%2Fbioc2u/lists"}