{"id":27958430,"url":"https://github.com/determinatesystems/flakehub-cache-action","last_synced_at":"2025-12-24T16:09:55.434Z","repository":{"id":273419893,"uuid":"918259998","full_name":"DeterminateSystems/flakehub-cache-action","owner":"DeterminateSystems","description":null,"archived":false,"fork":false,"pushed_at":"2025-04-14T02:50:12.000Z","size":16394,"stargazers_count":2,"open_issues_count":1,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-14T03:36:50.964Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DeterminateSystems.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2025-01-17T15:13:18.000Z","updated_at":"2025-04-14T02:50:15.000Z","dependencies_parsed_at":"2025-03-27T15:24:57.878Z","dependency_job_id":"ab46c130-53cf-4060-b8f3-1241155a2b3f","html_url":"https://github.com/DeterminateSystems/flakehub-cache-action","commit_stats":null,"previous_names":["determinatesystems/flakehub-cache-action"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflakehub-cache-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflakehub-cache-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflakehub-cache-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflakehub-cache-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DeterminateSystems","download_url":"https://codeload.github.com/DeterminateSystems/flakehub-cache-action/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252932370,"owners_count":21827285,"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","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":"2025-05-07T18:23:50.128Z","updated_at":"2025-12-24T16:09:55.427Z","avatar_url":"https://github.com/DeterminateSystems.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://determinate.systems\" target=\"_blank\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/determinatesystems/.github/main/.github/banner.jpg\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u0026nbsp;\u003ca href=\"https://determinate.systems/discord\" target=\"_blank\"\u003e\u003cimg alt=\"Discord\" src=\"https://img.shields.io/discord/1116012109709463613?style=for-the-badge\u0026logo=discord\u0026logoColor=%23ffffff\u0026label=Discord\u0026labelColor=%234253e8\u0026color=%23e4e2e2\"\u003e\u003c/a\u003e\u0026nbsp;\n  \u0026nbsp;\u003ca href=\"https://bsky.app/profile/determinate.systems\" target=\"_blank\"\u003e\u003cimg alt=\"Bluesky\" src=\"https://img.shields.io/badge/Bluesky-0772D8?style=for-the-badge\u0026logo=bluesky\u0026logoColor=%23ffffff\"\u003e\u003c/a\u003e\u0026nbsp;\n  \u0026nbsp;\u003ca href=\"https://hachyderm.io/@determinatesystems\" target=\"_blank\"\u003e\u003cimg alt=\"Mastodon\" src=\"https://img.shields.io/badge/Mastodon-6468fa?style=for-the-badge\u0026logo=mastodon\u0026logoColor=%23ffffff\"\u003e\u003c/a\u003e\u0026nbsp;\n  \u0026nbsp;\u003ca href=\"https://twitter.com/DeterminateSys\" target=\"_blank\"\u003e\u003cimg alt=\"Twitter\" src=\"https://img.shields.io/badge/Twitter-303030?style=for-the-badge\u0026logo=x\u0026logoColor=%23ffffff\"\u003e\u003c/a\u003e\u0026nbsp;\n  \u0026nbsp;\u003ca href=\"https://www.linkedin.com/company/determinate-systems\" target=\"_blank\"\u003e\u003cimg alt=\"LinkedIn\" src=\"https://img.shields.io/badge/LinkedIn-1667be?style=for-the-badge\u0026logo=linkedin\u0026logoColor=%23ffffff\"\u003e\u003c/a\u003e\u0026nbsp;\n\u003c/p\u003e\n\n# ️❄️ FlakeHub Cache Action\n\nFlakeHub Cache is the zero-configuration binary cache for GitHub Actions, workstations, production, and other CI platforms.\n\nFlakeHub Cache is part of [Determinate], the best way to use Nix on macOS, WSL, and Linux.\nIt is an end-to-end toolchain for using Nix, from installation to collaboration to deployment.\n\nBased on the [Determinate Nix Installer][nix-installer] and its corresponding [Nix Installer Action][nix-installer-action], responsible for over tens of thousands of Nix installs daily.\n\n## 🫶 Platform support\n\n- Automatic, authenticated integration with GitHub Actions\n- Cached paths are available on developer and target machines\n- Fully managed by Determinate Systems\n- 🐧 Linux, x86_64, aarch64\n- 🍏 macOS, x86_64 and aarch64\n- 🪟 WSL2, x86_64 and aarch64\n- 🐋 Containers, ARC, and Act\n- 🐙 GitHub Enterprise Server\n- 💁 GitHub Hosted, self-hosted, and long running Actions Runners\n\n## ️🔧 Usage\n\nHere's an example Actions workflow configuration that uses `flakehub-cache-action`:\n\n```yaml\nname: CI\n\non:\n  pull_request:\n  push:\n    branches: [main]\n\njobs:\n  check:\n    runs-on: ubuntu-latest\n    permissions:\n      id-token: \"write\"\n      contents: \"read\"\n    steps:\n      - uses: actions/checkout@v6.0.1\n      - uses: DeterminateSystems/determinate-nix-action@v3\n      - uses: DeterminateSystems/flakehub-cache-action@v3 # or v3.15.1 to pin to a release\n      - run: nix build .\n```\n\n\u003e [!IMPORTANT]\n\u003e You must add a `permissions` block like the one in the example above or else Determinate Nix can't authenticate with FlakeHub or [FlakeHub Cache][cache].\n\n## 📌 Version pinning: lock it down!\n\n### Why pin your Action?\n\nUnlike `DeterminateSystems/magic-nix-cache-action`, we fully support explicit version pinning for maximum consistency.\nThis Action is **automatically tagged** for every release, giving you complete control over your CI environment:\n\n📍 Pinning to `DeterminateSystems/flakehub-cache-action@v3.15.1` guarantees:\n\n- Same `flakehub-cache-action` revision every time\n- Reproducible CI workflows, even years later\n\n✨ Using `@main` instead? You'll:\n\n- Always get the latest FlakeHub Cache release\n- Occasionally participate in phased rollouts (helping us test new releases!)\n\n\u003e [!IMPORTANT]\n\u003e Set up [Dependabot] to stay current with FlakeHub Cache releases without sacrificing stability.\n\n### 🤖 Automate updates with Dependabot\n\nKeep your GitHub Actions fresh without manual work! Create `.github/dependabot.yml` with:\n\n```yaml\nversion: 2\nupdates:\n  - package-ecosystem: github-actions\n    directory: /\n    schedule:\n      interval: weekly\n```\n\n## ️⚙️ Configuration\n\n| Parameter                   | Description                                                                                                                                                                                                                                                                                                                                                  | Required | Default                                    |\n|-----------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------|--------------------------------------------|\n| `use-gha-cache`             | Whether to upload build results to the Github Actions cache.\nSet to \"no-preference\" or null to have the GitHub Actions cache turn on if it is available, and FlakeHub Cache is not available (default).\nSet to \"enabled\" or true to explicitly request the GitHub Actions Cache.\nSet to \"disabled\" or false to explicitly disable the GitHub Actions Cache.\n |          |                                            |\n| `flakehub-flake-name`       | The name of your flake on FlakeHub. The empty string will autodetect your FlakeHub flake.                                                                                                                                                                                                                                                                    |          | ``                                         |\n| `diff-store`                | Whether or not to diff the store before and after Magic Nix Cache runs                                                                                                                                                                                                                                                                                       |          | `False`                                    |\n| `startup-notification-port` | The port magic-nix-cache uses for daemon startup notification.                                                                                                                                                                                                                                                                                               |          | `41239`                                    |\n| `listen`                    | The host and port to listen on.                                                                                                                                                                                                                                                                                                                              |          | `127.0.0.1:37515`                          |\n| `upstream-cache`            | Your preferred upstream cache. Store paths in this store will not be cached in GitHub Actions' cache.                                                                                                                                                                                                                                                        |          | `https://cache.nixos.org`                  |\n| `diagnostic-endpoint`       | Diagnostic endpoint url where diagnostics and performance data is sent. To disable set this to an empty string.                                                                                                                                                                                                                                              |          | `-`                                        |\n| `source-binary`             | Run a version of the cache binary from somewhere already on disk. Conflicts with all other `source-*` options.                                                                                                                                                                                                                                               |          |                                            |\n| `source-branch`             | The branch of `magic-nix-cache` to use. Conflicts with all other `source-*` options.                                                                                                                                                                                                                                                                         |          |                                            |\n| `source-pr`                 | The PR of `magic-nix-cache` to use. Conflicts with all other `source-*` options.                                                                                                                                                                                                                                                                             |          |                                            |\n| `source-revision`           | The revision of `nix-magic-nix-cache` to use. Conflicts with all other `source-*` options.                                                                                                                                                                                                                                                                   |          | `4b5df5f2f2393f10fc346297a46deec91a5969e0` |\n| `source-tag`                | The tag of `magic-nix-cache` to use. Conflicts with all other `source-*` options.                                                                                                                                                                                                                                                                            |          |                                            |\n| `source-url`                | A URL pointing to a `magic-nix-cache` binary. Overrides all other `source-*` options.                                                                                                                                                                                                                                                                        |          |                                            |\n| `flakehub-cache-server`     | The FlakeHub binary cache server.                                                                                                                                                                                                                                                                                                                            |          | `https://cache.flakehub.com`               |\n| `flakehub-api-server`       | The FlakeHub API server.                                                                                                                                                                                                                                                                                                                                     |          | `https://api.flakehub.com`                 |\n| `_internal-strict-mode`     | Whether to fail when any errors are thrown. Used only to test the Action; do not set this in your own workflows.                                                                                                                                                                                                                                             |          | `False`                                    |\n\n## 🛟 Need help? We're here for you!\n\nWe're committed to making your experience with Determinate Nix and FlakeHub as smooth as possible. If you encounter any issues or have questions, here's how to reach us:\n\n- 🐛 **Found a bug?** [Open an issue](https://github.com/DeterminateSystems/determinate-nix-action/issues/new) on GitHub\n- 💬 **Want to chat?** Join our [Discord community](https://determinate.systems/discord) for quick help and discussions\n- 📧 **Need direct support?** Email us at [support@determinate.systems](mailto:support@determinate.systems)\n\n🤝 **Looking for enterprise support?** We offer dedicated support contracts and shared Slack channels for organizations requiring priority assistance. [Contact us](mailto:support@determinate.systems) to learn more.\n\n[action]: https://github.com/DeterminateSystems/flakehub-cache-action/\n[cache]: https://flakehub.com/cache\n[dependabot]: https://github.com/dependabot\n[det-nix]: https://docs.determinate.systems/determinate-nix\n[determinate]: https://docs.determinate.systems\n[detsys]: https://determinate.systems/\n[flakehub]: https//flakehub.com\n[installer]: https://github.com/DeterminateSystems/nix-installer/\n[nix-installer-action]: https://github.com/DeterminateSystems/nix-installer-action\n[nix-installer]: https://github.com/DeterminateSystems/nix-installer\n[privacy]: https://determinate.systems/policies/privacy\n[telemetry]: https://github.com/DeterminateSystems/magic-nix-cache/blob/main/magic-nix-cache/src/telemetry.rs\n[z2n]: https://zero-to-nix.com\n[z2ncache]: https://zero-to-nix.com/concepts/caching#binary-caches\n[zhaofeng]: https://github.com/zhaofengli/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeterminatesystems%2Fflakehub-cache-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeterminatesystems%2Fflakehub-cache-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeterminatesystems%2Fflakehub-cache-action/lists"}