Install from scratch,
without guessing anything
Each screen of Overtchat Setup is described with what you choose on it, what the window answers, and the sign that proves it went through. No knowledge of IRC or Linux is assumed. Count half an hour, most of it spent watching the install move forward on its own.
What you are installing, and why it takes several pieces
A chat network is not one program but a stack. Each layer only talks to its neighbour, and each is useless without the one below — which is why the installer sets them up in a precise order, and on its own.
One server, chosen for you. The installer sets up Overtchat-Hybrid, the project’s server, shipped already compiled by this site. If your machine cannot run it (a processor other than x86_64, a system too old), it compiles UnrealIRCd instead, with the Anope services, and tells you. The table on the Compatible servers page details what each allows.
Who does what. Overtchat Setup is the Windows app that asks you its questions in its window, then drives the work. It reinvents nothing: it carries the project’s installer, overtchat-setup.sh, puts it on the target machine and runs it with your answers. That installer is what sets up the layers above. You will find it on the machine afterwards, in ~/NAME/Bootstrap/, as a text-mode dashboard — see the appendix.
Before you start
Overtchat Setup runs on Windows 10 or 11, and on Linux with a desktop (Debian, Ubuntu). The network itself always runs on Linux: on this computer — in WSL on Windows, directly on Linux — or on a Linux server you manage remotely.
Target A: this computer (WSL)
WSL must be already installed, with a Linux distribution — Debian or Ubuntu. Overtchat Setup detects it and lists your distributions, but does not install it itself: if it is missing, it tells you the command to type in PowerShell (wsl --install, then wsl --install -d Ubuntu if there is no distribution). The distribution must have systemd running: the installer refuses a machine without it.
Target B: a Linux server (SSH)
Debian, Ubuntu, Fedora, Rocky, Arch or openSUSE, with systemd. What your host gave you is enough: the address, the port, the login and the password. The password is used only once: Overtchat Setup puts its own SSH key in the account’s ~/.ssh/authorized_keys, then only goes through it. The account must be root, or be allowed to use sudo: if sudo asks for the password, it gets it only once for the whole install; Overtchat Setup keeps it in memory for the session, never on disk.
Target C: this Linux machine
On a Linux desktop, download overtchat-setup-linux.AppImage, make it executable (chmod +x), then open it from your account, not root. Administrator rights are asked for by the system’s password window (pkexec, package of the same name); the app never sees that password. Without libfuse2 (Debian 13), start it with APPIMAGE_EXTRACT_AND_RUN=1 in front.
The database: nothing to prepare
By default, Overtchat Setup has the database prepared on the machine: the installer sets up MariaDB, creates the Service_Overtchat database and its irix account, and generates their password itself — nobody needs to know it, it is never shown. If the machine already has this database and this account, choose J’ai déjà une base… (“I already have a database…”) and give their password: an existing irix account is never rewritten.
On the target, the installer checks before writing anything: Linux, systemd, an x86_64 processor, bash 4, at least 512 MB of free space (2 GB advised), and its seven base tools (jq, curl, git, openssl, tar, sha256sum, awk), which it installs itself if missing. Count 10 to 30 minutes, the time to download and install the packages.
Download and run Overtchat Setup
Overtchat Setup is downloaded from the Download page. It carries the project’s installer and checks its hash itself before using it: you have nothing to compare by hand.
Windows warns on first launch
Windows says “Unknown publisher”? That is normal and harmless: our apps are not signed with a paid certificate. SmartScreen warns you on first launch — click More info, then Run anyway.
The window opens on “Welcome”
On the left, a column lists the steps to come: it changes with your choices. In the middle, two cards: Installer un réseau (“install a network”) and Piloter un réseau existant (“run an existing network”). Choose the first. At the bottom, the Retour (back) and Suivant (next) buttons; Enter or Alt+→ mean Next. While a screen is waiting for an answer, Next says why it won’t go on, at the bottom, next to the buttons.
What you should see, at the very bottom of the screen: installateur embarqué vérifié à chaque poussée (“embedded installer checked on every push”), preceded by the publisher key’s fingerprint. It is the promise of the next step: before every deposit on a machine, Overtchat Setup compares the installer it carries with the hash recorded when it was built, and refuses to push it if they differ.
On Linux, the same app exists: overtchat-setup-linux.AppImage, on the Download page. Started from a Linux desktop, the text installer also offers to open it. Looking for the full repository? It is private: neither its pages nor git clone answer without access. To install, the official installer is enough: it fetches the rest from this site.
Where to install: this computer, or a server
The Sur quelle machine ? screen offers two buttons. On Windows: Cet ordinateur (WSL), ticked in advance when a distribution exists (otherwise the server one is), and Serveur distant (SSH). On Linux: Cette machine, ticked in advance, and Serveur distant (SSH). Next only goes on with a distribution chosen, the machine checked, or an SSH connection tested successfully.
This computer (WSL)
The window shows Détection de WSL… (“detecting WSL”), then WSL prêt — N distribution(s) détectée(s). (“WSL ready — N distribution(s) found”) and the list: for each one, its name, its WSL version, whether it is running or stopped, and which is the default — already ticked. Choose one; Actualiser la liste (“refresh the list”) reads WSL again if you have just installed one.
The network will run on this computer, in that distribution. The install is done there as root, but for your ordinary account: the one WSL opens by default (or the first one created). The files will live in its home folder and the services will run under its name — never root; without an ordinary account, the installer refuses.
Remote server (SSH)
Four fields: Hôte (IP ou domaine) (host), Port (22), Utilisateur (user; empty: root) and Mot de passe (password). Then Tester la connexion (“test the connection”). Under Options avancées (advanced options): J’ai déjà une clé SSH pour ce serveur (“I already have an SSH key for this server”: its path, or nothing for your agent’s or ~/.ssh’s), and a separate sudo password, if it differs from the account’s.
What you should see: Connexion établie — clé d’Overtchat Setup posée sur le serveur (“connected — Overtchat Setup’s key put on the server”) the first time, followed by what the account allows (connecté en root, sudo sans mot de passe or sudo par mot de passe: root, passwordless sudo, or sudo with a password). A server never seen before first shows the box below: the password only leaves after you confirm its fingerprint.
First connection to this host. A server your PC has never seen is not accepted silently: the window shows its key fingerprint (one SHA256:… line per key type) and asks you to compare it with the one the server gives itself — on the server, ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub. If they are identical, C’est la bonne clé — l’épingler (“this is the right key — pin it”): the key is read a second time, remembered, and the connection test is replayed. If it has changed since a previous time, Overtchat Setup refuses to go on and tells you: check the server before anything else.
The account password leaves only once, encrypted by SSH, to put the key in place; it is handed to the SSH client neither as an argument nor in a file. If sudo asks for it, Overtchat Setup gives it on its standard input: only once for the whole install, which runs as root in one go — no sudo timeout can expire along the way —, then for each management action, without asking you again while the window stays open. Connected as root, nothing is asked; the install is then carried by the server’s first ordinary account (uid 1000), and refused, saying so, if there is none.
On Linux, Cette machine. The window shows Vérification de cette machine…, then Cette machine est prête — le réseau sera posé pour le compte « … ». Started as root, or without pkexec, it says why and Next does not go on. When the installation starts, the system’s password window opens: type the one of your account. Closed or refused, the result is Droits administrateur refusés — nothing was installed; start again whenever you like.
The pack, then your network’s settings
The Quel réseau voulez-vous ? (“which network do you want?”) screen offers three cards — Minimum (discovery), Standard (your network) and Complete (dating, AI moderation) —, each with what it includes and what it leaves out. The installed code is the same everywhere: a pack opens or closes features, and becomes the installer’s --edition= option. All three are free during the beta.
Complete adds a screen, Ce que Complète demande en retour (“what Complete asks in return”): this edition sends technical reports to the project’s site. Two columns say what leaves (a randomly drawn identifier, the versions, the incident reports you send) and what never leaves (nicknames, IP addresses, messages, secrets, the network’s name and domain). A checkbox gives consent; without it, Next refuses: declining means going back to choose Standard.
The settings, field by field
Only the settings that serve your pack are shown — Minimum shows nothing about the website. Each field is explained underneath. A field left empty takes the installer’s default; a field marked * is required. An impossible value is flagged under the field, and Next says Corrigez les champs signalés. (“fix the flagged fields”).
| Field | Its role | For which packs |
|---|---|---|
Nom du projet (dossier) |
The folder created in the account’s home directory, on the target: ~/NAME. Letters, digits, dot, dash, underscore (64 at most). Proposed: Service-Overtchat — give it a name of your own instead: it cannot be changed afterwards, everything derives from it. |
all |
Nom du réseau |
The name visitors will see, on the site and in the services. 1 to 64 characters. Proposed: Mon réseau IRC (“my IRC network”). | all |
Nom court |
No spaces, for menus, groups and identifiers: letters, digits and dash, 24 at most. Proposed: MonReseau. | all |
Domaine du site * |
The domain name that will point to the machine, for instance irc.mydomain.org. A well-formed domain is required. |
Standard, Complete |
Serveur IRC |
overtchat_ircd, Overtchat-Hybrid, the project’s server shipped compiled by this site, or unrealircd, a third-party server compiled from its sources. Left on the first, the choice is not forced: on a machine that cannot run the binary, the installer sets up UnrealIRCd instead and says so. |
all |
Adresse d’expédition |
Where the site’s emails are sent from. Empty: contact@ followed by your domain. |
Standard, Complete |
Adresse des notifications |
Who receives the alerts. Empty: the same as the sender address. | Standard, Complete |
Base de données |
La préparer sur la machine (recommandé) (“prepare it on the machine, recommended”): MariaDB is installed, the database and its account created, the password generated by the installer. Or J’ai déjà une base « Service_Overtchat » et un compte « irix » (“I already have…”): one more field appears, below. | all |
Mot de passe du compte « irix » * |
Only for an existing database: the password of its irix account, at least twelve characters. It is masked while typing. |
all |
Démarrer le réseau tout seul quand la machine s’allume |
Ticked in advance: the services started by the installation are also enabled, and come back on their own after the machine — or WSL — restarts. Unticked, they run, but you will have to start them again (Start). | all |
Créer maintenant mon compte d’administration du site |
Ticked in advance: four fields appear — Nom du compte (account name: a letter, then letters, digits, - or _, 2 to 30), Adresse du compte (account address: it is used to reset the password), Mot de passe du compte (account password: at least twelve characters, without the account name) and Mot de passe, encore (password, again). At the end of the installation, this account is created at owner level: it is the one that opens the administration panel. Unticked, the site is installed without any account. |
all |
Module Rencontres (profils) |
Adds the “profiles” layer to the site. Ticked by default in Complete. | Complete |
Webcam / micro + modération |
Live video, with nudity and voice moderation. Implies Dating: ticking one turns on the other. | Complete |
What you should see next. The Tout est prêt screen (“all set”): the machine (Cet ordinateur — WSL, …, Cette machine — compte … or Serveur …@…), the pack and its edition, then each setting with its value — a typed password shows as dots, an empty field says défaut de l’installateur (installer default) —, and, for Complete, the state of the OverSystem consent. The bottom button is now called Lancer l’installation (start the installation). Until you click it, nothing is installed: Back still lets you change everything.
The install: what happens, and what you see
The Installation en cours (“installing”) screen shows a round gauge with the percentage, a line that names the current step — first Préparation (dépôt de l’installateur, contrôles)… (“preparing: deposit of the installer, checks”) —, then the timeline of the six steps, each with its state: to come, in progress with the elapsed time, done, or failed. The timeline’s titles are the ones the installer writes itself, as it begins each step.
Under Linux, in Cette machine mode (this machine), the system password window opens only once, right after Lancer l’installation: type the password of your account. After that, nothing more is asked. Everything is set up on this very computer: in the detail, step 1 shows Base de données — préparation sur cette machine then ✔ Base « Service_Overtchat » et compte « irix » prêts (database and account ready) — their password is generated, never shown; at the end, just before the summary, ✔ Compte « … » créé au niveau owner (account created at owner level), then ✔ Activés : ils repartiront seuls à chaque démarrage de la machine. (enabled at every start of the machine) if the box was ticked. The site then answers on http://127.0.0.1:8080, and your account opens the administration panel there. In WSL and over SSH, the same lines scroll by — on the distribution, or on the server.
During the preparation
Before the first step, Overtchat Setup compares the installer it embeds with the fingerprint recorded when it was built — if they differ, it pushes nothing and the result screen says Installateur refusé (installer refused). Then it drops two files into a private folder of the target, readable by their owner only: the installer, and a short script carrying your answers. This script deletes itself as soon as it starts — it contains your passwords — and runs the installer without questions, with your pack's edition. In WSL, all of this is done as root on behalf of your ordinary account; on a server, through sudo without a password, or directly as root.
What you should see, in the collapsible Détail — le texte de l’installateur (“detail — the installer’s text”): → Dépôt de l’installateur… (“depositing the installer”), → Lancement de l’installation… (“starting the install”), then the installer’s “automatic install” box, with the root folder, the IRC server, the privileges and the distribution.
Then the installer works on its own, in six steps
It is the installer’s engine, fed with your answers. Each step lights up on the timeline when it announces it. Downloads are checksum-verified, and what is started is re-read from systemd before being announced: a service that says “started” really is.
| Step | What actually happens | Duration |
|---|---|---|
| 1 · System dependencies | Installs the packages of the site (PHP, the MariaDB client, Postfix) and of the IRC server, then your distribution's Node.js. Without Node.js 14.14 or newer, the installation stops and says so: a network without services is not a network. With a database to prepare, it also installs the MariaDB server, creates the database and its account, and checks that this account really connects; otherwise the installation stops there, and says so. | 2–5 min |
| 2 · Website and network identity | Downloads the site archive, compares its checksum to the published one, deploys it into your folder, and writes the network’s identity with your answers. | 1 min |
| 3 · IRC server | Downloads Overtchat-Hybrid already compiled, compares its checksum to the manifest, tries it, then writes its configuration with your network’s identity: a self-signed certificate for port 6697, an “admin” operator with a randomly drawn password. On a machine that cannot run it, UnrealIRCd is compiled instead. | 1–10 min |
| 4 · Network services | Writes the database access file, configures OverCore and declares its link in the server. With UnrealIRCd, builds the Anope services instead — and leaves them stopped, by rule: they are started from expert mode. | 1 min |
| 5 · Database | Creates the tables of the site and of the services in the database, by replayable migrations: running them again erases nothing. If the database does not answer, the install carries on and says so at the end, as a reservation. | 1 min |
| 6 · System services | Installs the systemd units in /etc/systemd/system/ and the system files (sudoers, log rotation, Apache without enabling it), gives your files back to your account, then starts the server, the site and OverCore, and waits until OverCore's link is active (150 seconds at most). If the box Démarrer le réseau tout seul… (start the network on its own) was ticked, they are also enabled; otherwise, the installer writes the command for it. Finally, your site administration account is created. |
≤ 3 min |
The Next button, labelled Voir le résultat (“see the result”), stays grey while the install runs. Closing the window meanwhile does not stop the installer on the target, but you would lose the detail: wait for the end.
The result: successful, incomplete, or failed
The installer signs its end with a code, and Overtchat Setup turns it into one of three verdicts, with a pictogram, a sentence, and an Et maintenant ? (“what now?”) box that says what to do. The Voir le détail de l’installation (“see the install detail”) button reopens the full text.
0 Installation réussie
Everything the installer had to set up is in place, with no reservation. What now: go to the control screen to see the state of the services. If you had unticked Démarrer le réseau tout seul…, they will not come back on their own when the machine starts: the detail gives the command (sudo systemctl enable …).
3 Installation incomplète
The installation is in place, but some points remain to be settled. The Les réserves, et quoi faire box (the reservations, and what to do) lists them, each with the step that settles it. With an existing database, the most frequent: la base du site ne répond pas (the site database does not answer) — the password of the irix account was wrong, or the database missing; fix it, then rerun the migrations as the reservation says. A site account that could not be created is also a reservation, with the command to create it.
! Installation échouée
The install stopped before the end; what comes before the red step is in place. A box says where it was interrupted. Read the detail around the red step, fix the cause, then run it again: the installer resumes without undoing what is in place.
What you should see in the detail, at the end. En service maintenant : … (“now running: …”) with the list of started services, the path of the file that holds the IRC operator “admin” password (~/.overtchat/oper-admin.txt, readable by you alone), then ✔ Installation automatique terminée. (“automatic install finished”) — or the list of reservations. The site answers from the target machine at http://127.0.0.1:8080. No site account is created by this install: the question that offers it only exists in the terminal — see What is left to you.
A fourth screen, which you should never see: Installateur refusé (“installer refused”). It means Overtchat Setup pushed nothing: the installer on disk does not match the one built with this application — a modified file, or a tampered copy. Reinstall Overtchat Setup from the Download page, then run it again. Never push a modified installer onto a machine.
Running your network from the window
After the result, Piloter le réseau (“run the network”) opens the Votre réseau (“your network”) screen. You can come back to it at any time: the next time Overtchat Setup starts, the Piloter un réseau existant card leads straight there, after the choice of machine. The Projet (dossier de l’installation) (“project: install folder”) field must carry the name given in the first setting — it is prefilled right after an install.
| Button | What it does |
|---|---|
Actualiser l’état | Re-reads from systemd, right then, the state of four elements: Serveur IRC (IRC server), OverCore (services), Site (Apache), Base (MariaDB) (database) — running, stopped, failed, starting, absent —, and the installed tier. The site line reads Apache, which the installer places without enabling it: seeing it stopped or absent right after the install is not a failure, the site first runs through its own unit on port 8080. |
Démarrer · Redémarrer · Arrêter | The action on those four elements, then their state re-read. Stop cuts the network off: nobody will be able to chat any more. |
Mettre à jour | Deposits the embedded installer again (same hash check) and has it apply the updates published on this site to your install: every file is backed up before being replaced, and its checksum verified. |
Réparer | A full pass: machine compatibility, state of the services, then rewriting of the files that have drifted from the published version. |
Désinstaller… | Three cards: OverScript seul (the client, on this PC), Le site seul (the site only) or Tout le réseau (the whole network). Each card first shows what will be removed and what will be kept, and runs a dry-run preview — nothing is deleted. The act requires the login and password of a panel administrator, then the install’s name typed in full; the Désinstaller pour de vrai (“uninstall for real”) button only lights up then. The backups in ~/Sauvegardes are never touched. |
Everything the services answer is written in the collapsible Détail — ce qu’ont répondu les services (“detail — what the services answered”). The installer’s text-mode menu, on the machine, offers the same actions and a few more (logs, site accounts, expert mode): appendix.
Where everything lands
The project fits under one folder, named as given in the first setting (~/NAME), in the home directory of the target’s account. The install also sows outside it: the database access file, the systemd units, the sudoers, polkit and log-rotation rules, and — if you enable them — Apache and Postfix. To remove everything: the Uninstall… button, or Tools/desinstaller.sh, which first shows what it would delete.
# ~/NOM — the root of everything ~/NOM/ ├── Bootstrap/ the installer itself ├── Config/ the network identity and the state files (.json) ├── Robots/ OverCore, the network services ├── Runtime/Logs/ the logs ├── Servers/ the IRC server and its configuration ├── Tools/ the tools: panel accounts, uninstall… └── Web/ the website and the panel # and, separately: ~/IriX/cmds/IriX.json database access — readable by you alone
An IriX folder without IriX, and it is not a mistake. IriX, the former services bot, is no longer installed: OverCore replaces it. But the file that holds the database access kept its original name and place, ~/IriX/cmds/IriX.json: it is the one the site, the migrations and OverCore read. Readable by you alone, never overwritten by an update.
What Overtchat Setup doesn’t do
Three things are beyond it. None is a defect, but ignoring them produces blockages nobody can name.
1 A database on another machine
Overtchat Setup prepares the database on the machine it installs on, never elsewhere. A database on another server must exist beforehand, with its irix account: then choose J’ai déjà une base… (“I already have a database…”). And if the machine already has an irix account, the preparation stops rather than rewrite it: give its password the same way.
2 A site account, later
Overtchat Setup creates a single account, yours, and only on a site that has none yet. If you had unticked the box, or to add others, it is done on the target machine:
php ~/NOM/Tools/\
panel-account.php create
3 The domain name and the certificate
Pointing your domain at the machine is up to you. The site first runs on 127.0.0.1:8080; the Apache files are placed but not enabled (expert mode, “systemd units and Apache”). The IRC server’s certificate is self-signed: clients will warn, until you replace it with your own.
When things get stuck
| What you see | What it means | What to do |
|---|---|---|
WSL n’est pas installé. |
Windows has no WSL, or wsl.exe does not answer. | In PowerShell (administrator): wsl --install, reboot if Windows asks for it, then start Overtchat Setup again. |
Aucune distribution Linux. |
WSL is there, but without Debian or Ubuntu (Docker Desktop does not count). | wsl --install -d Ubuntu, create the account the distribution asks for, then Actualiser la liste (“refresh the list”). |
Hôte inconnu : vérifiez son empreinte avant de continuer. |
This server has never been seen from this PC. | Compare the fingerprint shown with the server’s, then pin it. If no fingerprint shows, the server does not answer on that port. |
La clé de cet hôte a CHANGÉ depuis la dernière fois. |
The server no longer presents the pinned key: reinstalled, replaced — or someone is standing between you and it. | Overtchat Setup refuses. Check the server before anything else; do not force anything. |
Échec : … on the SSH test |
The password is refused, the server does not accept password login, the account does not exist, or the port is closed. A refused password is not tried again. | Check the login, the password and the port. If the server only accepts keys, tick J’ai déjà une clé SSH pour ce serveur (“I already have an SSH key for this server”) under the advanced options. |
Mot de passe sudo refusé. |
sudo does not accept the password given: nothing has been run. | If it differs from the account’s, type it in the sudo password field (advanced options), then test again. |
Installateur refusé |
The embedded installer no longer matches the application’s hash. Nothing has been pushed. | Reinstall Overtchat Setup from the Download page, then run it again. |
Le mode auto ne peut pas partir (“auto mode cannot start”) in the detail |
An answer the install without questions cannot make up is missing: most often, an SSH account without sudo rights, or an ordinary account for the services. | The list says what is missing. Nothing has been installed: give the SSH account sudo rights (or connect as root), test the connection again, then run it again. |
Installation incomplète — la base du site ne répond pas |
The database or the irix account do not exist on the target: the install does not create them. | Create them with the given (or generated) password, then run the migrations again: ~/NAME/Web/sql/apply.sh, as the reservation says. |
Node.js absent ou trop ancien (“Node.js missing or too old”) |
OverCore requires Node.js 14.14 or newer, and your distribution doesn’t provide one. | Install an up-to-date Node.js from your distribution’s packages, then run the install again: it resumes without undoing what is in place. |
| An element shown as “failed” when running the network | Its systemd unit failed. | Restart, then read what the services answer in the detail; on the machine, the installer’s menu shows its log. |
| The site shows up, but you can’t sign in | No account exists. | The command panel-account.php create, on the target machine. |
The installer’s full log lives on the target machine, in /var/log/overtchat-setup.log — and keeps everything that scrolled by, including what went too fast. Overtchat Setup’s collapsible detail shows the essential part of it. It is the first place to open — and the content to attach if you write to us from the contact page.
The installer in a terminal
overtchat-setup.sh is the project’s installer, the one Overtchat Setup runs for you. On a machine where it already is — ~/NAME/Bootstrap/overtchat-setup.sh after an install —, it serves as a text-mode dashboard, and can also install by asking its questions one by one. Here is what you see there, for whoever opens a terminal. Its own screens are in French: this page quotes them and translates them by meaning.
The first run: seven checks
Run with no option, it goes through seven checks before asking its first question — here they are in order, so that nothing that scrolls by comes as a surprise.
./overtchat-setup.sh
It shows its context
A “startup context” box: the privileges (root, your-name + sudo, or your-name without elevation), the recognised distribution, the install folder, the log path. If the “Distribution” line says inconnu (“unknown”), it refuses to go on: without a recognised package manager, it could not install its dependencies.
It refuses an incompatible machine
Before writing anything: Linux, systemd, an x86_64 processor, bash 4, at least 512 MB free. A missing requirement is listed in red and the script stops. What is only advised (2 GB of disk, 2 GB of memory) is said as a warning, without blocking.
Expected message: ✔ Compatibilité machine confirmée — Linux x86_64, famille debian. (“machine compatibility confirmed”)
It asks for administrator rights
It explains that it needs administrator rights to set up packages and services, and asks Continuer avec sudo ? [O/n] (“continue with sudo?”). Enter, then the password of your account — not root’s. It checks that sudo accepts it, and restarts itself entirely with those rights: it will never ask again.
If sudo does not exist, or refuses your account, it stops without writing anything and shows, numbered, the commands to type once as root: su -, install sudo if missing, usermod -aG sudo your-account, exit, then log out and back in. Another way, as root: OVERTCHAT_COMPTE=your-account bash overtchat-setup.sh, which names the account that will own the install.
Expected message: Relance avec les droits administrateur… (“restarting with administrator rights”)
It checks the seven tools, and installs the missing ones
On a fresh machine some are always missing: it is no longer a red error but a notice, and the script installs them itself with the rights it obtained. Without rights (option --user), it writes the exact command for your distribution and hands back control.
It asks for the install’s name
Only once, on the very first run: Nom de l’installation [MonReseau] (“install name”). This name gives the folder, ~/MonReseau, from which everything else derives — it cannot be changed afterwards. “Service-Overtchat” and “Overtchat” are refused: they are the original network’s names. Then the script restarts itself with this name.
It creates its folders
Its directories, under the project folder, listed above under Where everything lands. It then checks they really exist: a failed mkdir does not pass for a success.
Expected message: ✔ Arborescence prête : /home/you/MonReseau (“directory tree ready”)
It opens the simple install
A “simple install — a few questions, then everything runs on its own” box announces what will be set up, then the first question shows. No password is asked of you for this menu, and there never will be: your Unix account is what protects it. The password of your site account comes at question 8, at the very end.
The simple install: seven questions, a summary, and the rest runs on its own
Each question is explained on the line below and proposes a value in brackets: Enter keeps it. An impossible answer — a reserved name, a malformed domain, a channel without # — is refused at once, saying why, and the question is asked again.
1. Le nom de votre réseau
The name visitors will see, on the site and in the chat. Proposed: Mon réseau IRC (“my IRC network”). The original network’s names are refused.
2. Un nom court, sans espace
For menus and group names. Letters, digits, dot, dash or underscore, 2 to 32 characters. Proposed: the network name without spaces or accents (Mon réseau IRC gives “MonreseauIRC”).
3. L'adresse internet du réseau (nom de domaine)
The name that will lead to this machine, for instance irc.mydomain.org. For a trial on this machine alone: localhost. Proposed: the machine’s full name if it has one, otherwise localhost — the IRC server is then called irc.localhost. A leading http:// is removed; the original network’s domain is refused.
4. Votre adresse e-mail
The site’s messages (sign-ups, alerts) are sent in its name, and you receive the notifications there. Proposed: contact@ followed by your domain.
5. Le salon où arrivent les visiteurs
The channel the site’s chat opens first: a #, then 1 to 31 characters without space, comma or colon. Proposed: #accueil.
6. La base de données
The site and the services store everything in a MariaDB database named Service_Overtchat, which only the irix SQL account can open: two names fixed by the software, which change nothing about your network’s name. Two choices, and any other answer is asked again. 1, proposed and recommended: prepare it on this machine — MariaDB is installed and started, the Service_Overtchat database and the irix account created, the password generated for you, proven by a real connection, and never shown. 2: you already have this database and this account on this machine — the script then asks for its password, without showing it.
7. Démarrer le réseau tout seul quand la machine s'allume ?
Proposed: yes. Otherwise, you will have to start it by hand after each reboot, from this script’s menu.
And, at the very end, an eighth: create your site administration account now?
Proposed: yes. It is the account with which you will enter the site’s admin panel (owner level) — through Tools/panel-account.php: a login, then a password typed hidden, never shown. If you refuse, or if the creation fails, the script gives the command to do it later; the install is no less successful.
What you should see next. A “summary” box — network and short name, address, e-mail, welcome channel, database (prepared by the installer, or existing), at boot (yes or no), install folder —, the announced duration (10 to 30 minutes), then Lancer l’installation ? [O/n] (“start the install?”). Until you answer yes, nothing is installed: an “n” hands back control, and the script says so.
Then the same engine as Overtchat Setup's works on its own, in six steps: the database was prepared at question 6 and, if you said yes to question 7, the services are enabled at machine start — the same choices as in the Overtchat Setup window.
What you should see at the end. ✔ Installation automatique terminée. (“automatic install finished”) then ✔ Votre réseau « … » est installé. (“your network is installed”), the eighth question (your site account), the site’s address from this machine (http://127.0.0.1:8080) if its unit is running, and the log path. If a step could not do everything, the end says “finished WITH … RESERVATION(S)” and lists them, each with the action that fixes it: the install is in place, not complete. If it is interrupted, what came before stays in place: run the script again, the simple install resumes.
The site and the panel — Expert mode, entry 8
The site is set up by the install, with your answers. To replace its files or change the network’s identity: expert mode, entry 8, “put the site files back from the official site”. After a [y/N], the archive is downloaded again and replaces the site files; the database, Web/inc/config.php and the accounts are kept; the same questions are asked again — network name, short name, domain, sender address, main channel —, each proposing its current value: Enter is enough to keep it.
The site archive is downloaded, then its checksum is compared with the published one. If the manifest can’t be reached, the script explicitly asks for permission to continue without checking, and refuses by default — the archive unpacks over your installation folder, this is no formality.
One last question is about your provider’s SMTP relay (smtp.free.fr, ssl0.ovh.net…). Leaving it empty works, but messages will be sent directly — which most recipients refuse from a residential address.
Living with it: updates
The same actions exist as commands, without going through the menu, so also from a scheduled task.
# am I up to date? ./overtchat-setup.sh version # what would an update change? (writes nothing) ./overtchat-setup.sh check # apply it ./overtchat-setup.sh update # roll back ./overtchat-setup.sh rollback
What you should see after version: a two-line box, « Installée » and « Publiée » (installed and published), followed by ✔ À jour. (“up to date”) or a warning naming the new version. If the second line says injoignable (“unreachable”), it’s the network or the site that isn’t responding, not your installation.
Every file is backed up before being replaced, and its checksum verified after download: a tampered archive is refused rather than installed. If an update fails, an email goes to the notification address with the details of what went wrong.
The session log lives in /var/log/overtchat-setup.log when the installer runs under sudo (the normal case), in ~/.local/state/overtchat/overtchat-setup.log otherwise, readable by you alone. When the install stops on an error, the script gives its path.