Skip to content

Instantly share code, notes, and snippets.

@movitto
movitto / barber.ino
Last active September 26, 2015 01:55
Bitcoin Aware Barber's Pole
//// Bitcoin Barber Shop Pole
//// Author: Mo Morsi <mo@morsi.org>
//// Arduino Controller Sketch
////
//// License: MIT
//// For use at the Syracuse Innovators Guild (sig315.org)
#include <SPI.h>
#include <Ethernet.h>
@movitto
movitto / db-dia.rb
Last active April 5, 2016 12:25
DB / Dia Diagram Comparison & Updater Tool
#!/usr/bin/ruby
# Read / write db related metadata to/from dia diagram
#
# Copyright (C) 2015-2016 - Red Hat Inc.
require 'zlib'
require 'nokogiri'
require 'optparse'
require 'active_record'
require 'active_support/core_ext/string'
@movitto
movitto / lvm-parser.rb
Created March 30, 2016 01:30
LVM Parser & Block Reader
# LVM Parser & Block Reader
#
# Copyright (C) 2016 Red Hat Inc
require 'optparse'
require 'ostruct'
require 'binary_struct'
### constants
@movitto
movitto / unmatched.rb
Created January 17, 2017 12:13
Unmatched Braces / Preprocessor Finder
#!/usr/bin/ruby
# search for unmatched '{' / '}' pairs and '#ifndef' / '#endif' pairs
# assuming that any given file should have fully matched sets of both
Dir.glob("src/**/*\.[h,cpp]").each { |src|
c = File.read(src)
ob = c.count('{')
cb = c.count('}')
od = c.count('#ifndef')
cd = c.count('#endif')
@movitto
movitto / parallel_tests.sh
Created January 28, 2017 01:49
Parallel Catch - Invokes philsquared/Catch tests in a parallel fashion (https://github.com/philsquared/Catch)
# runs tests in parallel
TEST_CMD="./build/test/run_unit_tests"
JOBS="8"
TAGS="$($TEST_CMD -l | grep Scenario -A 1 | grep -v Scenario | sort -u)"
IFS=' ' read -a SPLIT <<< $TAGS
NUM_TAGS=${#SPLIT[@]}
# so as to round up
PER_JOB=`expr $NUM_TAGS + $JOBS - 1`
@movitto
movitto / keyboard_in.rb
Created September 13, 2017 01:10
/dev/input/event keyboard parser
#!/usr/bin/ruby
# Read keyboard presses / release / holds on Linux
# Released under the MIT License
# Use binary_struct to process blobs
require_relative 'binary_struct'
##################!!!!######################
#!!!!CHANGE ME TO YOUR KEYBOARD DEVICE!!!!!#
############################################
@movitto
movitto / twitter-followers.rb
Created September 4, 2018 17:04
Small script to retrieve a twitter account's followers and report on new followers and 'unfollows'
#!/usr/bin/ruby
# Small script to retrieve a twitter account's followers
# and report on new followers and 'unfollows'
require 'twitter'
require_relative '../lib/wipple/config'
ACCOUNT = 'change_me'
AUTH = {
@movitto
movitto / rippled.html
Last active September 18, 2018 14:36
Small drop-in webpage to display rippled server status
<!--
Small drop-in webpage to display rippled server status.
To deploy download the following and place in the same web server directory as this file:
- https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.js
- https://github.com/ripple/ripple-lib/releases/download/1.0.0/ripple-1.0.0-min.js
- https://raw.githubusercontent.com/caldwell/renderjson/master/renderjson.js
Then change RIPPLED_URI below to the location of your rippled server.
-->
@movitto
movitto / rippled.sh
Last active November 7, 2018 21:10
Commands to setup a rippled validator on CentOS with a letsencrypt certificate
# Setup rippled validator on CentOS with a letsencrypt certificate.
# Run all commands as sudo unless otherwise indicated.
# Replace <HOSTNAME> with you full server hostname (ex. syracloud.net).
# Replace <COMPACT_HOSTNAME> with your server hostname minus periods (ex. syracloudnet).
# Replace <USER> with your login username
# Set system hostname to <HOSTNAME>
vim /etc/hostname
# Update the system
@movitto
movitto / psql-ssl.sh
Last active May 18, 2020 03:42
Setup postgresql server/client with self signed certs
# Instructions on how to setup secure postgresql server <-> client communication on two different machines.
# Set SERVER_HOSTNAME and CONNECTION_USER appropriately. Instructions are for Fedora 29, may need to be modified for other platforms
# Set DAYS to the number of days which you'd like certificates to be valid (after this time new client certificates will need to be created)
# General guide can be found here:
# https://www.howtoforge.com/postgresql-ssl-certificates
###