Nix - The Best Package Manager
HTML-код
- Опубликовано: 9 июл 2024
- In this video I discuss the Nix package manager and why it's the best package manager on *Nix based operating systems.
₿💰💵💲Help Support the Channel by Donating Crypto💲💵💰₿
Monero
45F2bNHVcRzXVBsvZ5giyvKGAgm6LFhMsjUUVPTEtdgJJ5SNyxzSNUmFSBR5qCCWLpjiUjYMkmZoX9b3cChNjvxR7kvh436
Bitcoin
3MMKHXPQrGHEsmdHaAGD59FWhKFGeUsAxV
Ethereum
0xeA4DA3F9BAb091Eb86921CA6E41712438f4E5079
Litecoin
MBfrxLJMuw26hbVi2MjCVDFkkExz8rYvUF
Dash
Xh9PXPEy5RoLJgFDGYCDjrbXdjshMaYerz
Zcash
t1aWtU5SBpxuUWBSwDKy4gTkT2T1ZwtFvrr
Chainlink
0x0f7f21D267d2C9dbae17fd8c20012eFEA3678F14
Bitcoin Cash
qz2st00dtu9e79zrq5wshsgaxsjw299n7c69th8ryp
Etherum Classic
0xeA641e59913960f578ad39A6B4d02051A5556BfC
USD Coin
0x0B045f743A693b225630862a3464B52fefE79FdB
Subscribe to my RUclips channel goo.gl/9U10Wz
and be sure to click that notification bell so you know when new videos are released. Наука
the best part is that for NixOS you can make a flake in which you can declare your entire system configuration including filesystems, environment variables, what shell to use, dotfiles and more. then you can take it further and have multiple outputs in a flake, one for each machine you use!
That's very interesting, will give it a try.
sadly, it can't actually partition the disks
*ansible has entered the chat*
I was planning on maintaining my config with stow + ansible + git but this almost sounds a lot more convenient
@@dfgdfg_ ansible isn't really declarative and things you get with it aren't particularly reproducible
The best thing i've ever did was switching from arch to NixOS, it's so good. Pretty hard to get used to it at first tho but now i managed to setup a hyprland + nvidia config for my dev environment
if you don't mind me asking, how'd you get nvidia drivers working + is nvidia optimus support good?
exactly my story minus the hyprland (I'm an awesomeWM diehard). What's even better is it took me about 10 minutes to switch laptops last summer because all my system and application config was handled by nix down to the kernel modules
Same, also using Hyprland + a Nvidia GPU after switching to NixOS from Arch haha. Literally identical.
What’s the benefit you get ?
@@aryan37 Their wiki has a page dedicated to nvidia drivers. Non-optimus seems to be supported, but optimus gets a bit iffy.
Been using NixOS for about 9 years. Love it. I use it at work, I have since ported it to an ereader, game console, Chromebooks, etc. I use it for absolutely everything.
What ereader?
@@krunk7133 Kobo Clara HD and Kobo Clara 2e
What is the point of instaling nixos on a game console besides for fun ?
@Mr.W like the video said, all the emulators are packaged and available. I also have access Gnome 3 so it's also useful for writing code on. 4GB RAM and ARM64. Pretty cool!
@@BrianMcKennaPuffnfresh if you dont mind me asking, how did you get started on porting oses to insteresting hardware? Ive been wanting to do this, but dont really know what i would have to learn. are there any books or resources you can reccomend?
I never thought I'd see the day my favorite Linux RUclipsr reviews my favorite package manager :)
It really seems to be capturing the spotlight lately. First DistroTube, then Switched to Linux, now Mental Outlaw. Is this the year of the Nixos desktop? :D
Other than their repo, the OS itself is also pretty cool. The ability to literally save your entire system to a text file is absurdly powerful, but the thing that prevents me from using their OS is doing anything relating to system settings like bypassing the need for authentication or passwords is an absolute nightmare.
You can set autologin (if that's what you mean) and also `security.sudo.wheelNeedsPassword = false` so you can sudo without having to enter your password.
WUT?? Whats that called?
@@cybersechs1368 NixOS.
Ah yes, of course. For those times when I want to reinstall my operating system spontaneously. There really is no point in daily driving nix.
@@mrbanana6464 you missed the point entirely.
Don't take this the wrong way, I generally like what you do, I usually learn something new, but I was expecting a comparison against other package managers (explaining what it does better, what others cant do), instead I saw a video of a man installing a package manager, installing librewolf and searching for some other packages. Maybe there was some of the former, but the later seemed to take the most time.
I had that thought as well. If you are just installing packages via nix-env you are doing it wrong (home-manager is what you want). I find Nix to be an intriguing idea but the implementation is highly esoteric and plagued by garbage documentation (particularly for the highly vaunted flakes) that will not really help you beyond the basic hello world and canned simple examples.
While building reproducible environments is one of the touted features, doing a node project the nix way with other binary dependencies was a nightmare to get working and other users had issues on their machines. ASDF and go-task glue did a better job in a tiny fraction of the time and just works without having to mess with esoteric syntax. Having seen nix in action at a large tech company with an entire team maintaining internal nix tooling, I now get why they needed a whole team. Working for a startup, you can guess which solution won out for me.
Right? Besides, for automated deployments you should really have an abstraction layer, such as Ansible. Then, it defeats the purpose of having the same package manager on every system.
@@Gunzy83 I have a somewhat different experience. Yes, you have to learn the nix language a little bit, but that is true every time you use a new language, that isn't just a reskin of C, syntactically speaking (and semantically speaking for a good portion of language semantics). And you can go a long way with just copy pasting a basic nix-shell script and changing out the listed packages.
That is what I did a good while.
What was your problem with "other binary dependencies"? The only problem I could imagine is if they are not packaged. But as long as you use nix on another host distro, you can just get it any other way.
maybe he is gay
He starts off with it. Nix will run on any system. It is common knowledge that nix is deterministic, so you can pull your cobfig on any system and deterministically create exactly what you want. That's the whole point of nix.
It's worse in most ways in which it is comperable to other managers, so that's not a very i teresting video. Making a nix.config is tedious and it runs slower.
Nix is amazing. I'm one of the contributors and I maintain the Lens package. I'm coming out with the Flutter Engine being packaged. I've had a lot of experience with it and yeah, there's a huge learning curve but it's very powerful.
Been waiting for someone to make a video on Nix! I've been loving nix, and it's amazing. With home-manager and NixOS i can have my whole configured in one place.
Thank you so much for this video! I've been struggling for a while with trying to use Arch with the AUR, but it always seemed to break on me. I really liked using Debian, but the lack of packages made it difficult for me to use it for my needs. I'm now able to combine the stability of Debian with the packages that I need. Thanks again for sharing this information, it's a lifesaver!
Nix is a very casual way to homebrew your Mac without using homebrew because Most apple engineers will not repair your device if it has homebrew or cydia on it, however nix is less known and can fly under the radar
or just take it to a normal repair shop and they'll fix it regardless and also do it for less than a 300% upcharge.
@@happygofishing that's my first option
Doesn't MacOS support full disk encryption? I think it was called FileVault or something.
If you meant 'repairing' the OS, then I guess I'd agree with these engineers. If you messed up your system with a weird PATH, you should probably learn how it works and fix it yourself
If a company refused to service your computer because of a piece of soft are that runs on their hardware, then you take them to court. I think you are lying
That's not true
another thing that's cool about nix/nixOS is the overrides. You can change many things of a package's/derivation's definition, similar to USE flags sometimes (if provided by the packager, but you can define stuff like that too), but also being to change whatever of the package! Adding patches, removing them, changing sources, changing commands of the build process...
That said, nix/nixos has its fair share of issues *sometimes*, you might come across stuff that doenst work right, but that's fairly rare.
Since Nix is reproducible, it can reap the benefits of both binary-based _and_ source-based packages managers. If the particular configuration you request is available in Hydra, then it will just download from there. If not, then it will grab the build dependencies and compile exactly the specifications you asked for.
Hail Hydra! (Yes, that's the name of the automated build server.)
I see that you are pretty new to Nix. You have a lot of nice things yet to discover but here are some that really stood out to me in the video:
* You are using Nix, the package manager, not NixOS (you sometimes to use the names interchangeably).
* 5:09 flakes serve a completely different purpose. They are kind of the new way to write nix configs.
* 5:57 those are not really "instructions". Those things are exactly the same all the time and just list some of the options how you can get the package.
* 6:04 nix-env is imperative, you might want to look into declarative configs using home-manager or flakes.
Nix could be used to switch GNU Stow, since it handles dotfiles nicely with the home-manager project.
Also, having one tool to install all other tools, runtimes, apps and services in a isolated and reproducible way is too good.
A solid, professional and through video, just like all of the others
thank you for your content!
I am so excited to see you did a Nix video!!! Coincidentally, I have to present about Nix at my job later this month.
People never talk about how much package managers are a huge barrier for new linux users. I used to think you needed programs to be make specifically for Ubuntu or Arch and if they weren't in the repos then you were just screwed. It really hindered my progress a lot and made me want to go back to windows where I could just find the programs I needed online
Oh man it's 23:43 right now, but the video being about the nix paclage manger makes me interested. Will watch it once I wake up early tomorrow before workout!
There is also Guix, loosely based on Nix, but uses Lisp, and is overall much cleaner and more declarative. I've used it for months, and it's super comfy for many tasks.
It's also highly bootstrappable, removing the problem of "Reflections on Trusting Trust"
Guix is not bad, but there are many buts! The entry threshold is higher than that of Nyx OS + less packages. About 26 thousand against 80 thousand. And besides, installing something proprietary is more difficult.
@@krator3
>installing something proprietary is more difficult.
based (if it was true)
you're always making videos as soon as i start looking into something
started toying with nix and then nixos in a vm for the last week and here you go publishing a video about it
I just discovered this channel. This is amazing
If GNU didn't limit the official repos to exclusively libre software, I think Guix would be an even better package manager, but as it stands I have to agree that Nix takes first place.
As for Nixos, it is the distro I recommend to new users who don't yet have much Linux savvy to unlearn, but are ready to commit. The drawback of its unconvential paradigm (e.g. the nix syntax) is, of course, that you end up getting pushed down a rather unique path and that experience doesn't translate well in the other direction, to more conventional distros, either.
What bothers me more though, is that Nixos' config file doesn't actually make all installed packages explicit. So even if you remove all packages listed and rebuild, you will still have software installed, e.g. as part of the desktop environment. This seems to go against the principle of having the entire system configuration contained inside a single file.
Furthermore, rebuilding the same configuration on exactly the same architecture will not always give 100% consistent results, so the much touted reproducibility is also not quite there yet.
Finally, the documentation is an absolute mess of instructions written for different versions but then never brought into line.
But other than those criticisms, I have nothing but praise.
Thank you for coming to my TED talk.
what do you expect of the config file where would you expect extra packages to be listed normally it's added to environment.systemPackages if you were to add all the parts of the DE manually it would be inconvenient you would have to add EVERYTHING by hand basic stuff like sudo included if you're insane enough you can try
@@genericgamer1319 Whether wanting such fine-grained control is insane or not, it is exactly what I understand Nixos to be advertizing. So of course, I would indeed expect the ability to remove basic packages (e.g. sudo, vi, file and window managers) by means of the config file. Like reproducible builds, that was one of the main selling points after all.
Guix has Nonguix
@@seerlite5256 Yup. Pretty essential if you're running x86. Choice of firmware and microcode is strictly better then being stuck with whatever buggy and insecure versions you already have
@@seerlite5256 the issue is that Nonguix is source-based only. Also, for some reason, Guix substitute servers are really slow. But otherwise, I much prefer Guix than Nix
I’m so used to the Mac Terminal(MacPorts and Homebrew) and Debian(Kali) apt. But the package manager seems really interesting. I give it a try at both. My first Linux was Gentoo in 2003. So used to apt installation I never liked anything else then BSD based and Debian distros.
love the ease of rollback, will need to check the users it creates at install time and the passwd/keys - but definitely installing it on a test machine.
Thank you
NixOS is really awesome. It's step above all other distros.
If only adoption increased a lot, so that it wouldn't require so much work to solve relatively uncommon problems (because it'd already be done by someone else)...
NixOS is excellent but keep in mind that the advantage of things like Flatpak and Snap is they will run software in a sandbox, which can be helpful if it's a proprietary something that you don't fully trust.
Not only the package manager is very nice, the NixOS distribution as well! Please, have a look and make a review of it as well!😉
you should mention that nix derrivations can be overrided, so you can take any package and just change compilation options or where you get the source from or apply custom patches.
the idea is since it is source based, and deterministic, if you don't override a derivation, you are gonna download it from a binary cache but if you do override it you are gonna compile it.
wow, I can manage so many packages now ! Time to have some fun !!
I've been using Nix/NixOS for almost 8 years now, personally and professionally. It's by far the best OS/package management experience of any distro.
I was literally just thinking today about how I wanted to move away from Arch since each distro seems to have it's own little annoyances that crop up every now and again, but the AUR was just too good. Nix looks amazing!
To be fair nix repos aren’t nearly as complete as the AUR, despite what outlaw said. Actually, there are tons of less popular packages missing, I guess most of the 80000 packages are just some variations/old versions of other packages.
@Mattia Borda it's uncommon to have multiple versions of things. Nix allows you to reference old versions from nixpkgs so there's not much reason to keep old versions in nixpkgs.
@@BrianMcKennaPuffnfresh I see, then how do yoou explain the fact that in nixpkgs there's so many missing packages compared to the AUR?
@Mattia Borda which ones? It's very rare that I find something in AUR but not in nixpkgs. Usually it's the other way around.
@@BrianMcKennaPuffnfresh denaro, komikku, zapzap, telegrand, identity, avvie, video downloader, cavalier, upscaler, gradience...
This is stuff I found in just 5 minutes. Can you name me packages from nixpkgs not in the AUR?
YEAH!!! hyped for this one
Interesting. Very nice. *Let's see you GUIX Package Manager* review.
i recently made a vm where i started setting up a usable desktop in nixos and mo releases a nix-related video.
a kewl coincidence for sure.
finnally you did a video on nixos
Do a video on setting up and securing a homelab
Glad to see some Nix representation 🎉🎉
I'll keep using homebrew because it "just works" for now, but it's good to know that there's an alternative.
Important note: opengl and vulkan is not working out of the box in non nixos systems. So gui apps will work but without acceleration
Fof proprietary stuff, like Zoom using flatpak actually makes sense.
I watched this video when it first dropped. I had no clue what you were talking about nor what I was looking at. And now I come desperately looking for a replacement to ‘apt’.
the reason behind the high number of packages in Nix is multi versions of a package but AUR packages most of them are unique
You are right, but AUR has 12879 contributors while Nix has 2400, pretty impressive that these contributors could package so many software.
AUR is still unbeatable, Arch is practically anywhere in the linux community, props to them
data according to repology
This is false. With a few exceptions, a given release of Nixpkgs has only one version of each package.
@@vpxc Yeah, even though you can install other versions simultaneously (e.g. using overlays) in your Nix package manager
Nix is great, I just wish it had more GUI frontends for things. I prefer using a GUI (using Octopi atm) to manage my packages, and Nix doesn't seem to have anything like that yet.
All amazing programs have a shitty/no ui
there's a guy working on making that, and honestly the way nix /nixos is, it literally is begging for a ui to be made for it, all the settings and whatnot could be toggled by a nice ui...
@@Heynmffc true
@@luisortega8085 is it open source or kept under the table for now?
@@arjix8738 it's okpen source but i dont remember the name
Thank you. I am going to go and do that right now.
Try to break mint with dmenu, that is.
When you compare the package number between Nix and the AUR, you are forgetting that the AUR does not contain the packages in the official repos (13754 as of right now).
The are a lot of duplicates between the two, mainly from numbered releases in the main repos and guy trunks un AUR, which makes it harder to really compare.
With mentioning about Nixpkgs is the fact that the entire thing is just a normal GitHub repository that anyone can submit issues and pull requests to. Even when an updated version isn't in nixpkgs-unstable, someone's probably already made a PR to fix that and its possible to install directly from that PR rather than waiting for it to get merged.
Thanks Kenny -- this is one of your best ones yet. I am still a bit fuzzy though ... since AUR is pretty inclusive, why would an arch user bother installing the Nix PM? PS I have never broken my system installing packages. Those darn developers did it. ;-)
I am a noob who is hopping distos and this is really interesting!
Unironically very impressive
Good video.
Thank you Luke
Hey, would love to see you do a video on Paranoia Text Encryptor. Its not on Nix package manager or AUR - only available as a .deb package. Would like to see you getting it working on an Arch based or Redhat based distro!
NixOS and its modules have changed how I use Linux. I'm running NixOS on an ARMv7 SBC called the "Banana Pi M2 Zero" and it works great
I have and will continue to install stuff like zoom per flatpak. I know it ain't perfect, but the added isolation makes me sleep better.
But for some other Software Nix is a good fit.
How does it work on all distros? Is it like snap or flatpak? How big are the packages compared to apt packages? How does telhe performance compare to apt packages?
Oh god, to install packages I used commands for Nix OS and could not understand why nothing worked. I reinstalled Nix 10 times, I tried single-user and multi-user version - all for nothing. Only a week later I rewatched the video and finally noticed 🥳
But can you run programs installed with nix from an application launcher? Last time I tried the corresponding desktop files aren't detected since they're in a non standard location
Are those repos up to date? Do they get auto updated like snaps or flatpaks?
Don't forget the Scheme version of Nix, GNU Guix
Yep, it's definitely smaller but in my experience way more polished.
I'm playing with it on a second laptop and it's just really nice!
aint nobody touching that godforsaken programming language bro
Finally I do understand Nix.
You should make a video on MicroOS - the immutable distro by openSUSE.
Open SUS 😳
I recognize your voice from the udemy go course. Best one I've done so far.
what the course was about?
@@rahilarious how to rob people at gunpoint
@@TheSuperBoyProject so it was boring...No use for me
What do you recommend over spotify? ncmcpp and only local files? How would you find music--only on youtube/soundcloud and then yt-dlp?
soulseek
Kenny have you taken a look at “looking glass”? It’s a pretty neat project.
I have no plans to stop using linux anytime soon, but this was my biggest complaint about it. Not necessarily that you can't install everything, but that there are so many different sources, none of which are entirely complete.
There is still some work to do, particularly for nonfree software (eg steam, spotify, etc client is free, but not open source) can still be a pain if its only built for your distro, but if nix takes over I can see that problem being resolved as well.
Distrobox?
@@jaimeCabra certainly helps, but still not a perfect solution.
For example, one particular piece of software I struggled to get installed properly on fedora was Aesprite. To my knowledge, thats not on any distros package manager.
Actually, thinking about it again, I think that might be the real problem. There are quite a few near complete solutions (distrobox, flatpak, nix), but nothing all encompassing.
I guess the ideal in my eyes would be a compatibility layer that allows software built for one distro to be installed on others, e.g. installing .deb on fedora. Basically, the linux version of windows .exe or macos .dmg
@@bigbodge maybe it needs an .appimage? I installed silverblue on my laptop and it's such a pain to overlay packages that I have been levaraging all the options: appimags, flatpaks, distrobox, compiling from source. I would complain about this being a linux problem, but for windows and mac powerusers their a lot of ways to deal with software installs too
@@jaimeCabra app images have always worked poorly for me, especially with getting them integrated with the application menu
I wouldn't even mind losing the application menu as a whole, and just launching all software from the terminal/file manager, the problem comes when 80% of your software is in this application menu and 20% can only be accessed through the executable.
As a small time Nix user (replit nix), it is pretty good
Remember when Linus (the RUclipsr) was trying to use a distro and somehow while updating the system deleted the whole desktop environment. XD
LTT is an entertainment company making money off of failures.
and that's why I won't recommend popos
common things in linux: steam wants to delete systemd
And system76 used that as an excuse to bake all sort of bloat (e.g. indexing) into the distro so you can't uninstall it with a single simple command.
@@oczi1660 not common lmao. He is just retarded
I am a freelance coder and a lot of clients insist on using Skype for communication. I have the aur version of skype installed and so far it doesnt do anything shady other than setting itself to open at startup
It looks really interesting, but I'm curious how it works in the different libs and kernels?
If I want to install e.g. GIMP on Ubuntu 22.04 and Fedora36, the kernel in both isn't the same and the libs that GIMP might use might also be different, because the GIMP on Fedora might be a newer version.
Does the NixPkgMgr install the necessary libs in the same "installation location".
And if so, if another package also needs the same libs that I previously installed for GIMP, does the package manager link to the previously installed libs or does it redownload them and installs them to the new location for the new package. So that I end up with twice the amount of libs
I don't know how it handles differing kernels, but for now traditional dependencies, it entirely did its own thing and ignores any existing libraries in your system. If two packages use the same library, but different versions or slightly different build settings, then it will install both, but it also has a few levels of content addressing letting them share identical files. If the two instances are completely identical in build operations, then installing the second will be skipped entirely since it'd have the same install directory.
For me different package manager is part of the fun when distrohopping
I distro hop by using linux containers (LXC)
You should've talked more about the nix-shell command since it is the only thing making the package manager unique besides scripting with the nix language and rolling back. It should also be noted that in NixOS you are barely ever going to use the nix-env command since there is a more declarative way to install packages through the configuration.nix file.
true I really don't understand why Nix team still maintain nix-env.
if you do want imperative package management with nix, then use `nix profile` instead
@@olifloof The only issue with that is that Home manager seems to use nix-env behind the scenes and doesn't work if you use nix profile. Though with Home manager, I'd only use either when I want something quick and dirty and don't know if I want to keep something in the config.
Does nixos decay faster then arch?
That is, if i install a package on arch, let's say emacs (is that a package?), My understand is that it will do a rolling update without my intervention. I'll just load my computer and be on the latest.
Nixos, how ever, will use a specific version of emacs that i picked when I installed it. And i would have to update it manually.
Is any of what i just said accurate?
I get problem in installing Nvidia driver in NixOS. It can't run seamlessly same as Fedora
It would be nice if you could cover on "Google Vs Competition Commission of India"
Please cover Norton password manager breached news in a video explaining the credential stuffing attack.
thanks, i will stay with portage
If I restore snapshot will it delete my files that I created since instalation ?
Reminds me of python package management with conda
The most interesting thing about nix is that it's just completely different from every other package manager on every single level. From the way their virtual filesystem works to the way their dependencies are resolved, and even though it takes a lot of effort to understand why it's done in such an unusual way, but if you dig into it, you realize how well it synergises with itself and why its architecture makes perfect sense.
The only downside is that it is basically alien tech. It can be too unusual for normies. It can be too much to understand why it's done the way it's done.
But I actually recommend going next level and switching to NixOS -- it's an OS based on nix architecture.
The fact that I have a backup of my configuration.nix makes me absolutely fearless on my computer. Oh and the rollback too. I used that just today when I somehow managed to break Alacritty. How does one even break a terminal emulator?
To me nix was a life saviour, used void Linuxbefore which was good tbh, but when I messed up something and had to wipe the system, getting back my exact same old config was painful.
With nixos, I just had to take the configuration.nix file and run nixos-rebuild switch. and everything including the software I use was back i seariously can't go back to any normal distro now
I think I love the technology, it’s just the way to interact with it is unfriendly and I think that deters a lot of potential users. Wishing it was more straightforward like: nixpkg install … and nixpkg uninstalll … and nixpkg search …. Personally I find that with PacMan too
For Mac OSX: first Fink, then MacPorts, then HomeBrew, and now Nix?
nix is less of a mac package manager and more a supporting-every-possible-platform package manager, but yeah mac users really are spoiled for choice
that being said I'd totally just wait for asahi to be good enough to daily drive before I actually pick one up myself
As long as Apple doesn’t provide something like that, yes..
I get used to pacman manager and Arch Wiki which are the best in GNU/Linux land.
Wish you best luck with your choice.
having Nix as your package manager is like having a friend who owns a PS1 and all the latest games like Crash Bandicoot
YAAAAAASSSSSSS
I tried Nix, but the desktop icons are all missing for the packages it installed. I try to change the XDG_DATA_DIRS variable in my ~/.profile but it didn't work. I guess it's just good for some command line tools for your dev environment. I'll probably stay with system package manager for now
Exactly the same problem I had..
does anyone have any recommendations on how I can try out distros in a VM on windows? I tried mint on virtual box with i3 as a window manager, I wanted to try programming and just using it in general a bit there to get a feel for it so I can swap over completely in the between semester holiday but it feels really slow. I gave it 4 cores, 8GB of ram... all those shenanigen.
I also tried hyper-v earlier but it was even worse cuz it had a weird delay for my input. (and yes I know it causes virtualbox to lag and disabled it and everything related before trying out virtualbox)
Mental Outlaw has done a few videos on setting up vmware. dig thru them a bit and see if that helps.
i cant see how this is better that compiling the package and every single dependency from pkgsrc
With Nix you get a binary cache for every derivation (package) in Nixpkgs, so you don't need to compile anything. At the same time, Nix makes it trivial to change anything about a derivation (such as the source version or build flags), in which case you will transparently compile the package with those changes included when rebuilding your system.
@@maxwell-lt Yes, in three words "Nix is bloat". You could have saved yourself some time and keyboard wear.
"Gentoo all the way" for me.
Could you put this on Debian stable and not have to worry about way too old libraries?
Can I download Microsoft Zune? I need to sync my music to my Zune somehow. Please help...
cool
Librewolf constantly falls behind on firefox updates. This is a security nightmare. Especially because it’s very trivial to just install ublock origin yourself and change the few settings to your liking.
Lol seriously
how does it compare to pacman?
This _seems_ really great. I could see replacing homebrew with nix, on my macOS system. But, on my Debian-based system - my daily driver OS - I am concerned about dependency issues. For an Arch-user, I imagine resolving dependency issues are quite common. On my Debian-based system, however, I have had _no dependency issues._ Installing and upgrading packages, for 3+ years, has _never_ broken my system - nor broken any app on my system.
I have _no (current) experience_ resolving dependency issues. The last dependency issues I resolved were on Fedora 7, in 2008.
Will I regret running nix package manager on a stable, Debian-based distro?
nix resolves all dependencies by itself and never messes with the host system. It keeps all its files in the nix directory so you don't have to worry.
@@lydedreamoz - Cheers, buddy!
So, this is nice for some general packages for end users doing end usery stuff. However, this won't fly whatsoever for any enterprise or development application. The reason specific repos and managers are used is due to availability of specific application and library versions, as well as niche things like legacy RAID drivers and such, that run on specific distributions. They've been pre-designed to work on the libraries, kernel versions, etc. of a specific distribution. For example, Red Hat/CentOS/Rocky/Alma are designed around specific versions of things, and simply trying to install packages from some "universal" package manager means you may run into all sorts of dependency hell. I suppose this can be used in conjunction with your distro's package manager de jur, but it has very limited scope in the realm of Linux.
A nix-shell will not touch your systems installed libraries. It isolates dependencies of every package. So if some package needs a different version of, say glibc, it will install it, and symlink it for that one package. Other packages are not affected by that different glibc version. Read up a bit about nix. It's one of the few package managers that actually kind of solve dependency hell.
The only problem that you mention that I could see actually being a real one is the kernel version.
Development environments are actually a very popular use of Nix within the community, and one of its strongest use cases. It's also essentially immune to that kind of dependency hell by design. On a 'foreign Linux' system (non-NixOS Linux), the only things Nix packages use from the base system are the kernel and (optionally the OpenGL and Vulkan implementations).
I encourage you to look deeper. There's lots of great conference talks here on RUclips about commercial uses of Nix at various scales. :)
I prefer Gentoo prefix to nix, but that's just my preference.
Me too, I have been on Gentoo since 2003 now. NixOS just says to me "Linux bloat for newbies forever staying newbies".
Coincidentally when nix started
@@billeterk No coincidence. Nix started in 2015, Gentoo some time around 2000 as a concept. There's no relationship between the two.
@@terrydaktyllus1320 eh? Nix was released in 2003.
@@billeterk 2015, according to Wikipedia. But even if it is 2003, it has nothing to do with Gentoo.
Can it run on WSL (Windows Subsystem for Linux)?
The best thing about NixOS is switching to RHEL because you can never find, let alone hire, people who know NixOS good enough to drive it inside an enterprise environment.
When Jason Tatum isn’t putting up buckets he’s tracking us Linux stuff on RUclips
I once made this my OS on my laptop but for whatever reason switched to Arch.
Finally
Would the nix packages work on non-systemd distros like artix or void, or would there be breakage?
I was just about to ask that too.
and just scrolled down a bit further to see the answer. According to @pinkcreeper100 the packagemanager itself depends on systemd. So no new packagemanager for me I guess. What a pity.
@@gerhardroediger8331 i did some additional research, and it seems the void bois got it to work on the newer runit editions. it takes a bit more tlc though
non-systemd sisters...it's over