nix-packaging
Monorepo conventions and gotchas for adding packages to TaysiTsuki's Nix overlay.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Monorepo conventions and gotchas for adding packages to TaysiTsuki's Nix overlay.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
Detect and rewrite "rhetoric idling" (修辞空转) in LLM-generated prose--sentences that read like good writing but are semantically empty or wrong. Use when reviewing LLM-generated prose.
Back up pictures referenced by URL in SillyTavern / chara_card_v2 character card PNGs. Use when the user has a .png character card and wants to inspect it, list, or download the pictures its first messages link to. Use ONLY for SillyTavern character cards, not arbitrary images.
Exract and compile write style from writings.
استنادا إلى تصنيف SOC المهني
| name | nix-packaging |
| description | Monorepo conventions and gotchas for adding packages to TaysiTsuki's Nix overlay. |
Use when adding or updating a package in packages/.
packages/<name>/package.nix. packages/default.nix discovers them automatically; do not register them there.packages/tsuki.nix so CI builds/updates it.tsuki.rust for Rust, existing Go builders for Go).= alignment, module-level with, let/in for locals.A generic package:
{
lib, stdenv, fetchFromGitHub,
# other deps
}:
stdenv.mkDerivation rec {
pname = "example";
version = "1.0.0";
src = fetchFromGitHub {
owner = "..."; repo = "..."; tag = "v${version}";
hash = "sha256-...";
};
meta.mainProgram = "example";
}
A Rust package uses tsuki.rust.buildRustPackage and usually needs cargoHash (or cargoLock) plus tsuki.rust.bindgenHook when vendored C libraries are involved.
Its maintenance entry:
{ attr = tsuki "example"; group = gs.rust_1; update = {}; }
git added before Nix sees them. The flake uses git+file://; untracked files are invisible to nix build/nix run.cargoHash placeholder trick. For Rust packages, start from sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= and copy the "got:" hash from the build error.clang + mold in .cargo/config.toml. Strip or override it if linking fails with "cannot find 'ld'".tsuki.rust.bindgenHook. If a vendored C dependency panics on "Unable to find libclang", add it.nix-prefetch-url --unpack returns base32; convert with nix-hash --to-sri --type sha256 ... before pasting into hash.Avoid nix flake show and nixos-rebuild unless explicitly requested.