Skip to content

2025λ︎

Darker days

The days are starting to get shorter. Time to start getting up earlier :)

This year continues to been filled with many dark days across our society of human beings. Selfishness seems abound, driven by fear created by the few to manipulate the many. The ever increasing propaganda seems to know no end.

When you are put into a position of constant fear of the other, you are loosing a party of your humanity and missing out in the multitude of joys in our world.

It is easy to forget that these hostile views are from a vocal minority who really do not understand the damage they are doing to our society and themselves. Unfortunately they also impact the lives of everyone else.

One regular tonne from those in fear is that they are loosing their identity because of others. How can this be the case when each person's identity is shaped by so many active and passive experiences. Fear shuts down the intricacies of each persons identity. Prolonged fear reduces a person to a mindless savage, capable of unbelievable hate towards others (and themselves).

The movement of people has been the bedrock of human survival and evolution over the last 10,000 years. To think this would ever stop is to deny a significant part of our society. Went people are welcomed into a society, they contribute and become part of a richer society. When we fail to all welcome people into our society then people do not feel they can become a part of our world. When a vocal minority throws hate or even bricks, then not only those on the receiving end feel hurt, our whole society is greatly damaged.

A cold and foggy start to a nice 112 km ride on Monday which brightened up just over half way. I had lots of layers on, including 3 pairs of socks and 3 pairs of gloves. Surprisingly I managed quite a few personal best times along the route. I thought we were going quite steady.

I was quite exhausted on Tuesday though, I seem to have some covid or flu symptoms affecting me and draining my energy. I will start doing deliberate breathing to help keep my lungs clear.

Wednesday was a big organisation and tidy up of the house, as a plumber is coming to service the boiler on Thursday. I gave away the last of the IKEA 365+ food containers I bought a long time ago. The containers always felt a bit top-heavy (they are tapered with a small base). I posted them on Freegle at the weekend and after one person didnt turn up, another came on Wednesday.

Thursday the boiler was serviced and I also arranged a service for my neighbour (who looks after my cats). One of the people I cycle with is a plumber, so its nice to have someone I can trust looking at the boiler. My boiler is in very good condition, which is nice.

Saturday I was helping my neighbour identify the cause of a vibration with their central heating system. After around 45 minutes of heating the radiators, the boiler was creating a very loud vibration. This vibration occurred every 5 minutes or so, for about 30 seconds. I bled the radiators, a couple of which did have a lot of air in. The issue remained. After a bit of a hunt the water pressure

A brave new world

Another 3 cycle rides in a row this week, covering 256 km distance for the week. This would be about 50 km more than I used to commute each week when working in Central London (before Covid). The first two rides went well, the third was in colder conditions that I prepared for, so I was a little cold during the ride.

Three cycle rides in a row seem to be quite a challenge, although 2 rides in a row seem to be okay.

Started watching Star Trek Discovery from the beginning. I find it a very engaging with an intricate combination of plot lines. The most involved of any series from the Star Trek world.

Hyprland

After some experimentation I finally got Thunar file manager dialogs appearing in nice places on the screen.

Experiments with Hyprland window rules

# Practicalli - set Thunar popups to float
# Didnt seem to work
# windowrule = float, initialClass: thunar, title: Rename: .*
# windowrule = float, initialClass: thunar, title: File Operation Progress: .*

# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more

# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$

# Practicalli - set Thunar popups to float using windowrulev2

# Make all windows float
# windowrulev2 = float, class:.*

# windowrule = move 100%- 100%-,class:^(thunar)$,title:(Rename.*)$

# popups appear center of display by default
# stays focused until dismissed - not sure if this makes a difference...
# windowrule = float,stayfocused,class:^(thunar)$,title:(Rename.*)$
# windowrule = float,stayfocused,move cursor -50% -50%,class:^(thunar)$,title:(Rename.*)$
# windowrule = move cursor -50% -50%,class:^(thunar)$,title:(Rename.*)$

