HN user

highpost

65 karma
Posts3
Comments36
View on HN

Forgejo is an open-source GitHub clone written in Go. I wanted to run Forgejo on an old Mac mini at home and make it remotely accessible through Tailscale. So, I built Forgejo Appliance: an opinionated blueprint based on an OrbStack VM running on macOS with Ubuntu Server, PostgreSQL and the tsbridge reverse proxy.

I think of Forgejo Appliance as an open-source black box. It makes the Forgejo service available through a web interface, but beyond that, it’s pretty opaque. The VM is designed to be ephemeral (torn down and rebuilt for updates). Internally, it’s a group of three server apps tied together with UNIX sockets. This avoids the DNS and security headaches of exposing local TCP/IP ports. Like a managed cloud app, you can’t even connect to it with SSH.

It wasn’t all fun and games. Navigating through the host and guest restrictions felt like threading a needle:

  - The macOS Security Framework restricts Keychain access to local shell sessions.
  - Let’s Encrypt has a strict rate limit for certificate requests, which makes tearing down and rebuilding ephemeral VMs difficult.
  - TLS certificates are usually managed as small directories of files. To persist them across ephemeral boots, I tar-ed, compressed, and base64-encoded the whole directory into a small string and stuffed it directly into Apple Keychain.
  - When testing isn’t going well, you can easily stack up ghost Tailscale nodes and trigger MagicDNS collisions.
Forgejo Appliance stores its secrets in Apple Keychain, uses Google Workspace SMTP for notifications, and uses BorgBackup with rsync.net for remote backups. The end result is secure (thank you, Tailscale) and reliable.

We went to Peace Arch Park several times during COVID to visit relatives in Canada. And then I noticed the tents on the eastern edge of the park. What's that all about? I called it the End Zone. Couples separated by the border would meet there. One park ranger said he saw things he couldn't unsee...

The macOS app manages the host Tailscale service, while this example demonstrates how to connect with a *macOS container* using Tailscale SSH based on the Tailscale service under userspace networking mode. This gives the container its own dedicated Tailnet IP and identity without needing to port-forward through the host.

edit: For example, I can create a container on my MacBook to run an application. A colleague *in my Tailnet* can then connect to this container to interact with that application from a coffeeshop or airliner while not exposing the rest of my MacBook.

I think we're dealing with garden variety snobbery here. A great school, like a great teacher, is a school that makes a difference in people's lives. If it takes people who could have worked in a factory and gives them a leg up to a better living, then we should celebrate that kind of school. The point of the article is that circumstances have changed in a way that undermines the ability of school like WKU to deliver this kind of possibility.

Ubuntu ships OpenZFS as a separate prebuilt kernel module for ZFS (zfs-dkms). Interestingly, they also have ZFS support in GRUB to support booting from ZFS:

  * read-only and minimal
  * fully aware of different Linux boot environments
  * GPLv3 license compatible, clean-room implementation by the OpenSolaris/Illumos team. The implementation predates Ubuntu’s interest.

My guess is that she lacks the essential political skill of reading the room. It's not like NYC is the first city to attempt congestion pricing. Anyone who has spent any time in London can see its benefits. So I think Hochul had her political focus on the wrong things.

It took a lot of time and effort to bring the stakeholders together for congestion pricing. And to withhold her approval at the last moment was shocking. It's hard to imagine what she was really thinking and even harder to understand how she felt she would be rewarded for it. That's not a real answer to your question, but her reasoning on both congestion pricing and Eric Adams just seems opaque.

Star Trek may have made us think that Class M planets are abundant, but the probability of detecting intelligent life on any given habitable planet is remote. There may be many Class M planets within our detection range, but the trick is to find one that has an intelligent civilization at precisely this moment in time minus the time it takes for radio signals to reach Earth.

Let’s say that Earth is about 4.5 billion years old and that intelligent life has been externally detectable for about 120 years since radio was invented around 1900. And it’s by no means certain that just because a civilization on a given Class M planet achieves radio signal generation that it will soon achieve warp drive technology and build a fleet of starships. That civilization could simply watch episodes of the Golden Bachelor while consuming all of its available resources and then fade away. Or just blow each other up.

I’m not saying that intelligent life outside of Earth does not or has never existed. We can only detect a small part of the known universe. And we can only detect what’s going on roughly right now because there isn’t a WayBack Machine for interstellar radio signals.

All this requires the combination of several low probability events:

  * A planet must be within detectable range of Earth.
  * A civilization must have developed.
  * The civilization needs to survive for a meaningful period of time. One century is not meaningful.
  * The civilization must be visible essentially right now.
The combination of those events yields a very low probability.

I’m not saying that the search for intelligent life on other planets isn’t interesting or worthwhile, but I do think that Elon Musk should stop wasting his time on space travel and start spending it on global warming. That will give us the best chance of extending our run as an intelligent civilization.

OpenWRT 22.03.4 3 years ago

I have a few of these: WIFI6, 128MB Flash, 64-bit ARM A53, DSA, hardware NAT offloading, solid build quality and the price is right. If you look at the OpenWRT TOH you’ll see hundreds of models but historically some of them get more love than others. I think this model will be popular in the OpenWRT world in the same way as the TP-Link Archer C7, Netgear WNDR3700 and Linksys WRT54G models. At least I hope so.

New iPhone SE 4 years ago

I have an original iPhone SE and it's the best phone I've ever had. But it does have only 16GB and I have to suffer with offloading apps. Still, I was delighted last September when the SE made the cut for iOS 15. I'll probably replace it with a iPhone 12 mini sometime over the next few months. It's been a long run.

I use this approach and it has reduced my stress immensely. Before when my regular credit card was compromised I would need to cancel it and reprogram all my auto-billing accounts. With about 20 of these there was always a painful hiccup. It’s been several years now of smooth sailing.

Neovim v0.5 5 years ago

I think you have it right: neovim for your fingers and VS Code for the larger programming environment with all its features. I don't know how LSP is integrated, but it seems to work.

BTW, I ran into too many corner cases where VSCodeVIM's emulation broke down.

Neovim v0.5 5 years ago

There is a middle ground for VS Code users:

https://github.com/asvetliakov/vscode-neovim

This extension integrates neovim into the VS Code environment by mapping keystrokes from VS Code to the neovim binary. This approach (which requires 0.5) is much simpler and more robust than attempting to emulate all of VIM, as the VSCodeVIM extension does.