Skip to content

Instantly share code, notes, and snippets.

@polarbeard
polarbeard / youtube-cd.sh
Created March 12, 2017 12:28
youtube-cd
#!/usr/bin/env bash
set -e
ALBUM=$1
PLAYLIST=$2
mkdir -p "$ALBUM"
cd "$ALBUM"
@polarbeard
polarbeard / README.md
Last active March 7, 2017 14:02
Tfetch: Torrent search and download

Requisites

npm install -g inquirer torrent_search webtorrent

Usage

@polarbeard
polarbeard / bwt.js
Last active September 30, 2016 12:49
Burrows-Wheeler Transform
const pack = s => {
let eof = String.fromCharCode(0xffff), a1 = []
for (let s1 = s + eof, a2, n1 = 0, n2, n3, l = s1.length; n1 < l; a1.push(a2.join('')), n1++)
for (a2 = [], n2 = 0; n3 = n2 - n1, n2 < l; a2.push(s1[n3 < 0 ? l + n3 : n3]), n2++);
return a1
}
const unpack = s => {
let a = new Array(s.length)
for (let z = a.length, l = z, n; z--; a.sort())
diff -uNr a/bitcoin/src/hooks.cpp b/bitcoin/src/hooks.cpp
--- a/bitcoin/src/hooks.cpp 1969-12-31 19:00:00.000000000 -0500
+++ b/bitcoin/src/hooks.cpp 2016-02-21 10:09:51.216134247 -0500
@@ -0,0 +1,19 @@
+#include "hooks.h"
+
+void SchemeHook::SetCallback(scheme *sc, pointer callback) {
+ scbk = SchemeCallback(sc, type, callback);
+}
+
diff -uNr c/bitcoin/src/base58.h b/bitcoin/src/base58.h
--- c/bitcoin/src/base58.h 2016-02-07 08:01:52.715976124 -0500
+++ b/bitcoin/src/base58.h 2016-02-07 08:02:26.372143016 -0500
@@ -257,15 +257,14 @@
class CBitcoinAddress : public CBase58Data
{
public:
- bool SetHash160(const uint160& hash160)
+ void SetHash160(const uint160& hash160)
{
diff -uNr a/bitcoin/src/bitcoinrpc.cpp b/bitcoin/src/bitcoinrpc.cpp
--- a/bitcoin/src/bitcoinrpc.cpp ede2e19dd0ce3d03f54689cbeda30b4b36152f7e532b3d34f0f8c55bb292f7d25c149b88162d96a8208997237a32566d0e555aa7105bfed8175983d80ad892e6
+++ b/bitcoin/src/bitcoinrpc.cpp a71655bcd21408123e7be15f91803707bafca212787544d3e160855c170d596029847dc35ecd0f4dbe10f8e412bee114fba803d4e369c980d06691373106c18d
@@ -196,6 +196,42 @@
return (int)vNodes.size();
}
+Value getpeerinfo(const Array& params, bool fHelp)
+{
+ if (fHelp || params.size() != 0)
diff -uNr a/bitcoin/src/main.cpp b/bitcoin/src/main.cpp
--- a/bitcoin/src/main.cpp b4775d56fd901d7af16136590be4645f57631004c4e0ec35332374eedc78d8574d6a2162d7bba121843f710111209336ecd6553af4b576bad81b3639d2634ad5
+++ b/bitcoin/src/main.cpp 5fcc671189ae354164faa71c266bd2f6a33cdab807b2149ef639e11bc2507736a29c7fe5ee0768cbe391d694ec516e00aa86b26f602f45b61f02a0104b1ff1dc
@@ -2567,11 +2567,20 @@
dPriority = 0;
}
- void print() const
+ std::string ToString() const
{
diff -uNr a/bitcoin/src/bitcoinrpc.cpp b/bitcoin/src/bitcoinrpc.cpp
--- a/bitcoin/src/bitcoinrpc.cpp ede2e19dd0ce3d03f54689cbeda30b4b36152f7e532b3d34f0f8c55bb292f7d25c149b88162d96a8208997237a32566d0e555aa7105bfed8175983d80ad892e6
+++ b/bitcoin/src/bitcoinrpc.cpp 84193f267fe20cdd9bc3a525ca206d4c00ab8b732ab386e4582e77e96e2574b08da2916e927839c8c1247867e42c9b9124f48546626f675f1d8cea705ac87b3a
@@ -2139,12 +2139,12 @@
vnThreadsRunning[4]--;
PrintException(NULL, "ThreadRPCServer()");
}
- printf("ThreadRPCServer exiting\n");
+ printf(SINF SNET "rpc server thread exiting\n");
}
diff -uNr a/bitcoin/src/init.cpp b/bitcoin/src/init.cpp
--- a/bitcoin/src/init.cpp 971b82be435c99a1af9d5cacc9c05af7616f4af7ee1466efacd46d41eddc1c4d7da2fdb4a302aab7c99933d33ad2d613f3bfbe76fec67a71c6d4d1fe14ac142d
+++ b/bitcoin/src/init.cpp 3ad5a434f08b5029a39bb0e57216a37ae0047caf1f05cb2984796e9c80fc4ceb9fb9ffe3ca067c9bffb12ffe465e3d92408a79a5e940c66253a358f393b6c29f
@@ -262,8 +262,6 @@
fprintf(stderr, "Error: setsid() returned %d errno %d\n", sid, errno);
}
- if (!fDebug && !pszSetDataDir[0])
- ShrinkDebugFile();
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
PRESS=$(shell readlink -f release)
BUILD=$(shell readlink -f build)
RELBUILD=build
HUNKS=hunks
THIS=$(CURDIR)/$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
SHA1=sha1sum
SHA512=sha512sum
BUILDROOT=buildroot-2015.05