#weeklyreview 48/2024

Started the Sunday with a run through the rainy forest. Thought my running partner would bail out due to the rain, but he didn’t. That’s why I like partners in crime with sports activities. I would have not have run that morning as it was really too wet. But cancelling a commitment to a friend – no way.

And of course we went swimming afterwards. The week was rather cold and even had a bit of snow. The lake cooled down to 4 – 6ยบC

Finally the gym is open

After almost half a year of renovation, the gym in the office is finally open again. I know I’m spoiled, but I did miss my almost daily training sessions.

Did three days in a row this week plus running in the evening with a friend. That doesn’t compensate for the laziness the last couple of months, but it’s a start.

HERE Winter Party

On thursday we had our office winter party. That was fun and I met some colleagues and friends from Eindhoven as well ๐Ÿ™‚

A lively nightclub scene with people dancing and mingling under dim lighting. In the foreground, a glowing red sphere with the number "43" is prominently displayed, adding a distinct focal point. The background shows a busy bar area with decorative elements and ambient lighting.

Angela Merkel

On Tuesday there was a book signing event at the Dussmann Kulturkaufhaus with Angela Merkel. She would be signing her Memoir called “Freiheit”. I showed up one hour earlier to get a spot in the line and a chance to get the book signed. It was a bit chaotic on site. There were queues in the ground and first floor. I tried to find the end to enter the queue. But turned out both queues had turned into a circle with no end or beginning. Asking the staff didn’t help. They were unaware and unorganised at this point in time. But slowly realising that they had to step in. So the just split the queue in the lower flow and guided the ever growing number of people to start forming a queue outside. So I had to wait a bit outside the entrance the queue was quickly growing around the block.

I waited about 1,5hrs in the queue and signing had started meanwhile. But the queue barely moved 4 meters. Eventually a store manager came outside and announced that the people waiting outside will not make it as there are far too many people waiting. Apparently more than 500 people had queued inside already and there was probably the same amount waiting outside. Merkel only was scheduled for 1,5hrs.

So I left without a signature. Will have to catch up with here somewhere in the ๐Ÿ˜‰

A person holds a book titled "Angela Merkel: Freiheit" with a photograph of Angela Merkel on the cover. The book has a blue background, and the person holding it has colorful nail art.

Cooking

made a “proper” pasta bolognese from scratch. mmmhhh , that was good.

Christmas tree

On Saturday we had our traditional Christmas tree decoration in the village. As every year, the people of the village gathered around the tree that was donated by of the villagers. We brought some snacks, cakes, bbq, hot and cold drinks etc. and were enjoying to community event.

Our village even managed to have Santa Claus for the children again this year (there was a dispute between the man that used to organise this the last years, and so the former Santa was cancelled this year. Big drama in the village).

#weeklyreview 47/2024

Of course the week started with swimming (for this series of weekly reviews I’ll take the Sunday as start of the new week). Not all the way across the lake as it’s getting a little chilly in the water now and we didn’t had that much time.

Coding

while writing on last weeks review it nagged me that the WordPress blog posts don’t have image descriptions. I know it’s just me being lazy to put them in in the first place. But I’m meanwhile spoiled by IceCubes app which can autogenerate image descriptions.

So I started chatting with ChatGPT about writing a little helper program in Rust which would get an image description from the OpenAPI API and then upload the picture to my WordPress and put the description as well. It slowly took shape but didn’t quite get there apart from it getting late in my day …

A cartoon polar bear sits at a desk using a laptop, with a chalkboard in the background featuring a mix of symbols, drawings, and indecipherable text.
generated illustration with DiffusionBee

I was about to give up and sent a toot before closing my laptop. But then someone replied that they had more success with Claude.ai instead of ChatGPT for Rust programs.

↬mas.to/@ingenieur/113506074188779262

And indeed. The code seemed much better and I got a first working version that night. You can find the code and some pre-compiled binaries on my Forgejo instance.

To process multiple files I used a simple shell loop:

No thinking where to take this next. I’d like to update the image descriptions of the existing images in WordPress. Could do this from remote as well. But an actual WordPress plugin probably makes more sense here.

Other idea is to use a local LLM to generate the image description so you don’t need to upload the images to OpenAI.

This is really a rabbit hole. But programming is much more satisfying the herding cats as a project/program manager ….

