{"id":15294093,"url":"https://github.com/bhojpur/kernel","last_synced_at":"2026-04-30T17:31:59.375Z","repository":{"id":57650134,"uuid":"446661275","full_name":"bhojpur/kernel","owner":"bhojpur","description":"The Bhojpur Kernel is an operating system library used by the Bhojpur.NET Platform for delivery of fast and secure applications or services.","archived":false,"fork":false,"pushed_at":"2022-04-21T15:17:25.000Z","size":1027,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T11:03:58.133Z","etag":null,"topics":["linux-kernel","unikernel"],"latest_commit_sha":null,"homepage":"https://page.bhojpur-consulting.com/product/kernel/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bhojpur.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-01-11T03:13:41.000Z","updated_at":"2024-06-17T08:35:37.000Z","dependencies_parsed_at":"2022-09-09T05:20:41.589Z","dependency_job_id":null,"html_url":"https://github.com/bhojpur/kernel","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/bhojpur/kernel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhojpur%2Fkernel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhojpur%2Fkernel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhojpur%2Fkernel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhojpur%2Fkernel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bhojpur","download_url":"https://codeload.github.com/bhojpur/kernel/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhojpur%2Fkernel/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32472396,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: 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":["linux-kernel","unikernel"],"created_at":"2024-09-30T16:57:29.598Z","updated_at":"2026-04-30T17:31:59.361Z","avatar_url":"https://github.com/bhojpur.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bhojpur Kernel - Library Operating System\n\nThe `Bhojpur Kernel` is an `operating system` as a library (i.e., Unikernel framework) used by\nthe [Bhojpur.NET Platform](https://github.com/bhojpur/platform) ecosystem for delivery of fast\nand secure `applications` or `services`. It has the ability to convert normal `Go` program into\nan ELF unikernel, which could be run on a bare metal. It is a tool for compiling application\nsources into `Unikernel` (i.e., lightweight bootable disk images) and `MicroVM` rather than\nbinaries.\n\n## Unikernel Framework\n\nThe `Bhojpur Kernel` runs and manages instances of compiled images across a variety of cloud\nproviders as well as locally. It utilizes a simple `Docker`-like command line interface (i.e.,\n`kernctl`), making building `Unikernel` and `MicroVM` as easy as building containers.\n\n### Supported Providers\n\n* [Firecracker](https://firecracker-microvm.github.io/)\n* Virtualbox\n* AWS\n* Google Cloud\n* vSphere\n* QEMU\n* UKVM\n* Xen\n* OpenStack\n* Photon Controller\n\nThe `Instance Listener` is a special component of th eBhojpur Kernel that bootstraps unikernel\ninstances running on certain providers (currently `vSphere` and `VirtualBox`).\n\n### Build Unikernel Image\n\nTo start with, you need `QEMU` to run it locally on a macOS.\n\n```bash\n$ brew install x86_64-elf-binutils x86_64-elf-gcc x86_64-elf-gdb\n$ brew install qemu\n```\n\nYou can start using the following command\n\n```bash\n$ builder qemu\n```\n\nFirstly, get the `kernel` command line tool.\n\n```\n$ go install github.com/bhojpur/kernel\n```\n\nRun the following command to build your `Unikernel` application.\n\n```\n$ kernel build -o kernel.elf\n```\n\nThe following command can package your custom application into a `Unikernel` ISO file.\n\n```bash\n$ kernel pack -o bhojpur-kernel.iso -k kernel.elf\n```\n\nThen, you can use [https://github.com/ventoy/Ventoy](https://github.com/ventoy/Ventoy) to\nrun the ISO file on a bare metal compute server.\n\n### Unikernel Types Supported\n\n* **Firecracker**: the `kernctl` supports compiling Go source code into [Firecracker](https://firecracker-microvm.github.io/) MicroVMs\n* **rump**: the `kernctl` supports compiling Python, Node.js, and Go source code into [rumprun](https://github.com/rumpkernel) unikernels\n* **OSv**: the `kernctl` supports compiling Java, Node.js, C and C++ source code into [OSv](http://osv.io/) unikernels\n* **IncludeOS**: the `kernctl` supports compiling C++ source code into [IncludeOS](https://github.com/hioa-cs/IncludeOS) unikernels\n* **MirageOS**: the `kernctl` supports compiling OCaml source code into [MirageOS](https://mirage.io) unikernels\n\n### Source Code Build\n\nThe `Bhojpur Kernel` is compiled into binary image by the `builder` tool using the configuration settings\ndefined in the `builderfile.go` file.\n\n```bash\n$ go mod tidy\n$ go get\n$ builder iso\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbhojpur%2Fkernel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbhojpur%2Fkernel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbhojpur%2Fkernel/lists"}