Ventoy - Multi-Iso-Boot-Sticks

Ventoy ist eine Open-Source-Software, die es ermöglicht, einen bootfähigen USB-Stick mit mehreren ISO-Dateien von Betriebssystemen oder anderen bootbaren Anwendungen zu erstellen. Im Gegensatz zu herkömmlichen Methoden, bei denen der USB-Stick für jede ISO-Datei neu formatiert werden muss, ermöglicht Ventoy das Hinzufügen und Entfernen von ISO-Dateien über eine seperate Partition auf dem USB-Sticks.

Wenn der Ventoy-USB-Stick an einen Computer angeschlossen wird, erkennt das System automatisch die verfügbaren ISO-Dateien und zeigt sie im Boot-Menü an. Dies ermöglicht es dem Benutzer, das gewünschte Betriebssystem oder die gewünschte Anwendung auszuwählen und direkt von USB zu booten. Dies ist besonders nützlich für Systemadministratoren oder jeden, der regelmäßig verschiedene Betriebssysteme oder Diagnose-Tools verwendet. Ventoy unterstützt eine breite Palette von ISO-Dateien und Betriebssystemen, einschließlich Windows, Linux und MacOS. Es ist eine praktische Lösung, um einen einzigen USB-Stick für verschiedene Images zu verwenden, ohne ständig den Sticks zu formatieren zu müssen.

Micro, der größere Nano

Linux-Nutzer, die auf der Konsole Konfigurationen oder Skripte anpassen, ohne der VI/VIM/EMACS-Fraktion anzugehören, benutzen oft Nano als Editor. Die Möglichkeit, den Editor ohne vorheriges Studium des Handbuchs bedienen zu können und ohne Mühe wieder zu schließen, macht Nano zu einem ansprechenden Tool. Allerdings besitzt Nano im Gegensatz zu den etablierten Editoren weniger Funktionalität. Darüber hinaus besteht Verbesserungsbedarf in Bezug auf die Maussteuerung, die bedauerlicherweise das Einfügen aus der Zwischenablage deaktiviert.

Als ein "größerer" Editor bietet Micro mehr Funktionalität und eignet sich somit auch für umfangreichere Schreib- und Codeaufgaben. Er zeichnet sich durch seine Einsteigerfreundlichkeit aus und ist dennoch wesentlich mächtiger. Für jene, die Nano schätzen, jedoch nach einer mehr Funktionalität brauchen, erweist sich Micro als vielversprechende Alternative.

Die Anwendung verfügt über eine umfangreiche Funktionalität, darunter eine breite Palette an Syntaxhervorhebungen für über 75 Programmiersprachen, die Möglichkeit zur Verwendung von Mehrfachcursoren für simultane Bearbeitungen und ein flexibles Plugin-System zur Erweiterung der Funktionspalette. Micro legt besonderen Wert auf Anpassbarkeit und ermöglicht Nutzern die Konfiguration ihrer Einstellungen über eine leicht verständliche JSON-Syntax. Für fortgeschrittene Benutzer bietet der Editor zusätzlich die Option, den Editor über Lua-Skripten zu erweitern. Des Weiteren stellt Micro eine große Auswahl an Themes zur Verfügung, um die visuelle Darstellung von Texten zu optimieren. Die Integration von Mausunterstützung erlaubt es Nutzern, Textabschnitte auszuwählen, Mausklicks für Navigation zu verwenden und ist gelungener als in Nano. Ein bemerkenswertes Merkmal von Micro ist die Fähigkeit, intern einen Terminal-Emulator auszuführen. Dies ermöglicht die parallele Anzeige von Code und einer interaktiven Shell in einer geteilten Ansicht.

Zusammenfassend zeichnet sich Micro als fortschrittlicher Texteditor durch seine Benutzerfreundlichkeit, umfangreiche Anpassungsmöglichkeiten aus, das macht in zu einer guten Wahl für die professionelle Textbearbeitung. Micro kann auf Linux, Windows und MacOS eingesetzt werden.

Darstellung von VirtualBox unter Linux Mint Dark Mode beheben

Leider kommt es bei Virtual Box seit mehreren Versionen zu einem unschönen Bug/Darstellungsfehler, wenn man unter Linux Mint ein dunkles Theme verwendet. Text wird grau auf grau dargestellt und ist schwer zu lesen. Durch das Verwenden des Styles "Fusion" kann das Problem behoben werden. Zwar ist dadurch die Menübar nicht mehr dunkel, aber alle Texte sind in schwarzer Schrift.

