Skip to content

Instantly share code, notes, and snippets.

View wastrachan's full-sized avatar

Winston Astrachan wastrachan

View GitHub Profile
@wastrachan
wastrachan / init.sh
Last active February 4, 2024 14:47
Git hooks for a repository with git-secret
#!/bin/sh
# Check for required project dependencies and install
# git hooks bundled with this project
echo ""
echo "Checking dependencies..."
if [ -z "$(command -v git-secret)" ]; then
cat <<\EOF
@wastrachan
wastrachan / django_env.py
Created February 3, 2022 17:18
Django Environment Variables
import os
from django.core.exceptions import ImproperlyConfigured
from distutils.util import strtobool
def get_env(var_name, default=None, is_bool=False, is_int=False, is_float=False, is_list=False, is_required=False):
""" Loads a value from the environment variable <var_name> and returns
that value, optionally explicitly cast as a type.
If the environment variable is not set, return <default>.
/**
* Switchboard LED Flasher
* Created for Teensy 3.2
* Copyright (c) Winston Astrachan 2019
*
* Emulates a telephone switchboard with 8 lights, blinking them
* to simulate incoming calls at psuedo-random intervals.
*/
const int LAMP1 = 9;
#! /bin/bash
#
# APT Installed
# Compare currently installed packages with archived package list
#
# (c) Winston Astrachan 2019
ARCHIVE_FILE=/etc/apt/basepackages.txt
@wastrachan
wastrachan / openvpn-in-lxd.txt
Last active March 21, 2023 13:07
OpenVPN in LXD Container
# On the host
=============
lxc config set openvpn raw.lxc 'lxc.cgroup.devices.allow = c 10:200 rwm'
lxc config device add openvpn tun unix-char path=/dev/net/tun
# In the container
==================
1. mknod /dev/net/tun c 10 200