~/code – tools distributed across all of my systems
Python Perl Shell C PHP Ruby Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
backup unborg: implement --mount Aug 18, 2018
bin finish 'emergency-su' rename Aug 18, 2018
desktop Merge branch 'master' of https://github.com/grawity/code Jul 29, 2018
devel goto-vim: improve perl matcher Jul 3, 2018
dist dist: clean up license texts Mar 17, 2018
irc irssi/*.pl: whitespace, and avoid deprecated "use vars" pragma Jul 27, 2018
kerberos Revert "pkinit: autodetect a .key file alongside the .crt" May 13, 2018
lib sec.pine.Passfile: .pine-passfile may be missing Jun 27, 2018
mail integrate everything that was in hacks/ back to the main repo May 21, 2018
media integrate everything that was in hacks/ back to the main repo May 21, 2018
misc libdropfox: fake filesystem f_type as well Aug 13, 2018
net add whois[46] wrappers Aug 18, 2018
obj do not cachedir-tag obj/ May 20, 2018
security rename 'emergency-sulogin' to 'emergency-su' Aug 18, 2018
snippets integrate everything that was in hacks/ back to the main repo May 21, 2018
system arch/kernel-post-upgrade: do not rely on legacy /run/lock existing Aug 2, 2018
term settitle: include tmux Feb 24, 2018
thirdparty import peekvc 0.1 from 0pointer.de Jun 1, 2018
.gitignore gitignore: remove system-local 'core' Jun 21, 2014
.mailmap mailmap: I used the incorrect realname in one place Oct 17, 2013
LICENSE dist: clean up license texts Mar 17, 2018
Makefile rename 'emergency-sulogin' to 'emergency-su' Aug 18, 2018
README.txt integrate everything that was in hacks/ back to the main repo May 21, 2018

README.txt

My giant repo o' random hacks.

Started off as your regular ~/bin dump – with two Finger implementations and a
web server written in PHP. Later got pushed over to ~/code, to make place for
the horde of overgrown aliases that have since taken over ~/bin (which I didn't
consider commit-worthy at first, but then I suddenly had 250 scripts in ~/code
and almost 200 in ~/bin and *five* different Finger implementations...)

tl;dr I write a lot of useless scripts

---

This repository is released under the MIT License, unless declared otherwise in
specific files. (Everything up to commit 93dbb8dd38eb92ddb4cc may also be used
under WTFPL v2.)

The generally useful stuff:

  desktop/
    dbus-name           – list, activate, wait for D-Bus names
    gnome-inhibit       – set & list power management inhibitors in GNOME
  media/
    gnome-mpris-inhibit – disable power management in GNOME while music is playing
    mpris               – control MPRISv2-capable players
  net/
    getpaste            – download pastebin posts as plain text (even ZeroBin)
    tapchown            – change owner of Linux tun/tap network interfaces
    testrad             – test RADIUS auth servers (wrapper for eapol_test)
  term/
    xterm-color-chooser – a color picker for ANSI & Xterm sequences
  x11/
    dbus-name           – list, activate, wait for D-Bus names
    gnome-inhibit       – set & list power management inhibitors in GNOME

The not really useful stuff:

  devel/
    git-find-blob       – find all Git commits that contain a given file
  misc/
    envcp               – borrow the environment of another process
    motd                – show a diff for /etc/motd upon login
    treeify             – translate a list of files to a fancy tree
  net/
    rdt                 – run a recursive rDNS trace
    sprunge             – post to the sprunge.us pastebin
  kerberos/
    kc                  – manage Kerberos ticket caches
    kl                  – like 'klist' except better
    pklist              – like 'klist' except machine-readable
  system/
    upower-monitor      – suspend when UPower claims it's low on battery

The "that's nice... but what's it good for?" stuff:

  lib/python/nullroute/
    authorized_keys.py  – parse ~/.ssh/authorized_keys
    sexp.py             – parse Ron Rivest's S-expressions
  misc/
    treeify             – translate a list of files to a fancy tree
    uniboxify           – convert ASCII box drawings to Unicode box drawings
  security/
    denettalk           – decrypt Nettalk "NCTCTC001"-encrypted messages
    dh                  – do a D-H key exchange over IRC or whatever
    ssh-duphosts        – clean up ~/.ssh/known_hosts
  system/
    locale-check        – half-assed attempt to verify your locale settings
    upower-monitor      – suspend when UPower claims it's low on battery

The rest:

  bin/
    – contains symlinks to all scripts, for my $PATH
  dist/
    – scripts dealing with this repository itself
  obj/
    – compiled binaries for C tools, to allow sharing `~/code` over NFS
  misc/
    – stuff that will, some day, be cleaned up and put in the right place

Moved elsewhere:

  accdb                 – plain-text account & password database
    <https://github.com/grawity/accdb>

  dzenify               – libnotify provider using dzen2
    <https://gist.github.com/grawity/d7d7e93d6c7215188592>

  NullCA                – personal X.509 CA scripts in Ruby
    <https://nullroute.eu.org/git/?p=hacks/nullca-scripts.git>

  ssh-publickeyd        – backend for SecureCRT's "public key assistant"
    <https://github.com/grawity/ssh-publickeyd>

  ~/bin                 – random junk
    <https://github.com/grawity/bin#readme>

Log:

  * 2009-11-28: initial commit of "simplehttpd"
  * 2010-01-01: initial commit of the "main" repository
  * 2014-07-29: cleaned up old branches; moved to refs/attic/* to avoid clutter
  * 2015-03-16: exported security/accdb
  * 2015-04-05: changed default license to MIT
  * 2015-07-10: forked to hacks.git
        - the original, code.git, trimmed down to a bare minimum
        - the fork, hacks.git, merged with Code Recycle Bin
  * 2017-02-01: cleaned up a lot of garbage
  * 2018-05-21: merged hacks.git and code.git again
        - it's still basically the code recycle bin

vim: ts=4:sw=4:et