Matthew Ames

Matthew Ames

@mames.dev

Site Reliability Engineer, linux, Quake player, causal photographer

47 followers178 following82 posts

Pinned

In order to interact with whatever algorithm Bluesky has, here's a little bit about me. Professionally I am an SRE doing a lot of work with Kubernetes & Prometheus at Yelp. Personally, I like to play Quake Champions too much, and am currently automating my server/desktop installs with Ansible.

I've installed Ubuntu again. I had been distro hopping for a little while, but when all is said and done, Ubuntu simply has that homely quality that none of the other distros have, in my opinion. I fired up Ubuntu and I felt like I was where I belonged. The only caveat is that the Steam snap sucks.

I'm not against snaps, and I currently have Firefox, VSCode, Ghostty, and other tools all installed as snaps. It's just the Steam snap that doesn't cut it.

I finally got around to looking at my photos from last weekend, and well here's mine of the Moon and Venus. This was taken with Lumix GX80, with a 45-150mm zoom lens, with the only additional stability offered by leaning on my sister in law's shoulder. Not too bad I say!

Definitely glad I spent the time at the weekend updating my setup to use ghostty/starship/chezmoi/helix over the weekend. When I booted into my work laptop this morning it superfast switching from all my old tools to the new ones. I'm loving the new way of doing things.

I really love Ubuntu server, but I'm annoyed that it doesn't have Podman 5.x in 24.04, so here are my options, in order of least to most hassle: * Upgrade to 24.10 * Install Fedora Server instead * Package up Podman 5.x into Ubuntu 24.04. Part of me wants to try Fedora server, but I don't know...

Here's my current Fedora setup, in full. That's Ghostty, Starship and Helix all configured with very little actual changes from the base

Once again I am sold on another low config tool for my Linux and MacOS needs, and this time it's starship.rs. I originally thought it was complicated, but the $all variable in the format makes it super easy to tweak your prompt. Give it a go!

starship.rsStarship: Cross-Shell PromptStarship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZS...

Why am I only now learning about podman and quadlet? I've been using ridiculous tooling to deploy and manage my stacks, when all I really need is to drop files in /etc/containers/systemd and then I can manage everything easily with systemctl.

I had often thought about making my own tool for for syncing dotfiles, but this exactly what I would have made anyway. I've now got chezmoi syncing my zsh, ghostty, helix and oh-my-posh configurations. Absoslute banger of an open source tool

I feel like I've been very Ubuntu-pilled recently. I've been getting frustrated that even the most recent Ubuntu versions don't really have up to date apps. For instance, 24.04 only comes with Podman 4.9, despite 5.0 being available at the time of release.

Today I installed Fedora and it had zig in the repos so I could install ghostty. I'm half tempted to use Fedora Server on all my raspberry pi devices.

I really appreciate this new trend for Low Config applications. Helix and Ghostty are great examples. They come packaged with a whole bunch of themes and sensible defaults, to the point that my config files for both are literally just the theme names (and font in Ghostty). Makes my life much easier!

Ghostty is definitely the best terminal application you'll use on MacOS or Linux. Their killer feature is simply using OS defaults for everything where possible and is fully platform native. No need to mess with config to get the basics done. My config file literally only contains the theme and font

I have finally come to realise where my issues have been with Ansible. I was trying to create a single mono-playbook which would run tasks across multiple servers (only two in my case), but it would cause a number of issues

View full thread

By having entirely separate playbooks for the different realms of repeatability, I have massively improved my ability to read and understand my code. My containers runbook has a role for installing a single container, but that role is repeated multiple times to install everything I need to run

And my servers runbook simply contains the tasks to install and configure my applications across all hosts.. Knowing my realm of repeatability really helps me to keep tech debt down and keep on iterating and improving.

I have finally come to realise where my issues have been with Ansible. I was trying to create a single mono-playbook which would run tasks across multiple servers (only two in my case), but it would cause a number of issues

