Skip to content

Instantly share code, notes, and snippets.

Raphael Michel raphaelm

Block or report user

Report or block raphaelm

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@raphaelm
raphaelm / storage.py
Created Mar 20, 2018
NanoCDN Storage driver
View storage.py
import hashlib
import urllib.parse
import os
from io import BytesIO, StringIO
import requests
from django.conf import settings
from django.core.exceptions import SuspiciousFileOperation
from django.core.files import File
@raphaelm
raphaelm / wichteln.py
Last active Dec 22, 2015 — forked from P3nny/wichteln.py
Wichtel-Programm für die Familienweihnachtsfeier
View wichteln.py
# -*- coding: UTF-8 -*-
# Patricia Ennenbach - 15-12-21 - Wichteln
# Aufgaben:
# - Jedes Kind soll einem Kind etwas schenken
# - Kinder sollen sich nicht selbst beschenken
# - Kinder sollen nicht ihre Geschwister beschenken
# - Jedes Kind soll nur einmal beschenkt werden
# Ich habe den Hauptteil relativ stark verändert, aus zwei Gründen:
# * Du hast die Liste "kinder" bearbeitet, während du in einer Schleife
@raphaelm
raphaelm / INSTRUCTIONS.md
Last active Mar 14, 2018
letsencrypt.sh ansible role
View INSTRUCTIONS.md

Step zero: Install this role by creating the directories roles/letsencrypt/, roles/letsencrypt/files/ and roles/letsencrypt/tasks/. Then save the tasks.yml from this gist as roles/letsencrypt/tasks/main.yml and config.sh from this gist as roles/letsencrypt/files/config.sh.

Step one: Add the following to your nginx server config

location /.well-known/acme-challenge {
    root /var/www/letsencrypt;
}

Step two: Execute the ansible role, e.g. using

View docker_clean_vfs.py
#!/usr/bin/env python
"""
From https://github.com/docker/docker/issues/6354#issuecomment-60817733
All credit goes to https://github.com/adamhadani
Check all existing Docker containers for their mapped paths, and then purge any
zombie directories in docker's volumes directory which don't correspond to an
existing container.
"""
@raphaelm
raphaelm / GPN14-CTF.md
Last active Aug 29, 2015
GPN14 CTF WriteUp
View GPN14-CTF.md
View keybase.md

Keybase proof

I hereby claim:

  • I am raphaelm on github.
  • I am raphaelm (https://keybase.io/raphaelm) on keybase.
  • I have a public key whose fingerprint is 6654 0831 7895 7043 9A44 C80D 4F70 B444 E1C6 8BA1

To claim this, I am signing this object:

@raphaelm
raphaelm / decrypt.py
Created Aug 19, 2013
EasyMoney (Android expense tracker) backup files are obfuscated. This script decrypts them and stores the data in an SQLite3 file (just like it is stored on the Android device).
View decrypt.py
#!/usr/bin/env python3
import sys
import re
import sqlite3
import os.path
try:
INFILE = sys.argv[1]
OUTFILE = sys.argv[2]
except:
View .zshrc
# History
HISTFILE=~/.histfile
HISTSIZE=1000
SAVEHIST=1000
zstyle :compinstall filename '/home/raphael/.zshrc'
# Load colors
autoload -U colors && colors
@raphaelm
raphaelm / elements.py
Last active Dec 12, 2015
Checks whether it is possible to compose a given name out of chemical element symbols, like Caroline out of Carbon (C), Argon (Ar), Oxygen (O), Lithium (Li) and Neon (Ne).
View elements.py
#!/usr/bin/env python
#
# elements.py
#
# Checks whether it is possible to compose a given name out of chemical
# element symbols, like Caroline out of Carbon (C), Argon (Ar), Oxygen (O)
# Lithium (Li) and Neon (Ne).
#
# The implementation consists of a simple backtracking algorithm.
#
@raphaelm
raphaelm / my_i3status.bash
Created Dec 28, 2012
Thinkpad X230 mic mute button status displayed in i3status, because even though you can make the button function via an ACPI event, it is impossible to use the button's LED with kernel 3.5 Requires: jshon
View my_i3status.bash
#!/bin/bash
i3status | while :
do
read line
if [[ "$line" == *"full_text"* ]] ; then
if ! amixer sget 'Capture',0 | grep '\[on\]' > /dev/null 2>&1 ; then
if [[ "$line" == ","* ]]; then
echo -n ","
fi
echo $line | sed s/^,//g | jshon -n object -i 0 -e 0 -s "name" -i "micmute" -s "mic muted" -i "full_text" -p | tr '\n' ' '
You can’t perform that action at this time.