And because self-hosting is fun … I also set up an instance of Asciinema. The “shell cast” above is an example of this.

Walking

Since the office gym is still closed I’m missing out on a lot of exercise ๐Ÿ™

Started walking to the office more often. It’s a 4.5km walk in one direction. So adding up close to 10km of walking per day. Not too shabby. Now that the weather is turning colder and more rainy it’s even more fun ๐Ÿ˜‰

Updated my nails again as the color faded and crackled.

A hand with bright red and rainbow-painted nails rests on a wooden table near a full beer bottle and a glass of beer, both placed on branded coasters. Another person's hand is visible in the background.

First snow

This week we finally had some snow. It didn’t stick in Berlin, but the on the countryside one actually had a thing white blanket over everything. Even when we arrived there on Friday evening there was still some snow on the sides and roofs. The low sun made for some incredible sundowns in the late afternoon.

A vibrant sunset illuminates the sky with shades of orange and pink above a dense cluster of trees with varying foliage colors, including dark greens and yellows. Some bare branches are visible, indicating a transition into autumn. The overall scene evokes a calm, serene atmosphere.

On Saturday we had our annual “Vereinsfeier” at the house of some friends. Always lovely to see the people from the village and have them bring all sorts of food and chat away into the night.

A pink deer head sculpture with lit candles on its antlers is placed on a wooden table beside a bowl filled with cables and papers.

#weeklyreview 46/2024

it’s getting cold outside

Swimming on Sunday was again a little colder than the weekend before. The whole week had rather low temperatures even during the day. So this Sunday the lake water had around 8ยบ C while the air was around 0ยบ C.

Still managed to cross the lake without dying ๐Ÿ˜‰

Procrastination finished

I finally finished my blog post about setting up SSH access with FIDO keys. That was in the drafts folder for a couple of months now. I’m using my two Token2 hardware tokens wherever possible now. Also for SSH connections. Tiny bit annoying to enter the PIN all the time, but better getting used to this additional layer of security.

Cleaning the cemetery in the village

On Saturday the people of the village joined forces to clean the cemetery of the fallen leaves and other stuff. We were also again cutting down some trees that have grown too much. Always a fun event working with these people. It’s a lovey mixture of old residents who spent almost their entire live in this tiny village and then “immigrants” of various age and place that either moved their or have a weekend home in the village. Everyone gets along really well and helps the community. Of course it’s celebrated with some beverages (mostly beer ) in the end.

The kids had fun jumping and diving into the large piles of leaves. The adults had fun using their machinery to cut and shred the trees :D.

In the afternoon some friends and I did an additional brief swimming session in the lake. The water hasn’t cooled much since last week. Was good enough for a short dip.

Calm lake with clear, shallow water in the foreground, surrounded by tall reeds on both sides. The distant shoreline features a forest of leafless trees under a cloudy sky.

PopChor is rocking on heavens door

Saturday evening we were attending a concert of the PopChor Templin. That was really nice. If it hadn’t started an hour later than originally scheduled, we would probably have stayed even longer for the two bands after the PopChor. Some impressions from their previous concerts this year can be found on YouTube.

SSH with FIDO2 keys on hardware tokens

I recently bought a pair of Token2 FIDO2 hardware security keys. Those are USB/NFC devices to store cryptographic keys on and use them for authentication purposes on various services.

Beside the main purpose of serving as my Passkey supply I’ve set them up to be used for SSH authentication as well.

This is straightforward meanwhile if you meet the prerequisites of using a recent version of SSH (OpenSSH >= 8.3)

Technicalities

SSH authentication by means of cryptographic keys usually works with an asymmetric pair of keys as you might know from tools like PGP. You put your public key part on the server you want to log in to. When opening an SSH session to the server, you provide your private key to sign the authentication challenge given by the server. The server verifies it’s really you by checking the signature of the challenge with your public that you placed on the server earlier.

For the FIDO2 keys, this is slightly different. The private key on your machine is not actually stored on the FIDO2 key. Instead when you create an SSH key to be used with the FIDO2 key you create a reference (key handle) to the FIDO2 hardware key that acts as your private key part.

Generating the SSH Keypair

To make use of your FIDO2 key for SSH you have to generate a new SSH key pair which is associated to your FIDO2 hardware key.

