Totally demystified some of the simple details that the documentation overlooked and left me scratching my head. Luckily I knew enough to value the power of this system and persevered until I found this video. Love your work Matthias
The epic 3hr time tag put me off the feature for too long. This is best configuration focused overview I have seen - time well spent. All of the action with none of the drama - perfectly pitched level of detail. 5 stars. Thank you Matthias!
you have no idea how much i needed this, i don't know why i could barely find any useful video about nixos even though it's such an interesting distro, i was looking for a video to get me up to speed with things so i don't have to read every word of the manual. Thank you sir!
I second what everyone is saying. Great video, I'm usually very wary of video guides. Really nice that you included a short list of useful resources outside of this video as well.
I've been slowly chipping away at this video over the past few days because it certainly is a lot of information all at once, but I can say that this is going to give me a massive advantage once I sit down and start building my system. Thank you for the incredible resource!
Matthias: Kudos to you for a very well explained video. I was a little cautious to watch it when I saw how long it is, but it is definitely worth it! I am now in the process of configuring my Thinkpad with NixOS following the principles shown in this video. I have subscribed - I look forward to seeing what you produce in the future! Many thanks (donation on its way!).
Thanks Matthias, this was really good. I think I have had NixOS running for about a year on a couple of machines. It is amazing how much I still learn from watching this start to end for what I think was a second time today. Many thanks!
This was awesome. I watched the whole thing. As an experienced Linux user dipping a toe into nixos this clearly answered almost every question I had about getting started and how to do the sort of things I normally do in other distros.
Absolutely incredible video! There have been a few changes since this video was uploaded but they are sufficiently documented so this video remains an invaluable resource to anyone starting with NixOS. Thank you so much for your diligent work!
thank you for your contribution to the community. while flakes are completely mystified to me, i at least understand the majority of the premise NixOS. Cheers!
Thanks for your amazing tutorial, it is a great intro for users new to the nix ecosystem. I just switched to NixOS, it is a great project with a powerful concept. I am going to use your tutorial to ditch systemd-boot for GRUB. I just need that configuration limit, otherwise my bootloader will soon look very atrocious 😅 And I will most definitely come back to your video for future configuration reference!
That is an amazingly good video, thank you Matthias. I’ll be re-watching it in chunks whilst I modify my system but it is the clearest explanation of Home Manager and Flakes I’ve seen. A follow-up about nix-shell would be wonderful (I’m going to try to define shells for each development project I work on).
Thanks a lot for this wonderful video. It really helped to understand all the relations between nix, nixOS, flake and home-manager. I want to use it on an Ubuntu to mainly manage my dotfiles. Thanks for the video and all the useful tipps and hints.
I work with Debian a lot- and do lots of thigns with it- but never anything like NIX--- I'm keeping this and going to study it part time and practice til I CAN do nix. I like the immutable and containerized part--- and I think that's the way things are going to go.
This was extremely helpful!!! I have been trying to configure nixox for a few days now and have constantly restarted because the error messages really don't help. The big help was with imports. I am trying to modularization my config and has several import issues. I am still trying to get it all working.
Great video!! When I build a base system especially a VM template I enable flakes in the configuration.nix :) Glad that flakes will finally no longer be experimental next release
Excellent topic Steve, well covered. Little and often for me if possible. Too long a ride is torture for me, perhaps I need a different bike/ scooter... I'll just have a quick look at the classifieds 😂😂
Whada a trip... Choose video thinking... new ways to catch a NOS buzz & ended up installing Nix Linux. Many comments refer to this video filling gaps in documentation. Please remember that this is FOSS (Free Open Source Software), community developed. Community is you & I too. If there's gaps in the docs, Please - write-up what belongs there & submit it so those gaps in docs are correct for the next person who refers to them. Remember... Only you can prevent forest fires 🐻 and correct NixOS documentation.
Hi Matthias, many many thanks for this great tutorial, it really helped me getting started with NixOS (in a VM for now), I've just added an encrypted ZFS partition with reset of the root at each boot (the infamous 'Erase Your Darlings' by Graham Christensen). I still have a question though, when I upgrade my system (based on your approach, using flakes), do I have to use sudo, i.e., 'nix flake update' or 'sudo nix flake update'?
@@matthiasbenaets thanks I was a bit confused, I indeed ended up have a lock file owned by root as you did in the video. Thanks again for the help and support.
Nice video dude, when I started tinkering with nixos I struggle a lot to understand some of the concepts you teached, so this video really helps a lot of people to understand on how to configure the system. I have a question tho, normally I only have 1 user per computer, similar to you, however, what if I want to use more than one user?, how could would you organize the nixos-config folders?
Good question. So by default, the option 'users.users' gets generated in configuration.nix . Here you state your user, user-type and the groups. The users.users option allows you to create multiple users. An example: users.users = { user1 = { isNormalUser = true; extraGroups = [ ''wheel'' ]; }; user2 = { isNormalUser = true; extraGroups = [ ''wheel'' ]; }; }; For home-manager you can pretty much do the same with home-manager.nixosModules.home-manager.home-manager.users = { user1 = {...}; user2 = {...};}; For standalone it should just work as normal but for each login if I'm not mistaken. The latter I've never tried.
thank you for the concise and informative explanation! I have a question regarding the Nix package manager: If an application is installed using the Nix package manager, does it have any impact on its runtime performance after it initializes?
This is a really detailed presentation Matthias. Of course some of the stuff is not really relevant any more. Do you envisage a flake-centric redux? but yes, far away one of the best introductions.
This is so god damn great nix os introduction to its config, like best I have seen so far, at least from my point of view. Thank you. On side note, did you ever get 'Cycling flue'? Ever since covid, when I go cycling, i feel like I have mini flue for few days after - a lot tired, hot eyes.
Still finding this useful in 2023. BTW I am not sure if this is new, but when I did the sha256 step when moving to a Flake, I did not have to enter 52 zeros. I just left it blank and nix assumed it was zeroed out.
Hello, the step by step "guide" you have on the left looks awesome, what exactly are you using so it looks and works like that? I see it's .org file so I am guessing orgmode / orgdown..? And displaying it with an editor (emacs?)?
Was planning on toying with this in a VM several months late to the party but this still looks informative. Was I the only one at 2:17:01 shouting you forgot your end quote (on the sha)?
Glad you enjoyed it! All org files can be found in my git repo. The sources are all in the description of the video but here's a direct link: github.com/MatthiasBenaets/nixos-config/blob/master/nixos.org
You know it would be really nice if installing the system, including partitioning the drive, doing luks and pv setup etc was all just done by tweaking a flake that comes on the iso and then building it
All of the basic information in this video for setting up NixOS was hugely instrumental in my switch to NixOS. Thanks! Also, what is that software you used for creating the Table of Contents and content guide for the video?
excellent thanks ! on home-manager standalone installation, i've get redo of the error:file 'home-manager' was not found in the Nix search path by launching nix-channel --update with elevated privilege anyway thank !
Thanks a lot for this info! Just a minor quibble, it looks like you cat'ed an alacritty.yml file, but the contents appeared to be JSON. I don't think it's a "yaml file" unless it adheres to the schema. (about 1:52) This is not really relevant to the tool used to manage it however (Home Manager). Once again thanks!
probably something like this: services.xserver.enable = true; services.xserver.displayManager.sddm.enable = true; services.xserver.desktopManager.plasma5.enable = true; programs.dconf.enable = true; environment.systemPackages = with pkgs; [ libsForQt5.kwin]; In sddm you'll probably have to specify that you want to use wayland. Also I've never used kde so I'm not sure if libsForQt5.kwin will do the job, I see kwin-tiling and kwindowsystem also exist, so you'll have to do your homework here. I do know that installing libsForQt5.bismuth under systemPackages will just work when enabled in kde setting, if you want tiling.
Seven months later, this is still one of the best source of help and documentation on NixOS and the environment around it
Many thanks !
Nice to hear :)
16 months later and it's still great!
@@geekofthewild600 Agree!
Totally demystified some of the simple details that the documentation overlooked and left me scratching my head. Luckily I knew enough to value the power of this system and persevered until I found this video. Love your work Matthias
Exactly what I needed to kickstart my journey with NixOS. Thanks a lot, Matthias 🙌
this is my go-to walkthrough guide to NixOS setup plus extra stuff...
The epic 3hr time tag put me off the feature for too long. This is best configuration focused overview I have seen - time well spent. All of the action with none of the drama - perfectly pitched level of detail. 5 stars. Thank you Matthias!
you have no idea how much i needed this, i don't know why i could barely find any useful video about nixos even though it's such an interesting distro, i was looking for a video to get me up to speed with things so i don't have to read every word of the manual. Thank you sir!
This is the best NixOS tutorial I have found, thank you for this this.
Thank your very much. I tried nixos a year ago. Flakes caused me a loooot of confusion and frustration. Your video is a fresh breeze!
I second what everyone is saying. Great video, I'm usually very wary of video guides. Really nice that you included a short list of useful resources outside of this video as well.
I've been slowly chipping away at this video over the past few days because it certainly is a lot of information all at once, but I can say that this is going to give me a massive advantage once I sit down and start building my system. Thank you for the incredible resource!
i still come back to it every one and then, flakes get me confused.
Likely the best OS guide ever
Thanks, Matt!I can use nixos very well now.I can find no perfect tutorial like this on anywhere else that exits on this universe:
Great content! Specially the flake and multiple hosts configurations was highly appreciated!
Matthias: Kudos to you for a very well explained video. I was a little cautious to watch it when I saw how long it is, but it is definitely worth it! I am now in the process of configuring my Thinkpad with NixOS following the principles shown in this video. I have subscribed - I look forward to seeing what you produce in the future! Many thanks (donation on its way!).
Great to hear you found it educational Paul. Have fun configuring your system. Thank you very much for your generosity!
Thanks Matthias, this was really good. I think I have had NixOS running for about a year on a couple of machines. It is amazing how much I still learn from watching this start to end for what I think was a second time today. Many thanks!
Glad you enjoyed it!
I wish i could like this video multiple times. This video was immensely helpful for a confused new Nix user.
It is a very interesting and complete guide for beginners. One of the most complete I could find on yt. Thank you, fellow compatriot.
This was awesome. I watched the whole thing. As an experienced Linux user dipping a toe into nixos this clearly answered almost every question I had about getting started and how to do the sort of things I normally do in other distros.
Absolutely incredible video! There have been a few changes since this video was uploaded but they are sufficiently documented so this video remains an invaluable resource to anyone starting with NixOS. Thank you so much for your diligent work!
Just curious I watched the whole video what had n changed? Are there things I have to look at?
thank you for your contribution to the community. while flakes are completely mystified to me, i at least understand the majority of the premise NixOS. Cheers!
Thanks for your amazing tutorial, it is a great intro for users new to the nix ecosystem. I just switched to NixOS, it is a great project with a powerful concept.
I am going to use your tutorial to ditch systemd-boot for GRUB. I just need that configuration limit, otherwise my bootloader will soon look very atrocious 😅
And I will most definitely come back to your video for future configuration reference!
Thank you for this Tutorial and the link to your repo. It helps me a lot to move my homelab to nixos
Excellent intro guide. I wish I had seen this 2 months ago when I started looking into NixOS.
That is an amazingly good video, thank you Matthias. I’ll be re-watching it in chunks whilst I modify my system but it is the clearest explanation of Home Manager and Flakes I’ve seen. A follow-up about nix-shell would be wonderful (I’m going to try to define shells for each development project I work on).
Thanks a lot for this wonderful video. It really helped to understand all the relations between nix, nixOS, flake and home-manager. I want to use it on an Ubuntu to mainly manage my dotfiles. Thanks for the video and all the useful tipps and hints.
this is the best video on NixOS I've found, you've done such an amazing job. Thanks m8
thanks i just switched to nixos yesterday and this is the perfect tutorial
I work with Debian a lot- and do lots of thigns with it- but never anything like NIX--- I'm keeping this and going to study it part time and practice til I CAN do nix. I like the immutable and containerized part--- and I think that's the way things are going to go.
This was extremely helpful!!! I have been trying to configure nixox for a few days now and have constantly restarted because the error messages really don't help. The big help was with imports. I am trying to modularization my config and has several import issues. I am still trying to get it all working.
This video is an incredible gift. Thanks for sharing your time with us
Really fantastic video! This helped me get going on my NixOS journey. So far I really like it!
Great tutorial! In vim, . repeats the last command - so you could type one '0' and then issue 51 . in normal mode instead of typing 52 zeros
Thanks. very neat indeed but I guess didn't lose too much time considering the length of the video 😅, but definitely one to remember
or just press 52a0
@@matthiasbenaets Vim grindset be like
Awesome video. This video definetly helped me with the decission to give nix a try for my workstation.
this is exactly the type of video i needed to get started with nixos! thank you so much!
This is exactly what I needed to cozy up to NixOS, thanks!
Great video!! When I build a base system especially a VM template I enable flakes in the configuration.nix :) Glad that flakes will finally no longer be experimental next release
Best NixOS tutorial , well explained , thanks.
Great tutorial, thanks! I love this paradigm for package management.
YES, i finally figured out how to make my bspwm work thanks to your video. I had to create a syslink like this 1:55:19
wow this is amazing thank you
Excellent topic Steve, well covered. Little and often for me if possible. Too long a ride is torture for me, perhaps I need a different bike/ scooter... I'll just have a quick look at the classifieds 😂😂
This was a brilliant tutorial. Thank you!
i would be so lost without this video
Das video war richtig horizont erweiternt und ich werde mal versuchen meinen PC auf reines nixos + home-manager + flakes um zu bauen ^^
one and only normaly explain on yt, what the fuck is nix and nixos :D thanks man!
Thanks a lot! Great resource to start on NixOS :D
52 zeros man! Great introduction into NixOS. Cheers!
Thank you so much for this video! Very well done!
Whada a trip... Choose video thinking... new ways to catch a NOS buzz & ended up installing Nix Linux.
Many comments refer to this video filling gaps in documentation.
Please remember that this is FOSS (Free Open Source Software), community developed. Community is you & I too. If there's gaps in the docs, Please - write-up what belongs there & submit it so those gaps in docs are correct for the next person who refers to them.
Remember... Only you can prevent forest fires 🐻 and correct NixOS documentation.
Great stuff, learned a lot. Thank you for this video!
Very helpful. Thank you for sharing.
Three Hours... My brain's already hurting. WoW
Hi Matthias, many many thanks for this great tutorial, it really helped me getting started with NixOS (in a VM for now), I've just added an encrypted ZFS partition with reset of the root at each boot (the infamous 'Erase Your Darlings' by Graham Christensen).
I still have a question though, when I upgrade my system (based on your approach, using flakes), do I have to use sudo, i.e., 'nix flake update' or 'sudo nix flake update'?
Thanks, you do not need root privileges to update the flake's lock file.
@@matthiasbenaets thanks I was a bit confused, I indeed ended up have a lock file owned by root as you did in the video. Thanks again for the help and support.
Nice video dude, when I started tinkering with nixos I struggle a lot to understand some of the concepts you teached, so this video really helps a lot of people to understand on how to configure the system.
I have a question tho, normally I only have 1 user per computer, similar to you, however, what if I want to use more than one user?, how could would you organize the nixos-config folders?
Good question.
So by default, the option 'users.users' gets generated in configuration.nix .
Here you state your user, user-type and the groups. The users.users option allows you to create multiple users.
An example:
users.users = { user1 = { isNormalUser = true; extraGroups = [ ''wheel'' ]; }; user2 = { isNormalUser = true; extraGroups = [ ''wheel'' ]; }; };
For home-manager you can pretty much do the same with home-manager.nixosModules.home-manager.home-manager.users = { user1 = {...}; user2 = {...};}; For standalone it should just work as normal but for each login if I'm not mistaken. The latter I've never tried.
thank you for the concise and informative explanation! I have a question regarding the Nix package manager: If an application is installed using the Nix package manager, does it have any impact on its runtime performance after it initializes?
Thank you so much. I finally was able to install a package.
Thank you a lot. I find you because of Proxmox :) But it seems, that second VM in Proxmox will be NixOS :-D Thank you again grat video
This helped massively, thanks!
Nice. Keep pushing more nix content please 🥺
thank you Matthias! very helpful
Thank you for providing a useful guide!
thank you for this great tutorial!
a bit off topic, for inserting 50 “0”, we can do
esc 50 i 0 esc esc
"Unbreakable" you say? Nods... challenge accepted!
This is a really detailed presentation Matthias. Of course some of the stuff is not really relevant any more. Do you envisage a flake-centric redux? but yes, far away one of the best introductions.
this was extremely helpful, thank you
Thanks for this! This was extremely educational!
Thank you so much for this!
This is so god damn great nix os introduction to its config, like best I have seen so far, at least from my point of view. Thank you.
On side note, did you ever get 'Cycling flue'? Ever since covid, when I go cycling, i feel like I have mini flue for few days after - a lot tired, hot eyes.
thanks, and nope.
Still finding this useful in 2023. BTW I am not sure if this is new, but when I did the sha256 step when moving to a Flake, I did not have to enter 52 zeros. I just left it blank and nix assumed it was zeroed out.
The best! thank you for made this! Really well explained and understandable :)
Hello, the step by step "guide" you have on the left looks awesome, what exactly are you using so it looks and works like that?
I see it's .org file so I am guessing orgmode / orgdown..? And displaying it with an editor (emacs?)?
Was planning on toying with this in a VM several months late to the party but this still looks informative. Was I the only one at 2:17:01 shouting you forgot your end quote (on the sha)?
Great video. Danke schön!
Hello, this tutorial is.. just too good..
Also: can you please share the document that is at the left of your screen?
1:13:30
There's more in the flakes section. Sorry I missed the timestamp. Hopefully we'll find it easily. Good luck, buddy!
Really helpful! Thanks a lot 😁
Thank you for this wonderful tutorial! Could you please upload the org file with the notes?
Glad you enjoyed it! All org files can be found in my git repo. The sources are all in the description of the video but here's a direct link: github.com/MatthiasBenaets/nixos-config/blob/master/nixos.org
@@matthiasbenaets many thanks!
A really wonderful video! I just have one problem, why not using vim to its potential :(( inserting 52 0 would be as easy as typing `52i0`
tyvm explaining nixos
You know it would be really nice if installing the system, including partitioning the drive, doing luks and pv setup etc was all just done by tweaking a flake that comes on the iso and then building it
Respect 👍
thanks alot for this awesome video man
Please make a video about how to install dwm on nixOS
All of the basic information in this video for setting up NixOS was hugely instrumental in my switch to NixOS. Thanks!
Also, what is that software you used for creating the Table of Contents and content guide for the video?
This seems to be done in Emacs org-mode
Brilliant. Thanks
excellent thanks ! on home-manager standalone installation, i've get redo of the error:file 'home-manager' was not found in the Nix search path by launching nix-channel --update with elevated privilege anyway thank !
Thanks for the comprehensive tutorial! Also, can you please share the color scheme used in you vim config at 2:41:02?
srcery-vim for the syntax. wombat256 for the lightline
It's now much easier to install NixOS because the latest iso has the Calamares installer.
What does that mean?
Nice video, thanks a lot!
Top shelf stuff
Great video! 👌
great effort. audio volume is substantially low for me though.
Thanks a lot for this info!
Just a minor quibble, it looks like you cat'ed an alacritty.yml file, but the contents appeared to be JSON. I don't think it's a "yaml file" unless it adheres to the schema. (about 1:52) This is not really relevant to the tool used to manage it however (Home Manager).
Once again thanks!
JSON is a valid subset of YAML, so any valid JSON file is also a valid YAML file.
Amazing thanks!!
god bless this video
how would I setup kwin/kde wayland via the configuration.nix file?
probably something like this:
services.xserver.enable = true;
services.xserver.displayManager.sddm.enable = true;
services.xserver.desktopManager.plasma5.enable = true;
programs.dconf.enable = true;
environment.systemPackages = with pkgs; [ libsForQt5.kwin];
In sddm you'll probably have to specify that you want to use wayland. Also I've never used kde so I'm not sure if libsForQt5.kwin will do the job, I see kwin-tiling and kwindowsystem also exist, so you'll have to do your homework here. I do know that installing libsForQt5.bismuth under systemPackages will just work when enabled in kde setting, if you want tiling.
@@matthiasbenaets thank you for the reply!
gonna try this tomorrow
if I can get it to work I'll share my details tomorrow as another comment
very good thank you!
Hello and thank you for your great tutorial. Sorry but i just wanted to know, what is your tool at left of the screen please?
doom emacs
@@matthiasbenaets thank you can't wait to see your next videos ;)
I want that rice 😭 it looks so good
what markdown extension are you using in vim?