Panel d'installation v4.82.0

Installer votre réseau,
en sept questions

Overtchat Setup, l’installateur officiel, vous pose les questions dans sa fenêtre, puis installe le réseau sur cet ordinateur ou sur votre serveur Linux, par SSH, avec l’installateur du projet, overtchat-setup.sh, qu’il embarque et vérifie : le serveur IRC, les services, le site et la base de données. Sur la machine, ce même installateur reste ensuite votre tableau de bord — démarrer, arrêter, mettre à jour — et, lancé dans un terminal, il sait aussi installer en sept questions.

Deux serveurs IRC. L’installateur pose Overtchat-Hybrid, le serveur du projet, livré déjà compilé par ce site. Sur une machine qui ne peut pas le faire tourner, il pose UnrealIRCd à sa place, avec les services Anope, et le dit. Ce que chaque serveur autorise ensuite est donné fonction par fonction sur la page Serveurs compatibles.

Téléchargement

Deux façons d’installer

Le dépôt GitHub du code est privé : c’est ce site qui sert de quoi installer. Le code est sous licence MIT : serveur, services, panel et scripts se reprennent librement, y compris pour monter votre propre réseau. Les textes de ce site, son nom et sa charte graphique restent en revanche réservés — ils font l’identité de ce réseau-ci, pas du logiciel. Les composants tiers gardent leur propre licence (licences tierces). Deux façons de récupérer l’installateur, qui ira ensuite chercher le reste sur ce même site.

⊞

Sous Windows : Overtchat Setup

Une application avec une fenêtre : elle installe le réseau sur cet ordinateur, dans WSL, ou sur votre serveur, puis le démarre et le surveille. Elle embarque l’installateur et vérifie son empreinte avant de s’en servir.

Télécharger Overtchat Setup

⚙

Sous Linux : Overtchat Setup aussi

La même application, pour un bureau Linux (Debian, Ubuntu) : elle installe le réseau sur cette machine, pour votre compte, ou sur votre serveur par SSH. Les droits administrateur sont demandés par la fenêtre de mot de passe du système ; l’application ne voit jamais ce mot de passe.

Télécharger Overtchat Setup

RessourceAdresse
Installateur Overtchat Setup — l’installateur officiel, servi par ce site
Empreintes manifeste.json — SHA-256 de chaque fichier distribué
Version publiée /update — numéro, empreinte et journal
Dépôt git https://github.com/SerVuS033/Overtchat.git — privé : ni les pages web ni git clone ne répondent sans accès. L'installateur ci-dessus n'en a pas besoin.
Signaler un problème Formulaire de contact
Licence Code MIT, nom et textes réservés — fichier LICENSE à la racine du dépôt ; composants tiers sous leur propre licence (licences tierces)

Le dépôt et cette documentation peuvent différer. Le script publié porte la version indiquée dans le fichier VERSION à la racine du dépôt — actuellement 4.82.0. En cas d'écart, c'est le comportement du script que vous exécutez qui fait foi.

Ce que l'installateur pose, et depuis où

Chaque version est épinglée : l'installateur va chercher une archive précise, pas la dernière en date. Une URL versionnée se rejoue à l'identique dans six mois, là où un lien « latest » installe un jour autre chose sans qu'une ligne ait changé. Ces numéros sont lus dans le script — cette page ne les recopie pas.

ComposantVersionRôleSource officielle
UnrealIRCd 6.2.6 Serveur IRC de secours, quand Overtchat-Hybrid ne convient pas à la machine — c’est son dialecte que parle Overtchat-Hybrid. https://www.unrealircd.org/downloads/unrealircd-6.2.6.tar.gz
Anope 2.1.25 Services optionnels : NickServ, ChanServ, OperServ… Branche 2.1, celle qui a renommé son module de protocole. https://github.com/anope/anope/archive/refs/tags/2.1.25.tar.gz

Overtchat-Hybrid ne figure pas dans ce tableau : c'est le serveur du projet, et celui que l'installateur pose par défaut, depuis ce site. Il télécharge le serveur déjà compilé (Linux x86_64, glibc 2.34 ou plus récente, OpenSSL 3) et en vérifie l'empreinte ; le site ne sert que ce binaire. Sur une machine qui ne convient pas, l'installation pose UnrealIRCd à sa place et le dit — ou refuse, si Overtchat-Hybrid a été demandé expressément. Dans une copie du dépôt, il compile les sources présentes. OverCore, les services du réseau, arrive avec l'archive du site : il n'a besoin que du paquet Node.js de votre distribution.

Avant de commencer

Prérequis

Une machine Linux avec systemd, un compte ordinaire et un terminal. Tout le reste est vérifié, listé ou installé par le script lui-même.

