{"id":21710662,"url":"https://github.com/mbrav/gigachad_kernel_module","last_synced_at":"2025-09-13T21:23:26.386Z","repository":{"id":215936474,"uuid":"739908670","full_name":"mbrav/gigachad_kernel_module","owner":"mbrav","description":"A simple Linux Kernel module for Gigachads","archived":false,"fork":false,"pushed_at":"2024-01-09T18:18:47.000Z","size":33,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-11T23:43:40.740Z","etag":null,"topics":["linux","linux-kernel","linux-kernel-hacking","linux-kernel-module"],"latest_commit_sha":null,"homepage":"","language":"C","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/mbrav.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}},"created_at":"2024-01-06T22:52:55.000Z","updated_at":"2024-12-05T09:52:13.000Z","dependencies_parsed_at":"2024-01-09T19:46:03.057Z","dependency_job_id":"b343d651-a52d-45e9-824d-bc846266d029","html_url":"https://github.com/mbrav/gigachad_kernel_module","commit_stats":null,"previous_names":["mbrav/gigachad_kernel_module"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mbrav/gigachad_kernel_module","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbrav%2Fgigachad_kernel_module","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbrav%2Fgigachad_kernel_module/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbrav%2Fgigachad_kernel_module/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbrav%2Fgigachad_kernel_module/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mbrav","download_url":"https://codeload.github.com/mbrav/gigachad_kernel_module/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbrav%2Fgigachad_kernel_module/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275028077,"owners_count":25393036,"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","status":"online","status_checked_at":"2025-09-13T02:00:10.085Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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","linux-kernel","linux-kernel-hacking","linux-kernel-module"],"created_at":"2024-11-25T23:16:47.776Z","updated_at":"2025-09-13T21:23:26.261Z","avatar_url":"https://github.com/mbrav.png","language":"C","readme":"# Gigachad Kernel module\n\nThis is a simple Linux Kernel module. Try it inside a VM. Don't use on your install (unless you are a Gigachad).\n\n![Gigachad loading his own Kernel module](https://i.imgflip.com/6c7jl7.png)\n\nAll code is free to use. **Modifications in editors besides Vim / Neovim are not allowed.**\n\n## Prerequisites\n\nOn Debian-based distros Install:\n\n```shell\napt install linux-headers-$(uname -r) gcc make build-essential libncurses-dev exuberant-ctags\n```\n\nWhereas, if you are on Arch, you probably don't even need to install anything because Arch is a Gigachad-teir distro by default.\n\n*I use Arch btw.*\n\n## Building\n\n```shell\nmake\n```\n\n### Loading the module into your Kernel\n\nTo load the the module, you must install the `.ko` file. You can do so with the following make command:\n\n```shell\nsudo make install\n```\n\n### Unloading module from your Kernel\n\nTo unload the module from your kernel run:\n\n```shell\nsudo make uninstall\n```\n\n### Testing if the module was loaded\n\nTo test whether the module run `dmesg` command to check if the following message are present:\n\n```shell\n[ 3433.692029] Gigachad Kernel Module loaded!\n[ 3442.597728] Gigachad Kernel Module unloaded!\n```\n\n#### BTF generation error\n\nIn case you get a similar error when running `make`:\n\n```\nSkipping BTF generation for /home/user/linux_mod/gigachad_kernel_module.ko due to unavailability of vmlinux\n```\n\nThis is due to unavailability of vmlinux on your system. To remedy this, try installing the following package:\n\n```shell\napt install dwarves\n```\n\nThen, check if the vmlinux file is located in `/sys/kernel/btf` by running:\n\n```shell\nls /sys/kernel/btf\n```\n\nIf the vmlinux file is present, copy it to the appropriate directory using the following command:\n\n```shell\ncp /sys/kernel/btf/vmlinux /usr/lib/modules/$(uname -r)/build/\n```\n\nIf after running `make` once again you continue getting the error:\n\n```\n/bin/sh: 1: ./tools/bpf/resolve_btfids/resolve_btfids: not found\n```\n\nSee the [following solution](https://github.com/aircrack-ng/rtl8188eus/issues/263).\n\n### Cleaning\n\n```shell\nmake clean\n```\n\n## Other info\n\n- [*The Linux Kernel Module Programming Guide*](https://github.com/sysprog21/lkmpg)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbrav%2Fgigachad_kernel_module","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmbrav%2Fgigachad_kernel_module","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbrav%2Fgigachad_kernel_module/lists"}