Why? Because while it's fairly simple, it is not discoverable. I had to ask for help (thanks @michaeltaylor3d).
This means you have a chia wallet and have farmed or bought some XCH.
Why? Because while it's fairly simple, it is not discoverable. I had to ask for help (thanks @michaeltaylor3d).
This means you have a chia wallet and have farmed or bought some XCH.
| # To extract the sound from a video and save it as MP3: | |
| ffmpeg -i <video.mp4> -vn <sound>.mp3 | |
| # To convert frames from a video or GIF into individual numbered images: | |
| ffmpeg -i <video.mpg|video.gif> <frame_%d.png> | |
| # To combine numbered images (frame_1.jpg, frame_2.jpg, etc) into a video or GIF: | |
| ffmpeg -i <frame_%d.jpg> -f image2 <video.mpg|video.gif> | |
| # To quickly extract a single frame from a video at time mm:ss and save it as a 128x128 resolution image: |
| #!/bin/bash -x | |
| # make_arm64_rpi_kernel_debs.sh | |
| # Builds arm64 debian packages from the CURRENT rpi firmware repository kernel which is installed by: | |
| # sudo rpi-update | |
| # This runs on an arm64 host with arm64 compilation tools... | |
| # or with some sort of cross-compilation setup. | |
| # Debs are put in $workdir/build | |
| # | |
| # This will NOT work in Raspbian unless you have an arm64 compilation | |
| # environment setup. Appears to work on |
| Message pattern: ^time="(.*)" level=([^\s]+) .*$ | |
| Message start pattern: ^time= | |
| Time format: yyyy-MM-dd'T'HH:mm:ssXXX | |
| Time capture group: 1 | |
| Serverity capture group: 2 | |
| Reference: https://github.com/JetBrains/ideolog/wiki/Custom-Log-Formats |
| #!/bin/bash | |
| # Raspberry Pi stress CPU temperature measurement script. | |
| # | |
| # Download this script (e.g. with wget) and give it execute permissions (chmod +x). | |
| # Then run it with ./pi-cpu-stress.sh | |
| # | |
| # NOTE: In recent years, I've switched to using s-tui. See: | |
| # https://github.com/amanusk/s-tui?tab=readme-ov-file#options | |
| # Variables. |
With its built-in Bluetooth capabilities, the ESP32 can act as a Bluetooth keyboard. The below code is a minimal example of how to achieve it. It will generate the key strokes for a message whenever a button attached to the ESP32 is pressed.
For the example setup, a momentary button should be connected to pin 2 and to ground. Pin 2 will be configured as an input with pull-up.
In order to receive the message, add the ESP32 as a Bluetooth keyboard of your computer or mobile phone:
This is tested with Traefik 1.7
This is how to redirect the root or base path to a sub path in Traefik using Docker labels:
Goals
https://example.com -> https://example.com/abc/xyz/https://example.com/ -> https://example.com/abc/xyz/https://example.com/something -> no redirect| #!/usr/bin/env bash | |
| NODESAPI=/api/v1/nodes | |
| function getNodes() { | |
| kubectl get --raw $NODESAPI | jq -r '.items[].metadata.name' | |
| } | |
| function getPVCs() { | |
| jq -s '[flatten | .[].pods[].volume[]? | select(has("pvcRef")) | '\ |
| <# | |
| .Synopsis | |
| Exports environment variable from the .env file to the current process. | |
| .Description | |
| This function looks for .env file in the current directoty, if present | |
| it loads the environment variable mentioned in the file to the current process. | |
| based on https://github.com/rajivharris/Set-PsEnv |