Articles in Category "GNU/Linux"

Updated Common Prefix Notation Transformation

This is an update to my previous article on determining the common prefixes of a set of strings (passed a sequence of lines) and printing them in common prefix notation (CPN). The problem of reconstructing strings from the original input that are complete prefixes of other input strings is addressed. The code is now in […]

Print XDG Desktop Definition for Application

Update Nov 3 2024: There is an update to this article that provides this script as commandline utility. There is also a Git repository. For an application given by „application name“ or „executable name“, output the corresponding .desktop file, if any: #!/bin/sh IFS=“:“ xdg_data_dirs=${XDG_DATA_DIRS:-/usr/local/share:/usr/share} search=$1 for i in $xdg_data_dirs ; do a=“$i/applications“ [ -d $a […]

Transforming Sets of Strings to their Common Prefix Notation

Update Aug 20 2022: There is an update to this article that fixes a known issue. There is also a Git repository containing a reference implementation. Any two strings s1, s2 have a common prefix cp, which is the string of characters that s1 and s2 have in common up from the start. If s1, […]

Pi-KVM Hat v3

Ich freue mich, zu den Glücklichen zu gehören, die den Pi-KVM Hat v3 mit passendem Stahlgehäuse ergattert haben (https://pikvm.org/). Das Warten hat sich gelohnt.

CentOS/8 Stream on libvirt/KVM with Kickstart and virt-install

This article describes using Kickstart to automate the CentOS installer and virt-install to automate the creation of a VM. The following setup is assumed: There is a libvirt hypervisor called virthost. ssh to virthost as „root“ is possible.

WordPress-Plugin to Embed Gitlab Project Information

For my personal use, i wrote a small WordPress plugin that allows me to embed a link to a Gitlab repository, a list of commits and a link to the releases of that project in a WP post. Example (linebreaks added to shortcode for readability): [​gitlab-show-project url=“https://example.test/gitlab“ project_id=99 max=3 author=“none“ releases=“latest“​]

Interactive nftables Ruleset Editor

I wrote a simple shell tool to interactively edit the current nftables ruleset using a terminal-based text editor (respecting environment variable EDITOR and defaulting to vim). For testing purposes, it can optionally revert the changes after a timeout specified in seconds (option –timeout SECONDS, requires systemd-run).

GRE Setup for Bacula on a Mobile Client

The way Bacula works is: A backup client runs a TCP server process bacula-fd, waiting for a backup server process bacula-dir to connect and perform backup and restore jobs. There is a simple authentication mechanism, where bacula-dir presents a shared secret to bacula-fd to be granted access. Opening the bacula-fd TCP server on an exposed […]