Logo journal du hacker middle
    1. 3

      Je ne signerais pas cette pétition en ligne. En plus, traiter le gouvernement Français de « faciste » est inadmissible. En outre, la pétition de Mozilla est une mesure démagogique.

      Je n’ai pas encore eu le temps de lire les documents officiels.

      1. 2

        Il faut nuancer et ne pas mettre tout le monde dans le même panier. Depuis toujours certains libristes sont contre l’opensource et à insister pour le Libre.

        1. 1

          J’ai pu assembler ma propre tour de bureau. Les composants de l’ordinateur commandés sur le Web à une grande entreprise ont été choisis à l’aide d’un outil en ligne, notamment pour garantir leurs compatibilités. Vraiment pratique et cela facilite amplement la tâche, bien qu’il faille tout de même apporter une réflexion technique personnelle pour éviter les déconvenues. J’ai également beaucoup comparé les configurations. Tuxedo proposait une configuration de PC quasi semblable à la mienne pour un prix augmenté de 400€. Leur configuration plus générique que la mienne ne permettait pas de substituer certains composants (comme la mémoire vive disponible, celle de stockage, ou encore, l’absence de carte graphique (APU)). Par contre, ce qui est potentiellement difficile dans le cas qui est le mien, et qui est pris en charge par Tuxedo, c’est le support effectif du matériel par le système d’exploitation.

          Cest intéressant de voir que des entreprises vendent du matériel avec GNU/Linux. Mais cela dépend éventuellement de plusieurs paramètres selon les facteurs à considérer.

          1. 1

            Pourtant le contrat avec l’OpenSource® était assez clair ; siphonner le logiciel libre pour gagner de l’argent. Maintenant que c’est le cas les libristes semblent tomber de leur chaise.

            1. 1

              Bonjour :)

              Merci de ta lecture. <3

              Oui, j’ai un peu tordu la vérité pour expliquer la recopie du state 0, quitte à un peu travestire le comportement réel.

              Mais tu as raison l’utilisation du terme “desugar” est un abus de langage de ma part ^^’

              1. 1

                Chouette article didactique qui prend l’approche d’expliquer tout ce sur quoi repose les Stream pour en expliquer le fonctionnement. Top :)

                Un petit détail sur la partie où X implémente Copy pour permettre de le réutiliser et éviter le move. En fait, ce n’est pas le compilateur qui décide de faire une copie avant d’effectuer la boucle for, c’est bien la signature de into_iter qui force ce comportement:

                fn into_iter(self) -> Self::IntoIter
                

                La fonction prend self par valeur. Pour une structure implémentant Copy, une copie sera faite, sinon ce sera un move.

                Du coup, l’exemple ne se “désugarise” pas en:

                let x = X { state: 0 };
                
                let x_copy1 = x; // x_copy1 = X { state: 0 } -- copie de x en x_copy1
                let iterator1 = x_copy1.into_iter(); // x_copy1 est consommé par into_iter mais pas x
                for i in iterator1 {
                    println!("{i}")
                }
                
                let x_copy2 = x; // x_copy2 = X { state: 0 } -- copie de x en x_copy2
                let iterator2 = x_copy2.into_iter(); // x_copy2 est consommé par into_iter mais pas x
                for i in iterator2 {
                    println!("{i}")
                }
                

                Mais plutôt en:

                let x = X { state: 0 };
                
                let iterator1 = x.into_iter(); // x est copié pour l'envoyer à into_iter qui veut consommer self
                for i in iterator1 {
                    println!("{i}")
                }
                
                let iterator2 = x.into_iter(); // idem
                for i in iterator2 {
                    println!("{i}")
                }
                

                Sinon, bon article. Merci :)

                1. 1

                  Content que ça t’ait plu :)

                  1. 2

                    Merci pour l’article, j’ai trouvé ça super.

                    1. 1

                      Abonnez-vous pour soutenir le travail

                      1. 1

                        Je n’ai jamais essayé mais il y a PantherX. Ils ont construits un système d’exploitation basé sur Guix, dans le but de le commercialiser, pour le rendre accessible.

                        1. 1

                          Pour compléter, voici une conf de woodpecker pour builder un site avec hugo et pousser le code générée sur une branche spécifique (contexte : https://www.deblan.io/post/624/gitnet-heberge-vos-pages-statiques) : https://gitnet.fr/deblan/pages-ci/src/branch/master/.woodpecker.yml

                          1. 1

                            Je n’aime (vraiment) pas Github Actions donc je comprend l’envie de s’en éloigner. Par contre, une CI comme Woodpecker est simple et je pense adaptée pour faire ça. Dans ce concept de déploiement, je trouve qu’il y a plusieurs problèmes. Le premier est d’avoir des outils de build sur ton serveur. Le second est que tu ne tests pas si ton build se passe bien.

                            1. 1

                              Pas de nginx dans Redhat ? Mais oui bien sûr…

                              1. 1

                                Perso, dans le repo git de mon site hugo, j’ai ajouté un simple script shell dans .git/hooks/pre-push . À chaque fois que je git push, il est automatiquement executé, ça génère le site et tout le bordel et pousse les fichiers vers le serveur qui héberge.

                                Oui, j’aurais pu aussi faire ça. Ca m’obligerait à avoir un accès SSH à ma machine, ce qui n’est pas le cas aujourd’hui (elle est pas directement exposée sur Internet, uniquement trafic HTTP et encore, elle est derrière un reverse proxy)

                                Et les webhooks c’est pas une spécificité de Github donc c’est pas vraiment une dépendance

                                1. 1

                                  Oh, mais que l’idée est bonne !!! Tu veux bien me fournir ton script pre-push… après faut que je voye/trouve avec Gitea comment faire, mais étant donné que mon service Gitea est sur la même machine que mon service web… :p

                                  1. 2

                                    J’ai quand même l’impression que ça aurait pu simplement se faire en utilisant un script lancé par git.

                                    Perso, dans le repo git de mon site hugo, j’ai ajouté un simple script shell dans .git/hooks/pre-push . À chaque fois que je git push, il est automatiquement executé, ça génère le site et tout le bordel et pousse les fichiers vers le serveur qui héberge.

                                    Du coup pas de webhook, pas de dépendance à github.

                                    1. 1

                                      Si vous ne connaissez pas, je vous conseille de jeter un oeil à MailU. C’est une solution mail complète en docker basée sur les outils courants (dovecot, postfix, rspamd, snappymail) avec une interface web de management. un fichier environnement à compléter, et un coup de docker compose : tout est configuré. il reste juste à faire la conf “réseau”, à savoir le DKIM/SPF sur votre domaine (mailu vous dit quoi déclarer) et le tour est joué.

                                      Je n’utilise pas cette solution personnellement, mais je la vois tourner ailleurs et c’est simple (en tout cas ça se teste dans l’heure)

                                      1. 2

                                        Avoir un serveur de messagerie à domicile semble un challenge à relever. Est-ce qu’on peut réussir à surmonter les cas communs ? C’est surprenant. Je dispose actuellement d’une connexion fibre Orange. Sur des sites Web évoquant l’auto-hébergement, on peut lire que le port 25 de la « box » est bloqué, ce qui empêche l’échange de courriels entre serveurs. On peut aussi lire que les routeurs domestiques sont généralement limités en terme de fonctionnalités. Je pense que cela est vrai dans une certaine mesure. Orange ne supporte pas officiellement les solutions alternatives. Il est par exemple formellement interdit de modifier le micrologiciel de leur « box » ou de réaliser une quelconque manipulation parce que l’opérateur est tenu responsable de la sécurité de son réseau. Il paraît que le blocage du port 25, sur le « réseau » Orange, puisse se désactiver en IPv6 ou en ayant son propre routeur. On peut trouver des informations sur le Web, pour les téméraires, afin de remplacer la « box » de son opérateur. Cela introduit des limitations (voir la téléphonie ou la télévision) et permet éventuellement d’en surmonter certaines. Donc, en étant un fou furieux de la technique, est-ce qu’on se retrouve dans la situation dépeinte par l’auteur de l’article, à savoir, « ne pas faire parce que c’est trop difficile » ?

                                        1. 1

                                          Mon précédent message n’est pas aussi clair que je l’aurais souhaité. Ce que je trouve regrettable ce n’est pas l’article en soi. C’est le fait que l’auto-hébergement a une dimension globale qui s’adresse en fait, principalement aux personnes ayant un certain niveau de connaissance en réseautique, comme l’a averti explicitement l’auteur.