Schlagwort-Archive: tools

Gitea oder Gogs statt Github und Gitlab

Ich habe mir den Github-Klon Gogs näher angeschaut und bin hellauf begeistert. Weiter unten erkläre ich noch, wie ich Gogs bzw. Gitea TLS-verschlüsselt hinter Nginx laufen lasse. Nun aber erst mal zu Gogs und warum ich es brauche.

Github ist über die Jahre zum defacto-Standard für Opensource-Entwicklung geworden. Das liegt zum einen an den Features, die Github bietet (Pull-Requests, Issues, Wiki). Die Popularität rührt aber auch daher, dass diese Features sehr einfach gehalten sind. Das Issue-Tracking ist extrem rudimentär, alles andere ist aber für viele Overkill. Github hat das Mitmachen einfach gemacht.

Es gibt allerdings auch Gründe, die gegen die Nutzung von Github sprechen. Github selbst ist z.B. keine Opensource Software. Möchte man auch private Repositories erstellen, braucht man ein kostenpflichtiges Konto. Das habe ich zwar, aber trotzdem möchte ich nicht zwangsläufig das Schicksal meines Codes einer Firma überlassen, über die ich keine Kontrolle habe. Dank der Dezentralität von Git schadet es auch nicht mehrgleisig zu fahren (z.B. Mirror auf Github für Pull-Requests und issues).

Die erste Alternative, die ich mir angeschaut habe, war Gitlab. Komplett open source, ähnliche Features wie Github und dazu noch eine integrierte Plattform für Continuous Integration. Nach einem halben Tag Installation und Konfiguration (alles eher komplex) hat sich gezeigt, dass meine Hardware nicht leistungsstark genug ist und ich einen extra Server für Gitlab bräuchte. Wo Web, Mail, Seafile (mit ~100 aktiven Usern), Minecraft und diverse andere Dinge klaglos parallel laufen, läuft Gitlab nicht mal allein flüssig. Wie das auf einem Raspberry Pi laufen soll ist mir schleierhaft.

Der nächste Kandidat war dann schon Gogs und es konnte sofort überzeugen. Auf den ersten Blick bietet Gogs die gleichen Features wie Github. Zum Teil nicht ganz so poliert, manchmal wirkt es aber auch schicker. Gogs ist in Go geschrieben (Gogs = Go Git Service) und so leichtgewichtig (~20MB RAM), dass es sogar auf einem Raspberry Pi ordentlich läuft.

Und Gitea?

Gogs wurde vor kurzem geforkt. Nachdem der zentrale Entwickler wiederholt für Monate nicht erreichbar war hatte die Community genug und hat Gitea erstellt. Die Entwicklung beim Fork läuft schneller und transparenter, als es bei Gogs je der Fall war. Meine Empfehlung lautet also, Gitea statt Gogs einzusetzen. An Features muss man im Vergleich zu Git kaum Abstriche machen. Hier mal eine kleine unvollständige Aufstellung:

  • interner Issue Tracker (extern möglich)
  • internes Wiki (ebenso extern möglich)
  • protected branches
  • Git hooks
  • webhooks
  • deploy keys
  • signierte Commits
  • Authentifizierung auch über LDAP, SMTP, OAuth2, OpenID und PAM
  • 2FA
  • Support für DroneCI und andere


Weiterlesen

Eigene DNS-Server mit der Fritz!Box 6490 Cable

Leider hat sich Vodafone dazu entschieden Nutzern der Fritz!Box nicht zu erlauben eigene DNS-Server zu nutzen. Da die DNS-Server von Providern auch gern mal offline sind führt das dazu, dass man dann „ohne Internet“ ist.

In neueren Versionen von FRITZ!OS ist es leider auch nicht mehr möglich, die entsprechende Konfigurations-Seite per Direktlink zu öffnen. Es gibt allerdings doch noch eine Möglichkeit: FBEditor.

Dieses Tool erlaubt es Sicherungen der Fritz!Box-Konfiguration direkt zu bearbeiten. Man muss beim Exportieren der Konfiguration ein Kennwort angeben. Dieses muss man auch im FBEditor hinterlegen. Nun kann man die Datei dort öffnen und beliebig bearbeiten. Für die DNS-Einstellungen könnte der entsprechende Abschnitt z.B. so aussehen (mit Google Public DNS):

servercfg {
        hostname = "(none)";
        dhcpc_hostname = "fritz.box";
        dns1 = 192.168.180.1;
        dns2 = 192.168.180.2;
        use_user_dns_for_ipv4 = yes;
        user_dns1_for_ipv4 = 8.8.8.8;
        user_dns2_for_ipv4 = 8.8.4.4;
        use_user_dns_for_ipv6 = yes;
        user_dns1_for_ipv6 = 2001:4860:4860::8888;
        user_dns2_for_ipv6 = 2001:4860:4860::8844;
}

Die Änderungen speichert man und wählt in der Fritz!Box den Punkt Konfiguration wiederherstellen.

Der FBEditor scheint nicht aktiv weiterentwickelt zu werden. Die Version 0.7.2.1 lief bei mir mit FRITZ!OS 06.50 allerdings problemlos.