@jrychter @cdwilson else I‘d like TOML
#dhall looks interesting too, but I'm not sure if it's still active. Spago, the #purescript build system, used it, but I think they changed to YAML.
@jrychter @cdwilson else I‘d like TOML
#dhall looks interesting too, but I'm not sure if it's still active. Spago, the #purescript build system, used it, but I think they changed to YAML.
Изучаю Dhall понемногу. Это язык конфигураций, как JSON, но с комментариями, типами, импортом и даже функциями. Легко конвертируется в json и yaml (с очень небольшими ограничениями).
В целом я в восторге. Если вам нужно из маленького json подставить поля в какой-то большой json, откажитесь от #json и используйте dhall. Задача станет тривиальной.
В #easyXray я решал эту задачу на bash через jq, и это пытка по сравнению с #dhall. #dhalllang
brb, rewriting all my #nix code written in #dhall into nix code written in #purescript
I've experimented adding #mustache templates to KitchenSink (my #haskell static-site generator with PHP-envy). The feature plays together with the inlined-datasets.
Very primitive at the moment (e.g., no partials) and limited wrt to what I would like to make (i.e, properly-dynamic sections, for now the template is evaluated at loading-time).
Dhall sections also get the same, but the added value is less clear for #dhall which already can template quite well.
https://kitchensink-tech.github.io/sections.html#mustache-templates-experimental
I'm impressed with how #dhall tooling has progressed.
Found out #apple came out with their own config language, #nkl. Already tried #dhall, #cue, and #nickel in the past. I feel I don't need more alternatives to yaml. 😅
I've gone so deep into these, I've stepped out the other side. 🫠
I instead accepted #sqlite as the one true config language. ✌️ By "just" using a database, you move past the config language trope. Focusing again on the thing you trying to do. Make software work for you. 😅
sometimes instead of a list, you have to use an object as one #programming #dhall
Better configuration languages - A talk about Dhall - Till.red - https://till.red/b/6/
I hated yaml files so I started using #dhall here and there to not lose sanity. Now I hate yaml even more.
You know I'm neither impatient nor an IT noob, but when trying to install #Kitsune on Debian 11 yesterday, I gave up after two hours.
The first hour passed while cargo compiled almost 1000 Rust packages. Fine, I guess this is what happens when you enter a new ecosystem.
The second hour was more infuriating because I failed to construct a valid configuration file for Kitsune. These are in a language called #dhall which seems to be inspired by Haskell.
I tried renaming the config.example.dhall and switching it to sqlite because I thought that for a test drive, installing PostgreSQL was overkill. So I copied the line from https://docs.joinkitsune.org/en/running/basic-configuration/ and got this error message:
thread 'main' panicked at 'Failed to connect to database: Pool(Backend(ConnectionError(CouldntSetupConfiguration(DatabaseError(UnableToSendCommand, "invalid connection string: unexpected EOF")))))', kitsune/src/main.rs:94:6
Using the entire configuration example from that website results in the same error message.
/cc @dev
@dpwiz @haskman as I said, this is stackage. (See haskman's argument about curation). If you squat, you get kicked.
But yeah, #haskell needed #stackage because of #cabalHell, whereas #purescript has both #nix integration and #dhall / #spago combo wombo, which is a less known "nix for language ecosystems".
But if this website (which I didn't understand beyond "I am certain I don't need this") provides `go get`-like experience, then it will be very good for beginners.
I’ve been struggling with generating a bunch of HCL for #Terraform with #dhall today. Finally got it working and it’s a dream. Can now generate dev and production #infrastructure specs with a single command, then commit, and terraform cloud takes over and executes the plan for us.
Biggest issue was dealing with the lack of text equality checks in dhall, but got around that with union types and it’s much better. Strongly typed, no fat finger mistakes possible. #winning
My website is now entirely built with #Zola using #Nix including my resume which is created from a #Dhall configuration extending the #JSONResume schema !
Feel free to review my Nix files 🥰 https://github.com/gaelreyrol/dhall-resume/blob/main/flake.nix https://github.com/gaelreyrol/gaelreyrol.dev/blob/main/flake.nix
Dhall is a programmable configuration language that you can think of as: JSON + functions + types + imports
Yet another layer of abstraction, which then can be converted into YAML, JSON etc.
@tommorris
I actually find #dhall configuration files quite interesting.
CI builds get so utterly complicated. It's why I favor #nix. You get an absolute with all the dependencies, cache, environment, and releases. 😅
Still, options are now alone to do nix on CI. A small list of tools that to help in this world:
- #daggerci code ci
- #earthlyci dsl ci
- #nix dsl for artifacts
- #dhall yaml generation
- #cue yaml generation