{"id":22912694,"url":"https://github.com/isaacwoods/poplar","last_synced_at":"2025-04-09T05:08:34.371Z","repository":{"id":37092507,"uuid":"101495023","full_name":"IsaacWoods/poplar","owner":"IsaacWoods","description":"Microkernel and userspace written in Rust exploring modern ideas","archived":false,"fork":false,"pushed_at":"2024-09-18T09:57:22.000Z","size":1772086,"stargazers_count":251,"open_issues_count":31,"forks_count":8,"subscribers_count":13,"default_branch":"main","last_synced_at":"2024-10-08T02:42:03.907Z","etag":null,"topics":["kernel","microkernel","operating-system","os","osdev","risc-v","rust","x86-64"],"latest_commit_sha":null,"homepage":"https://poplar.isaacwoods.dev","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/IsaacWoods.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"IsaacWoods"}},"created_at":"2017-08-26T15:35:08.000Z","updated_at":"2024-09-20T22:21:30.000Z","dependencies_parsed_at":"2024-01-14T10:59:44.456Z","dependency_job_id":"1f0bed1d-b23b-4af0-ae21-ae342a84da22","html_url":"https://github.com/IsaacWoods/poplar","commit_stats":null,"previous_names":["pebble-os/pebble"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IsaacWoods%2Fpoplar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IsaacWoods%2Fpoplar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IsaacWoods%2Fpoplar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IsaacWoods%2Fpoplar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/IsaacWoods","download_url":"https://codeload.github.com/IsaacWoods/poplar/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247980837,"owners_count":21027808,"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":["kernel","microkernel","operating-system","os","osdev","risc-v","rust","x86-64"],"created_at":"2024-12-14T04:29:37.515Z","updated_at":"2025-04-09T05:08:34.354Z","avatar_url":"https://github.com/IsaacWoods.png","language":"Rust","funding_links":["https://github.com/sponsors/IsaacWoods"],"categories":[],"sub_categories":[],"readme":"# Poplar\n[![Build](https://github.com/IsaacWoods/poplar/actions/workflows/build.yml/badge.svg)](https://github.com/IsaacWoods/poplar/actions/workflows/build.yml)\n[![License: MPL-2.0](https://img.shields.io/badge/license-MPL--2.0-blue.svg)](https://opensource.org/licenses/MPL-2.0)\n\nPoplar is a microkernel and userspace written in Rust, exploring modern ideas. It is not a UNIX, and does not aim\nfor compatibility with existing software. It currently supports x86_64 and RISC-V.\n\nThe best way to learn about Poplar is to read [the book](https://isaacwoods.github.io/poplar/book/).\n[The website](https://isaacwoods.github.io/poplar) also hosts some other useful resources.\n\n## Building and running\n**Operating systems tend to be complex to build and run. We've tried to make this as simple as we can, but if you\nencounter problems or have suggestions to make it easier, feel free to file an issue :)**\n\n### Getting the source\nFirstly, clone the repository and fetch the submodules:\n```\ngit clone https://github.com/IsaacWoods/poplar.git\ngit submodule update --init --recursive\n```\n\n### Things you'll need\n- A nightly Rust toolchain\n- The `rust-src` component (install with `rustup component add rust-src`)\n- A working QEMU installation (one that provides `qemu-system-{arch}`)\n\n### Building\nThis repository includes an [`xtask`-based](https://github.com/matklad/cargo-xtask) build tool to simplify building and running Poplar.\nThe tool can be configured in `Poplar.toml` - this can, for example,  be used to set whether to build using the\nrelease profile, and the architecture to build for.\n\n* Running `cargo xtask dist` will build a disk image\n* Running `cargo xtask qemu` will build a disk image, and then start emulating it in QEMU\n\nSee `cargo xtask --help` for more information about how to invoke the build system.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisaacwoods%2Fpoplar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fisaacwoods%2Fpoplar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisaacwoods%2Fpoplar/lists"}