You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At the moment, rules_gitops will not work when used on NixOS host.
This feature request, asks for adding built-in support for aforementioned operating system.
Details:
Due to its nature, NixOS rigidly separates package dependencies, down to ELF interpreters - everything
is symlinked and kept isolated. The system itself, does not and should not have files like /lib/ld-linux.so.2, nor has it libraries present in default, global namespaces.
Consequently, binaries which are produced in 'default manner' often fail to work on NixOS (quite frequent, due to no RPATH or default ELF interpreter).
More details can be read here.
This incompatibility could be a source of major pain, while using most of Bazel rules, however it is possible to
configure golang sdk, so that it will built binaries correctly - see the details here.
Unfortunately, pre-configuring golang sdk is not enough to make the rules_gitops compatible, as it downloads pre-built kustomize binary. This differentiates it from bazelbuild/rules_k8s or bazelbuild/rules_docker where such pre-configuration is enough.
This feature request, postulates to detect if rules are executed on NixOS, and - if and only if - they are indeed executed on NixOS, use built into the OS mechanism for obtaining kustomize binary.
Feature requests: what underlying problem are you trying to solve with this feature?
Currently I have to apply custom patches to rules_gitops to make it work on NixOS machines - I would rather treat it in the same manner other, similar Bazel tools (rules_k8s, rules_docker).
It may seem trivial to add few patches in one project, but keeping track of it in many WORKSPACES is tedious.
Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
We don't have an issue with adding NixOS support in general. But there are couple aspects we need to consider before we can a accept it.
We need to have CI pipeline that validates NixOS support. We will not accept new OS support without the e2e test.
Same as with #22, #46, the #55 builds on functionality that need to be replaced with a toolchain. The toolchain support is planned, but there is no timeline when it will be done, tough.
I think the best short term strategy is to finalize NixOS support in your own fork. We would happily upstream this work once the toolchain support lands.
Description of the feature request:
At the moment,
rules_gitops
will not work when used on NixOS host.This feature request, asks for adding built-in support for aforementioned operating system.
Details:
Due to its nature, NixOS rigidly separates package dependencies, down to ELF interpreters - everything
is symlinked and kept isolated. The system itself, does not and should not have files like
/lib/ld-linux.so.2
, nor has it libraries present in default, global namespaces.Consequently, binaries which are produced in 'default manner' often fail to work on NixOS (quite frequent, due to no
RPATH
or default ELF interpreter).More details can be read here.
This incompatibility could be a source of major pain, while using most of Bazel rules, however it is possible to
configure golang sdk, so that it will built binaries correctly - see the details here.
Unfortunately, pre-configuring golang sdk is not enough to make the
rules_gitops
compatible, as it downloads pre-builtkustomize
binary. This differentiates it frombazelbuild/rules_k8s
orbazelbuild/rules_docker
where such pre-configuration is enough.This feature request, postulates to detect if rules are executed on NixOS, and - if and only if - they are indeed executed on NixOS, use built into the OS mechanism for obtaining kustomize binary.
Feature requests: what underlying problem are you trying to solve with this feature?
Currently I have to apply custom patches to
rules_gitops
to make it work on NixOS machines - I would rather treat it in the same manner other, similar Bazel tools (rules_k8s, rules_docker).It may seem trivial to add few patches in one project, but keeping track of it in many WORKSPACES is tedious.
Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
$ bazel build //kubeview:kustomize-dev
What operating system are you running Bazel on?
NixOS 20.09
What's the output of
bazel info release
?release 3.3.1- (@non-git)
If
bazel info release
returns "development version" or "(@non-git)", tell us how you built Bazel.It was installed by nix package manager link.
Snippet of the
WORKSPACE
file that includes rules_gitops rules.Have you found anything relevant by searching the web?
Any other information, logs, or outputs that you want to share?
In connection with closing of issue 52, this would make
adobe/rules_gitops
support NixOS nearly out-of-the-box.The text was updated successfully, but these errors were encountered: