Initial vault setup
This commit is contained in:
@@ -0,0 +1,114 @@
|
||||
---
|
||||
title: Soft Serve
|
||||
created: 2026-06-08
|
||||
updated: 2026-06-08
|
||||
type: app
|
||||
tags: [catalogue, git, app-marathon3-batch-c]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=git&app=soft-serve]
|
||||
---
|
||||
|
||||
# 🍒 Soft Serve
|
||||
|
||||
> Le serveur Git minimaliste et TUI-first de l'écosystème Charm — écrit en Go par Charm.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Champ | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | [charm.sh](https://charm.sh) |
|
||||
| **GitHub** | [charmbracelet/soft-serve](https://github.com/charmbracelet/soft-serve) |
|
||||
| **License** | MIT |
|
||||
| **Langage** | Go |
|
||||
| **Étoiles GitHub** | 5k ⭐ |
|
||||
| **Catégorie** | [[cat-git|Git]] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**Soft Serve** est un serveur Git léger, rapide et TUI-first (Terminal UI) écrit en Go par l'équipe Charm (Bubble Tea, Lip Gloss). HTTP/SSH server, anonymous read support, admin via SSH, web UI, repo management, hooks, configuré par YAML. **Différence vs Gitea/GitLab** : binaire unique Go, pas d'UI web complexe, TUI magnifique, philosophically "just Git", zero JavaScript, plus rapide à mettre en place. **Pour qui** : devs qui vivent dans le terminal, dotfiles, micro-team labs, présentations SSH, kiosks Git, intégrateurs minimalistes.
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Binaire (recommandé)
|
||||
|
||||
```bash
|
||||
# macOS
|
||||
brew install charmbracelet/tap/soft-serve
|
||||
|
||||
# Linux
|
||||
curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/charm.gpg
|
||||
echo "deb [signed-by=/usr/share/keyrings/charm.gpg] https://repo.charm.sh/apt * *" | sudo tee /etc/apt/sources.list.d/charm.list
|
||||
sudo apt update && sudo apt install soft-serve
|
||||
|
||||
# Démarrer
|
||||
soft serve
|
||||
```
|
||||
|
||||
### Docker Compose
|
||||
|
||||
```yaml
|
||||
version: '3.8'
|
||||
services:
|
||||
soft-serve:
|
||||
image: ghcr.io/charmbracelet/soft-serve:latest
|
||||
container_name: soft-serve
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "23231:23231" # SSH
|
||||
- "23232:23232" # HTTP + Web UI
|
||||
volumes:
|
||||
- soft-serve-data:/data
|
||||
- ./config.yaml:/data/config.yaml:ro
|
||||
|
||||
volumes:
|
||||
soft-serve-data:
|
||||
```
|
||||
|
||||
### Configuration `config.yaml`
|
||||
|
||||
```yaml
|
||||
host: 0.0.0.0
|
||||
http_listen_addr: 0.0.0.0:23232
|
||||
ssh_listen_addr: 0.0.0.0:23231
|
||||
public_key: ssh-rsa AAAAB3... # clé du serveur
|
||||
private_key: /data/.ssh/soft_serve_server_ed25519
|
||||
repo_path: /data/repos
|
||||
data_path: /data/db
|
||||
log_path: /data/soft-serve.log
|
||||
anonymous_access: true
|
||||
```
|
||||
|
||||
## 🔄 Alternatives
|
||||
|
||||
### Open Source
|
||||
- [[app-gitea]] — Git platform complet (lourd, web UI riche)
|
||||
- **Gitolite** — Git server SSH-only en Perl (legacy)
|
||||
- **Kallithea** — Mercurial + Git server Python
|
||||
- **Fossil** — SCM distribué mono-binaire (D. Richard Hipp)
|
||||
- **Radicle** — P2P Git (crypto, décentralisé)
|
||||
- **OneDev** — DevOps platform Java complète
|
||||
|
||||
### Propriétaires
|
||||
- **GitHub Enterprise** — référence industry
|
||||
- **GitLab EE** — self-hosted premium
|
||||
- **Bitbucket Data Center** — Atlassian
|
||||
- **AWS CodeCommit** — Git managé Amazon
|
||||
|
||||
## 🔐 Sécurité
|
||||
- **Auth SSH** : clés publiques, tokens par utilisateur
|
||||
- **Anonymous read** : configuré globalement (par repo possible)
|
||||
- **Hooks pre-push** : scripts de validation
|
||||
- **TUI admin** : opérations sensibles via SSH direct
|
||||
- **Pas de plugin tiers** : surface d'attaque minimale (binaire Go)
|
||||
- **HTTP basic** : sur la web UI, à coupler HTTPS obligatoire
|
||||
|
||||
## 📚 Ressources
|
||||
- [Documentation](https://github.com/charmbracelet/soft-serve#readme)
|
||||
- [Blog announcement](https://charm.sh/blog/soft-serve-0.4/)
|
||||
- [Charm ecosystem](https://charm.sh/)
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-git]] — Catégorie Git
|
||||
- [[app-gitea]] — Alternative complète
|
||||
- [[app-termix]] — Web SSH client
|
||||
Reference in New Issue
Block a user