From 4fe8f68e9b3c76b0f1ab46ed5fef4e3f9a06d34e Mon Sep 17 00:00:00 2001 From: Alexander Miroshnichenko Date: Sun, 4 Oct 2026 19:54:11 +0300 Subject: [PATCH] feat(shardr): Add shardr package to the overlay Decentralized LLM repository (Go): content-addressed model store with BitTorrent-based sync and OpenAI-compatible serving via llama-server. Upstream has no tagged source releases, so the package is pinned to main HEAD (fab7fa8) with a nix-update script targeting the branch. Builds both shardr and shardhive binaries. --- README.md | 1 + packages/shardr/default.nix | 2 ++ packages/shardr/package.nix | 48 +++++++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+) create mode 100644 packages/shardr/default.nix create mode 100644 packages/shardr/package.nix diff --git a/README.md b/README.md index e4b6b09..4292c6f 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,7 @@ A custom Nix overlay and flake providing additional packages not found in upstre | `mcp-gateway` | Universal Model Context Protocol gateway that sits between AI client and MCP tools/servers | MCP Servers | | `nftables-analyzer` | Analyze nftables firewall rules and evaluate traffic queries | Networking | | `nftablesbuilder` | Web interface to manage nftables rules with drag-and-drop rule creation | Networking | +| `shardr` | Decentralized LLM repository: content-addressed model store, BitTorrent-based sync, OpenAI-compatible serving via llama-server | AI Inference | | `skillsmcp` | MCP server that exposes Agent Skills to AI agents via the Model Context Protocol | MCP Servers | | `kubernetes-mcp-server` | Model Context Protocol (MCP) server for Kubernetes and OpenShift | MCP Servers | | `llama-cpp` | llama.cpp pinned to build b9645, built for Strix Halo (gfx1151) with ROCm + Vulkan backends | AI Inference | diff --git a/packages/shardr/default.nix b/packages/shardr/default.nix new file mode 100644 index 0000000..69b1a07 --- /dev/null +++ b/packages/shardr/default.nix @@ -0,0 +1,2 @@ +{ pkgs, ... }: +pkgs.callPackage ./package.nix { } diff --git a/packages/shardr/package.nix b/packages/shardr/package.nix new file mode 100644 index 0000000..8e9c897 --- /dev/null +++ b/packages/shardr/package.nix @@ -0,0 +1,48 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, +}: + +buildGoModule rec { + pname = "shardr"; + # Pinned to a commit: upstream has no tagged source releases, only + # prebuilt "shardr-runner" bundles. + version = "0.1.0+unstable"; + + src = fetchFromGitHub { + owner = "Cyb3rDudu"; + repo = "shardr"; + rev = "fab7fa89bc8164181c5bcebd1f23a74825d11de1"; + hash = "sha256-bbNvTU3rSlKD7Wr+Q+WGKKtIVUq6uzmv93uZq0gzO2U="; + }; + + vendorHash = "sha256-wI7oVOFEKDK2hr7MmJ/QY9Mqwgk6t24cBe8HSM/zpVo="; + + subPackages = [ + "cmd/shardr" + "cmd/shardhive" + ]; + + # Upstream tests assume a llama-server binary and a live shardhive socket. + doCheck = false; + + passthru = { + category = "AI Inference"; + updateScript = [ + "nix-update" + "--flake" + ".#shardr" + "--version=branch=main" + ]; + }; + + meta = { + description = "Decentralized LLM repository with sync-based distribution over a BitTorrent peer network"; + homepage = "https://github.com/Cyb3rDudu/shardr"; + changelog = "https://github.com/Cyb3rDudu/shardr/releases"; + license = lib.licenses.asl20; + maintainers = [ ]; + mainProgram = "shardr"; + }; +}