cgit on uberspace
So, ihr wollt cgit auf dem Uberspace installieren? Dann macht euch auf ein klein wenig Arbeit gefasst.
Ihr holt euch erst mal cgit und kompiliert es.
git clone https://github.com/zx2c4/cgit.git
cd cgit
Danach müsst ihr in der config erst mal ein paar Einstellungen ändern, weil wir ja Zeugs nicht als root installieren können. $whoami mit eurem uberspace-namen ersetzen. In meinem Fall wäre das also tribly.
vim Makefile
CGIT_SCRIPT_PATH = /home/$whoami/cgi-bin
CGIT_DATA_PATH = $(CGIT_SCRIPT_PATH)
CGIT_CONFIG = /home/$whoami/etc/cgitrc
CACHE_ROOT = /home/$whoami/cache/cgit
Passende version von git installieren:
make get-git
Und nun cgit kompilieren:
make
cgit ins cgi-bin Verzeichnis verschieben:
mv cgit ~/cgi-bin/
Nachdem wir fertig damit sind, müssen wir uns ein wenig um die Aufteilung kümmern. Mein cgit läuft über git.tribly.de, also eine sub-domain. Also verschiebe ich die cgit.css und cgit.png nach git/static. (ich nehme an, ihr wisst wie man eine sub-domain erstellt)
mkdir ~/git/static
cp ~/cgit/{cgit.css, cgit.png} ~/git/static
Nun noch eine ~/git/.htaccess anlegen:
RewriteEngine on
Options +ExecCGI
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) /cgi-bin/cgit.cgi/$1 [PT]
Und noch eine ~/etc/cgitrc:
virtual-root=/
enable-index-links=1
enable-log-filecount=1
enable-log-linecount=1
enable-commit-graph=1
snapshots=tar.gz tar.bz zip
css=/static/cgit.css
logo=/static/cgit.png
So, damit wäre cgit nun unter git.$whoami erreichbar.
Syntax-Highlighting
Falls du nun noch syntax-highlighting willst (ungeschickt gelöst):
toast get http://www.andre-simon.de/zip/highlight-3.18.tar.bz2
cd .toast/pkg/highlight/v3.18/archive
tar -xvf highlight-3.18.tar.bz
rm highlight-3.18.tar.bz
vim highlight-3.18/src/makefile
Da uberspace lua5.1 nutzt, und in highlight lua5.2 eingestellt ist,
müssen wir das noch ändern. Also nach der Zeile
LUA_CFLAGS=$(shell pkg-config --cflags lua) -DUSE_LUA52
suchen und LUA52 mit LUA51 ersetzen.
Und dann wieder einpacken und armen:
tar -cf highlight-3.18.tar.bz highlight-3.18
toast arm highlight
Nun noch (hab ich so gemacht, könnt ihr machen wie ihr wollt),
~/cgit/filters
nach ~/git
verschieben und in ~/git/filters/syntax-highlighting.py
die shebang von python
auf python2.7
umändern, da uberspace default python2.6 nutzt, aber
ptyhon2.7 benötigt wird.
Und noch als aller letzten Schritt die highlight-settings in die ~/etc/cgitrc
eintragen
(muss der absolute Pfad sein):
source-filter=/var/www/virtual/$whoami/git.$whoami.de/filters/syntax-highlighting.py
about-filter=/var/www/virtual/$whoami/git.$whoami.de/filters/about-formatting.sh
Und das wars aber auch nun.
Viel Spaß mit eurem cgit :)
Erstellt mit der Hilfe von:
- diesem Blog-Eintrag
- Uberspace support der die Boost Dev-Header installiert und mir gesagt hat, dass man eine andere Lua version braucht
- Rasi und bl1nk von #archlinux.de