Skip to content

Instantly share code, notes, and snippets.

View tjibbevanderlaan's full-sized avatar

Tjibbe van der Laan tjibbevanderlaan

  • 's-Hertogenbosch, Netherlands
View GitHub Profile
@tjibbevanderlaan
tjibbevanderlaan / create2x2collage.py
Last active March 29, 2023 19:39
Create collages of 4 photos each in a 2x2 grid for all photos in current folder where the collage is 100x150mm in size with 300dpi saved as jpg
#!/usr/bin/env python3
import os
import glob
import subprocess
# this script needs imagemagick and can be installed with the following command on MacOS:
# brew install imagemagick
# is_landscape checks whetherimage file is landscape oriented. Returns true or false
def is_landscape(filename):
@tjibbevanderlaan
tjibbevanderlaan / docker-compose-update.sh
Created April 2, 2022 19:39
Script to update all docker containers
#!/bin/sh
set -e
# homeassistant
echo "Commencing docker-compose update homeassistant `date`" >> /var/log/containers/docker-compose-update.log
# Do a pull then an update
/usr/bin/docker-compose -f /srv/homeassistant/docker-compose.yml pull --no-parallel >> /var/log/containers/docker-compose-update.log 2>&1
/usr/bin/docker-compose -f /srv/homeassistant/docker-compose.yml up -d >> /var/log/containers/docker-compose-update.log 2>&1
echo "Sleeping 10 seconds." >> /var/log/containers/docker-compose-update.log
@tjibbevanderlaan
tjibbevanderlaan / create-docker-compose-backup.sh
Created April 2, 2022 19:35
Script to backup docker compose files
#!/bin/bash
####################################
#
# Backup of docker compose configuration files
#
####################################
# What to backup.
backup_files="/srv"
@tjibbevanderlaan
tjibbevanderlaan / upload_sketch.sh
Last active May 22, 2022 18:06
Compile and upload Arduino UNO sketch with arduino-cli
# !/bin/bash
# upload_sketch helps to compile and upload
# an Arduino project to the Arduino Uno
# by using ./upload_sketch.sh <project_folder>
arduino-cli compile --fqbn arduino:avr:uno $1
arduino-cli upload -p /dev/ttyACM0 --fqbn arduino:avr:uno $1
@tjibbevanderlaan
tjibbevanderlaan / add_gps_to_photos.sh
Last active February 8, 2020 22:00
Add GPS exif-data to all photos in directory with exiftool
#/bin/sh
PHOTODIR=$1
LATITUDE=$2
LONGITUDE=$3
LATREF=${4:-N}
LONGREF=${5:-E}
exiftool $PHOTODIR -GPSLongitudeRef=$LONGREF -GPSLongitude=$LONGITUDE -GPSLatitudeRef=$LATREF -GPSLatitude=$LATITUDE
@tjibbevanderlaan
tjibbevanderlaan / split_photos_by_date.sh
Last active February 8, 2020 21:35
Split directory of photos by date using exiftool
#/bin/sh
PHOTODIR=$PWD/$1
exiftool -r -o "${PHOTODIR}" "-FileName<CreateDate" -d "${PHOTODIR}/%Y-%m-%d/%Y-%m-%d_%H-%M-%S%%-c.%%le" .
@tjibbevanderlaan
tjibbevanderlaan / libyjpagent_logfiles.txt
Last active July 30, 2022 08:35
Log files of libyjpagent.so for YourKit profiler
#
# 12.0.6 ARMv5 sf
#
$ java -agentpath:/home/pi/yourkit/yjp-12.0.6/bin/linux-armv5-sf/libyjpagent.so
Error occurred during initialization of VM
Could not find agent library /home/pi/yourkit/yjp-12.0.6/bin/linux-armv5-sf/libyjpagent.so in absolute path, with error: /home/pi/yourkit/yjp-12.0.6/bin/linux-armv5-sf/libyjpagent.so: cannot open shared object file: No such file or directory
$ file /home/pi/yourkit/yjp-12.0.6/bin/linux-armv5-sf/libyjpagent.so
/home/pi/yourkit/yjp-12.0.6/bin/linux-armv5-sf/libyjpagent.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, stripped
<html>
<body>
<audio controls src="data:audio/ogg;base64,//uSRAAAAAAAaQAAAAAAAA0gAAAAAAABpAAAAAAAADSAAAAAnsIYuRtqAmTlBQSFwDgWsAuC9iDJFxdhc+CDKksXBoZIuLnxTihkvaChhYNA8kXPgOA8UOBSne4Sv///+Xd97hKl3v//9Kl9BRJFDJd7hNEqXd33e+ESpRKl/3MSXtBQyRQyXeCDJFDAGD6vh//DAAhAhAG7AZTJ4GPwjppA2EAxTLcskTA/L2wOXlvJ4qgY7GAGlF5yDjjLAGui4B2Gwgd1tfk4RApm4HKUOBqg7AZOFAGEgB8toJpqAymGQABABigFAYhEYGLxn+aGiaDLAxWCQMiB4CgDAOCYGFgIJR/3u60xOYGLhMBhwJAKBAA4Bi5guY/6aCBom+mBhMHgYNBIDADANBoGEwaFywveRQin/01Mt2aggsDDAgAxMKAAhwGLwMCgULHyQE3hy4BwMFZ//7vupm/i3itgBAIAoDAMOhMDBYDCxcLFCRIOFkANgwOkDbyJ//////////////gPmAwCCicIs6xBYIgsQhAoHiiBEDgcYogGLSEBtv/7kmS/AAN7VquFJQAAAAANIKAAAB4qQTxZWoAIAAA0gwAAAM+gZcCQGLCuAcNQhEgOIjGhiAcIhGAYBC+IFDApwciGmEqLlJwDNrA8ABgMCzYOIDGwGFKAWBEQYli+KAKYfqRANMGRGRKZAiaJ8wRTWMeHIkBIAMyURxGKR10DcxTZIulsTaIKiuj4GaHOLpOmozxdJpNKbFU3UsZUnSAi5gvkFshySdXMS69F1GR6tRuXDyZcHyISg2qMcLKFzGZMpEqRBiwkpJ1LNWmSaCC1PTaLiRPFEyPkNIERYvO2ij9aklqS9Tf///////////////+AAPDmv3ZvY4WH3kA4hBR45wUtk67oE0eSxUFC6B+HkhhiaDqBJBFH4xNaMSa2raujPtqW1bnOl0Kum2nWb
@tjibbevanderlaan
tjibbevanderlaan / Emoji test
Last active August 28, 2018 08:30
Emoji test
🐱🐔🐶🐸🐵🐼🐰🤖🦄🦁🐻🐨🐯
@tjibbevanderlaan
tjibbevanderlaan / index.html
Last active April 20, 2017 14:54
Add external module in nemo
<script id="nemoUserFunctions">
// nemo_onload is a predefined function, invoked by
// the nemo engine as soon as the topic is loaded
function nemo_onload(e) {
// RequireJS is an external module, included in the nemo
// engine, which loads all internal modules. With the following
// code, you can load your own piece of code. The module excepts
// '.js'-files, so specifying the extension name is not needed.
// Please put your own libraries in the 'userscripts'-folder!
// The NemoPackager will copy libraries only, if they are located in