Skip to content

Instantly share code, notes, and snippets.

View h0tw1r3's full-sized avatar
🏝️
Living the dream

Jeffrey Clark h0tw1r3

🏝️
Living the dream
View GitHub Profile
#!/bin/env bash
#
# Parallel recursive RAW to JPEG + meta converter
#
# Output into relative JPEG directory
#
# Requires: dcraw, cjpeg, exiv2
# any argument means verbose...
if [ ${#} -ne 0 ]; then
@h0tw1r3
h0tw1r3 / rclocal.service
Last active January 18, 2017 15:56
systemd rc.local compatibility
[Unit]
Description=/etc/rc.local Compatibility
DefaultDependencies=false
ConditionFileIsExecutable=/etc/rc.local
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/etc/rc.local
TimeoutSec=0
@h0tw1r3
h0tw1r3 / fstab.pp
Created February 26, 2017 02:24
Hacky way to apply mount options to fstab entries
class profile::fstab {
define fstab::mount($options) {
$mount = $title
exec { "fstab_remount_${mount}":
command => "/bin/env mount -o remount ${title}",
refreshonly => true
}
@h0tw1r3
h0tw1r3 / superscrub.pl
Last active March 6, 2017 18:31
Recurse directory tree, scrubbing lines based that match pattern list. Bzip compressed files supported.
#!/usr/bin/env perl
# Recurse tree for files, scrubbing lines based on pattern list
# Copyright: 2017 Jeffrey Clark <[email protected]>
# License: GNU GPL v3+
use strict;
use warnings;
no if $] >= 5.017011, warnings => 'experimental::smartmatch';
@h0tw1r3
h0tw1r3 / init.pp
Last active August 3, 2017 15:12
Puppet CA subjectAltName support (RFC 3280 4.2.1.7, 1. paragraph)
file { "puppet-ca-subjectaltname-patch":
path => "${::rubysitedir}/puppet/vendor/load_ca_hack.rb",
mode => '0644',
source => "puppet:///files/puppet/load_ca_hack.rb",
notify => Service[puppetmaster],
}
@h0tw1r3
h0tw1r3 / syslog-ng.conf
Created October 22, 2017 11:57
Syslog-ng 3.6.4 configuration
@version:3.6
@include "scl.conf"
options {
flush-timeout(2000);
chain-hostnames(no);
use-dns(yes);
use-fqdn(no);
create-dirs(yes);
keep-hostname(yes);
@h0tw1r3
h0tw1r3 / all-libvirt-hooks
Created October 7, 2018 19:40
hooks.d for libvirt
#!/bin/bash
# Copy or link this script to /etc/libvirt/hooks/{network,qemu,daemon,lxc}
TYPE=$(basename $0)
HOOKS_PATH="/etc/libvirt/hooks.d/${TYPE}/${1}"
[ ! -e "${HOOKS_PATH}" ] && exit 0
if [ -x "${HOOKS_PATH}/${2}/${3}" ] ; then
@h0tw1r3
h0tw1r3 / nic.rb
Created November 6, 2018 09:07
nic fact for puppet gathers speed, duplex, state, slaves, device module, carrier, etc
# Fact: nic { speed, state, duplex, ... }
#
# Copyright: Jeffrey Clark
# License: GPLv3
require 'pathname'
nic = Hash.new
ifaces = Facter.value(:interfaces)
#!/usr/bin/env python2
#
# lxc.hook.pre-start
#
# remounts proxmox container mounts with noatime for performance
#
# copy this file to /usr/share/lxc/hooks/lxc-proxmox-noatime
# create /usr/share/lxc/config/common.conf.d/99-mount-noatime.conf
# with contents: lxc.hook.pre-mount /usr/share/lxc/hooks/lxc-proxmox-noatime
@h0tw1r3
h0tw1r3 / nsca-ng.spec
Created January 8, 2020 21:03
RPM spec for packaging nsca-ng 1.6 tested on RHEL/CentOS 6 and 7
%if 0%{?fedora} > 17 || 0%{?rhel} > 6
%global systemd_support 1
%else
%global systemd_support 0
%endif
Summary: A modern replacement for NSCA
Name: nsca-ng
Version: 1.6
Release: 1%{?dist}