{"id":49248909,"url":"https://github.com/jassielof/setup-zig","last_synced_at":"2026-04-24T23:07:55.519Z","repository":{"id":345821409,"uuid":"1187504579","full_name":"jassielof/setup-zig","owner":"jassielof","description":"Fast, cross-platform Zig installer for GitHub Actions with smart caching.","archived":false,"fork":false,"pushed_at":"2026-03-20T21:51:05.000Z","size":28,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-21T11:44:51.820Z","etag":null,"topics":["action","actions","setup","setup-zig","workflow","zig"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jassielof.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2026-03-20T20:01:03.000Z","updated_at":"2026-03-20T21:48:20.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/jassielof/setup-zig","commit_stats":null,"previous_names":["jassielof/setup-zig"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/jassielof/setup-zig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jassielof%2Fsetup-zig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jassielof%2Fsetup-zig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jassielof%2Fsetup-zig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jassielof%2Fsetup-zig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jassielof","download_url":"https://codeload.github.com/jassielof/setup-zig/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jassielof%2Fsetup-zig/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32243803,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T13:21:15.438Z","status":"ssl_error","status_checked_at":"2026-04-24T13:21:15.005Z","response_time":64,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["action","actions","setup","setup-zig","workflow","zig"],"created_at":"2026-04-24T23:07:54.315Z","updated_at":"2026-04-24T23:07:55.511Z","avatar_url":"https://github.com/jassielof.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# setup-zig\n\nFast, cross-platform Zig toolchain installer for GitHub Actions with two-tier caching.\n\n## Features\n\n- **Streaming install on Linux and macOS** — pipes the download directly into `tar`, so decompression overlaps with the network transfer (typically 5–8 s).\n- **Two-tier caching enabled by default** — the Zig toolchain (`~/.zig`) is cached separately from build artifacts (`.zig-cache`, `zig-out`), so the toolchain is restored from cache in ~3 s on subsequent runs across all platforms.\n- **No index fetch for stable versions** — for an exact version like `0.15.2` the download URL is constructed directly, skipping the `ziglang.org` index request entirely.\n- Cross-platform: Linux, macOS, Windows. Requires only a Python runtime on the runner.\n\n## Usage\n\n```yaml\n- uses: jassielof/setup-zig@v1\n  with:\n    version: latest   # or master, or 0.15.2 — defaults to latest\n```\n\nCaching is on by default. To opt out:\n\n```yaml\n- uses: jassielof/setup-zig@v1\n  with:\n    version: latest\n    cache: false\n```\n\n## Inputs\n\n| Name                   | Default                          | Description |\n| ---------------------- | -------------------------------- | ----------- |\n| `version`              | `latest`                         | Zig version to install: `latest` (newest stable), `master` (nightly), or an exact release like `0.15.2`. |\n| `cache`                | `true`                           | Enable two-tier caching (toolchain + build artifacts). |\n| `cache-toolchain`      | `true`                           | Cache the Zig install under `~/.zig`. Disable if you only want build-artifact caching. |\n| `cache-dependency-path`| `build.zig` / `build.zig.zon`    | Glob(s) whose content is hashed into the build cache key. Does not affect the toolchain cache key. |\n| `cache-path`           | `**/.zig-cache` / `**/zig-out`   | Paths included in the build artifact cache. |\n| `target`               | _(none)_                         | Zig cross-compilation target triple, used to make the build cache key target-aware. |\n\n## How caching works\n\nTwo independent `actions/cache` entries are created per job:\n\n| Cache | Key | What it stores |\n| ----- | --- | -------------- |\n| Toolchain | `zig-toolchain-{OS}-{arch}-{version}` | `~/.zig` — the full Zig installation. After a cache hit the installer skips the download entirely. |\n| Build artifacts | `zig-build-{OS}-{version}-{target}-{hash}` | `.zig-cache` and `zig-out` — incremental build state. |\n\nThe toolchain cache key for `master` is derived from the tarball URL (which encodes the commit hash), so nightly builds invalidate automatically when upstream changes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjassielof%2Fsetup-zig","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjassielof%2Fsetup-zig","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjassielof%2Fsetup-zig/lists"}