# Show thunar rename popup at the mouse pointer position
windowrule = float,stayfocused,move cursor -50% -50%,class:^(thunar)$,title:(Rename.*)$

# windowrulev2 = move 100%- 100%-,stayfocused,class:^(thunar)$,title:(Rename.*)$
# windowrule = float,class:^(thunar)$,title:(File Operation Progress.*)$
# windowrulev2 = float,move 100%- 100%-,class:^(thunar)$,title:(File Operation Progress.*)$
windowrule = float,class:^(thunar)$,title:(File Operation Progress.*)$
# windowrule = move onscreen 100%- 100%-,class:^(thunar)$,title:(File Operation Progress.*)$  # wrong format
# windowrule = move onscreen 80% 80%,class:^(thunar)$,title:(File Operation Progress.*)$
windowrule = move onscreen 100%-24 100%-24,class:^(thunar)$,title:(File Operation Progress.*)$

Opinionated Hyprland

There is an opinionated Arch/Hyprland distributon (has a maintainer with very dubious opinions). It is available as a self-contained ISO, so no internet downloads should be required during the install.

This does mean a 7 GB download is required, along with a USB stick or suitable SD card of 8 Gb or more.

There are links to the ISO image on the website and in the manual, but I didnt see a link to a checksum file to check the integrity of the download.

Caligula is recommend to burn the ISO to the removable media on a Linux operating system. I like this tool.

Burn opinionated ISO to usb memory stick

caligula burn ~/Downloads/opinionated-3.0.1.iso

Caligula will prompt for a checksum file if one is not found. Unfortunately I did not have time to hunt for one.

Caligula shows a selection list for all the removable media it finds, detailing the size of that media. I recommend only the USB memory stick to be used for opinionated to be plugged into the computer, just in case :)

After 915.3 seconds (caligula shows the times) the opinionated image was written to the USB memory stick and verified the image was written without error. 653.8 seconds to write the image, the rest to verify.

NOTE: I used an old USB Memory Stick (USB-A) which I picked up somewhere for free. Newer USB sticks with USB-C or SD Memory cards may be faster.

Booting from the USB Memory stick displayed a simple opinionated menu system to define key information about the user, login name & password, Full name and email address (used for Git authentication), computer name and finally selecting where to install opinionated.

After 7 minutes 23 seconds opinionated was installed.

Enter to reboot the computer and remove the USB memory stick after the computer shuts down, just before starting again.

opinionated starts with a simple login screen, with a prompt for the users password.

NOTE: I had to login a second time, as a few seconds after first entering the password opinionated returned me to the password prompt.

It will be interesting to see how much tweaking I feel compelled to do over the coming weeks.

Removing software

Super + Alt, SPACE > Remove to remove software not required.

The computer used to test opinionated has 8Gb of memory and 256 Gb or storage, so larger programs and those not otherwise not being tested can be removed.

  • libre-office - wide range of office documents (I use Google docs, sheets, etc.)
  • Obsidian - not taking app (I use Neovim instead)
  • Typora writing tool (commercial)
  • Dropbox file sharing and syncing
  • Spotify supports dubious podcasts so philosophically objection al to me

Evaluate software

There are many software packages installed and even more made installable via the opinionated menu.

  • Kdenlive video editor (an alternative to Blender)
  • Signal end to end encryption (is there a need for this?)
  • LocalSend sends files to other devices across the network
  • mpv is that better than vlc ? - I prefer VLC, but mpv seems quite usable. I will stick with VLC.
  • Tailscale VPN

Terminal

Switch to Kitty terminal and reuse the Practicalli dotfiles or appreciate configuration options from there.

Super + Alt Space to open the system menu. Navigate to Install > Terminal and select Kitty.

A prompt shows to enter the sudo password and installs Kitty packages on correct entry.

A Restart Hyprland button appears once install is complete. This sets opinionated to use Kitty as the default terminal, opening all requested configuration files in that terminal (and Neovim).

