{"id":17882146,"url":"https://github.com/nao1215/mimixbox","last_synced_at":"2025-10-20T10:04:10.021Z","repository":{"id":37581201,"uuid":"427907225","full_name":"nao1215/mimixbox","owner":"nao1215","description":"MimixBox - mimic BusyBox on Linux","archived":false,"fork":false,"pushed_at":"2025-03-05T20:09:42.000Z","size":856,"stargazers_count":36,"open_issues_count":60,"forks_count":6,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-04T06:41:32.712Z","etag":null,"topics":["busybox","cli","go","golang","linux","shell","system-programming"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nao1215.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","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},"funding":{"github":"nao1215","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2021-11-14T11:15:35.000Z","updated_at":"2025-03-03T10:24:28.000Z","dependencies_parsed_at":"2022-07-12T16:24:51.454Z","dependency_job_id":"b377d1d5-53b7-4cca-9841-577e0b9a9969","html_url":"https://github.com/nao1215/mimixbox","commit_stats":null,"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/nao1215/mimixbox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nao1215%2Fmimixbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nao1215%2Fmimixbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nao1215%2Fmimixbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nao1215%2Fmimixbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nao1215","download_url":"https://codeload.github.com/nao1215/mimixbox/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nao1215%2Fmimixbox/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265905116,"owners_count":23846696,"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":["busybox","cli","go","golang","linux","shell","system-programming"],"created_at":"2024-10-28T12:48:21.697Z","updated_at":"2025-10-20T10:04:04.975Z","avatar_url":"https://github.com/nao1215.png","language":"Go","funding_links":["https://github.com/sponsors/nao1215","https://patreon.com/mimixbox","https://www.patreon.com/mimixbox?fan_landing=true"],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n\u003cimg src=\"https://github.com/nao1215/mimixbox/blob/main/docs/images/logo.jpg\" width=\"100\"\u003e\n\u003c/div\u003e\n\n[![Build](https://github.com/nao1215/mimixbox/actions/workflows/build.yml/badge.svg?branch=main)](https://github.com/nao1215/mimixbox/actions/workflows/build.yml)\n[![UnitTest](https://github.com/nao1215/mimixbox/actions/workflows/unit_test.yml/badge.svg?branch=main\u0026event=push)](https://github.com/nao1215/mimixbox/actions/workflows/unit_test.yml)\n[![IntegrationTest](https://github.com/nao1215/mimixbox/actions/workflows/integration_test.yml/badge.svg?event=push)](https://github.com/nao1215/mimixbox/actions/workflows/integration_test.yml)\n![GitHub](https://img.shields.io/github/license/nao1215/mimixbox)\n![GitHub all releases](https://img.shields.io/github/downloads/nao1215/mimixbox/total)\n![Lines of code](https://img.shields.io/tokei/lines/github/nao1215/mimixbox?style=plastic)\n[![Support me on Patreon](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Fshieldsio-patreon.vercel.app%2Fapi%3Fusername%3Dmimixbox%26type%3Dpatrons\u0026style=flat-square)](https://patreon.com/mimixbox)\n\n[[日本語](docs/introduction/ja/README.md)]\n# MimixBox - mimic BusyBox on Linux\nMimixBox has many Unix commands in the single binary like BusyBox. However, MimixBox aim for the different uses from BusyBox. Specifically, it is supposed to be used in the desktop environment, not the embedded environment.  \nAlso, the MimixBox project maintainer plan to have a wide range of built-in commands (applets) from basic command provided by Coreutils and others to experimental commands.\n\n# Installation.\nThe source code and binaries are distributed on [the Release Page](https://github.com/nao1215/mimixbox/releases) in ZIP format and tar.gz format. Choose the binary that suits your OS and CPU architecture.\nFor example, in the case of Linux (amd64), you can install the MimixBox and documents on your system with the following command:\n\n```shell\n$ tar xf mimixbox-0.30.0-linux-amd64.tar.gz\n$ cd mimixbox-0.30.0-linux-amd64\n$ sudo ./installer.sh\n```\n\n## Use \"go install\" \n```shell\n$ go install github.com/nao1215/mimixbox/cmd/mimixbox@latest\n$ sudo mimixbox --install /usr/local/bin\n```\n\n## Use homebrew\n```shell\n$ brew install nao1215/tap/mimixbox\n```\n\n# Development \n## Tools \u0026 Libraries\nThe table below shows the tools used when developing the commands in the MimixBox project.\n| Tool | description |\n|:-----|:------|\n| go-licenses | Used for license management of dependent libraries|\n| pandoc   | Convert markdown files to manpages |\n| make   | Used for build, test, release, etc |\n| gzip   | Used for compress man pages |\n| curl | Used for install ShellSpec |\n| install   | Used for install MimixBox binary and document in the system |\n| docker| Used for testing Mimixbox inside Docker|\n| debootstrap| Used for testing Mimixbox inside jail envrioment|\n|  shellspec   | Used for integration test|  \n| libpam0g-dev(pam-devel)| PAM (Pluggable Authentication Modules) library|\n\nIf you use Debian-based distribution (e.g. Debian／Ubuntu／Kali Linux／Raspberry Pi OS), You can install tools with the following command.\n\n```\n$ sudo apt install build-essential curl git pandoc gzip docker.io debootstrap libpam0g-dev\n$ go install github.com/google/go-licenses@latest\n$ curl -fsSL https://git.io/shellspec | sh -s -- --yes\n```\n  \n## How to build\n\n```\n$ git clone https://github.com/nao1215/mimixbox.git\n$ cd mimixbox\n$ make build\n```\n\n# [Debugging](docs/introduction/en/DebugAndTest.md)\n## How to create docker environment\n```\n$ make docker\n\n※ Once the Docker image build is complete, you'll be inside the container.\n$ \n```\n## How to create jail environment\n``` \n$ sudo apt install debootstrap    ※ If you have not installed debootstrap in Ubuntu.\n$ make build                      ※ Build mimixbox binary\n$ sudo make jail                  ※ Create jail environment at /tmp/mimixbox/jail\n\n$ sudo chroot /tmp/mimixbox/jail /bin/bash   ※ Dive to jail\n# mimixbox --full-install /usr/local/bin     ※ Install MimixBox's command in jail\n```\n\n# Roadmap\n- Step1. Implements many common Unix commands (〜Version 0.x.x).\n- Step2. Increase the options for each commands (〜Version 1.x.x).\n- Step3. Change the command to modern specifications(〜Version 2.x.x)\n  \nNow, MimixBox has not implemented enough commands ([currently supported command list is here](./docs/introduction/en/CommandAppletList.md)). Therefore, as a project, we will increase the number of commands and aim for a state where dog fooding can be done with the highest priority.\n    \nThen increase the command options to the same level as Coreutils and other packages. Note that MimixBox does not aim to create commands equivalent to Coreutils. However, we think it's better to have the options that Linux users expect.\n  \nFinally, it's the phase that makes the Mimix Box unique. Extend commands to high functionality, like [bat](https://github.com/sharkdp/bat) and [lsd](https://github.com/Peltoche/lsd), which are reimplementations of cat and ls.\n\n# Original commands in MimixBox\nMimixBox has its own commands that don't exist in packages like Coreutils.\n|Command (Applet) Name | Description|\n|:--|:--|\n|[fakemovie](./docs/examples/fakemovie/en/fakemovie.md) | Adds a video playback button to the image|\n|[ghrdc](./docs/examples/ghrdc/en/ghrdc.md) | GitHub Relase Download Counter|\n|[path](./docs/examples/path/en/path.md) | Manipulate filename path|\n|[sddf](./docs/examples/sddf/en/sddf.md) | Search \u0026 Delete Dupulicated File|\n|[serial](./docs/examples/serial/en/serial.md) | Rename the file to the name with a serial number|\n\n# Contributing\nFirst off, thanks for taking the time to contribute! ❤️  See [CONTRIBUTING.md](./CONTRIBUTING.md) for more information.\nContributions are not only related to development. For example, GitHub Star motivates me to develop!\n[![Star History Chart](https://api.star-history.com/svg?repos=nao1215/mimixbox\u0026type=Date)](https://star-history.com/#nao1215/mimixbox\u0026Date)\n\n# Contact\nIf you would like to send comments such as \"find a bug\" or \"request for additional features\" to the developer, please use one of the following contacts. \nWe are also looking forward to sponsorship.\n\n- [GitHub Issue](https://github.com/nao1215/mimixbox/issues)\n- [Twitter@mimixbox156](https://twitter.com/mimixbox156) ※ MimixBox project information\n- [Patreon](https://www.patreon.com/mimixbox?fan_landing=true)\n\n# LICENSE\nThe MimixBox project is licensed under the terms of the MIT license and Apache License 2.0.  \nSee [LICENSE](./LICENSE) and [NOTICE](./NOTICE)\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://debimate.jp/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/22737008?v=4?s=75\" width=\"75px;\" alt=\"CHIKAMATSU Naohiro\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eCHIKAMATSU Naohiro\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/nao1215/mimixbox/commits?author=nao1215\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/polynomialspace\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/45617594?v=4?s=75\" width=\"75px;\" alt=\"polynomialspace\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003epolynomialspace\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/nao1215/mimixbox/commits?author=polynomialspace\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/k-avy\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/81437739?v=4?s=75\" width=\"75px;\" alt=\"Kavya Shukla\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKavya Shukla\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/nao1215/mimixbox/commits?author=k-avy\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n  \u003ctfoot\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" size=\"13px\" colspan=\"7\"\u003e\n        \u003cimg src=\"https://raw.githubusercontent.com/all-contributors/all-contributors-cli/1b8533af435da9854653492b1327a23a4dbd0a10/assets/logo-small.svg\"\u003e\n          \u003ca href=\"https://all-contributors.js.org/docs/en/bot/usage\"\u003eAdd your contributions\u003c/a\u003e\n        \u003c/img\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tfoot\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnao1215%2Fmimixbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnao1215%2Fmimixbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnao1215%2Fmimixbox/lists"}