Based on our record, GNU Guix should be more popular than Jsonnet. It has been mentiond 90 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.
> So what we are missing now is a 500GB framework that can write the config file for the programming language that is writing a config file for the actual program I wish to use. That exists since 1960. It's called LISP. The e.g. https://guix.gnu.org/ uses with great success, the Guile Scheme dialect of LISP, to be precise. And FYI the "framework" is:- Source: Hacker News / 3 months ago$ ls --human-readable --size $(readlink $(which...
> inventing a brand new purely functional language programming language. ISTM that if you dislike that, then there's GUIX. https://guix.gnu.org/ Very briefly, AFAICT, it's "Nix but using Scheme". - Source: Hacker News / 4 months ago
And just wait till you discover Arch Linux, Gentoo, Guix, or NixOS. Source: 10 months ago
Https://guix.gnu.org for example. It did load before an update but it doesn't anymore. Source: 11 months ago
Is it? Seems to me it's used for some pretty cool stuff, heard of Guix? Source: 11 months ago
Jsonnet[1] and kapitan[2] are the tools I currently use. Their learning curve is not optimal (and I tried to contribute to smoothen it with a jsonnet course[3] and a 'get started wit kapitan' blog post[4]), but once used to it it's hard to do without, and their combination makes them even more useful (esp. If you deploy K8s). In Ruud's case, Jsonnet might have been worth looking at as Hashicorp tools can be... - Source: Hacker News / 3 months ago
Kubernetes config is a decent example. I had ChatGPT generate a representative silly example -- the content doesn't matter so much as the structure: https://gist.github.com/cstrahan/528b00cd5c3a22e3d8f057bb1a75ea61 Now consider 100s (if not 1000s) of such files. I haven't given Pkl an in depth look yet, but I can say that the Industry Standard™ of "simple YAML" + string substitution (with delicate, error prone... - Source: Hacker News / 3 months ago
Maybe you'd like jsonnet: https://jsonnet.org/ I find it particularly useful for configurations that often have repeated boilerplate, like ansible playbooks or deploying a bunch of "similar-but" services to kubernetes (with https://tanka.dev). Dhall is also quite interesting, with some tradeoffs: https://dhall-lang.org/ A few years ago I did a small comparison by re-implementing one of my simpler ansible... - Source: Hacker News / 8 months ago
Apologies for the lack of context, and for missing this comment until today. Both are tools for defining kubernetes manifests (which are YAML) in a reusable manner. Jsonnet is a formally specified extension of JSON. It’s essentially a functional programming language (w/some object oriented features) that generates config files in JSON/YAML/etc, so it’s straightforward to determine whether an input file is valid,... - Source: Hacker News / 12 months ago
I like Google's Jsonnet [1], which has all of this except for 4. Jsonnet is quite mature, with fairly wide language adoption, and has the benefit of supporting expressions, including conditionals, arithmetic, as well as being able to define reusable blocks inside function definitions or external files. It's not suitable as a serialization format, but great for config. It's popular in some circles, but I'm sad that... - Source: Hacker News / 12 months ago
NixOS - 25 Jun 2014 . All software components in NixOS are installed using the Nix package manager. Packages in Nix are defined using the nix language to create nix expressions.
Dhall Configuration Language - A non-repetitive alternative to YAML
Conda - Binary package manager with support for environments.
YAML - YAML 1.2 --- YAML: YAML Ain't Markup Language
Portage - Portage is source-based package manager used by Gentoo and its descendants. It controls all process from fetching source through building it, installing into clean environment to "merging" with already installed software.
Protobuf - Protocol buffers are a language-neutral, platform-neutral extensible mechanism for serializing structured data.