Automic VaultAutomic Vault

brew

Install mdsh with Homebrew, dnf, Nix

Markdown shell pre-processor. Version 0.9.2 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install mdsh

local Homebrew formula metadata

Linux

Fedora dnfverified · 92%
sudo dnf install mdsh

Fedora Rawhide package metadata · mdsh · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#mdsh

nixpkgs package indexes · pkgs/by-name/md/mdsh/package.nix · source: api.github.com

overview

Package summary

Markdown shell pre-processor

Commands and aliases

  • mdsh

history

Project history and usage

mdsh is a Rust Markdown shell preprocessor that updates Markdown files in place by including files, executing commands, and refreshing generated blocks. The project describes itself as similar to literate programming or notebooks, but for shell commands in Markdown.

Project history

The public repository was created on 2019-02-15. Its README explains the original problem as keeping README snippets, command output, and embedded file contents synchronized without manually copying text.

Unlike many preprocessors that emit a separate generated file, mdsh is designed around idempotent in-place updates. The README and project site document a compact Markdown extension for command blocks, comments, links, raw Markdown output, code-block output, and shell variable expansion.

Adoption history

Official installation instructions recommend `cargo install mdsh`, Nix installation, Nix flakes, and use as a pre-commit hook. The input package-manager facts list Homebrew, dnf, and Nix packages.

GitHub metadata showed ongoing maintenance through 2026 and a modest but real open-source footprint, with repository topics around Markdown, pre-processing, and shell.

How it is used

By default, `mdsh` processes `./README.md`; `--inputs`, `--output`, and `--work-dir` let users choose files and execution directories. The `--frozen` mode is intended for CI checks that fail when generated documentation is stale.

The README documents commands for reading files, executing shell commands, producing raw Markdown or code blocks, expanding environment variables, cleaning generated blocks, and installing mdsh as a pre-commit hook.

Why package nerds care

mdsh matters to package-oriented developers because it turns a README into a reproducible build artifact without leaving Markdown. It is small, scriptable, CI-friendly, and sits in the same culture as literate shell docs, generated examples, and pre-commit-enforced documentation freshness.

Timeline

  • 2019: Public GitHub repository created.
  • 2019: README license block identifies copyright for zimbatm and contributors.
  • 2026: Repository metadata showed continued updates and availability through Cargo, Nix, Homebrew, and dnf-related packaging facts.

Related projects

  • The README compares mdsh with literate programming, Jupyter Notebooks, active code/Pandoc filters, and Enola.dev ExecMD.
  • The project deliberately chooses in-place Markdown updates rather than a separate rendered-document pipeline.

security posture

Risk level: yellow

generalized runtime or code generation signal.

Risk classifier

yellow risk · medium confidence · runtime

Why

  • generalized runtime or code generation signal

Signals

  • text:shell

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 8 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
mdshcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version0.9.2
manager updated
local dataok
upstreamcurrent
latest detectedv0.9.2

https://github.com/zimbatm/mdsh

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:mdsh
Version0.9.2
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/mdsh
Homepagehttps://zimbatm.github.io/mdsh/
Repositoryhttps://github.com/zimbatm/mdsh
Upstream docshttps://github.com/zimbatm/mdsh#readme
LicenseMIT
Source archivehttps://github.com/zimbatm/mdsh/archive/refs/tags/v0.9.2.tar.gz
Build dependenciesrust
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namemdsh
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

mdsh

nix profile install nixpkgs#mdsh
  • normalized package name match
  • Matched by: Mdsh
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/md/mdsh/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
dnf95%

mdsh 0.7.0-8.fc44

Markdown shell pre-processor

https://crates.io/crates/mdsh

sudo dnf install mdsh
  • License: MIT AND Unicode-DFS-2016 AND (Apache-2.0 OR MIT) AND (Unlicense OR MIT)
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: rust-mdsh
  • 4 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Mdsh
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: mdsh from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment