Website Guide for copy/paste: christitus.com/nix-package-manager/ -------------------------------------- Thanks Internet for its "nicks" not " N-I-X". I've since been using NIX in tandem with apt on a debian system and it is fantastic. No extra repositories and rock solid performance.
I still love how informative nala's front-end is, and how universally supported apt is. I literally just change the word apt to nala when doing installs.
I wonder how badly Debian Stable will break using a powerful package manager like this? I run MX Linux, and being based on stable they are still several versions behind on desktops, etc. Must prepare USB stick for testing....
@@rishirajsaikia1323 Thank you; I haven't had time to try it on a USB stick bootable (I FINALLY learned to stop messing with my daily-driver setup :) ).
@@markh.6687 Not at all, nix's packages are not installed into the system itself at all - they actually live in their own directory-structure and are just PATH'ed. That ist of course only as long as you do not "Override" important system tools (e.g. by installing them from nix besides the original Version) and therefore make them basically shadow debian's versions.
its nice to see nix and nixos gain more attention from the linux community in recent times, hopefully with more exposure the nix repos will get bigger and more well maintained, and documentation will improve. Nixos really is a gamechanger and has fixed many of the problems the community is dealing with right now (immutability and cross distro packaging)
@@AndersHass don't think so but I meant that nix was around before flatpak and snap and by immutability I was also referring to silverblue and steamos since their goals were to have immutable packages
I really wish Nix would've started taking off before Flatpak. It really seems to be a good solution to cross-distro packaging, it's just a bit complex. If Nix was a little more beginner-friendly and had half the corporate funding that Flatpak does I legitimately think it could've won
Within the Nix community, a lot of attention goes toward 'advanced' uses of Nix, like storing and deploying the configuration of a fleet of NixOS machines in a 'GitOps'-y workflow, or writing your own custom packages for your own applications. It's really nice to see content that focuses on what cool stuff Nix can do for people even before they go all the way down the rabbithole!
My understanding of what you're saying is basically something like a configuration file that is capable of reproducing packages and applications on new instances/PCs. I was able to find this stuff for NixOS, but not for Nix package manager. Is there something you could point me towards?
@@varungawande9321 configuring plain nixos seems easy, but dabbling into the nix-pkgs... holly molly, it feels yet another level of newthings. > _"I was able to find this stuff for NixOS, but not for Nix package manager."_
"nix-env operations such as upgrades (-u) and uninstall (-e) never actually delete packages from the system. All they do (as shown above) is to create a new user environment that no longer contains symlinks to the “deleted” packages. Of course, since disk space is not infinite, unused packages should be removed at some point. You can do this by running the Nix garbage collector. It will remove from the Nix store any package not used (directly or indirectly) by any generation of any profile. Note however that as long as old generations reference a package, it will not be deleted. After all, we wouldn’t be able to do a rollback otherwise." This is what's written on the "Garbage Collection" section of the manual. Am I missing something? I don't think what's showed in this video is the proper way to manage applications via Nix.
The reason upgrades an uninstall does not remove things is to have all the backups available. That's usefull if you break something and want to recover the previous system status. Of course, depending what you use the machine for, that can vary a lot. The workflow of installations, upgrades, garbage collection, etc... Depends on you. For a personal machine, you would probably have very few generations available and run garbage collection after updates, but for a production machine running a server that might be different. So, you aren't missing anything, it all depends on how you use nix
I have joined the Nix train as well, with home-manager, and it IS great. It's not perfect, and it is far more complicated than it needs to be for casual use, but IMHO this is truly the perfect companion to flatpak, especially for CLI stuff. It makes more sense to use Nix over snaps in my opinion, and between Nix, flatpak, and distrobox, the amount of time I need to touch my host package manager can now be counted by hand. They legitimately made immutable a viable path for me.
I always heard it pronounced "nicks" so I did a little digging and in the original paper it's stated that the name Nix is derived from the Dutch word niks, meaning nothing, it's not an abbreviation.
Actually it's closer to "which is better: a car, or a car factory." The car is NixOS; the car factory is Nix. NixOS is really just a single, absolutely large and absurdly customizable, package for Nix.
I installed Nix for my Steam Deck, as pacman was both pain(I used mainly Debian based distros before) and new StemOS updates would wipe everything anyway, and now my newest laptop will run NixOS. Nix is such a good package manager.
Just be prepared to learn Haskell. I loved NixOS but a lot of things are dependent on Haskell However, it's one of the easiest Linux installations to do despite being so different from traditional distributions
Nix is not a package manager, it's a build system and a great one at that. It can also handle a build artifact cache and remote building. It is NOT a package manager, because it doesn't do things that apt or homebrew or yum or what have you do. For example, it does not put systemd service files in any location. It does not copy config files. It does not do any setup in any way. It's important for new users to know, that they have to do that kind of setup themselves.
@@drishalballaney the only thing i wished to was that NixOS wasn't so dependent on systemd. Don't get me wrong there is nothing wrong with systemd but i would preffer init freedom as personally i preffer runit over systemd for a init system.
@@rahilarious Does Gentoo let you specify all your customizations in source code and then apply them globally to all packages you install, except for a small handful that you decided to use the vanilla versions for? Did Gentoo check for if you actually customized a package and then downloads a binary version if it can prove that you didn't and only compile packages that your actually customized? Does Gentoo let two different packages depend on different versions of the same dependency?
I use none of them, works great, but I only use arch, and never should go for snap or appimage, can't understand why I should install same dependency several times? Love pacman and AUR and never have any problem with that
Nix-shell provides some of that functionality. If all you are using those for is to get apps, then yeah. If you care about the security benefits of these options then look into the details. I haven't, so they may be comparable, but I don't know.
@@fordonmekochgalenskaper5665 what do you do on your pc?. Also Flatpak still share dependencies bro. The main thing flatpak about is sandboxing, it aims a package that behave exactly the same on every distro, flatpak also very useful on something like steam deck when the system is immutable. Nix can also do this but AUR can't.
Hi Chris, This was an interesting video! Can you say a bit more about your terminal (prompt, config etc) that we see in this video? The mod looks nice. Also can you say a bit more about the pros and cons of using two package managers in a linux system?
Really this incredible minimal interface terminal is BASH? Man I'm a newbie learning Linux and Terminal prior to coding. Do you have any tutorial about this configs? The readability is AMAZING! A big hug from Brazil!
Chris, if you search a bit then you can find a scientific paper from the developer of NixOS, a Dutch computer scientists (Utrecht), about the package-manager. How deep are you willing to dive into the rabbit-hole?
Thanks, Chris! Nice to see you adopting 'new views that are true views' to paraphrase Abraham Lincoln. As for Debian being " a little behind"...they are WAY behind on Stable.
It's stated in other comments but this only just scratches the benefits of nix. Flakes, nix-shell, integration with direnv, configuring your entire system (if running NixOS)
Multiple repos for the one and only packagemanager apt is one of the biggest reasons I run Debian SID over Arch. I don't have to juggle both pacman and AUR stuff
At the beginning I didn’t understand why NIX is easier than homebrew (mac user here ) but then I read the homebrew cask feature is only available for Mac OS. So that's the reason NIX still necessary
Ha, how interesting that you mentioned doing a do over of an awesomewm set up on Debian. Just been trying to do that on Debian testing myself. Got so far, but couldn't work out how to launch apps with a particular screen 😕
IMO Guix would be much more suited for me. Not only am I then going to learn a package specification language (GNU Guile, based on Scheme), but also a language which is not a DSL (unlike Nixlang) and can thus be used for pretty much everything.
If you can effectively put any package in a container and nix is cross platform .. this sounds really neat. I hope they get round to doing a gui version as many people like me like to minimise terminal use as it seem rather obscure
Can you make a video about NixOS? The Gnome version seems to be really lite on ram - half what Fedora is using on a cold boot. I am wondering why and would love to hear your opinion on the os and if it is good for day to day use
@@rahilarious unfortunately I don't know about that stuff, but thank for the answer. I guess that could be a reason. But nearly 50% more ram on a cold boot. Fedora should be able to become more efficient on that side.
@@jehovahnissi1961 It is kinda weird. Of course I was testing in a vm (Gnome Boxes) and NixOS was running with 650mb ram while Fedora used around 1.3GB. But when I tested it on Hardware (live, not installed) both used around 1.05 while NixOS I think had a little bit of a higher average workload. I am now on Fedora and also had problems with the Nvidia gpu and the battery indicator is not working but there is a workaround and it seems to be a Kernel issue. It was not a great start and I am not sure if I am gonna stay on Fedora. The Battery consumption was also through the roof (1h50 while on Zorin I got around 7h). Now with the GPU fixed it is at least around 3 to 4 hours.
After seeing your vid Chris, I tried it on Fedora 36. Which kinda failed for me. But I had to do a reinstall anyway so I did a clean install and reinstalled NIX, per your explaining, and actually it works like a charm now. Thx for the heads up. Looking forward to your vid about the YORU environment.
@@Dark_Lobster Well, it only works for the user you install it for. Getting for mutli user is a bit sketchy, and in my case would mean that I have to reinstall my entire system... I suppose depending on your distro, you can install mutli-user easier... but I didn't get prompt for multi-user...
@@SebMcC2007 yeah, tried this on a new Fedora install, but no apps are showing in the apps list of my Gnome de. Have to run all via terminal....definately not integrating out of the box....
I tried it and it unfortunately doesn't work to well. The apps start via command line, but you don't get a .desktop (I.e. no entry in any menus) and if you use "Pin to Task Manager", the icon doesn't show. It is probably fixable somehow...
I like this, however some of the critical packages I add (such as Brave browser) are kind of out-of-date in Nix. For instance, the most recent version of Brave today is 1.42.97 however the latest version with Nix is 1.38.115 which is seriously out-of-date. This is a real security issue. So even though I like the idea of not pulling in additional third party deb repos, I think Nix is not a solution for me.
@@JohnSmith-ky2qn Yep most up to date ones are in the unstable branch, and Brave is out of date because Nix uses the latest stable release to date, which is branch release-22.05, not the unstable one
so, trying out nix as a replacement for brew on my apple silicon mac. installed a few apps like inkscape and vscode. Installation successful, but app icons do not show up in the launchpad screen, nor can I launch them via spotlight. Also, many apps are out of date... like Ultimaker Cura 3D. Latest release as of now, 5.3... nix only shows 4.13. If this is the "best" pkg manager, I must be doing something wrong.
Apologies if this is off-topic. I've just tried moving my desktop environment to nixos with the plasma desktop. I suspect nixos is not really aimed at desktop users. I've mostly got it working, and some elements of that were a lot easier than a conventional debian/ubuntu install. But there are some frustrating omissions. In particular, I like to use a GUI SVN client. I'm currently using kdesvn on debian/plasma. But kdesvn is not a package supported by Nixos, nor is it a flatpak. The only SVN GUI client that nixos knows about is rapidsvn. But rapidsvn crashes with errors about gnome-settings. So that highlights one of the issues, as a package manager, its list of packages is not exhaustive. For example, it should provide all the kde apps if it is going to provide the kde desktop. I'll look to building from source, but that is a backwards step, IMHO.
Did you some how modify or aliased apt to use nala? I'm looking at timestamp 4:28 you typed "sudo apt update" and the output looks a lot like the out of nala. I've also watched your "Stop using APT" and that's how I know that the output looks like nala's output. I have this bad habit defaulting to "apt", regardless of what other package manager is available. Anyway, could you make a video showing us how to set up apt to use nala? Just like your "sudo apt update" at 4:28 and "sudo apt purge github-desktop". I'm looking forward to that video!!
nix on other OSs is nice, but you don't get gpu support on that kind of setup, only on nixOS. You can symlink a nix mesa installation to /run/opengl-driver but other stuff like intel-media-driver/vaapi drivers are messier to deal with
about 20% of apps I install on LMDE via NIX are broken in different ways. They either have broken buttons (that just don't work) or eat too much cpu/ram. what am I doing wrong?
Chris Titus Tech What OS are you using in this video? The bit where you showed freshfetch, lists your OS as "x86-64"; I don't know of any, by that name.
Can we get a dive into the install-script? Usually when programs have you pipe a script to sh, it's an os-probe that gets you a traditional package for your OS. Here it gets a tarball with 4 interlinked scripts. I'm sure it's doing what it should, but it's a bit complex to follow what it's actually doing.
Packages in Nix don't just work. The theory and fact are two different things. They have too many individuals responsible for too many packages. Some just aren't keeping up with upgrades, etc. Nope.
Very nice video! I'm curious why you chose to show nix-env rather than nix-shell - I like how nix-shell allows me to have different shells with different sets of applications available, and haven't really found a strong need for nix-env
To me, nix is a kind of flatpak but using docker image layers instead of just putting files to separate directories. In both cases, whenever you're trying to "install" something small, they both bring all the dependencies with it, so the software you're "installing" won't be depending on packages of your OS. But there's a limit for this approach for sure. Most obvious is not even the disk space, gigabytes are cheap these days. It's integration to your desktop. Flatpak solves that with using portals. But how does that nix? And unfortunately nix is not ideal. I just tried to "install" retroarchFull and it failed (aarch64) somewhere in the middle while leaving a tonns of garbage behind it
No, nix doesn't duplicate dependencies for every app. If two apps depend on the same lib, it will be installed only once. If two apps depend on a different version of a lib, both versions will naturally be installed side by side. That's the crux of nix.
What's weird to me is that NO ONE ever mentioned this powerful aspects of nix package manager when they coverd or reviewed NixOS on YT. Wich is to me is a shame on linux distros YT reviews. I thought it is a normal package manager with small packages number
@@lolololo-cx4dp thanks for the reply. That would make sense although I guess I was referring more to the underlying mechanics of nix: as for example nix-env and nix-shell work very similarly under the hood, in fact you don't even need nix-env at all since nix-shell will install whatever you need as you need it. There's also just a lot of customization you can do and also you can effectively guarantee that a version of your project will always work in all environments with nix installed. (tbh I'm just nix obsessed and hope for the comment section to have some good discussions and get the word out about how awesome nix is)
Hey Chris, just curious, what's your thoughts on Gentoo? Just got my first install up and running, and so far I'm enjoying it. Going through the learning curve, like always when switching to a new distribution, and installs are a bit painfully long 😂 But I picked my beast lol, and I feel like I'm noticing some subtle performance gains in places. Not sure if it's just a placebo since it's a new install or not lol, but seeing how Gentoo works makes me wonder if maybe one day SteamOS will be built using it. Would love to hear your thoughts about Gentoo and the possibility of making a full blown gaming dedicated OS from it, if you're interested in it. If not, peace and long life anyways 🖖 Stay well
Website Guide for copy/paste: christitus.com/nix-package-manager/
--------------------------------------
Thanks Internet for its "nicks" not " N-I-X".
I've since been using NIX in tandem with apt on a debian system and it is fantastic. No extra repositories and rock solid performance.
A-P-T
nala?
@@jt_hopp 🤣
I still love how informative nala's front-end is, and how universally supported apt is. I literally just change the word apt to nala when doing installs.
@@joshuacanter6843 yup, I think he commented about setting up an alias a couple of episodes ago.
Package manager hopping inbound
I wonder how badly Debian Stable will break using a powerful package manager like this? I run MX Linux, and being based on stable they are still several versions behind on desktops, etc. Must prepare USB stick for testing....
@@markh.6687 I heard that the nix package manager doesn't conflict with a distro's main package manager at all.
@@rishirajsaikia1323 Thank you; I haven't had time to try it on a USB stick bootable (I FINALLY learned to stop messing with my daily-driver setup :) ).
@@markh.6687 Not at all, nix's packages are not installed into the system itself at all - they actually live in their own directory-structure and are just PATH'ed.
That ist of course only as long as you do not "Override" important system tools (e.g. by installing them from nix besides the original Version) and therefore make them basically shadow debian's versions.
@@dundee248 Thank you; now hold my beer, I wanna try something....(Famous Last Words in Linux Series, Entry #1) 😆
its nice to see nix and nixos gain more attention from the linux community in recent times, hopefully with more exposure the nix repos will get bigger and more well maintained, and documentation will improve.
Nixos really is a gamechanger and has fixed many of the problems the community is dealing with right now (immutability and cross distro packaging)
Any of the cross distro packaging that doesn't have immutability?
@@AndersHass don't think so but I meant that nix was around before flatpak and snap
and by immutability I was also referring to silverblue and steamos since their goals were to have immutable packages
@@nilnailscrew4784 oh it is older than those
i wish nixos and vanilla os would make a baby js
I really wish Nix would've started taking off before Flatpak. It really seems to be a good solution to cross-distro packaging, it's just a bit complex.
If Nix was a little more beginner-friendly and had half the corporate funding that Flatpak does I legitimately think it could've won
Within the Nix community, a lot of attention goes toward 'advanced' uses of Nix, like storing and deploying the configuration of a fleet of NixOS machines in a 'GitOps'-y workflow, or writing your own custom packages for your own applications.
It's really nice to see content that focuses on what cool stuff Nix can do for people even before they go all the way down the rabbithole!
My understanding of what you're saying is basically something like a configuration file that is capable of reproducing packages and applications on new instances/PCs. I was able to find this stuff for NixOS, but not for Nix package manager. Is there something you could point me towards?
@@varungawande9321 configuring plain nixos seems easy, but dabbling into the nix-pkgs... holly molly, it feels yet another level of newthings.
> _"I was able to find this stuff for NixOS, but not for Nix package manager."_
"nix-env operations such as upgrades (-u) and uninstall (-e) never actually delete packages from the system. All they do (as shown above) is to create a new user environment that no longer contains symlinks to the “deleted” packages.
Of course, since disk space is not infinite, unused packages should be removed at some point. You can do this by running the Nix garbage collector. It will remove from the Nix store any package not used (directly or indirectly) by any generation of any profile.
Note however that as long as old generations reference a package, it will not be deleted. After all, we wouldn’t be able to do a rollback otherwise."
This is what's written on the "Garbage Collection" section of the manual. Am I missing something? I don't think what's showed in this video is the proper way to manage applications via Nix.
The reason upgrades an uninstall does not remove things is to have all the backups available. That's usefull if you break something and want to recover the previous system status. Of course, depending what you use the machine for, that can vary a lot. The workflow of installations, upgrades, garbage collection, etc... Depends on you. For a personal machine, you would probably have very few generations available and run garbage collection after updates, but for a production machine running a server that might be different. So, you aren't missing anything, it all depends on how you use nix
Nix makes the AUR look tiny. It's fantastic! Also it's not N.I.X. It's literally called nix "nicks"
"We're the Knights who say "Nix! We demand you bring us....a server!!" (Nix!)
-- From Monty Python and the Holy Grail.
Nick's package manager? ;)
@@nafg613 Oh, you persistently silly person! :)
Tiny? You need more than 83k from aur?
@@linuxmobile Upload ALL the softwares!
I have joined the Nix train as well, with home-manager, and it IS great. It's not perfect, and it is far more complicated than it needs to be for casual use, but IMHO this is truly the perfect companion to flatpak, especially for CLI stuff. It makes more sense to use Nix over snaps in my opinion, and between Nix, flatpak, and distrobox, the amount of time I need to touch my host package manager can now be counted by hand. They legitimately made immutable a viable path for me.
I have been using NixOS for 3 years now and will never look back. It now powers all my servers, laptops, raspberry pis at home and in my company.
I always heard it pronounced "nicks" so I did a little digging and in the original paper it's stated that the name Nix is derived from the Dutch word niks, meaning nothing, it's not an abbreviation.
See also German's "nichts", also meaning 'nothing'.
@@markh.6687 or the English word nix, haha.
actuallt it is better to use home manager and flakes for an even more reproducable setup, and if you want to go all out you can take a look at nixos
@@Khovh that's like asking, which is better apt or debian?
But which _is_ better, @@drishalballaney -- a car, or tires?
Actually it's closer to "which is better: a car, or a car factory." The car is NixOS; the car factory is Nix. NixOS is really just a single, absolutely large and absurdly customizable, package for Nix.
I installed Nix for my Steam Deck, as pacman was both pain(I used mainly Debian based distros before) and new StemOS updates would wipe everything anyway,
and now my newest laptop will run NixOS. Nix is such a good package manager.
Just be prepared to learn Haskell. I loved NixOS but a lot of things are dependent on Haskell
However, it's one of the easiest Linux installations to do despite being so different from traditional distributions
@@clocked0What depends on Haskell?
@@mgord9518 Apparently not Nix! But the two languages are very similar, so still worth learning.
Nix is not a package manager, it's a build system and a great one at that. It can also handle a build artifact cache and remote building. It is NOT a package manager, because it doesn't do things that apt or homebrew or yum or what have you do. For example, it does not put systemd service files in any location. It does not copy config files. It does not do any setup in any way. It's important for new users to know, that they have to do that kind of setup themselves.
I would love a full walkthrough of configuring/using Nix in video form. Nix looks pretty awesome!
Just wait untill you findout about the power that NixOS offers :D
This^
NixOS is one of the best distributions I have used till now
@@drishalballaney the only thing i wished to was that NixOS wasn't so dependent on systemd. Don't get me wrong there is nothing wrong with systemd but i would preffer init freedom as personally i preffer runit over systemd for a init system.
Just wait untill you findout about the power that Gentoo offers :D
@@rahilarious Does Gentoo let you specify all your customizations in source code and then apply them globally to all packages you install, except for a small handful that you decided to use the vanilla versions for? Did Gentoo check for if you actually customized a package and then downloads a binary version if it can prove that you didn't and only compile packages that your actually customized?
Does Gentoo let two different packages depend on different versions of the same dependency?
True enlightenment. Next step is NixOS
Finally on Nix. Good! I still am on Arch but I do think that Nix is awwwesome and I woulnd't mind using it.
This is the Holy Grail of package management. Thank you!
just tried it, now I am going into the rabbit whole now!! this blew my mind
So will Nix package manager mean that you dont need Snaps, Flatpacks or Appimages anymore? That would be fantastic!
I use none of them, works great, but I only use arch, and never should go for snap or appimage, can't understand why I should install same dependency several times? Love pacman and AUR and never have any problem with that
Nix-shell provides some of that functionality. If all you are using those for is to get apps, then yeah. If you care about the security benefits of these options then look into the details. I haven't, so they may be comparable, but I don't know.
@@fordonmekochgalenskaper5665 your app never broke even once?
@@lolololo-cx4dp no, my Arch install is 5 years old never been any issue, most applications I use in my work comes from AUR
@@fordonmekochgalenskaper5665 what do you do on your pc?. Also Flatpak still share dependencies bro. The main thing flatpak about is sandboxing, it aims a package that behave exactly the same on every distro, flatpak also very useful on something like steam deck when the system is immutable. Nix can also do this but AUR can't.
Hi Chris,
This was an interesting video! Can you say a bit more about your terminal (prompt, config etc) that we see in this video? The mod looks nice.
Also can you say a bit more about the pros and cons of using two package managers in a linux system?
Really this incredible minimal interface terminal is BASH?
Man I'm a newbie learning Linux and Terminal prior to coding.
Do you have any tutorial about this configs? The readability is AMAZING!
A big hug from Brazil!
Chris, if you search a bit then you can find a scientific paper from the developer of NixOS, a Dutch computer scientists (Utrecht), about the package-manager. How deep are you willing to dive into the rabbit-hole?
As a nix user im happy you finally looked at it
Thanks, Chris! Nice to see you adopting 'new views that are true views' to paraphrase Abraham Lincoln.
As for Debian being " a little behind"...they are WAY behind on Stable.
It's stated in other comments but this only just scratches the benefits of nix. Flakes, nix-shell, integration with direnv, configuring your entire system (if running NixOS)
Multiple repos for the one and only packagemanager apt is one of the biggest reasons I run Debian SID over Arch. I don't have to juggle both pacman and AUR stuff
@pancake same with pamac
So the next step is to give a shot at NixOS ;)
At the beginning I didn’t understand why NIX is easier than homebrew (mac user here ) but then I read the homebrew cask feature is only available for Mac OS. So that's the reason NIX still necessary
I don't thing mac users are necessary, but that's just my opinion.
Ha, how interesting that you mentioned doing a do over of an awesomewm set up on Debian. Just been trying to do that on Debian testing myself.
Got so far, but couldn't work out how to launch apps with a particular screen 😕
IMO Guix would be much more suited for me. Not only am I then going to learn a package specification language (GNU Guile, based on Scheme), but also a language which is not a DSL (unlike Nixlang) and can thus be used for pretty much everything.
Totally going to give this a try. Thanks Chris!
Great catch and recovery! Thank you for the info shared on NIX OS... very cool distro!
Nixos is even more powerful. One configuration can rule all in Nixos.
Congratz! Time for you to discover now Home Manager :)
Nice install code, I was able to install while listening so quickly.
I just want to say that I can see TH-cam Dislikes and there are none in here! Really shows how amazing your videos are, Chris! Keep it up!
If you can effectively put any package in a container and nix is cross platform .. this sounds really neat. I hope they get round to doing a gui version as many people like me like to minimise terminal use as it seem rather obscure
NixOS sounds like a stable Arch. If so, it's a rolling release dream distro! Too good to be true. 🤩
do a kickflip titus with your OG toy machine deck in the background. I see you there. I see you.
Damn!! Nix is so awesome, gonna try out on ubuntu and maybe even fedora. Thanks a ton Chris!
Tomorrow, i was wrong again....😂😂
ahaha
Lmfao
I was wrong! winget is the best package manager!... just kidding, I don't do drugs.
@@ChrisTitusTech 😂
I love Chris he has helped me. Customize windows & Linux alot
Chris, have you touched on the security, or threat, imprecations of pulling software from all these different repos? Great videos, thanks.
Using flakes with pure evaluation mode you're pulling from specific releases or commits. So not as bad as you'd think
Linux users are like heroine addicts. Always chasing that dragon and never able to catch it.
This is fair.
And we want to ride that damn dragon.
@@valentinomelis8331
Not like I like f-female d-dragons or anything; I..I just agree with you.
But NixOS is that dragon :p
“Keep true” has to be the most roundabout way of saying “pin”.
Cheers bro. As always the best the best to refresh an old unix engineer
2:15 yo + roo, 夜, yoru literally means "night" in Japanese.
I'd love if you can do a full NIX OS installation video
meh
Can you make a video about NixOS?
The Gnome version seems to be really lite on ram - half what Fedora is using on a cold boot.
I am wondering why and would love to hear your opinion on the os and if it is good for day to day use
maybe cause fedora packages are compiled with lto, pgo and -O3 which uses more RAM but gives faster performance
@@rahilarious unfortunately I don't know about that stuff, but thank for the answer. I guess that could be a reason. But nearly 50% more ram on a cold boot.
Fedora should be able to become more efficient on that side.
@@jehovahnissi1961
It is kinda weird. Of course I was testing in a vm (Gnome Boxes) and NixOS was running with 650mb ram while Fedora used around 1.3GB.
But when I tested it on Hardware (live, not installed) both used around 1.05 while NixOS I think had a little bit of a higher average workload.
I am now on Fedora and also had problems with the Nvidia gpu and the battery indicator is not working but there is a workaround and it seems to be a Kernel issue. It was not a great start and I am not sure if I am gonna stay on Fedora. The Battery consumption was also through the roof (1h50 while on Zorin I got around 7h). Now with the GPU fixed it is at least around 3 to 4 hours.
That's the kind of video I really like! No ego, just fun and learning. And he read the comments. KKKK
After seeing your vid Chris, I tried it on Fedora 36. Which kinda failed for me. But I had to do a reinstall anyway so I did a clean install and reinstalled NIX, per your explaining, and actually it works like a charm now. Thx for the heads up. Looking forward to your vid about the YORU environment.
Did you get it to integrate with your system, i.e do it show in your application list etc?
@@Dark_Lobster Well, it only works for the user you install it for. Getting for mutli user is a bit sketchy, and in my case would mean that I have to reinstall my entire system... I suppose depending on your distro, you can install mutli-user easier... but I didn't get prompt for multi-user...
@@SebMcC2007 yeah, tried this on a new Fedora install, but no apps are showing in the apps list of my Gnome de. Have to run all via terminal....definately not integrating out of the box....
@@Dark_Lobster did you run the 'ln -s /home/$USER/.nix-profile/share/applications/* /home/$USER/.local/share/applications/' as stated by Chris?
@@SebMcC2007 Oh, I did not see that...thanks :) saved me some googling....
Now that's cool! Installed before the video even finished ‼️💯😎
Wow!!! Nix is the best, you saved me for yet another time, thank a lot Titus, keep up the great work!!! :)
Thanks Chris!!! This is an awesome looking desktop environment would love to see this on Fedora KDE Plasma.
I tried it and it unfortunately doesn't work to well. The apps start via command line, but you don't get a .desktop (I.e. no entry in any menus) and if you use "Pin to Task Manager", the icon doesn't show. It is probably fixable somehow...
@@Golgafrincham Good to know!
Which distro are you running on your Studio PC? Setup looks really clean, I NEED IT!!! 😂
Debian sid with bspwm and Nala apt wrapper.
what desktop environment are you using Chris, it looks fantastic
as far as i know it's fedora server edition with bspwm
@@scientiac thanks man
That's awesome Chris Titus Tech. Do you have your configs of Linux your using now.
I like this, however some of the critical packages I add (such as Brave browser) are kind of out-of-date in Nix. For instance, the most recent version of Brave today is 1.42.97 however the latest version with Nix is 1.38.115 which is seriously out-of-date. This is a real security issue. So even though I like the idea of not pulling in additional third party deb repos, I think Nix is not a solution for me.
It's 1.42.88 in unstable channel.
@@JohnSmith-ky2qn Yep most up to date ones are in the unstable branch, and Brave is out of date because Nix uses the latest stable release to date, which is branch release-22.05, not the unstable one
@@danielphan.2003 why not use unstable then? It is the default branch when installing nix
AUR from arch got it!
thanks! and i like your terminal environment, what is this and how can i customized like that?
so, trying out nix as a replacement for brew on my apple silicon mac. installed a few apps like inkscape and vscode. Installation successful, but app icons do not show up in the launchpad screen, nor can I launch them via spotlight. Also, many apps are out of date... like Ultimaker Cura 3D. Latest release as of now, 5.3... nix only shows 4.13. If this is the "best" pkg manager, I must be doing something wrong.
Great work 🎉🎉🎉 Thanks 💜💜💜
You go for different packages like young studs choose girlfriends - fresher, faster, fewer dependencies.
Apologies if this is off-topic. I've just tried moving my desktop environment to nixos with the plasma desktop. I suspect nixos is not really aimed at desktop users. I've mostly got it working, and some elements of that were a lot easier than a conventional debian/ubuntu install. But there are some frustrating omissions.
In particular, I like to use a GUI SVN client. I'm currently using kdesvn on debian/plasma. But kdesvn is not a package supported by Nixos, nor is it a flatpak. The only SVN GUI client that nixos knows about is rapidsvn. But rapidsvn crashes with errors about gnome-settings.
So that highlights one of the issues, as a package manager, its list of packages is not exhaustive. For example, it should provide all the kde apps if it is going to provide the kde desktop. I'll look to building from source, but that is a backwards step, IMHO.
Maybe consider submitting a packing request
A bit offtopic, but how do you did the 'took' part to give you wasted time on every run?
Did you some how modify or aliased apt to use nala?
I'm looking at timestamp 4:28 you typed "sudo apt update" and the output looks a lot like the out of nala. I've also watched your "Stop using APT" and that's how I know that the output looks like nala's output.
I have this bad habit defaulting to "apt", regardless of what other package manager is available.
Anyway, could you make a video showing us how to set up apt to use nala? Just like your "sudo apt update" at 4:28 and "sudo apt purge github-desktop". I'm looking forward to that video!!
Can you try and review GNU Guix too? package manager that directly inspired by nix?
nix on other OSs is nice, but you don't get gpu support on that kind of setup, only on nixOS. You can symlink a nix mesa installation to /run/opengl-driver but other stuff like intel-media-driver/vaapi drivers are messier to deal with
Thanks. Will check it out.
about 20% of apps I install on LMDE via NIX are broken in different ways. They either have broken buttons (that just don't work) or eat too much cpu/ram. what am I doing wrong?
Chris Titus Tech What OS are you using in this video? The bit where you showed freshfetch, lists your OS as "x86-64"; I don't know of any, by that name.
Very insightful video. Thanks
Chris, What are your thoughts on using nix as a package manager for a LFS based distro.
so basically AUR for non arch users. Cool, but I'll stick with Arch... BTW
Can we get a dive into the install-script? Usually when programs have you pipe a script to sh, it's an os-probe that gets you a traditional package for your OS. Here it gets a tarball with 4 interlinked scripts. I'm sure it's doing what it should, but it's a bit complex to follow what it's actually doing.
To my understanding, pretty much any package that is available on other linux distros is available via nix
Its true power. You use it's when you are contracting it is. Good video, though Chris!
curious what your thoughts are on wiping utilities like dban and what some folks recommend like parted magic...
Packages in Nix don't just work. The theory and fact are two different things. They have too many individuals responsible for too many packages. Some just aren't keeping up with upgrades, etc. Nope.
I just installed nala in ubuntu after seeing a video of you for replacing apt, now I see this.
Hello Chris one question do you install nix to remove Brew?
very inspring, thanks for sharing!
Very cool!!! Using Nix package manager with Debian and Arch now thanks!
I agree on Nix/OS being best.
when reviewing nix os?
Did you try out NixOS ? it sounds really cool, can you make a video about it ?
I am new to linux and still deciding what distro to use but since finding out about Nix, I think I will go with NixOs.
Very nice video! I'm curious why you chose to show nix-env rather than nix-shell - I like how nix-shell allows me to have different shells with different sets of applications available, and haven't really found a strong need for nix-env
have you used nix-shell yet? you don't have to install things globally, with that you can load some apps to your current terminal
Nix uses an unintuitive syntax that is hard to understand and work with. I prefer Docker over Nix
To me, nix is a kind of flatpak but using docker image layers instead of just putting files to separate directories. In both cases, whenever you're trying to "install" something small, they both bring all the dependencies with it, so the software you're "installing" won't be depending on packages of your OS. But there's a limit for this approach for sure. Most obvious is not even the disk space, gigabytes are cheap these days. It's integration to your desktop. Flatpak solves that with using portals. But how does that nix?
And unfortunately nix is not ideal. I just tried to "install" retroarchFull and it failed (aarch64) somewhere in the middle while leaving a tonns of garbage behind it
Tbh, Nix is not intended for graphical applications as much as for making enviroents, specifically development environments in my opinion
@@kintrix007 yeah this is exactly how its creators are seeing it's purpose
No, nix doesn't duplicate dependencies for every app.
If two apps depend on the same lib, it will be installed only once.
If two apps depend on a different version of a lib, both versions will naturally be installed side by side.
That's the crux of nix.
@@retropaganda8442 well flatpak and snap also do that, but in a bit broader sense - they do install shared runtimes
What's weird to me is that NO ONE ever mentioned this powerful aspects of nix package manager when they coverd or reviewed NixOS on YT. Wich is to me is a shame on linux distros YT reviews.
I thought it is a normal package manager with small packages number
Which powerful aspects do you refer to?
@@simplehaskell4949 maybe the nix shell, nix config and nix env?
@@lolololo-cx4dp thanks for the reply. That would make sense although I guess I was referring more to the underlying mechanics of nix: as for example nix-env and nix-shell work very similarly under the hood, in fact you don't even need nix-env at all since nix-shell will install whatever you need as you need it.
There's also just a lot of customization you can do and also you can effectively guarantee that a version of your project will always work in all environments with nix installed.
(tbh I'm just nix obsessed and hope for the comment section to have some good discussions and get the word out about how awesome nix is)
Once you see what Nix offers, you can't unsee it and you'll want it installed on all your machines. It's a curse, lol
Bro, you change your mind every 4 months 😂
how would I remove nix from my Debian system? I have stopped the nix daemon with the systemctl command.
Video on nix os soon?
what distro (and terminal) does chris use here?
Wicked wallpaper can you point where to get it please?
Brew has the latest package versions that I need (like neovim) before nix.
Hey Chris, just curious, what's your thoughts on Gentoo? Just got my first install up and running, and so far I'm enjoying it. Going through the learning curve, like always when switching to a new distribution, and installs are a bit painfully long 😂 But I picked my beast lol, and I feel like I'm noticing some subtle performance gains in places. Not sure if it's just a placebo since it's a new install or not lol, but seeing how Gentoo works makes me wonder if maybe one day SteamOS will be built using it. Would love to hear your thoughts about Gentoo and the possibility of making a full blown gaming dedicated OS from it, if you're interested in it.
If not, peace and long life anyways 🖖 Stay well
well, gentoo has no learning curve and the docs are also pretty gud.
Did you compile the kernel or used genkernel ?
@GeneralHub even On my i3 4500U it takes less than an hour for the kernel with everything I need.
So, select only modules which are required.
@GeneralHub Im on NixOS, nix can do anything portage can. Only one bad thing init=systemd. I was an dinit+nix user earlier later became NixOS user.
apk #1 package manager, speed is out of this world