

Or just a cheap laptop.
Canadian software engineer living in Europe.


Or just a cheap laptop.


Given that sort of description I’d bet that it is DNS actually. If you run a DNS lookup from your LAN for your domain, do you get the external IP or the internal one? You can try this with dig in Linux or nslookup in Windows (I think).
If I’m right and you’re getting the external IP even when querying from your LAN, then what you need is either a separate DNS for your LAN or what they call a “split DNS” whe are a your domain server returns a different value depending on the originating IP.
You can check for this by editing your hosts file. If you add your domain and local IP there and then try to ping that domain on that machine, it should work. If you’ve got a small network, you might even just copy the hosts lines between machines (this is what I do for example).
This wasn’t nearly as interesting as the headline made it sound.
It’s a physical box you purchase to effectively break the law, so some of the architecture is going to be shady because it has to be.
There’s nothing special or nefarious here. Indeed I’ve worked on projects that had to take the same considerations into account.
The “someone else’s Hulu account” claim sounds like bullshit to me because it doesn’t make sense from a business perspective. They’d want to control the accounts in question and rotate the passwords regularly, again to avoid freeloaders. More likely they’ve paid for 25ish Hulu subscriptions in every region (hence the initial call for IP geolocation) and are then relaying credentials to a box based on this info.
The only really sketchy thing in this whole video was the disabling of TLS checking, which was likely done to get around sketchy pirate websites with bad or nonexistent certs. It wasn’t clear though which part of the OS this applied to. If it’s only doing this for the pirate streaming, that’s sort of a bullet you have to take if you want the service. So long as the only data being sourced unencrypted/unverified is some audio and video, you’re fine (assuming you’ve already accounted for streaming such data in your jurisdiction, ie. you’ve got a VPN). If you’re pulling down software updates though, you’re gonna have a bad time.


At my first-ever tech job back in 2000, I was given a little Celeron desktop computer to do my work: mostly writing some ColdFusion and cutting up images in Photoshop. For the most part, the machine worked fine, except whenever I scrolled down on a webpage in Netscape, the box’s PC speaker would start screaming. I tried to ignore it, but I was in a small room with two other nerds and it was getting really annoying.
One day, my frustrated colleague decided it was time to investigate. As part of the process, he noticed that there was very little air coming out of the power supply fan port. “Must be a busted fan and that’s causing an overheating alarm” he declared. We unplugged the box, popped it onto my desk, and opened it up. The internals were pristine. No dust, nothing. The computer was practically brand new after all.
We were just about to crack open the power supply (not recommended, but we were getting desperate) when my colleague noticed that something was wedged inside the fan… it was the biggest (dead, thankfully) cockroach I have ever seen, at least 10cm long. For context, this was in Vancouver, Canada. Those just don’t exist there.
My colleague jammed his screwdriver in there to grind up the cockroach carcass, then plugged the box back in. After a shittone of dessicated cockroach guts spewed out the back, my little computer was operating normally.
As best we could guess, the monster crawled into the fan in Malaysia when as was assembled and somehow got pinned in there, died of starvation, and then stowed away to Canada.


There’s a nifty project on Mastodon where someone is running an instance entirely on solar (and I think a battery?). They’ve been tinkering with some of the code to do things like optimise images for reduced weight or CPU cost.
The project is called @solaradmin@solarcene.community and the account for the person running it is on a separate instance, presumably so people can message them about problems: @smallsolar@techhub.social.


The right time to look elsewhere was when Microsoft bought it.
The next best time was when viable alternatives like GitLab and later, Codeberg appeared.
The next best time was when it became clear that they were stealing your code to feed into their sparkly autocomplete and were going to sell it back to you.
The next best time was when they dumped a bunch of vibecoded garbage into the codebase and killed the uptime.
The next best time is now.
You don’t even have to migrate all your stuff. Just start all your new projects on Codeberg, or GitLab, or something self-hosted. Once you get used to the new place, you can migrate your old stuff when you’re ready.


