(Have a complaint about this email? Want to make it better, fix a typo, or add more info? Fork the gist on GitHub! Or, click through to read a rendered version.)
Hello Hackers-
#!/bin/sh | |
for n in `git status --porcelain | grep -E '^(M|A)' | grep -E '\.json$' | awk '{print $2}'`; do | |
if ! python -m json.tool $n > /dev/null; then | |
echo "$n failed to pass json sanity checks" | |
exit 1; | |
fi | |
done |
#define _BSD_SOURCE | |
#include <unistd.h> | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <stdarg.h> | |
#include <string.h> | |
#include <strings.h> | |
#include <ctype.h> | |
#include <sys/time.h> | |
#include <time.h> |
Hello Hackers-
(This wrap up is a little late--you can blame life.)
Thanks to Lot18 for hosting us! BTW, if it wasn't obvious from all the wine, they sell wine online.
Hello Hackers-
Thanks to Harvest for being wonderful hosts! Plenty of beer, soda, vegan pizza and even some candy! It was a party like no other, especially thanks to you all.
Sorry for the late wrap up email! We've been too busy obsessing over /usr/sbin/powertop output late at night...
Hello Hackers-
Thanks to ebay/hunch/svpply for hosting us! The beer was a plenty, and the pizza too. Be sure to bid on tickets to the next Hack and Tell!
I think that people really use software licenses to express intentions, and don’t really read the details of the licenses. So I think that licenses should be made as simple as possible, so that they don’t disagree with intentions… thus, haiku licensing: | |
PD: do what you feel like / since the work is abandoned / the law doesn’t care | |
MIT: take my code with you / and do whatever you want / but please don’t blame me | |
LGPL: you can copy this / but make modified versions / free in source code form | |
MPL: like LGPL / except netscape is allowed / to change the license | |
GPL: if you use this code / you and your children’s children / must make your source free | |
RIAA: if you touch this file / my lawyers will come kill you / so kindly refrain |
export SSH_AUTH_SOCK=$HOME/.ssh/agent.sock | |
if ! ([ -S "$SSH_AUTH_SOCK" ] && { ssh-add -l >& /dev/null || [ $? -ne 2 ]; }) ; then | |
echo "Starting agent..." | |
eval "$(ssh-agent -s -a $SSH_AUTH_SOCK)" > /dev/null | |
fi |
/* | |
Yeah, so obviously I need to use a better salt for the key derivation, and of course I need to do a better job all together with other things (IV, etc). | |
This is just a test run for using libgcrypt to do symmetric encryption, however. | |
GCRY_KDF_PBKDF2 | |
gcry_kdf_derive ( const void *passphrase, size_t passphraselen, int algo, int subalgo, const void *salt, size_t saltlen, unsigned long iterations, size_t keysize, void *keybuffer ) |
^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^/^\^|^/^-^\^/^-^\^|^-^\^|^/^\^|^ | |
/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\ | |
^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^ | |
\^|^/^\^|^/^-^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/ | |
^-^|^/^-^\^/^-^\^|^-^\^|^/^\^-^\^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^ | |
-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^| | |
^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^ | |
|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^- | |
^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^ | |
/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^|^/^-^\^/^-^\^|^-^\^|^/^\^|^/^-^| |