Utiliser Tin comme lecteur de nouvelles sous Linux

Cet article documente l’installation et la configuration sous système Linux (ici avec Ubuntu, ou Debian) du programme de lecteur de nouvelles (newsreader) Tin.

Tin est le plus ancien lecteur de nouvelles encore en activité et a été créé en 1991 par Iain Lea. Ce programme fonctionne en ligne de commande et peut-être lancé via le Terminal sous Linux dans X11, sur MacOS (Terminal.app), sous Windows via SSH en vous connectant à un Linux distant. Tin peut fonctionner soit avec un serveur NNTP local, soit avec un serveur NNTP distant (avec la commande « tin -r » ou « rtin ») et ne télécharge pas les messages, mais conserve seulement l’état de lecture des newsgroups/discussions.

Nous allons voir ci-dessous comment installer, configurer et utiliser Tin en mode de connexion à un serveur NNTP distant.

Installation des paquets

Installation de Tin et autres paquets

Pour installer le programme, vous devez être en possession d’un compte admin (root) ou bien d’être en mesure d’effectuer un « sudo » (emprunt des droits de l’administrateur). Ouvrez un terminal ou accédez à la console de votre système Linux afin d’effectuer les actions qui vont suivre. Utilisez le programme apt afin d’installer le paquet Tin.

# sudo apt update

… mettra à jour vos liens de téléchargement et la liste des paquets.

# sudo apt install tin

… lancera le téléchargement des paquets et commencera leur installation après confirmation de votre part. A noter que d’autres paquets liés seront également téléchargés et installés, notamment le serveur SMTP Postfix, que vous serez également amené à configurer à la fin de l’installation. Postfix n’est pas absolument obligatoire pour installer Tin, sauf si vous prévoyez de répondre à des messages de forums en vous mode privé, via la fonction d’envoi de courriel. Tin ne prévoit pas de fonction pour utiliser un envoi de courriel via un serveur externe et le fera donc via un serveur SMTP interne. Celui-ci doit donc être installé.

Configuration rapide de Postfix

Le serveur SMTP Postfix sera installé et l’utilitaire de configuration va se lancer. Normalement, vous n’en n’avez pas besoin, alors vous pouvez le configurer avec l’option par défaut. Si vous devez utiliser Tin pour envoyer des courriels aux utilisateurs, veillez à configurer Postfix pour être en mesure de le faire et consultez la documentation correspondante.

Premier lancement de Tin

Par défaut le programme tin se connecte à un serveur de news local installé sur votre machine. Si vous n’en disposez pas, vous pouvez utiliser en lieu et place la commande rtin (ou également « tin -r ») afin de vous connecter à un serveur distant.

Pour ce premier lancement, et avant de configurer le programme, nous allons utiliser la commande suivante pour nous tester la connexion à un serveur de nouvelles auquel nous sommes abonné, par exemple ici le serveur pasdenom.info.

# rtin -g pasdenom.info

La connexion au serveur se lance et si elle aboutit, le programme nous invite à saisir notre identifiant de connexion et notre mot de passe (si le serveur requiert une identification).

Première connexion NNTP (Tin)
Première connexion NNTP (Tin)

Une fois la connexion établie, le programme se lance, s’initialise (constitue son index) puis affiche la page d’accueil avec quelques newsgroups par défaut proposés par le serveur. Vous voilà connecté et abonné automatiquement à ces groupes de discussion (vous pouvez également vous désabonner). Aperçu de la page d’accueil avec Tin newsreader :

Page d'accueil Pasdenom.info (Tin)
Page d’accueil Pasdenom.info (Tin). Cliquez pour agrandir

Configurer Tin

Voici quelques informations pour vous faciliter l’utilisation de Tin et notamment pour :

  • Paramétrer le serveur par défaut
  • Enregistrer vos identifiants, mots de passe et protocole utilisé.

Serveur par défaut

Afin d’enregistrer le serveur par défaut auquel se connecter en utilisant la commande rtin, procédez comme suit :

Ouvrez le répertoire /etc/news et créez le fichier « server »

# cd /etc/news
# sudo nano server

Saisissez le nom du serveur NNTP que vous voulez utiliser par défaut, par exemple pasdenom.info sur la première ligne du fichier. Enregistrez le fichier avec la commande Ctrl + O (puis entrée pour valider le nom du fichier) et quittez avec Ctrl + X.

