Gemigit
Gemigit est une forge-logiciel minimaliste sous le protocole gemini, écrit en Go.
Fonctionnalités
Le but principal de Gemigit est de permettre aux utilisateurs de créer et de gérer leurs répertoires git. L'image ci-dessous démontre la page de gestion d'un utilisateur connecté.
Par défaut, les répertoires sont privées après leur création, ils ne peuvent être vu que par leur propriétaire ou par les utilisateurs ayant une permission de lecture sur le répertoire. Il est possible de rendre son répertoire publique sur la page de configuration du répertoire. Les répertoires publiques peuvent être vu par tout le monde et ils sont affichés dans la liste de répertoires publiques comme on peut le voir dans l'image ci-dessous.
Les utilisateurs peuvent gérer les permissions de leurs répertoires, donnant la permission d'écriture ou de lecture à certains utilisateurs ou groupes.
Les utilisateurs peuvent créer des groupes pour faciliter la gestion des permissions de leur répertoires. Par exemple, au lieu d'ajouter les mêmes utilisateurs à plusieurs répertoires, il est possible d'ajouter ces utilisateurs à un groupe et d'ajouter ce groupe à de multiple répertoires.
Gemigit peut être configuré en modifiant le fichier de configuration, plusieurs options sont disponibles, comme choisir d'utiliser LDAP pour l'authentification des utilisateurs, ou de choisir entre SQLite ou MySQL pour la base données à utiliser. Il aussi possible de configurer Gemigit en mode "stateless" enfin de balancer le trafic entre plusieurs instances.
Déploiement
- Premièrement, clonez le répertoire avec la commande : "git clone https://gmi.rmf-dev.com/Vaati/Gemigit". Pour utiliser une version plus stable du programme, utiliser la branche LTS avec la commande : "git checkout lts-1.0".
- Compiler le programme avec la commande "go build".
- Copier le fichier config.yaml dans le répertoire /etc/gemigit, /usr/local/etc/gemigit ou dans le répertoire d'exécution.
- Modifier le fichier de configuration selon vos besoins.
- Exécuter gemigit.
Le code source est disponible en ligne.
Le répertoire peut aussi être cloner en utilisant cette commande :
git clone https://github.com/RealMelkor/Gemigit.git