Тёмный
No video :(

Nix - The Best Package Manager 

Mental Outlaw
Подписаться 661 тыс.
Просмотров 156 тыс.
50% 1

Опубликовано:

 

6 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 585   
@agooseloose2183
@agooseloose2183 Год назад
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!
@travis5732
@travis5732 Год назад
That's very interesting, will give it a try.
@night_h4nter
@night_h4nter Год назад
sadly, it can't actually partition the disks
@dfgdfg_
@dfgdfg_ Год назад
*ansible has entered the chat*
@feschber
@feschber Год назад
I was planning on maintaining my config with stow + ansible + git but this almost sounds a lot more convenient
@night_h4nter
@night_h4nter Год назад
@@dfgdfg_ ansible isn't really declarative and things you get with it aren't particularly reproducible
@BrianMcKennaPuffnfresh
@BrianMcKennaPuffnfresh Год назад
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.
@krunk7133
@krunk7133 Год назад
What ereader?
@BrianMcKennaPuffnfresh
@BrianMcKennaPuffnfresh Год назад
@@krunk7133 Kobo Clara HD and Kobo Clara 2e
@mysterious_czrs
@mysterious_czrs Год назад
What is the point of instaling nixos on a game console besides for fun ?
@BrianMcKennaPuffnfresh
@BrianMcKennaPuffnfresh Год назад
@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!
@lol-wc3ld
@lol-wc3ld Год назад
@@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?
@Redyf
@Redyf Год назад
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
@aryan37
@aryan37 Год назад
if you don't mind me asking, how'd you get nvidia drivers working + is nvidia optimus support good?
@orlando7968
@orlando7968 Год назад
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
@Ski4974
@Ski4974 Год назад
Same, also using Hyprland + a Nvidia GPU after switching to NixOS from Arch haha. Literally identical.
@supriyosarkar1806
@supriyosarkar1806 Год назад
What’s the benefit you get ?
@kpcraftster6580
@kpcraftster6580 Год назад
@@aryan37 Their wiki has a page dedicated to nvidia drivers. Non-optimus seems to be supported, but optimus gets a bit iffy.
@studsygamer717
@studsygamer717 Год назад
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
@UnknownGamer40464
@UnknownGamer40464 Год назад
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.
@MrCarlinios
@MrCarlinios Год назад
@@happygofishing that's my first option
@mskiptr
@mskiptr Год назад
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
@nil0bject
@nil0bject Год назад
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
@Tatar_Piano
@Tatar_Piano Год назад
That's not true
@RossComputerGuy
@RossComputerGuy Год назад
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.
@zyansheep
@zyansheep Год назад
I never thought I'd see the day my favorite Linux RU-vidr reviews my favorite package manager :)
@kpcraftster6580
@kpcraftster6580 Год назад
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
@johanngambolputty5351
@johanngambolputty5351 Год назад
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.
@Gunzy83
@Gunzy83 Год назад
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.
@surewhynot6259
@surewhynot6259 Год назад
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.
@Asrashas
@Asrashas Год назад
@@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.
@realcartoongirl
@realcartoongirl Год назад
maybe he is gay
@lphoogenboom
@lphoogenboom Год назад
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.
@X8551516
@X8551516 Год назад
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.
@mihaifufezan2216
@mihaifufezan2216 Год назад
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.
@cybersechs1368
@cybersechs1368 Год назад
WUT?? Whats that called?
@folksurvival
@folksurvival Год назад
@@cybersechs1368 NixOS.
@mrbanana6464
@mrbanana6464 Год назад
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.
@mihaifufezan2216
@mihaifufezan2216 Год назад
@@mrbanana6464 you missed the point entirely.
@luisortega8085
@luisortega8085 Год назад
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.
@angeldude101
@angeldude101 Год назад
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.)
@starlederer
@starlederer Год назад
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.
@hidekxyz
@hidekxyz Год назад
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.
@iskamag
@iskamag Год назад
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"
@krator3
@krator3 Год назад
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.
@iskamag
@iskamag Год назад
@@krator3 >installing something proprietary is more difficult. based (if it was true)
@yavko
@yavko Год назад
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.
@baguettedad
@baguettedad Год назад
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!
@chessai2121
@chessai2121 Год назад
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.
@jamescampbell6728
@jamescampbell6728 Год назад
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
@speedytruck
@speedytruck Год назад
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.
@ultravioletiris6241
@ultravioletiris6241 Год назад
Lol seriously
@kpcraftster6580
@kpcraftster6580 Год назад
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.
@genericgamer1319
@genericgamer1319 Год назад
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
@kpcraftster6580
@kpcraftster6580 Год назад
@@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.
@seerlite5256
@seerlite5256 Год назад
Guix has Nonguix
@mskiptr
@mskiptr Год назад
@@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
@Gabriel-mf7wh
@Gabriel-mf7wh Год назад
@@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
@FirstnameLastname-we6dh
@FirstnameLastname-we6dh Год назад
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!
@harmonylivingston3460
@harmonylivingston3460 Год назад
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!
@mattiaborda
@mattiaborda Год назад
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.
@BrianMcKennaPuffnfresh
@BrianMcKennaPuffnfresh Год назад
@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.
@mattiaborda
@mattiaborda Год назад
@@BrianMcKennaPuffnfresh I see, then how do yoou explain the fact that in nixpkgs there's so many missing packages compared to the AUR?
@BrianMcKennaPuffnfresh
@BrianMcKennaPuffnfresh Год назад
@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.
@mattiaborda
@mattiaborda Год назад
@@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?
@Woodywoodah
@Woodywoodah Год назад
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.
@knofi7052
@knofi7052 Год назад
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!😉
@Eliotime3000
@Eliotime3000 Год назад
Interesting. Very nice. *Let's see you GUIX Package Manager* review.
@sinity8068
@sinity8068 Год назад
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)...
@Spiderfffun
@Spiderfffun 5 дней назад
seems like you are getting your wish lol
@ernestoditerribile
@ernestoditerribile Год назад
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.
@Random_Internet_Dude
@Random_Internet_Dude Год назад
Do a video on setting up and securing a homelab
@SmileyBMM
@SmileyBMM Год назад
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.
@Heynmffc
@Heynmffc Год назад
All amazing programs have a shitty/no ui
@luisortega8085
@luisortega8085 Год назад
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...
@numbertumbers529
@numbertumbers529 Год назад
@@Heynmffc true
@arjix8738
@arjix8738 Год назад
@@luisortega8085 is it open source or kept under the table for now?
@luisortega8085
@luisortega8085 Год назад
@@arjix8738 it's okpen source but i dont remember the name
@egorandreevich7830
@egorandreevich7830 Год назад
Important note: opengl and vulkan is not working out of the box in non nixos systems. So gui apps will work but without acceleration
@alkeryn1700
@alkeryn1700 Год назад
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.
@nnawaff
@nnawaff Год назад
the reason behind the high number of packages in Nix is multi versions of a package but AUR packages most of them are unique
@hidekxyz
@hidekxyz Год назад
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
@hidekxyz
@hidekxyz Год назад
data according to repology
@vpxc
@vpxc Год назад
This is false. With a few exceptions, a given release of Nixpkgs has only one version of each package.
@hidekxyz
@hidekxyz Год назад
@@vpxc Yeah, even though you can install other versions simultaneously (e.g. using overlays) in your Nix package manager
@winnie8614
@winnie8614 Год назад
Fof proprietary stuff, like Zoom using flatpak actually makes sense.
@ProLessSkill
@ProLessSkill Год назад
You should make a video on MicroOS - the immutable distro by openSUSE.
@TheSuperBoyProject
@TheSuperBoyProject Год назад
Open SUS 😳
@Dylyinyang
@Dylyinyang Год назад
wow, I can manage so many packages now ! Time to have some fun !!
@patjustpat8178
@patjustpat8178 Год назад
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).
@angeldude101
@angeldude101 Год назад
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.
@FunkyDeleriousPriest
@FunkyDeleriousPriest Год назад
I am so excited to see you did a Nix video!!! Coincidentally, I have to present about Nix at my job later this month.
@bigbodge
@bigbodge Год назад
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.
@jaimeCabra
@jaimeCabra Год назад
Distrobox?
@bigbodge
@bigbodge Год назад
@@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
@jaimeCabra
@jaimeCabra Год назад
@@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
@bigbodge
@bigbodge Год назад
@@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.
@fargoflagrant7796
@fargoflagrant7796 Год назад
I'll keep using homebrew because it "just works" for now, but it's good to know that there's an alternative.
@neko-san5965
@neko-san5965 Год назад
How would this package manager not introduce the same "bloat" as flatpaks when anything installed obviously needs dependencies? 🤔
@voigondev
@voigondev Год назад
A solid, professional and through video, just like all of the others thank you for your content!
@puffyviper
@puffyviper Год назад
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 🥳
@ccp_fact_checker
@ccp_fact_checker Год назад
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
@liegon
@liegon Год назад
This is probably extremely useful in creating docker/podman images with exactly the software that you need.
@vpxc
@vpxc Год назад
Yep! Nix is pretty much the fastest way to create reproducible Docker images
@-_-Girthbrooks-_-
@-_-Girthbrooks-_- Год назад
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’.
@regbot4432
@regbot4432 Год назад
For me different package manager is part of the fun when distrohopping
@atpray
@atpray Год назад
I distro hop by using linux containers (LXC)
@hidekxyz
@hidekxyz Год назад
I think all this begins with the idea of comparing a Deployment Domain to a programming language software, whereas - memory = disk - value, object = file - address = path name - pointer dereference = file access - pointer arithmetic = string operations - dangling pointer = path to absent file - object graph = dependency graph - languages without pointer discipline (e.g. assembler) = typical Unix-style deployment - languages with enough pointer discipline to support conservative garbage collection (e.g. C, C++) = Nix - and et cetera... Thinking that way, we could apply programming language concepts into operating systems, and consequently applying the functional paradigm into that. The idea of transforming systems, packages, shells into pure functions is pretty interesting in my opinion, every machine is a turing machine and theoretically could run the same software in the same way, but the things we do imperatively in our system cause side-effects that we cannot reason about later, which then creates another environment in which packages can break. Nix and NixOS however offers a way to track our side-effects in our system by declaring in a config file using the Nix lang, this is way better than just performing these side-effects imperatively and then try to remember then later. Isolated builds also forces the pkg creators to declare it's dependencies using the Nix package manager, which also enforces to declare the version of the pkg, and it's SHA256, having all these information allows the Nix package manager to have multiple versions of the same pkg used by different programs, that's why /nix/store is a read-only dir. Nix of course have it's drawbacks since there are some programs which does not support this type of functional package management, but there are escape hatches like docker and the buildFHSUserEnv fn from nixpkgs repo. Also, docs are not too good, the community is divided by the use of flakes and the new nix command, and learning curve is steep since some knowledge of functional programming is needed to do complex stuff, but overall is pretty good (especially for power users) and I cannot go back to use traditional distros and package manager nowadays.
@miuravitor
@miuravitor Год назад
facts
@angeldude101
@angeldude101 10 месяцев назад
This is pretty much exactly how Nix was initially conceived. The PHD thesis for which Nix was the implementation has Chapter 3 titled "Deployment as Memory Management", and includes sections on "The file system as memory" and "A pointer discipline", which are exactly what you started describing. Nix also literally has its own garbage collector to delete old packages that are no longer being referenced by packages pinned as "gc roots". It technically could delete them immediately when they stop being referenced, but packages are often a lot slower to build than most functions are to compute, so they're effectively memoized and a newer package can reference a previously unreachable package without having to rebuild it.
@plamenrogachev2562
@plamenrogachev2562 Год назад
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.
@kexec.
@kexec. Год назад
true I really don't understand why Nix team still maintain nix-env.
@olifloof
@olifloof Год назад
if you do want imperative package management with nix, then use `nix profile` instead
@angeldude101
@angeldude101 Год назад
@@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.
@seanwieland9763
@seanwieland9763 Год назад
For Mac OSX: first Fink, then MacPorts, then HomeBrew, and now Nix?
@orlando7968
@orlando7968 Год назад
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
@ws13bf
@ws13bf 5 месяцев назад
As long as Apple doesn’t provide something like that, yes..
@Ruben-tm3fg
@Ruben-tm3fg Год назад
Remember when Linus (the RU-vidr) was trying to use a distro and somehow while updating the system deleted the whole desktop environment. XD
@tacticalcenter8658
@tacticalcenter8658 Год назад
LTT is an entertainment company making money off of failures.
@TwelveLetter956
@TwelveLetter956 Год назад
and that's why I won't recommend popos
@oczi1660
@oczi1660 Год назад
common things in linux: steam wants to delete systemd
@kpcraftster6580
@kpcraftster6580 Год назад
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.
@bradleycooper5436
@bradleycooper5436 Год назад
@@oczi1660 not common lmao. He is just retarded
@VinnyMeller
@VinnyMeller Год назад
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
@yahyae420
@yahyae420 Год назад
I just discovered this channel. This is amazing
@nekomakhea9440
@nekomakhea9440 Год назад
Don't forget the Scheme version of Nix, GNU Guix
@mskiptr
@mskiptr Год назад
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!
@your-mom-irl
@your-mom-irl Год назад
aint nobody touching that godforsaken programming language bro
@duncanw9901
@duncanw9901 Год назад
Consider looking into GNU Guix too; it's a bit smaller, but IMO far more principled in every sense.
@vtoldaccount1222
@vtoldaccount1222 Год назад
this package manager seems cool but for my use case i see little reason to use it over flatpaks
@generallyunimportant
@generallyunimportant Год назад
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.
@JobStoit
@JobStoit Год назад
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
@Ultrajamz
@Ultrajamz Год назад
Reminds me of python package management with conda
@lightraysone
@lightraysone Год назад
I prefer Gentoo prefix to nix, but that's just my preference.
@terrydaktyllus1320
@terrydaktyllus1320 Год назад
Me too, I have been on Gentoo since 2003 now. NixOS just says to me "Linux bloat for newbies forever staying newbies".
@billeterk
@billeterk Год назад
Coincidentally when nix started
@terrydaktyllus1320
@terrydaktyllus1320 Год назад
@@billeterk No coincidence. Nix started in 2015, Gentoo some time around 2000 as a concept. There's no relationship between the two.
@billeterk
@billeterk Год назад
@@terrydaktyllus1320 eh? Nix was released in 2003.
@terrydaktyllus1320
@terrydaktyllus1320 Год назад
@@billeterk 2015, according to Wikipedia. But even if it is 2003, it has nothing to do with Gentoo.
@jjamesmartiin
@jjamesmartiin Год назад
Glad to see some Nix representation 🎉🎉
@whatthefunction9140
@whatthefunction9140 Год назад
I recognize your voice from the udemy go course. Best one I've done so far.
@rahilarious
@rahilarious Год назад
what the course was about?
@TheSuperBoyProject
@TheSuperBoyProject Год назад
@@rahilarious how to rob people at gunpoint
@rahilarious
@rahilarious Год назад
@@TheSuperBoyProject so it was boring...No use for me
@9SMTM6
@9SMTM6 Год назад
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.
@veljkonikolic7788
@veljkonikolic7788 Год назад
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?
@stopcensoringmen5044
@stopcensoringmen5044 Год назад
Thank you. I am going to go and do that right now. Try to break mint with dmenu, that is.
@chbrules
@chbrules Год назад
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.
@Asrashas
@Asrashas Год назад
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.
@vpxc
@vpxc Год назад
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 RU-vid about commercial uses of Nix at various scales. :)
@michaeldeloatch7461
@michaeldeloatch7461 Год назад
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. ;-)
@replikvltyoutube3727
@replikvltyoutube3727 Год назад
What about guix?
@sindurwavesismaturf
@sindurwavesismaturf Год назад
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
@LuizCarlos-my1wr
@LuizCarlos-my1wr Год назад
I am a noob who is hopping distos and this is really interesting!
@falxie_
@falxie_ Год назад
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
@M0rn1n6St4r
@M0rn1n6St4r Год назад
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?
@lydedreamoz
@lydedreamoz Год назад
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.
@M0rn1n6St4r
@M0rn1n6St4r Год назад
@@lydedreamoz - Cheers, buddy!
@VSteam81
@VSteam81 Год назад
As a small time Nix user (replit nix), it is pretty good
@LokarinOn
@LokarinOn Год назад
Unironically very impressive
@Abhinav_Nayana_Sailen
@Abhinav_Nayana_Sailen Год назад
Yo Luke, can you make a tutorial for self hosted vpn since you say all of them are scams?
@edwardjewell9986
@edwardjewell9986 Год назад
ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-Lk_v6Q0YsNo.html
@TheSuperBoyProject
@TheSuperBoyProject Год назад
He already has
@maurolimaok
@maurolimaok Год назад
Finally I do understand Nix.
@gutoguto0873
@gutoguto0873 Год назад
Kenny have you taken a look at “looking glass”? It’s a pretty neat project.
@Stojke1001
@Stojke1001 Год назад
Been preaching nix for years
@Rooot-username
@Rooot-username Год назад
When Jason Tatum isn’t putting up buckets he’s tracking us Linux stuff on RU-vid
@stevejobs2494
@stevejobs2494 Год назад
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!
@hyperboreanpunk
@hyperboreanpunk Год назад
finnally you did a video on nixos
@cattohappy9263
@cattohappy9263 Год назад
You may also want to try Distrobox. Didn't have a chance to try it yet tho
@YannMetalhead
@YannMetalhead Месяц назад
Good introduction.
@HumbleHuman-k7g
@HumbleHuman-k7g Год назад
I get used to pacman manager and Arch Wiki which are the best in GNU/Linux land. Wish you best luck with your choice.
@pal2378
@pal2378 Год назад
YEAH!!! hyped for this one
@Alexander_Sannikov
@Alexander_Sannikov Год назад
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.
@azareii
@azareii Год назад
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?
@klink_75
@klink_75 Год назад
having Nix as your package manager is like having a friend who owns a PS1 and all the latest games like Crash Bandicoot
@Being_Joe
@Being_Joe Год назад
Thank you Luke
@padgerman
@padgerman Год назад
Maybe I'll have to nix Homebrew in favor of Nix
@angeldude101
@angeldude101 Год назад
I'm pretty sure that that usage of "nix" is more when the package manager got its name than from Unix / "*nix".
@sm0na
@sm0na Год назад
@@angeldude101 You're right, it's named after how it "nixes" the outside environment when building packages.
@papabones8753
@papabones8753 Год назад
What about flatpaks? Zoom, Spotify etc is on there, too.
@Xiefux
@Xiefux Год назад
zoom and spotify are proprietary spyware, you dont want to use them
@papabones8753
@papabones8753 Год назад
@@Xiefux Agreed, he did mention those though(watch the video). My question is why install one package manager over the other, lol.
@glitchy_weasel
@glitchy_weasel Год назад
Interesting package manager. I wonder how they assure that it will run on any distro. Are you sure is not using some kind of containers, like flatpak/snap?
@angeldude101
@angeldude101 Год назад
It installs everything into its own root level directory; /nix. Building packages is sandboxed, but running them keeps them isolated entirely through clever use of the filesystem rather than containers. For closed-source applications that require an FSH compliant system like Steam, Nix sets up a chroot when running them.
@d3stinYwOw
@d3stinYwOw Год назад
If you comment on Nix, then why not on Guix, which is similar to Nix, but uses Guille/Scheme, and it's Stallman-approved? ;)
@rmoog1019
@rmoog1019 Год назад
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.
@_ergdev
@_ergdev Год назад
thanks, i will stay with portage
@anvrkx5407
@anvrkx5407 Год назад
i cant see how this is better that compiling the package and every single dependency from pkgsrc
@maxwell-lt
@maxwell-lt Год назад
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.
@terrydaktyllus1320
@terrydaktyllus1320 Год назад
@@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.
@dexedrine404
@dexedrine404 Год назад
What do you recommend over spotify? ncmcpp and only local files? How would you find music--only on youtube/soundcloud and then yt-dlp?
@ezu5131
@ezu5131 Год назад
soulseek
@grumpyspoder
@grumpyspoder Год назад
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
@ilmarszogla6536
@ilmarszogla6536 Год назад
Good video.
@camwha5904
@camwha5904 9 месяцев назад
3:30 Could you do a video on how to check if a script is dangerous before running it? I’ve heard a lot of RU-vidrs say to do that but never explain the how.
@mycommentmyopinion
@mycommentmyopinion 7 месяцев назад
Download the script (don't run it!), open it with a text editor and check for suspicious URLs or weird behavior (like trying to run commands that an install script shouldn't need to run). Ofc you need some programming knowledge and know a little bit of shell 😁
@craigleemehan
@craigleemehan Год назад
"Might need to install Skype to talk to your grandma."
@yibowei9636
@yibowei9636 Год назад
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
@LorenzoBettini
@LorenzoBettini Год назад
Exactly the same problem I had..
@adjusted-bunny
@adjusted-bunny Год назад
nix is awsome!
@Tomb_Raider123
@Tomb_Raider123 Год назад
Please cover Norton password manager breached news in a video explaining the credential stuffing attack.
Далее
First look at Nix package manager
16:18
Просмотров 5 тыс.
Nix flakes explained
7:22
Просмотров 76 тыс.
Linkin Park: FROM ZERO (Livestream)
1:21:01
Просмотров 4,5 млн
NixOS: Everything Everywhere All At Once
15:10
Просмотров 306 тыс.
The New Redpill for Desktop Minimalism
11:28
Просмотров 222 тыс.
Nix Language Explained
8:54
Просмотров 17 тыс.
I was WRONG! This is the BEST Package Manager.
10:25
Просмотров 140 тыс.
Nix and NeoVim
13:38
Просмотров 137 тыс.
Getting Started with Nix
25:49
Просмотров 69 тыс.
OpenBSD Desktops Are For Hackers Only
13:14
Просмотров 199 тыс.
Linkin Park: FROM ZERO (Livestream)
1:21:01
Просмотров 4,5 млн