determinatesystems/Publish Nix flakes to FlakeHub

Find, install, and publish Nix Flakes with FlakeHub.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Jun 18, 2026
License
None

Pinned Snippet

workflow.ymlSHA-pinned
uses: determinatesystems/flakehub-push@71f57208810a5d299fc6545350981de98fdbc860 # v6

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
visibility`public`, `unlisted`, or `private` (private flakes are available only on a [FlakeHub paid plan](https://flakehub.com/signup))yes
nameThe name of your published flake. In the format of OrgName/RepoName. OrgName must match your organization's GitHub root name or the publish will fail.no
repositoryThe actual GitHub repository containing your flake. In the format of OrgName/RepoName.yes${{ github.repository }}
mirrorIf the repository is mirrored via DeterminateSystems' mirror functionality. This is only usable by DeterminateSystems.nofalse
directoryThe path of your flake relative to the root of the repository. Useful for subflakes.no
git-rootThe root directory of your Git repository.no.
tagThe Git tag to use, for non-rolling releases. This must be the character `v` followed by a SemVer version, e.g. `v0.1.1`.no
revThe Git revision SHA to use for non-rolling releases.no
rolling-majorSpecify the SemVer major version of your rolling releases. All releases will follow the versioning scheme '[rolling-major].[rolling-minor].[commit count]+rev-[git sha]'no
rolling-minorSpecify the SemVer minor version of your rolling releases. All releases will follow the versioning scheme '[rolling-major].[rolling-minor].[commit count]+rev-[git sha]'no
rollingFor untagged releases, use a rolling versioning scheme. When this is enabled, the default versioning scheme is 0.1.[commit count]+rev-[git sha]. To customize the SemVer minor version, set the `rolling-minor` option. nofalse
hostThe FlakeHub server to use.nohttps://api.flakehub.com
log-directivesA comma-separated list of [tracing directives](https://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html#directives). `-`s are replaced with `_`s (such as `nix_installer=trace`).noflakehub_push=info
loggerThe logger to use. Options are `pretty`, `json`, `full` and `compact`.nofull
github-tokenA GitHub token for making authenticated GitHub API requests.${{ github.token }}
extra-tagsDEPRECATED: Please use `extra-labels` instead.no""
extra-labels`flakehub-push` automatically uses the GitHub repo's topics as labels. This `extra-labels` parameter enables you to add extra labels beyond that as a comma-separated string. Only alphanumeric characters and hyphens are allowed in labels and the maximum length of labels is 50 characters. You can specify a maximum of 20 extra labels, and have a maximum of 25 labels, including those that we retrieve from GitHub. Any labels after the 25th will be ignored. no""
spdx-expressionA valid SPDX license expression. This will be used in place of what GitHub claims your repository's `spdxIdentifier` is.no""
error-on-conflictWhether to error if a release for the same version has already been uploaded.nofalse
include-output-pathsWhether to register the output paths of each flake output with FlakeHub.nofalse
my-flake-is-too-bigPlease read the source code of flakehub-push before using this.nofalse
source-binaryRun a version of the `flakehub-push` binary from somewhere already on disk. Conflicts with all `source-*` options.no
source-branchThe branch of `flakehub-push` to use. Conflicts with all other `source-*` options.nomain
source-prThe pull request (PR) of `flakehub-push` to use. Conflicts with all other `source-*` options.no
source-revisionThe revision of `flakehub-push` to use. Conflicts with all other `source-*` options.no
source-tagThe tag of `flakehub-push` to use. Conflicts with all other `source-*` options.no
source-urlA URL pointing to a `flakehub-push` binary. Overrides all other `source-*` options.no
_internal-strict-modeWhether to fail when any errors are thrown. Used only to test the Action; do not set this in your own workflows.false
flakehub-push-binaryRun a version of the `flakehub-push` binary from somewhere already on disk. Conflicts with all `flakehub-push-*` options.no
flakehub-push-branchThe branch of `flakehub-push` to use. Conflicts with all other `flakehub-push-*` options.no
flakehub-push-prThe pull request (PR) of `flakehub-push` to use. Conflicts with all `flakehub-push-*` options.no
flakehub-push-revisionThe revision of `flakehub-push` to use. Conflicts with all other `flakehub-push-*` options.no
flakehub-push-tagThe tag of `flakehub-push` to use. Conflicts with all other `flakehub-push-*` options.no
flakehub-push-urlA URL pointing to a `flakehub-push` binary. Overrides all other `flakehub-push-*` options.no

no outputs