Skip to content

Instantly share code, notes, and snippets.

View gbraad's full-sized avatar
🇳🇱
Working from home

Gerard Braad gbraad

🇳🇱
Working from home
View GitHub Profile
@gbraad
gbraad / README.md
Last active March 27, 2025 11:44
Test shared configuration
name: 'Shared Configuration'
description: 'Fetch configuration parameters from a shared .ini file and export as environment variables'
author: 'gbraad'
inputs:
  config_repo:
    description: 'URL of the repository containing the configuration file'
    required: true
  config_file:
    description: 'Path to the configuration file in the repository'

HTML support

<h1 align="center">HTML support</h1>

MarkDown with HTML support?

@gbraad
gbraad / README.md
Last active March 11, 2025 06:03
Multi-arch build with Podman using GitHub Actions

Multi-arch build with Podman using GitHub Actions

build-process.yml

name: build container - fedora-multi-arch
run-name: Building container - Fedora Multi-Arch

on:

Check for available port

port=8006;
while grep -q :${port} <<< $(ss -tunalp); do
  port=$(( port + 1 ))
done
echo "Using Port: ${port}"
# create storage for state
podman volume create tailscaled-state

# launch the container
podman run -d \
  --rm \
  --name tailscaled \
  --hostname $HOSTNAME \
 --env TS_USERSPACE=false \
@gbraad
gbraad / README.md
Created February 4, 2025 07:51
Update Dynamic DNS using SystemD timers (instead of cron-schedule)

Dynamic DNS update script using systemd

Here Free DNS is used as an example, but many service can be used in a similar way.

Create the following service and related timer: /etc/systemd/system/freedns-update.service

[Unit]
Description=Update service for Free DNS A record: systemd.strangled.net
@gbraad
gbraad / README.md
Created January 31, 2025 05:16
Get latest stable Tailscale version

Get latest stable Tailscale version

tarball="$(curl -s 'https://pkgs.tailscale.com/stable/?mode=json' | jq -r .Tarballs.amd64)"
version="$(echo ${tarball} | cut -d_ -f2)"
#!/bin/bash
download() {
input=$1
final_output_file=$2
# Check if the input contains a range pattern
if [[ $input =~ \[([0-9]+)-([0-9]+)\] ]]; then
# Extract the base URL and the range
base_url="${input%%_part*}"
@gbraad
gbraad / README.md
Created January 14, 2025 07:42
Cloudflare Warp client on Fedora/EL

Cloudflare Warp client on Fedora/EL

sudo dnf config-manager --add-repo https://pkg.cloudflareclient.com/cloudflare-warp-ascii.repo
sudo dnf install cloudflare-warp

/etc/systemd/resolved.conf

@gbraad
gbraad / README.md
Last active January 27, 2025 10:01
9P

Implement 9P File Sharing for Windows hosts

Motivation

File sharing is a critical capability for many software development and IT operations workflows. Allowing developers to easily access and collaborate on shared assets, such as source code, configuration files, and other project resources. Implementing a robust file sharing solution can improve productivity, facilitate version control, and enable seamless collaboration across different operating systems and environments.

Objectives

  • Add 9P server functionality to a Windows host system to enable file sharing.
  • Implement 9P client functionality on a RHEL virtual machine to access the shared files from the Windows host.
  • Ensure reliable and secure file transfer between the Windows host and the RHEL VM using the 9P protocol.