Skip to main content

gripsack (python frontend)

Typed module DSL for gripsack. Modules written against this package evaluate to IR (JSON) that the grip core consumes. Fully annotated — ships py.typed (PEP 561), so pyright gives you autocomplete, inline errors, and refactors.

from gripsack import module, github_release, symlink, tracked_copy, dep

helix = module(
    "helix",
    fetch=github_release(
        repo="helix-editor/helix",
        asset="helix-{version}-x86_64-linux.tar.xz",
    ),
    install={"bin/hx": symlink("~/.local/bin/hx")},
    config={"config.toml": tracked_copy("~/.config/helix/config.toml")},
    depends=[dep("git")],
)

API overview

area exports
modules module, Module
fetchers github_release, tarball, git, file_fetch, plugin_fetch
destinations symlink, tracked_copy, merge, template
dependencies dep(module, edge="runtime")
activation service, fonts, desktop_entry, custom_hook
steps step, fetch_step, build_step, shell_step
verify verify_binary, verify_file, verify_shell
graph emit_ir, clear_graph, current_facts

Modules are data: evaluation emits IR; the Rust core only ever consumes IR. Every module captures a source span so core errors point back at the exact line of your code.

API is pre-alpha and will change with the IR schema (plan).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gripsack-0.12.1.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gripsack-0.12.1-py3-none-any.whl (24.6 kB view details)

Uploaded Python 3

File details

Details for the file gripsack-0.12.1.tar.gz.

File metadata

  • Download URL: gripsack-0.12.1.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gripsack-0.12.1.tar.gz
Algorithm Hash digest
SHA256 bf8851001a8f897c5f363427cffecc882e18536f732f4164445cdd5f87578e17
MD5 9852b00f7d13258fb1912e5782c4cebe
BLAKE2b-256 d20943d47a0dea20f0acce71ea0bd74b623ad2243b6d936087fe93619b6d1383

See more details on using hashes here.

File details

Details for the file gripsack-0.12.1-py3-none-any.whl.

File metadata

  • Download URL: gripsack-0.12.1-py3-none-any.whl
  • Upload date:
  • Size: 24.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gripsack-0.12.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6c9e737343f1994d201f470c805a51179c8cca5557705fb9da5ffbfffbfb1039
MD5 d8db58bce43781c97002051a9d5db9a3
BLAKE2b-256 7bf5a8d561721b0e6021ba18e98feb0361bb9a76932f3a122fdda800de0f8a4b

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.12.1 This release

2 files

0.12.0

2 files

0.11.0

2 files

0.10.3

2 files

0.10.2

2 files

0.10.1

2 files

0.10.0

2 files

0.9.2

2 files

0.9.1

2 files

0.9.0

2 files

0.8.0

2 files

0.7.0

2 files

0.6.0

2 files

0.5.1

2 files

0.5.0

2 files

0.4.1

2 files

0.4.0

2 files

0.3.0

2 files

0.2.1

2 files

0.2.0

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page