I’ve used FluxCD in the past and have looked into ArgoCD, but honestly, I’ve not seen any big benefit from either to be honest. I use k8s both at home and at work, and in both cases, we do “imperative” deploys: you run helm install ... either directly or via the CI and stuff is deployed.
So for example at my last job, our GitLab CI just had a section triggered exclusively for merges into master that ran helm install ... for all three environments. We had three values.yaml files, one for each environment, and when we wanted to deploy a new version, the process was:
1.2.3) and push it to the repo. This would trigger a build and push the resulting image into the container registry.1.2.3 to development but not yet to staging or production, then the tag: value in each of the environment files would look like this:k8s/chart/environments/development.yaml: tag: 1.2.3k8s/chart/environments/staging.yaml: tag: 1.2.2k8s/chart/environments/production.yaml: tag: 1.2.2Once that change is pushed, the CI will automatically apply it with helm install ... and make sure that all three environments are what they’re supposed to be.
As for dependent services, that should all be in your Helm chart so they’re stood up and torn down together. The specific case you mention about “Service A” being dependent on “Service B” but stood up before “Service B” is ready is a classic problem, but easily solved:
The dependent service (“A” in this case) should have an entrypoint that checks for everything else before starting. Here’s what I’m using right now in a project:
#!/bin/sh
while ! nc -z postgres 5432; do
echo "Waiting for postgres..."
sleep 0.1
done
echo "PostgreSQL started"
touch /tmp/ready
exec "$@"
I’ve even got some code that checks that all the Django migrations have run first for the same situation. The Kubernetes philosophy is that any container should be able to die at any time and be eventually be brought back up and that every container needs to be prepared for this. Typically this means that your containers should operate on the basis of “if I can’t work, die, and hope the problem is solved by the time Kubernetes redeploys me”.


Kubernetes. For a homelab, the stripped-down k3s is fantastic and surprisingly easy to get going.
Once you’ve got Kubernetes set up, you can lean on all the many tools already out there for things like deploying complex projects (Helm) and monitoring (Prometheus/Grafana). OpenLens is a nice piece of software you can use to monitor and control your cluster too, as is k9s.


As this is a new project, have you considered hosting your code somewhere other than GitHub? Codeberg and GitLab are similarly user-friendly platforms without the many downsides of supporting Microsoft.
A platform that’s down 10% of the time and that now has a reputation of locking people out of their accounts without reason for weeks at a time cannot, under any definition of the word, be considered “stable”.
I just… don’t get it. This whole community, we’re supposed to be building stuff for ourselves and each other, and for some reason people keep going to bat for a company that demonstrably holds every one of us in contempt.
Just… stop using their shitty tools already.
Why hasn’t he migrated to something more stable?


I’d never heard of this list, so thanks for sharing. I have to say while some of the projects seem to have been included due to minor offences, I’m really disappointed in some of my favourite FOSS projects.


I didn’t understand what you meant by Joplin not being “fully FOSS”, so I went looking for the license. Is really quite strange. Basically they’ve used a “personal license” for some parts and the AGPL for the rest. That’s… annoying.


Buy two 4tb extern drives. Copy your photos onto both. Leave on at your mom’s house in a closet. Leave the other in a locker at work or a safety deposit box.
No monthly fees, no techbro cloud capitalists.


Honestly, I’d buy 6 external 20tb drives and make 2 copies of your data on it (3 drives each) and then leave them somewhere-safe-but-not-at-home. If you have friends or family able to store them, that’d do, but also a safety deposit box is good.
If you want to make frequent updates to your backups, you could patch them into a Raspberry Pi and put it on Tailscale, then just rsync changes every regularly. Of course means that wherever youre storing the backup needs room for such a setup.
I often wonder why there isn’t a sort of collective backup sharing thing going on amongst self hosters. A sort of “I’ll host your backups if you host mine” sort of thing. Better than paying a cloud provider at any rate.


From a read of that issue, it looks like it never was.
I keep seeing Zulip tossed around as an alternative, but I don’t know what’s up with their licencing. There’s also Framateam, but I think that might just be Mattermost as a service.
Matrix would be great if it wasnt so user-hostile, but it is :-(
Just get one of these and set everything up in a few browser tabs. Either that or use an OS with workspace support and put the different apps you want on separate workspaces.
In our livingroom, our old laptop runs Arch Linux with GNOME. Jellyfin is on desktop 1, and Firefox is on desktop 2. Firefox runs Netflix, Spotify, and YouTube in separate tabs and switching between all of these is a keyboard shortcut on the above remote. Frankly, it’s simpler than most “smart” TVs I’ve had to work with.