{"id":15049438,"url":"https://github.com/ar1ja/baz","last_synced_at":"2025-10-04T10:31:08.121Z","repository":{"id":59678135,"uuid":"492954028","full_name":"TruncatedDinoSour/baz","owner":"TruncatedDinoSour","description":"[Migrated to self-hosted ari-web Forgejo: https://git.ari.lt/ari/baz] a fast, easy, simple and lightweight plugin manager for GNU bash","archived":true,"fork":false,"pushed_at":"2024-06-20T13:16:34.000Z","size":287,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-30T01:22:14.881Z","etag":null,"topics":["bash","baz","baz-loader","baz-plugin","c","c89","cli","directory","git","linux","performance","plugin","plugin-manager","productivity","shell","terminal"],"latest_commit_sha":null,"homepage":"https://git.ari.lt/ari/baz","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/TruncatedDinoSour.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":null,"dei":null}},"created_at":"2022-05-16T18:27:34.000Z","updated_at":"2024-09-10T15:00:10.000Z","dependencies_parsed_at":"2024-02-27T22:46:22.750Z","dependency_job_id":"ff69c6b8-2fa5-4794-a998-adfc8a5664f0","html_url":"https://github.com/TruncatedDinoSour/baz","commit_stats":null,"previous_names":[],"tags_count":89,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruncatedDinoSour%2Fbaz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruncatedDinoSour%2Fbaz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruncatedDinoSour%2Fbaz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TruncatedDinoSour%2Fbaz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TruncatedDinoSour","download_url":"https://codeload.github.com/TruncatedDinoSour/baz/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235238178,"owners_count":18958058,"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","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","baz","baz-loader","baz-plugin","c","c89","cli","directory","git","linux","performance","plugin","plugin-manager","productivity","shell","terminal"],"created_at":"2024-09-24T21:20:28.722Z","updated_at":"2025-10-04T10:31:00.773Z","avatar_url":"https://github.com/TruncatedDinoSour.png","language":"Shell","readme":"# This repository has been migrated to the self-hosted ari-web Forgejo instance: \u003chttps://git.ari.lt/ari/baz\u003e\n\u003cp align=\"center\"\u003e\n    \u003ch1\u003e\u003cimg src=\"/logo.png\" alt=\"baz\" /\u003e\u003c/h1\u003e\n\u003c/p\u003e\n\n\u003e a fast, easy, simple and lightweight plugin manager for GNU bash\n\n# source code\n\n-   [/baz](/baz) -- the plugin manager\n-   [/loader/](/loader/)-- the baz plugin loader files\n-   [/loader.sht](/loader.sht)-- the pure bash baz plugin loader\n\n# credits\n\n-   [@DannyBen](https://github.com/DannyBen) -- for creating an awesome tool for completion: https://github.com/DannyBen/completely\n\n# packages\n\n-   linux\n    -   gentoo\n        -   \u003chttps://ari-web.xyz/gentooatom/app-shells/baz\u003e\n    -   alpine\n        -   \u003chttps://github.com/usernameeReal/alpine-pkgs/tree/main/baz\u003e\n\n# dependencies\n\n-   coreutils\n-   BASH\n-   git cli\n-   optionally any c compiler ( to use the c loader insread of the bash one )\n-   rlwrap ( optional, but its nice for special keys )\n-   bash-completion ( optional, but its nice for well ... completion )\n\nbut you probably have all of them, maybe not `git`, but a lot of people do\n\n# why `baz`\n\n-   fast\n    -   or at least faster than oh-my-bash and sheldon ( a plugin manager writen in rust ) : \u003chttps://blog.ari-web.xyz/b/comparison-between-the-oh-my-bash-and-baz-plugin-managers-for-gnu-bash/\u003e\n-   easy\n-   small\n-   simple\n-   minimal\n-   cross platform\n    -   linux\n        -   gentoo\n        -   void\n        -   debian\n        -   ubuntu\n        -   arch\n        -   ...\n    -   BSD\n        -   FreeBSD\n        -   OpenBSD\n        -   ...\n    -   windows\n        -   git BASH\n        -   windows subsystem for Linux ( WSL )\n        -   wherever you can get BASH on\n    -   android\n    -   most likely ( needs testing, please contribute if you have the resources to do so :) )\n        -   macOS\n        -   iOS\n-   GPLv3 licensing\n\n# automatic setup\n\nthis script hosted on my files site will set up\nbaz automatically, but it might be unstable\n\n```bash\n$ cd /tmp\n\n$ curl -fL 'https://ari-web.xyz/gh/baz/raw/main/scripts/baz_setup.sh' -o baz_setup.sh\n\n$ bash baz_setup.sh\n\n$ rm -f -- baz_setup.sh\n```\n\nor\n\n```sh\ncd /tmp \u0026\u0026 curl -fL 'https://ari-web.xyz/gh/baz/raw/main/scripts/baz_setup.sh' -o baz_setup.sh \u0026\u0026 bash baz_setup.sh \u0026\u0026 rm -f -- baz_setup.sh\n```\n\nscript configuration :\n\n-   `__BASH_RUNAS`: the `sudo` program ( `sudo` )\n-   `PREFIX`: where to install `baz` to ( `/usr/bin` )\n-   plus the [normal vars](#setup) like `BAZ_LOGGING_ENABLED`\n\n# plugin indexing\n\nyou can leave a link to it in the [PLUGINS.md](/PLUGINS.md) file :)\n\n# setup\n\n-   clone the repo\n\n```bash\n$ git clone 'https://ari-web.xyz/gh/baz'\n```\n\n-   if you want logging enabled\n\n```sh\nexport BAZ_LOGGING_ENABLED=1\n```\n\n-   if non-zero ( _its normal dw_ ) exit codes bother you on the loader run this :\n\n```sh\nexport BAZ_ENSURE_OK=1\n```\n\n-   if you never want to use the C loader\n\n```sh\nexport BAZ_NO_CC=1\n```\n\n-   set the c compiler ( has to at least support `-o \u003coutfile\u003e` and `-D MACRO=\"value\"` flags )\n\n```sh\nexport CC='clang'\n```\n\n-   set the c flags\n\n```sh\nexport CFLAGS='-O3 -s'\n```\n\n-   set the stripper ( if none is set the binary wont be stripped )\n\n```sh\nexport STRIP='llvm-strip'\n```\n\n-   set the stripper flags\n\n```sh\nexport STRIPFLAGS='--remove-section=.note --strip-all'\n```\n\n-   install the script anywhere, or even run it standalone\n    -   running standalone means just running it\n    -   installing could be done in for example `/usr/local/bin`:\n\n```bash\n$ su -c 'install -Dm755 baz /usr/local/bin'\n```\n\n-   setup\n\n```bash\n$ baz setup\n```\n\nOr\n\n```bash\n$ ./baz setup\n```\n\n-   add this to your `~/.bashrc` :\n\n```bash\nexport BAZ_LOADER_ENABLED=true\n_baz_loader=\"$HOME/.local/share/baz/loader.sh\"\n\n[ ! -f \"$_baz_loader\" ] || source \"$_baz_loader\"\n```\n\nthis is the main loader for plugins\n\n# installing completion\n\n```bash\n$ ./scripts/comp.sh\n```\n\n# uninstallation\n\nUninstall the `baz` binaries and then just run:\n\n```sh\n$ sudo rm -rf ~/.local/share/baz*\n```\n\n# help page\n\n```bash\n$ baz help\n```\n\n# upgrading\n\nJust upgrade your package or pull the repo\nand run :\n\n```bash\n$ ./baz upgrade\n```\n\nand if you also have completion, rerun the completion\nscript :\n\n```bash\n$ ./scripts/comp.sh\n```\n\n# other docs\n\n-   [doc folder](/doc)\n\n# examples\n\n-   [examples folder](/examples)\n-   [my example plugin repo](https://github.com/TruncatedDinosour/baz-example-plugin)\n\n# debugging\n\n-   set `BAZ_DEBUG` to any value to any value to debug the `baz` cli with tracing\n-   set `BAZ_DEBUG_LOAD` to any value to debug the loader\n    -   this only works if `BAZ_LOGGING_ENABLED` was set during setup time\n-   add `set -x` before and `set +x` after the loader to enable tracing\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Far1ja%2Fbaz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Far1ja%2Fbaz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Far1ja%2Fbaz/lists"}