ssh-keygen -t ed25519-sk -O resident -O verify-required -C โ€œCommentโ€

the option -t ed25519-sk will tell SSH to generate a key using the Elliptic Curve cryptography algorithm. More specifically the ED25519 curve. The suffix “-sk” indicates that this will be a key handle associated with the FIDO authenticator.

the option -O resident tells SSH to store the key handle on the FIDO key itself, the option -O verify-required will require you to press the FIDO key when requested to confirm your physical presence. And finally -C "Comment" should be obviously the comment of the keypair.

putting your new SSH public key on the destination server

As with normal SSH key pairs you just add the contents of your public key to the ~/.ssh/authorized_keys file on the destination server. You can you the ssh-copy-id command for this:

Now you should be able to

login to the remote machine using your passkey

Plug in your FIDO key token and start the ssh connection. You’ll be asked for the PIN of the hardware token to unlock the keystone before the key can be used. If your PIN is correct the token will start blinking and request you to touch it to prove your physical presence.

Using your key on a new machine

Now they you have set up your machine to make use of the FIDO2 key, you might want to use your key on another computer. Since it’s stored on your hardware token, you can use it from any machine without copying your private key onto multiple machines.

All you need to do is to create the respective key handle file and import the public key for your private key on the hardware token. This can be achieved with the ssh-keygen -K command.

This will put two files in the local directory. The file id_ed25519_sk_rk is the password protected key handle file referencing your private key on the FIDO hardware token. The file id_ed25519_sk_rk.pub is the respective SSH PublicKey which you can share with your remote machines.

Your private key is still safely located on the hardware token. The mere key handle file alone can’t be used to establish an SSH connection to remove machines. It requires the hardware token as well.

Manage your Token2 PIN

To manage the PIN of your Token2 keys you can either use a Chrome-based browser or use the fido2-manage tool provided by Token2.

#weeklyreview 45/24

Frost

Finally Winter seems to be closing in. On Sunday the temperature fell below the freezing point (of water) and we had -4ยบ C in the countryside. But we were rewarded with beautiful sunshine and colourful autumn foliage.

Temperature in the lake also dropped a bit over last weekend. I tried out my new digital surface thermometer. That showed 11.4ยบ C. Another thermometer that measured at a depth of about 10cm into the water showed 9ยบ C.

Crossed the lake nevertheless. Still now issue with that.

Back in Berlin I met with my friend Sam for beers. Hadn’t had beers for several weeks … so it was about time. Fun conversations ๐Ÿ˜‰

Winter tires

This year I made the appointment to change the winter tires back in September already. Before the first snow ๐Ÿ˜€ Free choice of schedule … But they actually advised to not have the tires changed if it’s still above 7ยบ C average. Thats why I only now got the appointment.

Driving through the city is insane. It was always crazy, but it seems in the last quarter the city has added construction sites to EVERY road. In our area one of the main 6 lanes roads is now reduced to two lanes and also all the side roads are blocked. Apparently this will take at least 2 years to finish. But of course you never see anyone actually working…

proper coffee

On Tuesday I decided to take my coffee gear to the office to enjoy a proper coffee without spending 4 EUR on it outside.

A bunch of coffee gear lined up on a wooden tabletop. Left to right: metal jug with coffee, a cup of ready cappuccino, a Subminimal milk frother, AeroPress chamber and grid lid, AeroPress piston and Coretto permanent steel filter for the AeroPress, Hario Travel Grinder and finally Hario Mill stick.

This nicely fits into an old camera bag

I might do this more often now (or eventually get a copy of the gear for the office…)

Shortly before I was supposed to get my yearly flu vaccination by the company doctor a fire alarm had us exit the building. Quite a spectacle with police, emergency cars, fire engines and even a helicopter. But fortunately it turned out to be a false alarm and we were allowed back in after about 15 min.

a helicopter, slightly blurry, in front of a blueish sky.

Hacker meeting

This time at the Prater Garten Restaurant. Decent “Wiener Schnitzel” and again an inspiring bunch of old nerds having fun.

↬wandzeitung.xyz/@moellus/113431974931326324

CryptPad Installation

I finally took the time to look into installing CryptPad. That’s a secure online editor for documents where multiple people can work on the same document, chat and comment while collaborating. Focus is on security here as all connections and storage of the documents is encrypted.

