Zertifikatsüberprüfung bei wget deaktivieren

Wenn man mittels wget etwas herunterlädt, kann es passieren das der Download mittels:

wget https://example.com

mit folgender Meldung abbricht:

FEHLER: Kann das Zertifikat von »example.com« nicht prüfen, ausgestellt von »/C=US/O=Let’s Encrypt/CN=Let’s Encrypt Authority X3«:. Die Authorität des Ausstellers des Zertifikates kann lokal nicht geprüft werden.

In diesem Fall schlägt die Zertifikatsprüfung fehl. Möchte man die entsprechende Ressourche trotzdem herunterladen, so kann man die Zertifikatsprüfung deaktivieren:

wget https://example.com --no-check-certificate

Über den Schalter –no-check-certificate wird die Prüfung deaktiviert und der Downloads kann durchgeführt werden.

Fenster mittels Tastatur unter macOS anordnen

Unter Windows ist es möglich Fenster mit Hilfe der Tastatur anzuordnen. Unter macOS existiert eine solcher Mechanismus nicht. Glücklicherweise muss dies nicht so bleiben, da es eine Reihe von Tools gibt, welche macOS um eine solche Funktionalität erweiterten. Eines dieser Tools ist Spectacle. Nach der Installation von Spectacle, ist dieses in der Menüleiste zu finden. Spectacle bietet nun über global gültige Tastenkombinationen, eine Reihe von Möglichkeiten zur Anordnung der Fenster.

Die Einstellungen der App

Der Quelltext der App ist auf GitHub zu finden; die App selber auf der offiziellen Seite unter spectacleapp.com. Lizenziert ist Spectacle unter der MIT Lizenz und somit freie Software.

Clients und Server-Stubs mittels Swagger Codegen erzeugen

Mit Swagger gibt es seit einigen Jahren eine Möglichkeit REST-API sinnvoll zu dokumentieren und zu generieren. Aus einer YAML-Datei, welche die Beschreibung der API enthält kann mit dem Swagger Code Generator (kurz Swagger Codegen) eine entsprechende Client-Bibliothek oder ein Server-Stub erzeugt werden. Eine solche minimale YAML-Datei könnte wie folgt aussehen:

swagger: '2.0'
info:
  description: "API"
  version: "2018.04"
  title: "API"
host: "api.example.com"
basePath: "/v1"
schemes: 
- "https"
paths:
  /tree:
    get:
      produces: 
      - "application/json"
      summary: Returns the document tree
      tags:
      - "Document tree"
      description: Lorem Ipsum dolor sit amet
      responses:
        200:
          description: OK

In dieser Datei wird eine Ressource mit dem Namen tree und für diese eine Get-Methode definiert. Um daraus nun die Client-Bibliotheken bzw. Server-Stubs zu generieren muss der Swagger Codegen über Git bezogen, anschließend kompiliert und paketiert werden:

https://github.com/swagger-api/swagger-codegen.git
cd swagger-codegen
mvn clean package

Zur Erzeugung eines PHP-Server-Stubs mit dem Slim-Framework kann der Swagger Codegen anschließend wie folgt genutzt werden:

java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i api.yaml   -l slim -o folder/slim

Eine Client-Bibliothek wird auf dem gleichen Weg erzeugt:

java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i api.yaml   -l javascript -o folder/javascript

In diesem Fall wird eine JavaScript-Client-Bibliothek erzeugt. Die verfügbaren Sprachen bzw. Frameworks für die Clients und Server-Stubs erzeugt werden können, können mit dem Befehl:

java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar langs

angezeigt werden. Die Ausgabe spezifiziert alle vorhandenen Generatoren:

Available languages: [ada, ada-server, akka-scala, android, apache2, apex, aspnetcore, bash, csharp, clojure, cwiki, cpprest, csharp-dotnet2, dart, elixir, elm, eiffel, erlang-client, erlang-server, finch, flash, python-flask, go, go-server, groovy, haskell-http-client, haskell, jmeter, jaxrs-cxf-client, jaxrs-cxf, java, inflector, jaxrs-cxf-cdi, jaxrs-spec, jaxrs, msf4j, java-pkmst, java-play-framework, jaxrs-resteasy-eap, jaxrs-resteasy, javascript, javascript-closure-angular, java-vertx, kotlin, lua, lumen, nancyfx, nodejs-server, objc, perl, php, powershell, pistache-server, python, qt5cpp, r, rails5, restbed, ruby, rust, rust-server, scala, scala-gatling, scala-lagom-server, scalatra, scalaz, php-silex, sinatra, slim, spring, dynamic-html, html2, html, swagger, swagger-yaml, swift4, swift3, swift, php-symfony, tizen, typescript-aurelia, typescript-angular, typescript-inversify, typescript-angularjs, typescript-fetch, typescript-jquery, typescript-node, undertow, ze-ph, kotlin-server]

Lizenziert ist der Swagger Codegen unter der Apache Licence in der Version 2 und somit freie Software.

Ubuntu ohne Splash Screen starten

Beim Start einer Ubuntu-Installationen wird ein Splash Screen angezeigt. Möchte man stattdessen dauerhaft die Statusmeldungen beim Hochfahren sehen, so kann dies über die GRUB-Konfiguration geändert werden. Dazu muss die Default-Konfigurationsdatei von GRUB im Editor geöffnet werden:

sudo nano /etc/default/grub

Dort muss die Zeile:

GRUB_CMDLINE_LINUX_DEFAULT="splash quiet"

zu:

GRUB_CMDLINE_LINUX_DEFAULT="text"

geändert werden. Nachdem die Änderung der Konfiguration gespeichert wurde, muss GRUB bzw. die Konfiguration desselben aktualisiert werden. Dies geschieht mittels:

sudo update-grub

Anschließend kann der Rechner neugestartet werden. Statt des Splash Screen werden nun die Statusmeldungen beim Start angezeigt.

Dock für GNOME 3

GNOME 3, als Desktop-Oberfläche für ein grafisches Linux, gefällt mir in den Grundzügen relativ gut. Allerdings gibt es einige Kleinigkeiten, welche mich stören. Als macOS-Nutzer bin ich ein großer Freund des dortigen Docks und möchte ein solches auch unter GNOME 3 nutzen können. Glücklicherweise gibt es die Erweiterung Dash to Dock, welche eine solche Funktionalität anbietet.

Die Erweiterung kümmert sich um das Dock

Dash to Dock bietet eine Fülle von Einstellungen um es optimal an die eigenen Bedürfnisse anzupassen. Die Optionen reichen von der bevorzugten Position auf dem Bildschirm über die Größe der Icons, die Darstellung laufender Anwendungen und dem Erscheinungsbild.

Die Einstellungen von Dash to Dock

Die Erweiterung kann über die GNOME-Extension-Seite heruntergeladen bzw. direkt installiert werden.