What's in my flake?
You can see the full details with nix flake show.
As a helpful summary, here’s what my flake should contain sorting from the most interesting and helpful outputs to the most boring and unnecessary.
-
packagescontains my custom packages. -
imagescontains the hosts as a build output generated from nixos-generators. -
overlayscontains the overlay for extending nixpkgs with my packages. If you want to use my packages alongside the nixpkgs attribute then this is what you’re looking for. -
homeModulesare where my custom home-manager modules to be exported. [1] -
nixosModulesare composed from NixOS modules defined in./modules/nixos. It can be used as additional modules for your own NixOS config in case you want to use mine for whatever reason. There are some niceties in there.A few examples include:
-
A NixOS module for Pop launcher plugins and scripts.
-
Several service modules for archiving with yt-dlp, gallery-dl, and ArchiveBox.
-
My themes which contain full desktop environments which is nice for quickly initializing a NixOS configuration.
-
-
devShellsfrom my custom environments. Similar tohomeConfigurations, you can easily use it outside of NixOS. -
homeConfigurationscontains my various home-manager configurations from./users/home-manager/. The neat thing about it is you can easily install it in a non-NixOS Linux distro. -
deployare nodes to be deployed by deploy-rs. It’s nice and currently not all of the nodes are publicly committed which is less useful but it’ll be someday. -
nixosConfigurationswhich is where you can install my various NixOS configurations directly (e.g.,nixos-install --flake github:foo-dogsquared/nixos-config#HOST). This mainly uses the hosts configuration. -
templateswhich contains my templates. Though, these are just templates mostly for my own purposes so it is not as useful as the other outputs. -
hydraJobscontains Hydra build jobs where it is primarily used for my test Hydra instance. -
libis defined from my custom library. It mainly assumes it is to be included in nixpkgs standard library (i.e.,import ./lib { lib = inputs.nixpkgs.lib; }). It’s another unnecessary export but it’s there. -
formatteris the preferred formatter to be used for my Nix files. Nothing special here. -
checkscontains checks for several outputs and are mainly for internal purposes. There’s no use for anyone else, really. :(