Skip to content

Instantly share code, notes, and snippets.

View peelman's full-sized avatar

Nick Peelman peelman

View GitHub Profile
@peelman
peelman / README.md
Created October 12, 2016 20:07
check_multiaddr.pl

A modification to the decade-old check_multiaddr perl script so that it doesn't chop off output from the called script.

#/bin/bash
IP="10.x.x.x"
#Look for number of received pings, if 0 received then restart OpenVPN service
RESULT=`ping -c 2 -W 1 $IP | grep transmitted | awk '{print $4}'`
if [ $? -ne 0 ] && [ $RESULT -eq 0 ]
then
@peelman
peelman / mac_regex.txt
Created August 17, 2016 12:15
regex for mac addresses
(([0-9a-f]{2}:){5}[0-9a-f]{2})
@peelman
peelman / pfsense-backup.sh
Created July 27, 2016 12:03
Backup pfSense firewalls remotely
#!/bin/sh
#
######################################################################################################
#
# Description:
# Backup pfSense 2.3 Firewalls to Local Disk
#
######################################################################################################
#
# Author: Nick Peelman
@peelman
peelman / README.md
Last active March 31, 2017 12:18
A quick Ruby Script to grab the weather from forecast.io and display the current real temp, current apparent temp, and current conditions in GeekTool.

Example:

/Users/peelman/.rbenv/shims/ruby ~/bin/weather.rb --lat 38.9456155 --long -85.8804469 --key da39a3ee5e6b4b0d3255bfef95601890afd80709

@peelman
peelman / puppetlabs.pp
Created July 12, 2016 12:16 — forked from garthk/puppetlabs.pp
Use Puppet to ensure Ubuntu can get the latest Puppet
class puppetlabs {
# Install Puppet repository and call apt-get update
case $operatingsystem {
ubuntu: {
$key = "4BD6EC30"
exec { 'apt-key puppetlabs':
path => "/bin:/usr/bin",
unless => "apt-key list | grep '${key}' | grep -v expired",
command => "apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ${key}",
}
@peelman
peelman / DashingUnifiVideo.md
Last active January 20, 2016 11:50 — forked from tracstarr/DashingUnifiVideo.md
Dashing UnifiVideo Widget

Dashing.io Widget for UnifiVideo NVR

This method uses API Key access so I suggest you setup a guest account with API access but limited (Visible and View Feed) access. Then login as the guest user, enable API access, and generate a new key. Copy the key for use.

Switch to the Devices tab and open the Configure dialog for the cam. On the Details tab, right-click the thumbnail view and Copy the image URL to the clipboard. It will look similar to the following if pasted to an address bar or text editor: http://192.168.1.105:7443//api/2.0/snapshot/camera/05a2bc63-d1ce-399f-8327-3a19b0cd3e8f?width=%d&force=true

The guid after /camera/ is what you want to use in the unifivideo.rb file.

You can setup as many cameras as you want, just add a name and UUID for each to the secrets/unifi.yml file.

@peelman
peelman / README.md
Last active November 11, 2015 21:11 — forked from bitflingr/README.md
Dashing widget for puppetdb

##Description Simple Dashing widget (and associated job) to display general puppetdb status. Pulled the API calls from Puppetboard.

WARNING: This only works if puppetdb is listening on HTTP. I have not gotten around to getting this to work with SSL client certificates yet. If you know how, please leave them at the comments below.

##Screenshot

##Dependencies None

@peelman
peelman / README.md
Created November 4, 2015 17:59 — forked from roelentless/README.md
Countdown widget for Dashing

Description

Simple Dashing widget to countdown until a certain moment. Flashes the widget when finished.

##Usage

To use this widget, copy countdown.html, countdown.coffee, and countdown.scss into the /widgets/countdown directory.

To include the widget in a dashboard, add the following snippet to the dashboard layout file:

@peelman
peelman / ping.rb
Created October 30, 2015 20:59 — forked from DiogoAndre/ping.rb
Simple ICMP Ping script in Ruby. Using the Net-Ping gem https://github.com/djberg96/net-ping
require 'net/ping'
@icmp = Net::Ping::ICMP.new('142.40.81.34')
rtary = []
pingfails = 0
repeat = 5
puts 'starting to ping'
(1..repeat).each do
if @icmp.ping