Install RuTorrent with Docker on Rapsberry Pi

1. Flash Raspbian Lite

2. Run the following commands (through serial, SSH, or directly)

#install docker
curl -fsSL -o

#don't need sudo to run future docker commands
#make sure to log out and back in after this!
sudo usermod -aG docker pi

#make directories
mkdir -p ~/rutorrent/conf
mkdir -p ~/rutorrent/downloads

#make a container:
docker create --name=rutorrent \
-v ~/rutorrent/conf:/config \
-v ~/rutorrent/downloads:/downloads \
-e PGID=`id -g` -e PUID=`id -u` \
-e TZ=America/Vancouver \
-p 80:80 -p 5000:5000 \
-p 51413:51413 -p 6881:6881/udp \
--restart unless-stopped \

#run the container
docker start rutorrent

Install Syncthing on Raspberry Pi Tutorial

1. Flash Raspbian Lite

2. Run the following commands (through serial, SSH, or directly)

# Add the release PGP keys:
curl -s | sudo apt-key add -

# Add the "stable" channel to your APT sources:
echo "deb syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list

# Update and install syncthing:
sudo apt-get update
sudo apt-get install syncthing

sudo systemctl enable syncthing@pi.service
sudo systemctl start syncthing@pi.service

#make accessible over the network by replacing to
sudo sed -i "s/127\.0\.0\.1/" ~/.config/syncthing/config.xml

Install mitmproxy on Ubuntu 16.04 and Linux Mint 18

A simple tutorial to help install mitmproxy for debugging web applications on Linux Mint 18 / Ubuntu 16.04).

Install python 2.7 dev first (needed to avoid the error below):
$ sudo apt-get install python-dev

Now install mitmproxy
$ sudo pip install mitmproxy

Example usage with Ruby on Rails
Assuming we ran “rails server” on the default port of 3000, we can run mitmproxy on port 3001.
$ mitmproxy -p 3001 -R http://localhost:3000/



Error that would appear without installing python-dev:
creating build/temp.linux-x86_64-2.7/ext
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c ext/_yaml.c -o build/temp.linux-x86_64-2.7/ext/_yaml.o
ext/_yaml.c:4:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-t2Ejye/PyYAML/';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-b7aU7h-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-t2Ejye/PyYAML/

1 Click Replace Notepad with Notepad++ Windows 7/8/8.1 Batch Script

Just a quick tip to replace the basic Windows Notepad with the much handier Notepad++


If you don’t have Notepad++ already, you can download it here.

No file ownership changes, replacements or backups necessary, just a quick registry fix and command line trick.


[cryout-button-color url=”” color=”#47AFFF”]Replace Notepad++ Batch Script[/cryout-button-color]


  1. Run the notepad++replace.bat as Administrator.
  2. Open “notepad” using the Run command and see if Notepad++ starts.
  3. Tell the world about it 😛

Compatible with 32bit and 64bit editions of Windows 7, 8, and 8.1 (including Update 1).

Original and further info at Grahame Scott-Douglas‘ blog.

Easy OpenVPN Setup Script for Debian Based OpenVZ VPS

What is OpenVPN?

OpenVPN is a reliable and well tested VPN solution that is able to run over a single port, supports compression, tunnels over NAT, and is very secure.

What does this script do?

This script will automatically install, configure, and add users to OpenVPN all in under 5 minutes, even with minimal Linux skills. The port forwarding, server configuration, and authentication setup is all taken care of for you.


  • Automatic .ovpn file generation with inline certificates in a single file
  • Google DNS servers
  • Port 53 captive portal bypass server option

Continue reading

Moving my scripts over to Github

A mini news flash here, I’ve created a Github account that will be hosting all my scripts.

The first to be moved over is my automated PPTP setup script, now called ezpptp.

The LNMP (Nginx, PHP, MySQL) script has been depreciated in favor of Xeoncross’s lowendscript that I’ve contributed some patches to.

My OpenVPN setup script will soon be joining the other bunch in the near future.

Hopefully with the scripts now being hosted on Github, I’ll see some patches and commits to make them even better 😀