Skip to content

Instantly share code, notes, and snippets.

View brettvitaz's full-sized avatar

Brett Vitaz brettvitaz

View GitHub Profile
@brettvitaz
brettvitaz / build_miner.sh
Last active August 29, 2015 14:06
Minera miner build script
#!/bin/bash
set -u
set -e
LINK_ONLY=0
BUILD_OK=0
MINERA_PATH="/var/www/minera"
BINARY_PATH="$MINERA_PATH/minera-bin"
@brettvitaz
brettvitaz / multi_range.py
Last active August 29, 2015 14:27
MultiRange will make complex range sequences from a formatted string.
class MultiRange:
def __init__(self, range_str, **kwargs):
"""
MultiRange return a complex number sequence from a formatted string.
Range formats:
'Start[:Stop[:Step]]' - Start number (or single number), stop number (optional), step value (optional)
Groups are separated by ','.
For example, `MultiRange('1:3,5,7:9')` will result in (1,2,3,5,7,8,9).
Text substitution can be specified by adding a keyword argument of the same name.
@brettvitaz
brettvitaz / prompting_combo_box.py
Last active September 14, 2015 21:13
Combo Box that can match choices as you type. `wxPython` `combobox`
"""
This module is a modified version of a code sample from
http://wiki.wxpython.org/Combo%20Box%20that%20Suggests%20Options
"""
import wx
class CBEvent(object):
normal = 0
ignore = 1
@brettvitaz
brettvitaz / short_lived_file_server.py
Last active September 16, 2015 18:38
Start a temporary HTTP to serve a quick file and bail.
import signal
import time
import threading
import BaseHTTPServer
import SimpleHTTPServer
start = time.time()
run_time = 60
@brettvitaz
brettvitaz / ldap_notation_parser.py
Created October 2, 2015 17:38
Parse and process LDAP search filter statement conditional arguments.
import functools
import re
class LdapNotationParser(object):
def __init__(self, parse_str, arg1_fn=None, arg2_fn=None):
"""
Parse and process LDAP search filter statement conditional arguments.
Optional functions can be applied to either argument in the statement.
Example usage:
@brettvitaz
brettvitaz / csv_reader_wrapper.py
Created October 3, 2015 01:15
Wrapper for csv reader to give len() capabilities. *** Doesn't work as expected. ***
class CsvReaderWrapper(object):
def __init__(self, csv_file, **kwargs):
self._csv_file = csv_file
self._reader = csv.reader(csv_file, **kwargs)
def __len__(self):
pos = self._csv_file.tell()
self._csv_file.seek(0)
items = 0
for items, _ in enumerate(self._reader):
-- 1. Create a new generic password entry in Keychain Access called "WHATEVER_AnyConnect_VPN" (the name in Keychain access must match that in line 39 below) with your password for the Cisco AnyConnect VPN server.
-- 2. Open this script in Script Editor (both this and the above are in the Applications->Utilities folder) and "Save as.." an Application (.app) with desired name.
-- 3. Open Security & Privacy System Preferences, go to Privacy, Accessibility.
-- 4. Enable the above .app so it can access Accessibility
-- 5. Copy and paste a nice icon on the generic Applescript icon (I used a copy of the default AnyConnect one)
-- 6. Add the new .app to /Users/[yourshortname]/Applications with a shortcut to your Dock
-- 7. Enjoy the fast connection with no need to enter password and increased security of not having a sensitive password stored as plain text
-- 8. Run script again to close connection
-- AnyConnect now refered to as targetApp
@brettvitaz
brettvitaz / csd-wrapper.sh
Last active February 10, 2018 08:32 — forked from l0ki000/csd-wrapper.sh
Cisco Anyconnect CSD wrapper for OpenConnect (exhanced to autodownload and autoupdate hostscan)
#!/usr/bin/env bash
# Cisco Anyconnect CSD wrapper for OpenConnect
# Requirements:
# - wget (brew install wget)
# - md5sum (brew install md5sha1sum)
# Enter your vpn host here
#CSD_HOSTNAME=
if [[ -z ${CSD_HOSTNAME} ]]
then
// Includes functions for exporting active sheet or all sheets as JSON object (also Python object syntax compatible).
// Tweak the makePrettyJSON_ function to customize what kind of JSON to export.
var FORMAT_ONELINE = 'One-line';
var FORMAT_MULTILINE = 'Multi-line';
var FORMAT_PRETTY = 'Pretty';
var LANGUAGE_JS = 'JavaScript';
var LANGUAGE_PYTHON = 'Python';
@brettvitaz
brettvitaz / no_motion_light_off.yaml
Last active January 11, 2023 21:10
Home Assistant Blueprint: Turn off a light when no motion is detected.
blueprint:
name: No Motion - Light Off
description: Turn off a light when no motion is detected.
domain: automation
source_url: https://gist.github.com/brettvitaz/223151868704e40ddac8023df06be7f0
input:
motion_entity:
name: Motion Sensor
selector:
entity: