{"id":16286483,"url":"https://github.com/chenpi11/minimal-linux","last_synced_at":"2025-10-25T11:31:52.853Z","repository":{"id":224949337,"uuid":"761605974","full_name":"ChenPi11/minimal-linux","owner":"ChenPi11","description":"A tiny Linux distribution.","archived":false,"fork":false,"pushed_at":"2024-03-10T15:02:03.000Z","size":192,"stargazers_count":20,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-03-11T03:21:36.197Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ChenPi11.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":"2024-02-22T06:25:55.000Z","updated_at":"2024-03-11T03:02:48.000Z","dependencies_parsed_at":"2024-03-09T03:20:29.541Z","dependency_job_id":null,"html_url":"https://github.com/ChenPi11/minimal-linux","commit_stats":null,"previous_names":["chenpi11/minimal-linux"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChenPi11%2Fminimal-linux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChenPi11%2Fminimal-linux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChenPi11%2Fminimal-linux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChenPi11%2Fminimal-linux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ChenPi11","download_url":"https://codeload.github.com/ChenPi11/minimal-linux/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219865708,"owners_count":16555924,"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":[],"created_at":"2024-10-10T19:43:13.669Z","updated_at":"2025-10-25T11:31:52.524Z","avatar_url":"https://github.com/ChenPi11.png","language":"Python","readme":"# DEPRECATED! DEPRECATED! DEPRECATED!\n\n## minimal-linux is merged into the MLinux project, https://github.com/mlinux-project/minimal is the latest repo.\n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n# MinimalLinux - Minimal Linux filesystem\n\n## Dependencies\n\n### For building binary\n\n- A C runtime, compiler, linker, etc.\n  - Mandatory.\n  - Either the platform's native 'cc', or GCC 4.2 or newer. For building BusyBox and Linux.\n  - GCC Homepage:\n    \u003chttps://gcc.gnu.org\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/gcc\u003e\n\n- A shell\n  - Mandatory.\n  - Either the platform's native 'sh', or GNU Bash.\n  - GNU Bash Homepage:\n    \u003chttps://www.gnu.org/software/bash\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/bash\u003e\n\n- Awk\n  - Mandatory.\n  - Either the platform's native awk, mawk, or nawk, or GNU awk.\n  - GNU awk Homepage:\n    \u003chttps://www.gnu.org/software/gawk\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/gawk\u003e\n\n- Bc\n  - Mandatory.\n  - Either the platform's native bc, or GNU bc. For building Linux.\n  - GNU bc Homepage:\n    \u003chttps://www.gnu.org/software/bc\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/bc\u003e\n\n- Bison\n  - Mandatory.\n  - Either the platform's native bison, or GNU bison. For building Linux.\n  - GNU Bison Homepace:\n    \u003chttps://www.gnu.org/software/bison\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/bison\u003e\n\n- Core POSIX utilities\n  - Mandatory.\n  - Either the platform's native utilities, or GNU coreutils.\n  - GNU coreutils Homepage:\n    \u003chttps://www.gnu.org/software/coreutils\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/coreutils\u003e\n\n- Cpio\n  - Mandatory.\n  - Either the platfrom's native cpio, or GNU cpio.\n  - GNU cpio Homepage:\n    \u003chttps://www.gnu.org/software/cpio\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/cpio\u003e\n\n- Flex\n  - Mandatory.\n  - For building Linux.\n  - Homepage:\n    \u003chttps://github.com/westes/flex\u003e\n  - Download:\n    \u003chttps://github.com/westes/flex/releases\u003e\n\n- GNU Grub\n  - Mandatory.\n  - GNU Grub 2.x. For install grub in the image file.\n  - Homepage:\n    \u003chttps://www.gnu.org/software/grub\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/grub\u003e\n\n- GNU Make\n  - Mandatory.\n  - GNU Make 3.79.1 or newer.\n  - GNU Make Homepage:\n    \u003chttps://www.gnu.org/software/make\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/make\u003e\n\n- Grep\n  - Mandatory.\n  - Either the platform's native grep, or GNU grep.\n  - Homepage:\n    \u003chttps://www.gnu.org/software/grep\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/grep\u003e\n\n- Kpartx\n  - Mandatory.\n  - For mounting filesystem.\n  - Homepage:\n    \u003chttp://christophe.varoqui.free.fr\u003e\n\n- libelf\n  - Mandatory.\n  - Must be libelf-dev. For building Linux.\n\n- libssl\n  - Mandatory.\n  - Must be libssl-dev. For building Linux.\n\n- QEMU Utils\n  - Mandatory.\n  - For creating disk image.\n  - Homepage:\n    \u003chttps://www.qemu.org\u003e\n  - Download:\n    \u003chttps://www.qemu.org/download\u003e\n\n- Sed\n  - Mandatory.\n  - Either the platform's native sed, or GNU sed.\n  - Homepage:\n    \u003chttps://www.gnu.org/software/sed\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/sed\u003e\n\n- Sudo\n  - Mandatory.\n  - Homepage:\n    \u003chttps://www.sudo.ws\u003e\n  - Download:\n    \u003chttps://www.sudo.ws/dist\u003e\n\n- Util-linux\n  - Mandatory.\n  - Homepage:\n    \u003chttps://github.com/util-linux/util-linux\u003e\n  - Download:\n    \u003chttps://github.com/util-linux/util-linux/tags\u003e\n\n- Wget\n  - Mandatory.\n  - Either the platform's native 'wget', or GNU Wget. For getting source codes.\n  - GNU Wget Homepage:\n    \u003chttps://www.gnu.org/software/wget\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/wget\u003e\n\n- XZ Utils\n  - Mandatory.\n  - For compressing image file and Linux kernel.\n  - XZ Utils Homepage:\n    \u003chttps://xz.tukaani.org/xz-utils\u003e\n  - Download:\n    \u003chttps://xz.tukaani.org/xz-utils/#releases\u003e\n\n#### Install binary building dependencies on Debian\n\n```shell\nsudo apt-get update \u0026\u0026 sudo apt-get install gcc cpio xz-utils gawk grub2 make grep kpartx qemu-utils sed util-linux wget binutils libelf-dev libssl-dev bc flex bison -y\n```\n\n### For building tarball\n\n- GNU Autoconf\n  - Mandatory.\n  - Homepage:\n    \u003chttps://www.gnu.org/software/autoconf\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/autoconf\u003e\n\n- GNU Automake\n  - Mandatory.\n  - Homepage:\n    \u003chttps://www.gnu.org/software/automake\u003e\n  - Download:\n    \u003chttps://ftp.gnu.org/gnu/automake\u003e\n\n#### Install tarball building dependencies Debian\n\n```shell\nsudo apt-get update \u0026\u0026 sudo apt-get autoconf automake -y\n```\n\n### For generating picture\n\n- Python\n  - Mandatory.\n  - For `make picture` command.\n  - Homepage:\n    \u003chttps://python.org\u003e\n  - Download:\n    \u003chttps://python.org/ftp/python\u003e\n\n- Python Pillow\n  - Mandatory.\n  - For `make picture` command.\n  - Homepage:\n    \u003chttps://python-pillow.org\u003e\n  - Download:\n    \u003chttps://pypi.org/project/pillow/#files\u003e\n\n#### Install picture-generating dependencies on Debian\n\n```shell\nsudo apt-get update \u0026\u0026 sudo apt-get install python3 python3-pillow -y\n```\n\nOr you can using pip to install Pillow.\n\n```shell\npip install Pillow\n```\n\n### For testing\n\n- Tree\n  - Mandatory.\n  - For `make check` command.\n  - Homepage:\n    \u003chttp://oldmanprogrammer.net/source.php?dir=projects/tree\u003e\n\n- QEMU System\n  - Mandatory.\n  - For `make check` command.\n  - Homepage:\n    \u003chttps://www.qemu.org\u003e\n  - Download:\n    \u003chttps://www.qemu.org/download\u003e\n\n#### Install testing dependencies on Debian\n\n```shell\nsudo apt-get update \u0026\u0026 sudo apt-get install tree qemu-system -y\n```\n\n## Build source tarball\n\n**You need to install the dependencies first, and make sure you are in source directory.**\n\n```shell\nmake -f Makefile.devel dist\n```\n\n## Build rootfs, linux kernel and disk image\n\n```shell\n./configure\nmake -j$(nproc)\n```\n\nThe compressed rootfs will be name to `rootfs.tar.xz`.\nThe compressed linux kernel will be name to `vmlinuz.xz`.\nThe compressed disk image will be name to `disk.img`.\n\n## Configuration options\n\n- `--with-busybox-version=X.X.X`\n  - Specify the version of Busybox.\n  - Default is `1.36.1`.\n\n- `--with-linux-version=X.X.X`\n  - Specify the version of Linux kernel.\n  - Default is `6.7.5`.\n\n- `--with-busybox-mirror=OFFICIAL | \u003cURL\u003e`\n  - Specify the mirror of Busybox. If you want to use the official mirror, set it to `OFFICIAL`. Otherwise, set it to the URL of the mirror.\n  - Default is `OFFICIAL`.\n\n- `--with-linux-mirror=OFFICIAL | CDN | TSINGHUA | ALIYUN | USTC | \u003cURL\u003e`\n  - Specify the mirror of Linux kernel. If you want to use the Tsinghua mirror, set it to `TSINGHUA`. Otherwise, set it to the URL of the mirror.\n  - Default is `OFFICIAL`.\n\nLike this:\n\n```shell\n./configure --with-busybox-version=1.36.1 --with-linux-version=6.7.5 --with-busybox-mirror=OFFICIAL --with-linux-mirror=TSINGHUA\n```\n\n## Run\n\n**You should use origin binary file instead of XZ compressed one!!!**\n\nUsing this command to run `disk.img`.\n\n```shell\nqemu-system-x86_64 -m 1024 -hda disk.img\n```\n\nUsing this command to run `vmlinuz`.\n\n```shell\nqemu-system-x86_64 -m 1024 -kernel vmlinuz\n```\n\n**This vmlinuz contians initramfs, so you can execute it directly using QEMU.**\n\n## Copyright\n\nThe MinimalLinux is under GPL 2.0,\nsee file [LICENSE](./LICENSE).\n\n## Download\n\n\u003chttps://github.com/ChenPi11/miminal-linux/releases\u003e\n\n## Homepage\n\n\u003chttps://github.com/ChenPi11/miminal-linux\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenpi11%2Fminimal-linux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchenpi11%2Fminimal-linux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenpi11%2Fminimal-linux/lists"}