They meanwhile provide a working docker-compose.yaml and I only had to add the labels for my Traefik reverse proxy.

There some initial challenges in getting the container properly connected to Traefik. One has to get the config.js of CryptPad right.

I’ll share my docker-compose.yaml and my config.js here, so you can take these as inspiration. I basically only put in my domain names in the config.js and docker-compose.yaml. One important piece is to set the httpAddress: 'cryptpad' in the config.js because the docker-compose.yml sets this as the hostname of the container. If you leave this at localhost, Traefik will not be able to connect and you’ll just get a “Bad gateway” error when trying to connect.

Next quest is to the get OnlyOffice stuff running to support Spreadsheets and Presentation documents as well…

[Update 2024-11-11] got the OnlyOffice extension working. Had to execute the ‘install-onlyoffice.sh’ from the GitRepo inside the running application container and restart once.

Art Forest hiking

On Saturday we had organised a hike from our neighbour village through the art forest to the “Mittelpunkt der Erde” (middle of the earth) restaurant in Kurtschlag. That was a nice hike with funny and insightful information shared by one of our neighbours.

The restaurant was really lovely as you would imagine an old small village restaurant that fell out of time. There were 3 dishes on the menu and the max price was 7.95 EUR. You could have eaten all 3 and were still cheaper than a normal meal in Berlin. Amazing.

Fall of Carthage

Sascha and his band “Fall of Carthagerelease their new album “Kernel Panic” a few days ago. Of course I had to listen in although I never really like their earlier albums. Not because they were not good. Quite to the contrary. But the previous albums were just not my taste at that time.

The new album however I really do like. The style is still more on the heavy metal side. But I like the arrangements on the new album.

If you like their music and want to support the band, make sure you either buy on Bandcamp or if you’re streaming, then consider donating directly to the band via PayPal. As a small band, there is virtually no revenue for the band from the commercial streaming services.

#weeklyreview 44/24

Wellness day

Sunday started with a good run in the forest. Further preparation/training for the 2025 Berlin Half-Marathon, in which you can still support me over at the WWF ActionPanda page.

It was partially like running on the beach in sand. The forest keepers had dug up many pathes in the forest because they were quite damaged from the heavy wood hauling trucks.

After the run we had our weekly swimming gathering and I crossed the lake at about 11ยบC without any issues still. A friend invited me over to his sauna that he had already fired up in anticipation of the shaking from the cold swim. We had really relaxing two session at nearly 90ยบC watching out into the sun lit autumn forest.

To round up the perfect day my wife and I went for ice cream to Prenzlau ๐Ÿ™‚

Mushrooms

On Monday I took one meeting for a handover to a colleague while I’m on vacation. But after that, kiddo an me went to pick some mushrooms. We were looking for a specific kind, the porcini mushrooms, which is supposed to be rather delicious. There are quite many mushrooms around in the forest at this time. I know a few types and like searching them. Not too big of a fan for eating them though. So we focused just on the porcini and found a whole basked full.

Vaccination

On Tuesday we took to chance to get our COVID-19 vaccination refreshed at our local doctor. More than half the family lined up on the bench to get our jab. Must have been a funny picture, but no photo unfortunately.

Everyone tolerated their shot quite well. Little bit of pain on the stitch site and slight feel of fever on the first day.

I did not rest on that day but instead drove 350km to do the groceries for a friend with severe ME/CFS and pick up our oldest kid from his final exams in Berlin.

There were dozens, maybe hundreds of students outside the Messe Berlin to celebrate the last exam with sparkling wine and music from their mobile. Seems to be a thing.

While in Berlin we also had dinner at a nice indian restaurant in Lichtenberg together.

More doctors appointments

Wednesday the other half of the family had their doctors appointments in the city. My wife got her quarterly doses of iron infusion and the big kiddo had his stomach issues checked. Apparently he catched a bug that’s currently circulating and causing diarrhoea. But he seems over the hump already.

Delivered him to the train to get back to Berlin.

Later in the afternoon I secured our water pipes for the winter. That means emptying all the hoses and stow them away in the shed. Also emptying the pipes and turn off the well pump. While at it… dig up the roots of some plants my wife wants to keep and store the bulbs down in the well shaft for winter. There it’s dark and frost free.

