https://blog.gegeweb.org/c-est-quoi-gemini.html
gemini://home.gegeweb.org/c_est_quoi_gemini.gmi
- replies
- 4
- announces
- 14
- likes
- 11
@gerald Bon ! j'ai toujours pas tout compris sinon que les articles geminis ne sont pas lisibles via https donc via Firefox
J'avais lu l'article de @ploum https://ploum.net/gemini-le-protocole-du-slow-web/
et essayé celui de @bortzmeyer
https://www.bortzmeyer.org/statistics-gemini.html 😱 c'était en English
mais je viens de le trouver en french 😍
https://www.bortzmeyer.org/gemini.html
et pour le coup ils sont lisible par firefox 😉
ah ! merci pour les précisions , comme je ne comprends pas bien l'Anglais , je me suis fait avoir . @bortzmeyer @gerald @ploum
pas le Web donc pas interprétable par un navigateur Web
Je crois que c'est la seule chose que j'ai compris 😉 😀
> Bon ! j'ai toujours pas tout compris sinon que les articles geminis ne sont pas lisibles via https donc via Firefox
Ah merde !
Ça veut dire que je n'ai pas été assez clair et didactique dans mes explications !
@ploum @bortzmeyer
si si ! En fait je veux dire que je comprends sans comprendre vraiment
comme d'hab quoi !
je n'arrive pas à comprendre comment celui ou (surtout celle) qui voudrait aller sur place et voir comment fonctionne gemini doit faire
Mais j'ai encore un peu le temps de finir par comprendre @gerald
y a @ploum qui en parlant de Gopher va m'obliger à regarder ce que c'est que ce machin qui date du temps des dinosaures 😉 et puis je n'ai pas encore lu l'article de @bortzmeyer
Je viens de modifier un peu mon article (sur le blog, donc sur "internet") afin d'être un poils plus explicite sur ce point.
En gros pour aller sur "internet" tu utilises un navigateur comme Firefox ou Chrome qui va parler le protocole HTTP avec le serveur qui généralement va lui renvoyer du text/html qu'il sait (ou pas…) afficher.
Pour les liens gemini:// il va donc te falloir un logiciel (navigateur) spécifique qui "parle" ce protocole avec un serveur #gemini et qui sais lire et afficher le format text/gemini.
@ploum @bortzmeyer
Gopher est un protocole plus ancien, qui existait avant "Internet" et qui peut être transporté (pour échanger entre ordinateurs) sans utiliser la couche TCP/IP.
Ça date de l'époque ou on contactait une machine de modem à modem sans passer par des routeurs, via le téléphone. (si je dis pas de conneries…)
Gemini s'en inspire sur le principe je crois.
Ça risque de t'embrouiller l'esprit. ;)
Mais pour la culture générale "Internet", c'est bien d'être curieuse !
@bortzmeyer @ploum
Pour simplifier, et que
@bortzmeyer et @ploum me corrigent si je raconte des conneries, un protocole c'est ce qui défini (via des spécification, les "RFC" en sont) la façon (le "langage") que doivent employer les logiciels pour échanger du contenu.
On peut considérer ActivityPub utilisé par Mastodon comme un protocole au dessus du protocole HTTP pour le fediverse.
En gros ton logiciel client il ouvre une "socket" en tapant à une porte spécifique (le port) et commence par se présenter puis demander une ressource.
C'est la définition de ce dialogue qu'on appelle un protocole.
c'est en fait ce serveur qui me fait poser question ... ton serveur par exemple , sait tout lire ? Comment vous faites pour utiliser plusieurs navigateurs.. J'ai déjà du mal à surveiller un +Thunderbird . Je n'ouvre même plus Dino en même temps (De toute façon, personne ne cause sur Xmpp 😉) ni Liferea . J'ai déjà tellement facilement la mauvaise habitude de butiner partout 😉
@gerald @ploum @bortzmeyer
Merci de me corriger !
Des vagues souvenirs du premier réseau de machine client serveur TO7/MO5 en boucle en cours de techno/info au lycée (j'ai pas poursuivi plus loin… pour aller faire le saltimbanque) je n'ai pas mémoire qu'il y avait un routeur.
Le TO7 était le serveur les MO5 les clients. Et le signal faisait une boucle.
J'ai aussi souvenirs d'avoir "joué" avec des copains à se contacter de modem à modem en composant le n° de la ligne.
Mais en effet, il n'y avait que deux machines.
J'ai fait une longue pause loin des ordinateurs ensuite jusque fin 90…
@ploum @lrde
pour les protocoles, je crois avoir compris qu'il fallait un langage commun pour pouvoir dialoguer entre serveurs. Pour les RFC j'ai aussi compris qu'ils ont été mis en place pour que dans le monde entier tout le monde suivent des mêmes règles
Quand je dis compris . Cela ne va pas jusqu'à la capacité à transmettre ce que je pense savoir 🙂 @gerald @ploum @bortzmeyer
@gerald @lrde @bortzmeyer @ploum
On peut aussi lire les capsules gemini au travers d’un proxy http comme:
https://portal.mozz.us/gemini/gemini.circumlunar.space/
ou
https://proxy.vulpes.one/gemini/gemini.circumlunar.space/
A+
Le serveur désigne la machine et les logiciels, c'est trompeur.
Un serveur (logiciel) c'est comme le client.
Il sait pas tout lire et comprendre.
Il est programmé pour parler un ou plusieurs langage (protocole) spécifique.
Sur me Rpi à la maison, le "serveur physique", j'ai un serveur web (nginx) qui sert du contenu statique (HTML) et qui sert de "proxy" pour l'instance Mastodon.
Et j'ai un autre logiciel serveur pour le protocole Gemini.
De même que pour les mail, le transport et la distribution : SMTP. La lecteur en IMAP un autre logiciel serveur.
@ploum @bortzmeyer
Internet = réseaux d’ordinateurs interconnectés.
Protocole = langue utilisée entre les ordinateurs pour échanger des informations
Client = logiciel utilisé pour traduire les requêtes/réponses d’un humain dans le langage du protocole.
Serveur = logiciel qui permet à un ordinateur de répondre à des demandes venant d’un autre ordinateur.
Le web, le mail, gemini et gopher sont 4 protocoles (4 languages différents) qui fonctionnent sur Internet… (suite)
(note : ils peuvent fonctionner hors-Internet, par exemple sur un intranet).
Chaque protocole nécessite donc ses propres clients et ses propres serveurs. On ne peut pas surfer sur Google avec Thunderbird, on ne peut pas envoyer un mail ou surfer sur Gemini avec Firefox.
Sauf que sont apparus des "clients web" qui permettent d’envoyer des mails depuis Firefox. Firefox traduit traduit ton texte en protocole web (http) et l’envoie à Gmail. Gmail se charge ensuite .…
…de le traduire en langage mail.
Pareil avec Gemini. Il existe des « proxys » qui te permettent de surfer sur Gemini depuis Firefox. Bref, ils font le traducteur.
Mais sinon, tu peux installer Lagrange pour surfer sur Gemini.
Et pour répondre à « un truc de plus » (qui est très pertinent), Gemini est pour moi justement l’occasion de butiner sans ouvrir mon navigateur web. Je cherche à m’en passer le plus possible pour retrouver ma concentration ;-)
> on va enlever @ploum de notre discussion car je crois que masto fait trop de bruit pour lui
C'est dommage, il vient d'expliquer les choses bien mieux que moi ! ;)
@bortzmeyer
ah @ploum 😍 je croyais que notre conversation allait te déranger
Donc je peux installer Lagrange sur mon ordi si je n'ai pas de serveur ? @gerald @bortzmeyer
non non tu as raison, on continue avec nous 4 😀 @gerald @bortzmeyer
@lrde @gerald @bortzmeyer : bien entendu. Comme tu peux installer Firefox sans avoir de serveur web pour faire tourner ton propre site.
Mais je veux bien être retiré de la conversation, merci de penser à moi :-)
d'accord et merci pour ton apparition @ploum 🙂 @gerald @bortzmeyer
> ah ok ! sur un serveur , tu as donc plusieurs logiciels serveur qui peuvent lire plusieurs protocoles
Voilà c'est un peu ça.
Tu as la machine (l'ordinateur) : le serveur physique.
Et les logiciels "serveurs".
Sur un serveur physique tu peux avoir un ou plusieurs "services" (donc logiciels serveurs). Ça dépend des moyens et de l'infrastructure.
@ploum @bortzmeyer, si vous ne voulez plus des notif', mais vous êtes bien plus compétents que moi ! ;)
@lrde Un logiciel serveur écoute les requête qu'on lui envoie sur un ou plusieurs ports (80 pour HTTP, 443 pour HTTPS généralement par exemple), et "sert" la réponse au logiciel client qui a envoyé la requête.
> Donc je peux installer Lagrange sur mon ordi si je n'ai pas de serveur ?
Oui ! Certainement !
Lagrange est à Gemini ce que Firefox ou Chrome sont au web.
C'est le navigateur (le "client") qui va te permettre d'aller sur "Gemini" et suivre les liens du type :
gemini://home.gegeweb.org/c_est_quoi_gemini.gmi
gemini://purexo.mom/blog/2020/12-01-reflexions-autour-de-gemini.gmi
gemini://gemeaux.bortzmeyer.org/
Si tu pose la question, c'est que je n'y suis pas clair ! ;)
@gerald ce n'est pas ton article qui n'est pas clair
Je pense que beaucoup de gens vont être ravis de le lire
Mais cela fait appel à beaucoup de notions que je connais parce que j'en ai entendu parler avec vous ici
Mais cela reste des notions, pas des trucs que je comprends totalement.
C'est abstrait ! et l'abstrait demande de gros efforts de concentration. J'ai plein de bouts de connaissances grâce à vous et à toutes mes recherches mais il me manque toujours des petits morceaux de puzzle
@gerald
Et puis par exemple pour installer Lagrange
Comme souvent avec les logiciels c'est en Anglais
Quelquefois j'arrive à m'y retrouver sur github mais là j'y comprends rien
je crois que j'ai retrouvé la bonne ligne pour moi https://github.com/skyjake/lagrange/commit/46b609c9e8df1077a5e187fce0ba77c810aa71bf
Mais je ne sais pas quoi faire avec
Et puis peut être que ce n'est pas là du tout qu'il faut que je récupère les lignes de code à entrer dans mon terminal 😂
Je crois que c'est ça qui manque.
En essayant d'être le plus imagé possible.
Si @bortzmeyer est d'accord pour aller y jeter un œil et vérifier que je ne raconte pas n'importe quoi… welcome !
Tu es sur quel système ?
Linux, Mac, Windows ?
Sous Linux il faut le compiler, j'ai suivi ces instructions pour l'installer sur Linux sur un Rapberry.
Je peux t'aider au cas où.
Tu as déjà compilé des trucs en ligne de commande ?
tu veux bien essayer d'expliquer "Et pour l'instant il est possible d'utiliser son propre certificat auto-signé sans faire hurler le navigateur."
c'est quoi un certificat auto signé , c'est quand tu utilises ton serveur physique ?
@gerald
je suis sous Ubuntu
c'est pour ça que j'ai cru que c'était la bonne ligne sur github 😀
quand c'était écrit "Use git-archive-all also in Ubuntu build "
Non, je n'ai jamais compilé ou alors j'ai pas su ce que je faisais 😀
@gerald c'est ce que je disais là https://mastodon.tedomum.net/@lrde/105487391256349007
comme c'est en Anglais, je ne sais pas ce qu'il me faut faire
:D
Oui c'est coté serveur, de ton coté "client", tu n'en a que faire.
Le protocole "sécurisé" c'est une communication chiffrée qui utilise un "certificat" public et une clef privé. Je schématise, parce que techniquement je comprend pas tout non plus.
Ce certificat doit être signé par une "autorité" avec un autre certificat.
Pour le WEB l'autorité qui a signé le certificat doit être considéré comme de confiance par le navigateur (ou être indiqué comme confiance par toi).
Donc si tu signe toi même (coté serveur) cette autorité n'est pas reconnue.
Et Firefox ou Chrome disent « Attention on fait pas confiance ».
Donc on utilise (les pauvres) Let's Encrypt. Ou on paye (cher) une autorité reconnue.
Ça dépend du niveau de sécurité recherché.
Gemini permet de signer soi même le certificat (coté serveur) sans que le navigateur (Lagrange par exemple) dise "Attention je fais pas confiance au certificat".
@bortzmeyer
L'important c'est le README.
Commence par télécharger :
https://github.com/skyjake/lagrange/archive/v1.0.1.tar.gz
wget https://github.com/skyjake/lagrange/archive/v1.0.1.tar.gz
Puis
tar xvzf v1.0.1.tar.gz
Ensuite
cd langrande-1.0.1
Pour aller dans le répertoire, normalement c'est son nom.
…
Si pas installé sur ta machine :
sudo apt install build-essential cmake pkg-config
C'est le pré-requis pour compiler.
Pouet précédent c'est l'étape 1. download and extract du readme
@gerald j'ai téléchargé le premier lien mais ensuite je ne comprends pas ce que tu dis
là je suis complètement perdue
Quand tu auras téléchargé puis décompressé les sources.
Dans le répertoire des sources :
mkdir build
cd build/
-> créér le répertoire 'build' et se placer dedans.
puis :
cmake ../ -DCMAKE_BUILD_TYPE=Release
T'as téléchargé comment ?
Depuis le terminal avec la commande wget ?
C'est une archive qu'il faut décompresser.
Avec la commande tar et les options 'xvzf' (le v, verbeux, est optionnel)
Tout ça dans le terminal
@gerald j'essaierai demain
là, je n'arrive plus à comprendre quoi que ce soit
@gerald non j'ai téléchargé avec le navigateur et j'ai décompressé l'archive ensuite
puis ouvert le readme
mais j'comprend rien !
@gerald 😍 je le ferai depuis mon compte lareinedeselfes
mais ça n'a pas beaucoup d'importance puisque tu y es, là bas aussi 🙂
Il faut que tu ouvre un Terminal et que tu aiiles dans le répertoire avec la commande cd.
Sous Ubuntu ça devrait être (copie/colle) :
cd ~/Téléchargements/lagrange-1.0.1
Je vais aller le faire sur une Ubunutu, je vais essayer de noter pour faire un tuto. ;)
@gerald j'y suis lareinedeselfes@lareinedeselfes-ThinkCentre-M82:~/Téléchargements/lagrange-1.0.1$
Nickel :
mkdir build
cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release
Ensuite on va prendre les problèmes un par un ! ;)
@gerald ok il m'a demandé d'installer cmake
ce que j'ai fait
et j'en suis là
lareinedeselfes@lareinedeselfes-ThinkCentre-M82:~/Téléchargements/lagrange-1.0.1/build$
Il faut relancer la dernière commande cmake, remonte dans l'historique avec la flèche du haut du clavier.
Ensuite si tu as des erreurs c'est qu'il manque des paquets. On les installera au fur et a mesure :
cmake ../ -DCMAKE_BUILD_TYPE=Release
Et peut être aussi
sudo apt-install libssl-dev
C'est pour télécharger les "header" des librairies avec lesquelles lier le binaire produit.
@gerald 🤔 c'est bizarre ce truc
-- Configuring incomplete, errors occurred!
lareinedeselfes@lareinedeselfes-ThinkCentre-M82:~/Téléchargements/lagrange-1.0.1/build$ put.log".
Non, c'est nromal. Il manque une librairie.
Mais il manque la partie importante du message pour savoir laquelle ! ;)
@gerald c'est quoi ce put log
Bon, je vais descendre sur la machine Ubuntu… et je fais les manips from scratch.
Je reviens… ;)
@gerald ou on fait ça demain , quelle heure t'arrangerait ?
Si il fait pas trop moche je risque de pédaler le matin.
Je vais aller faire l'install sur une Ubunutu et je note toutes les étapes !
Comme ça je ferais un billet tuto. ;)
@gerald ben je reste comme ça je le fais en direct
je me fais une pause clope 😂
Si pas fait :
sudo apt install cmake libsdl2-dev libssl-dev libpcre3-dev zlib1g-dev libunistring-dev
Je descend sur la machine ubuntu…
@gerald
comme tout à l'heure il me proposait 2 solution pour installer cmake
je lui ai demandé d'installer l'autre proposition
@gerald oui, on reprend quand tu veux ! 😀
J'ai fini de vider et ranger le lave vaisselle, je descend sur l'ubuntu…
En éspérant avoir fini avant que ça crie « À TAAAABBBBLEEEEE !!!! » ! :D
@gerald 😀 quand ça criera à table j'irai faire de même ! 😉 je rallume mon terminal
J'utilise pas snap. :/
Installe les dépendances avec ça :
sudo apt install cmake libsdl2-dev libssl-dev libpcre3-dev zlib1g-dev libunistring-dev
@gerald libssl-dev : commande introuvable
j'ai essayé sans le tiret et libssl : commande introuvable
@gerald en fait tout a l'air bon
Je pense qu'il faut installer depuis git, il doit manquer un truc dans l'archive.
Reviens dans ton répertoire Téléchargements :
cd ~/Téléchargements/
puis
git clone --recursive --branch release https://git.skyjake.fi/skyjake/lagrange
Si il le faut
sudo apt install git
puis relancer la commande précédente.
C'est indiqué dans le README qu'il manque un truc dans les archives...
@gerald
il redit que tout est bon
Ensuite...
1. installation dépendances si pas fait :
sudo apt install cmake libsdl2-dev libssl-dev libpcre3-dev zlib1g-dev libunistring-dev
2.
cd lagrange
mkdir build
cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release
sudo make install
Tu veux que je récapitule en récupérant depuis git ?
Je viens de l'installer.
Marche nickel.
Je vais avoir l'air con je sais pas faire une copie écran ! :D
Suis sous LXDE. Pas Gnome.
@gerald là c'est moche ! 😂
@gerald 😀
Il te manque :
1. (si pas fait)
sudo apt install git
2.
git clone --recursive --branch release https://git.skyjake.fi/skyjake/lagrange
3.
cd lagrange
mkdir build
cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release
sudo make install
Normalement ça devrait le faire !
@gerald on dirait bien ! 😍
@gerald
je fais install the projet ou une des lignes en dessous ?
"Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/bin/lagrange
-- Installing: /usr/local/share/applications/fi.skyjake.lagrange.desktop
-- Installing: /usr/local/share/icons/hicolor/256x256/apps/fi.skyjake.lagrange.png
-- Installing: /usr/local/share/lagrange/resources.binary"
@gerald il me repropose differentes install
@gerald 😂 mais c'est ce que j'ai fait ! 😀
Je récapitule toutes les étapes, dans un Terminal :
1. on installe les dépances :
sudo apt install build-essential cmake libsdl2-dev libssl-dev libpcre3-dev zlib1g-dev libunistring-dev
2. on se place dans Téléchargements :
cd ~/Téléchargements
3. on récupère les sources
git clone --recursive --branch release https://git.skyjake.fi/skyjake/lagrange
4. on se place dans le répertoire
cd lagrange
5. on crée le répertoire build et on se place dedans
mkdir build && cd build
5. on compile
cmake ../ -DCMAKE_BUILD_TYPE=Release
6. on installe
sudo make install
Ah bah c'est fini alors.
Tu dois le trouver dans les applications.
Il te dis juste ce qu'il a installé et où. ;)
@gerald ah ok ! et oui, il est dans les applications 😍
Si tu veux faire un tuto, tu as toutes les étapes dans un de mes pouets précédents.
Tu viens de compiler et installer ton premier logiciel ! ;)
@gerald par contre je vais galérer pour l'utiliser , il est en Anglais uniquement
@gerald oui, mais grâce à toi (merci beaucoup ! ) et je ne saurai pas recommencer toute seule pour un autre logiciel 😂
C'est pas compliqué.
C'est comme un navigateur.
Dans le champs où c'est écrit 'about:lagrange' c'est la que tu tapes l'url, par exemple :
gemini://home.gegeweb.org
@gerald oui, c'est ce que je pensais
C'est presque toujours le même principe.
En général ça coince à cause de dépendances non satisfaites.
Il suffit de les installer.
C'est souvant moins galère sous Linux que sous FreeBSD ! ;)
@gerald mais à part new tab et quit je ne comprends pas bien ce qu'il y a entre les deux 😀
@gerald oui, le terminal te dis quand il lui manque des trucs
mais c'est le démarrage et la suite qui me manque à chaque fois 😂
Open location :
Ouvrir une destination (aller à une url)
https://www.deepl.com/translator
pour traduire les termes.
Ça fonctionne comme un navigateur.
On s'y retrouve même en anglais.
Faut attendre que quelqu'un traduise...
@gerald et ben j'ai pu aller sur ton blog gemini
tu sais comment on conserve les url
Le démarrage c'est toujours :
- télécharger
- décompresser
- aller dans le répertoire
- configurer
- compiler
- installer
Si c'est bien documenté, ça passe comme une lettre à la poste.
Et la majorité des devs sont sous Linux Debian et dérivé.
Bon... ça y est, à table ! ;)
@gerald j'ai trouvé comment mettre en favori
@gerald
c'est la bonne conscience de pinnocchio. wala.
@gerald Tes liens vers le site de @bortzmeyer et celui de @ploum ne sont pas bons, ils mènent à l'article de @Purexo
juste pour te dire que ça y est @ploum j'ai installé Lagrange sur mon ordi (grâce à l'accompagnement de Gérald.) Reste plus qu'à pouvoir t'y lire comme @gerald et @bortzmeyer
*On ne répondra pas à ce post pour ne pas polluer Ploum 😉
Merci c'est corrigé.
J'ai du merder dans les copier/coller en voulant aller trop vite.
C'est difficile de faire la même erreur (de ne pas la voir) avec le gemtext !
@bortzmeyer @ploum @Purexo
@gerald
Merci pour le partage