Skip to main content

Senior Web Engineer. Open web / music. Remote DJ. Tall Dutch guy. #3million

micro.blog/sander

svandragt

mixcloud.com/cloudseer

 

If you need a few minutes of calm in these worrying times, try listening to Ólafur Arnalds https://open.spotify.com/artist/7E3BRXV9ZbCt5lQTCXMTia?si=iqlvP-3NRQGqOAcZ93DUbw

 

Tip: when opening food containers write the DoO (Date of Opening) on the container with a sharpie. Never guess if something is in date!

 

Ready to give up on Python for cli tools and switch to nim or crystal or whatever. Creating and distibuting a standalone executable shouldn't be this hard.

 

I updated the "Auto-Update Nextcloud" post with a new version of the script to update the installed apps as well! https://vandragt.com/2020/auto-update-nextcloud

 

Fafi v0.1.5-alpha

I just released Fafi v0.1.5-alpha. Fafi is a console application that indexes and searches the page content of Firefox bookmarks.

Install via pipx install fafi

v0.1.5 stores the database into it's own application settings (using https://github.com/ActiveState/appdirs)

Source on Github

 

Auto-Update Nextcloud

I run my own Nextcloud server, and every other week there's an update to the server, or one of the plugins I've enabled. The following steps enable automatic updates to the Nextcloud server.

This assumes Nextcloud is installed under /var/www/nextcloud:

Add a scheduled task as the webserver user:

$ sudo -u www-data crontab -e

Add the following line to run the upgrade script once a day at 4:05am. Instead of running the upgrade process directly we run a script so that we can also run it from the shell if needed:

5     4  *  *  * cd /var/www/nextcloud && ./upgrade.sh

Now create the script and make it executable:

$ cd /var/www/nextcloud
$ nano upgrade.sh && sudo chmod +x upgrade.sh

The script itself runs the server updater, the no-interaction argument prevents prompting for questions, followed by the occ utility to update all installed apps.

  pushd $(dirname $0)/updater
/usr/bin/php updater.phar --no-interaction
cd ..; ./occ app:update --all
popd

 

All my local shops have run out of hand gel sanitizer, but still have bars of soap available. It’s very weird as the latter is more effective in getting rid of dirt and virus from your hands.

 

Introducing Faff - Firefox bookmark indexing

Over the holidays I’ve build a little tool, Faff, to index and search the page contents of Firefox bookmarks. This allows searching using words that appear on the pages rather than in the bookmark title. It uses full-text-search with ranking / relevance and snippets, it’s quite WIP. More info at https://github.com/svandragt/faff/

Search query

It's written in Python command-line tool and uses SQLite's full-text search and Newspaper's text extraction, so a search over all my bookmarks takes only about 0.3 seconds although the indexing is certainly slow.

 

I've written up my thought on my bookmarking setup: https://vandragt.com/pages/bookmarking-tools

 

Cuttlefish v0.4 Released

Cuttlefish is a PHP based hackable blog framework -- with the goals of being fast, easily hackable, and easy to adopt. I've been working on it since 2012, when it was known as Carbon. It can generate a static HTML site for uploading anywhere, or run dynamically.

Version 0.4 licenses the code as MIT, so anyone can build on top of the project. Cuttlefish now has API documentation courtesy of PHPDox, which is updated whenever code is changed. I've changed the code style from 'WordPress-like' to the PHP community default of PSR12. The project now comes with a Docker container which means getting up and running is even easier.

Install Cuttlefish is easy using the instructions. For a fuller list of changes see https://github.com/svandragt/cuttlefish/releases/tag/v0.4.

Known issue:  I still have trouble getting Xdebug to work, if you're familiar with Docker Compose and Xdebug I could use your help.

For v0.5, now that the codebase is in a better state, I'm looking at adding more features again.

 

My hackable blog framework is nearing a 0.4 milestone and I’m very excited to have containerised the project and added basic API documentation using phpDox. Sneak preview the master branch at https://github.com/svandragt/cuttlefish

 

Conditional .gitconfig

Add the following lines to ~/.gitconfig to load configuration only for repositories within a certain location:

[includeIf "gitdir:~/dev/work/"]
path = ~/dev/work/.gitconfig


For example, this can be used to set work email and signing keys. 

 

Added a quick example to the wp_schedule_event() codex page as all the examples provided are broken in some way. https://developer.wordpress.org/reference/functions/wp_schedule_event/

 

I didn't know that Chassis extensions can be installed globally http://docs.chassis.io/en/latest/extend/#globally-installing-extensions

 

Started something that potentially might simplify WordPress development.

 

I’m looking for a macOS tool that intercepts opening URLs and let me specificy regexes and associate them with browsers, so that when I open certain links from slack they always go into my project browser. Any ideas?

 

It turns out Breakmaster Cylinder's full discography (https://breakmastercylinder.bandcamp.com/) is the perfect music to do creative work to.

 

Staying focused

If you follow this blog you will have noticed that I've commented multiple times on needless distractions that seem to have pervaded modern computing. Today, let's present a few solutions.

Firstly, when in the flow of doing deep work, watching animations delay your actions can be a source of frustration. While we can't speed up GitHub, we can speed up macOS. In the accessibility settings, check Display > Reduce Motion. This will speed up the interface and Mission Control animations. If you miss the garishness, you can turn it back off but chances are you will notice the system not getting in the way as much.

Secondly a tip for fellow Homebrew users. When you're ready to work through that difficult project tooling setup, it can be the worst time for Homebrew to decide to update it self, especially as this can take up to half a minute depending on how far behind your version is. Not now Homebrew! If you follow the instructions at Homebrew Autoupdate you can setup Homebrew to update itself in the background.

Finally, if you're using oh-my-zsh or bash equivalent, there will be a setting for it to update itself without prompting. Edit .zshrc and add DISABLE_UPDATE_PROMPT="true". I've not had any issues.

Cheers to a focused work experience!

 

Thinking whether to renew http://appsubscriptions.com

 

Console.app happens to be the best .log file viewer I've ever used, for any logs - not just macOs system ones.