Single Command NixOS Config Install

Поделиться
HTML-код
  • Опубликовано: 22 дек 2024

Комментарии • 41

  • @teesh3rt
    @teesh3rt 9 месяцев назад +19

    and this is why i switched to nixos. i sometimes need to have stuff synced up with multiple machines, and then i saw nixos. i thought "no way it can just sync up my settings and apps with a single command", i was wrong. i like it here in nix land.

  • @wildestweston
    @wildestweston 9 месяцев назад +13

    Would love a vid where you step through your config at a high level and explain some of the key parts. Some of the very high level concepts you already have vids on, but it would be nice to tie it all together and give beginners a better idea of how they can fork your config and maybe make it more customized to them.

  • @babybabybabybaby12
    @babybabybabybaby12 9 месяцев назад +11

    Awesome! Could you make a video on how to manage the configs with GitHub?

  • @dr_regularlove
    @dr_regularlove 9 месяцев назад +5

    This is awesome. The one hangup for me on doing something similar is I need to get the Nix-SOPS key copied to the right place. iirc you don't have any kind of secret management in your config currently, but if you do, would love to see a video on which approach you chose.

    • @librephoenix
      @librephoenix  9 месяцев назад +5

      I've been eyeing agenix for a while, but haven't tried setting it up yet. I'll definitely check out sops-nix as well though!

  • @honeyfuntime
    @honeyfuntime 2 месяца назад

    yep, this is definitely my end goal with nixos. cool video

  • @MrKristian252
    @MrKristian252 9 месяцев назад +2

    Incredible! NixOS truly is something

    • @DaEpic
      @DaEpic 9 месяцев назад +1

      it can be overwhelming though

    • @abbcc555
      @abbcc555 9 месяцев назад +2

      This oneliner doesn't work though. You can install many other OSs with single command as well that actually work

    • @koye4427
      @koye4427 9 месяцев назад +3

      ​The point of this one-liner is that it installs a fully configured system in one step. Everything is already personalized and setup, with settings, themes, etc. pulled from the repository. There is not another OS that does this.

    • @abbcc555
      @abbcc555 9 месяцев назад

      @@koye4427 Yes, but only in theory. In practise it does not work.

    • @meow-is-edible
      @meow-is-edible 8 месяцев назад

      @@abbcc555 no ,it works 99%. I already have reinstalled remotely three times today. just make sure to use flakes to ensure reproducibility. I even made a script to automatically generate initrd ssh keys,secure boot keys. Only thing I know that can't be configured declaratively is firefox extensions config. Everything else works. You can even make it automatically pirate games, if that's your thing

  • @juhanakaarlehto7754
    @juhanakaarlehto7754 8 месяцев назад +2

    How is home manager bootsrapped to the system?

  • @DaEpic
    @DaEpic 9 месяцев назад

    The most waited vid !! thanks

  • @fergusbeckerleg9326
    @fergusbeckerleg9326 6 месяцев назад +1

    A video on getting this setup with an Nvidia card would be great!

  • @eliankreidler
    @eliankreidler 8 месяцев назад

    This is really nice! But because I am pretty new to NixOS I do not understand how your command installs specific stuff depending on the system? In your flake.nix there is a hard coded systemSettings.profile var. Do you change this variable in git before installing a system with this one command or is there a way to do this dynamically, e.g. based on the hostname? Like when the hostname is nixos take this path and if it is e.g. desktop do that things?

  • @Raftzard
    @Raftzard 6 месяцев назад

    It all worked just as this shows. The only problem for me was the screen size. So weird, just the edges of the screen are not visible. I tried adjusting this on monitor code set up on hyprland but still it remains. Great work!

  • @Abcd-mk9rh
    @Abcd-mk9rh 9 месяцев назад

    Sir i ran this command on fresh nixos no desktop installation and got an error in the end cant remember what it was but after reboot i got sddm and after login itw as fresh hyprland and cont open kiyty or any other keybinds only working keybind was to logout am i misisng somrthing? I just wnat a completely working system and want to learn it as i use it 😅

  • @clinta746
    @clinta746 9 месяцев назад +1

    Could you pass your git url into nix install to get this installed straight from the live ISO? Instead of doing a minimal install and then running it?

    • @librephoenix
      @librephoenix  9 месяцев назад +1

      Haven't figured that out yet, but I'd definitely like to figure that out in the future!

    • @vrashabhsontakke7282
      @vrashabhsontakke7282 3 месяца назад +2

      @@librephoenix It can be achieved using a tool from the nix-community called disko
      I have already made a small install script that I curl pipe and when run it asks for my nix flake and disk device,
      it will partition everything, install nixos, generate hardware-configuration and install everything according to the flake

  • @sascha1461
    @sascha1461 9 месяцев назад

    your tutorials are so amazing! Did you ever encounter any issues with steam? I'm pretty new to nixos and I have this weird thing that in every game I play I have very heavy game freezes for the first couple of minutes I play a new game. Feels like there is something not running async that should be. It gets better over time because I think it caches the stuff that makes it lag but I didn't have this issues on any other distro so far and I was wondering if I'm missing something or if I have to apply any kernel modules or stuff like that. Maybe you are willing to make a gaming related video to show some tweaks for that?

    • @Glightstar
      @Glightstar 9 месяцев назад

      As far as I can remember, this might be due to the option "Allow background processing of Vulkan shaders" being active. Instead, you should disable that and activate "Enable Shader Pre-caching". The options can be found in the Steam Settings under "Downloads". AFAIK, this will sometimes even just download "ready shaders" from the Steam Servers, however it should be noted that the first time starting a game after updating it, starting up might take a bit longer than usual.

  • @nickbanderson
    @nickbanderson 9 месяцев назад +2

    Good morning world

  • @vaisakh_km
    @vaisakh_km 9 месяцев назад

    wow.. cool... i never installed nixos again after i switched over first time.. i am bookmarking this for the future..
    btw, You should blur the bar...

  • @SMOKE3104
    @SMOKE3104 9 месяцев назад

    I was trying to install Doom-Emacs and didn't see a video on it. If you haven't done it, can you make one to show how to install it, if you have, can you please direct me to it?! Thanks for getting me this far!!

    • @librephoenix
      @librephoenix  9 месяцев назад

      Glad you've found the videos helpful!
      I unfortunately haven't done a Nix Doom Emacs video yet, mainly because the way I have my Doom Emacs setup is slightly convoluted. I definitely want to make a video about it soon though!
      In any case, I use nix-doom-emacs (github.com/nix-community/nix-doom-emacs) and here's my full config if you want to see how I get mine setup; the Nix Integration part is probably most important (github.com/librephoenix/nixos-config/blob/main/user/app/doom-emacs/doom.org). Though, tldr about the convoluted part: it won't work with emacs29-pgtk (which is what works best on wayland) unless you patch nixpkgs (github.com/librephoenix/nixos-config/tree/main/patches; github.com/librephoenix/nixos-config/blob/main/flake.nix#L47) and override nix-straight with another patch (github.com/librephoenix/nixos-config/blob/main/flake.nix#L156).

  • @randibprananda
    @randibprananda 9 месяцев назад

    so that command trigger install.sh or every .sh in root directory?

    • @librephoenix
      @librephoenix  9 месяцев назад +2

      It essentially just calls install.sh, which in turn also calls harden.sh (for some slight improved security on system files stationed inside the home directory). More on how that works in a future video though!

    • @randibprananda
      @randibprananda 9 месяцев назад

      @@librephoenix i check your repo and implement your concept. its work in my flake. thanks 😊

  • @spencerallen323
    @spencerallen323 9 месяцев назад

    +10 Respect.

  • @orion1312
    @orion1312 9 месяцев назад

    Just as a heads up if anyone wants to copy the command that's over github, the command has a typo. It's supposed to be "nix run", not "nix-run"
    Idk if there is any other typo or fix cause I'm just trying to test it myself, please tell me if it worked for you!

    • @librephoenix
      @librephoenix  9 месяцев назад +1

      Thanks for catching the typo(s)!

    • @abbcc555
      @abbcc555 9 месяцев назад

      @@librephoenix the command is broken in multiple ways. "nixos you must set the option boot.loader.grub.devices or boot.loader.grub.mirroredBoots to make system bootable" also it doesn't accept nix-command, it says it wants it exactly the way it's already set there.. nice OS indeed

    • @librephoenix
      @librephoenix  9 месяцев назад +1

      That's a known limitation. Currently only works on UEFI (as stated in the repo). I'll add legacy support for VMs eventually, but I don't like using grub that much so it's not my default bootloader (and I dont' think I'm ever going to actually install this to 15+ year old hardware anyways)

    • @abbcc555
      @abbcc555 9 месяцев назад +1

      @@librephoenix How about that nix-command. It simply does not work the way it's shown in the video. At least not with 23.11. It complains that "use "--extra-experimental-features nix-command" to override. but that command already includes that.

    • @FlutterDev1337
      @FlutterDev1337 Месяц назад

      @@abbcc555 yes I'm confused about that part as well since the "--extra-experimental-features" is already set, not sure why the shell is complaining.

  • @abbcc555
    @abbcc555 9 месяцев назад +1

    quick tip for anyone trying this. this is not end all be all script, this will not make your system look like his. in my test after running this it freezes in "Reached target Multi-User System." so for demonstration purposes this is cool and all, but by no means usable.

  • @edhyjoxenbyl1409
    @edhyjoxenbyl1409 9 месяцев назад

    I've done something similar too!
    Mine uses "curl [domain]/install_nix | sh" to remain very short!

    • @Web-Pirat
      @Web-Pirat 8 месяцев назад

      oh thats sound interesting do u mind sharing a repo :D?