To round up the garden work I helped two old chaps from the village to rake the leaves around our cemetery at bring them to the central collections place at the end of the village. Always fun to work and chat with these old people. They always tell stories from the old times in the village and joke around. And of course it was rewarded with an after-work beer.

Breakfast

There is a quite good hotel near our village and we always wanted to try out their breakfast buffet. I like hotel breakfast as it’s like brunch. You have a larger variety of stuff to taste from and you wouldn’t usually take that level of effort at home for breakfast. Also … no cleaning of the kitchen needed afterwards ๐Ÿ˜€

So we reserved a table and showed up early. Of course the buffet was quite nice. But even nicer, was to accidentally meet and old friend of ours who happen to be the director of the Hotel :). So we spent the whole morning chatting and having breakfast. I can deal with that…

Cron vs. Queue

I have a backup job started via CRON on one of my machines. Every once in a while the machine seems to get into high load but low CPU usage stage. Upon checking I figured that this CRON job (an rsync job) seems to hang. But every hour a new process is started and just piling up.

So today I’ve finally switched from simple CRON to a job queue. Instead of starting the backup process by CRON, it’s added to the queue by CRON. Under normal circumstances the queue would be empty and the job started right away. If the previous job isn’t finished yet, then the new job is just queue but not yet started.

I’ll add some monitoring for the queue length too. To install the tool:

sudo apt install task-spooler

Then one can simply add jobs to the queue by calling:

tsp <command>

If the command is called without any parameters, it displays the job queue:

$ tsp
ID   State      Output               E-Level  Times(r/u/s)   Command [run=0/1]
0    finished   /tmp/ts-out.z5XJRx   0        458.62/3.54/13.42 /usr/bin/rsync -rv --delete --exclude=database/ /home/daemon/paperless-ngx/ /opt/synology/nas/linux/daemon/paperless-ngx/

Mastodon Tools

Found two useful Mastodon tools from Ralf Stockmann. One is the Mastowall which displays a whole browser page of toots which contain a certain hashtag. Refreshing on a regular basis. So you can follow live events etc.

The other of his tools is Mastothread, which splits up longer posts into smaller toots so they fit into the posting character limit of your Fediverse instance.

#weeklyreview 43/24

Swimming

It’s still way too warm for late October I’d say. The lake still has about 12ยบC water temperature. We had a good swim on Sunday, although we were only two people of our group. Still both made it across the lake and back, which took us about 20 minutes.

Running

Sunday morning I finally took another run with a friend in the village. I had signed up for the Berlin Half Marathon 2025 via the WWF charity program. One tries to collect donations for the WWF forest restoration project and once you reach at least the target of 300 EUR, you can get the ticket for the half-marathon.

So the shit gets real now ๐Ÿ˜‰ I’d try to not only finish the half marathon, but also with a target time of under 2hrs. Finishing is not the problem. Did this several times before. But running fast is my issue ๐Ÿ˜€

Regardless whether I’ll get a ticket for the Berlin half marathon or not … I’ll run at least one half-marathon in April 2025. Thats my pledge.

Subscription tracking

Moellus found a nifty little open source tool to track your subscriptions and provide sing statistical insights. It’s called Wallos and can be easily self-hosted. Of course I set one up for myself. It provides stats about your regular spent, the top categories etc. It can also send you reminders when renewal or cancellation is due.

Container monitoring

Found a toot with an interesting graph on container workloads. The author pointed me to “Beszel” – an open source lightweight monitoring tool for container environments. Of course I needed to test this out and it was really easy to install.

↬chaos.social/@vanilla_chief/113350730869041478

WordPress + ActivityPub

Had to dig a little deeper into the ActivityPub Plugin for WordPress as my last posting triggered a discussion about ContentWarning for post.

It took me a while to figure out where exactly the CW would be set for a post. It’s actually on the “Post” Settings under “Fediverse”

I was also wondering why my replies from WordPress to comments that came in via the Fediverse did not show the user handle of the person I’m replying to. They are pinged via ActivityPub, it’s just not visible in the Web UI of Mastodon as a visible mention. It’s rather a meta data field that Mastodon UI just doesn’t display. The is an ongoing discussion on the ActivityPub plugin for WordPress to possibly handle this differently.

