import os | |
path = "/Applications/calibre.app" | |
flags = os.O_RDONLY | |
mode = 0o666 | |
os.open(path, flags, mode) |
To run qBittorent Web Ui Headless, run:
sudo add-apt-repository ppa:qbittorrent-team/qbittorrent-stable
Then:
sudo apt install qbittorrent-nox
Which will give you the web UI at http://localhost:8080
Doing this means you can't run any other commands while running the Web UI.
function removedates() { | |
for file in *.md | |
do mv "${file%%[0-9]*.md} /dates-removed/${file%*.md}" | |
done | |
} |
function webpall() { | |
for file in *; | |
do cwebp -q 50 "$file" -o "${file%.*}.webp"; | |
done | |
} |
function shrink() { | |
for file in blog/*; | |
do magick -sampling-factor 4:2:0 -quality 85 -interlace JPEG -colorspace RGB "$file" "${file%.*}.jpg" | |
done | |
} |
#!/usr/bin/perl -w | |
# Compare book prices across multiple Kobo stores | |
# | |
use strict; | |
use warnings; | |
use threads; | |
use WWW::Mechanize; | |
# FIXME | |
my $mech = WWW::Mechanize->new( |
This guide is for homelab admins who understand IPv4s well but find setting up IPv6 hard or annoying because things work differently. In some ways, managing an IPv6 network can be simpler than IPv4, one just needs to learn some new concepts and discard some old ones.
Let’s begin.
First of all, there are some concepts that one must unlearn from ipv4:
Concept 1
Note this should only be done once you are sure you have reliable TB mesh network.
this is because proxmox UI seems fragile wrt to changing underlying network after configuration of ceph.
All installation done via command line due to gui not understanding the mesh network
This setup doesn't attempt to seperate the ceph public network and ceph cluster network (not same as proxmox clutser network), The goal is to get an easy working setup.