If you will install NixOS on a UEFI system, just make sure to create a large EFI partition because there is where NixOS stores the Linux kernels of all generations OR you will have to reduce the number of generations in configuration.nix (configurationLimit) in order to prevent running out of disk space that will block any future updates. Mine is 537MB so I have set the generation number to 3.
Ok, as I just checked, I maybe was a little exaggerating by setting 3 updates for 537MB. Overall each Linux kernel and initrd take 19M and 8.3M respectively. So, If you don't have any other systems, you could probably fit 18 updates in a half GB. Sorry for the misinformation 😏.
I write, and I have two laptops I use. I don't know how many times I've experimented with distros and wished there was a good way to duplicate the setup on one laptop, on the other. All the endless tweaking gets so tiresome, especially when you try ~50 different distros! Nix's install duplication as you described it is an amazing godsend. I wish all distros did this! This is a great video because it's moved me to really check this distro out. If you're not in advertising or sales in your work life, you need to be.
I can highly recommend a flake-based setup with all of your machines in it, and home-manager inside as well, referencing common settings in the same nix included files. It's a bit upfront time invest, but you never have to do the same tweak again, and all improvements are just one "rebuild switch" away on all machines.
The hype is real until intermediate users try to do anything not explicitly defined in their docs. I’ve been testing Nix for a bit now. This OS is great for very basic needs of a newbie or alternatively advanced power users. Part of the hype is due to reviewers only focusing on the good things.
I mean, you have a fair point, nix configuration files are not simply a .conf or yaml/json file, it's truly a turing complete programming language, to take advantage of Nix/NixOS benefits it's necessary to learn it's language and package manager. Also, documentation is not so straightforward as should be and tooling could be much more improved, flakes is a good improvement. Part of the difficulty of NixOS is due to a change in paradigm, the same thing happens in programming with the functional style of coding, so it's necessary to interact with your system in a declarative way (instead of imperatively giving commands to your OS). I yet to see an alternative to Nix and NixOS which is more simpler and friendlier, without the complexity and over engineering of Nix. That said, the Nix ecosystem is great and provides many benefits for all kinds of user, however sysadmins will be more into it than normal users, because of it's steep learning curve
Nice video focusing mostly on the important topics. I'm starting to think (based on the wave of videos coming out recently), that we should start recommending flake based setups though. It might be a tiny bit more complex for first setup, but it avoids the whole channel mess and local config dirs, which is a huge boon that starts paying off pretty much 10 minutes after initial install, and is much easier for subsequent machines... (Yes, they are still called "experimental", but for real world usage they're already more stable and starting to be better documented than legacy setups).
@@JEnciso I haven't tried myself, but I think recently zero-to-nix would the way to go, since their mission is to make onboarding easier. The people at DeterminateSystems include the original author and many top Gurus of Nix(OS) and they have gone "pure flakes" since some time. Another good source of flake-based system configs is Misterio77's nix-starter-configs. (I can't seem to link, so just search for the names given)
The applications are only isolated when being built, but not while being run. In addition, while not the standard paths, things like .desktop files and binaries do get added to their respective environment variables so that other applications can find them.
I use PopOS and I'm generally happy with it, but I may have to try this out at some point. It's just hard trying to relearn everything. I'm also not sure if a lot of what I currently run would actually work on Nix
Pretty cool and interesting stuff, will definitely try. The way packages are managed and we can make copies of the same just using a single file is very unique and highly convenient. Containerising applications, and managing development environments seems like the core part of this OS which is so exciting for a developer. Besides being a Linux enthusiast I never heard of this OS. 🤷
does somebody know what desktop is being used in the first few seconds of the video? looks like gnome to me but is it? the things in the top right corner confuse me to what it is.
For any linux to go mainstream, devs communities should put more effort on porting windows apps to linux. Most people don't really care about the OS, they just want things to work. Software they use are available in that OS and working as it should. Else, most computer users will just use Windows and Macs, those curious enough will install linux but not using it, some will become distro hopper, and only very2 small number will become user.
@@justaviewperse8013 It's been 32 years, we still hoping the software companies to support the OS? What reason do they have? With miniscule number of linux users. Simply look at the gaming scene, it definitely started with the communities.
@@finhas8865 Agreed. something has to give. I know of Windows and iOS users who would definitely give Linux a go if there were more software support from these Vendors. Are we to just keep chanting Windows or iOS for the rest of the foreseeable future? That would be such a dismal environment.
Linux doesn't need to be mainstream, and I don't want any company's shitty proprietary apps if they don't care to port them. You can get anything you need done using only FOSS.
@@RegularTetragon Sorry to be the bearer of bad news but..... openKylin, China's new "mainstream" OS, as they prepare to dump Windows is based on Ubuntu Linux. So the possibility is certainly there. To believe iOS and Windows will continue to be the only Operating Systems for mainstream use forever, well, is quiet short sighted. Bitwig Studio for instance, is a mainstream Digital Audio Workstation program, designed for Music Production that officially supports iOS, Windows and Linux. What one may consider as "Sh**** proprietary apps" may well be the icing on the cake for other Linux users. Having said that, I don't see why a mainstream Linux distribution would need to come pre-installed with such application's. Just the ability to install a much wider spectrum of Applications and Driver's would suffice. We can't get everything done using FOSS. There is software out there, that are quiet complex and full of certain features that some users can not do without, and there is no sufficient alternative for Linux. Just my pov.
I don't like the uncritical enthusiasm, but the video gives me a good first impression. Thanks for that! Personally, though, I'd be happier to see videos that briefly(!) tell you what NixOS can do and then help you overcome the obvious problems and challenges you seem to quickly run into. Not everything in NixOS is great when you hear and read testimonials and certainly not easy to understand and manage. There seems to be a lack of guideslines and hands-on documentation. For me, it's similar to my text editor that I've used for 25 years: When I give an introduction to someone who has never used the (Neo)Vi(m) editor and so far only knows VS code and IDEs, I show him the essential features that distinguish (Neo)Vi(m) and make it so powerful (modal editing for example), but I also point out at the same time the steep learning curve, how the doc system works (no website!), how to debug error messages and configuration problems in the best way (this has never been easy - a single syntax error is enough and nothing works anymore). NixOS seems very similar to me: High learning curve and not intuitive even for advanced new users who want to transfer their gained experience and solution patterns and use cases to Nix and NixOS. Therefore: The hype may be real, but the video is just unfortunately not "all I need to know". But very entertaining, thanks for that again.
I have only been working on it for only two days of my life. And this is my first serious attempt to build a Linux machine I can use for an actual purpose. I believe the answer to your question is "no." You will have some drivers that work. But your laptop will have hardware without drivers. I came to see this as I learned how to get the Nvidia graphics card set up to work. For these questions, I suggest saving your copied config files. And you have to rebuild nixos every time you make a change to those files. I was baffled for a week trying to use nix on Ubuntu. I was watching videos and reading threads where people say, "... and then rebuild (with nixos commands)" But Ubuntu didn't recognize the rebuild commands! Then I finally understood that Nixos is it's own thing. Rather than learning Ubuntu, I just started over with a Nixos install.
Hi! This is an awesome video, you summarized it really well and it's quite a good help. I think i'm missing something. Let's say you wil install 10 applications that depend on the same library, SDL as an example, does that mean SDL will be installed 10 times, one for each application? I gave a library as an example but it could be any other tipe of package.
I've been using nixos for almost a year now, it's the best distro i've ever tried but it's really hard to understand how it works at first. I suggest going slowly for anyone who's willing to try it. It's a rabbit hole 😅
I only used Zorin OS and for not a long time, because I game a LOT and that isn't very good on Linux, though Steam and GOG have some stuff that works out of the box on Linux, but those are not a lot of games tbh. somehow I did not get Wine or Proton to work, maybe it's a skill issue, but there haven't been a lack of trying on my part. XD
Despite I not wanting it, it does look pretty nice. I actually hope it does well. I have some questions as to where it gets its packages from and how the submission for the packages gets vetted. I dont see the point of snapshots, maybe the snapshot could be just one file? 😅
If each App can use different versions of files, and they are downloaded and kept in separate folders for each App. Does this mean that NixOS is Storage heavy? That would require quite a large HDD as the base drive if you use lots of Apps. Unless, can you define for the Apps to be installed on a second Data type drive if you want?
From what I understand so far about Nix, is still is able to identify shared dependencies to help keep storage down, and you can also "clean" up older config states when you're ready. But overall yes, I do believe it could get drive intensive if you're gonna have multiple versions of a bunch of applications
Nix works by downloading the different versions (only the ones needed) and symlinking to them. So if two apps use the same version of the software, both get links to the same binary. More space is only used if apps have differing versions of the same dependencies. TLDR: Probably technically yes, but not much, since only few versions are actually used.
Slightly, but this is pretty much how Windows and mac works, when you download an exe it contains all the versions of the libraries it needs, so you don't get dependency conflicts. But there it's arguably worse because you will get duplicate dependencies, where as Nix shares dependencies if 2 packages use the same version.
Yeah. NixOS uses way more storage than other normal distros because of maintaining older generations and transient packages. But in other side you can build a GCP image with cuda and nvidia drivers and fit in a 10GB rootfs VPS. You will only need to rebuild the VPS image when updating, for example, to avoid wasting space.
Yes nixos do accumulate storage space over time, especially when you always update your config. However nix does come with built in garbage collector to free up space of unused files, that is very easy to use
I will try nixos to have look and feel. But I dont have any reason to learn a new programming language to use an OS , there are already many important/useful things to learn. One would learn a new programming language to us OS only if existing distros/OSs are terrible, but that is not the case.
i wouldn't call it hard though it depends what you're packaging if you're just running make with a configure script then you can simply specify the build dependencies & tell Nix to fetch the source from git or wherever if you want a newer version of something you can recycle the same build file(nix expression) & just override the source or perhaps dependencies if required you don't have to modify the expression in the file where it's written you can override it from an overlay this can be done in configuration.nix
@@genericgamer1319 sounds reasonable. The other point is how often does this happens, which will greatly depend on each person's use case. I will probably give it a try soon
It's apparently comparable in size and ease to the AUR, you will probably not need to make your own nixpkg and even if you have to it's not prohibitively hard.
Can you try GuixOS? I've been very curious because on paper the features and design seem better, especially since everything is in scheme, but adoption seems much lower.
it's a live iso. However trying it on usb means very little because to begin using it you need to actually start making changes. Try it on a VM. However unless you code for a living and LOVE making things harder for no reason, Nix isn't for you. I hate it, lol.
@@binodmalaka4508yes, you just set the boolean variahle in a conf.nix for plasma5, you can hotswap from all DEs like this, gnome, xfce, i3, plasma, etc
can someone explain what this would be used for? I don't know anything about this and I saw the video and I understood the operating system, but what else would you use this for outside of coding and exploring?
Do any know if NixOS comes with 'ethtool'? I'm looking for a tiny linux distro (easypeasy, pupplylinux, slitaz, porteus, xfce, antix/iceWM, slax, archbang, absolute linux, bodhi, etc) that come with 'ethtool'... I tried 'tiny core' linux but that didn't work. Just looking to do a quick mac address change and installing linux, even a minimal version on a vm, takes a while and gigs of space. Hoping just to keep a bare live cd around that can do ethtool.
I tried Nix. It really is a cool OS. The only issue is trying to port over your previous configurations to Nix. Bash files are a nightmare because you have to learn the Nix language and kinda wrap all your bash scripts into that language. Not to mention, for pentesting, Nix just isn't there yet. Idk. I'll keep a watch on it for sure. But there were too many things I wanted to do that wasn't going to work due to the fact that it's not debian.
@@iamrobot396 Exactly my thoughts. I've concluded that it's fantastic for general use and being able to essentially CTRL+C/CTRL+V your OS. But since it simply can't do what I need, I switched back to debian.
That AI that produces the commentary saying NixOS so often was developed on NixOS with use of the NixOS language and the NixOS dev tools. And the NixOS AI is also capable of commenting NixOS video clips on CZcams.
Linux Tex = first name Internet, last name everybody. I saw nothing of the internet going crazy or „literally“ everybody talking about this OS. This is the first and only video.
Although it _sounds_ cool - simply adding or removing a program from a text file list and then it gets automatically installed/uninstalled is just begging for someone to hack into your system and override it before you can even react. Honestly sounds like a security nightmare, since it doesn't bother asking for permissions or even alerting you to the fact changes are being made. AND it copies essentially the entire OS install to a new file every single time you install or remove something - that sounds like it'll fill up a drive pretty quickly if you forget to keep deleting older versions.
The system configuration file is only editable by root and new generations can only be activated as root. The file and package store are readable by anyone, and it is actually possible to build a new NixOS generation without root, but it won't be able to actually add it to the list of generations and would just make it sit there in the store where it can't really do much beyond launching individual applications, which can be done as an unprivileged user anyways. TLDR: You still need root in order to actually change the system, but NixOS lets you do a lot more than most package managers without changing the system.
Can NixOS, as well as any other Linux distro, change parameters in your hardware, that would make it difficult, not impossible, to run Windows on the same machine?
i wish android os worked like this imagine every time you got a new phone it just loaded the config file from the cloud and boom everything duplicated...
If I understand what you mean by the dependency setup, then that's EXACTLY what I was thinking of when I was talking with the bloat in Flatpak and Snaps. Instead of having a new copy of the same dependency in every single app package that uses it, a central collection of vetted, verified, secure dependencies could be addressed as needed. I suppose that's how a non-containerized works anyway, except for the level of security verification not being that great. But I'm not a coder, what do I know. I'm running Linux Mint, but I'm definitely going to do some research on Nix.
AFAIK snaps and flatpaks already do shared libraries, but they don't look for them in the installed system or between each other, so you end with a snap copy, a flat copy and a system copy, what nixos seems to be doing differently is 1) taking the compartmentalized approach and applying it at system level with the option to go user level. and 2) forcing all packages to require specific versions so you don't end with the python2 situations where packages declared "python2.x or higher" stopped working when some features were deprecated in python3
I am also currently using Linux Mint, however, instead of snaps or flatpaks, I install nix (the package manager on which nixos is based) and use nix instead of those. It perfectly complements stuff that is missing from apt, such as the Brave and LibreWolf browsers.
Sadly it is not about security but code sharing. The problem is that it is very difficult to maintain ABI/API stability in new versions of libraries. It is feasible obviously, but not easy. And the bloat adds up. If you are Glibc, then you can justify the bloat introduced by the "symbol versioning" solution. After all every cat and dog uses Glibc ( on Linux obviously ), so it is practically mandatory to share the library. But for libraries that don't get shared by many programs, it is better to statically link them. The gotcha is that programmers have the habit of entering into flame wars and take political stances of development matters, so you have programmers that want everything statically linked and programmers that want everything dynamically linked. A good balance is needed, otherwise we end up with Flatpak and Snaps and multi-gigabyte "dependencies".
Don't think I'd do too well in the course--- I don't retain code stuff very well. I'm OLD- and have ONE eye now- so hate looking at TEXT on a screen-- aND I don't get all the little letter combo comands etc.. I can barely do arch without a cheat sheet listing what i need to type in...
I've curated the course for simplicity. It's very beginner friendly and it's also for non coders. The course can be finished within a matter of hours (but I don't recommend it. 15 mins daily). And I don't overload my students with commands, rather I make the concepts familiar and let the users go ahead from there. And you're not old Sir. You're magnificently experienced. Wiser. Smarter and mature. I'm looking forward to getting there 😊 Checkout my course and if you don't feel like you've got value. Text me and I'll do a refund, no questions asked. Have a great day Sir.
You know what, you don't need to use NixOS. Use whatever you feel comfortable with, like maybe Fedora or Debian. This is what Linux is all about, choice and preference.
@@fabiandrinksmilk6205 I've been using Debian.. can't stand Fedora- too slow and clunky and cartoony for me.. I DO like the sound of NIX-- I think I could do it.. Just have to use my separate drive and go slow- make sure of what I'm doing- once it's set up- should pretty well STAY set up.. Like my Debian., but maybe better.
The lack of documentation will put this in the closet with the rest of the offshoot Linux distros. It's a great idea, but not necessarily unique. I can currently take a hard drive with Linux-Mint loaded onto it, and clone it with Clonezilla, to just about any machine out there that's less than 10 years old, and it will boot and run like it should. The kernel adjusts to the new hardware automatically, plus Linux-Mint is one of the most comfortable and STABLE distros I have used yet. Also, it's a fork of a major distribution (Ubuntu or Debian, depending on which flavor you choose)😉 No hype, no surprises.. it just works!
The minimal ISO image without a desktop environment is, and naturally so is the package manager itself. This does mean needing to install from the command line rather than the graphical interface however, though the graphical installer is still available as a package on i686 if you manage to get a graphical environment running on the live CD.
@@davidwayne9982The individual download buttons don't say live, but the description above states that they're all live. The KDE iso should suit your needs.
How secure is this OS? Is the ability to replicate the entire system with 1 tiny file not a vulnerability which makes it easier for bad actors to copy all data by exfiltrating a tiny file?
Maybe this depends on how you use it. As I am learning Nix and NixOS, I am using it to manage only the software installed on my machine, as opposed to users' dotfiles. However, some users have been using a thing called Home Manager, which uses the Nix language to manage dotfiles. Currently I prefer to keep on using chezmoi for these. But the answer also depends on what you consider "all data". I have lots of data, projects, emails, text files etc. which are the real important thing. Whether or not Postgres is installed in my system... isn't really important. If someone gets root access they can see everything in a system, it matters very little whether or not there is a recipe for installation.
Currently getting up to speed with NixOS on my Proxmox instance, and I gotta say it's a refreshing change from the others so far! I'm quickly noticing the lack of documentation outside of the official docs on the website and wiki. Otherwise, I love living inside these guys' Haskell-inspired dream!
Learn the language really well and learn all of the components and everything will come together for you and you won't feel you need help. I've realized that's why you don't see people talking about how certain things are installed, it's because people eventually figure out that learning the language and the OS's organization is all you need to know to fully customize the OS.
Same here!, trying new things and tooling provided by the Nix ecosystem such as Disko and impermanence modules in my proxmox I love proxmox but It would be so good to use NixOS as a type-1 hypervisor instead, imagine declaring your VMs and LXCs using Nix We have terraform for proxmox tho
AWW, but I use Nvidia 4090. :/ Haven't seen a single ISO or anyone who was able to compile for Nvidia driver. Why on earth did they limit themself to Intel/Amd when these are a minority of users?
Alternate title for video: Docker minus "Docker (100% compatible)*" As grumpy as I am, this is a pretty neat development. 'grats release folk *with all of the current headaches and downsides of docker containers, plus some bonus ones.
He said NixOS 95 times! About 5 times per minute 😅
NixOS NixOS NixOS NixOS NixOS!!!!
Ai generated script
@@adityay525125 Most probably 😁
At 0:38 he also uses the word "fortnight", so he seems pretty excited about NixOS.
I forgot the name of the OS... can you repeat it one last time, please?
If you will install NixOS on a UEFI system, just make sure to create a large EFI partition because there is where NixOS stores the Linux kernels of all generations OR you will have to reduce the number of generations in configuration.nix (configurationLimit) in order to prevent running out of disk space that will block any future updates. Mine is 537MB so I have set the generation number to 3.
I normally make it 1 GiB just in case, so I guess I should be fine. I would even make 2 just for Nix so I'm sure I'm running on plenty of space.
Is a 1024 MiB EFI partition enough?
Ok, as I just checked, I maybe was a little exaggerating by setting 3 updates for 537MB. Overall each Linux kernel and initrd take 19M and 8.3M respectively. So, If you don't have any other systems, you could probably fit 18 updates in a half GB. Sorry for the misinformation 😏.
@@GALONE7how close is NixOs to the hardware
@@univera1111 Sorry, I can't answer your question because youtube keeps deleting my answer for some reason 😮💨.
What is this distro called?
NixOS. I can see how you missed the name. The video didn't say it enough times. CZcamsrs are so lazy these days
Nah, I think he said NicksOS. It's a distro for basketball fans.
I write, and I have two laptops I use. I don't know how many times I've experimented with distros and wished there was a good way to duplicate the setup on one laptop, on the other. All the endless tweaking gets so tiresome, especially when you try ~50 different distros! Nix's install duplication as you described it is an amazing godsend. I wish all distros did this!
This is a great video because it's moved me to really check this distro out. If you're not in advertising or sales in your work life, you need to be.
Yeahh, it looked like a sales video, not enough tech details... I got bored and couldn't watch to the end, sorry.
I can highly recommend a flake-based setup with all of your machines in it, and home-manager inside as well, referencing common settings in the same nix included files. It's a bit upfront time invest, but you never have to do the same tweak again, and all improvements are just one "rebuild switch" away on all machines.
The hype is real until intermediate users try to do anything not explicitly defined in their docs. I’ve been testing Nix for a bit now. This OS is great for very basic needs of a newbie or alternatively advanced power users. Part of the hype is due to reviewers only focusing on the good things.
Thank you for this-what sort of drawbacks would you identify? I admit, it seems intriguing.
You mean in the 3 different types of documentation, the options page on the site which lists most things you can declare, and the sources themselves.
In openbsd you can save packages list to a file and import it on fresh install too...
I mean, you have a fair point, nix configuration files are not simply a .conf or yaml/json file, it's truly a turing complete programming language, to take advantage of Nix/NixOS benefits it's necessary to learn it's language and package manager.
Also, documentation is not so straightforward as should be and tooling could be much more improved, flakes is a good improvement.
Part of the difficulty of NixOS is due to a change in paradigm, the same thing happens in programming with the functional style of coding, so it's necessary to interact with your system in a declarative way (instead of imperatively giving commands to your OS).
I yet to see an alternative to Nix and NixOS which is more simpler and friendlier, without the complexity and over engineering of Nix.
That said, the Nix ecosystem is great and provides many benefits for all kinds of user, however sysadmins will be more into it than normal users, because of it's steep learning curve
For anyone wanting to learn more about in a easy way I recommend Nix from first principles from Tony Finn
I've been using it since 2017 and it's mostly been a good experience! The main challenge is the learning curve for it's unique way of doing things.
Nice video focusing mostly on the important topics. I'm starting to think (based on the wave of videos coming out recently), that we should start recommending flake based setups though. It might be a tiny bit more complex for first setup, but it avoids the whole channel mess and local config dirs, which is a huge boon that starts paying off pretty much 10 minutes after initial install, and is much easier for subsequent machines... (Yes, they are still called "experimental", but for real world usage they're already more stable and starting to be better documented than legacy setups).
Have any documentation where I can do this myself? You seem to know what your talking about :)
@@JEnciso I haven't tried myself, but I think recently zero-to-nix would the way to go, since their mission is to make onboarding easier. The people at DeterminateSystems include the original author and many top Gurus of Nix(OS) and they have gone "pure flakes" since some time. Another good source of flake-based system configs is Misterio77's nix-starter-configs. (I can't seem to link, so just search for the names given)
loved the video, could you share steps to install the os, did you use plasma or ... ???
Will this Distro fully support Macbook 2015 12 niches retina? Having issue with Ubuntu/mint without sound/Bluetooth/crashed when close the lid, etc
We can be the knights of Nix.
[for fans of Monty Python]
Ni ni ni ni ni
Your map zoomed into Jersey City... I'm in Greenville. How close is Nix OS to being your daily driver?
The second to last wallpaper was the best 💙
question: do the apps get the adequate permissions needed to open files, drag-drop files onto them etc?
The applications are only isolated when being built, but not while being run. In addition, while not the standard paths, things like .desktop files and binaries do get added to their respective environment variables so that other applications can find them.
I want to know what that laptop is at the start of the video. It’s super thin.
You are the best Sir in Linux Explainer.
Best of luck.
Awesome stuff, Tex!
I've been seeing lot of Nix lately
Sounds awesome
Great video. Thank you for bringing us these awesome reviews.
I got it to break slightly it still ran just without the Desktop it happens if you install the wrong nvidia driver.
I use PopOS and I'm generally happy with it, but I may have to try this out at some point. It's just hard trying to relearn everything. I'm also not sure if a lot of what I currently run would actually work on Nix
Pretty cool and interesting stuff, will definitely try. The way packages are managed and we can make copies of the same just using a single file is very unique and highly convenient. Containerising applications, and managing development environments seems like the core part of this OS which is so exciting for a developer.
Besides being a Linux enthusiast I never heard of this OS. 🤷
You are the first person I have heard talk about NixOS ever.
Yes
What’s the name of this distro again? 🤔
does somebody know what desktop is being used in the first few seconds of the video? looks like gnome to me but is it? the things in the top right corner confuse me to what it is.
Is it possible to install Nix Package Manager on BlendOS?
For any linux to go mainstream, devs communities should put more effort on porting windows apps to linux. Most people don't really care about the OS, they just want things to work. Software they use are available in that OS and working as it should.
Else, most computer users will just use Windows and Macs, those curious enough will install linux but not using it, some will become distro hopper, and only very2 small number will become user.
Unfortunately, it is the software companies that need to support the OS, not the other way around.
@@justaviewperse8013 It's been 32 years, we still hoping the software companies to support the OS? What reason do they have? With miniscule number of linux users.
Simply look at the gaming scene, it definitely started with the communities.
@@finhas8865 Agreed. something has to give. I know of Windows and iOS users who would definitely give Linux a go if there were more software support from these Vendors.
Are we to just keep chanting Windows or iOS for the rest of the foreseeable future? That would be such a dismal environment.
Linux doesn't need to be mainstream, and I don't want any company's shitty proprietary apps if they don't care to port them. You can get anything you need done using only FOSS.
@@RegularTetragon Sorry to be the bearer of bad news but.....
openKylin, China's new "mainstream" OS, as they prepare to dump Windows is based on Ubuntu Linux. So the possibility is certainly there.
To believe iOS and Windows will continue to be the only Operating Systems for mainstream use forever, well, is quiet short sighted.
Bitwig Studio for instance, is a mainstream Digital Audio Workstation program, designed for Music Production that officially supports iOS, Windows and Linux.
What one may consider as "Sh**** proprietary apps" may well be the icing on the cake for other Linux users. Having said that, I don't see why a mainstream Linux distribution would need to come pre-installed with such application's. Just the ability to install a much wider spectrum of Applications and Driver's would suffice.
We can't get everything done using FOSS. There is software out there, that are quiet complex and full of certain features that some users can not do without, and there is no sufficient alternative for Linux.
Just my pov.
wow i heard NixOS was good but i didnt know it was this crazy! i will definitely be installing this 😊
And have you installed it?
Aight bro will check it out in a vm under my Arch OS
I don't like the uncritical enthusiasm, but the video gives me a good first impression. Thanks for that! Personally, though, I'd be happier to see videos that briefly(!) tell you what NixOS can do and then help you overcome the obvious problems and challenges you seem to quickly run into. Not everything in NixOS is great when you hear and read testimonials and certainly not easy to understand and manage. There seems to be a lack of guideslines and hands-on documentation.
For me, it's similar to my text editor that I've used for 25 years: When I give an introduction to someone who has never used the (Neo)Vi(m) editor and so far only knows VS code and IDEs, I show him the essential features that distinguish (Neo)Vi(m) and make it so powerful (modal editing for example), but I also point out at the same time the steep learning curve, how the doc system works (no website!), how to debug error messages and configuration problems in the best way (this has never been easy - a single syntax error is enough and nothing works anymore). NixOS seems very similar to me: High learning curve and not intuitive even for advanced new users who want to transfer their gained experience and solution patterns and use cases to Nix and NixOS.
Therefore: The hype may be real, but the video is just unfortunately not "all I need to know". But very entertaining, thanks for that again.
Yeah, looking for a video like that! Not enough tech details. All the vids are just hype for beginners, I'd like to learn more about pros and cons.
the video screams of hype :/
Have to try this one, for some reason it looks like popOS which has been running smoothly on a MBP 2009
Pop!_OS uses GNOME just like the recommeneded .iso which is what theyre using
Does this work with any windows laptop? Will trackpad, webcam etc everything work out of the box without any issues?
I have only been working on it for only two days of my life. And this is my first serious attempt to build a Linux machine I can use for an actual purpose. I believe the answer to your question is "no." You will have some drivers that work. But your laptop will have hardware without drivers. I came to see this as I learned how to get the Nvidia graphics card set up to work. For these questions, I suggest saving your copied config files. And you have to rebuild nixos every time you make a change to those files.
I was baffled for a week trying to use nix on Ubuntu. I was watching videos and reading threads where people say, "... and then rebuild (with nixos commands)" But Ubuntu didn't recognize the rebuild commands! Then I finally understood that Nixos is it's own thing. Rather than learning Ubuntu, I just started over with a Nixos install.
Your system will have default program settings though (which are stored in the home folder). You'll need some form of roaming profile setup for that.
what a bummer, does that happen when changing generations?
Hi! This is an awesome video, you summarized it really well and it's quite a good help. I think i'm missing something. Let's say you wil install 10 applications that depend on the same library, SDL as an example, does that mean SDL will be installed 10 times, one for each application? I gave a library as an example but it could be any other tipe of package.
Yes, correct. The library will be installed 10 times. Although it is redundant, dealing with this repeatition is not the priority here.
@@LinuxTex Thank you for the answer. I see, i guess that's the trade-off. There's always one.
@@ruirosado6289 actually, there will only be 10 instances of SDL if all of the packages use different versions
If they all use the same version, then it will only be downloaded once
But quite often, different packages require different versions
I've been using nixos for almost a year now, it's the best distro i've ever tried but it's really hard to understand how it works at first. I suggest going slowly for anyone who's willing to try it. It's a rabbit hole 😅
Yes! People need to slowly migrate and not jump in head first. I hope more people migrate from Fedora and RHEL based distros to Nix.
@@CipherOne true
@@CipherOne That's what I will do! I'm a Fedora user
How close is nix os to the hardware
@@CipherOneand can it run wine or bottles. Or win11 in quemu
instead of learning another configuration system, you can just run ansible on any linux machine (but Gentoo probably)
I only used Zorin OS and for not a long time, because I game a LOT and that isn't very good on Linux, though Steam and GOG have some stuff that works out of the box on Linux, but those are not a lot of games tbh. somehow I did not get Wine or Proton to work, maybe it's a skill issue, but there haven't been a lack of trying on my part. XD
I mean changing that .nix file can also risk breaking things, so have to use the OS with precautions
Despite I not wanting it, it does look pretty nice. I actually hope it does well. I have some questions as to where it gets its packages from and how the submission for the packages gets vetted. I dont see the point of snapshots, maybe the snapshot could be just one file? 😅
I think you forgot to mention the name of the operating system, Bro you mentioned the name maybe 500 times lol
So NixOS is essentially macOS Unix distribution.
Can I run it on a SBC?
If each App can use different versions of files, and they are downloaded and kept in separate folders for each App. Does this mean that NixOS is Storage heavy? That would require quite a large HDD as the base drive if you use lots of Apps. Unless, can you define for the Apps to be installed on a second Data type drive if you want?
From what I understand so far about Nix, is still is able to identify shared dependencies to help keep storage down, and you can also "clean" up older config states when you're ready. But overall yes, I do believe it could get drive intensive if you're gonna have multiple versions of a bunch of applications
Nix works by downloading the different versions (only the ones needed) and symlinking to them. So if two apps use the same version of the software, both get links to the same binary. More space is only used if apps have differing versions of the same dependencies.
TLDR: Probably technically yes, but not much, since only few versions are actually used.
Slightly, but this is pretty much how Windows and mac works, when you download an exe it contains all the versions of the libraries it needs, so you don't get dependency conflicts. But there it's arguably worse because you will get duplicate dependencies, where as Nix shares dependencies if 2 packages use the same version.
Yeah. NixOS uses way more storage than other normal distros because of maintaining older generations and transient packages. But in other side you can build a GCP image with cuda and nvidia drivers and fit in a 10GB rootfs VPS. You will only need to rebuild the VPS image when updating, for example, to avoid wasting space.
Yes nixos do accumulate storage space over time, especially when you always update your config. However nix does come with built in garbage collector to free up space of unused files, that is very easy to use
Nice video 👌 Does anybody know the name of the application launcher being used at 3:36
Isn't this just the default GNOME launcher?
Can't this be a big security problem? an attacker only needs to manipulate this one file.
I really want to give this a go I have already switched from windows 11 to Garuda Linux and I love it no more windows update crashes !!!!😮😮
It seems I might have to make my first distro hop in over 14 years
What is the name of os again?
If it’s so good, why did the date that had focus on the calendar not change when you selected different weeks?
I will try nixos to have look and feel. But I dont have any reason to learn a new programming language to use an OS , there are already many important/useful things to learn. One would learn a new programming language to us OS only if existing distros/OSs are terrible, but that is not the case.
This seems quite interesting, but way above my comprehension!
Oh neat, it updates kinda like the Wii's OS!
Content quality 🔥🔥
What if I want to install a package that is not present in the repo? For example, a git package that is available in AUR?
What happens when the program or app you want is not nix packaged?
Do they have a way to manage that or make your own packages easily?
flatpaks are possible
i wouldn't call it hard though it depends what you're packaging if you're just running make with a configure script then you can simply specify the build dependencies & tell Nix to fetch the source from git or wherever if you want a newer version of something you can recycle the same build file(nix expression) & just override the source or perhaps dependencies if required you don't have to modify the expression in the file where it's written you can override it from an overlay this can be done in configuration.nix
@@genericgamer1319 sounds reasonable.
The other point is how often does this happens, which will greatly depend on each person's use case.
I will probably give it a try soon
@@joseluisvazquez5126 a lot of things are kept up to date by bots i think
It's apparently comparable in size and ease to the AUR, you will probably not need to make your own nixpkg and even if you have to it's not prohibitively hard.
Can you try GuixOS? I've been very curious because on paper the features and design seem better, especially since everything is in scheme, but adoption seems much lower.
Only if he said NixOS an additional 5,345,326 times more.
Will this bring life back to my mackbook pro from 2015?
Are we able to try it on the usb first? Or dose it push the install immediately?
it's a live iso. However trying it on usb means very little because to begin using it you need to actually start making changes. Try it on a VM.
However unless you code for a living and LOVE making things harder for no reason, Nix isn't for you. I hate it, lol.
Thanks for the info 🎉
Any time brother, Hope you enjoyed the video :)
Is there a KDE version of this distro with all the KDE inbuild softwares 🤔
@@binodmalaka4508yes, you just set the boolean variahle in a conf.nix for plasma5, you can hotswap from all DEs like this, gnome, xfce, i3, plasma, etc
@@binodmalaka4508 it also doesn't break anything, the DEs don't cross-pollinate or cause any issues with shared apps
can someone explain what this would be used for? I don't know anything about this and I saw the video and I understood the operating system, but what else would you use this for outside of coding and exploring?
i'm sold :o
Is there an ISO file you can download on a stick and try NixOS?
Can it upgrade system like other distros do in their GUI?
Do any know if NixOS comes with 'ethtool'?
I'm looking for a tiny linux distro (easypeasy, pupplylinux, slitaz, porteus, xfce, antix/iceWM, slax, archbang, absolute linux, bodhi, etc) that come with 'ethtool'... I tried 'tiny core' linux but that didn't work.
Just looking to do a quick mac address change and installing linux, even a minimal version on a vm, takes a while and gigs of space. Hoping just to keep a bare live cd around that can do ethtool.
I tried Nix. It really is a cool OS. The only issue is trying to port over your previous configurations to Nix. Bash files are a nightmare because you have to learn the Nix language and kinda wrap all your bash scripts into that language. Not to mention, for pentesting, Nix just isn't there yet. Idk. I'll keep a watch on it for sure. But there were too many things I wanted to do that wasn't going to work due to the fact that it's not debian.
if bash doesnt run natively on the OS whats the point?
@@iamrobot396 Exactly my thoughts. I've concluded that it's fantastic for general use and being able to essentially CTRL+C/CTRL+V your OS. But since it simply can't do what I need, I switched back to debian.
That AI that produces the commentary saying NixOS so often was developed on NixOS with use of the NixOS language and the NixOS dev tools. And the NixOS AI is also capable of commenting NixOS video clips on CZcams.
Linux Tex = first name Internet, last name everybody.
I saw nothing of the internet going crazy or „literally“ everybody talking about this OS. This is the first and only video.
Although it _sounds_ cool - simply adding or removing a program from a text file list and then it gets automatically installed/uninstalled is just begging for someone to hack into your system and override it before you can even react. Honestly sounds like a security nightmare, since it doesn't bother asking for permissions or even alerting you to the fact changes are being made. AND it copies essentially the entire OS install to a new file every single time you install or remove something - that sounds like it'll fill up a drive pretty quickly if you forget to keep deleting older versions.
The system configuration file is only editable by root and new generations can only be activated as root. The file and package store are readable by anyone, and it is actually possible to build a new NixOS generation without root, but it won't be able to actually add it to the list of generations and would just make it sit there in the store where it can't really do much beyond launching individual applications, which can be done as an unprivileged user anyways.
TLDR: You still need root in order to actually change the system, but NixOS lets you do a lot more than most package managers without changing the system.
Yeah, someone is trying to find reasons to dislike NixOS.
Can NixOS, as well as any other Linux distro, change parameters in your hardware, that would make it difficult, not impossible, to run Windows on the same machine?
Ok, bro:
I have a 100 usd Lenovo Chromebook. Will Nix run?
I'm using Lubuntu with Sway right now
Does each application then rely on the nixos config, if not how does the mosificatikn each applications config deal with the generations ?
Nix will generate the config file file based on the selected options and then NixOS will symlink it into /etc for applications to find it.
@@angeldude101 thank you.
i wish android os worked like this imagine every time you got a new phone it just loaded the config file from the cloud and boom everything duplicated...
If I understand what you mean by the dependency setup, then that's EXACTLY what I was thinking of when I was talking with the bloat in Flatpak and Snaps. Instead of having a new copy of the same dependency in every single app package that uses it, a central collection of vetted, verified, secure dependencies could be addressed as needed. I suppose that's how a non-containerized works anyway, except for the level of security verification not being that great. But I'm not a coder, what do I know.
I'm running Linux Mint, but I'm definitely going to do some research on Nix.
AFAIK snaps and flatpaks already do shared libraries, but they don't look for them in the installed system or between each other, so you end with a snap copy, a flat copy and a system copy, what nixos seems to be doing differently is 1) taking the compartmentalized approach and applying it at system level with the option to go user level. and 2) forcing all packages to require specific versions so you don't end with the python2 situations where packages declared "python2.x or higher" stopped working when some features were deprecated in python3
I am also currently using Linux Mint, however, instead of snaps or flatpaks, I install nix (the package manager on which nixos is based) and use nix instead of those. It perfectly complements stuff that is missing from apt, such as the Brave and LibreWolf browsers.
Sadly it is not about security but code sharing. The problem is that it is very difficult to maintain ABI/API stability in new versions of libraries. It is feasible obviously, but not easy. And the bloat adds up. If you are Glibc, then you can justify the bloat introduced by the "symbol versioning" solution. After all every cat and dog uses Glibc ( on Linux obviously ), so it is practically mandatory to share the library. But for libraries that don't get shared by many programs, it is better to statically link them. The gotcha is that programmers have the habit of entering into flame wars and take political stances of development matters, so you have programmers that want everything statically linked and programmers that want everything dynamically linked. A good balance is needed, otherwise we end up with Flatpak and Snaps and multi-gigabyte "dependencies".
I love that Neon circle device where can i get one,
Don't think I'd do too well in the course--- I don't retain code stuff very well. I'm OLD- and have ONE eye now- so hate looking at TEXT on a screen-- aND I don't get all the little letter combo comands etc.. I can barely do arch without a cheat sheet listing what i need to type in...
I've curated the course for simplicity. It's very beginner friendly and it's also for non coders. The course can be finished within a matter of hours (but I don't recommend it. 15 mins daily). And I don't overload my students with commands, rather I make the concepts familiar and let the users go ahead from there. And you're not old Sir. You're magnificently experienced. Wiser. Smarter and mature. I'm looking forward to getting there 😊 Checkout my course and if you don't feel like you've got value. Text me and I'll do a refund, no questions asked. Have a great day Sir.
You know what, you don't need to use NixOS. Use whatever you feel comfortable with, like maybe Fedora or Debian. This is what Linux is all about, choice and preference.
@@fabiandrinksmilk6205 I've been using Debian.. can't stand Fedora- too slow and clunky and cartoony for me.. I DO like the sound of NIX-- I think I could do it.. Just have to use my separate drive and go slow- make sure of what I'm doing- once it's set up- should pretty well STAY set up.. Like my Debian., but maybe better.
Thank you very much for providing us the overview on NixOS. Please do a detailed video on installation of NixOS for the benefit of all
God damn it, i just forgot the OS name...
so is it designed as thumbdrive bootable test OS?
how does it do with laptops? like an Lenovo W520
It looks well polished
The lack of documentation will put this in the closet with the rest of the offshoot Linux distros. It's a great idea, but not necessarily unique. I can currently take a hard drive with Linux-Mint loaded onto it, and clone it with Clonezilla, to just about any machine out there that's less than 10 years old, and it will boot and run like it should. The kernel adjusts to the new hardware automatically, plus Linux-Mint is one of the most comfortable and STABLE distros I have used yet. Also, it's a fork of a major distribution (Ubuntu or Debian, depending on which flavor you choose)😉 No hype, no surprises.. it just works!
like Zorin. I throw it on anything and it works
I've been searching for the best Linux distro for years. My name is Nick. My PC's name is Nix PC. This is going to be my OS.
Each "distro" and "file" I bled a bit. I'm on the ER now
Best to save the generation file in a local and remote git repo
Is it compatible with 32 bit processor
The minimal ISO image without a desktop environment is, and naturally so is the package manager itself. This does mean needing to install from the command line rather than the graphical interface however, though the graphical installer is still available as a package on i686 if you manage to get a graphical environment running on the live CD.
These features remember me the old MSDOS.
Can I install nix os on an usb I DONT MEAN THE INSTALLER i mean to use the usb like an ssd
NixOS have Photoshop Illustrator IDM softwares?????¿¿¿
Do they offer LIVE ENVIROMENT TO TEST before installing- like other distros???
Yes there are both Gnome and KDE live environment isos available.
Excellent. This definitely piqued my interest.
@@syedumairali4345 WHERE? I saw the KDE and was going to download it- but it doesn't say LIVE..
@@davidwayne9982The individual download buttons don't say live, but the description above states that they're all live. The KDE iso should suit your needs.
Wow I never imagined this day would be so close, a "stateful operating system as code"
Nice video bro. By the way its Gnome or looks like 1. They're all the same. Ive been distro hopping but i still go back to windows.
How secure is this OS? Is the ability to replicate the entire system with 1 tiny file not a vulnerability which makes it easier for bad actors to copy all data by exfiltrating a tiny file?
Maybe this depends on how you use it. As I am learning Nix and NixOS, I am using it to manage only the software installed on my machine, as opposed to users' dotfiles. However, some users have been using a thing called Home Manager, which uses the Nix language to manage dotfiles. Currently I prefer to keep on using chezmoi for these.
But the answer also depends on what you consider "all data". I have lots of data, projects, emails, text files etc. which are the real important thing. Whether or not Postgres is installed in my system... isn't really important.
If someone gets root access they can see everything in a system, it matters very little whether or not there is a recipe for installation.
Currently getting up to speed with NixOS on my Proxmox instance, and I gotta say it's a refreshing change from the others so far!
I'm quickly noticing the lack of documentation outside of the official docs on the website and wiki. Otherwise, I love living inside these guys' Haskell-inspired dream!
Learn the language really well and learn all of the components and everything will come together for you and you won't feel you need help. I've realized that's why you don't see people talking about how certain things are installed, it's because people eventually figure out that learning the language and the OS's organization is all you need to know to fully customize the OS.
Same here!, trying new things and tooling provided by the Nix ecosystem such as Disko and impermanence modules in my proxmox
I love proxmox but It would be so good to use NixOS as a type-1 hypervisor instead, imagine declaring your VMs and LXCs using Nix
We have terraform for proxmox tho
AWW, but I use Nvidia 4090. :/
Haven't seen a single ISO or anyone who was able to compile for Nvidia driver.
Why on earth did they limit themself to Intel/Amd when these are a minority of users?
O_o hyped to return to windows asap lol nothing I need on my PC works on this shayt..
Nixos disadvantages?
i'm a contributor, really a nice project, i kinda wonder how it compares to guix which i haven't tried yet.
Alternate title for video: Docker minus "Docker (100% compatible)*"
As grumpy as I am, this is a pretty neat development. 'grats release folk
*with all of the current headaches and downsides of docker containers, plus some bonus ones.
Review the intriguing "Vanilla Arch" please.