Skip to content

Instantly share code, notes, and snippets.

niun /
Last active Jan 20, 2018
Test ESP8266 AT commandos

Connected to my ESP8266-ESP-03 with following baudrate settings

BAUD = 9600
BOOT_BAUD = 115200 prints this:

PINGING esp8266...
> AT
niun /
Created Jul 15, 2016
show time from Internetz in shell, iso-8601
curl -G -s --data-urlencode "format=%FT%T%:z" # cet is CET/CEST. Don't use cest
date --iso-8601='seconds' -d "$(curl -s" # use local timezone settings
date -d "$(curl -s" +"%FT%T (UTC%:z = %Z)" # not quite ISO with timezone illustration
date -d "$(curl -s" +"%A %d.%m.%Y, %T (UTC%:z = %Z)" # non-ISO, easy readable by a german with day of week
date --iso-8601='seconds' -d "$(curl -s --head | grep ^Date: | sed 's/Date: //g')" #
date --iso-8601='seconds' -d "$(cat </dev/tcp/ | cut -d' ' -f2,3) UTC" # NIST
date --iso-8601='seconds' -d "$(cat </dev/tcp/" # ntp pool project
niun / git-extract-file.markdown
Created Nov 13, 2015 — forked from ssp/git-extract-file.markdown
Extract a single file from a git repository
View git-extract-file.markdown

How to extract a single file with its history from a git repository

These steps show two less common interactions with git to extract a single file which is inside a subfolder from a git repository. These steps essentially reduce the repository to just the desired files and should performed on a copy of the original repository (1.).

First the repository is reduced to just the subfolder containing the files in question using git filter-branch --subdirectory-filter (2.) which is a useful step by itself if just a subfolder needs to be extracted. This step moves the desired files to the top level of the repository.

Finally all remaining files are listed using git ls, the files to keep are removed from that using grep -v and the resulting list is passed to git rm which is invoked by git filter-branch --index-filter (3.). A bit convoluted but it does the trick.

1. copy the repository to extract the file from and go to the desired branch

niun / remove-old-kernels.txt
Created Jul 27, 2015
Debian: Remove old kernel packages
View remove-old-kernels.txt
dpkg -l linux-* | awk '/^ii/{ print $2}' | grep -v -e `uname -r | cut -f1,2 -d"-"` | grep -e [0-9] | grep -E "(image|headers)" | xargs sudo apt-get -y purge
niun / rsync-cheatsheet.txt
Last active Jun 29, 2018
rsync backup cheatsheet
View rsync-cheatsheet.txt
rsync -raXi --size-only /path/to/folder-to-backup/ /destinations/path/to/folder-to-backup
same as
rsync -rlptgoDXi --size-only /path/to/folder-to-backup/ /destinations/path/to/folder-to-backup
same as
rsync -rlptgoDXi --size-only /path/to/folder-to-backup /destinations/path/to
-r recursive
-l preserve links
-p preserve permissions (also updates permission on not transferred files)
-t preserve time (also updates time on not transferred files)
niun / root-ro
Last active Mar 22, 2021
Read-only Root-FS with overlayfs for Raspian
View root-ro
# Read-only Root-FS for Raspian
# Modified 2015 by Pascal Rosin to work on raspian-ua-netinst with
# overlayfs integrated in Linux Kernel >= 3.18.
# Originally written by Axel Heider (Copyright 2012) for Ubuntu 11.10.
# This version can be found here:
niun / install-wimp-wine.txt
Last active Aug 29, 2015
install wimp >= 3.1 in wine
View install-wimp-wine.txt
# Source:
# The exe installer does not work.
# Workaround: extract msi from exe, install msi.
wine WiMP- /extract
wine msiexec /i 8840086/WiMP-
niun /
Created Oct 24, 2014
Create custom device tree blob to configure Raspberry Pi pins on early boot time
apt-get install device-tree-compiler
# for example, set P1:26 (BCM pin 7) to active low (on Raspi B Rev2.0, in dts file from August):
awk 'NR==104{print " pin@p7 { function = \"output\"; termination = \"pull_down\"; }; // SPI_CE1_N (P1:26)"}1' dt-blob.dts > dt-blob-mod.dts
dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-mod.dts
niun / .tmux.conf
Last active Feb 15, 2021
mouse and colors for tmux and vim
View .tmux.conf
# Configuration file for tmux >= 2.1
# .tmux.conf gets automatically read if in user directory (~)
# use 256 colour terminal:
set -g default-terminal "screen-256color"
# enable mouse:
set -g mouse on
# Not needed in tmux 2.8?
niun /
Last active Mar 18, 2021
Find Raspberry Pi in network (looking for MAC address vendor prefix of Raspberry Pi Foundation using nmap, awk for ipv4 / ping6, ip, grep for ipv6 neighbour discovery)
sudo nmap -sP | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'