Skip to content

Instantly share code, notes, and snippets.

@fizzyade
fizzyade / commit-msg
Last active October 12, 2019 12:21
A simple GIT commit-msg hook that conforms to the conventional commits style
#!/usr/bin/env python
# Copyright (C) 2019 Adrian Carpenter
#
# Simple GIT commit-msg hook that conforms to the conventional commits style.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
@fizzyade
fizzyade / untangle_letsencrypt.md
Last active January 22, 2022 02:10
Set Untangle certificate to an auto renewing LetsEncrypt certificate

This uses acme.sh to generate a certificate which replaces the one shown in the certificate section in the Untangle UI.

It updates on each run and if the certificate is renewed it replaces the one used by untangle and restarts apache.

if the certificate isn’t renewed, it still checks if the certificate untangle is using is the one cached by acme.sh and it will replace it and restart apache if necessary.

The crontab entries allow it to do a certificate check at reboot and also at 4am every morning.

You’ll need to download acme.sh, but it requires no extra dependencies over what is supplied in untangle, you will need to edit the acme.sh configuration file to match how you update the cert.

@fizzyade
fizzyade / pve-patcher.sh
Created October 21, 2019 09:20
Disable nag screen for Proxmox community edition
cat > /etc/systemd/system/pve-patcher.service <<EOT
[Unit]
Description=PVE subscription popup disabler
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/sed -i '/\sProxmox\.Utils\.checked_command\(.*\); \/\/ display subscription status/ s/\(\s*\)/\1\/\//' /usr/share/pve-manager/js/pvemanagerlib.js
[Install]
@fizzyade
fizzyade / nvidiaheadend.md
Last active February 27, 2024 22:43
tvheadend container + nvidia ffmpeg under Unraid

NVIDIA+TVHEADEND+UNRAID+ACCELERATED FFMPEG

I recently had a need to get hardware accelerated ffmpeg running on tvheaded under unraid, I eventually achieved this with a few tricks, here are my notes on what I did to achieve this.

First up, Unraid NVIDIA support

Install the Nvidia plugin under Unraid, this installs a custom kernel complete with the nidia drivers and docker runtime to support thiese.

Next install a hardware accelerated FFMPEG

@fizzyade
fizzyade / qt_fontawesome.md
Last active February 18, 2020 23:01
QString (Qt) utility to allow strings to use Font Awesome icons alongside regular text easily.

Glyphs in Rich Text

Here's a small utility class that uses a simple markup extension to easily allow you to use Font Awesome glyphs in rich text on Qt. This allows widgets such as QLabel to use glyphs from the excellent Font Awesome font.

You will need:

Loading the font

@fizzyade
fizzyade / CloneSiliconLabs.md
Created April 3, 2020 20:20
Clones all Silicon Labs (formerly Micrium) uc- library repositories

Clone Silicon Labs Repos

A convenience command to clone all Silicon Lab (Formerly Micrium) uc- related library repos. These libaries were closed source and high quality libraries for USB, Networking, Filing Systems etc that are portable to many platforms and different operating systems.

curl "https://api.github.com/search/repositories?q=uc-+user:SiliconLabs" | grep \"clone_url\" | awk '{print $2}' | sed -e 's/"//g' -e 's/,//g' | xargs -n1 git clone

@fizzyade
fizzyade / go
Last active September 20, 2020 22:04
simple script to assemble, insert executable into mmc image and then start the emulator for ZX Spectrum Next development
#!/usr/bin/env sh
# this script has only been tested on macOS.
# (C) 2020 Adrian Carpenter
#
# This script will assemble and then launch an application in CSpect. The assembly file should be named the same as the
# folder, for example if the folder "mygame" holds the source code, then inside that folder should be a file named "mygame.asm",
#
# This negates the need to modify the script for a new project, you just have the have the folder and the main assembly file
# named the same.
@fizzyade
fizzyade / deploy.py
Last active September 26, 2020 17:07
Python script to automate deployment of a Qt based application as a macOS DMG, Windows Installer and Linux AppImage
#!/usr/bin/env python3
#
# Copyright (C) 2019 Adrian Carpenter
#
# Multiplatform Qt Deployment Tool
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
@fizzyade
fizzyade / Caddy 2 Cloudflare DNS Example.md
Last active March 25, 2024 22:58
An example of a Caddy 2 JSON configuration file for a reverse proxy that uses the Cloudflare DNS module
{
  "apps": {
    "http": {
      "servers": {
        "example": {
          "listen": [
            ":80",
            ":443"
          ],

Pi-KVM Bus Powered

You can use Pi-KVM bus powered, this reduces the need for splitters and/or other "hacks" to make it work, the following instructions will allow you to achieve this.

Note as the pi is bus powered, it cannot control the PC or show the output until the Raspberry Pi 4 has booted, I would recommend that you at the minimum ensure that your host machine is configured to boot up when power is restored. A self powered Pi-KVM would still have the same issue after power is restored, but have more flexibility as it is independant of the host system.

I have tested this on a 2016 MacBook Pro and an M1 Mac Mini and haven't seem any issues with either Mac not being able to source enough current to power the Raspberry Pi 4.

The instructions for early & later revisions vary.