Nur was dir gehört, lässt sich teilen
Es begann mit einem Buch, das nicht durch die Tür passte.
Über (m)ein kleines Werkzeug namens pebps, das Bücher zerlegt, und darüber, warum es ausgerechnet unter einer Open-Source-Lizenz der Europäischen Union steht.
Es begann mit einem Buch, das nicht durch eine ganz bestimmte Tür passte. Ich wollte eine Datei irgendwohin hochladen, und die Tür war genau zwanzig Megabyte breit. Das Buch dagegen dreiunddreißig. Eine total banale Geschichte, wie sie sich täglich tausendfach abspielt: irgendwo eine technische Grenze, irgendwo eine Datei, die zu groß ist. Man könnte achselzuckend weitergehen. Aber diese Geschichte hat mich dazu gebracht meine erste Open Source Contribution zu pushen.
Dieser speziellen Tür begegnet man überall, und das ist der Grund, warum ein so kleines Werkzeug überhaupt nützlich ist. Sie steht beim Mailserver mit seiner 20-Megabyte-Grenze, beim datenschutzfreundlichen Dienst aus der Schweiz, beim KI-Assistenten eines Hyperscalers, beim x-beliebigen Upload-Formular, und fast immer ist sie ungefähr gleich breit, zwanzig, fünfundzwanzig Megabyte. Das ist kein Naturgesetz, sondern Erbe aus der Vorzeit. Die willkürlich wirkende Zahl stammt aus der Welt der E-Mail, deren Grenzen sich vor langer Zeit dort eingependelt haben und die alle anderen brav übernommen haben. Dahinter steckt eine schlichte Mechanik: Damit eine binaere Datei sicher durch solche Systeme reist, wird sie in Text konvertiert, was sie um rund ein Drittel aufbläht. Eine ausgewiesene Dateigröße von fünfundzwanzig MB bedeutet darum in Wahrheit kaum realisierte neunzehn. Der Rest ist Vorsicht und Sparsamkeit der Betreiber: Serverlast, Bandbreite, die Mühe, große Dateien auf Schadcode zu scannen, und der durchaus nachvollziehbare Wille, das eigene System nicht als fremdes Lager enden zu sehen. So ist aus Technik eine De-facto-Konvention geworden, eine Zahl, gegen die man im Alltag öfter stößt, als einem lieb ist, beim Attachment wie beim Bild.
Mich hat an dieser Banalität die Vorbedingung gestört. Damit ich ein Buch überhaupt zerlegen darf, muss es mir gehören. Nicht im Sinne einer Quittung, sondern im Sinne der Datei: Sie muss offen sein, ohne Kopierschutz, ohne dieses kleine digitale Schloss, das dir freundlich mitteilt, dass du zwar bezahlt hast, das Ding aber trotzdem nicht anfassen darfst, dass es vielleicht sogar nur eine begrenzte Nutzungsdauer hat. Ein DRM-geschütztes Buch lässt sich (rechtlich) nicht teilen. Es lässt sich nur konsumieren, in der App, die der Verkäufer vorschreibt, auf dem Gerät, das er gutheißt.
Pandolins ebook & PDF Splitter, kurz pebps, so heißt das Werkzeug, weigert sich, geschützte Dateien überhaupt zu öffnen. Das ist keine technische Faulheit, sondern eine Haltung in einer Zeile Code: Man kann nur zerlegen, was einem wirklich gehört. Alles andere wäre das Aufbrechen von Schlössern, unter Umständen die Schädigung der Medienschaffenden, und darum geht es ausdrücklich nicht. Es geht um das Gegenteil. Es geht darum, was man mit den eigenen Dingen tun darf, wenn man sie tatsächlich besitzt.
Wie es funktioniert, und warum das schwerer war als gedacht

