Skip to content

Instantly share code, notes, and snippets.

@meise
meise / builder.rb
Created November 9, 2012 17:46
zsh completion builder for shorewall and shorewall6 main commands
#!/usr/bin/env ruby
# encoding: utf-8
require 'pathname'
['shorewall', 'shorewall6'].each do |shorewall_version|
if %x{whereis #{shorewall_version}}.split[1].nil?
puts "#{shorewall_version} not installed."
else
commands = {}
@meise
meise / update-virtual-machine
Created November 15, 2012 11:52
Running security updates on debian based systems managed with libvirt and accessible via ssh.
#!/bin/sh
# Running security updates on debian based systems managed with libvirt and
# accessible via ssh.
# Tmux, virsh and ssh are needed for this script.
vms=`virsh list --name`
if [ -z "$TMUX" ]; then
@meise
meise / config
Created December 4, 2012 12:39
script to capture current i3 workspace
bindsym $mod+Shift+S exec /usr/local/bin/screenshot
#!/usr/bin/env ruby
# encoding: utf-8
require 'json'
batctl = `sudo batctl vd json -n`
access_points, clients = [], []
batctl.each_line do |line|
@meise
meise / cron
Last active December 17, 2015 09:09
Script to login into dyndns.com automatically every week.
@weekly /usr/local/bin/ruby ~/dyndns_login.rb
@meise
meise / frab_xml2doku_wiki.rb
Created September 2, 2013 17:53
Create doku wiki table with all talks available in frab xml export to track post-processing status.
#!/usr/bin/env ruby
# encoding: utf-8
require 'open-uri'
require 'nokogiri'
xml_data = Nokogiri::XML(open("http://programm.froscon.org/2013/schedule.xml"))
conference = xml_data.xpath('//conference/title').text
days = xml_data.xpath('//*/day')
@meise
meise / layout.haml
Created September 9, 2013 12:31
dashing haml example files
!!!
%html{:lang => "en"}
%head
%meta{:charset => "utf-8"}/
%meta{:content => "", :name => "description"}/
%meta{:content => "width=device-width", :name => "viewport"}/
%meta{:content => "IE=edge,chrome=1", "http-equiv" => "X-UA-Compatible"}/
%title= yield_content(:title)
/ The javascript and css are managed by sprockets. The files can be found in the /assets folder
%script{:src => "/assets/application.js", :type => "text/javascript"}
@meise
meise / 1-qstat_cron_check
Created May 29, 2014 22:00
Check qmail mesaagequeue status
#!/bin/sh
MAIL_BIN=`command -v mail`
QMAIL_QUEUE_SIZE=`/var/qmail/bin/qmail-qstat | grep 'messages in queue:' | awk '{print $NF}'`
function send_notification_mail() {
$MAIL_BIN -s "WARNING: MAILQ critical on $HOSTNAME - size $QMAIL_QUEUE_SIZE" "todesadmin@example.tdl" <<EOF
Messages in queue: $QMAIL_QUEUE_SIZE
EOF
}
@meise
meise / ffprobe_parser.rb
Last active August 29, 2015 14:03
ffprobe output parser for deprecated ffprobe versions without json output.
require 'pathname'
require 'open3'
# ffprobe output parser for deprecated ffprobe versions.
class FfprobeParser
# Get media properties for given file.
#
# @example Get properties for a given file.
# FfprobeParser.properties('/srv/file/video.mp4')
@meise
meise / frab_xml2info-beamer_json.rb
Created July 6, 2014 20:53
Ruby script that converts frab xml output file into info-beamer schedule.json file needed for https://github.com/dividuum/info-beamer-nodes/tree/master/30c3-room
require "rexml/document"
require 'pathname'
require 'json'
require 'date'
SCHEDULE_XML = Pathname('schedule.xml')
# C01 or B05/B06 or B07/B08 or A08
ROOM_PATTERN = 'C01|B05\/B06|B07\/B08|B09|A08'
# Lunch or Coffe Break or Breakfast
SKIP_EVENTS = '[Ll]unch|[Cc]offee\s[Bb]reak|[Bb]reakfast'