New Tools

New tools for the HomeLab. Dockge for Docker Container Management and Lapce an open source code editor written in Rust. Nala is a fantastic frontend to APT. #dockage #nala #lapce #figlet #figurine

New Tools
Photo by Tekton / Unsplash

I love tools in all forms, physical and software based. Today I will show you two new tools of this autumn.

  • Figurine Rice your SSH login
  • Dockge for Docker Container Management
    ("Dockge" is a coinage word which is created by the author who hope it sounds like Dodge.) It's part of the new TemplateBuilder (still in beta).
  • Lapce (IPA: /læps/) a VS Code replacement written in Rust.
  • Nala The modern front-end for apt operations

Figurine

A big and colorful letter greeting to the SSH login and shell. I had two reasons to look for something better than using the figlet text I had. I search GitHub and find an interesting project by arsham Arsham Shirvani - figurine.

Background

Had a issue where i was to do stuff on Pve-2 but ended up doing it on Pve-6.
Lost several days of work and had a huge mess to cleanup for days on end.
And I like to rice my stuff like my login screens for Proxmox. See blog post Add Color to Proxmox Logon and Add Color to Proxmox Logon - 2.

Download the binary tarball and tar -xvzf figurine_linux_amd64_v1.3.0.tar.gz and cd deploy. Now you can copy it to the servers, I have it on all Debian/Ubuntu based today. I don't usually have it on VM's, but if the size of the binary isn't big.

scp figurine [email protected]:/usr/local/bin

Copy the binary to each server

#!/bin/bash
echo ""
/usr/local/bin/figurine -f 3d.flf Pve - 1
echo ""

The figurine.sh

scp figurine.sh [email protected]:/etc/profile.d/

Setup the new SSH Login Screen by adding Figurine

Issue

I did use the binary and not compiling it my self. Don't know if that's the reason why only a few fonts work for me, 3d wasn't my first choice but rather the one that worked a dark and stormy night burning the midnight oil in early November.

It's recommended to install GO and compile it yourself.

Dockge

Dockge is a fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager. The main objective of Dockge is that try to use docker compose.yaml for everything. If you want to manage a single container, you can just use Portainer or Docker CLI. View Video.

Quick intro gif

Install Dockge

docker run -d -p 5001:5001 --name Dockge --restart=unless-stopped -v /var/run/docker.sock:/var/run/docker.sock -v /home/<USER>/docker/dockge/data:/app/data -v /home/<USER>/docker/stacks:/home/<USER>/docker/stacks -e DOCKGE_STACKS_DIR=/home/<USER>/docker/stacks louislam/dockge:latest

My one-liner install. Replace <USER> by your username. Alternative see the Dockge GitHub for a compose.yaml file, use latest as version.


Lapce

Lapce is an open source code editor written in pure Rust with a UI in Floem.
It is designed with Rope Science from the Xi-Editor which makes for lightning-fast computation, and leverages Wgpu for rendering. More information about the features of Lapce can be found on the main website and user documentation can be found on GitBook.

It's early - it is at pre apha stage! But it's very promising.
lapce fileToEdit.txt
lapce subfolder 

How to run from CLI for files and subfolders. Please read the documentation.


Nala

Nala is a front-end for libapt-pkg. Nala provides a more user-friendly interface for interacting with APT and offers multiple features.
Command are like in apt nala update, nala upgrade, nala list, nala purge, nala remove but also some new nala fetch (View list of mirrors)

Outside of pretty formatting, the number 1 reason to use nala over apt is parallel downloads. And also a big feature is the nala history command.

Features

  • Parallel package downloads
  • The ability to select the fastest mirrors
  • Package transaction history
  • Colored output
  • History feature
  • Tab completion
  • Support for searching and filtering package lists
  • Select mirrors for faster downloads

Install

apt update && apt-get install nala

Proxmox 8.1

The Software-Defined Network (SDN) feature in Proxmox VE enables the creation of virtual zones and networks (VNets). This functionality simplifies advanced networking configurations and multi tenancy setup. Talks with IPAM's as NetBox.

If upgrading, you need to install some more packages. See docs and wiki.
Internal sub-nets for the lab without the need of a dedicated router

Support for Secure Boot: This version is now compatible with Secure Boot. This security feature is designed to protect the boot process of a computer by ensuring that only software with a valid digital signature launches on a machine. Proxmox VE now includes a signed shim bootloader trusted by most hardware's UEFI implementations. This allows installing Proxmox VE in environments with Secure Boot active.

New Flexible Notification System: This release introduces a new framework that uses a matcher-based approach to route notifications. It lets users designate different target types as recipients of notifications. Alongside the current local Postfix MTA, supported targets include Gotify servers or SMTP servers that require SMTP authentication. Notification matchers determine which targets will get notifications for particular events based on predetermined rules. The new notification system now enables greater flexibility, allowing for more granular definitions of when, where, and how notifications are sent.

Add your mail Target and a Matcher rule-set to use it.

TemplateBuilder 5.0

Create a K8s cluster in 3-5 minutes or just setup on VM with your apps.

Older version (beta 5)

If VM's gets the same IP from DHCP

Two main options are used in this case: the vendor class identifier (option 60) and the client identifier (option 61). Client identifier is unique and helps the DHCP server to manage its clients and leases, it is generally set to the MAC address of the network interface on a local network. The vendor class identifier is more interesting, as it identifies the vendor type and configuration of a DHCP client in a simple character string.

Remove Doublet IP's

sudo truncate -s 0 /etc/machine-id
sudo systemd-machine-id-setup

Firewall option: Ignore client identifiers

Do not record a unique identifier (UID) in client lease data if present in the client DHCP request.

This option may be useful when a client can dual boot using different client identifiers but the same hardware (MAC) address. Or cloned VMs have the same machine-id. Note that the resulting server behavior violates the official DHCP specification.

What to come

There will be a longer explanatory post later. Link


References

Dockge [1] Lapce [2] my GitHub [3] nala [4] Proxmox SDN [5]


  1. Dockge GitHub page ↩︎

  2. Lapce homepage, GitHub, Documentation Introduction page ↩︎

  3. my GitHub page ↩︎

  4. nala GitHub ↩︎

  5. Proxmox SDN documentation kiki ↩︎