3 ms·
Tangled has a nix based workflow engine that looks very similar, if you are into nix and self-hosting runners https://tangled.org/tangled.org/core/blob/master/
by verdverm 11mo ago
Tangled has a nix based workflow engine that looks very similar, if you are into nix and self-hosting runners
https://tangled.org/tangled.org/core/blob/master/docs/spindle/pipeline.md https://tangled.org/tangled.org/core/blob/master/docs/spindl...
(no affiliation)
---
Blog post about Tangled's CI: https://blog.tangled.org/ci https://blog.tangled.org/ci
- Cyph0n 11mo agoVery cool! Are there any blog posts or articles about Tangled? Docs seem pretty light.
- verdverm 11mo agoI pinged them on Bluesky to join this HN story comments, they would be better equipped to answer https://bsky.app/profile/tangled.org https://bsky.app/profile/tangled.org There looks to be a blog post here: https://blog.tangled.org/ci https://blog.tangled.org/ci
- teeray 11mo agoHow does this compare to just running Hydra yourself?
- IshKebab 11mo agoUseless for Mac or Windows presumably.
- verdverm 11mo agoself-hosted, so same story? I'm not a fan of nix and would have picked containers regardless for a git forge CI offering
- pxc 11mo agoIt is containers. It's based on Nixery, which is a virtual Docker registry where it puts together containers for you on the fly containing whatever packages you want from Nixpkgs.
- verdverm 11mo agoBy containers I mean I get to define my CI environment with containers, not nix or that somewhere under the hood containers are being used Like Argo or Jenkins. Pushing nix as the DX for GHA equivalent was a poor choice by Tangled IMO. It's too unusual for your average dev, I'm not interested in learning nix so I can use CI.
- pxc 11mo agoYour username is vaguely familiar. You're a CUE enthusiast, right? I think I've read (and enjoyed and benefited from) some documentation you've written! Yeah, I think it makes sense to also let people point to arbitrary OCI registries. I'd bet support for that is coming, especially since the execution environment is Dockerized anyway. > Pushing nix as the DX for GHA equivalent I think something like Nix actually makes more sense than YAML for this kind of thing. You want a DSL that is purpose-built so that configurations are declarative, simple configurations are simple to write, and configurations are composable. YAML is too much of a straightjacket. Some kind of built-in support for deep merges is a must, imo. How powerful/expressive the language should be is debatable, I think. I'm interested in Turing-complete DSLs like Nix and Nickel, but CUE could be a good fit here, too. Anyway I'm sure they'll add first-class support for using some OCI artifact to define a CI environment. Looks like their CI implementation only recently entered the first alpha.
- quasigod 11mo agoWhat do you mean? This is for CI, whatever the dev machine runs is irrelevant. Either way, the CI uses OCI containers built with Nix, you don't need Nix installed on the host. Also Nix supports MacOS.
- IshKebab 11mo agoI wasn't talking about developers machines. If you want to build and test software on Windows or Mac in CI, you obviously can't use a CI system that requires Linux. Yes I know about cross-compilation. > Also Nix supports MacOS. Doesn't matter. Tangled CI requires Docker.