!ZUiNnfpRqQMDrPLChM:nixos.org

Nix ♥ la francophonie

216 Members
Salon francographe de NixOS70 Servers

Load older messages


SenderMessageTime
19 Oct 2023
@raitobezarius:matrix.orgraitobezariusEn général, je trouve que si un paquet Python est pas dans nixpkgs, c'est pas bon signe pour le projet Python :P11:40:50
@gsaurel:laas.frnim65sok, merci !11:41:15
@raitobezarius:matrix.orgraitobezariuset pour C++, ça dépend beaucoup du build system11:43:28
@raitobezarius:matrix.orgraitobezariusen 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épendances11:43:52
@raitobezarius:matrix.orgraitobezariusAprès oui c'est plus chiant que d'installer toutes les dépendances dont on a besoin dans la vie progressivement11:44:07
@raitobezarius:matrix.orgraitobezariusCe que je fais au bout d'un moment c'est que je collecte des templates de shell.nix11:44:14
@raitobezarius:matrix.orgraitobezariusque je copie dans les projets dans lequel je travaille11:44:19
@raitobezarius:matrix.orgraitobezarius Et après tu fais genre un truc genre cp ~cppshell.nix shell.nix et après tu go 11:44:34
@raitobezarius:matrix.orgraitobezarius * 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épendances11:44:52
@gsaurel:laas.frnim65sOk, je vais tenter un truc comme ça11:46:29
@symphorien:xlumurb.eusymphorienaussi direnv rend la vie mille fois plus facile avec tous ces shell.nix16:32:36
@koalp:rcp.tfkoalp ⚡️

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 LD_LIBRARY_PATH. Avec poetry2nix c’est beaucoup plus propre, c’est sûr.

Pour mes projets perso je rajoute un flake.nix (il y a des templates de flake pour rust et python) ou un shell.nix, ça permet de lier l’environnement de développement au projet et ça c’est vraiment chouette.

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
@koalp:rcp.tfkoalp ⚡️ *

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 LD_LIBRARY_PATH. Avec poetry2nix c’est beaucoup plus propre, c’est sûr.

Pour mes projets perso je rajoute un flake.nix (il y a des templates de flake pour rust et python) ou un shell.nix, ça permet de lier l’environnement de développement au projet et ça c’est vraiment chouette, et ça évite d’installer des dépendances système qui ne servent que pour un projet (c++), et d’oublier de les désinstaller.

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
@koalp:rcp.tfkoalp ⚡️ *

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 LD_LIBRARY_PATH. Avec poetry2nix c’est beaucoup plus propre, c’est sûr.

Pour mes projets perso je rajoute un flake.nix (il y a des templates de flake pour rust et python) ou un shell.nix, ça permet de lier l’environnement de développement au projet et ça c’est vraiment chouette, et ça évite d’installer des dépendances système qui ne servent que pour un projet (c++), et d’oublier de les désinstaller.

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.
Mais après deux ans, je tâtonne encore un peu pour trouver la meilleure manière de faire.

17:56:19
20 Oct 2023
@ninjatrappeur:alternativebit.frNinjaTrappeur changed their display name from NinjaTrappeur to PicNoir (was Ninjatrappeur).10:34:01
@symphorien:xlumurb.eusymphorienje suis d'accord que lorri c'est bien20:45:39
@symphorien:xlumurb.eusymphorienmême si le projet est assez mort20:45:50
21 Oct 2023
@duponin:alternativebit.frduponin left the room.16:41:07
22 Oct 2023
@julienmalka:matrix.orgJulien MalkaHello hello15:11:27
@julienmalka:matrix.orgJulien MalkaProchain meetup à l'ENS lundi 30 octobre à 19h15:12:01
@julienmalka:matrix.orgJulien Malkahttps://discourse.nixos.org/t/nix-parisian-meetup-october-30/3443815:12:02
@bew:matrix.orgbew
In reply to @julienmalka:matrix.org
Prochain meetup à l'ENS lundi 30 octobre à 19h
Sur Mobilizon l'event est à 20h et non 19h. Typo ?
15:33:55
@julienmalka:matrix.orgJulien MalkaAh, merci15:35:55
@julienmalka:matrix.orgJulien MalkaNan juste j'ai créé l'event depuis une autre timezone15:36:07
@julienmalka:matrix.orgJulien MalkaFixed, thanks15:37:35
@victor_mignot:matrix.org@victor_mignot:matrix.org

Bonjour ici !
Je suis entrain de tenter de faire une config NixOS sous forme de flake commune à toutes mes machines.
Mon objectif ici est de passer par un ensemble de modules custom, et de définir les configs de machines quasi-exclusivement avec les options que ces modules déclarent.
Comme j'ai pas envie de faire de modules spécifiques pour home-manager, et que j'aimerais que l'ensemble des informations pour une machine soit défini dans un seul et unique fichier, cela complique un peu la tâche (même fichier/module importé plusieurs fois pour définir la configuration). J'ai toutefois une jolie erreur quand j'essaie un petit nix flake check qui semble globalement dire qu'il n'arrive pas à récupérer l'option de mes modules custom lors de son ajout dans le paramètre modules de la fonctionnixosSystem.
J'avoue que je me gratte la tête depuis quelques heures (ça m'étonnerait pas que ça soit lié à une erreur débile de ma part).
Comme je n'ai pas d'autres utilisateurs de Nix dans mon entourage, si quelqu'un a quelques minutes à m'accorder pour me filer un coup de main, ça m'aiderait vraiment beaucoup !

Voici le lien du repo: https://git.sr.ht/~dala/nixos-flake-config

Trigger warning: j'ai assez peu d'expérience avec Nix et essaye juste de faire les choses selon la doc et ce que je comprends du code de nixpkgs. Il y a certainement des choses qui vont vous piquer les yeux (je prend vos retours si y'a moyen de faire les choses plus proprement).
Merci d'avance !

15:52:22
@Minijackson:matrix.orgMinijacksonhey, j'ai regardé un peu, et je pense avoir trouvé 2 soucis19:41:36
@Minijackson:matrix.orgMinijackson

le principal, c'est que le concept des modules comme ceci sont des concepts de NixOS et pas du langage Nix:

{
  imports = [ ... ];

  options = ...;
  config = ...;
}
19:42:22
@Minijackson:matrix.orgMinijackson du coup, si tu importe un fichier comme ceci avec un import comme fait dans ton flake.nix, ça va juste retourner un objet avec imports, options, et config, sans plus 19:43:05
@Minijackson:matrix.orgMinijackson si tu veux utiliser un système d'option, il faut soit passer par une configuration NixOS (le plus simple), en évaluant tout par lib.nixosSystem) 19:43:50

Show newer messages


Back to Room ListRoom Version: 6