My Free Software Activities in June 2018

Welcome to gambaru.de. Here is my monthly report that covers what I have been doing for Debian. If you’re interested in Java, Games and LTS topics, this might be interesting for you.

Debian Games

  • I advocated Phil Morrell to become Debian Maintainer with whom I have previously worked together on corsix-th. This month I sponsored his updates for scorched3d and the new play.it package, an installer for drm-free commercial games. Play.it is basically a collection of shell scripts that create a wrapper around games from gog.com or Steam and put them into a Debian package which is then seamlessly integrated into the user’s system.  Similar software are game-data-packager, playonlinux or lutris (not yet in Debian).
  • I packaged new upstream releases of blockattack, renpy, atomix and minetest, and also backported Minetest version 0.4.17.1 to Stretch later on.
  • I uploaded RC bug fixes from Peter de Wachter for torus-trooper, tumiki-fighters and val-and-rick and moved the packages to Git.
  • I tackled an RC bug (#897548) in yabause, a Saturn emulator.
  • I sponsored connectagram, cutemaze and tanglet updates for Innocent de Marchi.
  • Last but not least I refreshed the packaging of trophy and sauerbraten which had not seen any updates for the last couple of years.

Debian Java

  • I packaged a new upstream release of activemq and could later address #901366 thanks to a bug report by Chris Donoghue.
  • I also packaged upstream releases of bouncycastle, libpdfbox-java, libpdfbox2-java because of reported security vulnerabilities.
  • I investigated and fixed RC bugs in openjpa (#901045), osgi-foundation-ee (#893382) and ditaa (#897494, Java 10 related).
  • A snakeyaml update introduced a regression in apktool (#902666) which was only visible at runtime. Once known I could fix it.
  •   I worked on Netbeans again. It can be built from source now but there is still a runtime error (#891957) that prevents users from starting the application. The current plan is to package the latest release candidate of Netbeans 9 and move forward.

Debian LTS

This was my twenty-eight month as a paid contributor and I have been paid to work 23,75 hours on Debian LTS, a project started by Raphaël Hertzog. In that time I did the following:

  • From 18.06.2018 until 24.06.2018 I was in charge of our LTS frontdesk. I investigated and triaged CVE in jasperreports, 389-ds-base, asterisk, lava-server, libidn, php-horde-image, tomcat8, thunderbird, glusterfs, ansible, mercurial, php5, jquery, redis, redmine, libspring-java, php-horde-crypt, mupdf, binutils, jetty9 and libpdfbox-java.
  • DSA-4221-1. Issued a security update for libvncserver fixing 1 CVE.
  • DLA-1398-1. Issued a security update for php-horde-crypt fixing 2 CVE.
  • DLA-1399-1. Issued a security update for ruby-passenger fixing 2 CVE.
  • DLA-1411-1. Issued a security update for tiff fixing 5 CVE.
  • DLA-1410-1. Issued a security update for python-pysaml fixing 2 CVE.
  • DLA-1418-1. Issued a security update for bouncycastle fixing 7 CVE.

ELTS

Extended Long Term Support (ELTS) is a new project led by Freexian to further extend the lifetime of Debian releases. It is not an official Debian project but all Debian users benefit from it without cost. The current ELTS release is Debian 7 „Wheezy“. This was my first month and I have been paid to work 7 hours on ELTS.

  • ELA-1-1. Issued a security update for Git fixing 1 CVE.
  • ELA-8-1. Issued a security update for ruby-passenger fixing 1 CVE.
  • ELA-14-1. Backported the Linux 3.16 kernel from Jessie to Wheezy. This update also included backports of initramfs-tools and the linux-latest source package. The new kernel is available for amd64 and i386 architectures.

Misc

  • I prepared security updates for libvncserver (Stretch, DSA-4221-1) and Sid) and bouncycastle (Stretch, DSA-4233-1)

Thanks for reading and see you next time.

FreeBSD: Installation mit Bildern kurz erklärt

Seit mindestens drei Jahren benutze ich neben Debian nun auch FreeBSD, nachdem es schon eine ganze Weile auf meiner TODO-Liste mit Betriebssystemen abseits von Linux gestanden hatte. Hiermit starte ich eine kleine Serie von Artikeln zu FreeBSD. Den Anfang macht die Installation.

Wer gerade keinen Ersatzrechner parat hat, um ein neues Betriebssystem auszuprobieren, dem empfehle ich FreeBSD in einer virtuellen Maschine zu installieren. Hierzu eignet sich z.B. ausgezeichnet QEMU/KVM, was sich mit virt-manager bequem via graphischer Oberfläche administrieren lässt.

VirtManager

Man kann zwischen verschiedenen Installationsmedien wählen. Ich habe mich für FreeBSD 11 und  AMD64 als Architektur entschieden.  Das minimale Image heißt zur Zeit FreeBSD-11.1-RELEASE-amd64-bootonly.iso. Es beinhaltet alle notwendigen Dateien, setzt jedoch eine funktionierende Netzwerkverbindung voraus. In virt-manager muss man danach nur noch eine neue virtuelle Maschine erstellen und das lokale Installationsmedium (hier eine ISO-Datei) auswählen. Als Speicher genügen 1024 MB RAM vollkommen. Ich habe mich noch für zwei virtuelle CPUs und eine kleine 3 GB Festplatte entschieden, danach kann man auch schon loslegen.

Der gesamte Installationsvorgang ist ausführlich im offiziellen FreeBSD-Handbuch beschrieben mit einer Anleitung in Deutsch oder Englisch. An dieser Stelle möchte ich deswegen nur noch auf einige Besonderheiten von FreeBSD und aus meiner Sicht erwähnenswerte Einstellungen eingehen. Die Installation gestaltet sich ähnlich wie bei Debian, wobei man erwähnen sollte, dass es keine Übersetzungen gibt und man zumindest eine grobe Ahnung der englischen Sprache haben muss. Das deutsche FreeBSD-Handbuch hilft hier jedoch weiter.

FreeBSD-Installation_1

Im Willkommenmenü bestätigt man Option 1 mit der Enter-Taste und mit einem weiteren Enter den Installationsbeginn. Interessant wird es direkt danach, wenn man die Tastaturbelegung auswählen muss. Die meisten Leser werden sich hier für German ISO-8859-15 entscheiden, man kann diese aber auch später noch in /etc/rc.conf ändern.

Bei der Auswahl um zusätzliche Systemkomponenten zu installieren, empfehle ich nur ports auszuwählen. Jede aufgeführte Option kann später auch noch nachträglich installiert werden, jedoch bietet sich ports direkt an, weil man damit unkompliziert weitere Software direkt aus den Quellen bauen kann. Dazu in einem weiteren Beitrag später mehr.

Als nächstes geht es daran das Netzwerk zu konfigurieren. Wer seine IP automatisch via DHCP bezieht, braucht hier lediglich wieder mit Enter bestätigen und danach einen deutschen Spiegelserver auswählen, von welchem das Basissystem heruntergeladen wird. Womit wir auch schon bei der Partitionierung wären. FreeBSD ist bekannt für sein ZFS-Dateisystem, an dieser Stelle empfehle ich jedoch erst einmal die geführte Partitionierung mit dem UFS-Dateisystem zu verwenden. Letzteres lässt sich wiederum mit dem EXT-Dateisystem unter Linux vergleichen, ist für Anfänger einfacher einzurichten, braucht weniger Ressourcen und fühlt sich deswegen in virtuellen Maschinen ohne weitere Konfiguration auch performanter an. Nichtsdestotrotz ist ZFS wegen seinen zahlreichen Verwendungsmöglichkeiten und Merkmalen später auf jeden Fall einen Blick wert. Die weiteren Schritte danach einfach wieder mit Enter bestätigen. Ein Interessanter Aspekt bei der Partitionierung ist, welche Namenskonventionen FreeBSD im Gegensatz zu Linux für Partitionen verwendet. Diese werden auch als Slices bezeichnet und das Ganze liest sich dann so:

ada0s1aDie erste Partition (a) in der ersten Slice (s1) der ersten SATA-Festplatte (ada0).

Anschließend wird das Basissystem, der Kernel und die Portssammlung installiert. Man gibt das Rootpasswort an und wählt noch die Zeitzone aus, in welcher sich der Rechner befindet und schon befindet man sich bei diesem Schritt:

Hier lassen sich noch optionale Dienste/Programme installieren. SSH ist immer eine gute Wahl und unerlässlich, wenn man sich von einem entfernten Rechner verbinden will. Der Rest kann auch später noch installiert werden. Weiter gehts mit der Konfiguration einiger Sicherheitseinstellungen.

Im Prinzip ist es hier sinnvoll alles zu selektieren, wobei die ersten beiden Optionen eher bei Mehrbenutzersystemen mit mehreren lokalen Benutzern Sinn machen, jedoch bei einem Einzelrechner wie  in diesem Fall auch verwirren können. Insbesondere das Ausschalten des entfernten Loggens und das Abschalten von Sendmail sind in den allermeisten Fällen zu empfehlen. Den Sendmail-Dienst kann man bei Bedarf entweder durch eine vollwertige Lösung wie Postfix oder das extrem simple ssmtp ersetzen.

Nun ist der letzte Schritt auch schon fast erreicht. Ein normaler, unprivilegierter Benutzer muss noch angelegt werden, ein einfaches Frage- und Antwortspiel. Aufpassen sollte man aber bei: Invite user into other groups? Hier solltet ihr wheel eintragen. Eine Eigenheit von FreeBSD ist, dass kein normaler Benutzer zu Root werden kann, der nicht Mitglied dieser Gruppe ist.

Das war es auch schon. Anschließend Exit und Neustart wählen und sich in sein neues FreeBSD einloggen. Mehr zu den wichtigsten Befehlen, Konfigurationsdateien und Unterschieden zu Debian, bald hier in einem neuen Beitrag.

Lowendspirit: VPS-Server ab 3 Euro pro Jahr

Vor sechs Jahren habe ich über den Fünf-Cent-pro-Tag-Server geschrieben, ein damals schon ungemein günstiger Einstieg in die Welt der virtuellen Server. Neulich fand ich dann zu lowendspirit.com, wo man sich seinen Server ab drei Euro pro …Jahr mieten kann. Die Frage ist nun: Taugt das was und wozu braucht man das? Hier ein kurzer Bericht.

Lowendspirit ist ein Projekt mehrerer Anbieter, die vom Vermieten von Webspace und Servern leben und Standorte auf der ganzen Welt haben. Der Grundgedanke ist dabei, wie viel darf ein virtueller Server gerade noch kosten und welche Merkmale muss er haben, damit er einerseits wirtschaftlich betrieben und zum anderen für den Käufer noch nützlich sein kann. Die Antwort liefern die drei Hoster auf dieser Seite.

Das Angebot reicht von 64 MB RAM und 1 GB Festplatte in Hong Kong, über 128 MB RAM und 3 GB Festplatte (teilweise SSD) bis zu 256 MB RAM bei Mr. VM. Bei den eher „exotischeren“ Standorten Hong Kong, Johannesburg oder Tokyo ist der Traffic eher eingeschränkt (zwischen 50 GB und 150 GB pro Monat), ansonsten pendelt dieser so zwischen 300-500 GB pro Monat in Europa und Nordamerika, was in der Regel ausreichend ist um kleinere Projekte zu realisieren.

MiniVPS128 – UK

Zum Testen habe ich mir das Angebot von Inception Hosting angeschaut. Ausgesucht habe ich mir den Standort Enfield in London mit 128 MB RAM, 3 GB SSD und 350 GB Traffic inklusive pro Monat.

Die Bestellung war unkompliziert. Lediglich der Name des Servers und das Rootpasswort musste man angeben, welche später auch wieder geändert werden können. Bezahlt werden kann mit Paypal oder Kreditkarte, manchmal auch mit Kryptowährungen. Als Administrationswerkzeug kommt SolusVM zum Einsatz. Man muss ausdrücklich bestätigen, dass man weiß, was man hier kauft. Der vServer kommt primär mit IPv6-Unterstützung, eine NAT IPv4-Adresse ist mehr als Bonus zu sehen. Im Klartext: Der Server hat nur eine private IPv4-Adresse und ist ohne weitere Konfiguration nicht direkt mit dem alten Protokoll zu erreichen. Für die meisten Kunden aus Deutschland sollte das aber kein Problem sein, da IPv6 mittlerweile praktisch überall verfügbar ist oder sogar bei DSL-Lite-Anschlüssen vorausgesetzt wird. Kleine Helfer wie 6tunnel oder OpenVPN helfen außerdem Probleme mit IPv4/IPv6-Adressen zu umgehen. Wichtigste Anlaufstelle für Fragen ist das englischsprachige Forum. Direkten Support gibt es nicht und kann man bei dem Preis auch nicht wirklich erwarten.

Top oder Flop?

Mit der Begrüßungsmail erhält man die Zugangsdaten und eine Anleitung wie man sich per IPv4 verbinden kann. Im SolusVM-Konfigurator lässt sich aber auch direkt die IPv6-Adresse ablesen. Anschließend kann man sich wie gewohnt mit SSH verbinden. Der vServer nutzt als Virtualisierungslösung OpenVZ und Debian Wheezy war bei mir das voreingestellte Betriebssystem. Da Wheezy nun nicht mehr offiziell von Debian unterstützt wird, kann man sich entweder die neue, erweiterte Langzeitunterstützung anschaun (ELTS) oder man führt ganz einfach ein Upgrade auf Jessie durch, was problemlos bei mir geklappt hat.

Die Performance fühlt sich gut an, was ich bisher nicht immer von allen OpenVZ-Angeboten behaupten konnte. Der Server läuft seit mehr als einem Monat ununterbrochen und die Dienste, die ich für einen solchen Server sinnvoll halte (dazu gleich mehr) funktionieren problemlos. Festplattendurchsatz und Zugriffszeiten sind natürlich wie zu erwarten nicht berauschend. Hier mal eine Momentaufnahme mit ioping.

Inception Hosting – MiniVPS128 – UK

75 requests completed in 1.32 min, 17 iops, 71.0 KiB/s
min/avg/max/mdev = 184 us / 56.3 ms / 536.5 ms / 123.9 ms

Bei leistungsstärkeren Angeboten liegen die Zugriffszeiten normalerweise durchschnittlich alle im Mikrosekunden- anstatt Millisekundenbereich.

Empfohlene Dienste / Ideen

128 MB RAM klingt wenig, aber es gibt einige Dienste, für die das vollkommen ausreichend ist. Ein Lowendspirit-Server eignet sich ideal als SOCKS-Proxy. Da OpenSSH sowie schon vorinstalliert ist, kann man sich z.B. von seinem Rechner aus mit

ssh -D 9999 -C -q -N Lowendserver-IP-Adresse

verbinden. Im Firefox dann unter Einstellungen->Fortgeschritten->Netzwerk->Verbindung die Werte wie auf dem folgenden Bild setzen und schon surft man mit einer englischen IP-Adresse.

Auch Debians OpenVPN-Paket lässt sich problemlos betreiben. Und dann wäre da ja noch die Möglichkeit einen Webserver mit Lighttpd oder Nginx aufzusetzen. Zu Lighty hatte ich schon vor ein paar Jahren was geschrieben und zu Nginx braucht man heutzutage nicht mehr viel sagen.

Besser bleiben lassen

Intensive Datenbankanwendungen und alles was gerne Unmengen an RAM verschlingt (Hallo Java!). Mit etwas Optimierung lassen sich Forensoftware oder WordPress-Blogs installieren, hierzu würde ich aber eher zu einem 256 RAM Server greifen. Unmöglich ist es aber auch mit 128 RAM nicht, vielleicht liegt darin auch der Spaß und die Herausforderung.

Fazit

Lowendspirit.com ist ein Projekt, das keinen Gewinn macht, aber dennoch ein vernünftiges Angebot ist. Für 3,50 Euro pro Jahr geht man kein finanzielles Risiko ein. Die Server sind nicht für Anfänger geeignet. Wenn man jedoch bereit ist Neues dazuzulernen, gibt es kaum einen günstigeren Einstieg in die Welt der virtuellen Server. Die Server kommen ohne Backups, aber mit Werkzeugen wie rsync oder der Dirvish-Backuplösung sollte auch dieses Problem lösbar sein. Für alle, die schon immer mal einen Server in verschiedenen Ländern der Erde haben wollten, auf jeden Fall interessant. Übrigens, es gibt manchmal Bundleangebote: Fünf Server für 10 Euro pro Jahr. Dem eigenen Cluster steht nun nichts mehr im Wege. 😉

 

My Free Software Activities in May 2018

Welcome to gambaru.de. Here is my monthly report that covers what I have been doing for Debian. If you’re interested in Java, Games and LTS topics, this might be interesting for you.

Debian Games

Debian Java

Debian LTS

This was my twenty-seventh month as a paid contributor and I have been paid to work 24,25 hours on Debian LTS, a project started by Raphaël Hertzog. In that time I did the following:

  • From 21.05.2018 until 27.05.2018 I was in charge of our LTS frontdesk. I investigated and triaged CVE in glusterfs, tomcat7, zookeeper, imagemagick, strongswan, radare2, batik, mupdf and graphicsmagick.
  • I drafted a announcement for Wheezy’s EOL that was later released as DLA-1393-1 and as an official Debian news.
  • DLA-1384-1. I reviewed and uploaded xdg-utils for Abhijith PA.
  • DLA-1381-1. Issued a security update for imagemagick/Wheezy fixing 3 CVE.
  • DLA-1385-1. Issued a security update for batik/Wheezy fixing 1 CVE.
  • Prepared a backport of Tomcat 7.0.88 for Jessie which fixes all open CVE (5) in Jessie. From now on we intend to provide the latest upstream releases for a specific Tomcat branch. We hope this will improve the user experience. It also allows Debian users to get more help from Tomcat developers directly because there is no significant Debian specific delta anymore. The update is pending review by the security team.
  • Prepared a security update for graphicsmagick fixing 19 CVE. I also investigated CVE-2017-10794 and CVE-2017-17913 and came to the conclusion that the Jessie version is not affected. I merged and reviewed another update by László Böszörményi. At the moment the update is pending review by the security team. Together these updates will fix the most important issues in Graphicsmagick/Jessie.
  • DSA-4214-1. Prepared a security update for zookeeper fixing 1 CVE.
  • DSA-4215-1. Prepared a security update for batik/Jessie fixing 1 CVE.
  • Prepared a security update for memcached in Jessie and Stretch fixing 2 CVE. This update is also pending review by the security team.
  • Finished the security update for JRuby (Jessie and Stretch) fixing 5 respectively 7 CVE. However we discovered that JRuby fails to build from source in Jessie and a fix or workaround will most likely break reverse-dependencies. Thus we have decided to mark JRuby as end-of-life in Jessie also because the version is already eight years old.

Misc

  • I reviewed and sponsored xtrkcad for Jörg Frings-Fürst.

Thanks for reading and see you next time.

Dymo LabelWriter 450: Etiketten drucken unter Linux mit gLabels

Dymo-Etikettendrucker

Verkaufen auf ebay kann Spaß machen. Kann, denn nicht jeder verkauft gleich soviel, dass es sich lohnt in spezielle Software zu investieren, die verkaufte Artikel automatisch importiert, Adressen aufbereitet und Rechnungen per Email verschickt. Vielmehr darf man sich mit Ebays Verkaufsmanager auseinandersetzen, der es tatsächlich lediglich schafft Versandetiketten auf A4 zu drucken, die man anschließend dann auch noch mit der Schere ausschneiden darf. Im folgenden möchte ich für alle angehenden (Klein-)UnternehmerInnen eine Methode vorstellen, wie man ganz einfach diese Adressen mit dem Programm gLabels und einem Etikettendrucker verarbeiten kann.

Dymo LabelWriter 450

Zuerst sollte man sich einen Etikettendrucker kaufen. Er erspart einem jede Menge Arbeit und ist jeden Cent wert. Die Auswahl an Druckern ist groß, ich kann jedoch, das hier vorgestellte Modell empfehlen, da es perfekt unter Linux funktioniert, dank nativer Druckertreiber. Einfach installieren mit

apt install printer-driver-dymo

Ein weiterer Vorteil: Es ist relativ günstig. Das Modell findet man schon zwischen 50-60 Euro auf den bekannten Onlineplätzen. Auch der doppelte Preis wird derweilen aufgerufen, hier lohnt es sich einfach noch einmal intensiver nachzuforschen. Außerdem ist der Dymo klein genug, um auf jeden Schreibtisch Platz zu finden und sieht dazu auch noch formschön aus.

Der Dymo LabelWriter 450 ist ein Thermodrucker, das heißt außer speziellen Etiketten kommen weder Toner noch Druckertinte zum Einsatz, was den Einsatz auch langfristig günstig macht. Ich empfehle zum Adressendruck und für dieses Beispiel die 99012 36 x 89 mm Etiketten, es ist aber auch möglich 99014 51 x 101 mm Etiketten zu benutzen.

Adressen aus ebay importieren

Im Verkaufsmanager wählt man einfach alle verkauften Artikel unter „Bestellungen“ aus, klickt dann auf „Andere Aktionen“ und „Herunterladen“. Danach wird einem angeboten, den Datensatz als CSV-Datei herunterzuladen (SalesHistory.csv).

Diese Datei dann z.B. in LibreOffice Calc  öffnen und die Daten als ISO-8859-1 Zeichensatz importieren. Anschließend sollten dann die relevanten Daten wie Name und Adresse in einem zweiten Dokument verarbeitet werden, Stichwort: Serienbrief, so dass am Ende einzelne Spalten im zweiten Dokument auf das erste Dokument verlinken und die Daten bei jedem Öffnen automatisch aktualisiert werden. Dabei sollten in der ersten Zeile unbedingt die Schlüssel (Name, Adresse, Ort, Land, etc.) stehen, da diese später noch für gLabels wichtig sein werden.

Es gibt natürlich auch die Möglichkeit eine beliebige Programmiersprache und deren CSV-Modul zu benutzen, um die Daten so aufzubereiten, dass Sie anschließend von gLabels weiterverarbeitet werden können. Mit einem Tabellenkalkulationsprogramm ist die Sache aber auch ruckzuck erledigt.

gLabels

gLabels ist eine Anwendung zum Erstellen von Etiketten und Visitenkarten. Das Programm unterstützt zahlreiche Drucker und Formate. Um eine neue Vorlage zu erstellen klickt man auf Datei->Neu. Dann als Marke Dymo und Seitenformat: beliebig auswählen. Anschließend auf Dymo 99012 Große Adressaufkleber klicken und die weiteren Auswahlmöglichkeiten bestätigen.

Die Etikettenvorlage lässt sich nun nach Belieben bearbeiten. Man kann Linien und Umrandungen zeichnen, Bilder und Barcodes einfügen und natürlich auch die Daten aus der aufbereiteten CSV-Datei in einem Textfeld importieren. Dazu geht man auf Objekte->Mischeinstellungen. Wenn sich die Schlüssel (Name, Adresse1, Adresse2, PLZ, Ort und Land) in der ersten Zeile befinden, wählt man einfach „Text: Durch Kommata getrennte Werte (CSV) mit Schlüsseln in Zeile 1“. und den Ort der CSV-Datei. Anschließend werden die einzelnen Datensätze angezeigt.

Danach muss man nur noch ein Textobjekt anlegen und die Datenfelder einfügen. Das Ganze könnte dann ganz schlicht wie auf dem oben gezeigten Bildschirmfoto aussehen.

Wer sich die Arbeit nicht selbst machen möchte, kann sich hier meine Vorlage herunterladen.

glabels_Dymo_LableWriter_450_Vorlage.glabels.tar

Fazit

Mit dem neuen Etikettendrucker kann man nun blitzschnell Adressen auf Klebeetiketten drucken, was eine enorme Zeitersparnis darstellt. Preis/Leistung sind spitze und das Beste ist, es funktioniert tadellos mit jedem Linuxsystem, bevorzugterweise Debian. 😉 Natürlich muss es nicht bei Ebay-Adressen bleiben. Sehr gut funktioniert z.B. auch der Druck von Internetmarken der Deutschen Post. Der Dymo lässt sich als Format auswählen und das Porto problemlos damit drucken.