Skip to content

Instantly share code, notes, and snippets.

View massenz's full-sized avatar
🏠
Working from home

Marco Massenzio massenz

🏠
Working from home
View GitHub Profile
@massenz
massenz / venv.sh
Created March 28, 2013 00:00
Derived from: https://gist.github.com/codysoyland/2198913 Enables automatic activation of a virtualenv once one navigates to a directory with a .venv file whose contents are the path to a virtual environment
#!/bin/bash
# venv.sh
#
# Installation:
# Add this line to your .bashrc or .bash-profile:
#
# source /path/to/venv.sh
#
# Whenever a directory has a file called `.venv` its contents
# will be interpreted as the path to a base directory of
@massenz
massenz / scp-pub-remote.sh
Created August 16, 2013 05:30
Having to type a thousand times the password when SSH'ing into a server commonly used is a pain: the obvious solution is to use key-based auth - this is a handy script that takes out even the effort of having to remember (not to mention) type up every time the same set of commands. You will have to enter the password to the remote host twice, bu…
#!/bin/bash
#
# Copies the PUB key to a server via SCP then adds it to
# .ssh/authorized_keys.
#
# Must be invoked like this:
# scp-pub-remote.sh user@server
declare -r REMOTE=$1
@massenz
massenz / truncate.cpp
Created September 4, 2013 23:05
A simple implementation of the Linux `truncate` function - this is missing in Mac OSX so I decided to implement it. The binary is a Release build for Mac OSX 10.8.4; should run in most versions.
/*
* truncate.cpp
*
* Created on: Sep 4, 2013
* Author: marco
*/
#include <iostream>
#include <stdio.h>
#include <unistd.h>
@massenz
massenz / SamplePlugin.java
Last active December 27, 2015 22:59
Dynamic plugins loading using JCL (https://github.com/kamranzafar/JCL/) This is an example of a plugin that can be used with the babysitter server (https://github.com/massenz/babysitter)
package com.rivermeadow.plugins.simple;
import com.rivermeadow.babysitter.alerts.AlertPlugin;
import com.rivermeadow.babysitter.alerts.Context;
import com.rivermeadow.babysitter.alerts.Pager;
import com.rivermeadow.babysitter.model.Server;
/**
* Simplest example of a ``babysitter`` plugin, does nothing but demonstrate how to create a pluggable component.
*
@massenz
massenz / Preferences.sublime.json
Last active December 30, 2015 02:19
My finely-tuned Sublime Text 2 personal preferences (you'll have to rename it - remove the .json: I'm using it only because Github loses the syntax highlight unless the extension is recognized).
{
"auto_complete_commit_on_tab": true,
"auto_complete_selector": "source - comment",
"margin": 4,
"rulers": [80, 100],
"draw_white_space": "all",
"ensure_newline_at_eof_on_save": true,
"highlight_line": true,
#!/bin/env python
__author__ = 'Marco Massenzio <m.massenzio (at) gmail com'
""" Simple python decorator example.
@see: http://codetrips.com/2014/01/27/python-decorators-again
"""
from functools import wraps
@massenz
massenz / main.cpp
Created June 14, 2016 05:43
Platformio fail to printf() floats
// AlertAvert.com (c) 2016. All rights reserved
//
// The code below has been adapted from tutorials on
// mbed.org - credits should go to ARM Ltd.
//
// Author: M. Massenzio
#include "mbed.h"
// USB out to the host PC - from a terminal window access
@massenz
massenz / README.rst
Created February 16, 2015 07:30
This will install all binaries and libraries for the SciPy Python environment, Cassandra and Spark on an AWS Ubuntu AMI instance. This assumes you are running this script as described in the README documentation.

HOW-TO Build SparkLab

Author
  1. Massenzio
Date

2015-01-22

Version

1.0.0

Scope

Personal Use

License

Apache 2

@massenz
massenz / repset_mongo.sh
Last active March 1, 2017 12:57
Creates and initializes a MongoDb replica set: allows the user to choose the number of members and the starting port number; this should also work on a remote host, but I have only tested it so far on localhost
#!/bin/bash
#
# Starts up a MongoDB replica set
#
# There is a lot of documentation about replica sets:
#
# http://docs.mongodb.org/manual/reference/replica-configuration/
# http://docs.mongodb.org/manual/administration/replica-sets/
#
# To read data from a SECONDARY, when in the client, use:
@massenz
massenz / alert
Last active April 2, 2017 11:24
Originally written for Mandrill (screw them), this script can send an email alert, for example, when a remote job fails or some other unexpected event happens: I'm using it on my QNAP TS-212 NAS to alert me about backup jobs failures and other abnormal events.
#!/bin/bash
#
# Failure reporter, logs to a well-known log file failure messages
#
# Created 2014-04-30, M. Massenzio (m.massenzio@gmail.com)
declare -r LOGFILE="/var/log/fail.log"
declare -r ALERT_ICON="/usr/share/icons/ubudao-style/actions/dialog-warning.png"
declare -r ERROR_ICON="/usr/share/icons/ubudao-style/actions/stock_dialog-error.png"