Kostenlose Online-Dienstleistungen für Open-Source-Projekte =========================================================== :author: Axel Beckert :backend: slidy :max-width: 45em :data-uri: http://noone.org/talks/services-for-floss/ :max-width: 94% :icons: Motivation ---------- Viele, vor allem kleine Open-Source-Projekte können sich keine eigene Infrastruktur leisten — sei es finanziell oder aufwandsmäßig. Aber das braucht's auch nicht: Viele kommerzielle und einige wenige ideele Anbieter bieten Hosting oder Rechenzeit für Open-Source-Projekte kostenlos an. Übersicht --------- - VCS-Hosting (Git, Svn, Hg, etc.) - Statische Webseiten / Dokumentation / E-Books - Continuous Integration + Deployment - Code Coverage - Bugtracking - Release Management / Software-Downloads - DNS-Hosting - Statusbuttons und Eselsohren - Weitere Quellen (Folien auch unter https://noone.org/talks/services-for-floss/) Git-Hosting ----------- - GitHub (https://github.com/): Pull-Requests, Forks, Webhooks, README * Beispiel: https://github.com/xtaran/unburden-home-dir - GitLab (https://about.gitlab.com/): Pull-Requests, Forks, Webhooks, README * Beispiel: https://gitlab.com/unburden-home-dir/unburden-home-dir - Repo.or.cz (http://repo.or.cz/): Forks, README, Kategorisierung * Beispiel: http://repo.or.cz/w/conkeror.git VCS-Hosting ----------- - BitBucket (https://bitbucket.org/): Git, Mercurial (Hg), Pull-Requests, … * Beispiel: https://bitbucket.org/shlomif/website-meta-language - SourceForge (https://sf.net/): Git, Subversion, Mercurial (kein CVS mehr); Kategorisierung * Beispiel: https://sourceforge.net/p/zsh/code/ci/master/tree/ - Deveo (https://deveo.com/): Git, Subversion, Mercurial * Unterschiede zu GitHub: http://blog.deveo.com/what-makes-deveo-different-from-github-gitlab-and-bitbucket/ Zweckgebunden ~~~~~~~~~~~~~ - Alioth (https://alioth.debian.org/; FusionForge): Git, CVS, Subversion, Mercurial, Arch, Bazaar, Darcs * Beispiel: https://anonscm.debian.org/cgit/aptitude/aptitude.git (cgit) - Fedora Hosted (https://fedorahosted.org/; Trac): Git, Subversion, Mercurial, Bazaar * Beispiel: https://fedorahosted.org/mlocate/browser Statische Webseiten ------------------- - SourceForge ('projekt'.sf.net + 'projekt'.sourceforge.net), inkl. Shellzugang * Beispiel: http://zsh.sf.net/ bzw. http://zsh.sourceforge.net/ - GitHub ('organisation'.github.io/ oder 'organisation'.github.io/'projekt'): Durch Committen und Pushen in einen bestimmten Git-Branch, eigene Domains möglich, einziges unterstütztes Rendering: Jekyll * Beispiel: https://unetbootin.github.io/ Dokumentation ~~~~~~~~~~~~~ - ReadTheDocs ('projekt'.readthedocs.io): Fokus auf Python, Markdown und RST. (Nutzt primär Sphinx und MkDocs.) Unterstützt mehrsprachige Doku und Doku für verschiedene Versionen. * Beispiel: https://unburden-home-dir.readthedocs.io/ E-Books ~~~~~~~ - GitBook (https://www.gitbook.com/): HTML, PDF, EPUB, Mobi, GitHub-Integration, Shop (ähnlich LeanPub, das ist aber nicht mehr kostenlos für Autoren) * Beispiel: https://xtaran.gitbooks.io/unburden-home-dir/ - Penflip (https://www.penflip.com/) * Beispiel: https://www.penflip.com/MmmmJoel/writing-some-things Continuous Integration + Deployment ----------------------------------- - Travis CI (https://docs.travis-ci.com/): Ubuntu, MacOS X; nur via GitHub * Beispiel: https://travis-ci.org/xtaran/unburden-home-dir - AppVeyor (https://www.appveyor.com/): Windows; z.B. via GitHub, BitBucket, Visual Studio Online * Beispiel: https://ci.appveyor.com/project/xonsh/xonsh Code Coverage + Analysis ~~~~~~~~~~~~~~~~~~~~~~~~ - Coveralls: https://coveralls.io/ (via GitHub, BitBucket) * Beispiel: https://coveralls.io/r/xtaran/unburden-home-dir - Codecov: https://codecov.io/ (via GitHub, GitLab, BitBucket) * Beispiel: https://codecov.io/gh/xtaran/unburden-home-dir - Code Climate: https://codeclimate.com/ (z.B. via GitHub) * Beispiel: https://codeclimate.com/github/codeclimate/codeclimate-yaml - SourceClear: https://www.sourceclear.com/registry/explore Bugtracking / Project Management -------------------------------- - SourceForge: pro Projekt * Beispiel: https://sf.net/p/gnudatalanguage/bugs/ - Alioth: pro Projekt * Beispiel: https://alioth.debian.org/tracker/?group_id=30105 - Fedora Hosted: pro Projekt * Beispiel: https://fedorahosted.org/mlocate/report/1 - GitHub: pro Git-Repository * Beispiel: https://github.com/xen-tools/xen-tools/issues - GitLab: pro Git-Repository * Beispiel: https://gitlab.com/gitlab-org/gitlab-ce/issues - Deveo - HostedRedmine: https://www.hostedredmine.com/ Release Management / Software-Downloads --------------------------------------- - SourceForge: Beliebige Dateien und Verzeichnisstrukturen * Beispiel: https://sf.net/projects/gnudatalanguage/files/ - GitHub: Pro getaggten Commit ein Release * Beispiel: https://github.com/fvwmorg/fvwm/releases DNS-Hosting ----------- - XName: https://www.xname.org/ - Metanet: https://www.metanet.ch/email-domains/dns-hosting (bis 5 Domains) Statusbuttons und Eselsohren ---------------------------- Statusbuttons ~~~~~~~~~~~~~ * Shields.io: https://shields.io/ Eselsohren ~~~~~~~~~~ * Offizielle: https://github.com/blog/273-github-ribbons * Pures CSS: https://codepo8.github.io/css-fork-on-github-ribbon/ * Humoristisch: https://lkundrak.github.io/github-ribbons/ Sonstiges --------- Gestorbene Hosting-Plattformen ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Gitorious (http://gitorious.org/): von GitLab aufgekauft und abgeschaltet -- von der Community read-only wieder ins Netz gebracht. * Google Code (http://code.google.com/): Read-only, es gab Migrationstools zum Wechsel zu GitHub * BerliOS: (http://developer.berlios.de/): Abgeschaltet, wieder angeschaltet und dann wieder abgeschaltet. Weitere Quellen ~~~~~~~~~~~~~~~ * GitHub Integrations Directory: https://github.com/integrationsa * Travis CI Integrations and Notifications: https://docs.travis-ci.com/user/notifications/ * Deveo Integrations: https://deveo.com/integrations * Alternative.to: http://www.alternative.to/ Folien ~~~~~~ https://noone.org/talks/services-for-floss