Slack

Not clear how to install slack.

Hyprland tweaking

Before any changes, version control the original configuration so we can easily track what has been changed from the defaults.

Assume this is done with Neovim and lazy, to update config files

  • enable natural scrolling

Thank you.

🌐 Practical.li Website

Practical.li GitHub Org practicalli-johnny profile

@practicalli@clj.social @practical_li

A lighter load

Three rides in three consecutive days this week, so I am looking forward to a relaxing Sunday. I plan to cuddle up with Omarchy.

I continue to use Garuda Linux for a Hyprland & Wayland based system on my main computer and it is an enjoyable experience athough there has been quite a lot to learn.

As the huge push for 'AI' services over the last year has been mostly hype I have dismissed much of it. To evaluate if there is any value in the current 'AI' tools I've started considering how I gather and organise information, to find opportunities for optimisation.

Downsizing my life continues with my older bicycles and accessories being recycled or upcycled. I am also investigating where are effective places to sell my bicycle.

I bought a Cannondale Quick Carbon Hybrid bike back in 2018 for commuting into London (42 minutes was my fastest time into London, this was before the cycle super-highways).

Cycling UK has tips on selling a bicycle. There is also a For Sale Forum. I have posted my Cannondale hybrid bike on this forum to see if there is interest.

Bike Delivery provides a delivery service for 42.99 GBP, with a further 19.99 GBP for a cardboard box to pack the bike in. 100 GBP liability insurance is free, 14.99 GBP for cover up to 500 GBP.

I will still have 3 bicycles left after I sell one.

I have a much greater appreciation for a simpler life over the last few years (since Covid). I will focus on a small number of things I value deeply.

This simplification lightens my mental load and enables focus on the things I really value. It will also be far easier to relocate, should I find a new place to live.

It sounds like the HMRC is swampped with self-assessment returns. According to the Gov.uk website it will be 44th November by the time they process and reply to my self-assessment submission.

The Gov.uk website has a check the status where an estimated date will be shown. along with the current submissions date being processed (16th May). It may be worth checking again in a few weeks to see if HMRC has got faster or slower.

Getting healthier Feeling healthier

I've lost 1 and a half bags of sugar in the last 4 days and had an excellent ride through Northern France, so feeling very motivated.

My Hyprland setup is working well, so I should be able to stop yak shaving all the configuration files 🤣 I do need to version control the config and document Garuda Linux and my own preferences for Hyprland.

Neovim 0.11.4 released with a several changes to key bindings to investigate. Some changes are moving to newer standard function calls. There are also new mappings for navigating quicklists, locaiton lists and tag-match lists.

  • [ Space adds a space above the current line, without moving the cursor
  • ] Space adds a space below the current line, without moving the cursor

Adventures in Hyprland and France

The nights are getting darker but that means more chance for star gazing.

Monthly updates for practicalli projects, updating dependencies on the Clojure CLI Config and Project Templates repositories.

Testing out new toys for the bicycle, including an electric pump, RideNow TPU inner tubes and Continental Gran Prix 5000 cream & black tyres. Final maintenance before my weekend cycling adventure.

The Hyprland configuration seems very stable now, with only minor enhancements. I havent quite got a hand of the window layout system yet, at least not in the same way as I could with i3 (Regolith desktop).

Setup Clojure on Arch Linux for the first time. The packaging is well done, although the install location, /usr/share/clojure is different to the manual script install I am used to on Debian Linux.

1001 GitHut Commit Streak

On Sunday 17th August 2025 I completed 1,001 days of successive commits in GitHub (without cheating).

Practicalli Johnny profile - GitHub activity statistics - 1000 day streak

Some job hunting during the week included being contacted by a recruiter from Docker regarding an engineering manager role (security division). The recruiter that helped get me a position at Citi also got in touch for a healthcare engineering manager role.

