Skip to content

Instantly share code, notes, and snippets.

@reox
reox / smallcubes_test.py
Created Jun 18, 2014
Print out the smallest numbers that are the sum of two cubes
View smallcubes_test.py
import itertools
x = range(1, 20)
solutions = {}
for a, b in itertools.combinations(x, 2):
sol = a ** 2 + b ** 2
if sol in solutions:
print("Found a solutions: %d^2 + %d^2 = %d^2 + %d^2 = %d " % (a, b, solutions[sol][0], solutions[sol][1], sol))
@reox
reox / ip6tables.sh
Created Jul 14, 2014
ipv6 firewall script
View ip6tables.sh
if [ "$1" = "--reset" ]; then
ip6tables -F INPUT
ip6tables -F FORWARD
ip6tables -F OUTPUT
ip6tables -P INPUT ACCEPT
ip6tables -P OUTPUT ACCEPT
ip6tables -P FORWARD ACCEPT
else
# Disable processing of any RH0 packet
@reox
reox / logger.py
Created Jul 18, 2014
Sample Logger - return a pretty straight forward and configured logger
View logger.py
import logging
import logging.handlers
def get_logger(name, logfile=""):
"""
Get a logger with a given name.
The logger will be configured to match other loggers.
Keyword arguments:
@reox
reox / check_multiple_startswith.py
Last active Aug 29, 2015
Check if string starts with multiple substrings
View check_multiple_startswith.py
words = ["foo", "bar", "blafoo"]
check_list = lambda x, y: map(lambda z: not x.startswith(z), y)
if not all(check_list("foobarfoo", words)):
print("String starts with one of the substrings")
else:
print("String does not start with one of the substrings")
@reox
reox / show_valid_certs.sh
Created Oct 19, 2014
Print out information about non valid certificates and certificates that will run out in less than 30 days.
View show_valid_certs.sh
#!/bin/bash
# Show the validity of certificate files
# If the certificate will run out in less than one month, a warning is shown
# If the certificate is not valid anymore, an error message is shown
# Valid certificates are not printed out
for cert in /etc/nginx/ssl/*.crt; do
d1=$(date -d "$(openssl x509 -noout -dates -in $cert | grep notAfter | cut -d '=' -f 2)" +%s)
d2=$(date +%s)
@reox
reox / format_time.py
Created Jan 8, 2015
Format seconds to human readable format
View format_time.py
import time
def format_time(time):
m, s = divmod(time, 60)
h, m = divmod(m, 60)
d, h = divmod(h, 24)
# could be extended here to weeks, months, years, ...
# but the exact calculation of months, weeks and years is a little bit
# more difficult... so we leave it as it is.
View ldr.py
"""
Display Random Data using matplotlib's animation function
forked from:
Author: Mahesh Venkitachalam
Website: electronut.in
"""
import sys
import numpy as np
@reox
reox / spiral.ngc
Last active Aug 29, 2015
Mill a spiral for a hole
View spiral.ngc
G21 ;mm
G90 ; absolute coordinates
G64 ; continuous mode for corners
G0 Z40.000000
F1800
M3 S6000
G54
G17
@reox
reox / testmydisk.sh
Last active Aug 29, 2015
testmydisk
View testmydisk.sh
#!/bin/bash
# written by reox 2015
# test the read speed of your disk.
# this script will test random access, you can remove the shuf command in the for loop to have linear access too.
# after you run the script, plot the data with your favourite plotting lib.
set +x
set +e
sectors=$(fdisk -l $1 | egrep -o "[0-9]+ sectors" | cut -f 1 -d " ")
@reox
reox / git-pull.sh
Created Nov 25, 2015
Cozy way to wait for a fellow to push the changes... just play jeopardy music until git pull succed!
View git-pull.sh
#!/bin/sh
# Get jeopardy.mp4 from:
# clive https://www.youtube.com/watch?v=0Wi8Fv0AJA4
# ffmpeg -i <file> -vn -acodec copy "jeopardy.mp"
mpv -loop $(dirname $0)/jeopardy.mp4 >/dev/null 2>&1 &
PID=$!
while [ "$(git pull)" = "Already up-to-date." ]; do
echo -n "."
You can’t perform that action at this time.