Transcript
[0:25] Hallo und herzlich willkommen zur etwas verspäteten Ausgabe von Radio Tux im September 2023 genau wir sind ein bisschen verspätet ihr habt es gemerkt eigentlich ist schon Oktober aber wir gucken quasi zurück was der September 2023 uns denn gebracht hat und wir haben ein neues Teammitglied das sich sehr gut mit Rust auskennt und ich hoffe Wir werden in einer der folgenden Episoden auch noch mal intensiver über Rust sprechen, denn nachdem das ja jetzt auch im Linux-Körner sozusagen angekommen ist, ist es eine Programmiersprache, die ja doch einen großen Drive gekriegt hat, also sehr, sehr populär ist und immer wieder höre ich von neuen Programmen, die in Rust geschrieben sind oder in Rust neu oder wieder implementiert wurden und jetzt schneller, besser, höher, weiter sein sollen.
Matthias, wie gesagt, beschäftigt sich mit Rust und hat sich mal angeguckt, was die Rust-Community, im September 2023 so gemacht hat.
[1:40] Hallo und willkommen bei Radio Tux. Ich bin Matthias und ich möchte euch heute erzählen, was im September 2023 in der Rust-Welt passiert ist.
Das Ganze hat keinen Anspruch auf Vollständigkeit, weil einfach so viel passiert ist, aber so die größten und vielleicht auch die, nach meiner Einschätzung, wichtigsten Ereignisse will ich kurz mal abreißen.
Ja, September 2023, die RustConf in Albuquerque in New Mexico in den USA war und natürlich auch online.
Es gab sehr viele sehr interessante Vorträge und ich wette, dass die Videos irgendwann auf YouTube auftauchen werden und ich kann euch wirklich nur empfehlen, diese Videos zu zu konsumieren, wenn ihr Interesse an Rust, dem Ökosystem und der Sprache im Generellen habt.
[2:34] Ja, was ist offiziell passiert? Es gibt einen neuen Prozess, wie Project Directors für die Rust Foundation ernannt werden. Was sind Project Directors?
Project Directors sind fünf Personen, die in das Rust Foundation Board of Directors kommen.
[2:54] Und es gibt auch noch Member Directors. Diese repräsentieren praktisch Foundation Members.
Und Foundation Members sind z.B.
Google, AWS, aber auch Mainmatter und so weiter. Also praktisch Mitglieder der Rust Foundation haben da Sitze in diesem Board und es gibt eben noch fünf Sitze für sogenannte Project Directors und die repräsentieren das Rust-Projekt in diesem Board. Diese sind gewählt vom Rust Leadership Council und der Rust Leadership Council wiederum besteht aus Abgesandten der einzelnen Teams. Rust wird ja von mehreren Teams entwickelt. Also es gibt zum Beispiel das Compiler Team, das Create-CIO Team, das Infrastructure Team und die haben eben Abgesandte in Leadership Council und die wiederum wählen dann die Project Directors. Die Project Directors werden für zwei Jahre ernannt und zwar nicht immer alle fünf auf einmal, sondern abwechselnd.
Dieses Jahr werden zwei neue ernannt, nächstes Jahr werden drei neue ernannt und so gibt es praktisch so ein Rolling Update sozusagen von den Project Directors.
Genau, die Timeline war, dass bis zum 15. September die Kandidaten nominiert werden konnten.
Die wurden dann am 22. September publiziert, also wer die Kandidaten sind.
Dann gab es eine sogenannte Feedback Period.
[4:22] Die läuft noch und die läuft am 2. Oktober aus und in der Woche vom 1. Oktober wird dann, in einem Election Meeting praktisch entschieden, wer von den Kandidaten dann einen Sitz bekommt.
[4:39] Dann gab es einen Postmortem-Beitrag zu einem Crates.io Vorfall, der schon im August, und zwar am 16. August, passiert ist.
Crates.io, das ist die Plattform, auf der Pakete, sogenannte Crates, im Rust-Ökosystem publiziert werden.
Und zwar gab es da einen Vorfall, dass neun Crates getypo-squatted wurden.
Typosquatting heißt, man nimmt eine populäre Bibliothek, eine populäre Crate und publiziert sie nochmal unter einem anderen Namen, praktisch mit einem Schreibfehler.
Also wenn ich zum Beispiel eine Crate, eine Bibliothek habe, die zum Beispiel LibSSL heißen würde, dann würde ich die Typosquatten, indem ich sie LibSLS nennen würde und da würde ich dann meinen Chartcode einfügen. Und genau das ist eben auch passiert. Und zwar wurde Chartcode im sogenannten Build-RS-File in diesen Typo Squatted Crates eingeführt. Und das Build-RS-File ist sozusagen ein Build-Script, das beim Bauen des Codes von dieser Crate ausgeführt wird. Und das.
[5:51] Problem war hier, dass eben jemand, der Code im Build-RS-File hatte, der User-Daten während den Bildprozess praktisch vom System, auf dem gebaut wurde, an einen Telegram-Channel geschickt hat. Also es war definitiv ein Angriff. Diese Crates, diese Bibliotheken wurden sofort gejankt, das heißt, man kann sie nicht mehr aus Versehen runterladen und der User-Account wurde sofort gesperrt. Und jetzt gibt es eben auch einen Postmortem-Beitrag dazu, der wird, euch in den Show Notes verlinkt.
Genau, dann gab es noch ein Leadership Change im Rust Infrastructure Team und zwar Pietro Albini hat nach knapp vier Jahren als Leiter des Infrastruktur Teams seinen Rücktritt eingereicht, mit der Begründung, dass es einfach auf Dauer sehr anstrengend ist und er mal eine Pause braucht und dass er auch denkt, dass es sinnvoll ist, dass man da mal rotiert und praktisch neue Leads auch mal praktisch das Infrastruktur-Team leiten dürfen. Und zwar sind es, ich hoffe.
[7:02] Ich spreche das jetzt richtig aus, Jake Golding, auch bekannt unter dem Handel Shapemaster und Jan-David Nose unter dem Handel jdno bekannt.
Des Weiteren wurde Rust 1.72.1 released, das heißt, das ist ein Bugfix-Release.
Es gab Compile-Time-Regressions, die gefixt wurden. Es gab eine Änderung an der SIMD-Code-Generierung, welcher zurückgenommen wurde, weil eben ein Fehler gefunden wurde und es gab einen Fix für Rustdoc, für das Tool, das praktisch die Dokumentation aus dem Code generiert.
[7:51] Außerdem wurde announced, dass mit Rust 1.74, welches im November herauskommen soll, die Minimum-Version für Apple-Plattformen angehoben wird.
Das heißt, es gibt ein neues Minimum-Requirement was Apple angeht, also Versionsstand der Apple-Plattform.
Und zuletzt gab es noch ein Crates.io Policy Update RFC-Blogpost.
Und zwar ist jetzt dieser RFC für ein Policy Update von Crates.io in der Final Comment Period.
Da wird eben erwartet, dass die Community mal über den RFC guckt und praktisch nochmal kommentiert, was sie gut finden, was sie schlecht finden, um letzte Anpassungen vorzunehmen.
Der RFC hat zum Ziel, die Policies, die es schon gibt, zu verfeinern und Namesquatting, was wir gerade schon kurz besprochen hatten, zu erschweren.
Soviel zu den News aus der Rust-Welt für September und im Oktober kommt dann noch die Eurorust 2023 in Brüssel. Wäre schön, wenn ihr da alle da seid. Und bis dann!
[9:08] Ja, vielen Dank, Matthias. Und ich bin frisch zurück von der zweiten IT for Science Konferenz, die hat in Berlin stattgefunden. Und da treffen sich immer von den Helmholtz-Gesellschaften und von den Max-Planck-Gesellschaften, die, ja, oder viele ITler und sprechen über alles, was uns so beschäftigt in der IT.
Und am meisten beeindruckt hat tatsächlich eine Keynote von Frank Kaliček, den ihr wahrscheinlich alle kennt als CEO oder als Geschäftsführer von Nextcloud.
Und das Ganze hat mir so ein bisschen Hoffnung gemacht, dass sozusagen der Kampf noch nicht verloren ist, dass wir tatsächlich Open Source auch in der Forschungsgesellschaft weiter voranbringen können.
Und dann da ist natürlich immer das Thema ja Open Source.
Ja gut, kann ich kostenlos einsetzen, dass da aber viel mehr dranhängt und dass man natürlich auch mitentwickeln kann. Das fällt ganz, ganz oft hinten runter.
[10:13] Ja, vielen Dank Frank, dass du da warst. Ich glaube, das hat in einigen Köpfen doch nochmal ja zum Nachdenken angeregt und es wurde definitiv gewürdigt, dass Frank da für digitale Souveränität eingetreten ist Und ja, und auch noch mal die Neuerungen tatsächlich von Nextcloud vorgestellt hat.
Jetzt in Nextcloud Hub 6, doch ziemlich beeindruckt haben diese ganzen AI-Themen, die da aufkamen.
Und auch der Nextcloud Assistant, so sehr, dass das schon die Überlegung hat, wann kann man das dann tatsächlich in unseren Nextclouds auch betreiben.
[10:50] Also der Nextcloud Assistant tatsächlich, um dann, ja, schnell mal, wenn man ein E-Mail-Thread hat, sich eine Zusammenfassung geben zu lassen oder Übersetzungen zu machen. Und das eben nicht mit irgendeinem Cloud-Service, was weiß ich, OpenAI, irgendwas, sondern alles selbst gehostet, alles auf der Maschine oder auf den eigenen Servern. Und es verlässt halt eben nicht die Organisation. Also diese Sachen haben tatsächlich Eindruck gemacht. Ich hoffe, Das wirkt noch eine Weile nach und wird, wie gesagt, in die einzelnen Forschungsgesellschaften nochmal reingetragen.
Und ja, sozusagen die Hoffnung stirbt zuletzt, dass wir doch noch ein bisschen mehr hinkriegen, dass da Sachen für Open Source gemacht werden.
Denn ja, man fühlt sich an einigen Stellen tatsächlich so wie so ein kleiner Krieger, der da immer, immer wieder den Finger in die Wunde legen muss.
Wir können noch das machen, wir können noch jenes machen und nicht nur Geld an Microsoft und keine Ahnung VMware oder sowas überweisen, weil das sind die großen Player und da muss muss man ja bezahlen, aber Open Source fällt dann immer wieder hinten runter.
[12:07] Gut. Ein anderes Thema auf dieser IT for Science war tatsächlich auch GUIX.
Kannte ich bisher noch gar nicht, aber wir hatten ja letztes Mal schon das Thema, also in unserer letzten Sendung das Thema Nix und GUIX ist tatsächlich sozusagen von Nix mal gefolgt worden.
Also viele Sachen, die auf Nix zutreffen, treffen dann auch auf GUIX zu.
Fand ich sehr interessant kannte ich bisher gar nicht aber wenn ihr lust habt oder sagt was ich nix ist aus dem und dem grund nix für mich vielleicht.
Ja ist eher das was für euch wird tatsächlich unter. Gnu org gehostet läuft dann auch mit nem linux libre kerne wenn man das so machen will.
[12:58] Aber ansonsten ist diese Paketverwaltungssoftware Gnu, GUIX so ähnlich wie bei Nix.
Und wir bleiben bei Nix, bei Nixos und diesmal geht es um Geld verdienen mit Nixos, denn, ja auch in dieser kleinen Nische sozusagen gibt es Leute, die haben sich da zusammengefunden und sagen, okay, wir wollen Consulting da anbieten und mit einem Vertreter habe ich gesprochen. Außerdem sind wir nochmal kurz ins Thema VPN-Mash abgedriftet, aber ich denke auch, das ist ein spannendes Thema und ja, wir gucken mal, wie man mit nix Geld verdienen kann. Sorry, dieses Wortspiel musste sein. Ja, ich bin jetzt hier auf dem Chaos Communication Camp 2023. Bei mir ist Lassolos und du verdienst Geld mit Nixos.
Jo, ich mach NixOS-Consulting quasi, den ganzen Tag. Open-Source alles.
[14:02] Das ist interessant. Vielleicht kannst du noch ein bisschen was erzählen, wie funktioniert Nix? Also es ist eine Linux-Distribution?
NixOS ist eine Linux-Distribution, genau. Es gibt noch Nix, das ist ein Paketmanager, der ist quasi jünger als NixOS. Also wir haben vorgestern herausgefunden, NixOS ist quasi 20 Jahre alt, 14 Tage älter als Nix.
[14:22] Aber Nix ist quasi so ein funktionaler Paketmanager, das heißt du hast da so eine deklarative Sprache, wo du deine Packages beschreiben kannst und die landen in so einem Nix-Store, das ist quasi so ein Input-Hashed-Storage, also es ist quasi so ein Hash davor stehen und dann kannst du quasi mehrere Versionen von der gleichen Library parallel installiert haben, weil du keine globalen Pfade hast, wie Bin oder Lib oder sowas.
Okay, aber es ist eine Linux-Distribution, es ist Open Source und da steht jetzt nicht ein Unternehmen dahinter oder wie funktioniert das?
Genau, es ist quasi Open Source, es gibt eine Foundation, was quasi kein Unternehmen ist, es ist halt eine Foundation, ich weiß nicht genau, die kommt aus Utrecht.
Wir haben einen Benevolent Dictator, das ist quasi der LQ-Dolstra und es gibt viele Firmen, die verdienen ihr Geld damit, also die sind teilweise Member von dem Board, was wir haben in der Foundation.
Ja, aber es gibt quasi niemanden, dem das gehört. Es ist quasi alles MIT-lizenziert auf GitHub.
Genau, also es ist nicht so wie bei Red Hat oder Canonical, wo halt eine Firma hinter einer Linux-Distribution steht, sondern ihr seid eher so dann wie Debian oder sowas organisiert.
Genau, ja, wir sind quasi so ein loser anarchistischer Haufen, der irgendwie Dinge baut.
[15:34] Okay, aber trotzdem scheint es da einen Markt zu geben, dass man sich damit, weiß nicht, selbstständig machen kann?
Oder wie funktioniert das bei dir?
Genau, ich habe mich selbstständig gemacht erst im Oktober. Der Mick kam an und meinte, er macht das jetzt schon so ein halbes Jahr, nachdem er seine Doktorarbeit gemacht hat.
[15:51] Und dann habe ich ihn gefragt, ob ich da mitmachen kann und dann haben wir das quasi zusammen bei NumTide angefangen.
Und wie kann ich mir das vorstellen? Kommen da einfach Kunden auf euch zu? Geht ihr auf Akquise? Geht ihr zu Kunden, verkauft nix? Oder was macht ihr?
Ja, also meistens kommen die über GitHub, über irgendwelche, also zum Beispiel über .files, die hatten wir letztens erst, die wir auf GitHub hatten, dass dann Leute angekommen sind und da quasi nach Beratung für NextOS-Dinge gefragt haben.
Ansonsten laufen wir auch manchmal auf Leute zu und sagen, dass wir das machen würden.
Ja, genau. Also es gibt quasi so und so. Ist quasi gemischt.
[16:30] Aber dafür muss es ja dann tatsächlich schon, also es muss ja genug Leute geben, die NixOS einsetzen.
Genau, ja. Wir haben glaube ich keine Statistiken, wir wissen nicht, wie viele Leute NixOS einsetzen, aber es scheinen sehr viele zu sein.
Und das passiert halt auch in Firmen. Also ich meine, als Privatperson würde ich mir jetzt eher mein Zeug irgendwie selber zusammensuchen und wahrscheinlich jetzt nicht einen Konsulten engagieren.
Genau, ja. Es war auch mal schon disposable income, wenn man quasi für seine private Repos-Consultants engagiert.
Aber es sind meistens irgendwelche Firmen oder Leute, die so ein Startup machen und Infrastruktur haben.
Und die benutzen NixOS dann auch auf dem Server oder? Genau, hauptsächlich auf Servern quasi, um da ihre Infrastruktur zu verwalten.
Manchmal benutzen die es auch für Dev-Environments quasi, für Abteilungen, dass die quasi ganzen Programmierer das gleiche Environment benutzen.
Aber es ist dann quasi nicht direkt NixOS oder Nix, aber es ist ja auch die gleiche Schiene.
Was bedeutet das, wenn ich nur Nix verfälle? Oder nehme ich irgendeine Linux-Distribution und nehme Nix als Paketmanager dazu?
Genau, ja. Du kannst dann quasi Nix sowie Virtualenv benutzen für Python-Pakete, aber halt für alle Pakete.
[17:33] Okay, gut. Also scheint Firmen zu geben, die NixOS in ihrer Infrastruktur irgendwo einsetzen.
Dann haben sie immer Probleme und weil sie eben nicht zu Canonical und Red Hat gehen können, finden sie dann irgendwie euch.
Ja, genau. Also die finden uns quasi, weil sie nichts davor eingesetzt haben und deswegen suchen sie dann Leute, die das können.
Und da ist auch in Deutschland irgendwie genug Bedarf da. Also ich könnte mir jetzt vorstellen, okay, im englischen Sprachbereich wird vielleicht nichts viel mehr eingesetzt, dass da sich jetzt Firmen ringsherum entwickelt haben.
Ich weiß nicht, gibt es in Deutschland mehrere Firmen wie eure jetzt, die das macht?
Oder ist das noch ein Alleinstellungsmerkmal?
Also so Consulting meinst du? Ja, es gibt noch Helsinki Systems aus Stuttgart.
Das sind noch ein paar gute Freunde von mir. Dann gibt es noch, es gab Mayflower, aber ich glaube die machen das jetzt nicht mehr.
Das Nix-Consulting und...
[18:25] Vielleicht noch ein oder zwei, die mir grad nicht einfallen.
Wie kann ich mir das vorstellen? Was macht ihr da? Mit was für Problemen kommt so ein typischer Nix-Nutzer auf euch zu?
Und wo helft ihr da?
Ja, also es gibt zum Beispiel die Sachen ... Häufig Sachen für nix einfach paketieren.
Die Leute haben irgendeine komische obskure C++-Toolchain, die irgendwie mit Makefiles gebaut ist und Dinge in bin oder slash lib sucht.
Dann muss man die patchen, sodass die mit nix funktioniert.
Oder Leute haben Infrastruktur, die sie verwaltet haben wollen und das automatisiert haben wollen.
Häufiges Problem ist auch Secret-Management.
Leute haben geheime Dinge auf ihren Servern.
In NextOS landet es immer in einer globalen Readable-Store.
Da muss man auch immer eine Custom-Solution bauen.
Kann auch sein, dass ich das auf GitHub tun will, und dann sollte ich vielleicht nicht meine Secrets rumliegen haben.
Genau, ja. Am besten nicht deine Secrets auf GitHub packen.
Das ist ein allgemein guter Tipp. Ja, das stimmt, genau.
Es gibt auch häufiger Leute, die da aus Versehen die Secrets reinpacken.
... ohne nix, so ist das ein Problem.
Und das stimmt. Gut, also du hast dich vor kurzem ... ... damit selbstständig gemacht, ...
... also ihr seid jetzt eine Firma von zwei Leuten.
Ne, wir sind beide Freiberufler. Wir haben dann quasi, ... ... also wir haben, ...
... Namtide ist dann quasi so eine, ... ... wir nennen es Zahlungs-Buffer quasi.
Die Kunden bezahlen Namtide ... ... und Namtide bezahlt dann uns weiter.
Was ist Namtide? Namtide ist so eine Nix-Consulting-Firma ...
... aus der Schweiz von Jonas, ... ... also SimbaTM.
Der ist quasi, ... ... der sitzt auch im Foundation Board ...
... als wenn ich das beobachte.
[19:54] Okay. Genau und ja der macht quasi auch ganz viel ... ... Nix-Sachen, hat mich dann quasi irgendwann gefragt.
Ich habe ihn irgendwann gefragt und dann hat Jonas ... ... mich gefragt und dann haben wir quasi da rüber ...
... ein paar Kunden. Über die habe ich jetzt quasi ... ... noch einen Kunden, dann haben wir einen Kunden ...
... direkt, Mick und ich, für den wir arbeiten ... ... und ich habe noch separaten deutschen Kunden.
[20:13] Okay, also ihr macht so sozusagen die deutsche Ecke, ... ... bildet ihr jetzt ab oder kann es auch mal sein, ...
... dass, was weiß ich, wenn jetzt jemand aus Polen ... ... oder ...
Ja, eigentlich überall. Also ich habe jetzt einen Kunden aus Deutschland, glaube ich nur.
Das ist quasi der kleinste, den ich habe, von den Stunden, die er gebucht hat.
Dann habe ich einen aus UK und einen aus Thailand.
[20:34] Okay. Und die bezahlen diese Schweizer Firma dann und die gibt dir dann das Geld weiter, damit du diesen ganzen Zahlungsschüssel nicht machen musst.
Ne, nur der UK-Kunde geht quasi über die Schweiz. Alle anderen bezahlen mich direkt.
Okay. Und dann bist du zum Finanzamt gegangen oder zum Gewerbeamt und hast gesagt, ich will das machen irgendwie und zahl jetzt brav deine Steuern und das funktioniert irgendwie und davon kann man leben.
Genau, ich muss ja sehen. Meine Steuererklärung habe ich jetzt abgeschickt. Finanzamt hat quasi geantwortet vorgestern. Mal schauen, was da drin steht. Haben sie nicht reingeschaut.
Ich habe gerade Probleme mit dem Finanzamt. Das macht nicht so richtig Spaß. Sie wollen irgendwie nicht das, was ich so mir ausgedacht habe. Das ist ja immer so ein bisschen schwierig, mit denen manchmal zu arbeiten.
Ja, bis jetzt war sie noch entspannt, weil ich muss keine Umsatzsteuer, weil die Kunden sind, außer für den deutschen Kunden muss ich Umsatzsteuer abführen, die anderen sind ja quasi im Ausland.
Da ist dann quasi, muss ich die Umsatzsteuer nicht ausschreiben, dann ist ein bisschen weniger Aufwand in der Umsatzsteuererklärung.
Und hast du da jetzt irgendwelche Tools, wie du deine Einnahmen irgendwie verbuchst oder was weiß ich, hast du dir einfach eine Tabellenkalkulation genommen, schreibst du das alles rein oder hast du dir irgendwas Fancy-es gebaut dafür?
Ah ja, wir haben quasi, ich hab quasi Setup von Micky kopiert, der quasi da schon was gebaut hatte.
[21:49] Da haben wir eigentlich, wir haben quasi Sevdisk, das ist so eine kommerzielle Anwendung, die irgendwie voll viel Geld kostet.
Die benutzen wir quasi als Basis und dann haben wir Wise Business als irgendwie Account und dann machen wir da irgendwie API Gateway die ganze Zeit mit JSCripten und Python-Skripten.
Wir haben so ein Repo auf GitHub in der num.org, nennt sich Harvest Invoice Calculator.
Als Time-Tracking machen wir Harvest, da kann man einfach die Stundenkosten angeben und dann wird einfach Zeit getrackt und daraus wird dann automatisch am Ende des Monats, also automatisch mit Shell-Skript am Ende des Monats eine Rechnung erstellt.
Okay, und dann kriegen die ein PDF geschickt und dann bezahlen sie brav.
Genau, ja. Kriegen ein PDF, da steht dann eine IBAN drauf und dann schicken die das Geld ein.
[22:29] Und Mahnungssystem ist da auch dabei oder müsste man sich um sowas selber kümmern?
Also ich meine, man hofft ja, dass die Leute das quasi selbst bezahlen, aber wenn es ein kleiner Kunde ist, kann es auch mal sein, dass das irgendwie eine Weile aussteht.
Ja, genau. Also Mahnung gibt es auch da drin. Genau, ist alles in diesem Safetest drin. Das macht ein paar Sachen für dich, ist halt so ein Accounting-System.
Ich bin damit nicht so super happy, weil es fehlen viele Funktionen, für die Steuer hilft sie nicht so sehr.
Da habe ich dann nochmal in mir, Dingsbums, Visobool geklickt.
Also eigentlich überall Software eingekauft, aber es sind alles eher Geschäftsausgaben, deswegen ist das so.
Also mein Traum wäre es, alles Open-Source zu haben, aber wir wollten erst mal was fertig haben, weil sonst bauen wir erst mal Accounting-Software.
Es gibt, Kraft heißt es, glaube ich, kommt so aus der KDE-Community oder zumindest ein KDE-Entwickler ... hat sich mal hingesetzt und hat es, glaube ich, für sein Business gebaut.
Und da hast du auch so Invoice-Management. Vielleicht ist das ja mal was, was wir euch angucken können.
Ja, klingt gut. Also ich schaue mir mal Sachen an. Erstmal will ich schauen, dass die Steuer fertig ist ...
... und wenn wir es quasi zweimal hinbekommen haben, ... ... dann kann man mit Experimentieren anfangen.
Ja genau, also wäre natürlich schön, ... ... wenn das alles Open Source funktioniert.
Wir haben uns ein bisschen was Eigenes gebaut. Also ich bin ja auch noch nebenbei selbstständig.
Und da werden die Rechnungen einfach mit Latex generiert ...
... und dann auch die PDFs automatisch verschickt. ... aber wir haben kein Mahnmanagement, ...
... das muss man halt per Hand alles machen, ... ... das ist natürlich ein bisschen einfacher, ...
... wenn man das einkauft sozusagen. Ja, genau.
[23:58] Und bist du soweit glücklich mit dem Schritt? Bisher ja, also scheint eigentlich ganz cool zu sein.
Ich muss jetzt nicht mehr quasi, ... ... also Selbstständigkeit ist ein bisschen cooler, ...
... weil man einfach die Sachen machen kann ... ... und man kann quasi zu Kunden sagen, ...
... dass man keinen Bock auf das hat.
Geht so in so einer Firma, ... ... wenn so der Projektmanager kommt ...
... und sagt, wir bauen das jetzt, ... ist schlecht Nein zu sagen.
Das heißt, vorher warst du ganz normal angestellt? Ja, genau, ich war angestellt.
Hab dann so andere Nix-Dinge ein bisschen gemacht. Ich war da vorher bei der deutschen Cyber-Sicherheitsorganisation, hab da so Quatsch gemacht mit Web-Entwicklung und DevOps.
War ganz okay, aber war halt nichts Spannendes technologisch.
War halt quasi alles abgehangene Software.
Und ich hab immer nebenbei nix gemacht. Und dann hab ich dann irgendwann den Job gewechselt.
Hab so bei so einem Kumpel angefangen, nicht viel gearbeitet, ... tatsächlich Open-Source Sachen gemacht.
Das habe ich so 2 Jahre gemacht und dann habe ich quasi ...
... die Selbstständigkeit gemacht. Okay, und das ist ein Schritt, mit dem du zumindest ...
... bisher glücklich bist? Ja, also bisher fühlt es sich ganz gut an.
Okay. Und bleibst du jetzt bei Nix-Sachen oder sagst du, ...
... wenn da irgendwas für eine andere ... ... Linies-Distribution reinkommt oder ...
... wenn ein Kunde verschiedene ...
... Linies-Distributionen einsetzt und da ... ... irgendwelche Ops-Sachen hat oder so, würdest du das auch machen?
Oder sagst du, ah nee, kein Bock, ich mache nur nix? Ja, eigentlich mache ich nur nix.
Also ich kann den Leuten schon sagen, dass ich das machen will, aber eigentlich habe ich ja genug Kunden, mit denen ich nichts machen kann.
Das macht schon mehr Spaß.
[25:19] Deswegen, keine Ahnung, würde ich halt die einfach woanders hinschicken.
Weil ich mache das ja nicht, ich kann das ja auch nicht so super.
Also ich kann das schon, aber wahrscheinlich können das andere Leute besser, die das quasi als ihr Fokusthema machen.
Die Hauptaufgabe ist dann wirklich, NixOS-Pakete zu paketieren und die dann auch wieder Open Source freizustellen.
Ich kenne jetzt Nix nicht so gut, aber ich denke mal, da gibt es so ein zentrales Repository, wo man die Sachen reintun kann oder sagt der Kunde, nee, ich brauche das nur für meine Organisation.
Also die Hauptaufgabe, ich mache nicht so viel Packaging tatsächlich, ich mache eigentlich eher Module bauen, also so quasi Services, dass du quasi in NixOS in der Konfiguration Sachen konfigurieren kannst, also sowas wie, was ich sehr gerne mache, ist Mesh VPNs oder sowas.
Mesh VPNs? Ja. Was ist das? Das sind quasi VPNs ohne einen zentralen Knotenpunkt, sowas wie Tink oder Wireguard.
[26:09] Die benutze ich dann quasi und baue dann quasi Services, dass du deine NixOS-Systeme quasi sich gegenseitig verbinden kannst.
Das heißt, ich installiere einfach ein neues Nix-System und dann ist es automatisch in diesem VPN-Mesh?
Das ist genau das Projekt, was wir gerade für den Kunden aus Thailand bauen.
Das ist so ein automatischer, so quasi eine Linux-Distribution basierend auf einem Tool, um quasi sein eigenes Mesh-VPN zu betreiben einfach.
Auch mit Nix? Auch mit NixOS. Also wir nehmen NixOS als Basis und benutzen da jetzt quasi gerade Zero Tier, als Mesh-VPN, das ist auch ein cooles Mesh-VPN.
Man kann diesen Controller auch selber hosten und das ist quasi nur so eine File in so einem Directory, die man dann backupen muss und dann kann man die Gegend kopieren auf die anderen Nodes, dann kann man Failover machen und das kann man dann, ja genau, also wir haben dann so ein Mesh-VPN, wir haben so eine NixOS-Konfigurationssammlung und ein paar CLI-Tools, um das quasi einfach zu machen für Leute, damit die einfach ihr Computer in so ein Mesh-VPN reinpacken können können und dann einfach ihren Clan an Computern verwalten können.
[27:12] Jetzt nochmal, ok, also ich habe keinen zentralen Server, aber irgendwie muss ja, wenn ich so ein neues System aufsetze oder sagt, das soll dieses Mesh VPN, muss der ja wissen, wer der nächste Knoten oder sowas ist. Wie funktioniert das?
Da gibt es verschiedene Sachen. Bei ZeroT ist das so, es gibt eine Network ID, die haben globale Server, die quasi in den Client Hardgecodet sind. Das sind die Planet-Size bei denen und Dann bis dahin.
[27:35] Werden die quasi benutzt, um die anderen Clients mit der gleichen Network-ID zu finden.
Eigentlich um den Controller zu finden.
Also man geht zu so einem zentralen Controller hin und der gibt dir die Netzwerkinformation.
Der sagt dir quasi, wo die anderen Peers sind.
Okay, aber den Controller, den habe ich auch unter der Kontrolle.
Den kann man selber hosten, ja. Das ist quasi seit ein paar Jahren jetzt möglich.
Davor war da so ein bisschen... Das ist BSL, das ist quasi nicht komplett Open Source, also das ist Open Source, aber es ist quasi...
Also Business Source License. Business Source License, genau.
Es ist nicht zertifiziert von einer Open Source Organisation sozusagen, die sagen, okay, das ist richtig Open Source, oder das ist so eine halbe graue Stufe.
Ich meine, da wechseln einige Projekte hin. Ich glaube, einige, die da hingewechselt sind, sind auch Elasticsearch oder, nee, Elasticsearch nicht, aber CouchDB und solche.
Also Hatschikop gerade, Terraform und sowas, haben die gerade erst die Lizenz gewechselt, da gab es einen riesen großen Wirbel drumrum, weil sehr viele Leute quasi damit Dinge gemacht haben, jetzt ein bisschen unsicher waren, ob die Leute das weitermachen können, jetzt auch irgendwie, aber ja, genau, also wir benutzen quasi Zero Tier auch als Basis, weil das quasi das VPN war, was die meisten Feature Flags hatte, es gibt noch Yggdrasil oder sowas, aber das ist ein bisschen schwieriger, weil die machen keinen TCP oder, doch die machen nur TCP, das war das, kein UDP.
[28:54] Und die machen auch keine Peer Discovery, also das sind eigentlich die Dinge, die man haben will, dass die Peers automatisch quasi discovered werden, dass er neue Routen sich generiert.
Wenn also eine Note auch ausfällt, dass er dann den nächsten findet.
Genau, ja. Das man quasi so, ich nenne es ja echtes Cloud Computing, weil man quasi, ja, die Computer bilden quasi so eine Art Cloud und dann sind die einfach überall die Daten, wenn man die richtig, kannst dann quasi auch noch so Distributed Storage Layer verwenden, ... sowas wie IPFS oder Ceph und dann kannst du quasi deine Daten ...
[29:25] ... über so eine Horde von Computern verteilen. Und das geht über jedes Netzwerk, ...
... also es muss nicht mal ein privates Netzwerk sein, ... ... sondern es kann das Internet sein.
Ja, wir machen ja unser Overlay-VPN, genau, ... ... deswegen geht das quasi, kannst du im Internet einfach ...
... laufen lassen und es ist quasi wie, ... ... wenn du ein eigenes Laden zu Hause hast.
Und wenn da zwischendurch eine Verbindung kaputt geht, ... ... dann sucht es sich irgendwie was Neues.
Genau, ja, das ist dann Self-Healing sozusagen, ... Was für Feature-Flags braucht man noch, wenn du jetzt gesagt hast, die Zero-Tier ist das Beste?
Also zumindest das, was am einfachsten erstmal zu benutzen war.
Also du hast einen Controller, du kannst quasi beliebig viele Hosts da reinpacken mit dem Controller.
Die funktionieren quasi da in Environments, wo UDP geblockt ist, weil er quasi TCP-Fallback kann, meine ich.
Der findet Peers quasi im lokalen Netzwerk, wenn wir quasi unsere Laptops im gleichen Laden haben, dann haben die auch einen kleinen Ping von ein paar Millisekunden nur.
Und das sind eigentlich so die Features, die die ganzen anderen nicht haben.
[30:27] Und wenn ich Wireguard verwenden will, kann ich das eh nicht machen?
Oder hat Wireguard jetzt irgendwas, wo du sagst, nee, das kann ich damit nicht abbilden?
Wireguard hat das Problem, dass es quasi ...
Kein Meshing macht. Du musst das verlangt machen mit einem externen Daemon.
Da gibt's verschiedene Implementierungen, so was wie Netbird, Netbuilder, glaub ich, oder ...
Äh, Tailskill. Genau.
Die könnten wir ... Wahrscheinlich wollen wir Airdskill benutzen.
ZeroTier in der Evolution schon irgendwo eingesetzt hat, dann haben wir auch das benutzt.
Weil WireGuard ist auch TCP-Vorbecken größeres Problem. Aber es kann auch sein, dass HeadScale das kann.
Und TailScale. Okay, also mal den Plan sich das mal anzugucken.
Und wenn ein Hörer da draußen sagt, nee, das mit der BSL-Lizenz ist mir irgendwie zu blöd, will ich lieber nicht einsetzen, ich will was richtiges einsetzen, was irgendwie alles Kernel-mäßig schon integriert ist, dann kann ich auch versuchen das mit WireGuard und den Plugins dazu zu machen, die du gerade gesagt hast.
Genau, ja. Dann wird man andere Probleme haben mit anderer Software, aber so ist das halt.
Genau.
[31:32] Und Tink hast du noch kurz erwähnt, das sollte man nicht mehr einsetzen oder kann ich das immer noch betreiben, weil das macht ja auch so ähnliche Sachen.
Ja, Tink macht so ähnliche Sachen. Das benutzen wir tatsächlich für unser Krebs-VPN noch.
Ja, es ist halt ein bisschen abgegammelte Software. Also es passiert nicht mehr so viel bei Tink.
Es gibt ein paar Bugs. Manchmal verliert er die Connection, manchmal haben Clients einfach Schluck auf und man müsste die immer debuggen und dann weiß man nicht, warum es kaputt geht.
Ist ein bisschen anstrengend. Also upstream scheint ein bisschen eingeschlafen zu sein.
Es gibt zum Beispiel noch die Tink Pre Version, die irgendwie seit 5 Jahren immer noch nicht released ist.
Also sie ist quasi immer noch nicht Stab geworden.
Deswegen, ja. Also ich würde gerne Tink weiter benutzen. Tink besser machen wäre auch eine gute Sache, aber ich kann kein C.
Okay, also Hörer da draußen, wenn ihr C könnt und ein cooles Smash VPN weiterentwickeln wollt, dann guckt doch mal, ob ihr nicht euch an Tink versucht.
Okay, entwickelt du sonst noch irgendwelche Sachen oder ist es wirklich mehr so Service-Sachen, Integrieren, also mehr so Ops-Geschichten?
Ja, eigentlich hauptsächlich Ops. Ich mache ganz viel Ops-Geschichten. Ich mache noch Disco, das ist noch so ein Disc-Partizionierungstool, was ich viel mache, das ist ein NixOS.
Also im NixOS-Medugisystem kann man dann sein Disc-Layout beschreiben und dann fallen da Skripte raus, um deine Festplatte zu wipen, zu formatieren und zu mounten.
Und noch NixOS-Config, um die quasi davon zu booten.
[32:59] Und wenn du vorhin gesagt hast, du machst ein paar Sachen mit Mick zusammen, den wir ja auch schon im Interview hatten, Ist es dann manchmal so, dass ihr euch irgendwie bei einem Kunden sagt, der eine entwickelt mehr, der andere macht mehr Ops oder wie teilt ihr euch da auf oder ist es eher, der eine ist ein Backup für den anderen.
Also ich meine, das kann ja auch mal sein, du wirst ja auch mal Urlaub machen irgendwie, bist dann vielleicht mal eine Woche nicht erreichbar oder so und dann crasht es beim Kunden, dann will er ja auch irgendwie jemand anderes erreichen.
Ist das eher so eine Partnerschaft oder noch gar nicht drüber nachgedacht bisher?
Eigentlich noch gar nicht drüber nachgedacht. Also lowlevelige Sachen macht der Mick lieber.
Solche Sachen wie, keine Ahnung, Kernel-Dinge, C-Dinge, Rust-Dinge.
Und ich mach eher Shell-Skripte, Nix-Dinge, sowas. So, ähm, Mixbox, äh, eigentlich alles. Der ist immer so...
Keine Ahnung, schläft nie, arbeitet immer. Aber ja, genau, mit Kunden ist es ...
... das ist eigentlich immer sehr entspannt, weil die eigentlich ...
... machen wir ja nur Consulting, das heißt wir müssen ... ... jetzt nicht die Operations für die machen, sondern wir sagen ...
... ja nur, wie sie die Operations machen sollen. Okay, weil es dann doch mehr Consulting ist, als wirklich ...
... Hardcore-Entwicklung ... ... beim Unternehmen vor Ort.
Ja, also für den ... ... für den einen Kunden aus Thailand, da brauchen wir ...
... eigentlich nur dieses Tool quasi aktuell. Es ist quasi nur Entwicklung.
Es ist überhaupt keine Operations.
Aber es ist ein Operations-Tool, was wir entwickeln. Das heißt, wir wollen irgendwann die eigene Infra auch mit diesem Tool maintainen, ...
... um quasi selber zu dogfooden.
[34:24] Okay, und die Kunden, die du hast, meinst du, die kommen damit klar, ...
... wenn du jetzt mal eine Woche oder zwei Wochen im Urlaub bist, ...
... da passiert jetzt noch nichts, oder wenn, ...
... dann müsstest du halt gucken, wie du das machst. Genau, ja, bisher waren die eigentlich alle entspannt.
Genau, also diese Woche, wir haben so einen anderen Kunden, ...
... da haben wir immer einen Weekly Call, Mik und ich, ...
... da sitzen wir dann immer dienstags rum ... ... und das ist auch eigentlich alles, was der von uns gerade gebucht hat.
Und dann machen wir da immer Operations-Geschichten, aber diese Woche ist ausgefallen, weil wir auf dem Camp sind und ansonsten war auch nicht schlimm.
Und ansonsten kann man auch einen Tag meistens irgendwo runterkriegen.
Und wenn jetzt jemand sagt, er will sich auch selbstständig machen, egal ob das jetzt im NixOS-Bereich ist oder mit Linux allgemein, was würdest du denen raten?
Würdest du sagen, ja macht mal oder würdest du auch sagen, meldet euch bei dir oder so, weil eh genug Arbeit da ist und wenn jemand coole Sachen mit nix baut, könnte er vielleicht noch Hilfe brauchen oder ist eher, dass du sagst, nee, wir sind eigentlich cool so wie es ist?
Gerade sind wir quasi in diesem Zustand, wo es quasi...
Wir haben quasi erst zwei neue Leute reingeholt für dieses Projekt.
Dass die dann so ein bisschen Front entbauen. Also ist quasi gerade alles voll.
[35:36] Aber kann schon, kann mal sein. Ja, kann mal sein, genau.
Also wenn Leute unbedingt Bock haben, können sie sich ja mal melden, können mal drüber schnacken.
Aber ich bin kein, weiß nicht, ob das eine gute Entscheidung ist.
Das sieht man ja im Nachhinein.
Okay, gut. Aber wenn jetzt jemand sich wirklich selbstständig machen will, würdest du sagen, nö, du bist zufrieden, das kann man gut machen.
Also Linux-Consulting ist irgendwie was, muss ich nicht zu einer großen Firma gehen und mich irgendwo anstellen lassen, sondern kriegt man auch selber irgendwie gut hin?
Ja, also bisher schon. Schauen wir mal, was kommt, wenn die Steuer zurückkommt.
Dann sehe ich ja, wie viel Schmerz das war.
Gut, wunderbar. Ja, vielen Dank. Lass uns mal erzählen, wie das funktioniert, wenn man sich mit Linux und speziell jetzt im Bereich NixOS selbstständig macht, wo so ein bisschen die Probleme sein können und wie man auch so ein Mesh mit VPN betreiben kann. Vielen Dank.
Ja, ich habe zu danken. Ich springe jetzt erstmal in den See, es ist zu heiß. heiß.
[36:33] Ja, das stimmt. Auf dem Camp hier ist ganz schön, also jetzt die letzten Tage war es ganz schön heiß. Aber umso besser, dass wir das doch noch hingekriegt haben. Dankeschön.
Ja, das war sie auch schon, unsere Radiotux-Ausgabe vom September 2023, die erst im Oktober rausgekommen ist. Sorry dafür. Und ja, ich bedanke mich bei unseren Interviewpartnern, Lasselus vor und natürlich bei Matthias, der uns mal erzählt hat, was in der Rust-Community so los war.
Und dann bleibt mir nur noch zu sagen, ich wünsche euch wie immer eine frohe Zeit, Zeit. Passt auf euch auf, habt Spaß und wir hören uns bald wieder. Bis dahin. Ciao, ciao.