{
  description = "Container NixOS configurations";

  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";

    synix.url = "git+https://git.sid.ovh/sid/synix.git?ref=release-25.11";
    synix.imputs.nixpkgs.follows = "nixpkgs";
  };

  outputs =
    {
      self,
      nixpkgs,
      ...
    }@inputs:
    let
      inherit (self) outputs;

      system = "x86_64-linux";

      lib = nixpkgs.lib.extend (final: prev: inputs.synix.lib or { });
    in
    {
      packages =
        let
          pkgs = nixpkgs.legacyPackages.${system};
        in
        import ./pkgs { inherit pkgs; };

      overlays = import ./overlays { inherit (self) inputs; };

      devShells =
        let
          pkgs = nixpkgs.legacyPackages.${system};
        in
        {
          default = pkgs.mkShell {
            buildInputs = with pkgs; [
              nixos-container
              tmux
            ];
          };
        };

      nixosModules = import ./modules;

      nixosConfigurations = {
        container = nixpkgs.lib.nixosSystem {
          inherit system;
          modules = [ ./config ];
          specialArgs = {
            inherit inputs outputs lib;
          };
        };
      };
    };
}
