A Nix flake for Nautili, DevZero's coding agent. It packages the prebuilt releases:
| Package | What it is | Command |
|---|---|---|
nautili (default) |
The terminal client, from the @nautili/tui npm release |
nt |
nautili-desktop |
The desktop app, from releases.nautili.ai | nautili-desktop |
Supported systems: x86_64-linux and aarch64-darwin.
Both packages turn off the built-in auto-updater (it could not replace files in the Nix store anyway); update by updating the flake input.
# Terminal client
nix run github:devzero-inc/nautili-harness-flake
# Pass arguments after --
nix run github:devzero-inc/nautili-harness-flake -- login
# Desktop app
nix run github:devzero-inc/nautili-harness-flake#nautili-desktopAdd the input, and have it follow your nixpkgs so you don't pull in a second one:
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
nautili.url = "github:devzero-inc/nautili-harness-flake";
nautili.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { nixpkgs, nautili, ... }: {
# NixOS
nixosConfigurations.my-host = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
({ pkgs, ... }: {
environment.systemPackages = [
nautili.packages.${pkgs.stdenv.hostPlatform.system}.nautili
nautili.packages.${pkgs.stdenv.hostPlatform.system}.nautili-desktop
];
})
];
};
};
}The same nautili.packages.${system}.<name> works in a home-manager
home.packages, a nix-darwin environment.systemPackages or a dev shell:
devShells.x86_64-linux.default = pkgs.mkShell {
packages = [ nautili.packages.x86_64-linux.nautili ];
};To get pkgs.nautili and pkgs.nautili-desktop instead, apply the overlay:
{
nixpkgs.overlays = [ nautili.overlays.default ];
environment.systemPackages = with pkgs; [ nautili nautili-desktop ];
}Each package pins a version and one hash per system:
nix/cli.nix: the@nautili/nt-<platform>-<arch>tarballs on npm. The hash is the tarball'sdist.integrity:npm view @nautili/nt-linux-x64@<version> dist.integritynix/desktop.nix: the files underhttps://releases.nautili.ai/stable/desktop/<version>/. Take the hex digest from that directory'sSHA256SUMSand convert it:nix hash convert --hash-algo sha256 --to sri <hex>
Then check that both packages still build: nix build .#nautili .#nautili-desktop.