Firstly a mono-playbook is difficult to understand and edit, obviously, but it also meant the output was also difficult to read. If the summary at the end said anything had changed, I would need to read everything to understand what exactly. Not easy with 100s of tasks.

Secondly, and more importantly, I didn't understand the boundaries of my repeatable tasks. Some tasks would be repeated once across all hosts, e.g, installing neovim as the text editor. However other tasks would be repeated multiple times within the same host, such as installing docker containers.

Having good fun today with Dockge. Ansible drops compose.yaml files into a Dockge directory, runs docker compose up, and walks away. From that point I can update, restart and check logs of containers without issue.

View full thread

Having good fun today with Dockge. Ansible drops compose.yaml files into a Dockge directory, runs docker compose up, and walks away. From that point I can update, restart and check logs of containers without issue.

I understand that some people watching #strictly want Pete to stay in because they prefer to watch someone improve, but the facts are that Pete has been floundering for the last 3/4 weeks and hasn't seen any improvement at all! All the while Tasha is getting better all the time!

Today my noodling with Semaphore UI continues. I can combine a webhook with an ansible playbook to automatically create things for me. E.g, I could create the btrfs subvolume, the mount it in the right place, configure DNS and forwarding proxy to the container... But how do I kick that off?

The issue, of course, is that storage needs to exist before the container. So I need a process in which I can trigger the webhook with the variable I require and only *then* define my container.

I could just define all this in the Ansible repo, then trigger the webhook on commit (either direct from github, or just a script I manually fire myself). This does mean that I'll need to take a look at how to interact with portainer - my tool of choice of bringing my applications online.

I feel like I need a tool for managing the storage on my Raspberry Pi. I'm using Portainer for managing my containers, which is backed by a BTRFS volume. It would be rather snazzy to have a similar web interface for configuring my subvolumes, mountpoints and, most usefully, snapshotting and backups

Part of the answer I was looking for is semaphoreui.com It's a UI for Ansible & Terraform, and can also execute Bash scripts. It doesn't do everything I wanted, but does remove some of the friction I have jumping between machines/operating systems, not having to configure my environment every time

semaphoreui.comModern UI and powerful API for Ansible, Terraform, OpenTofu, PowerShell and other DevOps tools.If your project has outgrown manual terminal deployments, Semaphore UI is the perfect solution for you.

I don't know who needs this cleaning hack, but here it is. My fave tool in a hard water area is an old credit/debit card. It removes limescale easily and works well with soap scum too. This Catit water fountain lid was coated in limescale, but 30s with the old Sky viewing card got rid of most of it.

The #firefox subrebbit is the absolute worst when it comes to learned helplessness. Every time there's an update, countless people turn up at the sub asking exactly the same, already answered questions, which would have been solved by actually looking in the settings.

I did that thing again where I switched back from Ubuntu to Windows 11. With the newborn, I've been playing games in the living room using Steam Link, and it just works better with a Windows host.

Has anyone noticed in #strictly that JB is doing *so* much better with Lauren instead of Amy? I love Amy to bits, but Lauren has really taken him to another level.

I find it quite interesting that many #opensource projects haven't at least set up their accounts here. There's no Firefox, Ubuntu, Fedora presence here. VSCode, which absolutely smashes it with YouTube Shorts (and TikToks I guess?) also is interesting in its absence.

It's hackathon week this week at work, and I've gotta say that everything is going swimmingly. I was struggling to find a project, so I picked something someone asked me to do offhandedly a few months back, and I've realised it unblocks something completely unrelated.

It's always nice when you can take a moment away from the usual grind, as it were, and try something new for a minute. Give the brain a break and all of a sudden you're solving a lot more problems than before.

Disk check on my first newly installed Nas drive is complete. I feel happy to put the second disk in, but may wait until the end of the week. I wish I'd never picked ironwolf last time. WD reds seem so much better right now.