Ce que le script vérifie avant d'écrire quoi que ce soit

  • La distribution et son gestionnaire de paquets (apt, dnf, yum, pacman, zypper, apk), pour traduire les noms génériques (ssl-dev) en noms réels de la distribution.
  • Que la machine peut faire tourner Overtchat : Linux avec systemd, processeur x86_64, bash 4 ou plus récent, au moins 512 Mo libres (2 Go conseillés). Sinon il refuse, en disant pourquoi, sans rien écrire.
  • Les droits administrateur, demandés au démarrage — voir ci-dessous.
  • Les sept outils de base : jq, curl, git, openssl, tar, sha256sum et awk. Ceux qui manquent sont installés.

Les droits administrateur

Lancé depuis votre compte, sans option, le script explique qu’il lui faut les droits administrateur pour poser des paquets et des services, puis demande Continuer avec sudo ? [O/n]. Vous tapez le mot de passe de votre compte, pas celui de root ; il vérifie que sudo l’accepte, puis se relance tout entier avec ces droits. Il ne les redemande plus ensuite.

Si sudo n'existe pas sur la machine, ou refuse votre compte, il s'arrête sans rien écrire et affiche les commandes exactes à taper une seule fois, depuis root : poser sudo s'il manque, usermod -aG sudo votre-compte, puis fermer et rouvrir votre session. Autre voie, depuis root : désigner le compte qui portera l'installation, OVERTCHAT_COMPTE=votre-compte bash overtchat-setup.sh.

InvocationModeUsage
./overtchat-setup.sh défaut Demande les droits administrateur au démarrage, puis l'installation simple au premier lancement ; ensuite, le menu de votre réseau.
./overtchat-setup.sh --root root Se relance tout de suite avec sudo, sans poser la question. L'arborescence reste dans votre home.
./overtchat-setup.sh --user forcé Force le mode sans droits administrateur — seulement si tous les paquets sont déjà installés.
./overtchat-setup.sh --projet=NOM nom Nomme l'installation (le dossier ~/NOM) sans passer par la question du premier lancement.
sudo -E ./overtchat-setup.sh --auto --projet=NOM sans question Installe sans rien demander : les réponses viennent de l'environnement (--help les liste). C'est ce que lance Overtchat Setup. La base de données n'est préparée sur la machine qu'avec OVERTCHAT_BASE=preparer ; sinon, elle doit exister, avec son compte.
./overtchat-setup.sh --debug trace Active la trace set -x pour diagnostiquer un comportement.
./overtchat-setup.sh --help aide Affiche les options disponibles et quitte.

Rien n'est jamais installé dans /root. Même relancé avec sudo, le script crée l'arborescence dans le home de votre compte, sous le nom choisi au premier lancement (~/MonReseau est proposé, ou --projet=NOM) et lui rend ses fichiers. Lancé en root sans compte d'origine, il refuse : les services ne tournent jamais en root. Les droits administrateur ne servent qu'aux paquets système (dont MariaDB), aux unités systemd et à quelques règles de /etc (sudoers, polkit, rotation des journaux) ; le reste — binaires, configuration, données — vous appartient.

Premier lancement

L'installation simple : sept questions, puis tout se fait seul

Au premier lancement, une fois les droits obtenus, le script annonce ce qu'il va poser — le serveur IRC, les services du réseau, le site avec son panneau d'administration, la base de données — puis pose ses questions. Chacune est expliquée et propose une valeur entre crochets : la touche Entrée la garde. Une réponse impossible est refusée tout de suite, et la question reposée.

N°QuestionCe qu’elle décideProposé
1Le nom de votre réseauLe nom que verront les visiteurs, sur le site et dans le chat. Les noms du réseau d’origine sont refusés.Mon réseau IRC
2Un nom court, sans espacePour les menus et les noms de groupes : lettres, chiffres, point, tiret ou souligné, de 2 à 32 caractères.le nom du réseau, sans espaces ni accents
3L'adresse internet du réseau (nom de domaine)Le nom qui mènera à cette machine, par exemple irc.mondomaine.fr. Pour un essai sur cette seule machine : localhost — le serveur IRC s’appelle alors irc.localhost.le nom de la machine, sinon localhost
4Votre adresse e-mailLes messages du site (inscriptions, alertes) partent en son nom, et vous y recevez les notifications.contact@votre-domaine
5Le salon où arrivent les visiteursLe salon que le chat du site ouvre en premier : un #, puis 1 à 31 caractères sans espace.#accueil
6La base de donnéesLe site et les services rangent tout dans une base MariaDB nommée « Service_Overtchat », que le compte SQL « irix » est seul à ouvrir : deux noms fixés par le logiciel, qui ne changent rien au nom de votre réseau. 1 : la préparer sur cette machine — MariaDB est installé, la base et son compte créés, le mot de passe engendré pour vous. 2 : vous avez déjà cette base et ce compte — son mot de passe est demandé, sans s'afficher. Toute autre réponse est redemandée.1
7Démarrer le réseau tout seul quand la machine s'allume ?Sinon, il faudra le relancer à la main après chaque redémarrage — depuis le menu de ce script.oui

