View switch.rb
#!/bin/env ruby
require 'rjoystick'
require 'atem'
require 'mysql2'
$AUDIO_THRESHOLD = 858803 * 2
$IP = "10.0.0.1"
$JOYSTICK = "/dev/input/js0"
# CREATE TABLE link_history (`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, `start_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `end_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00');
View icecast.xml
<icecast>
<location>Egham, UK</location>
<admin>com[DOT]insanityradio[AT]computing (reversed)</admin>
<limits>
<clients>100000</clients>
<sources>1000</sources>
<threadpool>10</threadpool>
<queue-size>524288</queue-size>
<client-timeout>30</client-timeout>
View ic3.rb
#!/usr/bin/env ruby
=begin
A quick and simple script to read "ic3" (Myriad) InstantCart files.
Brief overview of the really simple InstantCart file format:
Essentially a linear array of IC titles followed by 20 spaces for carts.
View makealias.rb
#!/usr/bin/env ruby
# Copyright (C) 2016 Jamie, index.hm
# Released under BSD (https://opensource.org/licenses/BSD-3-Clause)
require 'mysql2'
$config = {
:file => "/etc/courier/aliases/insanity",
:description => "Insanity Radio 103.2FM Alias Table",
View rotter.rb
#!/usr/bin/env ruby
# Super simple daemon to watch Rotter and ensure it doesn't crash
$config = {
:path => "/var/www/",
:timeout => 5,
:log => "/dev/null"
:pid => "/run/insanity-rotter.pid" }
View scroll.js
// ScrollEngine is a very small, simple, and efficient library for (smooth) scrolling on a web page.
// (C) index.hm 2015, released under the MIT licence - http://opensource.org/licenses/MIT
var EXPORTS = {};
ScrollEngine = new function(){
var _global_id;
// Usage: ScrollEngine._scroll(x:number, y:number)
View autoban.rb
#!/bin/env/ruby
# A more efficient and documented autoban.rb
# Jamie - index.hm. Released under MIT.
# This won't work with binary journal logs - the 'systemd/journal' gem doesn't work universally
$ssh_port = 1234
$network = ["127.0.0.0/8", "10.0.0.0/8", "192.168.0.0/16"]
require "shellwords"