skeld

Crates.ioskeld
lib.rsskeld
version0.5.0
created_at2024-07-13 18:23:50.914904+00
updated_at2025-12-09 17:24:57.277245+00
descriptiona TUI tool for opening projects inside a restricted sandbox
homepage
repositoryhttps://github.com/hacrvlq/skeld
max_upload_size
id1302522
size197,912
(hacrvlq)

documentation

README

Skeld

Skeld is a TUI tool for opening projects inside a restricted sandbox where only the explicitly allowed paths are accessible.

Screenshot of the TUI

Each project is defined by a TOML file:

[project]
project-dir = "~/dev/skeld"

# Paths can be whitelisted read-only.
whitelist-ro = [
  # Some string interpolation is supported.
  "$(CONFIG)/nvim",
]
# Paths can also be whitelisted read-write.
whitelist-rw = [
  "$(DATA)/nvim",
  "$(STATE)/nvim",
]

# Set the editor/IDE to use.
# This can also be set globally in the user-wide config.
[project.editor]
cmd = [ "nvim", "$(FILE:.)" ]
detach = false

Installation

Note that only Linux is supported.

[!IMPORTANT] Skeld depends on Bubblewrap to be available in PATH.

Getting Started

For version v0.5.0, refer to here.

Building

Requires the Rust Compiler.

cargo build --release
./target/release/skeld

To build the man pages, scdoc is required.

scdoc < docs/skeld.1.scd > skeld.1
scdoc < docs/skeld-config.5.scd > skeld-config.5
scdoc < docs/skeld-project-data.5.scd > skeld-project-data.5

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 94

cargo fmt