!ZUiNnfpRqQMDrPLChM:nixos.org

Nix ♥ la francophonie

233 Members
Salon francographe de NixOS76 Servers

Load older messages


SenderMessageTime
31 Mar 2022
@smith:livegen.netSmith
En réponse à @putch4r:matrix.org
tu as deja nixos d'installé sur ton pinebook pro ou pas encore ?
Non justement pas encore. Je viens de voir que c’etait possible. Je me suis renseigné il faut deja que j’essaye de mettre tow-boot apparement?
21:07:52
@putch4r:matrix.orgputchar
In reply to @smith:livegen.net
Ok je vois mais c’etait plutot pour faire l’install initial. Je peux boot sur l’image standard aarch64 ou bien je dois build moi meme?
En fait le channel nixos hardware a pas besoin d être ajouté pendant l'installation de nixos. Tu peux le faire après sans aucun soucis (désolé j'avais mal lu ton message)
21:08:36
1 Apr 2022
@putch4r:matrix.orgputcharhttps://nixos.wiki/wiki/NixOS_on_ARM/PINE64_Pinebook_Pro j'avoue que c'est pas anodin comme config 08:23:23
3 Apr 2022
@Sweenu:matrix.orgSweenu Hello !
Je suis en train de migrer un playbook ansible qui déploie des containers vers un host nixos avec le module virtualisation.oci-containers. Je me demandais, c'est quoi le mieux pour remplacer le templating que j'avais avec Ansible (jinja). Si je mets mes fichiers de config inline alors c'est simple mais si je préfères les avoirs à part et faire readFile alors c'est quoi le mieux pour injecter des variables ?
14:59:01
@raitobezarius:matrix.orgraitobezariusle plus simple c'est de faire du Nix directement14:59:32
@raitobezarius:matrix.orgraitobezariusah tu veux readFile et changer dedans14:59:48
@raitobezarius:matrix.orgraitobezariussubstituteInPlace / replace en Nix devrait pouvoir faire l'affaire15:00:04
@raitobezarius:matrix.orgraitobezariusmais c'est très basique15:00:15
@raitobezarius:matrix.orgraitobezariussi tu veux reproduire le comportement de templating, il faut faire une dérivation et les calculer avec un outil de templating15:00:31
@symphorien:xlumurb.eusymphorienc'est des fonctions bash: il faut faire une dérivation qui appelle substitute et installer le fichier corrigé dans $out15:00:39
@raitobezarius:matrix.orgraitobezarius oui, j'entendais substituteInPlace pour une dérivation et une fonction de la lib pour replacer les strings avec des machins comme @xxx@ 15:01:05
@symphorien:xlumurb.eusymphorienje ne crois pas qu'il y a de templating pour des valeurs nix sans passer au niveau d'une dérivation avec pkgs.runCommand par exemple15:01:45
@raitobezarius:matrix.orgraitobezariusrien t'empêche d'utiliser https://teu5us.github.io/nix-lib.html#builtins.replacestrings pour implémenter une substitution simple en tout cas, mais pas un vrai langage de templating15:02:22
@raitobezarius:matrix.orgraitobezariussi tu veux mettre tes fichiers à part, une autre solution consiste à faire des .nix qui prennent des arguments et à les appeler depuis tes fichiers principaux15:02:52
@raitobezarius:matrix.orgraitobezariuset dans ce .nix, tu fais un inline + la signature de tes paramètres15:03:00
@raitobezarius:matrix.orgraitobezariusquitte à resplitter les parties non dynamiques avec du readFile15:03:11
@Sweenu:matrix.orgSweenu

Okay, merci pour vos réponses ! J'allais partir sur faire un import d'un fichier nix comme tu dis mais je voulais être sûr que y'avais pas mieux. Le seul désavantage avec ça c'est que éditer le fichier est moins pratique puisque mon editeur ne détecte pas que dans la string c'est du yaml et donc pas de couleur ou quoi. Fin bref, je vais surement partir la dessus quand même.

Dans l'idéal, je verrais bien un truc ou tu fais readTemplate et c'est comme readFile mais tu peux faire des ${} à l'intérieur. Si je deviens meilleur en Nix, j'essaierai d'implémenter ça :P

15:07:59
@raitobezarius:matrix.orgraitobezariusça me paraît complexe d'implémenter readTemplate si on autorise n'importe quoi dans les ${}15:10:36
@raitobezarius:matrix.orgraitobezariustechniquement, tu pourrais avoir une drv, ça revient à évaluer un fichier Nix15:10:54
@raitobezarius:matrix.orgraitobezariusla seule différence c'est que ton truc c'est un fichier Nix sans les dépendances explicites en les variables, ce qui m'a l'air d'être une mauvaise chose15:11:10
@raitobezarius:matrix.orgraitobezariusla seule chose pseudo possible, c'est d'utiliser qq chose comme https://github.com/NixOS/nix/issues/1491 pour parser des fichiers avec un fragment de Nix plus faible et de faire la substitution basé sur un contexte qui serait fourni à readTemplate15:12:00
@raitobezarius:matrix.orgraitobezariusje suis pas convaincu que ça soit utile / intéressant comparé à une approche purement Nix ou d'appeler un helper dans une dérivation, ce qui donne accès à Dhall, etc.15:12:29
@raitobezarius:matrix.orgraitobezariusen ce qui concerne ton éditeur, il existe des solutions15:13:08
@raitobezarius:matrix.orgraitobezariustreesitter est capable de parser plusieurs langages dans un même fichier15:13:37
@raitobezarius:matrix.orgraitobezariusça devrait être possible de l'adapter pour le laisser reconnaître les syntaxes dans les Nix litterals15:13:55
@raitobezarius:matrix.orgraitobezarius(c.f. https://github.com/tree-sitter/tree-sitter/discussions/793)15:14:11
@Sweenu:matrix.orgSweenuMerci pour les explications ! Je vais faire au mieux pour l'instant, je verrai pour améliorer plus tard. Pour l'éditeur, quand https://helix-editor.com/ (qui utilise treesitter) aura atteint la parité avec Kakoune, je passerai peut-être dessus. D'ici là, y'aura peut-être le multi language support :)15:18:12
@raitobezarius:matrix.orgraitobezariusaussi, je réalise que puisque c'est du YAML, c'est aussi tout à fait possible de l'écrire directement en Nix puis de faire un toYAML pour avoir la version YAML et de rester que sur des éléments Nix15:18:31
@raitobezarius:matrix.orgraitobezarius(mais c'est pas tjrs évident)15:18:42
@Sweenu:matrix.orgSweenuAh oui! je pourrais faire ça en effet. C'est pas toujours évident à quel niveau ?15:20:02

Show newer messages


Back to Room ListRoom Version: 6