Skip to content

Instantly share code, notes, and snippets.

View johannrichard's full-sized avatar
😴
I may be quite slow to respond.

Johann Richard johannrichard

😴
I may be quite slow to respond.
View GitHub Profile
### Keybase proof
I hereby claim:
* I am johannrichard on github.
* I am johannrichard (https://keybase.io/johannrichard) on keybase.
* I have a public key whose fingerprint is 9AFC 4017 D3BE 583A 0989 1C08 D05F 7D85 596E F4FB
To claim this, I am signing this object:
@johannrichard
johannrichard / build_jetty_package.sh
Last active December 21, 2015 09:07 — forked from fclairamb/build_jetty_package.sh
Jetty debian package builder.It takes the jetty script as is and build a jetty server that runs at startup.It's quick & simple version. Improvements are welcome.
#!/bin/sh
# Newest Jetty 9 version (See http://download.eclipse.org/jetty/)
JETTY_VERSION=9.3.6.v20151106
# We reset everything
rm -Rf jetty-distribution-${JETTY_VERSION} jetty
# We prepare the dirs
mkdir -p jetty/opt jetty/etc/init.d jetty/etc/default jetty/DEBIAN
@johannrichard
johannrichard / cec.service
Last active January 11, 2017 16:28
CEC REST Service, based on cdc-web (https://github.com/robbiet480/cec-web)
[Unit]
Description=CEC REST Service
# Based on https://github.com/robbiet480/cec-web
[Service]
# Change port if running together with OpenHAB
EnvironmentFile=/etc/default/cec
ExecStart=/usr/local/bin/cec-web $CEC_WEB_OPTS
Type=simple
@johannrichard
johannrichard / keybase.md
Created February 16, 2017 11:29
keybase.md

Keybase proof

I hereby claim:

  • I am johannrichard on github.
  • I am johannrichard (https://keybase.io/johannrichard) on keybase.
  • I have a public key whose fingerprint is FD56 A316 743F 4B97 C0AA 2DF5 6706 03A7 F614 B32F

To claim this, I am signing this object:

@johannrichard
johannrichard / vhusb-armbian-install.sh
Last active March 16, 2018 14:05
VirtualHere USB Service (Download Server from https://www.virtualhere.com/usb_server_software)
#!/bin/sh
# This little script downloads the VirtualHere USB client and sets up a service
# on arm-based systems
VHUSB_URL="https://virtualhere.com/sites/default/files/usbserver/vhusbdarm"
VHUSB_BINARY="/usr/local/bin/vhusbdarm"
VHUSB_SERVICE="/etc/systemd/system/vhusb.service"
if [[ `uname -m` == *"arm"* ]]
then
@johannrichard
johannrichard / fixup-mac-address
Last active October 12, 2018 20:08
InvizBox Go – MAC address change
#!/bin/sh
# Replace this in `/sbin/fixup-mac-address`
. /lib/functions.sh
. /lib/functions/system.sh
. /lib/ramips.sh
partname=""
offset=""
NEW_MAC=
YES=
@johannrichard
johannrichard / dm-toilet-paper.js
Created October 26, 2020 19:30 — forked from marco79cgn/dm-toilet-paper.js
Scriptable iOS widget that shows the amount of toilet paper which is available at your next dm drugstore
let country = 'de' // replace with 'at' for shops in Austria
let storeId = 251
let param = args.widgetParameter
if (param != null && param.length > 0) {
storeId = param
}
const widget = new ListWidget()
const storeInfo = await fetchStoreInformation()
const storeCapacity = await fetchAmountOfPaper()
@johannrichard
johannrichard / asn.js
Last active November 20, 2021 15:11
Serverless Worker Function for ASN prefix parsing for OPNsense and pfSense
/***
* Worker Function for ASN prefix parsing
* Will query the BigIP API for a given ASN and return a plain-text representation of the ASN prefixes
* (IP ranges) that can be used in either OPNsense or pfSense URL Tables (Firewall alias).
*
* See https://docs.opnsense.org/manual/aliases.html (OPNsense) and https://docs.netgate.com/pfsense/en/latest/firewall/aliases.html (pfSense) for details of their use.
*
* You can deploy this worker for example on the free tier of CloudFlare (Up to 100'000 requests a day) or
* any other serverless platform that supports JavaScript
*
@johannrichard
johannrichard / README.md
Last active September 4, 2022 10:19
Tailscale ACL GitOps Workflow

Tailscale ACL Workflow for GitOps

Tailscale recently introduced the possibility to manage Tailnet ACLs in Git Repositories. This is my tailscale.yml which has a notable difference to the one proposed by Tailscale. By putting the ACL test in front of the ACL deployment, it becomes a bit clearer that a failure happened b/c of a failed ACL.

Bonus: by installing act, one can actually run these tests locally, e.g. before committing / pushing to Github. Works well with a Git pre-commit hook that will fail if the ACL test is unsusscessful. Combined with the 1Password cli op command, you can get a nice little ACL workflow.

op run --env-file=".github/act/.env" -- act --secret TS_API_KEY --secret TS_TAILNET 
#!/bin/bash
################################
# OS X Install ISO Creater #
# #
# Author: shela #
################################
#######################################
# Declarations