30 open-source projects similar to linux-surface/linux-surface, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Linux Surface alternative.
Brunch is a boot framework and hardware adaptation layer designed to run ChromeOS on non-native x86_64 PCs. It utilizes a custom EFI bootloader and kernel injection to enable the operating system to function on Intel and AMD processors not originally supported by official images. The framework distinguishes itself by transforming official recovery images into generic bootable versions through the use of custom kernels and EFI partition bootstrapping. It allows for the importation of security keys into system firmware to support secure boot and provides tools to toggle hardware patches and fea
This is the official documentation repository for Raspberry Pi hardware and software. It covers the complete range of Raspberry Pi single-board computers, the RP-series microcontrollers, and the Raspberry Pi operating system. The documentation provides reference material for setting up devices, configuring hardware, and using the system for tasks including AI inference, camera and video capture, embedded development, and remote access. The documentation covers the full boot chain from the GPU firmware and EEPROM bootloader through to kernel loading, with detailed guidance on boot configuratio
NuttX is a POSIX-compliant real-time operating system designed for microcontrollers ranging from 8-bit to 64-bit architectures. It provides a deterministic execution environment with a real-time task scheduler and a POSIX embedded kernel to ensure portable code execution across diverse hardware targets. The project distinguishes itself through a comprehensive hardware abstraction layer that provides standardized drivers for I2C, SPI, CAN, and USB across various semiconductor chipsets. It also features an embedded networking stack supporting TCP, UDP, IPv4, and IPv6, alongside industrial proto
This project is a Linux kernel designed for Windows Linux integration, providing the underlying operating system kernel required to execute binary files and applications within the Windows Subsystem for Linux. It utilizes hypervisor-based virtualization to run a full kernel within a lightweight utility virtual machine managed by a Windows host. The repository enables the customization and compilation of the kernel from source. This allows for the modification of system behavior, the addition of specific drivers, and the tailoring of hardware compatibility for virtualized environments. The sy
This repository is a collection of reference source code and implementation examples for developing drivers using the Windows Driver Kit. It provides hardware device driver samples and development templates for building kernel-mode software that enables communication between the Windows operating system and hardware devices. The library includes examples for creating universal Windows drivers, which utilize a shared set of interfaces to operate across multiple versions of the operating system. It also contains specialized implementation samples for various hardware categories, including netwo
Box86 is a Linux userspace emulator and instruction translator designed to run x86 binaries on ARM-based devices. It functions as a hardware compatibility layer that simulates an x86 environment, allowing software built for different processor architectures to execute on ARM Linux. The project utilizes a dynamic recompiler to translate x86 opcodes into native ARM instructions at runtime, increasing execution speed over standard interpretation. To further improve performance and stability, it wraps native system libraries and Vulkan drivers, redirecting architecture-specific calls to native ho
xpadneo is a Linux kernel driver that enables Bluetooth Low Energy connectivity and input support for wireless Xbox gamepads. It functions as a low-level driver for managing wireless controller connections and report descriptors via the Bluetooth protocol. The project includes an input mapper to override default button mappings and disable kernel dead zones, providing raw axis data for high-precision movement. It also features a haptic controller for managing rumble intensity and high-frequency trigger force feedback, alongside a gamepad mouse emulator that converts stick and button inputs in
Smartknob is an open-source programmable rotary interface platform that combines motor-driven feedback and sensor-based tracking to provide tactile input for digital environments. It functions as a customizable input device peripheral, utilizing a brushless motor and a magnetic encoder to translate physical rotation into precise control signals for software applications. The platform distinguishes itself through software-defined haptic feedback, which allows for the simulation of physical sensations such as clicks, springs, and hard stops. By employing closed-loop control and real-time motor
Bazzite is an immutable, atomic-image-based operating system designed for gaming performance and handheld hardware. It utilizes a read-only root filesystem and versioned images to provide atomic updates and instant system rollbacks, ensuring a stable core environment. The system is distinguished by its deep optimization for portable gaming devices, featuring dedicated handheld hardware management for CPU undervolting, fan control, and display refresh rate overclocking. It includes a specialized gaming mode that boots directly into a console-like interface with integrated input mapping and a t
ZealOS is a 64-bit operating system designed for bare-metal deployment and custom kernel development. It provides a self-contained environment that operates within a single-address-space memory model, where all software executes in a ring-zero privilege level to eliminate context switching and facilitate direct hardware interaction. The system distinguishes itself through a monolithic architecture that integrates just-in-time compilation, allowing source code to be translated into machine instructions during runtime. It bypasses traditional abstraction layers by utilizing direct hardware memo
This project is a macOS system camera driver and software plugin that exposes software video streams as hardware-recognized camera inputs. It functions as an OBS virtual camera plugin, allowing the live output of OBS to be utilized as a webcam device within other applications. The tool enables the routing of composited video from a production suite into video conferencing applications such as Zoom or Google Meet. This allows for the streaming of processed scenes instead of a raw webcam feed. The system integrates with macOS using a kernel-level device driver and shared-memory buffer transfer
The Linux Kernel Module Programming Guide is an educational resource that teaches how to write, compile, and manage loadable kernel modules for modern Linux kernels. It covers the complete lifecycle of kernel modules, from building and loading to unloading and debugging, with a focus on extending kernel functionality without recompiling the entire kernel. The guide provides comprehensive coverage of core kernel programming concepts including dynamic module loading, file-operation registration, interrupt handling, kernel-user data copying, concurrency control, and deferred task scheduling. It
usbkill is a physical access defense tool and system monitor that triggers immediate power-off or shutdown sequences when unauthorized USB device changes are detected. It functions as a USB device shutdown trigger and volatile memory wiper designed to prevent forensic data recovery by automating system termination upon hardware tampering. The tool includes a USB device whitelist manager that ignores trusted hardware to prevent accidental shutdowns during legitimate device usage. It provides anti-forensic data protection by executing destructive commands to erase RAM and swap space before the
LenovoLegionToolkit is a hardware management tool and Windows hardware control interface designed specifically for Lenovo Legion laptops. It functions as a framework for adjusting power modes, battery charging thresholds, and thermal profiles, while providing a dedicated controller for per-key and zone-based RGB keyboard lighting. The project is distinguished by its ability to customize the UEFI boot logo by replacing the default system image on the UEFI partition. It also features a hardware automation framework that triggers specific scripts or programs automatically in response to hardware
linux-cachyos is a performance-tuned Arch Linux kernel distribution that combines advanced compiler optimizations with multiple CPU scheduler options to enhance system responsiveness and throughput. The project provides kernel variants supporting BORE, EEVDF, and BMQ schedulers, enabling users to match scheduling behavior to interactive, general-purpose, or throughput-oriented workloads, alongside real-time preemption capabilities for time-sensitive applications. The kernel is compiled using Clang with Thin Link-Time Optimization and incorporates AutoFDO profile-guided optimization, which use
XNU is a hybrid operating system kernel that combines a microkernel architecture with a monolithic layer for system services. It provides a foundation for operating system development, incorporating standardized system-call interfaces, a modular device driver framework, and mandatory access control security. The architecture features a Mach-based microkernel and a BSD-based monolithic layer. It utilizes a message-passing inter-process communication bus for secure data exchange between isolated kernel components and user-space processes, alongside an object-oriented driver framework that decou
embedded-notes is a collection of technical study guides and development notes focused on embedded Linux, Linux kernel internals, and C programming. It serves as a reference for embedded systems development and a preparation resource for technical interviews in the field. The project provides detailed documentation on writing device drivers, managing virtual memory, and understanding kernel internals. It also includes guides on IoT network protocols, such as MQTT and TCP/IP, and outlines the architectural details of chip architectures and hardware peripherals. The material covers a broad sur
Zephyr is a real-time operating system and cross-platform embedded framework designed for resource-constrained hardware architectures. It provides an embedded kernel that manages memory, power consumption, and hardware peripherals across multiple microcontroller architectures. The project utilizes a hardware abstraction layer to decouple high-level kernel services from physical hardware through standardized driver interfaces. It employs a device tree hardware description format and a hierarchical configuration system to optimize binaries and feature sets for specific hardware constraints. Th
Kwrt is a custom router firmware generator and build system designed to compile personalized network hardware images and Linux-based router operating systems. It specifically serves as an OpenWrt firmware builder and image customizer, allowing for the creation of tailored operating systems based on specific software packages, kernel configurations, and hardware targets. The system produces firmware in multiple boot formats, including EFI, Legacy, virtual disk files, and root archives for containers. It enables the generation of specialized images for x86 or virtualized network hardware, provi
This project is a Windows Precision Touchpad driver and Apple Trackpad HID driver. It functions as an input device gesture driver that converts raw touch data from Apple trackpads and MacBooks into native multi-touch gestures and precise pointer movement. The driver implements the precision touchpad protocol to enable native Windows gesture and pointer controls for Apple hardware. This allows the operating system to recognize Apple trackpads as precision touchpads, replacing basic mouse functionality with native multi-finger swipes and precise scrolling. The implementation covers kernel-mode
This repository contains the complete source code for the OpenBSD operating system and its base utilities. It is a Unix-like operating system focused on a secure, portable, and multi-user environment, featuring a C-based system kernel that manages hardware resources and provides essential services. The project provides a source-based system construction model to compile the core kernel and base utilities from raw files. It includes a cross-compilation toolchain for generating the tools and headers necessary to build binaries for target architectures different from the host machine. The codeb
This project is a high-performance, lightweight C graphics library designed for creating interactive user interfaces on resource-constrained embedded hardware. It functions as a comprehensive framework that provides a widget toolkit, a rendering engine, and hardware-agnostic drivers to support the development of graphical displays on microcontrollers and embedded systems. The framework distinguishes itself through a flexible, object-oriented widget hierarchy and a declarative layout engine that supports responsive design patterns like flexbox and grid systems. It enables developers to synchro
LiteOS is a lightweight real-time operating system kernel designed for constrained devices with limited memory and processing power. It provides a foundation for embedded IoT development, focusing on stable and predictable system resource management. The system implements a preemptive task scheduler and interrupt-driven resource management to ensure real-time responsiveness. It incorporates a tickless idle mechanism and optimized sleep-wake cycles to reduce power consumption in battery-powered hardware. The kernel includes capabilities for task synchronization via semaphores and static memor
This project provides specialized system utilities for deploying volatile rescue environments, managing root filesystems, and migrating live operating systems remotely. It functions as a tool for wiping and reinstalling a Linux system via SSH and serving as a remote OS migration tool. The software enables the deployment of an in-memory rescue environment over SSH to perform emergency maintenance and disk modifications. It allows for the unmounting of root filesystems and the detachment of volumes from a live kernel to facilitate repartitioning and filesystem layout changes without requiring a
TWiLightMenu is a retro gaming frontend and game launcher for Nintendo DS hardware. It serves as a custom firmware tool and a unified interface for launching native games, emulated ROMs, and homebrew applications, while also functioning as a cheat manager and handheld storage manager. The project features a custom theme engine that allows for the personalization of the visual interface through custom images, fonts, and coordinate sets, as well as the use of custom boot splash screens and system audio. It distinguishes itself through a modular extension system that supports third-party plugins
uperf is an Android performance tuning tool and Linux kernel parameter manager designed to optimize device responsiveness and battery life. It functions as a CPU affinity and scheduling manager, a hardware power profile controller, and a real-time system monitor that adjusts kernel parameters and CPU frequencies. The project distinguishes itself through real-time system monitoring of touchscreen input and frame rendering to trigger immediate performance boosts. It utilizes hardware performance profiling to apply pre-tuned configuration files tailored to specific hardware platforms, balancing
LACT is an AMD GPU control suite and performance tuner for Linux systems. It functions as a GPU hardware monitor and management interface designed to optimize VRAM and processor frequencies through offsets and custom power profiles. The project utilizes a client-server architecture, allowing a graphical interface to monitor and control graphics hardware over a network connection via a background daemon. This remote management capability enables users to manage hardware on distant machines from a centralized interface. The suite covers hardware tuning for overclocking and undervolting, power
Boot2Docker is a minimal Linux distribution that boots entirely from RAM to turn any machine into a Docker host. It is delivered as a bootable ISO image that can be written to SD cards, USB sticks, or hard disks, starting Docker containers in about five seconds without requiring a full operating system installation. The system is preconfigured for use as a VirtualBox virtual machine, with persistent disk mounting that automatically stores Docker images, containers, volumes, and SSH keys across restarts. It supports host-to-container file sharing through VirtualBox Guest Additions integration,
This project provides a development framework for writing loadable Linux kernel modules using the Rust programming language. It establishes a methodology for safe systems programming by enforcing memory and thread safety within the restricted execution environment of the kernel, allowing developers to extend operating system functionality while preventing common memory corruption errors. The framework distinguishes itself through automated generation of type-safe foreign function interfaces, which bridge high-level code with low-level kernel headers and system structures. It maps high-level s
Arpl is a bootloader manager and custom kernel loader for network attached storage devices. It provides a network boot environment to automate the fetching, flashing, and installation of modified operating systems and kernels onto hardware storage. The project distinguishes itself through a remote management suite that exposes bootloader controls via a web browser, secure shell connection, or local terminal. It utilizes RSS feeds to automate the retrieval of the latest system images and version metadata for online updates. The system handles hardware boot configuration by mapping network int