ERRATA - @Vimjoyer's video is here: kzbin.info/www/bejne/l2eahKlqgsero8U - 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
@pcfreak199211 ай бұрын
Lynx or Linux? 0:38 😅
@SumriseHD11 ай бұрын
I am literally installing Arch Linux, btw, after using Fedora for a while and now you upload this. 😂
@sofiedotcafe11 ай бұрын
@@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.11 ай бұрын
Missing ] at 4:46 on line 1?
@ryuji_terix11 ай бұрын
In the descriptions there are "alternate video titles" but are referring to rust pure functions
@SmartassEyebrows11 ай бұрын
Taking the Cloud world's "configuration as code" philosophy and applying it to an OS in this particular way is honestly brilliant.
@NoBoilerplate11 ай бұрын
What's wild is that Nix came FIRST! It's 20 years old!
@Schmogel9211 ай бұрын
@@NoBoilerplate what is the reason for it becoming popular only recently?
@akkesm11 ай бұрын
@@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.
@akkesm11 ай бұрын
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.
@matthewcroughan11 ай бұрын
If anything, the cloud world took that from Nix, given that Nix was created in 2003
@vimjoyer11 ай бұрын
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.
@ViperLarry-v7p11 ай бұрын
well deserved. your videos carry every nix newbie.
@samuelwaller492411 ай бұрын
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
@NoBoilerplate11 ай бұрын
My dude! Thank you for your nice words, and your incredible videos! You've got a great style, email me, let's chat 😀
@luisliz11 ай бұрын
@vimjoyer If it wasn’t for you I would’ve never dared. You make it approachable.
@vaisakh_km11 ай бұрын
@@luisliz ikr.. he is only the reason i got started and still loving it..
@jeiang11 ай бұрын
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.
@NoBoilerplate11 ай бұрын
Ooh, that's cool, Vimjoyer talks about that feature.
@jeiang11 ай бұрын
@@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
@angeldude10111 ай бұрын
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.
@Schmogel9211 ай бұрын
What are your boot times like?
@jeiang11 ай бұрын
@@Schmogel92 pretty quick, I also have disk encryption, but I think it’s around 20 - 30 secs
@blehbleh928311 ай бұрын
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
@NoBoilerplate11 ай бұрын
Right! I had the same impression, it's WILD, everything is here, including all my weird music plugins and streaming stuff!
@blehbleh928311 ай бұрын
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
@asdfghyter10 ай бұрын
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
@cid-chan-211 ай бұрын
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.
@NoBoilerplate11 ай бұрын
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
@emdivine10 ай бұрын
@@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
@NatoBoram8 ай бұрын
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
@mihailazar2487Күн бұрын
@@emdivine because json has "js" in the name
@DavidConnerCodeaholic11 ай бұрын
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.
@0thLaw11 ай бұрын
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).
@Rudxain10 ай бұрын
Another tip is to avoid the borrow-checker by simply `clone`ing everything. `rustc` can sometimes optimize `clone`s into borrows
@user-anonymous133710 ай бұрын
Try using Copy traits everywhere. It might go against the Rust philosophy but if you want fast prototyping it's definitely make it faster.
@Nicfallenangel11 ай бұрын
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.
@DeerDesigner11 ай бұрын
Small correction - Asahi USED to be arch-based, nowadays the official, blessed asahi distro is fedora-based
@psi4j10 ай бұрын
🤮
@fastlearner2927 ай бұрын
Bruh
@mpogrzebski6 ай бұрын
Don't be a hater @@psi4j
@xanderplayz34465 ай бұрын
@@psi4jWhat’s wrong with fedrora (except DNF, DNF is slooooow).
@shringe97694 ай бұрын
@@xanderplayz3446 i've always found apt is slower. I think pacman might just be really fast
@FreshSmog11 ай бұрын
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.
@NoBoilerplate11 ай бұрын
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.
@jeffrey129810 ай бұрын
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!
@MrMrCraftmine10 ай бұрын
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...
@eeriemyxi8 күн бұрын
Nix package manager is very annoying to use on non-nixos systems. Do not use it unless you have no choice. First off, GUI packages from Nix can't utilise your GPU, effectively making it useless; of course there are several packages to "work around" this issue but they are workarounds, not complete solutions. These solutions are also not available on Nix package store so you'd have to manually compile them (no caching). Because they are all written in Rust it takes a long time to compile and takes like 4 gigabytes to space to compile. Unless you have good hardware, don't rely on them. Second issue being Nix's incompliance with FHS. There are again workarounds for this, _however_, these work arounds are only available on NixOS, the workaround doesn't work anywhere else. Many packages will simply not compile until you write down a builder script yourself the Nix way. All these issues simply make the "reproducibility" selling point of Nix only work on NixOS without a bunch of speghetti code in your dotfiles to workaround all these problems.
@andylees893911 ай бұрын
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.
@0LoneTech11 ай бұрын
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.
@antonliakhovitch830610 ай бұрын
Before I switched to NixOS, I used OpenSUSE specifically for this. Snapper is great and I still use it on my user files
@NeftisIsHere10 ай бұрын
snapper my beloved
@electricant557 ай бұрын
Same with openSUSE (another rolling distro)
@scottmuc211211 ай бұрын
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.
@Synthetica911 ай бұрын
I've been running nixos as my main os since 2017, and I still have this original install 1000+ generations later.
@ToyKeeper10 ай бұрын
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
@sachinchaudhary13109 ай бұрын
@@ToyKeeper bro what ? are u sure wtf bro.. i mean amazing bro...
@ToyKeeper9 ай бұрын
@@sachinchaudhary1310 Not a bro.
@sachinchaudhary13109 ай бұрын
@@ToyKeeper really women's are amazing
@arden67259 ай бұрын
@@ToyKeeper never thought i’d see the same toykeeper that made the firmware my flashlight runs in a youtube comment section!
@shawnmiguel11 ай бұрын
I was just watching some past videos and wishing that you would make something covering Nix. Thanks man, your videos help me a lot.
@NoBoilerplate11 ай бұрын
Thank you :-)
@ejiek11 ай бұрын
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.
@NoBoilerplate11 ай бұрын
cool! thank you
@leana89592 ай бұрын
I have written a script to build two different commits of the same repo, and then diff them using nvd. This allows me to diff some configuration that is not local (i.e. deployed to a remote server using deploy-rs). It is really useful.
@awabqureshi81411 ай бұрын
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!
@RenderingUser11 ай бұрын
NO WAY. I could have never expected this. I've taken a lot of interest in nix recently. Can't believe you covered it
@CharlesG-d7q2 ай бұрын
This video makes me want to understand linux more deeply. My daily driver is debian, but from time to time I "go out to explore" and install another distro, and I learn a lot. I learned about partitions and folder when I was installing arch linux, I learned how great debian was from trying to install it on a netbook, back when I was dayling ubuntu. I guess that with this trip I'll finally learn what a config file is...
@samskyset11 ай бұрын
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 :)
@codetothemoon11 ай бұрын
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!
@sofiedotcafe11 ай бұрын
Awesome to see you cover NixOS! 🎉
@NoBoilerplate11 ай бұрын
I couldn't not, I AM FINALLY POWERFUL ENOUGH!
@vaisakh_km11 ай бұрын
@@NoBoilerplate it's too powerful.. especially when you love functional... :D
@biscotty66699 ай бұрын
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.
@ryancarlson96807 ай бұрын
That’s a super helpful idea, thank you
@biscotty66697 ай бұрын
@@ryancarlson9680 even after running it for 6 months on a server I didn't feel comfortable flipping the switch until everything I needed was working, so I was sure my "real work" wasn't impacted. 🍀
@twenty-fifth42011 ай бұрын
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.
@NoBoilerplate11 ай бұрын
woops! added to the errata :-D
@draakisback10 ай бұрын
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.
@__shaun__11 ай бұрын
JIMMY CARR USES NIX?!
@luisliz11 ай бұрын
I’ve been working on nix this week and you bring out this video. Love it
@loupax11 ай бұрын
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.
@1234minecraft56784 ай бұрын
This video kicked of my NixOS journey and i am loving it, great video Triss, as always and thank you! With flakes you can even dual yield stable and unstable at the same time.
@xard6411 ай бұрын
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.
@NoBoilerplate11 ай бұрын
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!
@SolarLiner11 ай бұрын
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.
@IogaMaster11 ай бұрын
I run a few servers in my home for various tasks. Running a deployment and all servers update is magical.
@siddharthbisht852211 ай бұрын
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
@NoBoilerplate11 ай бұрын
Sorry/notsorry! :-D
@iwastholo11 ай бұрын
I knew you had to eventually drop a nix video
@NoBoilerplate11 ай бұрын
I've been fighting it for so long lol
@sharperguy11 ай бұрын
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.
@edwolt11 ай бұрын
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.
@panosangel288311 ай бұрын
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!
@Tanja4211 ай бұрын
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 ❄
@friartech4 ай бұрын
The absolutely best introduction I’ve yet to see regarding nixos. I have been slowly exploring it as my servers operating systems replacement / and this video just sold me. Replacing my arch desktop? Not sure yet. But I may just fall in love again :) thank you for this video
@jmsp00011 ай бұрын
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!
@NoBoilerplate11 ай бұрын
Thank you!
@_Lumiere_11 ай бұрын
Do you still use it?
@jmsp00010 ай бұрын
That I do. @@_Lumiere_
@DeuxisWasTaken10 ай бұрын
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.
@SuperOblivionfan11 ай бұрын
Nixos killed my distro hopping syndrome. Its the logical conclusion of linux imo
@hiibolt11 ай бұрын
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.
@NoBoilerplate11 ай бұрын
IT'S THE RUST OF OPERATING SYSTEMS!
@salameez5 ай бұрын
More like the haskell but sure
@vladimirjosh6575Ай бұрын
lol it derives more from Haskell and functional programming. RUst is stupid person's idea of smart person
@eksno11 ай бұрын
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)
@angeldude10111 ай бұрын
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.)
@eksno11 ай бұрын
@@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.
@NoBoilerplate11 ай бұрын
My autism video is coming next month! :-D
@NoBoilerplate11 ай бұрын
My autism video is coming next month! :-D
@BryanChance11 ай бұрын
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.
@neoney11 ай бұрын
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
@colemickens10 ай бұрын
Wow! Excellent content, amazing voice. It's almost intimidating exciting how many new users NixOS is getting lately!
@i.853010 ай бұрын
Just wanted to say thank you for your contributions to nixpkgs! I recognized your name from PRs lol
@pengie_11 ай бұрын
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
@alternatuber66983 күн бұрын
You got another subscriber. Thanks for that presentation. I wanna use NixOS but docs really bad mad! But you really encouraged me to learn NixOS.
@Tobiky11 ай бұрын
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!
@syedahkam716410 ай бұрын
Tris, You're awesome and you got me converted to Nix. Loving it so far!
@Synthetica911 ай бұрын
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)
@sweetbabyalaska11 ай бұрын
I just started learning Nix and I'm pretty excited to get up and running
@onrir11 ай бұрын
"or whatever it is python is using by the time you are watching this" 😅
@fizipcfx11 ай бұрын
pip poetry conda pyproject.toml...., i think he is right 😂😂😂
@Anonymous404511 ай бұрын
pip, poetry, anaconda, pipenv, pdm, apt, virtualenv, take your pick 😂
@marro712011 ай бұрын
he said also npm, and its not for python 😅
@roze_sha11 ай бұрын
Rye
@geeshta11 ай бұрын
hatch
@Stormedddddd11 ай бұрын
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
@ougonce11 ай бұрын
I've been using NixOS for 3 or so years at this point, and it's really hard to imagine using anything else at this point. There have been multiple instances of having to replicate my system (either in a different machine, or on the same one after hardware failure) that took me literal minutes, instead of the multiple-hour endeavour that it would be in any other operating system. I always felt like operating systems were extremely brittle and prone to breakage, but it wasn't until I committed to NixOS that I realized the extent of it.
@ougonce11 ай бұрын
Btw, here's a tip: if you'd like, you can specify in your config file that you'd like your current configuration to be copied to a directory in `/etc`, essentially giving you a way to inspect the configuration that built the currently active derivation at any time. Look into `environment.etc`, and the `.mode` option to make it copy instead of symlink.
@ougonce11 ай бұрын
Oh also! If you'd like to be even more declarative, I recommend looking into Flakes. That way you don't have to mess with channels, and even they will be declaratively set in a file (as well as any other dependencies your system might have).
@NoBoilerplate11 ай бұрын
Thank you! Yes flakes and home manager are in my future :D
@eightheve10 ай бұрын
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
@sleepy-monax11 ай бұрын
The more package than the AUR point is really debatable since the two distribution count packages differently
@fcriado928 ай бұрын
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.
@DaveWarnock11 ай бұрын
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.
@NoBoilerplate11 ай бұрын
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!
@DaveWarnock11 ай бұрын
@@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.
@asdfzxcv1234510 ай бұрын
This is the most beautiful thing I have ever seen. Been struggling for weeks with this EXACT problem for a project.
@0thLaw11 ай бұрын
Here, algorithm, have a comment.
@robinkneepkens497011 ай бұрын
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)
@Anonymous404511 ай бұрын
Which aspects specifically do you find the most helpful in software development?
@fabiandrinksmilk620511 ай бұрын
@@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.
@B1adeLegend11 ай бұрын
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.
@sweglord22711 ай бұрын
honestly would check it out if i felt like nuking my system. maybe at a later date when i have less things going on. seems very cool and just what im into
@NoBoilerplate11 ай бұрын
Yeah, it's a great little weekend project. If you have an old spare laptop lying around, do what I did: test out all your apps on there, make sure it seems like it'll do what you want, then just take that configuration file, and put it on your main machine. One rebuild later and you're at the same state as you were on the laptop - WILD!
@NahrAlma8 ай бұрын
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.
@MeshVoid10 ай бұрын
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.
@IsawU11 ай бұрын
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.
@notafbihoneypot848711 ай бұрын
BoilerOS when?
@Rostgnom11 ай бұрын
You really deserve this like and subscribe! Great video, I had no idea Linux could be this enjoyable from a dev's perspective!
@nakretkacisnienie11 ай бұрын
i use arch btw
@sofiedotcafe11 ай бұрын
I use nix btw
@justsomeonepassingby383811 ай бұрын
I use guix btw
@7Dev.11 ай бұрын
Mee to btw
@happycats-go8sv11 ай бұрын
I don't use gentoo :(
@Posponger10 ай бұрын
I use linux from scratch btw (i don't)
@sadboisibit11 ай бұрын
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.
@xternalmegaАй бұрын
This sounds like hell
@conrad58611 ай бұрын
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.
@Muaahaa11 ай бұрын
Good to have you aboard. Really excited about what 2024 might bring to the NixOS community :D
@broikem12111 ай бұрын
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
@pouet460810 ай бұрын
yeah ! so much joy when you publish something! it is each time very enlightening!
@PreetimanMisra11 ай бұрын
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 ❤
@NoBoilerplate11 ай бұрын
Welcome!
@brianlogan47406 ай бұрын
Man seriously thank you for this video. I've been playing with NixOS but hesitant on really how good of a paradigm it is or if it's just more Linux "self-flagellation". However hearing your familiarity with Rust and your experience is just confirming that I need to commit to it.
@Terraspark494110 ай бұрын
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!
@Sestaak11 ай бұрын
I love how much attention Nix and NixOS have been getting recently. Thanks for putting out the good word!
@NoBoilerplate11 ай бұрын
Always!
@TobiasFrei11 ай бұрын
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; }
@NoBoilerplate11 ай бұрын
cool!
@CWGminer11 ай бұрын
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.
@TechnologyGeek86211 ай бұрын
Thanks for the video. Got couple new things to add to my config 😄
@fuzzy-0211 ай бұрын
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
@NoBoilerplate11 ай бұрын
vimjoyer's video I linked is SO good
@SixTimesNine11 ай бұрын
Brilliant! Exactly what I was looking for. Thanks!
@SixTimesNine11 ай бұрын
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!
@KastanDay11 ай бұрын
You're a hero for putting so much effort into this video. Thank you!
@borazan11 ай бұрын
I switched to NixOS after watching this and vimjoyer's ultimate guide and I couldn't be happier. Thank you for this.
@pandavova11 ай бұрын
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.
@NoBoilerplate11 ай бұрын
Dual boot! The nixos installer sets it all up for you :D
@pandavova11 ай бұрын
@@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...)
@laundmo11 ай бұрын
@@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.
@pandavova11 ай бұрын
@@laundmo I'm not dev at all so... Yeah...
@borisoid11 ай бұрын
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.
@NoBoilerplate11 ай бұрын
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
@borisoid11 ай бұрын
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
@TheSuperComputer011 ай бұрын
@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.
@doctorbobstone10 ай бұрын
@@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?
@myfavouritecolorisgreen7 ай бұрын
hii, i had tried nixos in the past. but the mirrors used for downloading packages were too slow since they might not be configured for my region. i know how to update my mirrors on arch. i couldn't figure out how to do it on nixos. I'd love some direction regarding this!
@skyguy416411 ай бұрын
So excited you did a video on this!
@oglothenerd11 ай бұрын
I used NixOS, had to stop due to FHS issues, so I use EndeavourOS with a program I made with Rust called Rebos that does repeatability with a config file.
@sgtproper11 ай бұрын
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 🏄🌊
@watson-disambiguation9 ай бұрын
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.
@dooshbagism10 ай бұрын
I know basically nothing about coding and I didn’t understand a word of this video, but I still watched the whole 15min of this shabang of an engaging saga that it was. It’s been a while since I’ve felt so dumb. Thank you for the reality check.
@tobiasjennerjahn865911 ай бұрын
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.
@smutek45210 ай бұрын
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!
@NoBoilerplate10 ай бұрын
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! :-)
@GS1247811 ай бұрын
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!
@TheJayman21310 ай бұрын
While I got into Emacs I never got into WMs. NixOS seems like another one of those things you can spend a lifetime configuring. So for now I'm just trying other immutable distros. Not having packages share any dependencies seems like overkill. You can just keep using a single container for everything until you hit a conflict and add new containers accordingly.
@fernandobalieiro11 ай бұрын
new no boilerplate video, life good
@NoBoilerplate11 ай бұрын
Same :-)
@JustDeeevin11 ай бұрын
I had heard about nix a while ago but felt like it was kind of needlessly different. You've changed my mind
@NoBoilerplate11 ай бұрын
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