View devtools.html
<script type='application/javascript' src='devtools.js'></script>
View thinkpad-input.sh
synclient VertScrollDelta=-125 HorizScrollDelta=-125
synclient PalmDetect=1 PalmMinZ=100 PalmMinWidth=7
synclient RightButtonAreaTop=0 RightButtonAreaLeft=0
synclient CoastingFriction=75
TOUCHPAD='SynPS/2 Synaptics TouchPad'
xinput set-prop "$TOUCHPAD" 'Device Accel Profile' 2
xinput set-prop "$TOUCHPAD" 'Device Accel Constant Deceleration' 40
xinput set-prop "$TOUCHPAD" 'Device Accel Velocity Scaling' 10000
View battery.sh
#!/bin/bash
AC=$(cat /sys/class/power_supply/AC/online)
# 2 hour DPMS timeout on AC, 10 minute timeout on battery
[ $AC -eq 1 ] && DPMS=7200 || DPMS=600
for D in /tmp/.X11-unix/X*; do
[ -S "$D" ] && sudo -u $(stat -c %U $D) DISPLAY=:${D##*X} /usr/bin/xset dpms $DPMS $DPMS $DPMS
done
View hand-scroll.user.js
// ==UserScript==
// @name Hand Scroll
// @namespace https://gavinhungry.io
// @version 1.5.0
// @description Drag scrolling with mouse movement
// @author Gavin Lloyd <gavinhungry@gmail.com>
// @include *
// @grant none
// ==/UserScript==
View velop-web-admin.user.js
// ==UserScript==
// @name Linksys Velop Web-Based Admin
// @namespace https://gavinhungry.io
// @version 1.0.0
// @description Enable Web-Based Admin for Linksys Velop
// @author Gavin Lloyd <gavinhungry@gmail.com>
// @match http://192.168.1.1/*
// @match https//192.168.1.1/*
// @grant none
// ==/UserScript==
View org.gnome.ScreenSaver.py
#!/usr/bin/env python2
import dbus
import dbus.mainloop.glib
import dbus.service
import gobject
import psutil
class ScreenSaver(dbus.service.Object):
def __init__(self):
View owa-direct.user.js
// ==UserScript==
// @name OWA Direct Links
// @version 0.1.0
// @description Rewrite OWA Links to direct URL
// @author Gavin Lloyd <gavinhungry@gmail.com>
// @match https://webmail.example.tld/*
// @require https://cdn.jsdelivr.net/jquery/2/jquery.min.js
// @grant none
// ==/UserScript==
View keybase.md

Keybase proof

I hereby claim:

  • I am gavinhungry on github.
  • I am gavinhungry (https://keybase.io/gavinhungry) on keybase.
  • I have a public key whose fingerprint is 1450 B358 FCC7 992D 8C61 60F3 52CC 07C8 C7F4 A2F0

To claim this, I am signing this object:

View nestbox.user.js
// ==UserScript==
// @name Nestbox
// @description Restores Tweet application source description
// @version 1.2.1
// @license MIT
// @namespace gavinhungry.io
// @author Gavin Lloyd <gavinhungry@gmail.com>
//
// @include https://twitter.com/*
//
View npm-wedge.user.js
// ==UserScript==
// @name npm-wedge
// @author Gavin Lloyd <gavinhungry@gmail.com>
// @namespace gavinhungry.io
// @description List additional NPM registry info on npmjs package pages
// @include https://www.npmjs.com/package/*
// @require https://cdn.jsdelivr.net/jquery/2/jquery.min.js
// @grant GM_addStyle
// @grant GM_xmlhttpRequest
// @version 1.2.0