Skip to content

Instantly share code, notes, and snippets.

🌞
DO YOU EVEN ADHERE BRO

Naftuli Kay naftulikay

🌞
DO YOU EVEN ADHERE BRO
View GitHub Profile
@naftulikay
naftulikay / ManualVideoCompile.java
Created Jun 27, 2012
Generate a video from scratch with Xuggler
View ManualVideoCompile.java
package org.tkassembled.xuggle;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@naftulikay
naftulikay / s3-cloudfront-invalidation.sh
Last active Dec 31, 2019
Sync a directory to S3 and invalidate the CloudFront cache for changed resources.
View s3-cloudfront-invalidation.sh
#!/bin/bash
# output format is like this:
# upload: index.html to s3://$BUCKET/index.html
#
# so we grab the second item which is the file path and pass that via xargs to the
# cloudfront invalidation command
aws s3 sync --sse AES256 s3://$BUCKET/ site/ | awk '{print $2;}' | \
xargs aws cloudfront create-invalidation --distribution-id $CF_DISTRO_ID --paths
@naftulikay
naftulikay / makeqrs.py
Created Apr 30, 2014
Create QR Codes from a Google Authenticator SQLite Database
View makeqrs.py
#!/usr/bin/env python2.7
import argparse
import os
import qrcode
import qrcode.image.pil
import sqlite3
import sys
import urllib
@naftulikay
naftulikay / pulseaudio-switch.py
Created May 10, 2013
A quick and dirty script to transfer all PulseAudio streams between two sinks.
View pulseaudio-switch.py
#!/usr/bin/env python
from argparse import ArgumentParser
import json, os, re, subprocess
def main():
parser = ArgumentParser()
args = parser.parse_args()
@naftulikay
naftulikay / git-branch-clean
Created Sep 30, 2016
Usage: `git branch-clean`
View git-branch-clean
#!/bin/bash
# Usage: git branch-clean
#
# Removes all branches which have been successfully merged safely.
# Uses -d instead of -D to ensure only merged branches will be
# deleted.
#
# Install this script on your PATH somewhere.
set -ex
@naftulikay
naftulikay / generate-shadow-pass.py
Last active Mar 12, 2019
Generate an /etc/shadow compatible passphrase.
View generate-shadow-pass.py
#!/usr/bin/env python3
from crypt import crypt
from getpass import getpass
from random import SystemRandom ; random = SystemRandom()
from string import ascii_lowercase, ascii_uppercase, digits
salt_chars = ascii_lowercase + ascii_uppercase + digits
# generate a SHA-512 passphrase from user input with a 16 byte random salt
@naftulikay
naftulikay / generate-complex-passphrase.py
Created Oct 13, 2016
Generate a random password with a given problem space complexity.
View generate-complex-passphrase.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from math import ceil, log
from string import ascii_lowercase, ascii_uppercase, digits
# use system random
from random import SystemRandom
random = SystemRandom()
@naftulikay
naftulikay / .tmux.conf
Last active Nov 27, 2017
VIM and TMUX Configuration
View .tmux.conf
# default command key is "o"
set -g prefix C-o
# ------- HOTKEY CONFIGURATION -------
unbind %
unbind ,
# pipe splits horizontally in half
bind | split-window -h
# dash splits vertically in half
bind - split-window -v
View keybase.md

Keybase proof

I hereby claim:

  • I am naftulikay on github.
  • I am naftulikay (https://keybase.io/naftulikay) on keybase.
  • I have a public key whose fingerprint is 6D63 865D 1C6E EB0F 92C3 94A1 5D21 FFA2 7D8D CC66

To claim this, I am signing this object:

View keybase.md

Keybase proof

I hereby claim:

  • I am naftulikay on github.
  • I am rfkrocktk (https://keybase.io/rfkrocktk) on keybase.
  • I have a public key whose fingerprint is 6D63 865D 1C6E EB0F 92C3 94A1 5D21 FFA2 7D8D CC66

To claim this, I am signing this object:

You can’t perform that action at this time.