Hacker News new | ask | show | jobs
by dgfitz 814 days ago
I am really quite heavily involved in the tech sector, across a lot of domains. I don’t know a soul who runs a BSD variant. How can I expose myself to this arena beyond making a BSD box… which seems like a waste of time at the moment.
8 comments

Arguably, macOS is a BSD variant. Much of the userspace UNIX utilities and a lot of the networking stack were forked from FreeBSD. Although it's not the nicest showing, because Apple doesn't pull updates very frequently; a two decade old TCP stack has a lot of issues, Apple added MPTCP and nice PMTUD, but doesn't have SYN cookies, so I wouldn't run a public server with it.

Maybe you can find a BSD shell account somewhere? But otherwise, yeah, you need to run a BSD to experience it. How woulr you experience Linux without a Linux machine? There's live cds and virtual machine images and what nots for BSDs too.

I can't say if its worth your time or not. Not a lot of companies run production on FreeBSD anymore, unfortunately. Yahoo was midway through switching when I left, WhatsApp was almost done when I left. I'm happier running FreeBSD on my personal equipment than I was with Debian, but that makes it worthwhile for me, not you. Switching OSes is a long process and living in multiple OSes at the same time isn't easy. I use Linux for work, so I have to go back and forth between ifconfig on my home boxes and production Linux, but ip addr on my dev box. And sometimes netstat and sometimes ss, etc. It'd be nicer if everything was consistent and didn't change for what seems like the sake of change, but it is what it is.

macOS is a fair candidate. Second hand Mac can be cheap, esp Intel-based. Hackintosh / VM is also a candidate.

OPNsense, PFsense, TrueNAS, Sony Playstation, Nintendo Switch, Juniper, Ruckus/Brocade, ...

Give OPNsense (in a VM) a whirl as replacement for OpenWrt. I like it a lot.

> I use Linux for work, so I have to go back and forth between ifconfig on my home boxes and production Linux, but ip addr on my dev box. And sometimes netstat and sometimes ss, etc. It'd be nicer if everything was consistent and didn't change for what seems like the sake of change, but it is what it is.

macOS/Linux users might like this wrapper [1]. I don't know one for ss/netstat though.

[1] https://github.com/brona/iproute2mac

Saying the Nintendo Switch is BSD based is a bit of a stretch, Horizon (the Nintendo Switch operating system) runs a proprietary, fully custom microkernel and has some utilities from both FreeBSD and Android.

> Despite popular misconceptions to the contrary, Horizon is not largely derived from FreeBSD code, nor from Android, although the software licence[14] and reverse engineering efforts[15][16] have revealed that Nintendo does use some code from both in some system services and drivers. For example, the networking stack in the Switch OS is derived at least in part from FreeBSD code.[15] Nintendo's use of FreeBSD networking code is legal as it is made available under the permissive BSD licence, and not even particularly unusual – for instance, the Microsoft Windows XP TCP/IP stack was originally derived from BSD code in a similar fashion.

https://en.wikipedia.org/wiki/Nintendo_Switch_system_softwar...

Apple Time Capsule used to run on NetBSD as well.

Unfortunately TrueNAS will move to Linux. At least TrueNAS Scale, based on Linux which going forward will be what they are focusing on.

The land of FreeBSD or BSDs are rapidly shrinking.

Try something that’s unique to one BSD or another. For example, NetBSD supports Lua for kernel scripting[1] and Veriexec[2] for checking the integrity of executables.

[1] https://man.netbsd.org/luactl.8

[2] http://netbsd.org/docs/guide/en/chap-veriexec.html

Also rump kernels
For FreeBSD, search for Netflix Open Connect appliance. Also, follow @cperciva

For OpenBSD, build a router+firewall for your home.

For FreeBSD jails networking here is a post for a two server infra https://blog.uirig.com/freebsd-jails-network-setup

Why do you consider it a waste of time?
He wants to expose himself to the arena but doesn’t want to spend any time. Unfortunately, experience can’t be poured through a funnel.
> I am really quite heavily involved in the tech sector, across a lot of domains. I don’t know a soul who runs a BSD variant.

Really? Wow. I know quite a few. Perhaps your experience isn't as broad as you think.

> How can I expose myself to this arena beyond making a BSD box…

You can't. Make a BSD box.

> which seems like a waste of time at the moment.

That is an exceptionally foolish comment, which others have pointed out, and you deserve it, I'm afraid.

Looking forward to NetBSD 10.0 review on the register :D
> Looking forward to NetBSD 10.0 review on the register :D

Me too!

:-)

Slight snag -- I had a few days off and I may have caught COVID again, and am feeling rather unwell. Poorly timed as I am far from home and any of my testing kit.

I hope that my editor will still be happy to take and run such a story in a week or so's time.

Oh. Get well soon.
Maybe try it in a VM, or use second hand thinkpads or similar supported hardware.
So you would only "expose yourself", specially a quite low friction action of trying a new piece of software, if you know someone who already "wasted their time" on it? Do you use the same criteria with every piece of software? What's your point?
Hmm. I wasn’t trying to make a point. I was asking a question. What is your point?
Why not play with one in a VM?