Vient ensuite un récapitulatif — réseau, adresse, e-mail, salon d’accueil, base, démarrage avec la machine, dossier d’installation — et une dernière question : Lancer l’installation ? Comptez de 10 à 30 minutes selon la machine et la connexion. Tant que vous n’avez pas dit oui, rien n’est installé.

Ce qui se passe ensuite, en six étapes

1 · Dépendances système

Les paquets du site et du serveur IRC sont posés, puis le Node.js de votre distribution pour OverCore. Sans Node.js 14.14 ou plus récent, l'installation s'arrête et le dit : un réseau sans services n'est pas un réseau.

2 · Site et identité du réseau

L'archive du site est téléchargée depuis ce site, son empreinte comparée à celle publiée, puis déployée. Vos réponses deviennent l'identité du réseau : nom, domaine, adresses, salon d'accueil.

3 · Serveur IRC

Overtchat-Hybrid, déjà compilé, est téléchargé et vérifié par empreinte, puis configuré à l'identité de votre réseau : certificat auto-signé pour le port 6697, opérateur « admin » avec un mot de passe tiré au hasard. Sur une machine qui ne peut pas le faire tourner, UnrealIRCd est compilé à sa place, et le récapitulatif final le rappelle.

4 · Services du réseau

OverCore, les services écrits en Node.js — enregistrement des pseudonymes et des salons, modération —, est configuré et son lien déclaré dans le serveur. Avec UnrealIRCd, ce sont les services Anope qui sont construits, et laissés arrêtés : leur mise en route se fait depuis le mode expert.

5 · Base de données

Les tables du site et des services sont créées dans la base, par des migrations rejouables : les relancer n'efface rien.

6 · Services système

