I'm no longer be maintaining this, as I'm no longer using Raspberry Pi 4 + ZFS.
My case was:
- Raspberry Pi 4 8GB
- Debian 11 Bullseye
- native ZFS encryption
| daemon off; | |
| worker_processes 1; | |
| error_log logs/error.log; | |
| events { | |
| worker_connections 1024; | |
| } | |
| http { | |
| include mime.types; |
| from scapy.sendrecv import send | |
| from scapy.layers.inet import * | |
| from binascii import unhexlify | |
| import sys | |
| magic = '' | |
| for h in sys.argv[1].split(':'): magic += unhexlify(h); | |
| send(IP(dst="255.255.255.255")/UDP(dport=9)/Raw(load=(chr(0xff)*6 + magic*16))) |
Notes for slimming down a fresh installation of Raspbian Stretch Lite. This guide does not strip Raspbian of basic functionality such as Bluetooth and mDNS.
Install a fresh Raspbian Stretch Lite image into the SD card ([source][1]).
$ unzip -p 2018-04-18-raspbian-stretch-lite.zip | dd bs=4M of=/dev/sdX conv=fsync
Free O'Reilly books and convenient script to just download them.
Thanks /u/FallenAege/ and /u/ShPavel/ from this Reddit post
How to use:
download.sh file and put it into a directory where you want the files to be saved.cd into the directory and make sure that it has executable permissions (chmod +x download.sh should do it)./download.sh and wee there it goes. Also if you do not want all the files, just simply comment the ones you do not want.| base url is www.geeni.org | |
| first two indentations are paths | |
| CAPITALS are request methods | |
| last identation is queries | |
| return is in {} | |
| state is 1 for success 0 for anything else | |
| message is "success" or failure message | |
| stripeid/chargeid is stripe internal id for object, already written to firebase so no need to | |
| site will use HTTPS/SSL in future but currently does not so stick to test ccs / bank accounts |
Get Git log in JSON format
git log --pretty=format:'{%n "commit": "%H",%n "abbreviated_commit": "%h",%n "tree": "%T",%n "abbreviated_tree": "%t",%n "parent": "%P",%n "abbreviated_parent": "%p",%n "refs": "%D",%n "encoding": "%e",%n "subject": "%s",%n "sanitized_subject_line": "%f",%n "body": "%b",%n "commit_notes": "%N",%n "verification_flag": "%G?",%n "signer": "%GS",%n "signer_key": "%GK",%n "author": {%n "name": "%aN",%n "email": "%aE",%n "date": "%aD"%n },%n "commiter": {%n "name": "%cN",%n "email": "%cE",%n "date": "%cD"%n }%n},'The only information that aren't fetched are:
%B: raw body (unwrapped subject and body)%GG: raw verification message from GPG for a signed commit| # references: | |
| # Learning by doing: Writing your own traceroute in 8 easy steps (Ksplice Blog) | |
| # https://blogs.oracle.com/ksplice/entry/learning_by_doing_writing_your | |
| import sys | |
| import socket | |
| def traceroute(dest_addr, max_hops=30, timeout=0.2): | |
| proto_icmp = socket.getprotobyname('icmp') | |
| proto_udp = socket.getprotobyname('udp') |