Informations d’identification

Nous allons maintenant paramétrer vos identifiants et mot de passe afin de ne pas les ressaisir à chaque nouvelle connexion au serveur (opération optionnelle si vous êtes un obsédé de la sécurité). Vous pouvez également indiquer un numéro de port différent pour le serveur si celui-ci n’utilise pas le port par défaut 119. Attention, car Tin n’est pas compatible avec le protocole sécurisé NNTPS (port 563).

Rendez vous dans votre dossier home afin d’y créer le fichier .newsauth, y placer les infos d’identification et le sécuriser. Notez toutefois que votre mot de passe sera stocké en clair dans le fichier et qu’il peut s’agir d’une faille de sécurité.

# cd
# nano .newsauth

Renseignez les informations de connexion dans le fichier comme suit :

pasdenom.info:119 mot_de_passe nom_utilisateur

« pasdenom.info » est le nom du serveur, « 119 » le numéro de port par défaut pour la connexion via le protocole NNTP. Indiquez ensuite votre mot de passe en clair, ainsi que le nom d’utilisateur sur le serveur, le tout séparé par des espaces (ou tabulations). Utilisez éventuellement des guillemets doubles pour encadrer la valeur du mot de passe si celui-ci contient des espaces. Restreignons maintenant l’accès à ce fichier à l’utilisateur concerné (nous).

# chmod 600 .newsauth

Vous pouvez maintenant relancer le programme avec la commande rtin et il ne vous demandera plus vos identifiants pour vous connecter.

Configurer une signature

Tout message envoyé sur le réseau devrait comporter une signature, comme lorsque vous envoyez un courriel. Afin de paramétrer la signature qui sera ajouté à tous les messages envoyés, créez le fichier .signature dans votre répertoire home :

# nano .signature

Saisissez le texte de votre signature sur 4 lignes maximum (conseillé). Les normes veulent qu’une ligne ne dépasse pas 78 caractères, mais ça n’est obligatoire. Cette norme vient du fait que les outils en ligne de commande fonctionnaient à travers des terminaux de 80 colonnes maximum et qu’il fallait que le texte soit renvoyé à la ligne avant cette limite afin de n’être point automatiquement tronqué. Bien sûr cette limite n’a plus d’intérêt aujourd’hui car la plupart des logiciels de lecture de nouvelles fonctionnent avec une interface graphique, et la largeur des fenêtres est variable selon le logiciel utilisé et les choix de l’utilisateur. Idem pour le nombre de lignes dans la signature. Même Tin à travers le terminal peut utiliser une largeur de plus de 80 colonnes. Toutefois, il est encore certains utilisateurs de Usenet qui choisissent de maintenir ces anciennes recommandations. Tin ne vous limitera pas sur le nombre de caractères par ligne, même s’il vous donnera un message d’avertissement en cas de dépassement de cette longueur de 78 caractères. Tin utilise un éditeur de texte externe pour la composition des messages (sur Ubuntu, c’est nano qui sera utilisé par défaut). Nano est tout à fait capable de gérer automatiquement les retours à la ligne. Toutefois, vous risquez d’être mal vu si vous outrepassez cette limite 😉

Enregistrez votre fichier avec Ctrl-O, entrée pour valider le nom, puis Ctrl-X pour quitter.

Configurer votre adresse courriel

Votre adresse de courriel est utilisée à partir de la configuration que vous avez faite lors de l’installation de Postfix. Néanmoins, vous pouvez changer la valeur de l’adresse courriel par défaut en modifiant le paramètre mail_address= du fichier de configuration ~/.tin/tinrc .

Autres options de configuration utiles

Le fichier ~/.tin/tinrc contient beaucoup de paramètres de configuration. Je vais vous donner quelques paramètres utiles pour la bonne utilisation de Tin. Bien sûr, l’utilité de modifier ces valeurs est laissée à votre appréciation étant donné qu’il s’agit de pures suggestions de ma part en raison de mes préférences d’utilisation. Les suggestions de modifications ci-dessous ne concernent que les valeurs qui ne sont pas par défaut.

draw_arrow=OFF : permet de remplacer l’affichage de la flèche (->) comme curseur pour indiquer la sélection d’une ligne à l’écran (groupe, fil de discussion, message dans le fil) par le surlignage de la ligne sélectionnée avec une couleur (voir plus loin pour le choix de la couleur)