Les unités systemd sont posées dans /etc/systemd/system/, les fichiers système aussi (sudoers, rotation des journaux, Apache sans l'activer), puis le serveur, le site et OverCore sont démarrés — le script attend que le lien d'OverCore soit actif, 150 secondes au plus. Si vous avez répondu oui à la question 7, ils sont activés : ils repartiront seuls au démarrage de la machine.

Deux mots de passe sont créés pour vous, et aucun n'est affiché. Celui de la base est engendré, éprouvé par une vraie connexion, puis écrit dans le fichier d'accès à la base (IriX.json, lisible par vous seul). Celui de l'opérateur IRC « admin » est écrit dans ~/.overtchat/oper-admin.txt, lisible par vous seul ; le script en donne le chemin à la fin. Un compte « irix » déjà présent dans MariaDB n'est jamais réécrit : choisissez alors le 2 à la question 6.

À la fin

Votre réseau « … » est installé. Vient alors une huitième question : créer tout de suite votre compte d’administration du site (niveau owner), par l’outil Tools/panel-account.php — identifiant, puis mot de passe saisi masqué, jamais affiché. Refusée, ou en échec, la commande pour le faire plus tard est dite. Puis le script donne l’adresse du site depuis cette machine (http://127.0.0.1:8080) si son unité tourne, et le chemin du journal complet. Si quelque chose n’a pas pu être fait — une base qui ne répond pas, un service qui n’a pas démarré —, l’installation se termine avec réserves : chacune est listée avec le geste qui la règle. Si elle s’interrompt, ce qui précède reste en place : relancez le script, l’installation simple reprend.

Dépendances

Paquets requis, composant par composant

Les noms ci-dessous sont génériques : le script les traduit selon votre gestionnaire de paquets. L'installation simple pose ceux dont elle a besoin ; le menu Dépendances du mode expert affiche pour chaque composant s'il est complet, et sinon la liste de ce qui manque.

ComposantPaquets
Anopebuild · gcc · make · cmake · ssl-dev
UnrealIRCdbuild · gcc · make · ssl-dev · zlib-dev · pkgconfig · curl-dev · pcre2-dev · argon2-dev · sodium-dev
Overtchat-Hybrid (compilé depuis une copie du dépôt)build · gcc · make · ssl-dev · zlib-dev · autoconf · automake · libtool
Overtchat-Hybrid (binaire servi par le site)openssl
Site et panel webphp · php-mysql · php-mbstring · php-gd · mysql-client · tar · curl · postfix
OverCore (les services du réseau)nodejs

Le menu Dépendances a deux entrées. L'option 1, « Installer toutes les dépendances manquantes », est elle-même verrouillée si aucune élévation n'est possible — elle ne peut pas tenir sa promesse sans droits. L'option 2, « Afficher les commandes d'installation », reste toujours accessible et vous donne la commande exacte à recopier.

Ensuite

Après l'installation

Où vivent les fichiers, et comment ouvrir le panel web.

L'arborescence

Le projet est regroupé dans votre home, sous le nom choisi au premier lancement (ici ~/MonReseau, le nom proposé). Hors du home ne vont que les unités systemd, les règles sudoers, polkit et de rotation des journaux, le journal de l'installateur (/var/log), et — si vous les configurez par le mode expert — le site Apache et le relais Postfix.

~/MonReseau/
  Bootstrap/    # overtchat-setup.sh, le point d'entrée unique
  Config/       # fichiers JSON — identité du réseau et état
  Robots/       # OverCore, les services du réseau
  Runtime/      # état, journaux, fichiers d'exécution
  Servers/      # le serveur IRC
  Web/          # le panel web et le site public
~/IriX/cmds/IriX.json   # l'accès à la base, lisible par vous seul

Le site et le panel web

Le site tourne par l'unité overtchat-web.service, démarrée à la fin de l'installation : http://127.0.0.1:8080 depuis la machine. Le panel d'administration est à /admin.php ; on y entre avec le compte créé à la question 8 — ou, plus tard, par l'entrée 6 du menu (« Comptes du site »), ou php ~/MonReseau/Tools/panel-account.php create.

Le panel web et le menu du script ne font pas la même chose. overtchat-setup.sh installe, démarre, arrête et met à jour les éléments du réseau ; l'interface web administre le réseau une fois qu'il tourne — membres, salons, modération. L'un ne remplace pas l'autre.

Piloter les services

Une fois OverCore en place, les cinq pseudo-clients des services répondent en message privé sur IRC. Leur catalogue complet est détaillé sur la page dédiée.

Toutes les commandes des services →

Mettre à jour, sans le menu

Les mêmes gestes existent en commandes, utilisables depuis une tâche planifiée : version, check (n'écrit rien), update, status, history, rollback. Chaque fichier est sauvegardé avant d'être remplacé, et son empreinte vérifiée.

check et version rendent 0 si tout est à jour, 1 si une mise à jour attend, 2 en cas d’erreur. Seule rollback pose une question (la sauvegarde à restaurer, puis une confirmation) : jamais depuis une tâche planifiée.

Dépannage

Symptômes et causes probables

Le script dit presque toujours la cause à l'écran, et le journal garde tout ce qui a défilé.

SymptômeCause probable et remède
sudo a refusé, ou la commande sudo n’existe pas Votre compte n'a pas le droit d'utiliser sudo. Le script affiche les commandes à taper une fois depuis root (su -) : poser sudo s'il manque, usermod -aG sudo votre-compte, puis fermer et rouvrir votre session. Rien n'a été installé : relancez ensuite.
« Node.js absent ou trop ancien » OverCore exige Node.js 14.14 ou plus récent, pris dans les paquets de votre distribution (jamais un dépôt tiers). Installez-le, puis relancez le script : l'installation simple reprend.
« Un compte irix existe déjà dans MariaDB » Une base a déjà été préparée sur cette machine, peut-être pour une autre installation. Le script ne réécrit jamais ce compte : relancez et choisissez le 2 à la question 6, avec son mot de passe.
Terminée avec réserves Tout est posé, mais quelque chose n'a pas pu être fait : chaque réserve est listée avec le geste qui la règle. Réglez-les, puis vérifiez l'état depuis le menu de votre réseau.
Relancé, le script repose la question du nom de l’installation Il ne sait pas laquelle prendre : vous avez plusieurs installations dans votre dossier personnel (avant le 24/10/2026, il ne retrouvait même pas la seule). Interrompez-le (Ctrl+C), puis relancez avec --projet=NOM, le nom du dossier de votre installation. Un dossier ~/Service-Overtchat créé par erreur, avec seulement Config/ et Runtime/, peut être retiré.
Un élément est « en panne » dans le menu Son unité systemd a échoué. Gérer un élément → Voir son journal donne ses 50 dernières lignes ; Redémarrer le relance.
Le site s’affiche, mais personne ne peut entrer dans le panneau d’administration Aucun compte du site n'a été créé — vous avez dit non à la question 8, ou l'installation vient de --auto. Entrée 6 du menu, « Comptes du site », ou php ~/MonReseau/Tools/panel-account.php create.
Un comportement du script reste inexplicable Relancez avec --debug : la trace set -x montre chaque commande exécutée. Le journal de l'installateur (entrée 4 du menu, dernière ligne) garde tout ce qui a défilé : /var/log/overtchat-setup.log quand il tourne avec sudo, ~/.local/state/overtchat/overtchat-setup.log sinon.

Un refus n'est jamais un bug. Le script préfère s'arrêter avant d'écrire, en disant pourquoi, plutôt que d'installer à moitié. Si une entrée est grisée, la réponse est écrite entre les chevrons qui la suivent.