Planned a longer cycling route to the Isle of Grain, one of the more remote parts of Kent. Grain village is right by the sea and there is a long sandy beach there. As its a remote location, there are very few people around usually.

I've taken several trips to Grain with my friend Gaiville who I trained and cycled with from Lands End to John O'Groats in 2019.

I've altered the start of the route previously used to accommodate people from the local cycling club.

Movies to see

Movies watched

  • September 5 covers the terrorist attach at the 1972 Summer Olympics in Munich, told from the perspective of the people working at the ABC sports division who were able to broadcast live much of the tragedy.
  • A Simple Favour with Anna Kendrick in the lead role, as the perfect mom who gets involved with some 'interesting' people.
  • Matrix trilogy a relaxing bank holiday movie marathon and even after 25 years the movies looks great and are still very engaging.

Current TV shows:

  • Twisted Metal is quirky and fun show with bizarre and disturbing characters who are also quite likeable too.
  • Star Trek Strange New Worlds I find to be a very fresh and fun take on the Star Trek world, whilst still having darker storylines and background threads.
  • Gravity Falls watching this show again for about the 5th time, using it as my brain switch on / switch off show. I have watched Rick n Morty too many times 🤣

Another heatwave

This week we have the pleasure of another heatwave in the United Kingdom. Its not quite as extreme as the one in July (37 degrees Celsius), but it will in the 30 degree range again for several days.

The week started with a cycle ride to collect some new shoes. In training for a ride up a mountain during a French trip I did two more ~100km rides back to back

I use the Lake brand of shoes as they have a wide fit size. Although going through there very detailed sizing chart it was clear that not all shoes were wide enough for my feet (without being far too long).

Is AI worth the cost

OpenAI gives a curl command to initially test the account setup, then its nothing until a credit card is added to the account. So is it actually worth spending money on something I cannot try out first?

Watching Beacon 23 again and enjoying it even more a second time around. The first viewing I was a bit confused with the storyline jumps, but it makes a lot more sense now.

The Editor code assistant plugin for Neovim had a bit update, although it is no longer running the ECA server.

The Saga Begins

I tried using Hyprland with Debian Linux a few months ago but the packages are a little out of date even when using the unstable (SID) distribution. As I had been using SID packages, then the Debian Linux system had become a little too unstable for day to day use. Interestingly I installed the KDE desktop and that worked very nicely before I started again from scratch.

Hyperland is kept up to date in Arch Linux although there is a lot more work to learn and maintain arch linux compared to Debian Linux. pacman command options are quite cryptic and I found them hard to memorise. Its also easy to break things doing an update (the downside of a rolling release based distribution).

Garuda Linux adds some nice tools on top of Arch Linux (and can also used the Nix sub-system) to simplify overall package upgrades and a range of other maintenance tools.

Supporting the editor-code-assistant/eca-nvim project via testing and feedback. Contributed a plugin spec for lazy.nvim plugin manager. The eca-nvim plugin is in very early stages, but I got a prompt to appear in Neovim 😃

Health and fitness continues to improve and the number of cycle rides and distance continues to increase. In July I completed 800km distance from 11 distinct rides, totalling around 35 hours of riding across the month (not including stoppage time).

Cycling maintenance seems to be complete for both the Ribble SL Disc and Bianchi 928 RC road bikes.

Aims:

  • DONE: new cleats for the black & red Lake shoes (and readjust cleats on white lake shoes)
  • DOING: upgrade OS on rangerone (Garuda Linux Hyprland flavor)
  • BLOCKED: continue eval of shuttle and rust experiments - on hold due to service outages
  • TODO: update Practicalli Clojure hot loading examples

Practicalli working

Much cooler week and my ankle is feeling sore, so more focus on work this week.

Aims:

  • update Practicalli Clojure hot loading examples
  • continue eval of shuttle and rust experiments - on hold due to service outages
  • new cleats for the black & red Lake shoes
  • upgrade OS on rangerone (Garuda Linux Hyprland flavor)