{"id":33185740,"url":"https://github.com/andresgongora/synth-shell-prompt","last_synced_at":"2026-01-12T16:14:53.977Z","repository":{"id":46997939,"uuid":"256616542","full_name":"andresgongora/synth-shell-prompt","owner":"andresgongora","description":"Customize your terminal with colors, extra system information, and eyecandy","archived":false,"fork":false,"pushed_at":"2024-06-04T08:34:54.000Z","size":675,"stargazers_count":57,"open_issues_count":12,"forks_count":19,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-27T13:46:14.764Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andresgongora.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-17T21:47:08.000Z","updated_at":"2025-10-30T12:12:07.000Z","dependencies_parsed_at":"2023-01-19T07:15:13.235Z","dependency_job_id":"4eb1100f-5f58-460b-b911-9b8facbb1622","html_url":"https://github.com/andresgongora/synth-shell-prompt","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/andresgongora/synth-shell-prompt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andresgongora%2Fsynth-shell-prompt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andresgongora%2Fsynth-shell-prompt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andresgongora%2Fsynth-shell-prompt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andresgongora%2Fsynth-shell-prompt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andresgongora","download_url":"https://codeload.github.com/andresgongora/synth-shell-prompt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andresgongora%2Fsynth-shell-prompt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28342383,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T16:14:38.383Z","status":"ssl_error","status_checked_at":"2026-01-12T16:14:34.289Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2025-11-16T05:00:20.100Z","updated_at":"2026-01-12T16:14:53.969Z","avatar_url":"https://github.com/andresgongora.png","language":"Shell","funding_links":[],"categories":["\u003ca name=\"prompt\"\u003e\u003c/a\u003ePrompts"],"sub_categories":[],"readme":"![synth-shell-prompt](doc/synth-shell-prompt.jpg)\n\nThis script is part of [synth-shell](https://github.com/andresgongora/synth-shell)\n\n**synth-shell-prompt** formats your terminal's prompt as\nshown in the figure below. However, it's not all eye-candy but also useful information:\n- Git statuses (requires pull/push, is dirty, etc.) if inside a directory that\n  is part of a git repository.\n- Better separation between user input and command outputs.\n- Configurable colors and aesthetics.\n- PyEnv aware.\n- Intelligent $PWD shortening.\n- And much more!\n\n![screenshot](doc/screenshot.png)\n\n\n\n\n\n\u003cbr/\u003e\u003cbr/\u003e\n\n\n\n\u003c!--------------------------------------+--------------------------------------\u003e\n#                                     Setup\n\u003c!--------------------------------------+--------------------------------------\u003e\n\n\n### Arch Linux\n\nYou may install `synth-shell-prompt` from AUR:\nhttps://aur.archlinux.org/packages/synth-shell-prompt-git/\nOnce installed, test it with:\n```\n. /usr/bin/synth-shell-prompt\n```\nAnd if you like it, add it permanently to your terminal with:\n```\necho \". /usr/bin/synth-shell-prompt\" \u003e\u003e ~/.bashrc\n```\n\n\n\n### Manual setup\n\nThe included [setup script](setup.sh) will guide you step by step through the\ninstallatioj process. Just clone this repository and run it:\n```\ngit clone --recursive https://github.com/andresgongora/synth-shell-prompt.git\nsynth-shell-prompt/setup.sh\n```\n\nThen install the required fonts packages to display the triangle separators properly:\n- ArchLinux: sudo pacman -S powerline-fonts\n- Debian/Ubuntu: sudo apt install fonts-powerline\n\n\nYou can then test your script by sourcing it from wherever you installed it.\nUsually this is to your user's `.config` folder, so you should run the following\ncommand. Notice the `.`, this is meant to source the script to your\nterminal session (i.e. include it into your session).\n```\n. ~/.config/synth-shell/synth-shell-prompt.sh\n```\n\nIf you want it to appear everytime you open a new terminal, run either\n```\necho \". ~/.config/synth-shell/synth-shell-prompt.sh\" \u003e\u003e ~/.bashrc\n```\n\n\n\n### Configuration/customization\nYou can configure your scripts by modifying the corresponding configuration\nfiles. You can find them, along example configuration files, in the following\nfolders depending on how you installed **synth-shell**:\n\n* Current-user only: `~/.config/synth-shell/`\n* System wide: `/etc/synth-shell/`\n\n#### Command in new line\nIn addition to having the command-line right after the prompt, it is possible to set-up **synth-shell** to instead display the command on the next line, which looks like this:\n\n![next_line_command](doc/next_line_command.png)\n\n\nThis can be achieved by changing the option `enable_command_on_new_line=false` to `enable_command_on_new_line=true` on the `MAIN FORMAT` section of the `synth-shell-prompt.config` file.\n\n\n\n\u003cbr/\u003e\u003cbr/\u003e\n\n\n\n\u003c!--------------------------------------+--------------------------------------\u003e\n#                                    Overview\n\u003c!--------------------------------------+--------------------------------------\u003e\n\n`fancy-bash-prompt.sh` Adds colors and triangular separators to your bash\nprompt, and if the current working directory is part of a git repository,\nalso git statuses and branches.\nFor best results, consider installing (and telling your terminal to use)\nthe `hack-ttf` font alongside the powerline-fonts (the later is required for\nthe separators).\n\nAs for the git status info, `fancy-bash-prompt.sh` prints an additional, fourth\nseparator with the name of the current branch and one of the following icons\nto indicate the state of the repository (can be changed in the config file):\n\n|          Local-Upstream          | Local branch has no changes | Local branch is dirty |\n|:--------------------------------:|:---------------------------:|:---------------------:|\n|            Up to date            |                             |           □           |\n|     Ahead (you have to push)     |              ▲              |           △           |\n|     Behind (you have to pull)    |              ▼              |           ▽           |\n| Diverged (you have to pull-push) |              ●              |           ○           |\n\n\n\n\n\u003cbr/\u003e\u003cbr/\u003e\n\n\n\n\u003c!--------------------------------------+--------------------------------------\u003e\n#                                   Contribute\n\u003c!--------------------------------------+--------------------------------------\u003e\n\nThis project is only possible thanks to the effort and passion of many,\nincluding developers, testers, and of course, our beloved coffee machine.\nYou can find a detailed list of everyone involved in the development\nin [AUTHORS.md](AUTHORS.md). Thanks to all of you!\n\nIf you like this project and want to contribute, you are most welcome to do so.\n\n\n\n### Help us improve\n\n* [Report a bug](https://github.com/andresgongora/synth-shell/issues/new/choose):\n  if you notice that something is not right, tell us. We'll try to fix it ASAP.\n* Suggest an idea you would like to see in the next release: send us\n  and email or open an [issue](https://github.com/andresgongora/synth-shell/issues)!\n* Become a developer: fork this repo and become an active developer!\n  Take a look at the [issues](https://github.com/andresgongora/synth-shell/issues)\n  for suggestions of where to start. Also, take a look at our\n  [coding style](coding_style.md).\n* Spread the word: telling your friends is the fastes way to get this code to\n  the people who might enjoy it!\n\n\n\n\u003cbr/\u003e\u003cbr/\u003e\n\n\n\n\u003c!--------------------------------------+--------------------------------------\u003e\n#                                     About\n\u003c!--------------------------------------+--------------------------------------\u003e\n\n**synth-shell-prompt** is part of\n[synth-shell](https://github.com/andresgongora/synth-shell)\n\n\n\n\u003cbr/\u003e\u003cbr/\u003e\n\n\n\n\u003c!--------------------------------------+--------------------------------------\u003e\n#                                    License\n\u003c!--------------------------------------+--------------------------------------\u003e\n\nCopyright (c) 2014-2023, Andres Gongora - www.andresgongora.com\n\n* This software is released under a GPLv3 license.\n  Read [license-GPLv3.txt](LICENSE),\n  or if not present, \u003chttp://www.gnu.org/licenses/\u003e.\n* If you need a closed-source version of this software\n  for commercial purposes, please contact the [authors](AUTHORS.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandresgongora%2Fsynth-shell-prompt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandresgongora%2Fsynth-shell-prompt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandresgongora%2Fsynth-shell-prompt/lists"}