Nix ♥ la francophonie | 209 Members | |
| Salon francographe de NixOS | 70 Servers |
| Sender | Message | Time |
|---|---|---|
| 19 Oct 2023 | ||
| o/ Depuis que je suis passé à home-manager sur mes ubuntu pro / arch perso, j’ai un super env de bureau, mais ça a totalement détruit mes env de dev C++, Rust & Python. Y’a plus jamais rien qui compile normalement. Là, j’ai voulu compiler un projet rust sur nixos sur un laptop de test, et je m’en suis sorti avec un shell.nix. Du coup, c’est quoi la pratique attendue pour dev ? Faire un shell.nix dans tous mes projets C++ / Rust / Python ? | 11:33:33 | |
moi je fais juste nix-shell -p rustc pour travailler sur un projet Rust | 11:39:53 | |
| et ça marche avec rust-analyzer out of the box plutôt bien | 11:40:00 | |
| pour du Python, c'est plus compliqué dès lors qu'il y a des dépendances natives | 11:40:16 | |
j'utilise en général poetry2nix et je le jette au poetry.lock ou je fais python3.withPackages (ps: [ ps.touslespaquets dont j'ai besoin ]) s'ils sont tous dans nixpkgs | 11:40:38 | |
| En général, je trouve que si un paquet Python est pas dans nixpkgs, c'est pas bon signe pour le projet Python :P | 11:40:50 | |
| ok, merci ! | 11:41:15 | |
| et pour C++, ça dépend beaucoup du build system | 11:43:28 | |
| en général pour Makefile, CMake et Meson, on s'en sort plutôt bien en mettant les dépendances mais de toute façon en moyenne les projets random C++ ont requièrent toujours une intervention manuelle pour les dépendances | 11:43:52 | |
| Après oui c'est plus chiant que d'installer toutes les dépendances dont on a besoin dans la vie progressivement | 11:44:07 | |
| Ce que je fais au bout d'un moment c'est que je collecte des templates de shell.nix | 11:44:14 | |
| que je copie dans les projets dans lequel je travaille | 11:44:19 | |
Et après tu fais genre un truc genre cp ~cppshell.nix shell.nix et après tu go | 11:44:34 | |
| * en général pour Makefile, CMake et Meson, on s'en sort plutôt bien en mettant les dépendances mais de toute façon en moyenne les projets random C++ ont tjrs requis toujours une intervention manuelle pour les dépendances | 11:44:52 | |
| Ok, je vais tenter un truc comme ça | 11:46:29 | |
| aussi direnv rend la vie mille fois plus facile avec tous ces shell.nix | 16:32:36 | |
| Oui, direnv c’est bien, et je trouve direnv avec lorri encore plus chouette (lorri permet de garder les shells en cache, sans garbage collection). En ce moment pour python j’utilise juste poetry et plus poetry2nix : poetry2nix est sans doute très bien pour faire le packaging à la fin. Mais quand je l’ai testé pour le développement je me retrouvais tout le temps à devoir changer ou ajouter des override du build system. Et quand j’ai besoin de librairie je les rajoute en exportant Pour mes projets perso je rajoute un Au travail, pour éviter de "polluer" les repos, j’ai un flake avec poetry dans un répertoire externe, python bloqué à 3.9, et j’utilise direnv pour l’activer dans tous mes projets. Le problème c’est que l’activation n’est pas instantanée. | 17:51:43 | |
| * Oui, direnv c’est bien, et je trouve direnv avec lorri encore plus chouette (lorri permet de garder les shells en cache, sans garbage collection). En ce moment pour python j’utilise juste poetry et plus poetry2nix : poetry2nix est sans doute très bien pour faire le packaging à la fin. Mais quand je l’ai testé pour le développement je me retrouvais tout le temps à devoir changer ou ajouter des override du build system. Et quand j’ai besoin de librairie je les rajoute en exportant Pour mes projets perso je rajoute un Au travail, pour éviter de "polluer" les repos, j’ai un flake avec poetry dans un répertoire externe, python bloqué à 3.9, et j’utilise direnv pour l’activer dans tous mes projets. Le problème c’est que l’activation n’est pas instantanée. | 17:54:52 | |
| * Oui, direnv c’est bien, et je trouve direnv avec lorri encore plus chouette (lorri permet de garder les shells en cache, sans garbage collection). En ce moment pour python j’utilise juste poetry et plus poetry2nix : poetry2nix est sans doute très bien pour faire le packaging à la fin. Mais quand je l’ai testé pour le développement je me retrouvais tout le temps à devoir changer ou ajouter des override du build system. Et quand j’ai besoin de librairie je les rajoute en exportant Pour mes projets perso je rajoute un Au travail, pour éviter de "polluer" les repos, j’ai un flake avec poetry dans un répertoire externe, python bloqué à 3.9, et j’utilise direnv pour l’activer dans tous mes projets. Le problème c’est que l’activation n’est pas instantanée. | 17:56:19 | |
| 20 Oct 2023 | ||
| 10:34:01 | ||
| je suis d'accord que lorri c'est bien | 20:45:39 | |
| même si le projet est assez mort | 20:45:50 | |
| 21 Oct 2023 | ||
| 16:41:07 | ||
| 22 Oct 2023 | ||
| Hello hello | 15:11:27 | |
| Prochain meetup à l'ENS lundi 30 octobre à 19h | 15:12:01 | |
| https://discourse.nixos.org/t/nix-parisian-meetup-october-30/34438 | 15:12:02 | |
In reply to @julienmalka:matrix.orgSur Mobilizon l'event est à 20h et non 19h. Typo ? | 15:33:55 | |
| Ah, merci | 15:35:55 | |
| Nan juste j'ai créé l'event depuis une autre timezone | 15:36:07 | |
| Fixed, thanks | 15:37:35 | |