NixOS: Everything Everywhere All At Once

Sdílet
Vložit
  • čas přidán 24. 02. 2024
  • Alternate Title: NixOS: Stability on the Bleeding-Edge
    One day, as happens now and then with a bleeding-edge rolling release distro, a systemd update reversed my mouse buttons.
    The great thing about rolling-release and cutting-edge distributions like Arch Linux, is that you get to be a beta tester, whether you like it or not!
    I thought this was the way it had to be on Linux: Stability or cutting-edge features, not both.
    But that wasn't right at all, with NixOS you can have everything, everywhere all at once!
    ❤️ If you would like to support what I do, I have set up a Patreon here: / noboilerplate - Thank you!
    📄 All my videos are built in compile-checked markdown, transcript source code available here github.com/0atman/noboilerplate this is also where you'll find links to everything mentioned.
    🖊️ Corrections are in the pinned ERRATA comment.
    🦀 Start your Rust journey here: • How to Learn Rust
    👕 Bad shirts available here www.teepublic.com/user/no-boi...
    🖼️ The Phosphene Catalogue is here: • The Phosphene Catalogu...
    🛰️ Lost Terminal is here: • Lost Terminal Episode ...
    🌕 Modem Prometheus is here: • Modem Prometheus 1 - #...
    🎵 My published albums are on spotify, itunes, etc, but I have a lot more unpublished work over at / namtao
    🙏🏻 CREDITS & PROMO
    My name is Tris Oaten and I produce fast, technical videos.
    Follow me here tech.lgbt/deck/@noboilerplate
    Website for the show: noboilerplate.org
    Come chat to me on my discord server: / discord
    If you like sci-fi, I also produce a hopepunk podcast narrated by a little AI, videos written in Rust! www.lostterminal.com
    If urban fantasy is more your thing, I also produce a podcast of wonderful modern folktales www.modemprometheus.com
    I've got a new fiction Podcast out called The Phosphene Catalogue, if you like mysteries and art, check it out!
    👏🏻 Special thanks to my patreon sponsors:
    - JC Andrever-Wright
    - Miah Beach
    - Taylor Dolezal
    - Thomas Picard
    - David Senk
    And to all my patrons!

