Skip to content

Instantly share code, notes, and snippets.

View csirac2's full-sized avatar

Paul Harvey csirac2

View GitHub Profile
@csirac2
csirac2 / btrfs-unstable-atime-bug.sh
Last active August 29, 2015 14:16
a test to show that atimes are always updating on empty dirs in read-only snapshots which were subvol parents, unlike plain empty dirs, regardless of mounting with noatime
#!/bin/sh
set -e
get_atime() {
ls -lad --time=atime --time-style='+%Y-%m-%dT%H:%M:%S%z' "$1" | tail -n+1 \
| cut -d ' ' -f6 -
}
FAIL=0
test_atime_stable() {
@csirac2
csirac2 / install-veracrypt.sh
Last active June 8, 2021 18:44
Install VeraCrypt headless for scripted environments
#!/bin/sh
# It's a little insane this installer cannot be run headless, perhaps for license
# agreement reasons. This will fetch, verify and extract the binary into
# /opt/veracrypt/bin. Perhaps one day I'll help make cryptsetup understand
# veracrypt instead
set -e
VERATARURL='http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=veracrypt&DownloadId=1372347&FileTime=130649793702230000&Build=20959'
VERASIGURL='http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=veracrypt&DownloadId=1372354&FileTime=130649793743570000&Build=20959'
VERASIGID=54DDD393
VERABIN=veracrypt-1.0f-1-setup-console-x64
@csirac2
csirac2 / disable-partman-hack_preseed.cfg
Last active September 7, 2022 06:34
disable partman from debian preseed
# Thanks to http://ubuntuforums.org/showthread.php?t=1411273 for inspiration..
# But what a disgusting nasty hack! This prevents partman from running (and
# mounts /target, creates /target/etc/fstab). d-i just can't cope with
# installation to partitionless block device... which is disappointing,
# because partitions are pointless for pvlinux guests.
#
# The hack works by ... wait for it... spawning a little while/sleep 1 script,
# waits for the partman-base.postinst file to appear (the preseed/earl_command
# hook is too early, and the partman/early_command is too late). Once it
# appears we replace this with a bit more script which does what we wanted
#!/bin/sh
#On Jessie this can now be:
. /lib/cryptsetup/cryptdisks.functions
FORCE_START=1 do_start
# `prepare_dir_tarball some_dir`
#
# Given a directory name in the pwd (with NO trailing slash), create or update
# `some_dir.tar.gz` only if the contents of the tarball would actually change.
#
# Although Dockerfiles allow you to ADD a directory, this isn't cacheable.
# Instead, maintain a tarball which allows you to ADD a host directory as a file
# which *is* cacheable. I.E.:
#
# Prior to running your container:
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index bc58078..5093ed5 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1021,6 +1021,15 @@ static void omap_hsmmc_do_irq(struct omap_hsmmc_host *host, int status)
struct mmc_data *data;
int end_cmd = 0, end_trans = 0;
+ if (!host->req_in_progress) {
+ do {
@csirac2
csirac2 / doit.sh
Created April 11, 2013 07:49
build new kernel deb
CONCURRENCY_LEVEL=3 make-kpkg --rootcmd fakeroot --append-to-version=.3 --initrd kernel_image kernel_headers modules_image
@csirac2
csirac2 / unsw_ent_mung.vim
Last active December 15, 2015 20:19
SIAD UNSW_ENT import into ALA sandbox
# Original header:
# Name Country State or province Secondary subdivision Locality Latitude Longitude Elevation meters Coll. start date Coll. end date Collector UID USI Number of specimens Sex Type status DeterminationVB DetBy DetDate Host Family Host name Host authority Host det HerbID Depository Host photo Locality photo _end
# Becomes:
# scientificName country stateProvince county verbatimLocality decimalLatitude decimalLongitude minimumElevationInMeters Coll. start date eventDate recordedBy catalogNumber recordNumber individualCount lifeStage sex typeStatus DeterminationVB identifiedBy dateIdentified Host Family Host name Host authority Host det HerbID Depository Host photo Locality photo _end associatedTaxa eventDate associatedMedia
# Break up the life stage/sex column
# %s/^\(\(\([^\t]*\)\t\)\{14\}\)\([^\ ]*\) \([^\t]*\)/\1\4\t\5/g
@csirac2
csirac2 / perlitdy.pl
Created April 13, 2012 01:07
perltidy filter for Method::Signatures & friends
#!/usr/bin/perl
package main;
use strict;
use warnings;
use Perl::Tidy();
my $secret = '# __PERLTIDY_IGNORING ###';
my $secret_sub = '# __PERLTIDY_KEYWORD: ';
sub perltidy {
@csirac2
csirac2 / drop.js
Created November 8, 2011 05:32
drop matching databases
use webs
db.map.find({_id : /^ParentWeb/i}).forEach(function (thing) { db = db.getMongo().getDB(thing.hash); db.dropDatabase(); });