Im Prinzip ist die Sache simpel. Ein PDF zerschneidet man an den Seitengrenzen, ein E-Book an den Kapitelgrenzen, niemals mitten im Satz. Jeder Teil bleibt ein vollständiges, lesbares Dokument. Wohin diese Teile danach gehen, fragt pebps nicht. Ob sie an einen Mailserver wandern, an eine K.I., in eine Cloud oder in den souveränen eigenen Service, ist nicht Sache des Tools. Es macht die Stücke klein genug für jede beliebige Tür, der Rest ist deine Sache. So weit die Theorie, und so weit auch der erste Entwurf, der an meinen eigenen, hübsch gebauten Testdateien tadellos lief.
Dann kam das echte Buch. Ein bildlastiges Fachbuch über KI-Prompting, dreiunddreißig Megabyte, und mein Werkzeug machte daraus achtzehn Teile zu je dreiunddreißig Megabyte. Aus einem Buch wurden fast sechshundert MB. Kein einziger Teil lag unter der Grenze, jeder war so groß wie das Ganze. Der Grund war ein peinlich schlichter Denkfehler: Ich hatte sämtliche Bilder in jeden einzelnen Teil gepackt, weil ja irgendein Kapitel sie brauchen könnte.
Die Lehre daraus ist alt und wird trotzdem jedes Mal neu gelernt. Software bewährt sich nicht an den eigenen, sauber konstruierten Beispielen, sondern an der Wirklichkeit, am "Usecase", die sich nicht an die Annahmen des Autors beziehungsweise Programmierers hält. Die Korrektur war trivial, jedem Teil nur die Bilder mitzugeben, die seine Kapitel auch wirklich aufrufen. Danach passten die Teile.
Und dann zeigte mir dasselbe Buch die nächste Demütigung. Verlags-E-Books schleppen Altlasten mit, ein zweites, verstecktes Inhaltsverzeichnis aus der vorigen Format-Generation, eine Wegweiser-Tabelle, und vor allem einen Index. Ein Index ist seinem Wesen nach nichts als ein Geflecht von Verweisen in alle Kapitel zugleich. Zerlegt man das Buch, zeigen Hunderte dieser Verweise plötzlich ins Leere, auf Kapitel, die jetzt in einem anderen Teil liegen. Das offizielle ePub-Prüfprogramm, das jedes seriöse E-Book bestehen sollte, meldete über zweihundert Fehler.
Also lernten das Werkzeug und ich, auch das zu heilen: das alte Verzeichnis lückenlos neu zu nummerieren, die Wegweiser zu beschneiden, und die toten Verweise im Fließtext zu reinem Text zu machen, ganz ohne den sichtbaren Inhalt anzutasten. Der Indexeintrag bleibt stehen, nur der Klick führt nicht mehr in die Leere. Erst der dritte große Anlauf, nach vielen Iterationen, war sauber, an genau dem Buch, das die ersten beiden blamiert hatte. So gehört es sich. Man baut Software an echten Dateien, nicht an den eigenen schönen Attrappen. :-)
Warum die EUPL, und nicht GPL oder MIT
Bleibt die Frage, unter welcher Lizenz so ein Ding in die Welt geht, und das ist keine Formalie, sondern die eigentliche Pointe.
Open Source, ja, auf jeden Fall. Und dann? Die bequeme Wahl wäre die MIT-Lizenz gewesen. MIT heißt: Nimm es, mach damit, was du willst, integriere es meinetwegen in ein proprietäres Produkt und verkaufe es weiter. Ein Garant für maximale Verbreitung, aber auch für maximale Gleichgültigkeit gegenüber dem, was danach mit ihm geschieht. Für ein Werkzeug, dessen ganzer Daseinsgrund das offene Format ist, wäre das schon irgendwie ein merkwürdiger Widerspruch, nicht wahr?
Die GPL, inzwischen in Version 3 meines Wissens, wäre die ehrenwerte Antwort gewesen, das alterwürdige Schutzschild freier Software. Wer sie nimmt und weitergibt, muss das Ergebnis frei lassen. Dagegen ist nichts einzuwenden.
Geworden ist es die EUPL, die European Union Public Licence. Sie tut, was die GPL tut, sie hält den Code frei für alle, die darauf aufbauen. Aber sie tut es als europäisches Dokument, rechtsverbindlich in allen Amtssprachen der Union, geschrieben für genau diesen Zweck. Für ein Werkzeug, das aus einer Mietwohnung bei München kommt und offene Formate gegen die geschlossenen Systeme verteidigt, ist die Lizenz der Europäischen Union die ehrlichere Signatur, dachte ich mir. Eine kleine Geste, sicher. Aber Souveränität besteht aus genau solchen kleinen Gesten, aus aktiv getroffenen Entscheidungen statt übernommener Voreinstellungen.
pebps liegt auf Codeberg, nicht auf der einst unabhängigen, jetzt übernommenen Plattform des großen amerikanischen Anbieters, auch das eine dieser kleinen Gesten. Es ist frei, es ist offen, und es gehört niemandem, was bei Code die integerste Art ist, allen zu gehören.
Nimm es! Zerleg deine Bücher! Verbessere es! Dann gib es weiter!
Ein Schuppentier rollt sich um das zusammen, was sein eigen ist. Und ab und an rollt es sich wieder auf und teilt.
Ach so, und falls du Nutzer jenes antiken Betriebssystems mit dem schiefen Fensterrahmen bist: pebps läuft auch bei dir, nur eben auf der Kommandozeile, als Command-Line-Tool auf Python-Basis. Erfahrungsgemäß sind die meisten dieser Anwender eher GUI-affin. 😄 Aber auch ihr könnt ja noch dazulernen.
Was dir gehört, kannst du zerlegen.
Was du zerlegst, kannst du teilen.
One Community. One homelab. One less excuse.
Was dir gehört, kannst du zerlegen.
Was du zerlegst, kannst du teilen.
One Community. One homelab. One less excuse.