$ curl -o /dev/null -w "time_namelookup: %{time_namelookup} s
time_connect: %{time_connect} s
time_appconnect: %{time_appconnect} s
time_pretransfer: %{time_pretransfer} s
time_redirect: %{time_redirect} s
time_starttransfer: %{time_starttransfer} s
time_total: %{time_total} s
" -s [WEBSITE-URL]
See cURL’s documentation for all available variables.
Last updated: 2023-04-15T12:29:21+00:00
]]>Logging into your device via SSH and running the command
synoschedtask --get
provides detailed information about tasks,
including their last run statuses.
Last updated: 2022-12-11T12:47:14+00:00
]]>Last updated: 2022-12-11T12:47:14+00:00
]]>Log into the new device via SSH and run a big ol’ rsync command:
$ rsync --exclude '.DS_Store' --exclude '@eaDir' --exclude 'desktop.ini' -avhPc [SRC] [DEST] |& tee /tmp/rsync-output.txt
Note: When using the -a
flag, you might get a “some files/attrs
were not transferred” error at the end. This may be due to group or
owner attribute inconsistencies between the two machines. To check,
review the rsync output or perform a dry-run transfer. Alternatively,
replace the -a
flag before running the rsync command.
After everything has been transferred over, you might need to clean up any group, owner, or permission issues. (I’ve used an approach from the Synology knowledge base, but it’s pretty heavy-handed.)
Last updated: 2022-12-11T12:47:14+00:00
]]>Last updated: 2022-12-11T12:47:14+00:00
]]>When installing Ubuntu on a machine that uses Secure Boot, do not skip the key enrolment step on the initial reboot. I have accidentally pressed Continue without completing this step far too many times.
After going through the welcome screen bumf, I tend to run the Software Updater and go through Settings. (I am cursed with being incapable of using any new thing unless I’ve thoroughly scoured its options and settings.)
Set up and run the provisioning Ansible playbook available from my Ansible gubbins.
While most of my machine provisioning is handled by Ansible, I haven’t managed to automate everything:
Fix a bug in the Dash to Dock GNOME Shell extension that causes icons to take ages to update when you start with an empty dock by manually applying a fix available on GitHub to .
In Firefox: install the 1Password extension, change the default search engine to DuckDuckGo, and hide all the junk from the new tab screen. I also sign in to my Firefox account to get my bookmarks and whatnot.
To be able to use Terraform secrets, find and copy over any existing GnuPG bits-and-pieces (as far as I can tell, all you need is pubring.gpg, secring.gpg, and trustdb.gpg).
Set the terminal font to Iosevka Term (which should be already installed by the provisioning Ansible playbook).
Install JetBrains Toolbox and use it to install GoLand, DataGrip, and PhpStorm.
Install Steam.
Connect to any network drives.
Set up Livepatch, Syncthing, and Obsidian.
Set up some Windows 10 VMs in VirtualBox for cross-browser testing and light Visual Studio usage.
Last updated: 2023-04-15T12:29:21+00:00
]]>docker-composer.yml
that need deploying or the containers currently running need updating,
the following will ensure everything is up-to-date and any detritus is
cleared up:$ docker-compose pull
$ docker-compose up -d --build --force-recreate --remove-orphans
$ docker image prune -f
$ docker volume ls -f dangling=true
$ # If dangling volumes exist, remove them with "docker volume prune -f".
You may need to run these commands with sudo
. The Docker documentation
has more information on pruning unused Docker objects if the above
pruning commands don’t go far enough.
If, like me, you’re running these commands on a DiskStation, you can safely ignore any “Docker container stopped unexpectedly” notifications from DiskStation Manager.
Last updated: 2023-05-29T19:23:07+00:00
]]>$ docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql
$ docker exec -it mysql mysql -uroot -p
Adding --restart=unless-stopped
to the docker run
command will make
the MySQL instance persist after a system restart or shutdown.
Last updated: 2022-12-11T12:47:14+00:00
]]>I don’t mess with brush sizes and opacity unless I’m erasing.
I sometimes use the custom eraser brush to do a little colouring in, but I tend to use Photoshop to colour in final pieces because I am no good at picking colours and Photoshop’s fill layers are a god-send for me when it comes to changing and trying out colours.
Last updated: 2022-12-14T17:54:57+00:00
]]>Last updated: 2022-12-11T12:47:14+00:00
]]>$ jpegtran -optimize -progressive [IMAGE] > [OUTPUT] && exiftool -all= --icc_profile:all [OUTPUT]
Last updated: 2022-12-11T12:47:14+00:00
]]>