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.9.2.tar.gz (28.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.9.2-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gripsack-0.9.2.tar.gz
  • Upload date:
  • Size: 28.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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.9.2.tar.gz
Algorithm Hash digest
SHA256 0a303419799cabe789135ce4724ba9a3207e2a74af9e8fbfe869e39d0ea6e8a5
MD5 bdcfe95b6f528bd38e28223acd3549a0
BLAKE2b-256 635e8f46c0cb77f6cbd8627437c517cdd2dbb1e00a0a6bfcf0e40188322003ad

See more details on using hashes here.

File details

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

File metadata

  • Download URL: gripsack-0.9.2-py3-none-any.whl
  • Upload date:
  • Size: 23.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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.9.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d3ec78ee885aa0c9a1fce64235daa7530298313f0b3de40b26e4a8a8d78f8c33
MD5 0b3893704bf67715a625dac840b4fb9e
BLAKE2b-256 98f8fc8fc0bd9d0f55158fe0e4387905bf7f6cabf73174bc2132ea9155350215

See more details on using hashes here.

Release history Release notifications | RSS feed

0.12.1

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

This release

0.9.2 This release

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