Skip to content

Instantly share code, notes, and snippets.

View pirafrank's full-sized avatar
🎯
Focusing

Francesco Pira pirafrank

🎯
Focusing
View GitHub Profile
@pirafrank
pirafrank / get-lockscreen-wallpapers.ps1
Created January 18, 2022 14:04
Copy Windows 10 lockscreen background images to a subdir of YOURUSERNAME\Pictures. Subdir content will be replaced on each run.
Copy-Item -Force -Recurse $env:USERPROFILE\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets $env:USERPROFILE\Pictures\LockScreen_Wallpapers
Dir $env:USERPROFILE\Pictures\LockScreen_Wallpapers | rename-item -newname { [io.path]::ChangeExtension($_.name, "jpg") }
explorer $env:USERPROFILE\Pictures\LockScreen_Wallpapers
@pirafrank
pirafrank / aws_lambda_callback_redirect.js
Created January 13, 2022 19:57
callback function to make an HTTP redirect with AWS Lambda
callback(null, {
statusCode: 307,
headers: {
Location: 'https://github.com/pirafrank',
}
})
@pirafrank
pirafrank / tasks.json
Created December 18, 2021 02:10
VS Code tasks config for Jekyll
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "Serve",
"type": "shell",
"command": "bundle exec jekyll s",
"problemMatcher": []
@pirafrank
pirafrank / run_other_teams.ps1
Created November 19, 2021 17:04
Powershell script to open another instance of Microsoft Teams desktop application. This script runs the app as another user, you need to create another local Windows user before running the script. Check the link the comments to find out how. Tested on Windows 10 and Microsoft Teams v1.4.00.29469 (64-bit, last updated on 11/19/2021)
# Read me:
#
# You need to do some setup before running this script.
# Check the link below.
#
# Run this script as admin in powershell.
# By the way if you run it in a standard powershell it will
# prompt to open a new shell as admin.
#
@pirafrank
pirafrank / checkrun.sh
Created October 18, 2021 13:08
checkrun - a function to get try-catch in bash
function checkrun {
if [ $1 -ne 0 ]; then
echo "$2"
exit 2
fi
}
function test1 {
echo "test1" && \
echo "print 2"
@pirafrank
pirafrank / httpserver.py
Created May 21, 2020 08:44
python3 -m http.server PORT for a CORS world
#!/usr/bin/env python3
# It's python3 -m http.server PORT for a CORS world
from http.server import HTTPServer, SimpleHTTPRequestHandler
import sys
class CORSRequestHandler(SimpleHTTPRequestHandler):
@pirafrank
pirafrank / symlink.ps1
Created February 7, 2021 10:58
PowerShell script to create NTFS symlinks on Windows. It uses UNIX-like args placement.
@pirafrank
pirafrank / ssh-copy-id.ps1
Created February 7, 2021 10:57
ssh-copy-id as Windows PowerShell script. Put it in a folder in your PATH
function print($str) {
Write-Host "$str"
}
if ( $($args.Count) -ne 2 -And $($args.Count) -ne 3 ) {
$scriptName = $MyInvocation.MyCommand.Name
print("Usage: .\$scriptName [args...] pubKeyFile user@host")
exit
}
@pirafrank
pirafrank / docker_vol_dump.sh
Created January 31, 2021 22:50
scripts to dump docker volume to a tar.gz file and import from it
#!/bin/bash
if [ $# -ne 2 ]; then
echo "Usage: ./$0 tar_archive_name volume_name"
exit 1
fi
tararchive="$1"
volname="$2"
BASEDIR="$HOME/docker_vol_exports"
@pirafrank
pirafrank / hetzner.js
Created November 15, 2020 11:00
Scriptable script to list your Hetzner servers in the app and on widgets. Requires iOS 14+ and Scriptable 1.6
// Your Hetzner API token
// Go to Cloud Console > [your project] > Security > API tokens
const token = "PUT_YOUR_TOKEN_HERE" // main
// urls
let listServersUrl = "https://api.hetzner.cloud/v1/servers"
let widget = await createWidget(listServersUrl)
if (config.runsInWidget) {
// The script runs inside a widget, so we pass our instance of ListWidget to be shown inside the widget on the Home Screen.