Bei der Verknüpfung über die VirtualBox gestartet wird, kann -style Fusion (siehe erstes Bild) als Parameter ergänzt werden. Nach einem Neustart von Virtual Box über diese Verknüpfung wird der Style angewendet. Weitere

Visual Studio Code - Neue Settings für Cygwin

Leider wurden mit dem letzten VS-Code-Update die Einstellungen, die notwendig sind, um Cygwin im integrierten Terminal nutzen zu können, geändert. Nachfolgend die neuen Einstellungen, die zum Erfolg geführt haben. Es kann notwendig sein, VS Code neu zu starten, um die Einstellungen zu übernehmen. Es wird hier davon ausgegangen das chere welches auch xhere bereitstellt in Cygwin, installiert ist. Dadurch wird gewährleistet, dass das Terminal immer im aktuellen Projektordner von VS-Code geöffnet wird. Alternativ können die Argumente auch weggelassen werden, was aber zu einer deutlichen Verschlechterung der Usability führt.

settings.json

"terminal.integrated.profiles.windows": {
        "Cygwin": {
            "path": "C:\\cygwin64\\bin\\bash.exe",
            "args": [
                "/bin/xhere", "/bin/bash"
            ]
        }
    },
"terminal.integrated.defaultProfile.windows": "Cygwin"

Gluon.js & Neutralino - Zwei Newcomer vordern Electron und NW.js heraus

Zwei Newcomer vorderen Electron und NW.js bei Erstellen von JavaScript-Desktopaplikationen heraus. Die beiden neuen Tools erzeugen weit kleinere Applikationen als die eingesessenen Konkurrenten. Anwendungen sind nur wenige MB und nicht mehrere Hundert MB groß. So liefern beide keine Chrome-Runtime mit. Dadurch lässt sich schon ca. 60 MB sparen. Gluon setzt einen bereits installierten Chrome oder Firefox voraus. Neutralino setzt auf die in dem jeweiligen Betriebssystem integrierte Browser-Technologien (z.B. gtk-webkit2 unter Linux). Es kann immer noch clientseitiges JavaScript ausgeführt werden, außerdem bieten beide die Möglichkeit ein Backend anzubinden. Diese Funktionalität ist für viele Anwendungsfälle ausreichend, oft wird wahrscheinlich überhaupt keine Backendfunktionalität benötigt, auch wenn solche Anwendungen dann auch als PWA umgesetzt werden könnten, bevorzugen es manche dennoch diese als Desktop-Anwendung zu vertreiben.

Neutralino

Neutralino verzichten auf eine Node.js Runtime. Es kann noch immer auf die integrierten APIs zugegriffen werden. Im Gegensatz zu Gluon stehen über die Neutralion API viele Desktop-Funktionen zur Verfügung. Deswegen kann oft auf ein Backend verzichtet werden. Dennoch kann über IPC/Websockets ein solches angebunden werden. Das Backend kann in beliebiger Technologie umgesetzt werden, solange diese Websockets unterstützt. Es existieren Beispiele für C++ und Node.js. Anwendungen können über das integrierte neu build Befehl für Windows, Linux und MacOS erstellt werden. Teilweise wird auch bereits ARM64 unterstützt.

Gluon

Gluon ist ein noch sehr neues Projekt. Dennoch hat es bereist sehr viel Aufmerksamkeit erzeugt. Als Backend könne Node, Deno oder Bun verwendet werden. Dabei wird die Anbindung an den Client wie bei Neutralino auch über IPC umgesetzt. Leider verfügt Gluon noch über kein integriertes "build"-Kommando. Beide Tools befinden sich momentan noch in einer frühen Entwicklungsphase und sind deswegen nicht für große Anwendungen geeignet. Auch haben sie das Problem, dass der Entwickler nicht weis, in welcher Umgebung seine Anwendung ausgeführt wird. Wer damit leben kann, sollte den beiden Tool auf jeden Fall einmal anschauen.

Vanta.js - Hintergrund Effekte für Webseiten

Vanta.js ist eine JavaScript-Bibliothek, mit der visuelle Effekte für Websites zu erzeugt werden können. Die Bibliothek verwendet WebGL und die THREE.js Bibliothek, welche auf schwachen Geräten langsam laufen. Vanta.js bietet verschiedene Effekte, darunter Partikelanimationen, Wellenanimationen, Nebel und andere. Die Bibliothek ist einfach zu integrieren, wie man am nachfolgenden Beispiel sehen kann:

