Skip to content

Instantly share code, notes, and snippets.

@nhtzr
nhtzr / make-passwd
Last active February 16, 2020 02:10
#!/bin/sh
declare SALT # One time pad
if [ "${1+x}" = x ]; then
SALT="$1"
else
# 64byte = 512bit
SALT="$(head -c64 /dev/random)"
fi
@nhtzr
nhtzr / config
Last active June 2, 2022 03:49
my .ssh/config
Host */*
ProxyCommand ssh %r@$(dirname %h) -W $(basename %h):%p
Host *_*
ProxyCommand ssh %r@$(cut -f1 -d_ <<< '%h') -W $(: '%h'; echo "${_##*_}"):%p
# SSH over Session Manager
Host aws-ssm-*
ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'"
#!/usr/bin/env bash
# Not actually executable, but a reminder for myself
# see https://lunaticgeek.com/whatsapp-stickers/
# see https://gist.github.com/patrickhammond/4ddbe49a67e5eb1b9c03#gistcomment-2903816
TMP="$(mktemp -d)"
wget https://dl.stickershop.line.naver.jp/products/0/0/1/3962468/iphone/[email protected] --no-check-certificate
# unzip, folder is stickers@2x
cd 'stickers@2x'
my-df() {
df -h |
awk '$NF != "/" && NR > 1 {print $NF}' |
xargs -I{} echo --exclude {} |
sudo xargs du / -h \
--exclude /sys \
--exclude /proc |
tee du.out |
sort -h |
less
#!/bin/bash
cat <<EOF > /etc/cni/net.d/100-crio-flannel.conf
{
"cniVersion": "0.3.0",
"name": "mynet",
"type": "flannel"
}
EOF
cat <<EOF > /etc/cni/net.d/200-loopback.conf
@nhtzr
nhtzr / getenv
Created October 23, 2019 03:41
getenv with default in bash
#!/usr/bin/env bash
set -euo pipefail
key="${1:?Env var is required as first parameter}"
default=${2:-}
value="${!key:-$default}"
: "${value:?Env var $key not found}"
printf "%s" "${value}"
@nhtzr
nhtzr / init.ps
Last active September 30, 2019 01:17
$env:SCOOP_GLOBAL='D:\ProgramData\scoop'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
iwr -useb get.scoop.sh | iex
scoop install 7zip git openssh aria2 curl grep sed less touch --global
scoop bucket add extras
scoop install imageglass paint.net firefox vlc vcredist2015 --global
scoop install googlechrome --global
scoop install neovim deluge discord steam
@nhtzr
nhtzr / default.conf
Created July 23, 2019 02:52
File listing http server nginx
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
charset utf-8;
location / {
autoindex on;
}
}
@nhtzr
nhtzr / gist:66b39596950f8ecc94630a902fa860f9
Created June 6, 2019 01:16 — forked from dsmiley/gist:2583730
jconsole via socks proxy
function jc_remote {
jmx_host=$1
jmx_port=${2:-5000}
proxy_port=${3:-8123}
echo "Connecting jconsole to $jmx_host:$jmx_port via SOCKS proxy using local port $proxy_port"
ssh -ND $proxy_port $jmx_host &
jconsole -J-DsocksProxyHost=localhost -J-DsocksProxyPort=${proxy_port} \
service:jmx:rmi:///jndi/rmi://localhost:${jmx_port}/jmxrmi
kill %1
@nhtzr
nhtzr / brew-download-switch
Created May 22, 2019 20:28
Downgrade (download and switch) a brew package
#!/usr/bin/env bash
# Downloads from bintray and extracts into cellar
# Intended as support brew switch <formula> <version>
# in case that the given version is no longer available in cellar
# e.g.
# $0 terraform 0.11.11 should download the following
# https://bintray.com/homebrew/bottles/download_file?file_path=terraform-0.11.11.sierra.bottle.tar.gz
# Which allows brew switch terraform 0.11.11 to succeed