inverse_okay=ON : active l’inversion vidéo pour afficher les lignes d’entêtes de page (nom des newsgroups)

sort_article_type=6 : les articles à l’intérieur d’un fil sont triés par date croissante.

sort_threads_type=3 : les fils de discussion (sujets) sont triés à l’intérieur d’un groupe par date de modification (dernière publication) décroissante.

show_only_unread_arts=OFF : affiche tous les articles et fils de discussion et non seulement les non-lus. Remarque : un signe « + » s’affichera à gauche des articles ou fils non lus.

news_quote_format=%F a écrit/wrote: => définit la chaîne à afficher dans le message lors de citations de messages précédents.

xpost_quote_format=Dans/in %G %F a écrit/wrote: idem, mais uniquement lorsque le message a été publié dans plusieurs groupes différents (cross post)

col_invers_bg=5 : couleur utilisée pour l’inversion vidéo (couleur de soulignement d’une ligne). Ici 5 = rose (la liste des codes couleur est affichée en commentaires dans le fichier)

col_invers_fg=7 : couleur du texte pour les lignes surlignées (ici blanc). Le paramétrage de couleurs est bien sûr à ajuster en fonction des couleurs utilisées (thèmes) par votre application de terminal, certains choix pouvant être inopérant en raison du thème choisi.

wrap_column=72 : effectuer un retour de ligne après 72 caractères.

editor=%E -t -r72 +%N %F : appelle l’éditeur de texte par défaut (normalement Nano ou Pico) avec les bons paramètres. Vous pouvez remplacer cette chaîne par un appel personnalisé à votre éditeur favori. %E correspond à la valeur de la variable $EDITOR, mais peut être remplacée ici par le nom du programme à appeler. %N permet de placer le curseur sur la première ligne suivant l’entête et %F est le nom du fichier tampon à éditer (article).

group_format=%n %m %R %L %D %s %F : suggestion de présentation des fils de discussion dans un groupe donnée (ajout de la date).

thread_format=%n %m [%L] %T %F %D : suggestion de présentation des messages dans un fil de discussion (sujet). Ajout de la date sur la droite.

date_format=%d/%m/%Y %H:%M : formatage de la date pour s’afficher sous la forme JJ/MM/AAAA HH:MM

Utilisez Tin

Une fois que le programme est correctement paramétré, vous pouvez simplement le lancer en utilisant la commande rtin. La connexion sera automatique et la page d’accueil finira par s’ouvrir, affichant les groupes de discussion auxquels vous êtes déjà abonnés.

La page d’accueil suivante s’affiche avec les groupes par défaut (ou peut-être aucun groupe ? Cela dépend du serveur) :

Page d'accueil Pasdenom.info (Tin)
Page d’accueil Pasdenom.info (Tin). Cliquez pour agrandir

La liste des commandes utilisables dans Tin est affichée en appuyant sur la touche « h » comme « help » (aide). Pour faire défiler les pages dans Tin, les commandes sont les suivantes :

  • Flèche bas et haut : se déplacer de haut en bas ligne par ligne que ce soit dans la liste des groupes, des fils de discussions ou des messages au sein d’un fil de discussion, ou pour faire défiler le texte d’une publication (message).
  • Page suivante / Page précédente : faire défiler page par page les listes ou le contenu des messages.
  • Espace : fait défiler une page vers le bas (listes et messages).
  • Entrée : entrer dans un groupe, un sujet (affiche le premier message du sujet), un message, ou aller au sujet suivant.
  • Flèche droite : entrer dans un groupe, un sujet (affiche la liste des messages du sujet), un message, va au message suivant du sujet.
  • Flèche gauche : sort du message, du sujet, du groupe (avec confirmation de lecture pour les sujets et les groupes)
  • q : quitte un message, un sujet, un groupe ou une page d’aide, sans considérer les messages/sujets ou groupes comme lus. Quitte le programme.

S’abonner aux groupes de discussion

Afin de pouvoir lire et éventuellement participer aux groupes de discussion, il faut au préalable s’y abonner. Depuis la page d’accueil, appuyez sur la touche « y » pour basculer entre la liste des groupes actifs et la liste de tous les groupes proposés par le serveur.

Liste complète des groupes (Tin)
Liste complète des groupes. Cliquez pour agrandir.

