🍺 BREW Explorer

← all formulae

faketty

brew install faketty v1.0.20 Apache-2.0 OR MIT

Wrapper to exec a command in a pty, even if redirecting the output

3
30-day installs · #12075
6
90-day · #13954
72
365-day · #10079
205
★ GitHub stars · updated 2mo ago

Build dependencies

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [
    "rust"
  ],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Wrapper to exec a command in a pty, even if redirecting the output",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:37:29+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "faketty",
  "github_default_branch": "master",
  "github_last_commit_at": "2026-06-20T22:22:13Z",
  "github_readme_excerpt": "faketty\n=======\n\n[\u003cimg alt=\"github\" src=\"https://img.shields.io/badge/github-dtolnay/faketty-8da0cb?style=for-the-badge\u0026labelColor=555555\u0026logo=github\" height=\"20\"\u003e](https://github.com/dtolnay/faketty)\n[\u003cimg alt=\"crates.io\" src=\"https://img.shields.io/crates/v/faketty.svg?style=for-the-badge\u0026color=fc8d62\u0026logo=rust\" height=\"20\"\u003e](https://crates.io/crates/faketty)\n[\u003cimg alt=\"build status\" src=\"https://img.shields.io/github/actions/workflow/status/dtolnay/faketty/ci.yml?branch=master\u0026style=for-the-badge\" height=\"20\"\u003e](https://github.com/dtolnay/faketty/actions?query=branch%3Amaster)\n\nA wrapper binary to exec a command in a pty, even if redirecting the output.\n\nThis allows logging the stdout and stderr (separately) of a process, without the\noutput being different from what you\u0027d see in the terminal if you weren\u0027t\nlogging anything.\n\n```console\n$ cargo install faketty\n```\n\n```console\n$ faketty bazel build :target \u003elog/out 2\u003elog/err\n          ~~~~~~~~~~~~~~~~~~~ command to run\n```\n\n\u003cbr\u003e\n\n## Background\n\nWhen redirecting stdout/err to a pipe or file, a process may detect the output\nis no longer going to a tty (because it has no width/height, baud rate, etc) and\nmay change its behavior accordingly. For example many programs that involve a\nprogress bar or colored text in a terminal disable those things when the output\nis not going to a terminal.\n\nThere is a [script(1)] command which makes it possible to redirect a command\u0027s\nterminal-style output by executing it inside a pseudoterminal (pty) \u0026ndash; a\nbidirectional pipe that also has width, height, etc and tricks the process into\nthinking it is talking to a real terminal. However, `script` only uses a single\npty, which makes it impossible to demultiplex stdout and stderr to different\nplaces.\n\n[script(1)]: https://man7.org/linux/man-pages/man1/script.1.html\n\nThe `faketty` command in this repo is similar to `script --quiet --return\n--command \u0027...\u0027 /dev/null` except that it preserves distinct stdout and stderr\nstreams.\n\n\u003cbr\u003e\n\n#### ",
  "github_repo": "dtolnay/faketty",
  "github_stars": 205,
  "github_topics": [],
  "homepage": "https://github.com/dtolnay/faketty",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 3,
  "installs_365d": 72,
  "installs_90d": 6,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "Apache-2.0 OR MIT",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "faketty",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 12075,
  "rank_365d": 10079,
  "rank_90d": 13954,
  "raw_hash": "8faf9d3f69d1b92b",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/f/faketty.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [],
  "version_head": "HEAD",
  "version_stable": "1.0.20",
  "versioned_formulae": [],
  "why_use_this": null
}