Welcome to the party, you’re going to have a blast (and lots of chances to bang your head against the wall)!
Here’s my take on your questions:
- Doesn’t matter at all where you get a domain. Pick any reliable registrar where the price is right.
- The top-level domain (TLD) is the domain name’s suffix and you can use any that you like. Some cost more than others, so you may want to compare prices.
- To start with, anything from within the past 10-15 years should be good enough. There are trade-offs, though. Older machines may use more power, for example, but don’t get hung up on details at this point. Get something cheap like an old laptop with an Ethernet port and you’ll be good to go. Once you’ve done it for a while, you’ll understand any downsides and the next piece of hardware you get will be an even better informed choice.
- Not at all. Self host as much as you want, but I’d recommend starting slowly. Pick one thing and set it up on your server. Tweak it until it’s just how you want it, makes backups, test. Then add the next thing. Immich, forgejo, and a website are nice easy ones to start with. Communications platforms like chat apps and email are much more involved. Maybe save those for slightly later.
- For sure! You can use any OS you’d like. I’ll mention that a lot of the very basic tutorials will assume you’re using Ubuntu or Debian, both of which use systemd. For Devuan, for example, you could mostly follow those same tutorials, but you’ll have to fill in some of the blanks. I’ll mention that Linux isn’t the only option, either. If you don’t like systemd, you might enjoy something like FreeBSD. It sounds from your experience like you’ll be able to handle this part.
Whatever you do, just remember that it doesn’t need to be perfect immediately. You’re going to mess a bunch of things up and make decisions you’ll wish you hadn’t. You’ll spend a lot of time destroying and recreating things you’ve already done. That’s the joy of self-taught self hosting!