diff --git a/_posts/2025-02-01-nix.md b/_posts/2025-02-01-nix.md index f18307a..f2df6e6 100644 --- a/_posts/2025-02-01-nix.md +++ b/_posts/2025-02-01-nix.md @@ -13,21 +13,21 @@ This was also around the time the [Nix episode](https://offthemainthread.tech/ep Then, recently, I've also converted my zsh aliases and init commands to that very same Nix flake, which means that when I run a single command[^1] on a new machine, I get: -- most of my system preferences set up, including 24 hour time, my (controversial) preferred scrolling direction and all of my persisted app in the app dock -- close to all of my apps: some through Nix packages directly, and some using [nix-homebrew](https://github.com/zhaofengli/nix-homebrew) (mostly for GUIs, which tend to be angry when not having write permissions to their own binaries and hence not being able to auto-update) +- most of my system preferences set up, including 24-hour time, my (controversial) preferred scrolling direction, and all of my persisted apps in the app dock +- close to all of my apps: some through Nix packages directly, and some using [nix-homebrew](https://github.com/zhaofengli/nix-homebrew) (mostly for GUIs, which tend to be angry when not having write permissions to their binaries and hence not being able to auto-update) - my favorite fonts -- my default browser set up as the default HTTP handler (through [defaultbrowser](https://github.com/kerma/defaultbrowser) -- my git config, with my name, e-mail address and GPG signing setup (although I still have to generate and import keys manually) +- my default browser is set up as the default HTTP handler (through [defaultbrowser](https://github.com/kerma/defaultbrowser) +- my git config, with my name, e-mail address, and GPG signing setup (although I still have to generate and import keys manually) - a fully set-up [zoxide](https://github.com/ajeetdsouza/zoxide) (if you don't know what this is, you **have** to check it out, it will change the way you traverse folders on your system) -- declaratively-managed login items (startup apps) for apps like Monitor Control, which I need to control brightness on my external monitor +- declaratively-managed login items (startup apps) for apps like Monitor Control, which I need to control the brightness on my external monitor If you're curious, you can check out my setup [on GitHub](https://github.com/filiptronicek/nix/blob/main/flake.nix). I feel like it's almost perfect, but it has some limitations: - Some apps just aren't on either Homebrew or Nix packages (like my video editing software of choice, Davinci Resolve) -- Some customizations aren't very straight forward (like maintaining the aforementioned login items or setting a screensaver, which I still wasn't able to figure out) -- The per-app setup sometimes isn't granular enough and you still have to do a lot of setup within the packages you install[^2] (this is not really an issue of Nix though) +- Some customizations aren't very straightforward (like maintaining the aforementioned login items or setting a screensaver, which I still wasn't able to figure out) +- The per-app setup sometimes isn't granular enough and you still have to do a lot of setup within the packages you install[^2] (this is not an issue of Nix though) -Next up on my list is to integrate the Nix package manager into my Gitpod dotfiles, so that I can have a consistent toolset for all my projects, no matter which one I'm working on. +Next on my list is to integrate the Nix package manager into my Gitpod dotfiles so that I have a consistent toolset for all my projects, no matter which one I'm working on. [^1]: It's not really a single command (because you have to first set up nix on the machine), but it's close to it and becomes a single command after Nix is set up [^2]: For example, I would love to declaratively specify which of my Epic Games and Steam library items should automatically be installed on my machine