Outil CLI
SurgeDM/Surge avatar
SurgeDM/Surge

Surge : un gestionnaire de téléchargement en terminal qui répartit les fichiers sur jusqu'à 32 connexions

SurgeDM est un gestionnaire de téléchargement d'interface utilisateur de terminal basé sur Go avec une interface TUI, un mode serveur sans tête en arrière-plan et des commandes CLI axées sur l'automatisation pour les utilisateurs expérimentés.

3 521 étoiles152 forksGoMIT

En bref

De quoi s’agit-il ?
Surge est un gestionnaire de téléchargement basé sur Go, avec une IUT, un serveur headless et un CLI.
À qui s’adresse-t-il ?
Surge fournit un gestionnaire de téléchargement orienté terminal avec connexions parallèles, prise en charge des miroirs et architecture de démon. Le README propose des instructions d'installation et d'utilisation détaillées, mais ses benchmarks de performance sont auto-déclarés et doivent être vérifiés indépendamment.
Puis-je l’utiliser commercialement ?
Oui. MIT est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
Est-il encore maintenu ?
Oui. Les derniers commits datent d’il y a 1 jour.
En quel langage est-il écrit ?
Principalement Go, d’après les statistiques de langage de GitHub.

Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.

ANALYSE OPEN SOURCE APPROFONDIE

Un gestionnaire de téléchargement en terminal à trois interfaces

Surge est un gestionnaire de téléchargement écrit en Go qui fonctionne dans le terminal. Selon le README, il est conçu pour les utilisateurs avancés qui préfèrent un flux de travail piloté par le clavier. Le projet propose trois façons d'interagir : une interface utilisateur en terminal (IUT), un serveur headless et un outil en ligne de commande pour l'automatisation. L'IUT est construite avec Bubble Tea et Lipgloss, et prend en charge des palettes personnalisées et un moteur de thèmes. Le dépôt est hébergé sur GitHub sous l'organisation SurgeDM.

Comment Surge répartit les téléchargements sur plusieurs connexions

Le README explique que Surge ouvre plusieurs connexions (jusqu'à 32) pour diviser un fichier et télécharger des morceaux en parallèle, contrairement aux navigateurs qui utilisent généralement une seule connexion. Il prend également en charge plusieurs miroirs, répartit les travailleurs sur tous les miroirs disponibles et gère automatiquement le basculement. Une option de mode streaming permet de télécharger dans un ordre strict, ce qui, selon le README, est utile pour les fichiers multimédias que vous souhaitez prévisualiser pendant le téléchargement. L'architecture de démon exécute un moteur d'arrière-plan unique, de sorte que les téléchargements de plusieurs onglets de terminal convergent vers un seul gestionnaire. Le README renvoie à un guide d'optimisation pour plus de détails sur le vol de travail et le traitement des travailleurs lents.

Méthodes d'installation selon les plateformes

Le README énumère plusieurs voies d'installation. Des binaires précompilés sont disponibles sur la page Releases. Les utilisateurs d'Arch Linux peuvent installer via l'AUR avec `yay -S surge`. Les utilisateurs de macOS et Linux peuvent utiliser Homebrew avec `brew install SurgeDM/tap/surge`. Les utilisateurs de Nix/NixOS peuvent exécuter `nix run github:SurgeDM/Surge` ou utiliser la sortie flake dans la configuration. Les utilisateurs de Windows peuvent utiliser `winget install surge-downloader.surge` ou `scoop install surge`. Un Dockerfile et des instructions compose sont fournis pour le mode serveur. Enfin, `go install github.com/SurgeDM/Surge@latest` fonctionne pour les utilisateurs de Go 1.25 ou plus.

Exécuter Surge : IUT, serveur et contrôle à distance

Le README documente deux modes principaux. Lancer `surge` seul démarre l'IUT interactive ; `--no-server` la garde locale et désactive l'API HTTP intégrée. Le mode serveur démarre avec `surge server`, éventuellement avec une URL et un jeton API. Un service système peut être installé et géré avec `surge service install`, `start`, `stop`, `status` et `token`. Les connexions IUT distantes utilisent `surge connect` avec un hôte et un jeton. Les indicateurs globaux `--host` et `--token` s'appliquent à toutes les commandes, avec les variables d'environnement `SURGE_HOST` et `SURGE_TOKEN` comme solution de repli. L'utilisation de Docker Compose est également décrite.

Extension navigateur et authentification par jeton

L'extension navigateur intercepte les téléchargements dans Chrome, Edge, Brave et Firefox et les envoie à une instance Surge en cours d'exécution. Le README indique que l'extension communique avec le client sur le port 1700 par défaut. Un jeton d'authentification est requis ; il peut être obtenu via l'IUT sous Paramètres > Extension ou en exécutant `surge token` (ou `surge service token` si installé comme service système). Les versions stables sont disponibles sur le Chrome Web Store et les modules complémentaires Mozilla, tandis que les versions de développement peuvent être chargées non empaquetées dans Chrome ou comme module complémentaire temporaire dans Firefox.

Benchmarks rapportés dans le README

Le README inclut un tableau de référence comparant Surge à aria2c, curl et wget. Dans leur test, Surge a terminé un téléchargement de 1 Go en 28,93 secondes à 35,40 Mo/s, tandis qu'aria2c a pris 40,04 secondes, curl 57,57 secondes et wget 61,81 secondes. Les conditions de test sont listées comme Windows 11, un Ryzen 5 5600X et un réseau de 360 Mbps, avec des résultats moyennés sur cinq exécutions. Ces chiffres proviennent des propres tests du projet ; le README ne fournit pas de vérification indépendante ni de détails sur la méthodologie de test au-delà de ces conditions.

Statut du projet, licence et remerciements

Le dépôt compte 3 423 étoiles, 144 forks et 55 problèmes ouverts selon les métadonnées récupérées. Il n'est pas archivé et utilise la licence MIT, qui accorde la permission d'utiliser, copier, modifier, fusionner, publier, distribuer, sous-licencier et vendre des copies, le logiciel étant fourni "tel quel" et sans garantie. Le README remercie le soutien de FOSS United, Charm (pour Bubble Tea et Lipgloss) et GoReleaser Pro. Le projet est maintenu par deux étudiants en informatique, et le README invite aux contributions et aux discussions via GitHub.

Conclusion éditoriale

Surge fournit un gestionnaire de téléchargement orienté terminal avec connexions parallèles, prise en charge des miroirs et architecture de démon. Le README propose des instructions d'installation et d'utilisation détaillées, mais ses benchmarks de performance sont auto-déclarés et doivent être vérifiés indépendamment.

Sources officielles

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Notes de la communauté

Notes de la communauté