v1.6.0 · Apache-2.0 · .NET 10

Patch only what changed.

An open-source, rsync-like patcher for game clients & desktop apps — and a cross-platform package manager with Flatpak-style sandboxing. Let me show you around!

scroll ↓

Tiny updates, every time

I compare your local files with rolling checksums and download only the blocks that differ, then rebuild & verify each file in place. A 50 GB game can update over a thin pipe.

Delta patcher

Content-defined chunking keeps dedup high even when files shift.

📦

Package manager

Install, update & remove apps from a signed descriptor.

What I can do

⚡ Delta patching

Transfer only changed blocks.

🧬 Content-defined chunking

Dedup across inserts & deletes.

✍️ Ed25519 signing

Manifests verified before patching.

🔎 Hash verification

Per-chunk & per-file integrity.

🗜️ Brotli storage

Compressed, content-addressed chunks.

🔁 Retry + backoff

Recovers from transient errors.

↩️ Backup & rollback

Instant rollback on failure.

🧵 Concurrent downloads

Configurable parallelism.

🌐 Static hosting

Bundled host, or any CDN/Nginx/S3.

How it works

Build pipeline

  1. hina-builder scans & chunks your build
  2. writes manifest.json (hashes, chunk map, signature)
  3. writes chunks/ — Brotli blocks by content hash
  4. upload to Hina.Host / Nginx / S3 / CDN

Client patch

  1. fetch manifest → verify Ed25519 signature
  2. rolling-checksum scan of local files
  3. download missing chunks (concurrent · retry)
  4. rebuild → verify → swap (or rollback)

Sandboxed by default

A sandboxed app gets only its declared files & network — enforced before it starts.

🐧 Linux

Landlock (unprivileged, no root).

🍎 macOS

Seatbelt (sandbox-exec).

🪟 Windows

AppContainer new 1.6

Install me

$curl -fsSL https://raw.githubusercontent.com/Arutosio/Hina/master/scripts/install.sh | bash

Lands in ~/.local/bin/hina · verifies SHA-256 first.

>iwr -useb https://raw.githubusercontent.com/Arutosio/Hina/master/scripts/install.ps1 | iex

Installs to %LOCALAPPDATA%\Hina\bin · no admin.

>scoop install https://github.com/Arutosio/Hina/releases/latest/download/hina.json

Auto-updates with scoop update.

Prefer a double-click installer? Grab the per-user MSI (x64/arm64):

Download from Releases ↗

Then run hina --help · verify with the published .sha256 sums.

Five parts

hina (CLI)

install · update · run · perms · host

Hina.PackageManager

install engine, descriptors, signatures, sandboxes

Hina.Builder

build dir → manifest + chunk store

Hina.Host

ASP.NET Core static host (rate-limit, health)

Hina.Core

chunking, checksum, verify, retry library