{"id":19444268,"url":"https://github.com/cyteon/catos","last_synced_at":"2026-02-04T04:04:01.404Z","repository":{"id":256268697,"uuid":"854782694","full_name":"Cyteon/catos","owner":"Cyteon","description":"A small AMD64 kernel written in Rust.","archived":false,"fork":false,"pushed_at":"2024-11-17T11:15:17.000Z","size":66,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-25T00:37:23.209Z","etag":null,"topics":["amd64","kernel","os","rust","x86-64"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/Cyteon.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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-09-09T19:12:08.000Z","updated_at":"2024-11-17T11:15:20.000Z","dependencies_parsed_at":"2024-10-30T18:16:59.663Z","dependency_job_id":"03f8d600-f324-467e-b59e-62e3741ba259","html_url":"https://github.com/Cyteon/catos","commit_stats":null,"previous_names":["cyteon/catos"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Cyteon/catos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyteon%2Fcatos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyteon%2Fcatos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyteon%2Fcatos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyteon%2Fcatos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cyteon","download_url":"https://codeload.github.com/Cyteon/catos/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyteon%2Fcatos/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262473904,"owners_count":23316899,"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":["amd64","kernel","os","rust","x86-64"],"created_at":"2024-11-10T16:06:15.050Z","updated_at":"2026-02-04T04:04:01.362Z","avatar_url":"https://github.com/Cyteon.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CatOS\nA small AMD64 kernel written in Rust.\n\n\u003e [!NOTE] \n\u003e This project is based off of https://os.phil-opp.com/, and as such, some aspects of the projects will be similar to it. \n\n# Accquiring CatOS\n\u003c!--- maybe add a section about releases.. i couldn't get it to compile :( -mxtlrr ---\u003e\n## From source\nYou'll need two things:\n- Qemu (on Arch Linux as `qemu-system-full`)\n- Rust\n\nboth of which are available in package managers. Along with this, you'll need to install\n`bootimage` if you haven't already:\n```sh\n$ cd ~    # Super important. See rust-osdev/bootimage issue 64\n$ sudo cargo install bootimage\n# Also install llvm-tools-preview with 'rustup component add llvm-tools-preview', if not done\n# already.\n```\n\n### Compilation\n```sh\n# Cloning the repository\n$ git clone https://github.com/Cyteon/catos\n$ cd catos\n# Here is where you'll install llvm-tools-preview. See above\n$ cargo build\n```\nThe output file is in `target/x86_64-cat_os/debug`.\n\n## The Tests\nCatOS comes with its own test suite. You can use\n```\n$ cargo test\n```\n\nto run the tests. You *will* need to have qemu for this.\n\n# Running CatOS\n\n## Real Hardware\nThe kernel is a floppy disk image, so you can follow [this](https://wiki.osdev.org/Bootable_CD). To make\nthe 1.44 MB floppy, you can\n```sh\n# Generate a 1.44 mb empty disk image\n$ dd if=/dev/zero of=flp.img bs=512 count=2880\n# Copy the kernel image\n$ cp target/x86_64-cat_os/debug/bootimage-cat_os.bin kernel.elf\n$ dd if=flp.img of=kernel.elf conv=notrunc\n```\n\n## QEMU (with Cargo)\n```bash\n$ cargo run\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyteon%2Fcatos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcyteon%2Fcatos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyteon%2Fcatos/lists"}