Parcourez la liste des groupes ligne par ligne ou page par page. De gauche à droite sont indiquées les informations suivantes : « u » si vous n’êtes pas abonné au groupe ou rien sinon ; le numéro de ligne ; le nombre de sujets dans le groupe ; le nom du groupe ; sa description.

Appuyez sur s pour souscrire (s’abonner) à un groupe.

Pour effectuer une recherche de nom de groupe, appuyez sur / puis saisissez une partie du nom et entrez. Le programme se positionnera sur le prochain groupe trouvé et comportant dans son nom la chaîne saisie. Appuyez de nouveau sur / puis entrée pour rechercher la même valeur dans un autre nom de groupe, ou bien saisissez une nouvelle valeur.

Pour revenir à la liste des groupes souscrits, appuyez de nouveau sur la touche « y ».

Naviguer dans les groupes et lire les messages

Vous pouvez naviguer dans les groupes auxquels vous êtes abonnés et même dans ceux auxquels vous n’êtes pas abonnés. Pour rappel, la touche y permet de basculer entre la liste des newsgroups auxquels vous êtes abonnés et la liste complète fournie par votre serveur.

La méthode de base pour naviguer dans les groupes est d’utiliser les flèches de direction : flèche droite pour entrer dans un groupe, gauche pour en sortir, bas et haut pour naviguer dans les fils de discussion (threads) et dans les message d’un fil.

La fenêtre d’accueil affiche pour chaque groupe le numéro de ligne, le nombre de discussions non lues (nouvelles), le nom du groupe et sa description.

Entrons par exemple dans le groupe fr.comp.os.macos.x. La fenêtre affiche la liste des discussions récentes :

Groupe fr.comp.os.mac-os.x (Tin)
Groupe fr.comp.os.mac-os.x (Tin)

Selon mes propres réglages, le nom du groupe est affiché en haut de l’écran et surligné en rose. La discussion pointée est également surlignée en rose, mais avec les réglages par défaut le sujet est indiqué par « => » en début de ligne.

Les infos affichées ici sont, de gauche à droite :

  • Numéro de ligne : numérote tous les sujets du groupe de discussion
  • Statut de la discussion :
    • + : discussion non lue (nouvelle discussion).
    • o : de nouvelles réponses sont disponibles dans la discussion.
    • # : article lu mais annulé par un autre article.
    • (vide) : article et discussion lus.
  • Nombre de réponses dans la discussion
  • Nombre de lignes dans le message d’origine (premier message de la discussion dans le groupe)
  • Date (ajout fait par moi, ne figure pas par défaut)
  • Titre du message (sujet)
  • Auteur (pseudonyme ou nom complet)

Utilisez les flèches pour choisir un sujet. Entrez dans le sujet :

  • Soit par appui sur entrée pour lire le message d’entrée dans la discussion
  • Soit avec la flèche droite pour afficher le fil complet (liste des messages et réponses), comme ci-dessous :
Fil de discussion complet (Tin)
Fil de discussion complet (Tin)

Comme pour la liste des discussions, on peut naviguer entre les messages (sans les lire) avec les flèches haut et bas. On peut aussi parcourir les messages en appuyant sur la touche Entrée. Pour chaque message, le programme affiche (dans ma configuration) : le numéro de ligne, le statut du message ou de la réponse (ex: « o » pour nouveau non lu), le sujet ou une flèche pour indiquer le niveau de réponse, ou un changement de sujet, l’auteur, la date et l’heure.

Affichage du message consulté :

Message (Tin)
Message (Tin)

Les infos affichées sur l’écran :

En haut à gauche : la date et l’heure du message, le nombre de lignes, l’auteur (pseudo / courriel)

En haut au milieu : nom du groupe, titre du sujet

En haut à droite : numéro du fil / nombre de fils, nombre de réponses, nom de l’organisation de l’auteur du post.

Au dessous : nom(s) du ou des groupe(s) dans le(s)quel(s) le message a été publié (en rouge), puis le texte du message, la signature (en bleu).

En bas : les principales commandes (aide)

Vous pouvez naviguer dans le message, si son contenu dépasse l’écran en cours soit avec les flèches haut et bas, soit avec la touche Entrée (défile d’une page vers le bas), ou avec les touches page suivante et page précédente.

Pour revenir au fil de la discussion, utilisez flèche gauche ou la touche q (quitter)

