So I have a retired but still very serviceable PC that I intend to use as my first home server. I gave two basic goals in self-hosting:

  1. Host family media through Jellyfin, etc. This would include tv, music, and possibly books as well. Many of these will be managed through the Arr apps.
  2. Degoogle my phone - I’m beginning by replacing Photos with Immich, but hope to also use Home Assistant, backup other phone data such as messages media, shopping lists, etc. I hope to replace Google storage/backup with Proton Drive.

So the question is what OS should I set up to run that? My proof of concept was an immich container running in xubuntu on an old laptop. I chose Xubuntu because I like the availability of documentation and community support for Ubuntu like distros, but wanted a lower powered alternative for the older device.

It seems to be working well, but I’ve had a few hiccups trying to update it, and I’ve heard that once you get into it, Linux distros like Ubuntu are not very user friendly for self-hosting as a beginner.

So is it better on the whole for a beginner to have a popular distro with lots if documentation and step by step guides, or to have a purpose-built OS like TrueNAS that might be more straightforward, but with less support?

  • zipping2583@lemmy.world
    link
    fedilink
    English
    arrow-up
    35
    arrow-down
    1
    ·
    16 days ago

    If you know how to use containers then go for debian as the server OS and run everything you need as containers.

    Debian is community based distro, very stable, major updates every few years, ubuntu and other distros use it as a base.

    Get familiar with working on the command line, try nano as an easy text editor und use docker compose.

    I did not test TrueNAS, I do know the scale version can run containers too, but I do not know how stable ur usable it is. You should go for the classic linux approach with Debian. Much more fun to learn :)

    • Kuro@programming.dev
      link
      fedilink
      English
      arrow-up
      9
      ·
      16 days ago

      I can only second that. Its basically exactly my setup. Debian as stable base and every service as docker via docker compose. This way your system is stable and your services can upgrade as much as they like.

      Only difference is that i use micro as editor. But thats just details.

    • N0x0n@lemmy.ml
      link
      fedilink
      English
      arrow-up
      6
      ·
      edit-2
      15 days ago

      Yep, Debian for sure ! 3 years ago I settled for debian on an old spare laptop, It’s still cruisen with more than 21 containers !! Sure I had a few fresh installs because skill issues, lack of proper configuration, user mistakes… But it’s probably the easiest to maintain and learn as a beginner !

      No idea what’s your level and how close you’re with computers and how much time you have to spare, but don’t be afraid to make mistakes and try a few things out.

      If you are like me just a plain old geek who knew his way arround computers and used Hamachi back in the days, thinking you were a HAKKER… Get ready to get your ass kicked !

      While self-hosting and de-googling is fun, it also has alot of negative things:

      • Time consuming
      • Involves ALOT of Searxing/Reading
      • Debuggin (kinda…)
      • Learning the basics of at least 1 scripting language (consider bash your ally)
      • It’s an infinite rabbit hole that will suck you in and sometimes get to your nerves…

      One of the best advice I could give you along the way is, If you’re stuck on a bug or something isn’t working as expected in your setup and It seems you couldn’t find any answer or similar issues on the web, you absolutly have to take a break, not a 5min cigarette break… A few hours bicycle/sleep break !!!

      The next day you will for sure find a solution !!

      Good luck, have fun and don’t forget to take time for yourself and people arround you !

    • Tywèle [she|her]@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      4
      ·
      15 days ago

      I used to run multiple containers with TrueNAS Scale through their apps system (not as a VM in TrueNAS) and it was very unstable. I constantly had to fix something and the apps had constant updates even though there were no updates to the apps itself. It was really annoying to work with. I switched to Fedora Server and it has been much better since.

      • towerful@programming.dev
        link
        fedilink
        English
        arrow-up
        9
        ·
        15 days ago

        Nano is useful because it is everywhere.
        There are better editors, but being familiar with nano and it’s shortcuts means you can edit files pretty much anywhere.
        Same with knowing the basics of vim (like being able to edit, exit and save)

    • Bimbleby@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      15 days ago

      Got the same setup, but I connect to my server with vscode through SSH and edit files there.

      Much more user friendly as a primary Windows guy.

  • y0kai@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    14 days ago

    I’m a beginner currently doing exactly the same thing, plus a but more.

    For the server I’m using Proxmox as a hypervisor, which let’s me experiment with various OS’s as I choose. For my phone, I have a pixel with GrapheneOS, which I love.

  • helenslunch@feddit.nl
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    15 days ago

    Install Debian 11. Manage it with Yunohost. It gives you a GUI and automates most of the configuration.

  • Hawk@lemmynsfw.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    15 days ago

    If it’s just a server, Alpine and docker will do most things with good reliability and security.

    Otherwise I’ve actually always used void and arch. While those aren’t typical choices for a server, it shows that it’s hard to go wrong.

    Choose a distribution that appeals to you and it’ll work great.

    For this use case, alpine sounds good.

    • redxef@scribe.disroot.org
      link
      fedilink
      English
      arrow-up
      5
      ·
      15 days ago

      Honestly, alpine is a great distro, but not really something I would recommend for a beginner. There is less documentation and troubleshooting guides out there tailored to this distro than for example debian or ubuntu.

      I would either recommend using Debian or a derivative of that if they want to get their toes wet. Alternatively a complete solution with GUI tools for if they just want to start using their own stuff now.

      • Hawk@lemmynsfw.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        15 days ago

        Yeah I hear that, good point.

        Arch has great documentation but also a bit more config.

        I would vote for Fedora over debian though. Debian packages are so far out of date that it becomes a pain and copr works quite well.

  • Wave@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    15 days ago

    If you want Something you can set up and forget, use YUNOHOST, otherwise learn how to use docker containers and pick any server distro. Debian, Fedora Server, Ubuntu Server, MicroOS, hell OpenWrt will all do fine.

  • Possibly linux@lemmy.zip
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    16 days ago

    What are you trying to do? Debian is pretty solid but you also could go with Rocky Linux or tons of others. Heck, you could even buy a Red hat license if you felt like it for some reason.