Cinema

while cleaning her room, kiddo found a voucher for the cinema that was going to expire soon. So we picked a movie to watch. We settled on the latest “Beetlejuice” movie from Tim Burton. Just a week ago we had seen to original one on TV and the new one features actors kiddo likes from other Netflix shows (Winona Ryder and Jenna Ortega).

The movie wasn’t that bad actually. At least mildly entertaining.

We went to the UCI Luxe Cinema at the Eastside gallery. That building is just a few years old. But it’s really kinda disgusting already. It’s trimmed for masses with self-serve automatons for beverages and tickets etc. The floor is quite dirty. Popcorn all over the place. The bathrooms, while visibly clean already start to break apart. Tiles fall off the walls and have cracks. Seals around the sinks do not fit anymore. Looks the building was done without quality control and no attention to detail. That’s a shame for a building that is just a few years old.

Preparing for Winter

On Saturday I cleaned up our tomatoes and harvested the last batch of fruits from the plants. Cleaned up all the pots, saved the soil on the raised beet for next years and stowed away the pots. Finally burned some old twigs and branches to have a clean slate for winter (there is more than enough foliage and heaps of branches in the forest behind our property. So no need to store that on our property for the wildlife.)

Our bees also enjoyed the warm and sunny day.

#weeklyreview 42/24

Blood donation

finally went to the Charitรฉ to donate blood. There have been several calls to action posted across the year as either the demand for blood went up or people are just not donating enough anymore. Especially my blood type is in high demand as it can be used for many patients.

What’s a bit annoying is, that you can’t refuse the money they’ll give you for the donation. You get a barcode that you need to scan on your way out. You have to do this, otherwise they’ll throw away your blood. You have to accept that it’s actually going to be used. And once you do that, you automatically get the money. There is no option to donate the money are refuse it.

I’ll write to the Charitรฉ and ask them to make this optional

bugs

Tuesday evening friends and me tried a new restaurant which is serving insects as part of their meals: Mikrokosmos in Berlin Kreuzberg. It was actually near my old roaming grounds in Kreuzberg near the former I-D Media Headquarters.

We chose the menu with 4 courses and of course I made it all insects dishes. They had crickets, grasshoppers, and two types of larvae/worms. All as ingredients or topping to their fantastic vegetarian dishes. It was very delicious.

3D tinkering

I found an old Neopixel ring in my drawers that I finally wanted to put to use as a little remote controlled lamp. I also had an ESP8266 flying around and quickly installed WLED on it. This is an open source software for the ESP microcontroller family that offers a web interface to control WS2812B based LED Strips. These are the famous multicolour LEDs that can be controlled by microcontrollers. You’ll find them in almost all cheap color LED strips that can change colours.

Now I needed some sort of Lamp shade to put the Neopixel ring into. I searched the interwebs for a readymade 3D Model of the Neopixel ring so I can model around it in Autodesk Fusion 360. And of course I found one on GrabCAD for free. Cobbled together a quick and simple cylindrical lamp shade with a compartment for the ring in the bottom.

Exported as STL file to OrcaSlicer for printing with my modded Creality Ender 3 V2

And watching the progress on Mainsail with the Klipper firmware while printing.

The result looks promising for a quick mock up of the final model. I love how the layers of filament build sort of a funnel with the light.

Mushroom season

On Saturday we finally went foraging in the forest. There are tons of mushrooms this year. And as every year, the streets in the countryside are lined with “Berliners” going for mushrooms as if there is no tomorrow. AFAIK there is a German law (of course) that says you must not pick more mushrooms than for personal use. The forest is surely owned by someone. So you’re practically stealing food off the land of someone else.

I like picking mushrooms as an exercise or rather recreational activity. Not so much a fan of the mushroom dishes. We usually clean, cut and dry them for later use in dishes as seasoning.

Cleaning the cemetery

Saturday morning we had a cleaning session on the local cemetery in the village. Cutting back all the bushes that try to overgrow the site and removing all the dead branches from the surrounding trees. Always a good community exercise with lots of fun and chatter, man with their dangerous tools and hot beverages ๐Ÿ™‚

#weeklyreview 41/24

Beer’n’Burger

