Au final les certificats non-tor seront (malheuresement) signé par Let’s Encrypt un peu avant le 2017-05-26, les certificats tor seront auto-signé
Soutenons La Quadrature Du Net

Paramétrage de mon serveur git

Après avoir eu plusieurs problèmes avec gitlab.com (impossibilitée de git push sur mon propre dépot, par example). J’ai décidé de faire un truc simple, inspiré de git.linkmauve.fr. J’ai mis tout mes dépots git dans le /git

Démarrage avec juste nginx et ssh

Celui-là est trivial quand on connais le truc, suffit de mettre git update-server-info dans hooks/post-update du dépot git (qui doit être un --bare)

Ajout de git-daemon

Celui-là fût encore plus simple, j’ai juste eu à dire où sont les dépots git

Une meilleure interface

En cherchant des alternatives au GNU je suis tombé sur stagit, un générateur static pour git (je n’aime pas les CGI, surtout quand ça peut avoir un accès sur mon dépot git), pour l’utiliser j’ai rajouté ces lines au post-update-hook :

repo=$(pwd)
cd "$(pwd | sed s/.git$//)" && stagit -c "$repo.cache" "$repo"
cd /git && stagit-index *.git > /git/index.html

Déployement vers blog

Celui-là sort une erreur(probablement parceque GIT_INDEX_FILE est pas censé être vide) mais ça fonctionne :P

GIT_INDEX_FILE='' git --work-tree=/srv/web/hacktivis.me --git-dir=/git/blog.git checkout -f

Garbage Collector

Ce n’est pas comme si mes dépots étaient gros, git est censé faire ça tout-seul mais apparement non, donc je fait un git gc à chaque fois, ce qui n’est pas très optimisé.

post-update hook final


#!/bin/sh
repo=$(pwd)
update_f=' * Updating %s…'
is_ok(){ echo ' [OK]'; }

printf "$update_f" 'Garbage Collector'
git gc && is_ok

printf "$update_f" info
git update-server-info && is_ok

printf "$update_f" stagit
cd "$(pwd | sed s/.git$//)" && stagit -c "$repo.cache" "$repo" && is_ok

printf "$update_f" stagit-index
cd /git && stagit-index *.git > /git/index.html && is_ok

# Erreurs mais fonctionnel
grep blog <<<$repo && printf "$update_f" blog && GIT_INDEX_FILE='' git --work-tree=/srv/web/hacktivis.me --git-dir=/git/blog.git checkout -f && is_ok
article seul(HTML-brut)