Komentáře • 941

  • @NoBoilerplate
    @NoBoilerplate  Před 3 měsíci +360

    ERRATA
    - @Vimjoyer's video is here: czcams.com/video/a67Sv4Mbxmc/video.html
    - 0:18 Misspelled "LINUX" in the title, classic me!
    - Asahi USED to be arch-based, now fedora-based. Same problem, different flavour!
    - The TOML examples shouldn't have semicolons at the end

    • @pcfreak1992
      @pcfreak1992 Před 3 měsíci +9

      Lynx or Linux? 0:38 😅

    • @SumriseHD
      @SumriseHD Před 3 měsíci +6

      I am literally installing Arch Linux, btw, after using Fedora for a while and now you upload this. 😂

    • @jh-devv
      @jh-devv Před 3 měsíci +8

      @@SumriseHD yeah, it happens, though Arch has it's upsides: at least you get to know your system!
      I used it before NixOS, learned tons of stuff from it (e.g. drivers, package management, bleeding edge etc.)

    • @vildis.
      @vildis. Před 3 měsíci +2

      Missing ] at 4:46 on line 1?

    • @Teo-js1jk
      @Teo-js1jk Před 3 měsíci

      In the descriptions there are "alternate video titles" but are referring to rust pure functions

  • @SmartassEyebrows
    @SmartassEyebrows Před 3 měsíci +1111

    Taking the Cloud world's "configuration as code" philosophy and applying it to an OS in this particular way is honestly brilliant.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +271

      What's wild is that Nix came FIRST! It's 20 years old!

    • @Schmogel92
      @Schmogel92 Před 3 měsíci +26

      @@NoBoilerplate what is the reason for it becoming popular only recently?

    • @akkesm
      @akkesm Před 3 měsíci +87

      @@Schmogel92I'm guessing the learning curve is so high that nobody ever got to the good part. NixOS didn't even have a GUI installer until last year. I've been using it for 3/4 years and I have no intention of leaving. It's the best distro for software development by far.

    • @akkesm
      @akkesm Před 3 měsíci

      On the flip side, NixOS is so hard to learn that, by the time you are able to use it, you can contribute to it. It's easy, it's all text files in a git repo. As a result, NixOS has a higher percentage of contributors compared to other distros.

    • @matthewcroughan
      @matthewcroughan Před 3 měsíci +17

      If anything, the cloud world took that from Nix, given that Nix was created in 2003

  • @vimjoyer
    @vimjoyer Před 3 měsíci +796

    Thanks for the shoutout! I've been watching your channel for a long time, and I never thought I'd hear you recommend my video. Feels very surreal.

    • @user-nq9vh7mv7k
      @user-nq9vh7mv7k Před 3 měsíci +47

      well deserved. your videos carry every nix newbie.

    • @samuelwaller4924
      @samuelwaller4924 Před 3 měsíci +18

      Moments like this make the internet great. Thank you both for helping the community like you do, I hope you feel the impact you make

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +102

      My dude! Thank you for your nice words, and your incredible videos! You've got a great style, email me, let's chat 😀

    • @luisliz
      @luisliz Před 3 měsíci +16

      @vimjoyer If it wasn’t for you I would’ve never dared. You make it approachable.

    • @vaisakhkm783
      @vaisakhkm783 Před 3 měsíci +5

      @@luisliz ikr.. he is only the reason i got started and still loving it..

  • @DeerDesigner
    @DeerDesigner Před 3 měsíci +221

    Small correction - Asahi USED to be arch-based, nowadays the official, blessed asahi distro is fedora-based

  • @blehbleh9283
    @blehbleh9283 Před 3 měsíci +196

    NixOS was a bit too limited for packages back when I first saw it in mid 2010s, but I think that graph and the annoyance of updating/keeping up with news for Arch might've just convinced me to switch

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +56

      Right! I had the same impression, it's WILD, everything is here, including all my weird music plugins and streaming stuff!

    • @blehbleh9283
      @blehbleh9283 Před 3 měsíci +16

      Hahaha. I just got the config table 12:26
      This is so much better. So much brain space was wasted on which config where and what to edit.
      Thanks for the videos! Love the channel

    • @asdfghyter
      @asdfghyter Před 3 měsíci

      i probably wouldn’t recommend NixOS to most linux users, especially because of the learning curve, but i would certainly recommend that every single arch user tries it out

  • @jeiang
    @jeiang Před 3 měsíci +220

    I've been using NixOS for about 6 months now, and I love it. My favorite"feature" is impermanence, so my system rebuilds itself from fresh on every boot.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +71

      Ooh, that's cool, Vimjoyer talks about that feature.

    • @jeiang
      @jeiang Před 3 měsíci +31

      @@NoBoilerplate yea it's useful, like for backups because all my files not managed by my config (my system state) are in one place (under /persist), so I just need to back up that

    • @angeldude101
      @angeldude101 Před 3 měsíci +33

      Mounting root on a tmpfs for a daily driver feels like it should be insanity, and yet NixOS lets you get away with so much that it's somehow become completely normalized. It's kind of amazing.

    • @Schmogel92
      @Schmogel92 Před 3 měsíci +5

      What are your boot times like?

    • @jeiang
      @jeiang Před 3 měsíci +19

      @@Schmogel92 pretty quick, I also have disk encryption, but I think it’s around 20 - 30 secs

  • @cid-chan-2
    @cid-chan-2 Před 3 měsíci +59

    Some nitpicks
    - nixos-unstable has automated tests. In fact these tests cause nixos-unstable to lag behind master by up to one week if there are critical test failures, like rendering the system in an unbootable state, or similar problems. NixOS-stable works by freezing versions of critical system components, only selectively porting back versions where neccessary.
    - Addendum: even the package definitions are tracked by git. There is also the nixos master branch. You dont want to use that branch ever directly. This one is the branch with 0 tests applied (except: is it valid nix code?)
    - you can also configure your system using json.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +18

      Interesting! Thanks for those details, I don't think you're contradicting anything I've said, just providing more information?
      And yes, I know about configuring nix in json. That is not an improvement from my point of view lol

    • @emdivine
      @emdivine Před 3 měsíci +1

      @@NoBoilerplate could you sell me on how toml would be a better alternate config format than json? If you're going to pick a non-recommended format anway

    • @NatoBoram
      @NatoBoram Před měsícem +1

      YAML and Toml are easier to read and write than JSON for humans as you don't have to be concerned about escaping quotes in the middle of a string

  • @andylees8939
    @andylees8939 Před 3 měsíci +56

    FYI, arch based distros using btrfs for the root FS allow rollback to a previous state. This has saved my bacon on a few (important) occasions. Garuda is worthwhile checking out.

    • @0LoneTech
      @0LoneTech Před 3 měsíci +2

      Also possible, but takes some setting up, on Debian using snapper, some subvolumes and hooks. It covers the rollback function, but not so much the background building with atomic live switching.

    • @antonliakhovitch8306
      @antonliakhovitch8306 Před 3 měsíci +3

      Before I switched to NixOS, I used OpenSUSE specifically for this. Snapper is great and I still use it on my user files

    • @NeftisIsHere
      @NeftisIsHere Před 3 měsíci

      snapper my beloved

    • @electricant55
      @electricant55 Před 5 dny

      Same with openSUSE (another rolling distro)

  • @0thLaw
    @0thLaw Před 3 měsíci +63

    Video suggestion: rapid prototyping in Rust. I love rust and colleagues comment all the time the amount of effort it requires to build even a proof of concept. Granted, rust forces you to do you due diligence before you can even try to run it. However, I would very much like to learn tips and techniques to easily do rapid development, cut some corners to get it going.
    Some ideas: disallow optimized builds when corners are still cut, use todo!(), initially build everything with just traits and automocks and gradually implement them (feels like tdd without the tests, but still designed to be loosely coupled).

    • @Rudxain
      @Rudxain Před 3 měsíci +4

      Another tip is to avoid the borrow-checker by simply `clone`ing everything. `rustc` can sometimes optimize `clone`s into borrows

    • @user-anonymous1337
      @user-anonymous1337 Před 3 měsíci +1

      Try using Copy traits everywhere. It might go against the Rust philosophy but if you want fast prototyping it's definitely make it faster.

  • @DavidConnerCodeaholic
    @DavidConnerCodeaholic Před 3 měsíci +26

    As someone who’s basically only ever written a single RPM… writing pkgs in Nix and Guix is so unbelievably efficient in comparison. Linux would have to be ludicrous not to gravitate towards these solutions.

  • @Nicfallenangel
    @Nicfallenangel Před 3 měsíci +32

    12:53 "I'm sharing this just between you, and me, and 200,000 of my closest friends." 😂 That was gold. And I've never thought of using TOML, YAML, or any other ML to generate config. That's an interesting approach to get around learning the syntax at first.

  • @idkwtpaah
    @idkwtpaah Před 3 měsíci +67

    You know that something is amazing when No Boilerplate covers it
    NixOS rocks!

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +3

      I'm so late to the party lol

    • @bew
      @bew Před 3 měsíci +1

      But you came, welcome o/

  • @FreshSmog
    @FreshSmog Před 3 měsíci +190

    I think you forgot to mention another important part. Nix can be installed as just a package manager on any other distro and gets you much of the benefits of nixos on user packages. For average home users who don't configure systemd or manage user groups, the package manager might be all they need.
    It's also why people use home-manager, it installs and configures home packages and works on both nixos and nix package manager.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +79

      That's a useful part, but having all your software, kernel to userspace configured in one system is the life-changing part I'm excited about.

    • @jeffrey1298
      @jeffrey1298 Před 3 měsíci +6

      there's also another project called system-manager which allows nixos modules on non-nixos distros. i've never tried it and have no idea how well it works, but it exists!

    • @MrMrCraftmine
      @MrMrCraftmine Před 3 měsíci

      yeah well, i tried using nix and home-manager on my Pop_OS!, however it completely broke my system beyond repair and I had to reinstall...

  • @Synthetica9
    @Synthetica9 Před 3 měsíci +83

    I've been running nixos as my main os since 2017, and I still have this original install 1000+ generations later.

    • @ToyKeeper
      @ToyKeeper Před 3 měsíci +21

      I've been running Debian as my main OS since 1997, and despite upgrading, replacing, and diversifying the hardware a bunch of times, I still have basically the same original install 27 years later. It is a little weird though, seeing the 1990s in a "ls -alt ~". :D

    • @sachinchaudhary1310
      @sachinchaudhary1310 Před 2 měsíci +2

      @@ToyKeeper bro what ? are u sure wtf bro.. i mean amazing bro...

    • @ToyKeeper
      @ToyKeeper Před 2 měsíci

      @@sachinchaudhary1310 Not a bro.

    • @sachinchaudhary1310
      @sachinchaudhary1310 Před 2 měsíci

      @@ToyKeeper really women's are amazing

    • @arden6725
      @arden6725 Před měsícem +1

      @@ToyKeeper never thought i’d see the same toykeeper that made the firmware my flashlight runs in a youtube comment section!

  • @twenty-fifth420
    @twenty-fifth420 Před 3 měsíci +216

    0:35 Linx OS is a Linux distro that purrs when you pet the start button and roars mightly when you install a package 😂.
    We have fun here at no boilerplate.

  • @robinkneepkens4970
    @robinkneepkens4970 Před 3 měsíci +110

    oh yess, the perfect channel to cover nix/nixos. I've been getting into them recently as well and they feel like such powerful tools to have as a software developer (or anyone who does anything with programming)

    • @Anonymous4045
      @Anonymous4045 Před 3 měsíci

      Which aspects specifically do you find the most helpful in software development?

    • @fabiandrinksmilk6205
      @fabiandrinksmilk6205 Před 3 měsíci

      ​@@Anonymous4045Nix Shell, you can setup a development environment easily without affecting the rest of your system. You specify what packages or environment variables you want and Nix creates a new shell with those available to you, when you're done you exit the shell and those packages are gone.

  • @scottmuc2112
    @scottmuc2112 Před 3 měsíci +18

    This was a really good overview! I'm nix-curious and am often confused on what exactly nix is... now I understand it's more than just 1 tool. The super-updated package repo has me sold. I used to think nix-folks just loved having everything locked down to a known good version and letting it stay that way. Now I understand that nix is a toolkit to help you never leave your packages, config, and dependencies stale.

  • @jh-devv
    @jh-devv Před 3 měsíci +81

    Awesome to see you cover NixOS! 🎉

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +19

      I couldn't not, I AM FINALLY POWERFUL ENOUGH!

    • @vaisakhkm783
      @vaisakhkm783 Před 3 měsíci +1

      @@NoBoilerplate it's too powerful.. especially when you love functional... :D

  • @awabqureshi814
    @awabqureshi814 Před 3 měsíci +3

    I was just looking into this yesterday, and decided I would wait until someone else made a video on it. I am very happy to see this. You read my mind!

  • @ejiek
    @ejiek Před 3 měsíci +12

    nvd - Nix/NixOS package version diff tool
    This tool helps to see what actually changes within an update. After updating flake.lock or any other tempering with my config I run: ‘nixos-rebuild build --flake 'flake-path#' && nvd diff /run/current-system result’. It shows it all. Version changes, package and dependency changes.

  • @blurryface1427
    @blurryface1427 Před 3 měsíci +43

    I knew you had to eventually drop a nix video

  • @luisliz
    @luisliz Před 3 měsíci +3

    I’ve been working on nix this week and you bring out this video. Love it

  • @shawnmiguel
    @shawnmiguel Před 3 měsíci +20

    I was just watching some past videos and wishing that you would make something covering Nix. Thanks man, your videos help me a lot.

  • @codetothemoon
    @codetothemoon Před 3 měsíci +6

    Very nice! Love the NixOS approach to things. Gave it a try recently but probably gave up too quickly. You’ve inspired me (and undoubtedly many others) to give it another go!

  • @xard64
    @xard64 Před 3 měsíci +72

    What makes the NixOS way of working interesting is that it seems to be a perfect fit for a corporate deployment.
    While I haven't still tested using NixOS it seems like that with it you could easily create static configurations and then deploy them number of machines and easily update them using a single base configuration file. The base configuration in turn could be layered to multiple custom variants featuring legacy tweaks for the corner case installations without interfering the updates.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +37

      EXACTLY, but also that's cool for home use, I was able to put my desktop's config file on my laptop, run a rebuild, and 15 minutes later had a copy of my deskop. it was a MOMENT, for me!

    • @SolarLiner
      @SolarLiner Před 3 měsíci +19

      As a matter of fact, you *can* manage NixOS configurations from remotely. With flakes it's even more powerful as you can have multiple archetype configurations for an entire fleet of servers and desktops and have them rebuild all from a single "command center" machine. I almost want to become a sysadmin just to be able to feel that powerful.

    • @IogaMaster
      @IogaMaster Před 3 měsíci +3

      I run a few servers in my home for various tasks. Running a deployment and all servers update is magical.

  • @onrir
    @onrir Před 3 měsíci +258

    "or whatever it is python is using by the time you are watching this" 😅

    • @fizipcfx
      @fizipcfx Před 3 měsíci

      pip poetry conda pyproject.toml...., i think he is right 😂😂😂

    • @Anonymous4045
      @Anonymous4045 Před 3 měsíci +35

      pip, poetry, anaconda, pipenv, pdm, apt, virtualenv, take your pick 😂

    • @marro7120
      @marro7120 Před 3 měsíci +4

      he said also npm, and its not for python 😅

    • @roze_sha
      @roze_sha Před 3 měsíci

      Rye

    • @geeshta
      @geeshta Před 3 měsíci

      hatch

  • @RenderingUser
    @RenderingUser Před 3 měsíci +11

    NO WAY. I could have never expected this. I've taken a lot of interest in nix recently. Can't believe you covered it

  • @draakisback
    @draakisback Před 3 měsíci

    It's been a joy to watch your videos as a content creator and as a software engineer. You're given me some good ideas for building my tutorials without having to sift through an hour long live code session. If I use markdown like you do, I can do most of what I want and then add animations and audio in editing.

  • @samskyset
    @samskyset Před 3 měsíci +7

    i haven't been genuinely excited by linux content like this before. i wrote off nix without really looking into it, but this is unironically exactly what i've been looking for--after a journey spanning mint to arch bahaha, thank you for this lovely introduction :)

  • @__shaun__
    @__shaun__ Před 3 měsíci +9

    JIMMY CARR USES NIX?!

  • @Tanja42
    @Tanja42 Před 3 měsíci +2

    It really was a matter of time til you made this video 😸
    Nice to see it; jumped on the NixOS train myself about two months ago ❄

  • @panosangel2883
    @panosangel2883 Před 3 měsíci

    Your content, no matter the topic, is a breeze! I'm glad I found your channel, it literally has revolutionized my way of thinking...and acting!

  • @hiibolt
    @hiibolt Před 3 měsíci +7

    I’ve daily’d NixOS for over 2 years now, and the rollback menu is so, incredibly, amazingly powerful.
    I use a non-Qwerty layout, and broke my operating system multiple times getting native drivers to work. On any other distro, it would not have worked. Now, with a functional version, have the setup in its own Nixfile, permanently hosted on GitHub.
    Write once, fix never. It’s the Rust of operating systems.

  • @jamespae7019
    @jamespae7019 Před 3 měsíci +22

    Huh, wondering when/if you'd touch on Nix.
    Half a year ago I decided to learn NixOS (ie. use it as my main partition and just suffer until i figured it out) and simply being able to go back to an older generation when I inevitably screwed something up was extremely pleasant. It's also made cooking up a development environment just that much easier.
    Keep up the good videos!

  • @TechnologyGeek862
    @TechnologyGeek862 Před 3 měsíci

    Thanks for the video. Got couple new things to add to my config 😄

  • @DeuxisWasTaken
    @DeuxisWasTaken Před 3 měsíci

    Thanks for making this video! I learned about Nix about 2 years ago when searching for an heavily customizeable bleeding edge OS that doesn't have as annoying quirks as Arch or Gentoo, and I'm still mad I only then learned it exists. It's by far the best thing to happen to Linux distros since the invention of package managers.

  • @sharperguy
    @sharperguy Před 3 měsíci +15

    One of the best things about NixOS is that when something requires a tutorial on Ubuntu on Arch, on nixos it just requires adding some lines to your config. In the tutorial case it can be really easy to lose track of what you did, whereas on nixos the changes sit right alongside everything else on your system. The downside is that since it's a little niche there isn't always any good explanation for how to get something working on nixos in the first place. But at least when you DO figure it out, it's extremely easy to share it with others.

  • @nakretkacisnienie
    @nakretkacisnienie Před 3 měsíci +67

    i use arch btw

  • @Rostgnom
    @Rostgnom Před 3 měsíci +1

    You really deserve this like and subscribe! Great video, I had no idea Linux could be this enjoyable from a dev's perspective!

  • @skyguy4164
    @skyguy4164 Před 3 měsíci

    So excited you did a video on this!

  • @0thLaw
    @0thLaw Před 3 měsíci +9

    Here, algorithm, have a comment.

  • @Synthetica9
    @Synthetica9 Před 3 měsíci +13

    1:26 the inflection point was earlier: old NixOS releases receive basically no support, so old packages go "stale" (no longer the latest version, simply due to time passing since the last commit to those releases)

  • @syedahkam7164
    @syedahkam7164 Před 3 měsíci

    Tris, You're awesome and you got me converted to Nix. Loving it so far!

  • @sweetbabyalaska
    @sweetbabyalaska Před 3 měsíci +3

    I just started learning Nix and I'm pretty excited to get up and running

  • @notafbihoneypot8487
    @notafbihoneypot8487 Před 3 měsíci +6

    BoilerOS when?

  • @DaveWarnock
    @DaveWarnock Před 3 měsíci +9

    Interesting. I recently returned to Debian from Ubuntu as a full time Linux user since 1998 (almost always without a dual boot).
    What I missed in your video and then from the NixOs website is anything about the philosophy, whether there is a social contract, how it relates to commercialization.
    You mention the USB drive option and it would be great to see more detail on how to use a USB build as a way of easing migration rather than a full nuclear option of OS replacement.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +4

      NixOS strikes what I think is a great middle ground between libre and practicality, unlike gnu guix, which is libre only.
      In the nixos installer, you are presented with a checkbox labelled "Allow unfree software?" it's disabled by default.
      I want to play games, run music software, and use proprietary drivers, so I checked it.
      If I were installing on a server, I'd not have to.
      Purity must always be balanced with practicality, guix has 9k fresh packages, and I simply can't run my life in it. I can with NixOS!

    • @DaveWarnock
      @DaveWarnock Před 3 měsíci

      @@NoBoilerplate I'm not an extremist FSF person, I think Debian has a sane middle ground. Ubuntu is heading in a concerning direction, for me, for example with snap and the snapstore.
      It looks like NixOs might be a good place for me to help with consistency over a couple of desktops, a couple of laptops and some Raspberry Pi projects. Although I don't want the same packages on all systems (eg Raspberry Pi are either dedicated to boat navigation and instruments or media systems, my wife desktop to office stuff and kdenlive, my 2 systems very multi-purpose including development).
      I'd already been attracted to nixshell as an alternative to Docker for rust development projects with databases etc (looks like nix develop might be even better).
      It does look like there is a steep learning curve to getting on top of the current "best practice" eg flakes.

  • @SixTimesNine
    @SixTimesNine Před 3 měsíci

    Brilliant! Exactly what I was looking for. Thanks!

    • @SixTimesNine
      @SixTimesNine Před 3 měsíci

      Got it working! Bloody lovely! Using Parallels on Mac (M3). Everything works well - VScode (yeah, I know), dotnet (yeah, I know), 1Password, gui loveliness, multi screen, etcetera. My dev system is under 20GB. My Windows VM is 280GB. Not. Even. Close. Finally! A Linux distro I can trust to use 'at work'. Thanks again!

  • @asdfzxcv12345
    @asdfzxcv12345 Před 3 měsíci

    This is the most beautiful thing I have ever seen. Been struggling for weeks with this EXACT problem for a project.

  • @MeshVoid
    @MeshVoid Před 3 měsíci +4

    Just to mention a thing about NixOS having way more packages than aur. Does it "really" have more packages? I am currently using NixOS and what I see is packages for separate fonts, libraries, many packages are poorly structured and don't have lts versions of the same software, so sometimes you can't just declare an older version and more modern version of the same software to be pulled without writing some workarounds. If you have to declaratively point to each separate element from fonts to drivers, libraries, software, then, yes you will end up having more repositories than anything else. I can't say that these packages are very well maintained, sometimes packages have broken links and you have to figure out what to do about it and it's not pleasant.

    • @scintilla3957
      @scintilla3957 Před 2 měsíci

      Exactly. Package count on its own is a borderline useless metric because it doesn't tell you how well-maintained the packages are or how granular the packages got split, etc.

  • @SuperOblivionfan
    @SuperOblivionfan Před 3 měsíci +3

    Nixos killed my distro hopping syndrome. Its the logical conclusion of linux imo

  • @BryanChance
    @BryanChance Před 3 měsíci

    I like your presentation style. Quite effective, too. LOL I've seen about 5 videos about NixOS in the last 6 months or so. Your video got me downloading NixOS now.. ;-) Thanks mate!
    EDIT: Nix language is very cool! I had no idea it existed, until i saw this video.

  • @colemickens
    @colemickens Před 3 měsíci +1

    Wow! Excellent content, amazing voice. It's almost intimidating exciting how many new users NixOS is getting lately!

    • @i.8530
      @i.8530 Před 3 měsíci +1

      Just wanted to say thank you for your contributions to nixpkgs! I recognized your name from PRs lol

  • @pouet4608
    @pouet4608 Před 3 měsíci

    yeah ! so much joy when you publish something! it is each time very enlightening!

  • @siddharthbisht8522
    @siddharthbisht8522 Před 3 měsíci +3

    That does it, I started learning and using rust last year because of you. I was thinking of trying nix and now I think the stars have alligned

  • @broikem121
    @broikem121 Před 3 měsíci +1

    Gracias por hacernos llegar este nuevo tipo de sistema operativo, dado mi escaso tiempo libre diario, no me habría sido posible conocer este contenido sin tu ayuda.
    Gracias

  • @edwolt
    @edwolt Před 3 měsíci +5

    I started to use NixOS some months ago. And it's really nice that most of the state of my system can be easily read from a file, for example, I was not able to know what packages come with the distro and which I intalled when I was using Manjaro.
    Also the reproducibility rocks. I could easily setup another computer just by running the rebuild.
    Also it's really good that I can choose what packages is bleeding edge, which proprietary softwares I accept in my system and have to explicitly allow what insecure/end of life packages I want to install. I wish there were a simple way to disallow some packages to be installed, like not allowing Electron or somethung like that.

  • @conrad586
    @conrad586 Před 3 měsíci +1

    I love you making a nixos video. I've been using it since half a year but cant get over the steep beginner learning curve, which is alright for using only on my laptop for simpler things like notes and browsing but I'd love to get away from windows in the future.

  • @biscotty6669
    @biscotty6669 Před 2 měsíci

    Great to see yet more vids on NixOS. For those wanting to try, I strongly suggest installing Nix on your current distro and/or NixOS in a VM. It will be way less frustrating. You can take advantage of many features of Nix without running NixOS itself. Ideally set up a system configured as you like with all you need in a VM, and use the configs to build your configured system right away when you do the real install. You won't have to redo anything, so no wasted time but a "safe" learning environment.

  • @KastanDay
    @KastanDay Před 3 měsíci

    You're a hero for putting so much effort into this video. Thank you!

  • @NahrAlma
    @NahrAlma Před měsícem +1

    FIIIINE. I will give it another try. Thankfully I was smart enough to save my nix config file from back then. I now feel very smart indeed.

  • @pengie_
    @pengie_ Před 3 měsíci +2

    Havent watched the full video yet but as a NixOS user im so happy you made this video, always love seeing nix get more exposure

  • @eightheve
    @eightheve Před 3 měsíci

    This video is so straight-to-the-point and well made that it may have just convinced me to reinstall my OS. insanely good video for what seems like a perfect OS

  • @fcriado92
    @fcriado92 Před měsícem

    I bought a secondhand laptop mostly to test this out as it looked fun. No regrets, this distro is great! Thanks for the recommendation, I'm sure you brought a lot of newbies to NixOS with this. I expect this style of package manager will become more popular because it makes so much sense.

  • @Muaahaa
    @Muaahaa Před 3 měsíci +2

    Good to have you aboard. Really excited about what 2024 might bring to the NixOS community :D

  • @Sudoakado
    @Sudoakado Před 20 dny

    Epic. Lots of interesting approaches!

  • @CWGminer
    @CWGminer Před 3 měsíci

    Excellent video, very concise. As a baby Linux user (only used Debian based distros so far but will try Arch soon), the thing stopping me from trying NixOS right now is the documentation. It’s not quite there yet. While I believe you that learning the Nix language is a time investment worth making, it’s a really rough experience until you get familiar with it. The documentation treats you like you already know the language, so it’s not friendly for people new to Nix or especially Linux in general. It’s not even as if I’m a fresh install, I’ve been using Linux for several years and started daily driving it this year.

  • @Tobiky
    @Tobiky Před 3 měsíci +13

    Thank you, I similarly tried NixOS a while back and the whole nix-env scared me off. This is exactly what I wanted out of nix!

  • @yungabilify
    @yungabilify Před 3 měsíci +1

    NixOS is such a neat concept for an operating system, I like the idea of it for servers especially. This is appealing to me because I have in the past made post-install scripts for Arch just to have that type of automation. Might have to give this OS another shot

  • @TobiasFrei
    @TobiasFrei Před 3 měsíci +1

    Thanks a lot for your inspiring ideas here. And yes, in January I switched all my machines (except for one development workstation on Arch Linux) to NixOS -- using Flakes, using Home Manager.
    And then this language 🥰 , e.g.
    # Make use of recursive attribute set
    rec {
    # Fibonacci seqence, naive recursive:
    fib = n:
    if n < 2 then
    n
    else fib (n - 1) + fib (n - 2)
    ;
    # powers, recursive with nested functions for currying:
    pow = b: e: if e == 0 then 1 else pow b (e - 1) * b;
    }

  • @MisraPreetiman
    @MisraPreetiman Před 3 měsíci +1

    Never thought I’d see one of my favourite channels shout out another one of my favourites! So cool to see the recognition Nix and NixOS has been getting as of late thanks to people like Vimjoyer! Love from India ❤

  • @IsawU
    @IsawU Před 3 měsíci +1

    I love the idea of NixOS and I'll probably get into it, but from my gentle QEMU attempts, I had a very hard time even getting the correct desktop to run. Sometimes I'd get to the greeter, but after logging in the screen would just flash and throw me back to the greeter. Sometimes I didn't even get to the greeter. Using it in the terminal was terrific.

  • @loupax
    @loupax Před 3 měsíci +2

    You won me at 3:40
    I always wanted to have all my package definitions in a single file, and always wondered why no distro does that. I use arch btw and I still have no idea which packages I installed to use only once and then forget about it. Time to distrohop I guess.

  • @Sestaak
    @Sestaak Před 3 měsíci +2

    I love how much attention Nix and NixOS have been getting recently. Thanks for putting out the good word!

  • @Terraspark4941
    @Terraspark4941 Před 3 měsíci +1

    You sound like if Tom Scott took a lighter coffee today and decided to talk about Linux distros instead of weird places around the globe; and I love it ❄
    I wonder how long it may take for NixOS to overtake Arch, with such a large difference in safety and simplicity? Great video, overall!

  • @seinodernichtsein8710
    @seinodernichtsein8710 Před 3 měsíci +1

    Perfekt timing. Was planning on switching to Linux soon

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci

      Nice! I usually recommend Ubuntu to newbies, it's super friendly and universally supported - but do what makes you excited!

  • @borazan
    @borazan Před 3 měsíci

    I switched to NixOS after watching this and vimjoyer's ultimate guide and I couldn't be happier. Thank you for this.

  • @user-gf8no4es6m
    @user-gf8no4es6m Před 3 měsíci

    You made me want to try daily driving Linux again, after years of working in MacOS and pushing Linux everywhere I can only in my job or home IoT stuff. Thanks 🏄🌊

  • @puddlepep
    @puddlepep Před 3 měsíci +1

    good shit, been thinking about trying nix for a while but i keep putting it off. ive been an arch gal since i started using linux, always just kind of enjoyed how it worked over other distros. might throw this on my laptop some time soon n give it a good run. good video 👍👍🐌

    • @puddlepep
      @puddlepep Před 3 měsíci +1

      fuck it tryin it out right now

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +1

      YES! And the genius thing is, once you've proved everything works for you, you now have a config that you can put on any other machines you own and get them up to the same state in like 15 minutes!

  • @sadboisibit
    @sadboisibit Před 3 měsíci +1

    I've been putting off converting my desktop computer from Windows 10 to Linux for the last several months. Watching this (and finally canceling my Adobe subscription) was the push I needed to finally convert.

  • @fuzzy-02
    @fuzzy-02 Před 3 měsíci +1

    I love this video, and was about to convert my old laptop from Ubuntu (was windows 8.1 but too slow, linux revived it) to NixOs but I got lost from around half part of the video.
    Guess I need to find some free day to sit down and research first

  • @watson-disambiguation
    @watson-disambiguation Před 2 měsíci

    This video got me to use Nixos, and boy have I been enjoying it. Things occasionally get stuck but mostly just work! It's great, and so much better to work with than my previous experience with Linux and definitely better than with windows.

  • @fernandobalieiro
    @fernandobalieiro Před 3 měsíci +3

    new no boilerplate video, life good

  • @B1adeLegend
    @B1adeLegend Před 3 měsíci

    Your Linux proverbs always resonate with me - from a general user standpoint, the true power of a Linux distro is the package manager! Everything else is personal.

  • @neoney
    @neoney Před 3 měsíci +1

    9:05 the thing I recommend to do to also have a rollback of your configurations, is putting the files in your /etc using environment.etc."config/configuration.nix".source = ./config.nix;
    etc.
    this means the files are copied to the nix store on build time, and then in /etc/config, you always have the currently-booted config, even if you didn't commit it

  • @GS12478
    @GS12478 Před 3 měsíci

    I daily drive nixos for over a month and it is awesome!
    Before i was saving my configurations and packages with Ansible, but i always felt like it's not the way Ansible wants to be used..
    With NixOS i can configure everything in a single space, without having to worry, i am missing something, when i setup a new machine!

  • @maxpursian
    @maxpursian Před 3 měsíci +1

    I've just set up Arch lmao But this looks tempting. I might try it out and possibly set up my pc from scratch again

  • @fakecrafter7448
    @fakecrafter7448 Před 3 měsíci +1

    using nixos since a few month and struggled with the dynamic library thing in nim just a few days ago and instead used other libraries, so this was actually helpful to my specific situation. And it was also the only reason i ever doubted nixos

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci

      it means I never have to package up stuff manually just to get a plugin working.

  • @tobiasjennerjahn8659
    @tobiasjennerjahn8659 Před 3 měsíci

    I don't know how you do it, but you often cover a topic I'm interested in at the exact time that I become interested in it.
    Unfortunately in this case you've convinced me to finally give nixos a shot. I was very happy with my current setup. It's snappy, it's reliable and I know how everything works. But now you come along with your incredibly well presented arguments on why my system is actually unusable trash and I need to switch it for something even shinier immediately. Oh well, it's not like I have stuff do /s
    I'm joking of course, you're not forcing me to do anything. But Nix's sales pitch really is compelling. Never fearing to break something again at an incredibly inconvenient time and never dealing with clashing dependencies again (without having to resort to docker dev environments or some other annoying workflow) all sound amazing. It's infrastructure as code, but for my personal system... Now I'm even starting to talk myself into it, what's happening?!
    As always, fantastic video. Thanks for the concise introduction.

  • @eksno
    @eksno Před 3 měsíci +7

    I'm always surprised about how likeminded we are in terms of systems in life. You've gotten me on polyphasic, obsidian (switched to vim + github repo but fundamentally same), and also make videos on stuff I'm already using like Linux, Rust, and now surprisingly NixOS which I've been using as my main distro for 5 months now! Nice to have someone where I know every video will be based on the same fundamental ideals I have. (looking at your videos I see you also, like me, have adhd and autism so there's that lol)

    • @angeldude101
      @angeldude101 Před 3 měsíci +4

      This channel did have a video on ADHD, and I think Rust and NixOS both appeal to me in similar ways that are partly a result of my AutDHD. My autism liked it when things are consistent and predictable anyways, but my ADHD can result in both a desire to move fast and break things, and a poor memory making it hard to remember what I've already done.
      Neither Nix nor Rust fully allows for moving fast and breaking things, but they do allow me to try ridiculous things when I get the urge to, and will proof read my work to make sure it won't break things too badly, and NixOS in particular let's me just pretend that what I did to break the system never actually happened. And then regarding the memory aspect, both Rust and NixOS are great for collaborating with other people, but that also makes them great for collaborating with yourself across time if you've forgotten enough in the meantime to effectively count as a different person when coming back to a project. (And the OS is certainly a project you won't completely forget about and will keep coming back to.)

    • @eksno
      @eksno Před 3 měsíci +2

      @@angeldude101
      > (And the OS is certainly a project you won't completely forget about and will keep coming back to.)
      This is one of the exact reasons I got into nixos and actually commited. Where every change I make will be persisted through my life moving forward, the knowledge that, over time, if I use it as my main distro, I'll become as innately familiar with it and know every in-and-out. I can say though I'm not even close to knowing everything about nixos though haha! Just recently discovered the wonder of nix-shell 4 months in so I could remove all my project based dependencies from my main config, and share the reproducable dev environment with my 0 co-workers who also use nixos lol.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +1

      My autism video is coming next month! :-D

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +1

      My autism video is coming next month! :-D

  • @wilfridtaylor
    @wilfridtaylor Před 3 měsíci

    Ah nice you have come around to nix :)

  • @borisoid
    @borisoid Před 3 měsíci +1

    So glad NixOS is getting attention it deserves.
    I played with in in a VM , read a lot about it and I loved it. I'm using kubuntu with nix home-manager (flake) and I really want to just install NixOS.
    The only problem I see (apart from being lazy to move my work related stuff to a new system) is that if your team doesn't use Nix - you are screwed. You will need to set up a dev-container or a full VM to develop projects that were set up and configured on and for an FHS system.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +2

      I found the python developer! (joking! this problem happens with many languages)
      The real solution to your problems is to encourage your team to move to container-based development, that way it'll work across linux/osx/windows AND your nixos machine. "install a bunch of these random dependencies" is not how we should develop software :-D

    • @borisoid
      @borisoid Před 3 měsíci

      Wow, you nailed it, I am a python dev 😄
      Containers are awesome in 2 ways:
      - You can be very precise about your app's environment. It works on my machine - it will work on any machine
      - You don't pollute your system/home with some packages, npm/python global installs, python venvs, configs, caches, etc. I don't understand why I *NEVER* heard anyone having concerns about this. The first time was when I learned this: "Nix exposes to your userspace only the packages you explicitly installed". Nix doesn't save you from all trash files though... Containers do

    • @TheSuperComputer0
      @TheSuperComputer0 Před 3 měsíci

      @borisoid I think you'll want to check out nix-shell for your dev environments. Wasn't covered in this video, but it's an excellent alternative to docker containers, fully integrated with your OS. There's also direnv, which can automatically switch to these nix shell environments based on directories. They are relatively small files, any other nixos devs on the team will see you as a Chad, and maybe you'll convert other curious devs.

    • @doctorbobstone
      @doctorbobstone Před 3 měsíci

      @@NoBoilerplate I'm curious. When you recommend container-based development, are you imagining web development or other systems where you almost entirely interact with your application through the network or through another program like a web server or similar? I'm an embedded developer and I also do a lot of system programming. When I'm not developing something which uses hardware, I'm probably writing something that I intend to call from the command line, so having binaries which only work inside one special container (or which I have to build multiple times) just never seems to make sense to me.
      That being said, having containers for CI or so you *can* debug build problems separate from your idiosyncratic system and so on? That's great. I just want portability so that things work inside and out so you can be flexible and use the tools most suited to your situation.
      So, my curiosity: I'm curious how what I've described jibes with your recommendation to move towards container-based development. Are you trying to get more benefits than I've outlined? Or solving different problems? Or do you basically agree (or disagree) with my position?

  • @stinkytoby
    @stinkytoby Před 3 měsíci +6

    I take full credit for the quote at 7:38!

  • @ThePowerRanger
    @ThePowerRanger Před 3 měsíci +1

    Will give it a try.

  • @rust2985
    @rust2985 Před 3 měsíci

    fantastic video on nix... i may have commit to switching. maybe next time arch gives me trouble ill do it for good.

  • @bash0985
    @bash0985 Před 3 měsíci

    This is very interesting. I've been planning to do a fresh desktop OS install that isn't Ubuntu and this might just be it. So far have loved all the other tech you've recommended before so I'm sure this will be no different!

  • @leyasep5919
    @leyasep5919 Před 3 měsíci

    I've been advocating and hoping for this FOR MORE THAN TWO DECADES !

  • @pandavova
    @pandavova Před 3 měsíci +2

    Never knew about this, man this is pretty cool! Won't switch to Linux as a primary OS, but I'll keep NixOS in mind.

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +1

      Dual boot! The nixos installer sets it all up for you :D

    • @pandavova
      @pandavova Před 3 měsíci

      @@NoBoilerplate ... maybe? I had bad experiences with Linux Dual Boot and Windows years ago, so I never did it again.
      Not really in need of Dual Booting into Linux... If anything needs Linux, I try it on a PartedMagic USB stick and that is working out for me.
      I'm trying to think for what reason I could justify Dual Boot, but I can't find one currently.
      (I'm also planning to finally reinstall Windows and do Win 10 LTSC instead of normal Win 10. I wonder when I'll get to that...)

    • @laundmo
      @laundmo Před 3 měsíci +1

      @@pandavovaIf you're a Rust dev like many people who watch this channel: compile times. ITS SO MUCH FASTER! like, i was surprised switching from windows to linux for compiling rust projects would be that much faster.

    • @pandavova
      @pandavova Před 3 měsíci

      @@laundmo I'm not dev at all so... Yeah...

  • @user-hz2fl3mg6j
    @user-hz2fl3mg6j Před 3 měsíci

    absolutely beautiful

  • @JustDeeevin
    @JustDeeevin Před 3 měsíci +2

    I had heard about nix a while ago but felt like it was kind of needlessly different.
    You've changed my mind

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +1

      RIGHT! It's quite simple when explained simply. I don't really know or care about all the complexities, I just edit my config, run the reload, and keep on trucking :-D

  • @smutek452
    @smutek452 Před 3 měsíci +1

    are you still replying to the comments?I've commented on your vid when you were just starting out and I'm pleased to see that you stick to the format you've been using from the beginning. Very glad to see that you're growing and good luck!

    • @NoBoilerplate
      @NoBoilerplate  Před 3 měsíci +1

      Sadly not. This year the volume of comments become unmanageable and I had to stop. I check in on my mental health videos' comments, as they are very important. You're lucky I just happened to see this! say hi on mastodon, that's where I'll signpost people in the future I think! :-)