Fetching the latest programs, projects, and workspace data.
Find open source projects actively accepting contributors. Search repositories, filter by program milestones, difficulty tags, or tech stack.
Use our Orbit AI Matcher to find out! Get instant matching scores based on your developer skills, preferred frameworks, and contribution experience.
Convert your selected open-source project into a winning GSoC, LFX, or Outreachy application using Proposal Studio.
<p>As WireGuard is supposed to be merged in the kernel mainline soon, several issues should be fixed. I am trying to fix several kernel-related issues to make its acceptance into the kernel faster and, ultimately, improve the current codebase.</p>
Currently, CRIU cannot checkpoint or restore systemd-managed containers if there are SCM_CREDENTIALS messages waiting in a Unix socket queue. Because systemd uses these credentials for almost all service communications, any in-flight message causes CRIU to fail. We aim to solve this problem by adding support for SCM_CREDENTIALS and the newer SCM_PIDFD to CRIU’s socket queue logic. I will implement PID remapping to ensure credentials remain valid after restore and add support for modern socket options like SO_PASSPIDFD. The final deliverables will include core code updates to the socket subsystem and extend image formats.
RISC-V is an emerging open standard instruction set architecture that can be used to build hardware without paying royalties. Gentoo Prefix develops and maintains a way of installing Gentoo systems in a non-standard location, designated by a "prefix". Prefix installs a complete Gentoo userspace into a directory by running the bootstrap-prefix.sh script. The script launches the interactive installer which will ask for some information and discuss some options based on the system being bootstrapped. Prefix has support for several architectures, and we plan to add support for RISC-V. We will make it possible to bootstrap, and use a Gentoo Prefix system on RISC-V architecture.
This project aims to port EROFS to FreeBSD kernels, providing a native implementation of EROFS that allows users to mount native EROFS images directly. This project will integrate EROFS with FreeBSD’s VFS, buffer cache, and VM systems, and lay groundwork for future BSD ports (OpenBSD, NetBSD).
BMv2 currently provides only textual logs for tracing packets through a P4 pipeline, which must be parsed with brittle regex hacks and cannot be easily consumed by automated tools. This project aims to replace that with a structured, programmatic trace API — recording per-packet events such as applied tables, matched entries, and executed actions — and exposing them in a machine-readable format such as protobuf (with JSON serialization support), enabling use cases ranging from human debugging to automated test coverage measurement, test generation, and root cause analysis.
<p>Race conditions are one of the most challenging bugs, I would like to deal with them. I have already participated to the project, which is related to the Linux kernel analysis. I would like to look deeper the Linux kernel, find a number of bugs, related to the race conditions, try to prove them using dynamic analysis tools and finally fix them, preparing patches to Linux kernel.</p>
<p><strong>Mininet is a network emulator for creating virtual networks. The nodes that it spins up are isolated in network namespaces and use real kernel instances(shared kernel space) all in one host OS. So you have a full blown network up and running on top of a single Linux kernel. </strong></p> <p><strong>The goal of the project is to enable creation of XIA networks and configuration of XIA nodes using Mininet.</strong></p> <p><strong>Put in other words, the Mininet APIs should allow configuration of the XIA nodes and creation of complex topologies. The proposal throws more light on how I plan to use the existing Mininet APIs and create new ones to configure the hosts using XIA specific parameters.</strong></p>
<p>Hacking on the WireGuard kernel implementation, improving performance and memory consumption by implementing lock-free multi-producer multi-consumer queue, resizeable hashtables, CPU auto-scaling and Generic Recieve Offloading.</p>
<p>There are numerous MPI implementations in the Gentoo portage tree and far more in general, but most of them can't be installed together as is. The only way to do this now is by using empi from the science overlay and empi has its shortcomings such as lack of multilib support and was not ported to the main tree. In my proposed plan, a new MPI framework ported from existing MPI applications is introduced to enable Gentoo to use multiple MPI versions and relevant packages depending on them (for example, HPL). The new MPI framework is mainly based on ‘Modules’ package together with Gentoo Prefix technique for detecting, choosing or manipulating MPI environment. Also, a new implementation of mpi.eclass is introduced and the packages can still be emerged normally onto the system without any trace of mpi.eclass being used. The approach also enables users to easily work with different implementations at the same time without any special privileges. In order to solve the defect that empi does not support multilib, the new framework also adds support for allowing the environment to be configured and installed into different places among different architectures (amd64, x86 etc.).</p>
<p>The project aims at making Rust a first class citizen in Gentoo.</p>
The Talawa app as we know should support the chat functionality among users as well as the user and the organization.I have been working on the chat functionality as a part of the Github Externship Winter Cohort.The basic features of the chat has and will be implemented by the end of April.While working with the code base ,one of the most major important feature which should be there for any management app is that there should be a persistent ,stable cloud file storage system which will help in sending of files between the users of the app.Besides sending file,the cloud file storage system will also be helping in storing essential multimedia which is also a very essential feature and of high priority This proposal intends to complete the backend API support for multimedia storage and also sending of media over chats. The cloud service we will be implemented using Firebase storage.
<p>Mission Support Collaboration(mscolab) is a part of the MSS application which allows real-time collaboration and editing of flight paths of a project. However, there are some key features which are currently missing from mscolab. I propose to work on the following features and improvements to mscolab:</p> <h3>Local Flight Path Editing:</h3> <p>There are many instances where a user might want to test out his/her own changes to the flight path locally without changing the path on the server. Another scenario is that the user has a slow network connection at the flight campaign location which is a common problem. Both these situations require a method for the users to be able to make changes to the flight path locally and then be able to compare and merge it with the flight path on the server later.</p> <h3>Chat Service Improvements:</h3> <p>Improve the communication between users by adding features like - markdown support, ability to send images, searching through messages, ability to delete messages and replying to a specific message.</p> <h3>Admin Dashboard:</h3> <p>Develop an admin dashboard window to allow mscolab project admins to manage users efficiently, giving them options to add/modify/delete user permissions in bulk.</p>
The GStreamer libcamera element lacks support for properties like colorimetry, framerate and other properties which affect how the camera or stream is configured. This project aims to add support for these properties in libcamera GStreamer element so that more aspects of the stream can be controlled.
<p>Haiku has great support for its own file system, but is completely missing support for some other filesystems. XFS is one of them. Adding it, will improve interoperability with Linux.</p>
<p>This project aims to improve the Raspberry PI BSP support on RTEMS. Project intends to add the following supports to the Raspberry PI BSP: USB device support, basic HID support (keyboard/mouse), networking (Ethernet driver and lwIP integration). Adding USB and Ethernet support to one of the most widely used development boards, Raspberry PI, makes RTEMS more attractive for the user community.</p>
<p>In this project, I will implement a new Linux kernel API to help dumping/writing back the read and write queue of UDP socket. Then I will use that new API to add UDP's read and write queue checkpoint/restore support in CRIU.</p>
This project introduces a network abstraction layer to libkboot, enabling boot artifacts to be fetched from remote sources without disrupting the existing loading flow. On top of this abstraction, it implements a minimal, bootloader-focused HTTP/1.1 client and HTTPS support via a TLS-backed transport. This allows kboot to support network-based boot workflows through a clean, maintainable, and extensible interface for future network features.
<p>QEMU's TCG just-in-time compiler translates target CPU instructions into host CPU instructions so that programs written for other CPU architectures can be run on any host. Modern CPUs feature vector processing instructions, sometimes called Single Instruction Multiple Data (SIMD) instructions, which perform the same operation on multiple data elements at once. Intel's SSE and AVX instruction set extensions were introduced for x86 CPUs for this purpose.</p> <p>The target/i386 front-end has support for TCG emulation of SSE4.2, but does not feature support for later vector extensions, such as AVX. The goal of the proposed project is to implement and test AVX instructions that are currently not implemented in QEMU's TCG.</p>
This project aims to add a livepatch subsystem to dynamically update kernel code. Having a way to patch bugs or security vulnerabilities without restarting the whole machine would be very useful, especially on servers, which make up the majority of FreeBSD usage. Patches will be delivered via kernel modules, utilizing ELF headers and CTF/DWARF metadata to accurately resolve internal symbols. The patching mechanism will redirect control flow by inserting trampolines at the prologue of target functions. To ensure system stability, patches will be safely applied using a stop-the-world consistency model via smp_rendezvous, with safeguards to prevent the modification of critical routines like the SYSINIT routines. Stack trace analysis will also be explored to more accurately detect function quiescence.
<p><strong>Security event auditing</strong> permits the selective and fine-grained configurable logging of security-relevant system events for the purpose of post-mortem analysis, intrusion detection, and run-time monitoring and is intended to meet the requirements of the <strong>Common Criteria(CC)/Common Access protection profile(CAPP) evaluation</strong>. The audit subsystem in FreeBSD, <em>audit(4)</em>, can record a variety of system events like user-logins, file system activities, network activities, process creations, etc.</p> <p>The <em>auditd(8)</em> on the server doesn’t generate any record trails for the NFS activities as the audit works mostly on the syscall level and the NFS server is implemented within the kernel.</p> <p>To audit NFS activities within the network, it will require to run the <em>auditd(8)</em> on each NFS client. This arrangement works perfectly fine in case of secure networks. But In the case of an insecure network, running <em>auditd(8)</em> on each client is not an option. The <em>audit(4)</em> support to the NFS server is a missing feature for such networks. Thus, the aim of this project is to <strong>audit each NFS RPC</strong>. This would allow audit of all NFS activities within the network by just running <em>auditd(8)</em> on the server.</p>
<p>Clang is a C/C++/Obj-C compiler spawned from the LLVM project, famous for its modular design, rich diagnostic messages, non-intrusive license, etc. Some Unix flavors, including FreeBSD and OS X, have already adopted a purely clang/LLVM based toolchain. It would be interesting and beneficial to have clang as a first-class compiler, in place of GCC, on Gentoo as well. This task involves bootstrapping a freestanding clang along with its supporting libraries, and deploy them on Gentoo.</p>
pidfds are a feature of the Linux kernel that provide a process with a stable handle on another process. They were introduced to solve the problem of PID recycling. A user can send a signal to the process (pidfd_send_signal syscall), wait for the process (poll() on pidfd) using a pidfd. However, with the current implementation of CRIU, it can't checkpoint/restore a process with pidfd file descriptor(s) opened. So, the proposed project's purpose is to add new functionality to successfully checkpoint/restore any process that has opened pidfd file descriptor(s).
<p>Coccinelle is a C-program matching and transformation tool developed for C programmers to write intuitive code manipulation rules. This tool was initially released for Linux developers who send patches on mailing lists, but it can also be applied to other projects. To describe matching and transformation rules in the source code with a patch-like appearance, Coccinelle employs a domain specific language called the Semantic Patch Language (SmPL), and attempts to manipulate the given C code based on the given SmPL rule. Although SmPL can provide many useful matching and transformation features, there are limits to the C matching patterns that the SmPL grammar can express due to the complexity of the C grammar. This is particularly the case for function headers, that involve complex types, annotations, etc that have been somewhat less tested by the users of Coccinelle. This project will study the current status and limitations of the handleability of function headers by designing and running a script that checks whether each function header in a given project can be parsed correctly and applying it to the latest Linux kernel. Based on the results, any detected problems will be fixed.</p>
YCbCr is a color space used in video and digital systems to express color, where Y is the luma component and CB and CR are the blue-difference and red-difference chroma components respectively. This project aims to add YCbCr support to the Nouveau Vulkan driver (NVK), which opens the way for support for more applications and is also an important step towards Vulkan 1.1 compliance. Work on this project is split into 4 phases; first investigation and reading up the relevant parts of the Vulkan specification and the open-sourced NVIDIA hardware headers, second the actual implementation and coding, and finally the third and fourth stages being verification and review where I verify that the implementation is working and conformant, and fix any issues that pop up. All this would then be followed by a merge request implementing and enabling YCbCr support in the driver.