Posts
-
Frustrations with rwgmobile
-
Book review: Michael W Lucas's 'git sync murder'
-
decoded.legal is now free of JavaScript
-
World Blog Day: I'm grumpy about harassment in the fediverse
-
Switching back to self-signed certs for freeradius Wi-Fi authentication
-
systemctl reboot --firmware-setup
-
Book review: Michael W Lucas's 'git commit murder'
-
Am I addicted to being online?
-
Fixing folders in Thunderbird if messages do not open in conversation view
-
Setting up custom site-specific search shortcuts in Firefox
-
In praise of restic (the backup tool)
-
Shrinking initrd.img to deal with /boot being too small to upgrade the kernel on Debian
-
Increasing the frequency of mqtt messages on power changes in Tasmota using the PowerDelta command
-
Fixing iOS Home Assistant 403 error by deleting ip_bans.yaml
-
Attempting to stop Microsoft users sending 'reactions' to email from me by adding a postfix header
-
Fixing a Chromebook which was showing scam notifications about viruses
-
Not being bothered by sports
-
I am enjoying 'Halt and Catch Fire' but the lack of availability on DVD is annoying
-
Adding Open Graph meta tags to my hugo static site's theme for nicer fedi link previews
-
Working out why Home Assistant on Android had ceased to get my phone's location
-
Six months with the Xreal Air 2 Pro glasses
-
I don't have, or want, comments on my blog
-
How often do I access my own systems?
-
Kobo Mini notes
-
The admin burden of keeping friendships alive (and failing?)
-
I didn't go to EMF camp
-
Reviving a Kobo Aura HD that would not turn on
-
Replacing the battery and increasing the storage on a Kobo Clara HD eReader
-
Expanding (and sharing) the list of blogs I follow via RSS
-
Using CSS selectors in FreshRSS to automatically retrieve the full text of partial text RSS feeds
-
What's the best laptop I could get for no more than £50?
-
Faffing with fonts to reduce my web page size by two thirds
-
The wireless ambidextrous Penguin Posturite mouse and Linux
-
VoIP XML config examples for FireBrick
-
Would UBI make a difference to me right now?
-
Changing the default resize value in nautilus-image-converter
-
Geek Code: a piece of web history
-
Comparing Lenovo's Active Pen and Active Pen 2 for writing on a ThinkPad X1 Yoga Gen 2 using Debian Linux
-
I have data and documents in too many places
-
Thoughts on an old-but-new-to-me Lenovo ThinkPad Professional backpack
-
Making other people's websites look how I want them to look
-
Neil designs his perfect (Internet) cafe
-
A pre-roll for my presentations
-
Scanning to Debian 12 with a Fujitsi ix500
-
When is a website too simple?
-
Creating a partition larger than 2TB on an SSD on Linux
-
Saving money via AliExpress v Amazon
-
In memoriam: A&A's SIP2SIM service
-
Multiplayer Quake III Arena on Linux (client and server)
-
EE data SIM expiry
-
Storing config options for yt-dlp in a config file
-
The fediverse and (small?) businesses
-
A working wireless plug-and-play display solution for Linux laptops (and others OSs)
-
Switching to Mastodon 'unlisted'
-
Replacing the thermal paste on my laptop
-
Reflections on six years in the fediverse
-
Downloading YouTube subscriptions and channels automatically
-
A rant about the pollution which is advertising
-
Suppressing posts containing images with no alt text in the Mastodon advanced web UI via uBlock Origin
-
How public is 'public'?
-
Improving my laptop's battery with TLP
-
Alternatives to the term 'enshittification'
-
Stopping music in my office automatically when I get a phone call or join an audio/video call
-
Will I ever buy a new laptop again? Why would I?
-
Adding an Internet radio stream (such as RadioFreeFedi) to mpd
-
Getting the Sierra Wireless EM7455 LTE modem working in a ThinkPad with Debian 12 Linux (with GPS)
-
Fixing dropbear-initramfs '/scripts/init-premount/dropbear: cat: not found' error
-
Why I don't care about website/blog stats
-
A week of not using a search engine
-
RevK's privacy-friendly GPS logger
-
Keeping bash history in sync using atuin and a self-hosted sync server
-
Very initial thoughts on the Xreal companion 'Beam' device
-
From DuckDuckGo back to DuckDuckGo via Mojeek and Kagi
-
Keyboard shortcut for adding random albums to the playlist in ncmpcpp
-
Dark mode for the FireBrick network contraption's web UI
-
This is a test post
-
A 'thank you' table for people making deliveries
-
Fixing Mastodon 'Error processing thumbnail for uploaded media' video uploading
-
Upgrading the glitch-soc fork of Mastodon
-
Very, very initial thoughts of the Xreal Air 2 Pro glasses and Debian 12
-
Subscriptions mount up quickly!
-
#FreeSoftwareAdvent: all my 2023 Free software suggestion posts in one place
-
If I don't apply, I won't get it: my approach to interesting 'bits on the side'
-
Using Bitwarden as an AppImage on Debian with GNOME
-
Improving the readability of the new design of legislation.gov.uk in Firefox with custom CSS
-
Fixing SOGO error NSDataMalloc(instance) does not recognize stringByTrimmingSpaces
-
A web UI for label creation and printing on a Brother QL-710W on Linux
-
Mastodon for Dummies: a book review
-
Getting a Brother QL-710W label printer working via CUPS on Debian
-
Desktop Linux: the software I'm currently using
-
Attempting to prohibit(?) code contributions which might have used an LLM such as Copilot?
-
Fixing apt yarn key deprecation warning in Debian 12
-
Mounting LUKS-encrypted disks by UUID
-
Initial thoughts on storing TOTP seeds on YubiKeys instead of in Bitwarden
-
I went to the cinema. It sucked
-
Improving our business, with Open Ideas
-
Making my ThinkPad LED flash 'decoded.legal' in morse code
-
I'm not sure that I can trust Bitwarden with my TOTP codes anymore
-
hugo, cron, publishdate, and auto-publishing blogposts
-
Moving from htmly to hugo for a static site blog
-
Fixing an Intel NUC with unknown supervisor or user BIOS password and a Secure Boot error
-
Intel NUC with no display output
-
Should I feel bad for buying second hand?
-
Switching to the glitch-soc fork of Mastodon
-
Setting default View options for folders and sub-folders in Thunderbird
-
Triggering a remote lamp automatically when I am on a call
-
Disabling my ThinkPad's internal camera on boot
-
A month using XMPP (using Snikket) for every call and chat
-
Fixing dropbear ssh Permission denied (publickey) error
-
Bodging a web-controlled garage door opener with a Raspberry Pi
-
This is a test post
-
You know you don't have to reply, right?
-
Snikket, a self-contained XMPP distribution
-
Unpicking 'The fediverse needs to do [x]' posts
-
Removing LinkedIn from DuckDuckGo searches in Firefox
-
Can I have a cable... please?
-
Barclays is closing its Contactless Mobile payment services on 30 June
-
Why I suspended my LinkedIn account
-
GSConnect (KDE Connect), WireGuard, and Debian 12 Bookworm
-
Book review: Cory Doctorow's 'Red Team Blues'
-
A reminder of useful Thunderbird keyboard bindings and add-ons
-
Unlocking a LUKS-encrypted partition via ssh on Debian 12 Bookworm
-
NetworkManager: automatically switch between Ethernet and Wi-Fi
-
Fixing sogo's 'incorrect string value' error
-
Updating the LUKS key derivation function on Debian
-
Backing up to a USB stick automatically via udev
-
Fixing espanso incomplete text replacement
-
Flatpak Firefox 112 not showing (some? bitmap?) fonts in Debian
-
Automating actions in Nautilus (GNOME's file manager) with scripts
-
Giving up Twitter, and the impact on my business
-
Jabra Evolve2 40 and Debian Linux
-
Debian on a £190 Lenovo ThinkPad X1 Yoga Gen 2
-
Enabling Webauthn in Firefox via snap
-
Decrapifying (mostly) an Amazon Fire 8 HD Kids tablet via Linux
-
Solved: LibreOffice Writer PDF exports have the template name
-
Microsoft SurfaceBook 2 running Debian Linux working with two 4K screens
-
Internet Time, in a watch!
-
Back to Firefox again!
-
Turning a Raspberry Pi Zero W into a travel media centre
-
Firefox, flatpak, reveal.js, and local file system permissions
-
'How Sex Changed the Internet, and the Internet Changed Sex': a review of Sam Lee Cole's new book
-
I taught the law and the law won
-
My cellular data usage and ponderings
-
Removing the password from a PDF file
-
Using a Garmin Edge 705 with OpenStreetMap for a cheap bike computer
-
£15 for an Amazon review?
-
Anatomy of some annoying, persistent spam
-
Home Assistant Core, Raspberry Pi OS, and python 3.10
-
Fixing rkhunter's 'Update failed' error
-
What happened to the netbook?
-
Online Safety Bill and individuals, volunteers, and community groups
-
Learnings from a recent conference call for papers
-
ffmpeg incantation for converting .webm to .mp3
-
Rotating all pages in a PDF document (pdftk)
-
Automated banana cleaners: an honest appraisal
-
Being a good neighbour, people pleasing, and puns in the Fediverse
-
PINE64's PineBuds Pro: my first impressions
-
#FreeSoftwareAdvent: all my Free software suggestion posts in one place
-
Wireless printing and scanning with a Brother MFC L2750DW on Debian
-
Adding image resizing options to nautilus right-click menu
-
Syncing signatures in Evolution
-
Unwanted spam on Ubuntu ssh login (and how to stop it)
-
WireGuard not routing IPv4 traffic: GNOME 3 / Network Manager
-
Scheduling posts on Mastodon, the hack-y way
-
Early impressions of CryptPad on a Raspberry Pi
-
The fediverse, harassment, and moderation
-
Using a YubiKey (or other security key) for sudo via pam
-
Fixing a UniFi controller where the admin user cannot log in
-
My home in the fediverse: Mastodon on a Raspberry Pi
-
RSS as my default web browser (for some stuff)
-
Removing pages from a PDF with pdftk
-
Triggering a Shelly bulb via URL actions from a Shelly Button
-
Android 13, GrapheneOS, freeradius, Wi-Fi authentication, and Let's Encrypt
-
Fixing 'ERROR: could not insert v4l2loopback: Key was rejected by service' when using linux-surface on Debian 11
-
Installing GrapheneOS on a Google Pixel 6
-
Unsuspending a £50 120GB EE data SIM after six months of use
-
Bypassing captive portal detection on Android 10
-
Running the greenbone OpenVAS vulnerability scanner on a Raspberry Pi 4
-
@theDPOdaily's question about encryption and pseudonymisation
-
Installing SIP client Blink on Debian 11
-
Sending post to people: spreading a smile via Royal Mail (or not)?
-
SurfaceBook 2 13: keyboard layout for English
-
Rotating all the odd pages in a PDF document
-
LibreOffice Writer, deleting comments, and tracked changes
-
Samsung Galaxy Tab 9.7 and postmarketOS: building a custom image
-
Samsung Galaxy Tab 9.7 and postmarketOS: initial impressions
-
Microsoft Surface, Debian, and two 4k monitor frustrations
-
'Self-host it' is not the answer
-
Stepping outside my comfort zone: virtual coffee chats with people I talk with on social media
-
Deleting video chat apps from my computer made video calls better
-
A year with password manager bitwarden
-
Book review: Death Ray
-
RWG Mobile APN for non-data SIMs
-
Brave incorrectly showing sites have ads and other creepy things when visited via DuckDuckGo?
-
Initial impressions of a second hand Brompton Electric H6L
-
Fixing Jitsi Java Runtime error from recent update
-
Converting Outlook .msg email files for opening on Linux
-
Getting back to meeting people in meatspace
-
Tinkering with reveal.js: a slick, JavaScript-based, FOSS presentation framework
-
Brave: sharing URLs via QR codes
-
You don't have to leave Twitter to use Mastodon, and other stories
-
#OnlineSafetyBill bingo
-
A global scale-to-fit for the PinePhone Pro
-
Fixing my 3D printer: a new LCD, and angling my models
-
Resolving a certbot apache plugin syntax error
-
Transfer your computers clipboard to a camera-enable mobile device via QR code
-
An independent assessment of the UK's Safety Tech Challenge Fund without assessing legal or data protection compliance
-
eReaders and eBooks: my Kobo Clara HD
-
Fixing an array_filter() php error when using PHP 7.4 with dokuwiki's twofactor plugin
-
Upgrading my .onion site to https
-
Turning a taxi into a conference pod
-
How could a website operator identify where in the world a specific user is right now?
-
Brave, Tor, and http-only .onion sites
-
Auto-connecting a VPN on a Wi-Fi connection from a mobile router on Debian 11
-
New plans to protect people from anonymous trolls online: new UK government proposals
-
I have a complicated relationship with cryptocurrency
-
But it's not unlimited...
-
Browsers for people who just want a browser
-
Why would any young thing even consider becoming a solicitor nowadays?
-
Migrating mastodon to Debian 11 Bullseye: fixing the segfault
-
A quick and dirty approach to redacting PDFs on Debian 11 Bullseye
-
Age verification, legislation, and the money-making opportunity
-
Safer Internet Day 2022. At least we know what were trying to achieve. Right?
-
PinePhone (Pro) keyboard case v. Planet Gemini v GPD Pocket 2: a photo comparison
-
Cloning a Raspberry Pi installation: slow, but working
-
Safety Tech Challenge Fund: Supplier Showcase: some quick thoughts
-
Fraudulent actions as personal data of the fraud victim: some ponderings
-
The Wild West Web fallacy
-
An unplanned business continuity test, and what I learned from it
-
Implementing BusKill: shutting down a Debian 11 Bullseye machine when a specific USB device is removed
-
Book review: Underground: Tales of Hacking, Madness and Obsession on the Electronic Frontier
-
End to end encryption, and services which let you meet and message people you do not already know
-
Fixing 'tee: command not found' on Debian 11 Bullseye
-
Installing Twitter client cawbird from the official Debian 11 Bullseye repo
-
A prohibition on end to end encryption could leave you with #NoPlaceToHide. And that's not a good thing.
-
Age verification: an Epic mess
-
The Curious Case of the Spurious CLI
-
The end to end encryption debate: 1: the (very) basics of encryption
-
Book review: Anne E Currie's Panopticon series, books 1 and 2
-
GNOME display fractional scaling
-
What happened to Internet radio?
-
Open Access publications: address and phone number, please
-
Installing Debian 11 on a Microsoft Surface Go: secure boot, mokutil, Wi-Fi, and libinih1
-
WireGuard VPN plugin for NetworkManager in GNOME 3 on Debian 11 Bullseye
-
Book review: IDENTIFIED
-
Book review: The Warehouse
-
Near-distant scifi fiction recommendations from Twitter
-
Public safety by design: the catchphrase for Internet policy debate in 2022?
-
Book review: Hacker: The Outlaw Chronicles
-
Book review: The Last Hacker
-
Adding music from an ssh-accessible remote server to an Android phone via Debian 11
-
Side-loading books to a Kindle from Linux via calibre
-
Confession time
-
PineTab running Mobian and GNOME: an iPad replacement?
-
Temporarily and automatically changing firewall rules to permit Lets Encrypt certificate renewals
-
Home server, or homework? Minecraft or mine field? The draft Online Safety Bill would restrict net neutrality to the well-lawyered
-
PinePhone: WireGuard, dns-over-https, and other thoughts
-
Funding Free / open source software: what can I, personally, do differently?
-
Setting up a Ledger Nano X with Debian 11
-
CCTV or IP cameras outside your home, and the (UK) GDPR. It's easier than you think
-
Do you still buy or watch DVDs or Blu-Ray discs? Why?
-
Introducing elfOS: making The Elf on the Shelf fit for the digital age!
-
Quick Image Montages
-
Mobian on PinePhone: software notes
-
Three problems with the Age Assurance (Minimum Standards) Bill for keeping children safe online
-
Installing Mobian with full disk encryption on PinePhone
-
Online safety, doing good, and inconvenient fundamental rights
-
My initial - and very positive - impressions of the pine64 PineTime smartwatch
-
What if you could only speak online if you had a car number plate: quick comments on yet another weird Internet surveillance proposal
-
Resurrecting Part 3 Digital Economy Act 2017 is not the answer
-
Changing a (known) LUKS passphrase
-
We must not let perfect become the enemy of good
-
Might an indie podcast be classified as “user-to-user” content and so subject to the hate speech provisions in the draft Online Safety Bill??
-
Brave browser: less privacy-respectful than I was expecting
-
Raspberry Pi, pihole, unbound, nginx, doh-server: some quick notes
-
YouTube (and other video sites) without the irritations: integrating yt-dlp and jellyfin, with a web interface
-
Migrating mastodon to a Raspberry Pi 4
-
Email, interception, fraud, and solicitors
-
Introducing the Internet policy red team: the underappreciated scrutineers of online regulatory discourse
-
Making [vulnerable group] safe online: unpicking those who spin a line to sell their proposal
-
freeradius-allocated VLAN on Wi-Fi on an Apple TV via a .mobileconfig profile
-
Should tech companies be subject to an obligation to consult?
-
There is no i in Teams. And rarely a Neil
-
Detecting child sex abuse imagery in end-to-end encrypted communications in a privacy-respectful manner
-
Using freeradius to assign VLANs for UniFi Wi-Fi
-
A change of plan: why you wont be able to vote for me for the Nominet board
-
Adjusting the scroll speed of an Apple Magic Mouse on Debian 11
-
Wayland, clipboards and wl-clipboard
-
Surface Pro 6, Debian 11 Bullseye, Gnome 3, Wayland, and two 4k@60 external monitors
-
I am standing for election as a Nominet non-executive director
-
Microsoft Surface Pro with Debian 11 Bullseye: emulating right-click on Type Cover trackpad
-
Moving from macOS to Debian 11 Bullseye Linux: applications
-
Installing Chitubox (3d printer slicing software) on Debian 11
-
3D-printed Microsoft Surface Pro 6 cable strain relief
-
RSS feeds for Internet tech, policy, and legal stuff (and some other bits)
-
Debian 11 and printing on a Samsung ML-2525W
-
Working front and rear cameras on Debian 11 on a Surface Pro 6, SurfaceBook 2, and Surface Go
-
Ubuntu on a OnePlus 6T: a good start, but too many compromises
-
Time for your compulsory home camera installation
-
Virtualising an existing macOS installation for VirtualBox on Debian 11
-
This one simple hack solved my Debian 11 Bluetooth audio problems
-
Whose liability is it anyway?
-
Data protection, privacy, and other bits for personal websites
-
Wi-Fi on a 2012 Mac Mini, running Debian 11
-
Aztine 15.6 Portable Monitor with Debian 11 on a Surface Pro 6
-
Auto-unlocking a LUKS volume on an SD card on boot with Debian 11 Bullseye
-
Making a Mac Mini power up when power is restored: Debian 11 version
-
Installing Debian Bullseye and VirtualBox on a Mac Mini
-
Handwriting, and annotating PDFs: a stylus on Debian 10 on Surface Pro 6 compared with an iPad
-
Removing the default games in GNOME 3 on Debian 10
-
Installing Debian 10 Linux on a Microsoft Surface Pro 6
-
Raspberry Pi 4 with the PoE+ HAT: LUKS and a working fan
-
Installing vanilla Debian 11 on a Raspberry Pi 4
-
Fixing a font which shows in macOS Font Book but not in macOS LibreOffice
-
Unlocking a LUKS-encrypted partition via ssh on Debian 10 and Debian 11
-
Internet access via iPhone's personal hotspot on Lubuntu 21.04
-
Lubuntu 21.04: forcing natural scrolling on a mouse
-
Gemini PDA running Debian: a properly portable computer
-
Debian 10 on a Samsung NC10
-
I bought a taxi online as a personal car
-
Fire Made Flesh: a book review
-
Second impressions of the Elegoo Mars 2 3D resin printer
-
First impressions of the Elegoo Mars 2 3D resin printer
-
Are you intruding on someone’s privacy is you are actively doing OSINT on someone?
-
Running Jitsi on a Raspberry Pi 4
-
Internet connectivity: how fast is fast enough?
-
Online speech-to-text transcription and the ePrivacy directive
-
DNS-over-https on macOS and iOS
-
wireguard via algo: a simpler, faster(ish) alternative to IPSec
-
Supervision is not the same as total surveillance
-
Jam: my initial take on a FOSS alternative to Clubhouse
-
Playing with html5 video
-
Useful books for advancing your business
-
Book review: Rehumanize Your Business
-
Review: Xiaomi DZN4006GL Mi Pump Air Compressor
-
Changing my Brompton's front mudguard
-
Healthy eating, my new year's resolution, and body image
-
Self-hosted disposable email addresses with AHEM
-
The EZ Clamp Spring: keep your clamps in position
-
Nice rack!
-
Christmas chocolate cheesecake
-
My first ride through a Tier 4 Newbury
-
Fixing a very noisy Brompton
-
I finally cycled in London!
-
Getting started
-
I (finally) bought a Brompton