Pour revenir à la liste des discussions, ou même pour revenir à la liste des groupes, utilisez au choix :

  • q : quitte sans sauvegarder l’état de la discussion / du groupe, sauf les messages parcourus qui seront marqués comme lus automatiquement,
  • flèche gauche : le programme demande si vous voulez marquer comme lus soit la discussion complète, soit le groupe entier.

Publier un message ou une réponse

Conseils d’utilisation

Avant de publier sur les forums, prenez le temps de :

  1. Vous documenter sur Usenet et d’en apprendre/comprendre les usages.
  2. Prendre la température et l’ambiance des groupes auxquels vous êtes abonné.
Effectuer un test

Avant de poster votre premier message, vous devriez effectuer un test de publication dans le groupe fr.test qui est dédié à cet usage. Ceci de permettra de tester, d’abord, le fonctionnement et la configuration de Tin. Ensuite, personne ne vous tiendra rigueur de vos erreurs et vous recevrez peut-être des commentaires et des conseils pour améliorer votre configuration et votre manière de faire.

Écrire un nouveau sujet (message)

Avant de poster votre premier vrai message (en plus du test), choisissez précautionneusement le groupe dans lequel le publier, groupe dont le thème doit être au plus près du sujet de votre message. Entrez dans le groupe par Entrée ou flèche droite. Appuyez ensuite sur la touche w pour commencer à écrire un nouveau message.

Post subject > (saisissez ici le sujet du message puis entrez)

Tin ne possède pas d’éditeur de texte intégré et utilise donc un éditeur de texte externe, par défaut « nano », qui est simple d’emploi, sur les distributions modernes de Linux. L’éditeur s’ouvre et affiche le message en cours :

Composer nouveau message (Tin)
Composer un nouveau message avec Nano

Saisissez le texte du message entre l’entête et la signature. Au bas de l’écran, sont indiquées les commandes utiles de Nano pour rédiger votre message et sauvegarder. Voir ici plus d’infos sur le fonctionnement de Nano (ou en vidéo ici).

Lorsque vous avez terminé la saisie de votre message, utilisez la commande Ctrl-X pour quitter. Le programme vous demande de confirmer l’enregistrement de votre message :

Save modified buffer ? Tapez Y pour enregistrer votre message. Confirmez ensuite le nom du fichier (c’est un fichier temporaire) :

File Name to Write: /home/gosseyn/.article.61469. Appuyez juste sur Entrée. S’ensuit un petit message d’avertissement de Tin avant de poster votre message. Confirmez la publication par la commande p (comme post) et le message sera envoyé. Le programme se repositionne dans le groupe de discussion. Notez que votre message n’apparait pas immédiatement dans le groupe de discussion. Vous devez rafraichir la liste en sortant (« q ») puis en réentrant (Entrée).

Répondre à un message

Afin de répondre à un message dans une discussion existante, procédez comme suit :

  • Placez-vous dans le groupe de discussion dans lequel se trouve la discussion à laquelle vous répondez.
  • Une fois dans le groupe, déplacez vous vers cette discussion, puis utilisez la flèche droite pour accéder au fil des messages.
  • Déplacez vous sur le message auquel vous souhaitez répondre. S’il n’y a qu’un seul message dans la discussion, vous arrivez directement en consultation de ce message.
  • Pour répondre au message dans le groupe, utilisez la commande f (followup).
  • L’éditeur de texte s’ouvre et vous permet de composer votre réponse. Le texte du message commenté est automatiquement inséré entre l’entête et la signature.

Comment supprimer des lignes ? Simplement en utilisant la fonction couper (cut) avec le raccourci Ctrl-K : ceci coupe la ligne entière. A répéter pour toutes les lignes à supprimer dans le message (par exemple les lignes de commentaires)

Comment copier / coller du texte ? Comme Nano permet de saisir du texte n’importe où dans le fichier et que vous utilisez l’application Terminal pour exécuter le programme, utilisez simplement la fonction copier/coller du système à travers l’application Terminal, ce qui aura pour effet de copier à l’emplacement du curseur le texte que vous aurez choisi.

Lorsque vous êtes prêt à publier votre réponse, utilisez le raccourci Ctrl-X comme précédemment lors de la publication d’un nouveau message et répéter la procédure du paragraphe précédent. Une fois la publication confirmez, Tin vous place directement dans votre message. Vous pouvez continuer votre navigation.

En savoir plus sur Tin

Laisser un commentaire