Skip to content

Instantly share code, notes, and snippets.

Avatar

niun

  • Berlin, Germany
View GitHub Profile
@niun
niun / esp8266-03-result.md
Last active Jan 20, 2018
Test ESP8266 AT commandos
View esp8266-03-result.md

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

BAUD = 9600
BOOT_BAUD = 115200

esp8266_at_test.py prints this:

PINGING esp8266...
> AT
> 
@niun
niun / time-from-internet.sh
Created Jul 15, 2016
show time from Internetz in shell, iso-8601
View time-from-internet.sh
curl -G -s --data-urlencode "format=%FT%T%:z" http://www.timeapi.org/cet/now # www.timeapi.org cet is CET/CEST. Don't use cest
date --iso-8601='seconds' -d "$(curl -s http://www.timeapi.org/utc/now)" # www.timeapi.org use local timezone settings
date -d "$(curl -s http://www.timeapi.org/utc/now)" +"%FT%T (UTC%:z = %Z)" # not quite ISO with timezone illustration
date -d "$(curl -s http://www.timeapi.org/utc/now)" +"%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 http://google.com | grep ^Date: | sed 's/Date: //g')" # google.com
date --iso-8601='seconds' -d "$(cat </dev/tcp/time.nist.gov/13 | cut -d' ' -f2,3) UTC" # NIST
date --iso-8601='seconds' -d "$(cat </dev/tcp/de.pool.ntp.org/13)" # ntp pool project
@niun
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
niun / remove-old-kernels.txt
Created Jul 27, 2015
Debian: Remove old kernel packages
View remove-old-kernels.txt
http://tuxtweaks.com/2010/10/remove-old-kernels-in-ubuntu-with-one-command/
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
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
niun / root-ro
Last active Aug 10, 2019
Read-only Root-FS with overlayfs for Raspian
View root-ro
#!/bin/sh
#
# 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:
# https://help.ubuntu.com/community/aufsRootFileSystemOnUsbFlash#Overlayfs
@niun
niun / install-wimp-wine.txt
Last active Aug 29, 2015
install wimp >= 3.1 in wine
View install-wimp-wine.txt
# Source: http://thinkpad-forum.de/threads/179658-Wine-Wimp
# The exe installer does not work.
# Workaround: extract msi from exe, install msi.
wine WiMP-3.1.0.1858-NO.exe /extract
wine msiexec /i 8840086/WiMP-3.1.0.1858-NO.msi
@niun
niun / rpi-make-dt-blob.sh
Created Oct 24, 2014
Create custom device tree blob to configure Raspberry Pi pins on early boot time
View rpi-make-dt-blob.sh
apt-get install device-tree-compiler
wget https://raw.githubusercontent.com/raspberrypi/documentation/master/configuration/images/dt-blob.dts
# 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
niun / .tmux.conf
Last active Jun 5, 2019
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
niun / find-raspberry.sh
Last active Nov 27, 2019
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)
View find-raspberry.sh
sudo nmap -sP 192.168.0.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
You can’t perform that action at this time.