What Is Using Port 5000 On My Mac?

Turns out it’s ControlCentre - because by default macs are set up as AirPlay receivers.

$ sudo lsof +c0 -nP -i4TCP:5000 | rg LISTEN
ControlCenter 698 yaleman   10u  IPv4 0x431cfa88f6905b65      0t0  TCP *:5000 (LISTEN)

Go into System Settings -> General -> Airdrop & Handoff and turn off “AirPlay Receiver”. You can also just search for “airplay”.

Airplay Settings

$ sudo lsof +c0 -nP -i4TCP:5000 | rg LISTEN | wc -l
0

Fixed!

[Read More]

Element not Found Connecting to Samba Share

Well, that was a weird start to the day. I started getting the following error while attempting to connect from my Windows 10 machine to my Samba fileserver:

System error 1168 has occurred.

Element not found.

I’ve been using my yaleman@domain SPN-style username for a long time to keep the permissions correct across the filesystem… and now it just stopped working? Random.

I had to create a new user without the full SPN in Samba (smbpasswd -a yaleman) and it works now. Stupid Windows.

[Read More]

YouFoodz Classic Roast Chicken & Mash

I thought “more like lots of potato with a tiny bit o’ chicken” but they hid the chicken deep under everything else. The sauce is nice enough… gravy-adjacent?

[Read More]

Haneda To Yugawara

Flying in from Singapore was pretty chill, JAL premium economy is lovely with wide seats and lots of leg room. Nobody can recline their seat onto yours but it means if you do want to lay back, you lose all your leg room because the seats push forwards. ANYWAY. We landed, customs was quick and then it was time to find some food before we picked up our hire car.

Breakfast of champions in the airport, sushi and all good things.

[Read More]

uv and pytest

It took me a while to figure out why uv run pytest wouldn’t work - it wasn’t finding my library!

Turns out:

uv uses the presence of a build system to determine if a project contains a package that should be installed in the project virtual environment. If a build system is not defined, uv will not attempt to build or install the project itself, just its dependencies.

[Read More]

Rust, Enums And Magical Custom Values

As part of the Kanidm project every object has Attributes which we catch in a chonky Enum. But being an IDP used by humans, they want to be able to use custom attribues, which makes it hard when we’re trying to strictly type and catch typos. Enter… serde and its parsing magic.

[Read More]