{"id":13941354,"url":"https://github.com/brujoand/sbp","last_synced_at":"2025-12-24T06:15:08.302Z","repository":{"id":5654572,"uuid":"53124313","full_name":"brujoand/sbp","owner":"brujoand","description":"Simple Bash Prompt (SBP) is a bash prompt, which strives to be simple. But it isn't. But it looks kind of nice. I think. ","archived":false,"fork":false,"pushed_at":"2025-09-27T03:36:17.000Z","size":1504,"stargazers_count":338,"open_issues_count":12,"forks_count":29,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-09-27T05:41:34.133Z","etag":null,"topics":["bash","powerline","prompt","shell"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brujoand.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-03-04T09:35:35.000Z","updated_at":"2025-09-27T03:36:21.000Z","dependencies_parsed_at":"2024-08-08T03:19:38.661Z","dependency_job_id":"61a633f1-4187-40ea-b246-5e0d6989bc6e","html_url":"https://github.com/brujoand/sbp","commit_stats":{"total_commits":177,"total_committers":13,"mean_commits":"13.615384615384615","dds":0.2542372881355932,"last_synced_commit":"e307fba19a38092b3cf5e50c9d423685b56e448e"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/brujoand/sbp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brujoand%2Fsbp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brujoand%2Fsbp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brujoand%2Fsbp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brujoand%2Fsbp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brujoand","download_url":"https://codeload.github.com/brujoand/sbp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brujoand%2Fsbp/sbom","scorecard":{"id":255087,"data":{"date":"2025-08-11","repo":{"name":"github.com/brujoand/sbp","commit":"2326f2e2c6d4a5a8160118f8fb64b8e64b5baacb"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.3,"checks":[{"name":"Code-Review","score":8,"reason":"Found 24/30 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/pull_request_verify.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v0.3 not signed: https://api.github.com/repos/brujoand/sbp/releases/29475189","Warn: release artifact v0.2.2 not signed: https://api.github.com/repos/brujoand/sbp/releases/28476321","Warn: release artifact v0.1.1 not signed: https://api.github.com/repos/brujoand/sbp/releases/28319468","Warn: release artifact v0.1.0 not signed: https://api.github.com/repos/brujoand/sbp/releases/28308846","Warn: release artifact v0.3 does not have provenance: https://api.github.com/repos/brujoand/sbp/releases/29475189","Warn: release artifact v0.2.2 does not have provenance: https://api.github.com/repos/brujoand/sbp/releases/28476321","Warn: release artifact v0.1.1 does not have provenance: https://api.github.com/repos/brujoand/sbp/releases/28319468","Warn: release artifact v0.1.0 does not have provenance: https://api.github.com/repos/brujoand/sbp/releases/28308846"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pull_request_verify.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/brujoand/sbp/pull_request_verify.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pull_request_verify.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/brujoand/sbp/pull_request_verify.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pull_request_verify.yaml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/brujoand/sbp/pull_request_verify.yaml/master?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:1: pin your Docker image by updating ubuntu to ubuntu@sha256:7c06e91f61fa88c08cc74f7e1b7c69ae24910d745357e0dfe1d2c0322aaf20f9","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T09:29:17.286Z","repository_id":5654572,"created_at":"2025-08-17T09:29:17.287Z","updated_at":"2025-08-17T09:29:17.287Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27996115,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-24T02:00:07.193Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","powerline","prompt","shell"],"created_at":"2024-08-08T02:01:17.204Z","updated_at":"2025-12-24T06:15:08.277Z","avatar_url":"https://github.com/brujoand.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"# SBP - Simple Bash Prompt\n[![Build Status](https://travis-ci.org/brujoand/sbp.svg?branch=master)](https://travis-ci.org/brujoand/sbp)\n\nSimple Bash Prompt (SBP) is a bash prompt, which was simple once.\nThis started out as a pure ripoff from powerline-shell, which is great, but written in python.\nSBP is all bash, which makes it fast and fun.\n\nI've tried making the code as readable and extensible as possible.\nIf something seems wrong, lacking or bad in some way; feel free to rant, review and create a pull request.\n\n![Screenshot](/resources/sbp_screenshot.png)\n\nFor a live demo of this magic [head over\nhere](https://asciinema.org/a/JuTQxC1wfoUr269Tzw8SMejVl)\n\n## Hard Requirements\n  - Bash 4.3+\n\n## Soft Requirements\nIf you want the fancy pointy segment separators, you need the powerline fonts _installed_ and _enabled_. Both.\nYou can get them [here](https://github.com/powerline/fonts) which also has\ninstallation instructions\nNow the hard_to_remember part. Change the settings of your terminal emulator.\nSomething like \"Settings\" and then \"Fonts\" will probably be the right place.\nIf you don't like powerline then use the 'plain' or 'lines' theme or create your\nown. If you are using Kitty as a terminal then everything should work out of the\nbox.\n\n## Developer requirements\nFor local development [pre-commit](https://pre-commit.com/),\n[shellcheck](https://www.shellcheck.net/),\n[bats](https://bats-core.readthedocs.io/en/stable/installation.html) and\n[shfmt](https://github.com/mvdan/sh) are needed.\n\n## Installing\n\n### With git and the install script\nWhen you clone this repo, there is an install script located at ´bin/install´.\nIt will add two lines to `$HOME/.bashrc`:\n```\n  SBP_PATH=/the/path/to/sbp\n  source ${SBP_PATH}/sbp.bash\n```\nYou could also just add these two lines to some bash config file of your own\nchoosing manually. Keep in mind that this approach will use the master branch\nby default, so expect less stability.\n\n## Usage\nSo you're ready to go. Now you do nothing. Just use it. But you could. If you want. Change stuff up a bit.\nEdit your config by running `sbp edit config` and run `sbp reload` if you changed\nsomething substantial. Most changes will be effective immediately.\nYou can use the `sbp` command for a lot of things:\n```\n  Usage: sbp [command]\n\n  Commands:\n  reload            - Reload SBP and user settings\n  status            - Show the current configuration\n  help              - Show this help text\n  list\n    config          - List all current settings\n    segments        - List all available segments\n    hooks           - List all available hooks\n    themes          - List all available color themes and layouts\n  edit\n    config          - Opens the sbp config in $EDITOR\n    colors          - Opens the colors config in $EDITOR\n  set\n    color           - Set [color] for the current session\n    layout          - Set [layout] for the current session\n  toggle\n    peekaboo        - Toggle execution of [segment] or [hook]\n    debug           - Toggle debug mode\n  sbp\n```\n\n## Features\n### Segments\nSegments can be configured, moved, and hidden depending on your mood, or\nenvironment. Read more about those and how to make your own in the [Segments\nFolder](/src/segments).\n\n### Hooks\nHooks let's you execute scripts asynchronously to either alert you, or prepare\ndata in some way. Whatever you want really. Read more about those and how to\nmake your own in the [Hooks Folder](/src/hooks).\n\n### Colors and Layouts\nColors and layouts let you decide how the prompt is drawn. Read more about those\nand how to make your own in the [Colors](/src/colors) and\n[Layouts](/src/layouts). SBP supports both truecolors through RGB values and 256 colors\nby using ansi codes. Many will probably just want to rely on the configuration\nset in Xresources, by using the xresources color setting.\n\n#### Beta - VI mode\n~~The setting `settings_prompt_ready_vi_mode=1` will use the `prompt_ready` icon\nwith the configured colors and change it's color depending on the current VI\nmode if enabled. The cursor will also change from blinking to solid block if\nyour terminal supports it.~~\nThe VI mode support has been removed as it is not possible to predictably place\nthe VI mode indicator on a multiline prompt. PR's are very welcome if you find a\nway to do this.\n\n### FAQ\n\n#### Is this really just bash?\nYes, but actually no. At the time of writing the main implementation has\njust a few calls do date, while some segments touch grep and sed but these\nare being removed. Sometimes we need to talk to other CLI applications though like\ngit.\n\n#### My prompt doesn't show any colors, whats wrong?\nYou are using a terminal that doesn't support truecolors, the OSX Terminal.app maybe?\nYou can write your own ansi theme, or use one of the two provided ones, default-256 or xresources.\n\n#### I don't want to install any fancy fonts, can I still have nice things?\nWhy yes! Simply use the 'plain' layout. No fonts needed. Or use the\n[Kitty](https://sw.kovidgoyal.net/kitty/) terminal which will draw most of the\nmissing characters for you.\n\n#### The git segment is too slow\nIf you're working on a large repository you can speed up git by issuing:\n```\n  $ git config core.fsmonitor true\n  $ git config core.untrackedcache true\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrujoand%2Fsbp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrujoand%2Fsbp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrujoand%2Fsbp/lists"}