It’s not about the destination, it’s about the journey.

  • merthyr1831@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    7 months ago

    nix being 20 years old and still lacking decent documentation on the language it’s what hurts me the most, because the people who do know it works so some amazing things with it

    • christ0st@lemm.ee
      link
      fedilink
      arrow-up
      1
      ·
      7 months ago

      Imagine if NixOS had as good a wiki as Arch. Personally, I wouldn’t bother with another distribution again.

          • ComradeKhoumrag@infosec.pub
            link
            fedilink
            arrow-up
            2
            ·
            7 months ago

            Software engineering is usually distinct from programming in that it isn’t about the logic behind programming, but about the project management that all software projects typically have in common.

            Besides agile methodology, a lot of software engineering involves creating reproducible environments. While NixOS doesn’t provide anything that much different from tools like Ansible,

            NixOS follows a functional/declarative design paradigm, functional/declarative design paradigms communicate similar logic for solving the same problem. It’s a restrictive paradigm. Consider how javascript is not restrictive, as in, you can code with any design paradigm in javascript, and how it’s ugly for that.

            I also think functional paradigms mirror the natural language closer than imperative paradigms. That’s subjective, but I would still argue Math is a logical language that is a subset of the natural language, and since functions in programming represent a process of doing something, functions make for natural verbs. Meaning, understanding the naming convention for the functions, is a natural naming convention for when I communicate with other software engineers, even when I’m not asking about making configurable/reproducible systems in NixOS

            Or when I look at how to config things like firewall, ssh, vpn servers, user group permissions… it’s a minimalist description that I could communicate to other people configuring even on a debian server

            So, it’s hard because it’s restrictive, but if you’re willing to put up with a learning curve, you get a language agnostic framework for describing computing environments, more or less. Then there’s more advanced stuff with nix flakes, which still doesn’t make sense to me functionally/linguistically, but I’m starting to see the value in parallel package management and the precision in reproducibility they provide by requiring sha256 git commits

  • itslilith@lemmy.blahaj.zone
    link
    fedilink
    arrow-up
    3
    ·
    7 months ago

    …to get a working config, you need to learn a whole new programming language and figure out the tweaks for each package you want to install, so I’d argue the journey is just as long

    • BCsven@lemmy.ca
      link
      fedilink
      arrow-up
      0
      ·
      7 months ago

      I had no experience in nixOS, just went to the package website, it tells you exactly what to add to each section of the config.

      • totally_notAcat (she/her)@lemmy.blahaj.zone
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        7 months ago

        Well not everything is packaged and when they aren’t it Can get more complicated to install since nixos doesn’t use the default file system layout. Another thing is that certain programs have assumptions about being able to do certain things like changing their own config files that don’t work well with the nixos way of doing things. (Looking at you fish(it works but you can’t manage your configuration for it(pretty sure?)with nix))

  • HouseWolf@lemm.ee
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I might just be basic but the only annoying part of reinstalling for me is setting up my browser again.

      • HouseWolf@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        I’ve used Firefox for over a decade but still wouldn’t trust them to keep all my account info on their servers, Especially not nowadays.

        I already started using KeypassXC to locally store my passwords, just importing bookmarks and add-ons I’ve left to do.

        • JovialSodium@lemmy.sdf.org
          link
          fedilink
          arrow-up
          0
          ·
          7 months ago

          I use file syncing (Syncthing) and symlinks to keep configs for some apps synced between devices. I don’t for Firefox, but it might work.

          • HouseWolf@lemm.ee
            link
            fedilink
            English
            arrow-up
            0
            ·
            7 months ago

            I’m still a newbie Linux user so haven’t fully delved into Symlinks…besides bricking a VM trying it once when following a guide.

            Can I for instance link a folder where emulators or offline games store save data on my main SSD and have it automatically copied to a folder on my large HDD?

            • JovialSodium@lemmy.sdf.org
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              7 months ago

              It doesn’t copy data, no. Symlink is short for symbolic link. So it’s a pointer to another location. But it might be useful for you. Taking a guess at your goal, here’s a relevant example.

              Say you moved all of your emulation stuff stored under /media/largehdd/retroarch. You could then symlink that directory to ~/.config/retroarch like so:

              ln -s /media/largehdd/retroarch ~/.config/retroarch

              That data is still stored on the large drive but will now also show under that symlinked directory.

  • cygon@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    7 months ago

    I am a Gentoo user and most of that is already a reality on Gentoo systems. Get the stage3 tarball set up, slap your /etc/portage/make.conf and /var/lib/portage/world files in there and build.

    Obviously, depending on whether it should be a blank system with the same apps installed or a clone of a previous system, configuration in /etc and one’s home directory may need to be copied, too.

  • MyNamesNotRobert@lemmynsfw.com
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    7 months ago

    I think Endeavour OS is like that too. I have 2 “unfixable” bugs on my arch installation that can never be removed. I have to manually do 2 annoying workaround tasks every time I turn on my computer before I can use it and this will likely never go away. I’ve been told both these issues can’t be fixed without a complete os reinstall and even then it might not go away. I booted into an Endeavour OS live usb and what do you know, both those bugs were fixed out of the box. Endeavour is based on Arch. The kernel it was running was a kernel number release after my installation developed both of these “forever” bugs.

    Arch is great and all but holy fuck I’m sick and tired of this fucking bullshit all the time. One of these times I’m going to type sudo pacman -Syu and it will develop yet a third unfixable forever bug. This is the same shit that drove me away from Windows: uncontrollable degradation over time that can’t be fixed without os reinstall. Even Gentoo isn’t this unforgiving.

  • GBU_28@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    7 months ago

    If you have time for that, you aren’t making the most of yourself. Goes for any hobby

  • Jeena@jemmy.jeena.net
    link
    fedilink
    arrow-up
    0
    ·
    7 months ago

    How often do you reinstall your OS? In practice never, I installed Arch around 8 years ago on one computer and that’s the install I have today still. I copied it twice to a bigger SSD but that’s kind of it.

    • redcalcium@lemmy.institute
      link
      fedilink
      arrow-up
      2
      ·
      7 months ago

      There is a certain thrill when you nuke your disk to install a distro you never tried before. I actually just nuke one of my laptop last night to try void linux.

      • Corroded@leminal.space
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        I was wondering if Void was still popular. It was kind of feeling like NixOS took all its hype

    • ivn@jlai.lu
      link
      fedilink
      arrow-up
      1
      ·
      7 months ago

      Yeah, I don’t think that’s the best selling point for desktop use. For me it’s having all my configs for all my devices in a single place, checked in git, with bits of config I can easily share between my different devices.

  • Avid Amoeba@lemmy.ca
    link
    fedilink
    arrow-up
    0
    ·
    7 months ago

    Or, they could learn Ansible and get 80% of the way, and be able to reproduce the result on more than one OS. 🥹

    • Something Burger 🍔@jlai.lu
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      7 months ago

      That is, until a new Ansible version breaks playbooks again, or an OS is updated in a way that messes with you playbooks, or a package is removed from the playbook but not the installed system…

      Ansible is good for ephemeral containers or VMs, but any more permanent system will eventually deviate from the set configuration.

    • 2xsaiko@discuss.tchncs.de
      link
      fedilink
      arrow-up
      1
      ·
      7 months ago

      Nix is not something exclusive to NixOS, and people are already using it to make reproducible configs that work on more than one OS.

      I’m even using Ansible in what I’m currently building with Nix, because it does one thing well that I need to do: distribute files and run commands on a lot of hosts at once.

      • sunstoned@lemmus.org
        link
        fedilink
        English
        arrow-up
        0
        ·
        7 months ago

        In my head they’re different use cases. Nix is amazing for a living build. Ansible is more pigeon-holed to production systems where you don’t want (or need) that history baked into every system