Logo journal du hacker middle
  1. 1

    Génial… je ne connaissais pas ton blog. Je me seul moins seul francophone avec NixOS

    1. 1

      Moi j'utilise Nix mais pas encore sur NixOS.

      Tcho !

      1. 1

        Perso, Nixos est ma distribution principale depuis plus d'un an et maintenant je pleure à chaque fois que je dois en utiliser une autre. Pour du dev ou de l'admin sys, elle est vraiment géniale.

        1. 1

          Je m'y intéresse sérieusement, tu as quels problèmes dessus (car il y en a toujours) ? Je me suis mis à Nix pour voir le potentiel (énorme) mais je n'arrive pas à installer Chromium par exemple.

          Merci, Tcho !

          1. 1

            Je n'ai pas vraiment eu de problèmes mais plutôt des difficultés. La principale, c'est qu'il faut vraiment apprendre l'outil et que ça demande un peu de temps et d'effort.

            Par exemple, l'organisation du système de fichiers est très différente du FHS : tu ne peux pas “installer vite-fait dans /usr/local/bin”, il faut définir un package qui installe proprement.

            Une autre difficulté classique au début est le conflit de packages. Personnellement, je n'installe presque rien avec des “nix-env -iA”, seulement un paquet de “logiciels de tous les jours” que je définis dans “.config/nixpkgs/config.nix”. Quand je travaille sur un projet particulier, j'y écris un default.nix (dépendances, directives de construction…) et je lance un environnement correspondant avec un “nix-shell”.

            Enfin le langage de description de paquets est assez particulier et sa “bibliothèque” assez grande, ce qui est un peu perturbant au début. Il y a de bonnes docs/blogs/wikis sur le net mais il faut les trouver (et les lire)…

            Voilà, ce sont à peu près les seules difficultés, pour mon usage perso, du moins.

    1. 1

      As-tu essayé des frameworks qui s'attaquent au “problème javascript” ? https://wiki.haskell.org/The_JavaScript_Problem#Haskell_-.3E_JS Fay, Haste, UHC,…

      Ça fait bcp de syntaxe O_o Lorsque tu écris

      instance FromRow Task where
        fromRow = Task <$> field <*> field
      

      sais-tu absolument pourquoi c'est <$> et pas <*> ou dois-tu te référer à la documentation du module ?

      Et n'y a-t-il pas mieux que SQL.query_ c "SELECT * FROM task") ?

      merci en tout cas

      1. 1

        sais-tu absolument pourquoi c'est <$> et pas <*> ou dois-tu te référer à la documentation du module ?

        Il s'agit respectivement de fmap et du séquençage applicatif. C'est des fonctions vraiment standarts, tu peux les utiliser sur tous les applicative functors (aucune idée du terme franwais correct, désolé).

        Une grande partie des concepts sont standardisés via les typeclass (des interfaces) en Haskell. Tu peux apprendre les plus courants en lisant la typeclassopedia.

        Sinon oui, la documentation est un gros problème pour les novices.

        1. 1

          Pour Haskell en web front-end, il y a effectivement quelques outils mais je ne connais pas bien.

          Pour “Task <$> field <*> field”, ce sont effectivement des opérateurs classiques des foncteurs et foncteurs applicatifs. J'en parlerai peut-être dans une prochaine vidéo mais ici ça veut juste dire que pour lire une ligne dans la base de données, il faut lire deux champs (field) et les utiliser comme paramètre pour construire une valeur Task.

          Désolé d'avoir mis autant de temps à répondre.

        1. 1

          Tutoriels youtube + github sur la programmation fonctionnelle en Haskell (et autres) et le devops avec nix/nixos/nixops.

          1. 2

            Salute,

            En temps normal nous n'acceptons pas les “pages d'accueil” soumises comme info sur le Jdh. Là je comprends ta démarche, tu as probablement voulu d'un seul coup remonter tous tes articles. A l'avenir, merci de ne plus le faire.

            Tcho !

            1. 1

              Ok, désolé. La prochaine fois, j'attendrai d'avoir un nouvel article avant de le poster alors.