• 0 Posts
  • 128 Comments
Joined 1 year ago
cake
Cake day: June 17th, 2023

help-circle
  • The whole point of NixOS is that it’s “immutable” and “declarative”.

    In essence this means that you store the entire system configuration in a bunch of text files in a single directory. So your bootloader configuration, all your installed packages, every system service, every filesystem mounts, and even your partition layout and dotfiles, all of it in a common shared configuration.

    There’s even a concept called flakes, which lock the specific version of everything, so if you copy all your config to another computer (or reinstall), then applying the config will restore every system configuration to exactly that state. So if you like how you configured your machine, and want another machine exactly like it, you just copy all your configuration to the other machine, and run the nixos-rebuild command. Now the two machines are configured exactly identically, all the same package, all the same services, all the same configurations, even all the same versions if you make use of flakes.

    It also means that you can reason about your entire system setup just by looking at those configs. Is that piece of config in the files? Then that’s how your system is configured. If that piece of config isn’t there, then that is not how your system is configured.

    Want to install an application, just add it to the list in your config, and run the nixos-rebuild command. Now you have that installed. Don’t want it anymore? Just remove it from the list, and rerun nixos-rebuild.

    On top of that NixOS stores every generation of your config, so even if you break something, you just restart and pick the previous config generation, and your system starts up exactly as it was before you broke it, and you can go and resolve the issue in the config that broke your system.

    If you’ve ever done any programming, and made use of a dependency management tool that stores a dependency lock file, this is very similar, but for your entire operating system.

    If you’ve ever managed infrastructure via Terraform, then this feels like that, but for your entire system configuration.



  • FrederikNJS@lemm.eetoxkcd@lemmy.worldxkcd #2948: Electric vs Gas
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    12 days ago

    I’m sorry but I’m too lazy to dig up links to back up my claim. But you are correct in that electric vehicles pollute far more being produced than combustion engine cars, however the electric vehicles gain that back over it’s lifetime if your charge from mostly non-fossil sources. The figures I have read says that over the lifetime of a car, electrics output 70% less CO2 than combustion cars, and that includes the production of each of the cars.




  • ZFS doesn’t really support mismatched disks. In OP’s case it would behave as if it was 4x 2TB disks, making 4 TB of raw storage unusable, with 1 disk of parity that would yield 6TB of usable storage. In the future the 2x 2TB disks could be swapped with 4 TB disks, and then ZFS would make use of all the storage, yielding 12 TB of usable storage.

    BTRFS handles mismatched disks just fine, however it’s RAID5 and RAID6 modes are still partially broken. RAID1 works fine, but results in half the storage being used for parity, so this would again yield a total of 6TB usable with the current disks.













    • 1TB NVMe SSD
      • 512 MB EFI
      • BTRFS partition for / filling up the rest
    • Ancient 128 GB SATA SSD
      • Swap
    • 1TB SATA SSD
      • 500 GB Windows installation for VR games
      • 500 GB BTRFS partition mounted at /mnt/games

    Since both my root and home are on the same BTRFS partition they share space.

    I have made sure to create sub volumes for the Steam and Game install directories, to avoid taking snapshots of them.

    Steam has 2 “libraries” registered, one in my home directory and one in /mnt/games