Edit: wow, this is a never ending comment section!

    • Voroxpete@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      11
      ·
      10 months ago

      I just heard of NixOS for the first time because of this thread. Looked up some videos on it, and my jaw hit the fucking floor.

    • bzLem0n@lemmy.ca
      link
      fedilink
      English
      arrow-up
      8
      ·
      10 months ago

      Same here. I came for the integrated ZFS support and stayed for the declarative config.

      • 2xsaiko@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        21
        ·
        10 months ago

        Declarative configuration of services and the rest of the entire system, and everything that brings with it.

        • Want to test some new service, or make changes to an existing one, but don’t know if you want to keep it? Sure, just temporarily switch to the new configuration, you can always switch back to the old one and everything will be back as it was.
        • Have multiple servers and want to share configuration between them? Absolutely, just import the same file from both. I have a git repo storing configurations for 10 machines and a huge part of it is shared configuration.
        • Want to use one service’s endpoint (such as a socket path) in another? Sure, just use the socket path configuration option for the first service in the configuration for the second, such as here. This works since everything is a single tree of options which all the service configuration files are then generated from, so interpolate stuff as you wish.
        • Checks for configuration correctness during build of the system (NixOS options are type checked during evaluation, and then during the actual system build there’s more checks, like nginx config has to succeed nginx -t, otherwise the system build fails and you can’t switch to it)
        • Want to spin up a VM to test changes before putting it on the actual target? There’s a builtin command (nixos-rebuild build-vm) that makes a script that starts a QEMU VM with your configuration running in it. It’s as fast as building the real system, so a couple seconds if you’re making small changes.
        • Setting up services is also often as easy as putting services.foo.enable = true; in your configuration. And, if you remove that line, the service is gone, so you’re never left with “the random package or file you installed once to test something and has been forgotten about”. That’s the biggest thing it has over any kind of imperative solution IMO.

        I feel like even if I want to distro hop again and end up putting something else on my desktop, NixOS is going to stay on my servers indefinitely. It’s pretty much a perfect fit for servers.

      • baduhai@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        6
        ·
        10 months ago

        It isn’t, it’s just different. I use NixOS because of stupid easy rollbacks, which is great for experimenting in production, and its declarative nature, which is great in a server setting.

      • Litanys@lem.cochrun.xyz
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        10 months ago

        Everything is declared, from packages to configuration, and then I can put it in a git repo locked to versions. If something breaks on updates, you have free rollbacks. Which means you can’t screw up too much. Also it has almost all the software.

  • MangoPenguin@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    32
    ·
    edit-2
    10 months ago

    Proxmox (debian) on the hosts, and Debian for all the VMs and Containers.

    Just nice and easy to use, supported by basically everything, and a minimal install uses like 30MB of RAM.

    I also have an OSX VM because that’s literally the only way you can test a website in Safari (fu Apple).

    • Billygoat@catata.fish
      link
      fedilink
      English
      arrow-up
      7
      ·
      10 months ago

      Love proxmox. Been using it for nearly a decade and while it has its pain points it has been rock solid for me for the past 4 years.

    • 2xsaiko@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      6
      ·
      10 months ago

      You don’t need Safari unless it’s for Apple Pay integration or something. WebKit is open source. Use Epiphany or some other browser that uses it.

    • umbrella@lemmy.ml
      link
      fedilink
      English
      arrow-up
      2
      ·
      10 months ago

      when vendors pull this kind of crap ill simply not test on their software.

  • rmuk@feddit.uk
    link
    fedilink
    English
    arrow-up
    21
    ·
    10 months ago

    Three HP ProLiant servers running ProxMox cluster. Each box has a VM for Portaiber, as well as mismatch of VMs running Home Assistant OS, OpenWRT, Ubuntu, Windows and Debian, along with a Windows file server that connectes to four cheap NAS running Ubuntu LTS with a combined 20 mismatched hard drives by iSCSI and borgs them together with Storage Spaces.

    It’s a fucking mess, if I’m honest.

  • HumanPerson@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    19
    ·
    10 months ago

    Debian. It is rock solid. If software doesn’t support Debian, chances are it supports something Debian based. You never have to worry about an update breaking your computer. It is the perfect “it just works” distro for a server.

  • harsh3466@lemmy.world
    link
    fedilink
    English
    arrow-up
    17
    ·
    edit-2
    10 months ago

    Ubuntu LTS, with all my services in Docker containers.

    I know Ubuntu gets a lot of (deserved) hate for some of the shit Canonical pulls, but for now, I like Ubuntu and it works for me.

    When I rebuilt my server at the beginning of the month, I was gonna jump to Debian, but my god the Debian website is obtuse. After looking at the site and trying to determine what to download to get Debian with non-free (I’m unfortunately working with an NVIDIA card), I decided to go with Ubuntu. I needed a smooth rebuild process and with Ubuntu I know exactly what I’ll get when I download the LTS server.

    Edit: grammar

    • lemmyvore@feddit.nl
      link
      fedilink
      English
      arrow-up
      5
      ·
      10 months ago

      It’s always best to use whatever distro you’re most comfortable with. Especially if you’re going to install stuff in containers/VMs so the repos of the base distro don’t even matter that much.

    • krash@lemmy.ml
      link
      fedilink
      English
      arrow-up
      3
      ·
      10 months ago

      I went with Ubuntu server and was pleasantly surprised when it offered to pull my pubkey off my github profile for ssh. A nice touch that I haven’t seen in other servers flavors of various distros.

    • BlueBockser@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      10 months ago

      After looking at the site and trying to determine what to download to get Debian with non-free (I’m unfortunately working with an NVIDIA card)

      FWIW, Debian 12 now includes non-free firmware in the installation media by default and will install whatever is necessary.

      I agree that the Debian website has its weaknesses, but beyond finding the right installer (usually netinst ISO a.k.a small installation image on https://www.debian.org/distrib/) there isn’t much of a learning curve. I started out with Ubuntu too, but finally decided that enough was enough when snap started breaking my stuff on desktop.

      • harsh3466@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        10 months ago

        The inclusion of non-free by default was what was unclear to me from the website. Knowing that now, I’ll likely give Debian a spin next time I need an install.