This was really interesting to hear about. I didn't know one like this existed. Also, his voice is very soothing and relaxing to listen to. Anyone else here feel the same?
This is the first time that RUclips recommended your video. Glad to run into it. I have used Arch, Desbien, Mac, and Windows 10 OS. I'm thinking of trying NixOS because of your video. Thank you.
I've been a Gentoo user for about 10 years and I was struggling to understand exactly what this distro is. Thanks for your video it's certainly intriguing
I just want to add to this, as I was struggling to remember the different locales, I stumbled across this, which might be useful for anyone not using the en_US locale. stackoverflow.com/questions/3191664/list-of-all-locales-and-their-short-codes#3191729
Ok This is the coolest idea for a distro I have seen! In a way, it reminds me of dotfiles for a tiling window manager, you can take those files and move them to a new system and it'll be just the same automatically but with this it's the whole system instead
This is the best video about NixOS I’ve seen so far, thx for sharing your knowledge with us👍🏻 It,s a very interesting conzept/ distro and I hope you will create a lot more content about NixOS. Keep up the good work mate👌🏻
It does seem simple but under the hood it's a fair bit more complicated. Eelco Dolstra created it as part of his PhD Thesis "The Purely Functional Software Deployment Model" and has other papers on the topic like "Secure sharing between untrusted users in a transparent/binary deployment model"
@@06kellyjac While this is complex, I'm sure, I don't see how it would be much more complex than logic techniques we already use. Certainly it would be more infantile and with more work ahead of it than apt, but significantly more complex from an engineering standpoint? Much more than our already-complex software? I would refuse to believe that.
btw, you can set packages per user with the option "users.users..packages". That way, you don't have to use the imperative method (nix-env) that can sometimes be problematic and the packages will be updated when you update your configuration.nix. It's the declarative approach.
@@nirgunawish what the hell makes you hate NixOS so much like I swear you've made no real reason as to why its bad. It's actually useful instead of your channieOS and used by the government and several corporations
Thanks Man for your great videos! Your videos about NixOS helped me finnaly install it! 😊 Your content is easy to understand for newbies, which is not often in Linux-related topics. Thank you very much for your content, you are a great Man! 👍
Me also. I spent about 2 weeks getting NIXOS installed and researching the config file, but having this video really explains how the config file works and what to change. Thank you and awaiting the next videos to go further into NIXOS.
I'm confortable with installing arch, this is like a piece of cake and wow it's so easy and also so powerfull! I can upload to the cloud just a bunch of config files and have the recipe to rebuild my entire system if something goes crazy enough to the point I can't even boot into the system. Or if I want to install it on another machine/disk is super easy to reinstall everything It's amazing.
I've played with it a bit on a Debian VM, but strange things happened and I couldn't get it working right so I deleted the VM. I will give it another go on day.
This is just intended as deeper insight into the kind of content I am looking for as a single insignificant subscriber, and the issues that seem overlooked in YT Linux content: 1. UEFI install w/secure boot that saves old keys, creates compound keys, and works with custom kernels. 2. A DIY distro w/running updates that just works. No special quirks nonsense. No required reading for an install option of a random dependency of a dependency. I don't always have time to read some dev's magnum opus on x86 addressing evolution changes from 2004. The default option should always be the most likely to work. 3. No bloat ( -kde- ) 4. Doesn't hassle me bc I need to run MPLabX or Quartus Prime binary blobs for microcontroller/fpga dev work 5. Makes it easy to totally sandbox firefox, the googlemonster, and facesuck. -Jake
I just disabled secure boot because in my opinion, it’s not needed outside of Windows. You should check out Fedora Silverblue if you want a distro that just works. It’s a little similar to NixOS in the way that it does atomic upgrades. It’s also a immutable OS, the whole thing is read-only except a few things like your home folder and configs. All applications are Flatpaks, so pretty much everything is sandboxed. Check my channel, I did 2 videos on Fedora Silverblue, it might interest you. If you really want to go to extremes with sand boxing within VM’s on a Hypervisor, check out Qubes OS. I also run it as well, but it’s highly demanding on your system.
@@Doriandotslash Thanks, I'll definitely check those out. I left plenty of room under my Gentoo install in order to add another distro on the drive. I was just debating trying Nix, but will check out Silverblue and Qubes too. What would you put on a Libreboot flashed old Core2Duo Lenovo? It's a tablet, so I've got to figure out the touch screen thing. I'm also seriously debating a hardware project to add a USB3382 PCIe to USB 3.0 bridge chip. It's well documented, and has Linux kernel drivers. I am trying gentoo on the newer machine to get an idea of what to do with the Leno. I did the full Sakaki EFI Tutorial from stage 1 with custom kernel and all, but having trouble with UEFI stuff presently. (It's due to the poor OEM firmware. I can remove the w10 drive from the machine, but it's still the only 'secure boot' option listed. It even names the Toshiba HDD in UEFI with it removed.) ... I am thinking about trying to build an entire setup for the Leno-Libre from source starting with GCC for the learning experience. I assume that leaves me with Gentoo as the only well documented option?
Not sure what I’d use on a tablet since I’ve never used Linux on one. You might want to do a quick google to make sure you pick a distro that supports the hardware well, especially the touchscreen obviously.
Cool vid! Been using nixos for about half a year now, very nice to see stuff explained in an easy way for beginners. One thing to note about formatting is that you can do the following: ``` boot.loader = { grub = { enable = true; device = "..."; }; }; ``` Thats just a quick example of course, but looks a bit prettier :)
excellent video. looking forward to your future videos on nixos/nix-env. This is a very cool distribution with regards to saving configurations. Im about to partition my drive to include 2 distros, 1st is the main working one, and the other is a backup. so each distro has to have basically similar service configuration. Now with Nix0S or nix-env, I don 't need to have a backup OS installed. I just need NixOS, tailor some configurations, such as programming, videomaking, playing around, etc, and switch from one to the other. I may tinker with this option further.
Yes, as long as you save your configuration, you can easily clone it to another machine. And you can go one step further by also saving all your dotfiles so that your desktop and application settings are also copied over.
When you talk about ways to install new packages at 23:32, you make it look like the configuration file and the Nix package manager are 2 different things that don't interact. But that's wrong: In NixOS, the Nix package manager is everywhere and the whole system configuration is actually built by the Nix package manager, and a system generation is a Nix environment, the same kind of environment that is made available for user-specific package installation (with one or more environment (or profiles) per users actually)
That wasn't my intention to make them seem like separate programs. I'm just pointing out that there is a difference between manually installing with nix-env for user packages and using the configuration file for system-wide changes. I suppose I could have made it more clear, but this is meant to just get you going with a running system :)
As a long-ish time user of NixOS, I am happy to see it being covered more lately. This video seems full of great information and is a great introduction to Nix(OS). I'm excited and subscribing for more! If you want to take things further, Home-Manager is set of Nix expressions that, when paired with nixpkgs, allows you to write Nix to configure user-space apps (sway, i3status-rust, mpv, termite, alacritty, zsh, bash, etc), even beyond what the NixOS modules support. If you want or need help with it or anything else NixOS-y, freenode's #nixos/#nixos-chat are awesome, or I'd be happy to help, especially if it means more good Nix content. Thank you!
This is very interesting Tho I never experienced any package corrupted from power loss and such, this could save tons of hassle from it especially for the people who doesn't have a UPS
It's also nice that you can rollback after human error. E.g. I have my NixOS machines set up to roll back automatically if they don't report healthy in my cluster. I once rolled out a wrong firewall rule and got locked out. And then 5 minutes later everything's rolled back which is pure magic! Distros like Fedora CoreOS do something similar
my arch os broke today and couldnt figure out how to fix it. i was going to just reinstall it but then i saw this video and nixos looks like exactly how i like so i think ill go with that instead
Thx for your informative video. I've been using Linux for about 10 yrs now and am sick and tired of reinstalling Windows every few years and Linux at seemingly random intervals. I tried Fedora Silverblue but was sick and tired of the slow boot-up times & shut-down times and slow rebuild configuration times. NixOS seems to be the nexus of stability & configurability. I took a cursory tour of NixOS, but now I see that there is definitely a steep learning curve.
It can be a steep learning curve, but once you have a configuration made up how you like it, you can just back it up somewhere and reuse it if you ever have to reinstall it, and then your system will be back how you want it.
@28:26, the `pkgs` could probably be dropped, i.e. just `xfce.xfce4`. The `with` expression binds all the elements of `pkgs` in the scope of its body. In any case, the reason it's `nixos` in one place and `pkgs` in another is because the system passes in the entire attribute list with that name inside your configuration.nix. But I agree, it's super annoying.
Gonna try it out when my Manjaro eventually breaks (first time using Linux full time, I've been tweaking things every day, so it's a matter of time for me to screw something up lol). Thanks for the amazing content!
WOW-- EXCELLENT VIDEO.. you teach in a simple, smooth manner that is so easy to catch- without a lot of useless jabber or repetiviness... THANKS... I believe I may try this- WONDERFUL VIDEO.
This video is fantastic, love that you answer a lot of these questions and insecurities that we newbies might have. I think this might be what I needed to take the leap and try dual booting nixos over summer break.
Thank you very much! I do indeed try to make my videos with enough information for both new and veteran Linux users to try out new things, so thanks for the comment and good luck on the dual booting!
For the users you can do: users.users = { jane = { isNormalUser = true; extraGroups = [ "wheel" ]; }; joe = { isNormalUser = true; }; }; Great video btw, not much NixOS content out there
The Nix Package manager sounds a lot like the original NextPorts/DarwinPorts, which was on NextStep then PowerPC Macs and is now called MacPorts. But when Apple moved to Intel Macports became more like pacman and the NetBSD package manager (pkgsrc). Then along came Homebrew for Mac & Linux and MacPorts became the unfashionable package manager for Apple computers. I think I'll try NixOS it looks very interesting 🤔 🧐 🤨 !
Very cool to see a walk through for the system customisation- i've only used Nix on existing installs but that looks very flexible. The motivation was a bit muddled, though - existing package managers know how to do atomic updates to single files, what they struggle with is new packages with conflicting dependencies. With Nix, individual packages should just work, and if packages don't work together correctly it's due to a conflict directly specified in your environment, a problem which is tractable. Anyway, just a nit. Hope you can mv -T ~dorian soon.
Good video. NixOS has a sharp learning curve. Some Distros put their name into the Boot menu and others only say Ubuntu… which makes it tough if a system has more than one Ubuntu system?
Amazing video. Thank you for making it, I was thinking of nix os as its set it once and it works forever but the learning curve seems steep. I found someone elses dotfiles and file structure for nix os which I intended to use/inpire from and later cut things out of it I dont need to make it to suit me. This will help. Btw its the Hlissner nixos dotfiles.
Thanks Man so much for these great vid's ! Iv'e only been using Linux on and of two three years, my main OS is Win10 mainly because I'm a fps gamer, however I use Netrunner and Voyager Linux on my laptops. I'm not a power-user when it comes to Linux, I still doing my best and learning, so I really appreciate these great, well explained Linux tutorials like yours. So thanks dude again and keep up the good vid's !
I'm from 2024, and we now have a package manager app that exits the config for us. So I gause the best way to explain it is a happy union between arch's rolling release nature and debian's stability. With a bit of gentoo DNA.
Note: When opening the manual at 10:10 you mention we need access to the internet, but the manual is available offline! No need for internet for that. :) (installing the system will still require an internet connection though)
A symlink OS, interesting. This tactic used to be quite popular back in the day when live CD distributions were at the peak of their popularity to enable users to "write" into the static CD image, with their files being on either a floppy, zip/click or, later, a thumb drive. It's worth pointing that symlinks do not insulate you fully from an inconveniently-timed write failure; they just make recovery faster. They also have some security implications with symlink use for privileged applications and it would make security auditing on such a system harder. P.S. Symlinks are definitely *not* "the actual files" from the OS perspective; that would be the hardlink.
Using Calamari on Arch for example, can't we reasonably expect an equivalent install helper to manage all of the system files flawlessly just the same? As long as the user's config was symlinked and env is init correctly just using the Nix package manager alone? I'm not seeing what NixOS brings to the table besides expanding the Nix paradigm into everything at system level. Doesn't any solid, tested pre-install of another distro already have all that covered? I guess there is value at scale in knowing a clone is 100% likely to act the same vs 99.98%..
Looking at trying this myself the packet manager just seems so awesome to me... but I usually mount / and /home swap and /boot/efi partitions..... can you do this with this one.. or do you need to just burn the entire drive as it is all "different" ?
NixOS feels like the perfect distro for organizations - those that need to manage a ton of computers can simply deploy new configurations and updates, overnight - without things breaking, right?
This is the most interesting Linux distribution since Slackware for me. Love it so far on my ThinkPad 420. ( I had to hook it up via cable to do the install though) Now everything works including BT, thx to the manual. Dual boot? - ehm I was not successful there. No matter, I'm happy with NixOS ruling. It feels futuristic. Thank you for a good video. Subbed Btw, could I skip Grub and just boot straight into NixOS? Or maybe not because it also would skip the choice for another generation.
It's called an apostrophe, not a single quote. I'm not trying to be pedantic here, something that small isn't always easy to make out unless you're using a large screen with good resolution so using the correct terminology matters quite a bit!
Thanks! Oh that’s a hard one... I like Nix because it uses “regular” packages, but I like Silverblue because it uses Flatpaks, which I’ve grown fond of. Silverblue does have the advantage that it works quite well with my Nvidia dual graphics setup...
A few hick-ups I had were: Gparted changed the label of the boot partition to BOOT (CAPS) so I had to mount /mnt/disk/by-label/BOOT /mnt/boot . Dual-booting Windows 10 was a bit fiddly. I had to erase my Windows restore partition because 4 primary partitions is the maximum and I didn't want any extended/logical partitions. Also skipped on swap partitions. Then I had to manually add Windows 10 to grub 2, because the probe didn't find it. Luckily I found examples on the forums and pasted a few extra lines into configuration.nix that fixed it. I also had problems getting wifi working after reboot, althoug I had wicd enabled. I found there was a setting in wicd under Preferences/External Programs/DHCP Client for Automatic. I set this to dhclient instead to make my wifi not shut down immediately after connecting. Thanks for your tips on this weird Linux variant.
I'm not sure if you can go into that much detail with the .nix files, but you could backup and restore the Xfce conig files separately to keep your settings. But to be honest, it takes me about 3 minutes to reset Xfce the way I like it so it would't save that much time.
Seems incredibly cool that you can just revert to an old configuration through GRUB! I do wonder though, could this cause conflicts between applications running on the system expecting something to be there, and then no longer being available? That's a... not so great way of expressing what I mean, so I'll list an example derived from the video! Let's say you installed XFCE at the start which is config 1, then you installed the Arc Theme and Whisker menu in config 2, then switched your system settings to use Arc and included Whisker in your panel Now let's say you boot back into config 1, wouldn't xfce in this case throw a fit over using a theme that isn't installed, and having panel widgets that aren't installed? Hopefully that makes sense, but if it doesn't, I can try to clarify!
because it uses different namespace and lot of symlinks to make this possible. You can think Nix as Docker but more pure and advanced. If you installed the package from Nix, it's not going to install /usr/bin or something. Instead Nix will install the package to /nix/store/dbxkskwkd something like that. Because of this, there is no conflict between the versions.
The new installer should make things easier. Nestbox on Android now supports it, though it requires 2.8GB of ram to run the package manager. Replit uses it... but I still managed to brick about 30 sandboxes... probably a resource issue.
I am quite impressed by this OS. Also they have an elegant nix configuration file that apparently imports image editor written in Pascal and stored on GitHub: github.com/NixOS/nixpkgs/blob/master/pkgs/applications/graphics/lazpaint
Your voice sounds like a really good text to speech software lol
Perhaps that’s all I am 😆
This was really interesting to hear about. I didn't know one like this existed. Also, his voice is very soothing and relaxing to listen to. Anyone else here feel the same?
Thank you very much and I hope you try it out. Cheers!
This is the first time that RUclips recommended your video. Glad to run into it. I have used Arch, Desbien, Mac, and Windows 10 OS. I'm thinking of trying NixOS because of your video. Thank you.
Hopefully the video helps getting it up and running. Cheers!
I've been a Gentoo user for about 10 years and I was struggling to understand exactly what this distro is. Thanks for your video it's certainly intriguing
Glad you enjoyed it!
as a Gentoo user myself, and I started in 2003, NixOS is everything Gentoo (Arch) wants to be when it grows up.
wanted to change to nixos, you are a life savior
I hope it helps! Cheers
Thanks for making this video, there aren't a lot covering NixOS so it's good to see some coverage about it!
Yeah I noticed that, which made my wanting to try it a little harder. Hopefully this helps more people see how it works and try it. Cheers!
For Bri'ish users: "en_GB.UTF-8" for default locale, "uk" for key map and "gb" for xserver layout
I just want to add to this, as I was struggling to remember the different locales, I stumbled across this, which might be useful for anyone not using the en_US locale.
stackoverflow.com/questions/3191664/list-of-all-locales-and-their-short-codes#3191729
a bole of woer
worchestershire sauce
Dorian, I missed your videos. They are packed with information and you present them so well.
Thank you sir!
Hey Rocco! Thanks a lot brother. Hope all is well for you during this strange time :) Nice to see your show is still going strong!
This is true. Dorian is one of my favorite Linux presenters with a pleasant voice. Great content.
Ok
This is the coolest idea for a distro I have seen!
In a way, it reminds me of dotfiles for a tiling window manager, you can take those files and move them to a new system and it'll be just the same automatically but with this it's the whole system instead
It is definitely interesting, and very cool 😎
Excellent video, very informative. This looks like an awesome approach to a linux install, looking forward to other videos.
Thank you. It’s very different indeed, and I definitely have more to share about how it works and how to use it.
This is the best video about NixOS I’ve seen so far, thx for sharing your knowledge with us👍🏻
It,s a very interesting conzept/ distro and I hope you will create a lot more content about NixOS.
Keep up the good work mate👌🏻
Thank you so much! There is more to come as I said in the video so stay tuned ;)
Yeah, was really curious when I first saw this distro, glad I can see someone else taking the plunge:)
Yes, it has been one that I was always interested in, but was a little concerned over how complicated it seemed. Turns out it wasn't that bad at all!
Looks interesting nice to see a distro do something different
I tried this a few times years ago. You just convinced me to give the OS and package manager a try again.
Nice! :)
it has improved a lot in the last years
Success! Finally got around to actually installing and your video helped a lot because it is clear and informative. Thank you!
That’s great to hear! I’m glad it helped out 😁
I've used this video to install NixOS on 2 machines now, it's been really helpful. Thank you!
the basic concept of the PM seems stupidly simple, and I'm surprised it hasn't been done already or in more PMs; at least as an option.
It does seem simple but under the hood it's a fair bit more complicated.
Eelco Dolstra created it as part of his PhD Thesis "The Purely Functional Software Deployment Model" and has other papers on the topic like "Secure sharing between untrusted users in a transparent/binary deployment model"
@@06kellyjac While this is complex, I'm sure, I don't see how it would be much more complex than logic techniques we already use. Certainly it would be more infantile and with more work ahead of it than apt, but significantly more complex from an engineering standpoint? Much more than our already-complex software? I would refuse to believe that.
Never even heard of this, and yes you're right it's very unique. Please do more videos on it.
I did a 2nd video on it as well, and I have a 3rd one coming up in the future.
btw, you can set packages per user with the option "users.users..packages". That way, you don't have to use the imperative method (nix-env) that can sometimes be problematic and the packages will be updated when you update your configuration.nix. It's the declarative approach.
Thanks for the info!
this is a great video about nixos that actually explains what it is about and how it works
Thank you 😁
I was searching for a video like this last week. Thanks for making this
Glad you found it :) Cheers!
NixOS and Gobo Linux are two very interesting distributions indeed.
@@nirgunawish true, snaps and flatpaks are becoming far too commonplace for my liking
@@nirgunawish it's not rtfm
@@nirgunawish which is a good thing
@@nirgunawish snaps and flatpaks are a good idea with bad implementations
@@nirgunawish what the hell makes you hate NixOS so much like I swear you've made no real reason as to why its bad. It's actually useful instead of your channieOS and used by the government and several corporations
Thanks Man for your great videos!
Your videos about NixOS helped me finnaly install it! 😊
Your content is easy to understand for newbies, which is not often in Linux-related topics. Thank you very much for your content, you are a great Man! 👍
Great content and thanks for covering less popular distro. I feel this and Fedora Silver Blue are very interesting and uniq take.
Great to see this video from you. You got me very interested. Glad to see you are back. Thank you. Be well. :-)
Thanks eznix. Give it a try! Great hearing from you again, take care!
Hi Dorian!
New audience here, love the video. Only video I found online explaining NixOS, hope to see more videos related to NixOS.
Thank you very much! There will be more so stay tuned :)
Me also.
I spent about 2 weeks getting NIXOS installed and researching the config file, but having this video really explains how the config file works and what to change.
Thank you and awaiting the next videos to go further into NIXOS.
Finally a coherent introduction!
I'm confortable with installing arch, this is like a piece of cake and wow it's so easy and also so powerfull!
I can upload to the cloud just a bunch of config files and have the recipe to rebuild my entire system if something goes crazy enough to the point I can't even boot into the system. Or if I want to install it on another machine/disk is super easy to reinstall everything It's amazing.
It is great, and yes it's super easy to replicate your setup.
This is the best explanation I have seen so far, I like IT tutorials with animations
Do you plan on doing a video about using the Nix package manager on other Linux systems?
I’d really be interested in seeing more about this!
I've played with it a bit on a Debian VM, but strange things happened and I couldn't get it working right so I deleted the VM. I will give it another go on day.
NixOS: exists
Dorian: *I awake*
I thought your pfp was usb flasher in pop os at first.
This is just intended as deeper insight into the kind of content I am looking for as a single insignificant subscriber, and the issues that seem overlooked in YT Linux content:
1. UEFI install w/secure boot that saves old keys, creates compound keys, and works with custom kernels.
2. A DIY distro w/running updates that just works. No special quirks nonsense. No required reading for an install option of a random dependency of a dependency. I don't always have time to read some dev's magnum opus on x86 addressing evolution changes from 2004. The default option should always be the most likely to work.
3. No bloat ( -kde- )
4. Doesn't hassle me bc I need to run MPLabX or Quartus Prime binary blobs for microcontroller/fpga dev work
5. Makes it easy to totally sandbox firefox, the googlemonster, and facesuck.
-Jake
I just disabled secure boot because in my opinion, it’s not needed outside of Windows. You should check out Fedora Silverblue if you want a distro that just works. It’s a little similar to NixOS in the way that it does atomic upgrades. It’s also a immutable OS, the whole thing is read-only except a few things like your home folder and configs. All applications are Flatpaks, so pretty much everything is sandboxed. Check my channel, I did 2 videos on Fedora Silverblue, it might interest you. If you really want to go to extremes with sand boxing within VM’s on a Hypervisor, check out Qubes OS. I also run it as well, but it’s highly demanding on your system.
@@Doriandotslash
Thanks, I'll definitely check those out. I left plenty of room under my Gentoo install in order to add another distro on the drive. I was just debating trying Nix, but will check out Silverblue and Qubes too.
What would you put on a Libreboot flashed old Core2Duo Lenovo? It's a tablet, so I've got to figure out the touch screen thing. I'm also seriously debating a hardware project to add a USB3382 PCIe to USB 3.0 bridge chip. It's well documented, and has Linux kernel drivers.
I am trying gentoo on the newer machine to get an idea of what to do with the Leno. I did the full Sakaki EFI Tutorial from stage 1 with custom kernel and all, but having trouble with UEFI stuff presently. (It's due to the poor OEM firmware. I can remove the w10 drive from the machine, but it's still the only 'secure boot' option listed. It even names the Toshiba HDD in UEFI with it removed.)
... I am thinking about trying to build an entire setup for the Leno-Libre from source starting with GCC for the learning experience. I assume that leaves me with Gentoo as the only well documented option?
Not sure what I’d use on a tablet since I’ve never used Linux on one. You might want to do a quick google to make sure you pick a distro that supports the hardware well, especially the touchscreen obviously.
Cool vid! Been using nixos for about half a year now, very nice to see stuff explained in an easy way for beginners.
One thing to note about formatting is that you can do the following:
```
boot.loader = {
grub = {
enable = true;
device = "...";
};
};
```
Thats just a quick example of course, but looks a bit prettier :)
Thanks! Yes I do like that the code can be one-liners or broken up into easier to read lines.
Im new to this channel and you did a phenomenal job explaining nix under 5 minutes. Thank you!
Glad it was helpful!
excellent video. looking forward to your future videos on nixos/nix-env. This is a very cool distribution with regards to saving configurations. Im about to partition my drive to include 2 distros, 1st is the main working one, and the other is a backup. so each distro has to have basically similar service configuration.
Now with Nix0S or nix-env, I don 't need to have a backup OS installed. I just need NixOS, tailor some configurations, such as programming, videomaking, playing around, etc, and switch from one to the other. I may tinker with this option further.
Yes, as long as you save your configuration, you can easily clone it to another machine. And you can go one step further by also saving all your dotfiles so that your desktop and application settings are also copied over.
Very interesting distro, and a very good walk throug.
Thanks!
Best up to date video on NixOS. Look forward to more - just going to videos 2 and 3.
Excellent as usual, going to try this distro
Thank you! It’s a great one to try. Good luck!
When you talk about ways to install new packages at 23:32, you make it look like the configuration file and the Nix package manager are 2 different things that don't interact. But that's wrong: In NixOS, the Nix package manager is everywhere and the whole system configuration is actually built by the Nix package manager, and a system generation is a Nix environment, the same kind of environment that is made available for user-specific package installation (with one or more environment (or profiles) per users actually)
That wasn't my intention to make them seem like separate programs. I'm just pointing out that there is a difference between manually installing with nix-env for user packages and using the configuration file for system-wide changes. I suppose I could have made it more clear, but this is meant to just get you going with a running system :)
As a long-ish time user of NixOS, I am happy to see it being covered more lately. This video seems full of great information and is a great introduction to Nix(OS). I'm excited and subscribing for more!
If you want to take things further, Home-Manager is set of Nix expressions that, when paired with nixpkgs, allows you to write Nix to configure user-space apps (sway, i3status-rust, mpv, termite, alacritty, zsh, bash, etc), even beyond what the NixOS modules support.
If you want or need help with it or anything else NixOS-y, freenode's #nixos/#nixos-chat are awesome, or I'd be happy to help, especially if it means more good Nix content. Thank you!
Thanks! I've already been looking into home-manager and it looks like something I'll definitely be trying. Cheers!
This is very interesting
Tho I never experienced any package corrupted from power loss and such, this could save tons of hassle from it especially for the people who doesn't have a UPS
It's also nice that you can rollback after human error. E.g. I have my NixOS machines set up to roll back automatically if they don't report healthy in my cluster. I once rolled out a wrong firewall rule and got locked out. And then 5 minutes later everything's rolled back which is pure magic!
Distros like Fedora CoreOS do something similar
@@ArianvanPutten Ooh that sounds interesting? Got any links?
my arch os broke today and couldnt figure out how to fix it. i was going to just reinstall it but then i saw this video and nixos looks like exactly how i like so i think ill go with that instead
The Nix way is the future
Thx for your informative video. I've been using Linux for about 10 yrs now and am sick and tired of reinstalling Windows every few years and Linux at seemingly random intervals. I tried Fedora Silverblue but was sick and tired of the slow boot-up times & shut-down times and slow rebuild configuration times. NixOS seems to be the nexus of stability & configurability. I took a cursory tour of NixOS, but now I see that there is definitely a steep learning curve.
It can be a steep learning curve, but once you have a configuration made up how you like it, you can just back it up somewhere and reuse it if you ever have to reinstall it, and then your system will be back how you want it.
@28:26, the `pkgs` could probably be dropped, i.e. just `xfce.xfce4`. The `with` expression binds all the elements of `pkgs` in the scope of its body. In any case, the reason it's `nixos` in one place and `pkgs` in another is because the system passes in the entire attribute list with that name inside your configuration.nix. But I agree, it's super annoying.
Yes I learned that after making the video thanks to comments such as yours. Cheers!
Gonna try it out when my Manjaro eventually breaks (first time using Linux full time, I've been tweaking things every day, so it's a matter of time for me to screw something up lol).
Thanks for the amazing content!
Excellent video, definitely the best I've seen explaining NixOS. Looking forward to the next about dual-boot and UEFI.
Thank you!
Your voice sounds like a very big comb. Its really cool to listen to. If you get a noise remover for the static it would be perfect!
Haha thanks :) Yes this was when my microphone died and I ended up having to use a headset for a couple of videos. I did end up getting a new one.
WOW-- EXCELLENT VIDEO.. you teach in a simple, smooth manner that is so easy to catch- without a lot of useless jabber or repetiviness... THANKS... I believe I may try this- WONDERFUL VIDEO.
Thank you very much 👍
This video is fantastic, love that you answer a lot of these questions and insecurities that we newbies might have. I think this might be what I needed to take the leap and try dual booting nixos over summer break.
Thank you very much! I do indeed try to make my videos with enough information for both new and veteran Linux users to try out new things, so thanks for the comment and good luck on the dual booting!
Long time not seen. Wellcome back;)
Thanks Johan! Nice to hear from you :)
@@Doriandotslash Wife and child okay?
Thanks for the excellent tutorial and preview of NixOS
This Video is so much more than i expected! Thx!
wow, amazing video!! I just started getting into NixOS and this video is perfect. Thank you for doing this!
Glad you enjoyed it!
For the users you can do:
users.users = {
jane = {
isNormalUser = true;
extraGroups = [ "wheel" ];
};
joe = {
isNormalUser = true;
};
};
Great video btw, not much NixOS content out there
That's a good point. If you regularly have multiple users, this is the way to do it.
This was an excellent explanation of NixOS, good job!
The video seems really good as far (from a semi-linux user). I honestly felt like the descriptions were good. Hope you're ok during the pandemic.
Thanks man! Yes it’s all good but I’m hoping to be getting ready to go home in a few week. Nice to hear from you again
@@Doriandotslash Have a safe journey and its nice speaking to you too :)
Superb concise and intelligent video tutorial..Thank you.!
Thanks for the video!
I am a gentoo user. Really love it, but my thinkpad x200 isn't the machine that loves compiling. I have tried NIXOS, and really loved it!
This is a brillant distro design !
Great Intro to NixOS!
What a distro && What a video !!
Thank you :)
Hey Dorian thanks for the video! very interesting distro!
Hey Colin! Thank you very much! Hope you give it a whirl and see how easy it is once it's all set up :)
This is excellent! I may have to give NixOS a go!
Thanks! It works great in a VM by the way ;)
@@Doriandotslash Yeah - crafting the config in a VM, then using that for your 'actual' install is really cool!
great tutorial, looking to try on my own
Thank you! Hopefully this helps you get started :)
The Nix Package manager sounds a lot like the original NextPorts/DarwinPorts, which was on NextStep then PowerPC Macs and is now called MacPorts. But when Apple moved to Intel Macports became more like pacman and the NetBSD package manager (pkgsrc). Then along came Homebrew for Mac & Linux and MacPorts became the unfashionable package manager for Apple computers. I think I'll try NixOS it looks very interesting 🤔 🧐 🤨 !
fantastic installation process:)
Very cool to see a walk through for the system customisation- i've only used Nix on existing installs but that looks very flexible. The motivation was a bit muddled, though - existing package managers know how to do atomic updates to single files, what they struggle with is new packages with conflicting dependencies. With Nix, individual packages should just work, and if packages don't work together correctly it's due to a conflict directly specified in your environment, a problem which is tractable. Anyway, just a nit. Hope you can mv -T ~dorian soon.
Yes I think if it doesn't work in Nix, then the package wasn't configured properly to begin with. But I haven't run into that so far. Thanks!
Good video. NixOS has a sharp learning curve. Some Distros put their name into the Boot menu and others only say Ubuntu… which makes it tough if a system has more than one Ubuntu system?
Thank You!
Amazing video. Thank you for making it, I was thinking of nix os as its set it once and it works forever but the learning curve seems steep. I found someone elses dotfiles and file structure for nix os which I intended to use/inpire from and later cut things out of it I dont need to make it to suit me. This will help. Btw its the Hlissner nixos dotfiles.
It's not that bad once you get it going and have a decent config file to work from. Just make sure to save a copy of it somewhere!
Great intro ! Many thanks :)
Totally interesting video. Thank you!
Glad you enjoyed it!
Very interesting video. I'll likely try NixOS in the future.
Welcome back and stay home, stay safe :)
Thanks! You as well
@@Doriandotslash Pleasure matey, good to see you again.
I need to see the Nix specific video :)
Now that’s news .... 👏🏾😎🇺🇸👏🏾 great demonstration. The preparation is appreciated.
Thanks! Yeah this video took some extra work to explain things 😊
Thanks Man so much for these great vid's ! Iv'e only been using Linux on and of two three years, my main OS is Win10 mainly because I'm a fps gamer, however I use Netrunner and Voyager Linux on my laptops. I'm not a power-user when it comes to Linux, I still doing my best and learning, so I really appreciate these great, well explained Linux tutorials like yours. So thanks dude again and keep up the good vid's !
Thanks!
I'm from 2024, and we now have a package manager app that exits the config for us. So I gause the best way to explain it is a happy union between arch's rolling release nature and debian's stability. With a bit of gentoo DNA.
Note: When opening the manual at 10:10 you mention we need access to the internet, but the manual is available offline! No need for internet for that. :)
(installing the system will still require an internet connection though)
Yes I mentioned earlier on that the manual is on the ISO and the reason for being online is indeed to download packages during the install portion.
great video! helped a lot :)
What softwares did you use for editing this video and having this(1:40) animations as well
A symlink OS, interesting. This tactic used to be quite popular back in the day when live CD distributions were at the peak of their popularity to enable users to "write" into the static CD image, with their files being on either a floppy, zip/click or, later, a thumb drive.
It's worth pointing that symlinks do not insulate you fully from an inconveniently-timed write failure; they just make recovery faster. They also have some security implications with symlink use for privileged applications and it would make security auditing on such a system harder.
P.S. Symlinks are definitely *not* "the actual files" from the OS perspective; that would be the hardlink.
Using Calamari on Arch for example, can't we reasonably expect an equivalent install helper to manage all of the system files flawlessly just the same? As long as the user's config was symlinked and env is init correctly just using the Nix package manager alone? I'm not seeing what NixOS brings to the table besides expanding the Nix paradigm into everything at system level. Doesn't any solid, tested pre-install of another distro already have all that covered? I guess there is value at scale in knowing a clone is 100% likely to act the same vs 99.98%..
Looking at trying this myself the packet manager just seems so awesome to me... but I usually mount / and /home swap and /boot/efi partitions..... can you do this with this one.. or do you need to just burn the entire drive as it is all "different" ?
good video my man
NixOS feels like the perfect distro for organizations - those that need to manage a ton of computers can simply deploy new configurations and updates, overnight - without things breaking, right?
That would indeed be a great use for it!
This is the most interesting Linux distribution since Slackware for me. Love it so far on my ThinkPad 420. ( I had to hook it up via cable to do the install though) Now everything works including BT, thx to the manual. Dual boot? - ehm I was not successful there. No matter, I'm happy with NixOS ruling. It feels futuristic.
Thank you for a good video. Subbed
Btw, could I skip Grub and just boot straight into NixOS? Or maybe not because it also would skip the choice for another generation.
Thank you very much! I'll be showing dual booting in the next video. Also, you will want Grub or systemd-boot to manage the generation for sure.
I dual boot NixOS and macOS with systemd-boot. That works.
Also try GuixSD.
Will do!
In my native language, "nix" means "nothing". I'm very interested in this vid, because all should/could come out of nothing.
A little strange to hear of a "Nothing OS" I'm sure lol Cheers!
@@Doriandotslash, cheers! 🤗
can't wait for part 2
It’s already out 😁 Check my channel!
It's called an apostrophe, not a single quote. I'm not trying to be pedantic here, something that small isn't always easy to make out unless you're using a large screen with good resolution so using the correct terminology matters quite a bit!
Great introduction! Which over do you like more? Nix or fedora silverblue?
Thanks! Oh that’s a hard one... I like Nix because it uses “regular” packages, but I like Silverblue because it uses Flatpaks, which I’ve grown fond of. Silverblue does have the advantage that it works quite well with my Nvidia dual graphics setup...
A few hick-ups I had were: Gparted changed the label of the boot partition to BOOT (CAPS) so I had to mount /mnt/disk/by-label/BOOT /mnt/boot . Dual-booting Windows 10 was a bit fiddly. I had to erase my Windows restore partition because 4 primary partitions is the maximum and I didn't want any extended/logical partitions. Also skipped on swap partitions.
Then I had to manually add Windows 10 to grub 2, because the probe didn't find it. Luckily I found examples on the forums and pasted a few extra lines into configuration.nix that fixed it.
I also had problems getting wifi working after reboot, althoug I had wicd enabled. I found there was a setting in wicd under Preferences/External Programs/DHCP Client for Automatic. I set this to dhclient instead to make my wifi not shut down immediately after connecting.
Thanks for your tips on this weird Linux variant.
Thanks for the comment! Seems like you had quite the runaround with this, but it also sounds like you were able to sort it all out. Great job!
Is there a way to add the Xfce config you made to the configuration.nix so that you don't have to customize the desktop again everytime?
I'm not sure if you can go into that much detail with the .nix files, but you could backup and restore the Xfce conig files separately to keep your settings. But to be honest, it takes me about 3 minutes to reset Xfce the way I like it so it would't save that much time.
Seems incredibly cool that you can just revert to an old configuration through GRUB! I do wonder though, could this cause conflicts between applications running on the system expecting something to be there, and then no longer being available? That's a... not so great way of expressing what I mean, so I'll list an example derived from the video!
Let's say you installed XFCE at the start which is config 1, then you installed the Arc Theme and Whisker menu in config 2, then switched your system settings to use Arc and included Whisker in your panel
Now let's say you boot back into config 1, wouldn't xfce in this case throw a fit over using a theme that isn't installed, and having panel widgets that aren't installed?
Hopefully that makes sense, but if it doesn't, I can try to clarify!
because it uses different namespace and lot of symlinks to make this possible. You can think Nix as Docker but more pure and advanced. If you installed the package from Nix, it's not going to install /usr/bin or something. Instead Nix will install the package to /nix/store/dbxkskwkd something like that. Because of this, there is no conflict between the versions.
For answering your question, no. It's not possible because it's user generated config file such as `.xinitrc`.
The new installer should make things easier. Nestbox on Android now supports it, though it requires 2.8GB of ram to run the package manager. Replit uses it... but I still managed to brick about 30 sandboxes... probably a resource issue.
Keep upthe work, lovin it
Thanks, will do!
I am quite impressed by this OS. Also they have an elegant nix configuration file that apparently imports image editor written in Pascal and stored on GitHub: github.com/NixOS/nixpkgs/blob/master/pkgs/applications/graphics/lazpaint