On Monday we had another instalment of our infamous beer & burger crew meetings. This time we finally met at the Brewdog restaurant at the Frankfurter Tor. The burgers were surprisingly good. The beer was good not surprisingly. But on the costly side with around 7 EUR per 0,5L glas.

Cold

I guess two times swimming on the last weekend and two sick kids at home last week took a toll on me. Woke up with a severely soar throat on Tuesday and it went downhill from there. So bad that I actually called in sick for Wednesday and Thursday.

Originally this Tuesday I was scheduled for the company sponsored flu vaccination. But fortunately that had to be rescheduled due to the doctor herself being sick.

Tried to stay in bed really and rest/sleep. Of course got interrupted several times by phone calls and family emergencies.

But eventually managed to get through and felt much better on Friday already. Almost no symptoms on Saturday.

big mastodon update

On Tuesday version 4.3.0 of Mastodon came out. Almost a major release if you ask me. The update required some manual intervention. They’ve split the container images into one for the web app and one for the streaming app. The docker-compose.yml had to be adjusted accordingly and a second container image built. I also had to rebuild the patch or the source code to allow for longer postings. This is now a little bit easier and can be achieve by just changing one variable value:

From d04253848c2d53cc732e3cb0c6e31be91dd6107c Mon Sep 17 00:00:00 2001
From: Falko Zurell <email>
Date: Tue, 8 Oct 2024 15:27:02 +0200
Subject: [PATCH] adjust post character limit to 5000 chars for 4.3.x

Signed-off-by: Falko Zurell <email>
---
 app/validators/status_length_validator.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/validators/status_length_validator.rb b/app/validators/status_length_validator.rb
index dc841ded3..9cb1ec94b 100644
--- a/app/validators/status_length_validator.rb
+++ b/app/validators/status_length_validator.rb
@@ -1,7 +1,7 @@
 # frozen_string_literal: true
 
 class StatusLengthValidator < ActiveModel::Validator
-  MAX_CHARS = 500
+  MAX_CHARS = 5000
   URL_PLACEHOLDER_CHARS = 23
   URL_PLACEHOLDER = 'x' * 23
 
-- 
2.39.5 (Apple Git-154)

All in all the upgrades of all three of my instances went perfectly smooth and the new web interface looks slightly fresher.

Dinosaurs and Future

The weather on Saturday was so good and we stayed in Berlin for quarantine (not pass on the cold/flue on to my wife in the countryside) reasons. Kiddo and me decided to go to the museum of natural history to see the dinosaurs and other stuff again. We took the bikes and happily pedalled there through marvellous Mitte.

I was surprised to find Knut the famous Berlin Zoo polar bear there on display.

After the museum we felt fancy enough to drive down the road to the FUTURIUM. A new building new the river and Hauptbahnhof where some vision of the future stuff is on display. There was a spectacular view from the skywalk on the roof over sunny Berlin.

We rounded the trip off with lunch at Sanku Maots’ai ไธ‰้กพๅ†’่œ ๆŸๆž— a Chinese style restaurant at Friedrichstrasse. It’s quite popular among the natives and you get to choose your ingredients for your hot pot yourself. And yours truly doesn’t shy away from the weird stuff like duck blood or tribe ๐Ÿ˜€

In the evening we watched the original Tim Burton “Betelgeuse” movie and afterwards James Bond – Goldeneye. Good ol’ stuff.

#weeklyreview 40/24

Ted Lasso

I’m a big fan of the Ted Lasso TV series. So I had to improve one of our meeting rooms

let’s see how long this lasts

Nerd meet up

On Tuesday I attended gathering of some old hacker dudes. All famous names in the Berlin scene and beyond. Hard fanboy moment to meet Tim Pritlove in person. He’s an icon in the Podcast world and has single handedly established and nurtured podcasts over the decades now with famous formats like Chaos Radio Express, Logbuch Netzpolitik and many more.

Realised we’re getting old and you hardly find people with this depth and breadth of computer knowledge anymore.

flu season

Both kids were off sick for a few days this week. Looks like flu season has started. Fortunately I’m scheduled for my flu shot next week in the company.

At least that gave us some time for a walk in the park and enjoy the autumn.

Swimming

went for a swim in the lake on Saturday. Water is already quite cold. But still comfortably managed to do the large triangle. Of course had the whole lake for myself ๐Ÿคฃ