Skip to content

Instantly share code, notes, and snippets.

@rcarmo
rcarmo / gist:cbd315bf4b058c23b65505d4c0a7c99c
Created April 20, 2019 15:59 — forked from nosuchuser/gist:21db3fdd9f4b80bf0910f8b8b6ea2f63
dnsmasq.conf configuration for vodafone IPTV
server=/.iptvpoc.alu/.discovery.iptv.microsoft.com/.iptv.vodafone.pt/.iptvdiscovery/.ims.vodafone.pt/192.168.1.1
@rcarmo
rcarmo / Makefile
Created December 25, 2018 16:38
Backup HomeKit data
export [email protected]:~/.config/
export TARGET?=home.lan
export TAG_DATE=`date -u +"%Y%m%d"`
.PHONY: snapshot init
init:
mkdir -p $(TARGET)
git init
#!/bin/bash
# instant-rsyncd lets you quickly set up and start a simple, unprivileged rsync
# daemon with a single module in the current directory. I've found it
# invaluable for quick testing, and I use it when writing a list of commands
# that people can paste into a terminal to reproduce a daemon-related bug.
# Sysadmins deploying an rsync daemon for the first time may find it helpful as
# a starting point.
#
# Usage: instant-rsyncd MODULE PORT RSYNCD-USERNAME [RSYNC-PATH]
@rcarmo
rcarmo / ssdp.py
Last active September 24, 2018 12:49
Quick and dirty SSDP/UPNP/Mediaroom discovery
from http.client import HTTPResponse
from io import BytesIO
from config import log
from struct import pack
from socket import AF_INET, SOCK_DGRAM, INADDR_ANY, IPPROTO_IP, IPPROTO_UDP, IP_ADD_MEMBERSHIP, IP_MULTICAST_TTL, SOL_SOCKET, SO_REUSEADDR, SO_REUSEPORT, getaddrinfo, socket, setdefaulttimeout, inet_pton, timeout as SocketTimeout
from utils import etree_to_dict
from xml.etree import ElementTree
from time import time
from dateutil.parser import parse as parse_date
@rcarmo
rcarmo / azds-osx-setup.sh
Last active August 8, 2018 16:23
Set up Azure Dev Spaces on Mac without sudo
#!/bin/bash
info() { echo "[INFO] $*" ; }
fatal() { echo "[FATAL] $*" ; exit 1 ; }
AZDS_SRC="https://azuredevspacestools.blob.core.windows.net/azdssetup"
AZDS_ZIP=AzdsCliMacOSX.zip
AZDS_LIB="$HOME/Library/Azure/lib/azds-cli"
AZDS_BIN="$HOME/Library/Azure/bin/azds"
KUBECTL_PATH="$AZDS_LIB/kubectl/osx/kubectl"
@rcarmo
rcarmo / pronto2broadlink.py
Last active April 12, 2018 02:10 — forked from appden/pronto2broadlink.py
Convert Pronto IR hex codes to LIRC pulses then Broadlink packets compatible with python-broadlink
@rcarmo
rcarmo / rPi3-ap-setup.sh
Last active September 25, 2017 14:10 — forked from Lewiscowles1986/rPi3-ap-setup.sh
Raspberry Pi 3 access-point-setup
#!/bin/bash
#
# Tweaked for Ubuntu
#
if [ "$EUID" -ne 0 ]
then echo "Must be root"
exit
fi
@rcarmo
rcarmo / webarchive.js
Created August 18, 2017 11:53
ES6 script for creating web site snapshots in .webarchive format (WIP)
const bplist = require('bplist-creator'),
request = require('request'),
xpath = require('xpath'),
dom = require('xmldom').DOMParser,
url = require('url'),
fs = require('fs');
const USER_AGENT = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30',
ACCEPT_HEADERS = {
@rcarmo
rcarmo / puppeteer.js
Last active January 10, 2022 03:49
Trying to get a single-page PDF screenshot out of puppeteer
const puppeteer = require('puppeteer');
function sleep(ms){
return new Promise(resolve=>{
setTimeout(resolve,ms)
})
}
(async() => {
@rcarmo
rcarmo / 0-monitor.py
Last active November 21, 2018 12:10
EnviroPHAT events to Azure IoT Hub, with Stream Analytics output to Azure Data Lake and PowerBI
#!/usr/bin/env python
# Minimalist environmental data logger to Azure IoT Hub
# Rui Carmo, November 2018
from envirophat import light, motion, weather, leds
from base64 import b64encode, b64decode
from hashlib import sha256
from time import time, sleep
from urllib import quote_plus, urlencode