<script src="three.r134.min.js"></script>
<script src="vanta.waves.min.js"></script>
<script>
VANTA.WAVES({
  el: "#your-element-selector",
  mouseControls: true,
  touchControls: true,
  gyroControls: false,
  minHeight: 200.00,
  minWidth: 200.00,
  scale: 1.00,
  scaleMobile: 1.00
})
</script>

SBB timeTable

SBB timeTable ist ein Haltestellen-Dashboard mit allen Abfahrten einer beliebigen SBB Haltestelle in der Schweiz. Es handelt sich um ein Demo-Projekt zur Technologie-Erprobung, ist aber voll funktionsfähig. Das Projekt wurde mit Preact in TypeScript erstellt und nutzt Pico.css für das Styling. Die Daten werden mittels SWR direkt von einem API-Endpoint von search.ch geladen, sodass neben dem Hosten des statischen Preact-Builds keine Serverkomponenten involviert sind. Die Illustrationen kommen von unDraw.

Die timeTable kann unter aufgerufen werden timetable.ragersweb.de

zx - Ein Werkzeug für einfachere Konsolen-Scripte in Node.js

Bash-Scripte sind schnell geschrieben, allerdings erschwert die gewöhnungsbedürftige Syntax es, komplexere Skripte zu schreiben. JavaScript ist eigentlich eine perfekte, um Scripte zu schreiben (was das Script im Namen ja bereits andeutet), aber die Verwendung der Node.js-Standardbibliothek ist leider nicht intuitiv. Das zx-Paket, das als Open-Source von Google bereitgestellt wird, stellt nützliche Wrapper für child_process bereit und liefert darüber hinaus einiges an sinvollen Funktionen.

zx kann über npm i -g zx global installiert werden, einzige Vorausetztung ist ein installiertes Node/NPM.

Hier ein einfaches Beispiel-Script:

#!/usr/bin/env zx
await $`cat package.json | grep name`

let branch = await $`git branch --show-current`
await $`dep deploy --branch=${branch}`

await Promise.all([
    $`sleep 1; echo 1`,
    $`sleep 2; echo 2`,
    $`sleep 3; echo 3`,
])

let name = 'foo bar'
await $`mkdir /tmp/${name}`

Es werden folgende Befehle bereitgestellt:
  • $ - Führt angegbenen Befehl über spawn aus
  • cd()
  • fetch()
  • question()
  • sleep() 
  • echo()
  • stdin()
  • within()
  • retry()
  • spinner()- Rendert einen Spinner/Ladeanimation auf der Konsole
  • chalk - Ermöglicht farbige Ausgaben auf der Konsole
  • fs 
  • os 
  • path 
  • glob
  • yaml - Ermöglicht das einlesen von YAML
  • minimist - Einfaches parsen von Argumenten
  • which 
  • filename 
  • dirname 
  • require()

Mehr zu zx unter github.com/google/zx

unDraw - Illustrationen für Jeden

Mit unDraw existiert seit 2017 eine freie Datenbank an Illustrationen zu vielfältigen Themen. Grafiken von unDraw werden auf den Webseiten vieler Open-Source-Projekten eingesetzt. Inzwischen existieren über 1300 Illustrationen. Alle Grafiken können als SVG oder PNG heruntergeladen werden. Sie können auf der Webseite des Projekts über Themen-Keywords gefunden werden. Ein weiteres Herausstellungsmerkmal ist es, dass die Hauptfarbe der Illustrationen beliebig angepasst werden kann. Dadurch ist es einfach möglich, die Bilder an das eigene Corporate Design anzupassen.

Das einzige Problem von unDraw ist sein eigener Erfolg. Die Grafiken sind zwar hübsch, werden aber vielen Usern inzwischen bereits bekannt vorkommen.

NPM-Pakete komfortabler aktuell halten

Mit den beiden Paketen npm-check und npm-check-updates gibt es zwei Tools, die es Entwicklern erleichtern Node.js und Java-/Type-Script Projekte aktuell zu halten. Beide Tools analysieren die package.json bzw. die package-log.json und listen mögliche Updates auf. Im interaktiven Modus können updates Pakete direkt ausgewählt und installiert werden.

Es empfiehlt sich Tools über npx auszuführen und nicht lokal/global zu installieren. Dadurch ist gewährleistet, dass immer die aktuellste Version verwendet wird.

npm-check im Interaktiven Modus:

npx npm-check -u 

npm-check-updates im Interaktiven Modus:

npx npm-check-updates --format group --interactive

npm-check bietet im interaktiven Modus (-u) eine detailliertere Darstellung der Pakete gefällt deswegen besser als npm-check-updates.