Discord server: / discord Code blocks from the video: github.com/vimjoyer/devshells... Nixhub: www.nixhub.io/packages/python
Пікірлер: 54
@Xorume.10 ай бұрын
The censored rust logo lol
@vimjoyer10 ай бұрын
The Rust foundation should not see that I recolored it
@Xorume.10 ай бұрын
@@vimjoyer You mean the (Rust™ Foundation™)™?
@Rundik3 ай бұрын
@@vimjoyerjust use crablang
@dillon424810 ай бұрын
At this rate, they should add your channel to the list of documentation resources. Thanks for this!
@technorazor97610 ай бұрын
I've been needing exactly this and struggled to find resources on it. You've quickly become one of my favorite programming KZbinrs -- informative and straight to the point. Thank you!
@vimjoyer10 ай бұрын
Thanks
@vimjoyer10 ай бұрын
Hope you enjoy this video!
@lamprospitsillou632510 ай бұрын
I just love how you go above and beyond in these videos, helping us understand nix on a dipper level !
@gorudonu10 ай бұрын
this is great! We need more nix content on youtube (and also in general). Thank you!
@faccc8 ай бұрын
I'm really grateful for your content. There's not much documentation available, but yours is incredibly concise, clear, straight to the point, and it answers any doubts I may have. Keep it up! I truly believe Nix has great potential and is the future. Documentation is the only problem, but you're definitely addressing that. Hats off to you!
@minatonamikaze26378 ай бұрын
you are so helpful, I just installed nix and you are making things easy for me
@papanito48025 ай бұрын
Your videos are every nicely done, easy to follow and understand. great job
@joaodematte3 ай бұрын
oh man that was exactly what i was looking for!! thank you so much
@akibahmed2299 ай бұрын
Thank you; it was helpful in setting up my development environment.
@hotdog2c10 ай бұрын
Incredible informative!
@NeonGrillz5 ай бұрын
First off, great content! Love your videos and they help me enormously with my journey into Nix. Secondly, should I use Flakes to "clone" my Git repos (via inputs) or should I clone/fetch them manually first and then switch into my dev environment? It would be super convenient to just do it with a single Flake and update with 'nix flake update --update-input my-repo-input'. Also, please make a video on how to handle multiple Git accounts on NixOS and how to switch between them! Like if you have one for personal projects and one for work.
@Redyf10 ай бұрын
Nice video bro 😄
@jarosawszyc82873 ай бұрын
Amazing stuff
@bawahtanah470510 ай бұрын
bro, u just save my life :),
@mawfyy700110 ай бұрын
LETS GOO
@SantiagoFraire10 ай бұрын
Amazing video, thank you! Could you do a video about secrets management? how to get started with agenix or sops-nix. Thanks!
@vimjoyer10 ай бұрын
Maybe
@korigamik8 ай бұрын
what editing software do you use? How do you add voiceover on the presentation? and what's the presentation software?
@vimjoyer8 ай бұрын
I am currently using "motion canvas", but this video was made with blender video editor + personal imagemagick scripts.
@dillon424810 ай бұрын
Do you have an opinion about using the "flak-parts" utilities with nix flakes? Makes a lot of sense to break the home-manager flake up
@vimjoyer10 ай бұрын
I don't necessarily have a strong opinion on whether you should or should not use it, but I want to make a video about flake-parts in the future for those who want to.
@dillon424810 ай бұрын
Definitely tuning in to that one!
@keremcemerturk33610 ай бұрын
Can you also cover about neovim with NixOS🥺
@vimjoyer10 ай бұрын
Sure, that's one of the videos in my to-do list
@minatonamikaze26378 ай бұрын
I use helix btw
@tomjuri2 ай бұрын
How would you use that for graphical ide's like jetbrains ide's though? You could enable the nix shell in the builtin terminal and run your commands in that, but what if you need to use some other feature not available in the terminal?
@vimjoyer2 ай бұрын
Just launch the jetbrains ide from the shell
@pkoch7 ай бұрын
Weclome! :D
@zperk13Ай бұрын
2:18 wouldn't that break if the user has never installed lolcat before? Or does doing the pkgs. thing bring it in from the NixOS online repository? Why doesn't it need to be defined as a build input or something? If it pulls it from online, when does it do the download? Before all the other stuff? Or when it's needed? Because if it does it when it's needed, it'll look like welcome Installing lolcat Whatever nix says when installing stuff to my shell! Which is clearly not the intended effect. Also if it's not in the buildinputs, does it still get put in the flake.lock?
@vimjoyerАй бұрын
It would not break. The packge interpolation evaluates the lolcat derivation, adding it to your shell dependencies. It will get downloaded after the nix code is evaluated, meaning that if you are in a shell, the lolcat is already there.
@zperk13Ай бұрын
yeah, just tested it to answer my questions in order wouldn't that break if the user has never installed lolcat before? no Or does doing the pkgs. thing bring it in from the NixOS online repository? yes Why doesn't it need to be defined as a build input or something? It's smart enough to figure it out If it pulls it from online, when does it do the download? Before all the other stuff. It doesn't create the example of an unintended output I made Also if it's not in the buildInputs, does it still get put in the flake.lock? Looks like the flake.lock just defines the git revision, so everything shares that (though I saw in another video you can get around that)
@solomonogu139310 ай бұрын
i prefrer and use devenv + direnv this combo is superb
@WhiterockFTP9 ай бұрын
what is devenv all about? I see it‘s built upon nix-shell. A video about that would be amazing
@solomonogu13939 ай бұрын
@WhiterockFTP devenv is nix-shell on steroids So basically, as a developer, i can set up what i need for each project without installing it directly on my machine Now imagine a project requiring node 14 and then your other package needs 18 and the rest you can basically have a specific version of node etc for each project etc (yes nvm) but its its way better because same can be done for php etc also database tools etc Let's say you need an environment where you need a special environment, let's say, for your video work And don't want to install them permanently You can create a folder and setup devenv and thats all no need to be typing nix shell -p and yes state is stored meaning on kill the process when you come back your previous state still exists but you can clear it if you want
@strandingstranger8 ай бұрын
i've tried looking everywhere, but no success in finding any info. please tell me, what's the difference between nix develop and devenv? just "simpler" configuration?
@simonlauer93793 ай бұрын
Is it possible to set an environmental variable that sets SHELL to zsh? Haven’t found a good way yet. Use it with nix-shell and python poetry 🎉
@vimjoyer3 ай бұрын
you can use `--command ` with nix-shell and `-c ` with nix develop
@eldarcfrov87079 ай бұрын
But how can we create different dev environments with each one having specific packages? I still don't get that :/
@vimjoyer9 ай бұрын
Just make multiple flakes, and declare required packages there. You can also have multiple dev envs in the same flake, and they will have packages of the same version.
@eldarcfrov87079 ай бұрын
@@vimjoyer Thank you so much, will do my best to accomplish that.
@vaisakhkm7838 ай бұрын
@@vimjoyerhow can i have pip,cargo and npm packages in the flakes.nix file? Is it even possible?
@vimjoyer8 ай бұрын
@@vaisakhkm783 It depends on the programming language. Python packages can usually be found in nixpkgs. Node packages can either be taken from nixpkgs or npm itself (js is interpreted, so 99% of the packages will work). Cargo's packaging system works really well with nix. Use cargo, and then simply use the pkgs.rustPlatform.buildRustPackage function to quickly build derivations from them.
@vaisakhkm7838 ай бұрын
@@vimjoyer ok thanks, can you provide example for how to take packages from npm itself? one of my issue is, i have MarkdownPreview plugon for neovim, which through tslib not found error... i assumes it's because some ts dependcy not installed, but i don't know how to add that as dependcy to neovim in home manager