Installation

in progress

star is a single Rust binary. Get it with nix or cargo — whichever sky you fly through.

Prerequisites

star drives your system git — it shells out to git for clones, fetches, and git archive, so your SSH config, credential helpers, proxies, and url.insteadOf rewrites all work untouched.

  • git in PATH (required by every method below)
  • nix with flakes enabled — for the nix route
  • a Rust toolchain (rustup) — for the cargo route

Linux and macOS are first-class; Windows is untested so far.

nix

The fastest way to say hi — no install at all:

nix run git+https://git.jingus.dev/star/star -- --version

Into your profile:

nix profile install git+https://git.jingus.dev/star/star

As a flake input

Pin star like anything else you trust:

{
  inputs.star.url = "git+https://git.jingus.dev/star/star";

  outputs = { self, nixpkgs, star }: {
    # use wherever a package belongs — NixOS module, home-manager, devshell…
    #
    # environment.systemPackages = [
    #   star.packages.${pkgs.system}.star
    # ];
  };
}

From a checkout

git clone https://git.jingus.dev/star/star
cd star

nix develop            # devshell: rust toolchain, git, everything
nix build .#star       # optimized release binary → ./result/bin/star
nix run . -- --version # the CLI is the default app
nix flake check        # clippy, fmt, tests, smoke checks

cargo

With a Rust toolchain installed (rustup or nix):

cargo install --git https://git.jingus.dev/star/star

Or from a checkout:

git clone https://git.jingus.dev/star/star
cd star
cargo install --path .

Verify your install

star --version
star --help

--help lists the complete command grammar — use, repo, and template subcommands alike.

# run without installing
$ nix run git+https://git.jingus.dev/star/star -- --version

# or install into your profile
$ nix profile install git+https://git.jingus.dev/star/star

Troubleshooting