Perhaps dumb questions inbound ;)

I use Arch because I’m strapped for time and my system is always moving.

  • 2 minutes to install something? AUR probably has it.

  • Ten minutes of free time to look for a software that fits a new need? Try random AUR things (auditing PKGBUILDs is just twenty seconds or so).

  • If I need a tiny patch, I’ll just add a sed or patch file to the PKGBUILD. (Super easy, you barely learn any syntax cuz it’s intuitive shell.)

  • make && make install/meson blahblah usually just works.

  • Wiki does the thinking for me if I need something special (e.g. hw video acceleration)

Buuuut update surprises can be a pain (e.g. Pipewire explodes Saturday evening) and declarative rollbackable immutability sounds really freakin’ AWESOME, so I’m considering NixOS for my new laptop (old one’s webcam broke). So I ask:

  • How much can I grok in a week?
    • I need to know Nixlang, right? I have a ton of dotfiles and random homemade cpp commands in ~/.local/bin that I use daily
  • How quick is it to make a derivation?
    • I make install a lot, do I need to declare that due to non-FHS? Can I boilerplate the whole thing with someone else’s make install and ctrl+c ctrl+v? How does genAI fare? (Lemmy hates word guess bots, I know)
  • How quick is it to install something new and random?
    • Do I just use nix-shell if I need something asap? Do I need to make a derivation for all my programs? e.g. do I need to declare a Hyprland plugin I’m test-running?
  • How long do you research a new package for?
    • On Gentoo I always looked up USE flags (NOO my time); on Arch I just audit the PKGBUILD and test-run it (20 seconds); on Ubuntu I had to find the relevant PPA (2 minutes). What’s it like for Nix?
  • Can you set up dev environments quickly or do you need to write a ton of configs?
    • I hear python can be annoying. Do C++/Android Studio have header file/etc. issues?
  • What maintenance ouchies do you run into? How long to rectify?
  • Do I need to finagle on my own to have /boot encrypted?
    • I boot via: unencrypted EFI grub asks for LUKS password -> decrypt /boot, which then has a keyfile -> decrypt and mount btrfs root partition. But lots of guides don’t do it this way

Thanks for bearing with me ദ്ദി(。•̀ヮ<)~✩‧₊

  • AItoothbrush@lemmy.zip
    link
    fedilink
    English
    arrow-up
    3
    ·
    4 hours ago

    Mixing release streams dont infect other packages but yes you will have multiples of a lot of dependencies. Thats the one thing nixos eats up pretty well but with modern storage it doesnt really matter. I have a 512gb ssd and only use about 200gb of it with nixos, vms and all my personal data. I havent thought about running out of storage in a lot of time. Tho your own usage may vary, i dont have many heavy packages other than a few design tools.

    The zero time really is true, i just search the nix repo, add it to my config and rebuild. 2 mins. The only things ive struggled with are dependencies for building stuff but ive always been someone to struggle with it so i just started compiling in vms and now i just do it with distrobox. It works for me, i didnt even change my workflow from other distros but it may not work for you. I definitely recommend trying nixos out and if you like it you will love it. Just dont go too deep in the rabbit hole, i know people whos home is a temp directory and its rebuilt on every boot and their root is also rebuilt the same way. Dont even ask why or how 💀

    • fool@programming.devOP
      link
      fedilink
      arrow-up
      1
      ·
      4 hours ago

      Too late, I asked algernon. O.O

      but yeah I don’t think I’ll make my OS an absolutely pure mathematical function that I prove the correctness of at every boot cool af tho

      I do rely on correct dev envs so I’ll try my hand at nixos-shell -ing. Thanks for the input