DragonFly BSD

Code Bounties

Explanation

A code bounty is a certain financial stimulant to encourage someone to put his or her effort into a project. A code bounty in the DragonFlyBSD project needs to adhere to a set of rules defined hereunder, though these are only preliminary and subject to change. One could for example imagine developers accepting sponsorship on a wholly different basis, or non-financial rewards for completing a bounty project, like free hardware (we love that!).

Rules


Active bounties

In-kernel WireGuard port

Description

WireGuard is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPsec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN. WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. Initially released for the Linux kernel, it is now cross-platform (Windows, macOS, BSD, iOS, Android) and widely deployable. (copied from WireGuard official website)

We already have the userland implementation in Golang in DPorts (i.e., wireguard-go). It would be better to also gain the in-kernel implementation, like OpenBSD and FreeBSD already did.

Technical details

NOTE: The initial port by FreeBSD/Netgate was buggy, so need to investigate before using that code. See: Buffer overruns, license violations, and bad code: FreeBSD 13's close call

Main goals

Actuality

Created at: 2021-08-12

Estimated time

Unknown.

Donators

Donor Amount
aly 100 USD
TOTAL AMOUNT 100 USD

Bring in support for USB webcams

Description

Bring in uvideo from NetBSD or OpenBSD, and the dependent video driver. If you think that webcam support in FreeBSD is superior, feels free to bring in cuse etc.

Final result should be that USB webcams are usable from chrome or firefox for the purpose of video conferencing (e.g. via jitsi.org). Personally I only need support for low-quality webcams, no need for 4k :).

Actuality

Bounty created at: 2021-08-08

Estimated time

Unknown.

Donators

Donor Amount
mneumann 150 USD
pikrzyszt 100 GBP
aly 50 USD
TOTAL AMOUNT 200 USD + 100 GBP

Port uhidd HID daemon from FreeBSD

Description

uhidd is a userland driver/daemon for USB HID devices like mouse, keyboard etc. It is based on libusb20 and currently only works for FreeBSD 8.x and above.

The uhidd driver would allow USB gaming controllers and joysticks to be used on DragonFly BSD. uhidd also provide support for multimedia keys found on USB keyboards.

(Derived from the FreeBSD Wiki: uhidd)

Technical details

Main goals

Actuality

Bounty created at: 2020-02-17

Estimated time

Unknown.

Donators

Donor Amount
kerma 100 USD
TOTAL AMOUNT 100 USD

Extend vkernel(7) to run on any POSIX OS

Description

Technical details

Main goals

Actuality

Bounty created at: 2020-02-12

Estimated time

Unknown.

Donators

Donor Amount
mneumann 100 USD
TOTAL AMOUNT 100 USD

Bluetooth-Support

Description

Technical details

We already have bluetooth support in the kernel which is based on netgraph6 (AFAIK). It is disabled by default and is probably out of date.

We also have a partial and old netbt port from NetBSD...

Main goals

Actuality

Bounty created at: 2020-02-12

Estimated time

Unknown.

Donators

Donor Amount
mneumann 200 USD
tuxillo 50 USD
aly 50 USD
TOTAL AMOUNT 300 USD

Full Rust libc FFI binding support

Description

Technical details

There has intermittently been some support on this and builds and tests have gone through periods of passing and failing, but a comprehensive buildout of full support of all features would make more advanced Rust development, especially as a viable web server backend more possible.

The Github URL is https://github.com/rust-lang/libc

Main goals

Estimated time

Unknown.

Donators

Donor Amount
zach 400 USD
joris 150 USD
profmakx 200 USD
TOTAL AMOUNT 750 USD


More Modern Thunderbolt Support

Description

Technical Details

To be defined

Main Goals

Not Yet Written

Estimated Time

Unknown

Donators

Donor Amount
Mike Carroll 150 USD
TOTAL AMOUNT 150 USD

OpenPower9 Support

Description

Technical Details

To be defined

Main Goals

Not Yet Written

Estimated Time

Unknown

Donators

Donor Amount
Mike Carroll 150 USD
TOTAL AMOUNT 150 USD

AArch64 support

Description

Technical details

To be defined

Main goals

Not yet written.

Estimated time

Unknown.

Donators

Donor Amount
tuxillo 100 EUR
Mike Carroll 150 USD
TOTAL AMOUNT 100 EUR + 150 USD

UTF-8 support in Console

Description

Adding full UTF-8 support in console.

Technical details

Not yet written.

Main goals

Not yet written.

Estimated time

Still unknown.

Donators

Donor Amount
timofonic 35 EUR
dillon 50 USD
kerma 100 USD
TOTAL AMOUNT 35 EUR + 150 USD

Port valgrind to DragonFlyBSD [TAKEN 2021-03-30]

Description

(shamelessly copied from gsoc2010 projects page)

Valgrind is a very useful tool on a system like DragonFly that's under heavy development. Ideally, we would want the port to be usable with vkernel processes, thus enabling complex checking of the core kernel code.

Technical details

Not yet written.

Main goals

(shamelessly copied from gsoc2010 projects page)

The goal of this project is to port valgrind (3.5.0+) to the DragonFlyBSD platform so that at least the memcheck tool runs sufficiently well to be useful. Also an update for the pkgsrc package (devel/valgrind) should be made.

Estimated time

Unknown.

Bounty status

Taken by dan_.

Repository: Github

Donators

Donor Amount
rumko 100 EUR
tuxillo 50 EUR
dillon 100 USD
sjg 50 USD
TOTAL AMOUNT 150 EUR + 150 USD

HAMMER compression

Description

(shamelessly copied from gsoc2010 projects page)

NOTE: HAMMER2 has replaced HAMMER to be the default filesystem on DragonFly and is under active development and maintenance. HAMMER2 also has compression support.

Technical details

(shamelessly copied from gsoc2010 projects page)

Doing compression would require flagging the data record as being compressed and also require double-buffering since the buffer cache buffer associated with the uncompressed data might have holes in it and otherwise referenced by user programs and cannot serve as a buffer for in-place compression or decompression.

The direct read / direct write mechanic would almost certainly have to be disabled for compressed buffers and the small-data zone would probably have to be used (the large-data zone is designed only for use with 16K or 64K buffers).

Main goals

Not yet written.

Estimated time

Unknown.

Donators

Donor Amount
rumko 50 EUR
dillon 100 USD
vsrinivas 50 USD
TOTAL AMOUNT 50 EUR + 150 USD

Native NTFS support

Description

(shamelessly copied from gsoc2010 projects page)

Technical details

(shamelessly copied from gsoc2010 projects page)

Apple's NTFS native driver could be ported to DragonFly BSD.

Latest code as of now is: http://opensource.apple.com/source/ntfs/ntfs-84.40.1/kext/

Main goals

Not yet written.

Estimated time

Unknown.

Donators

Donor Amount
tuxillo 75 EUR
TOTAL AMOUNT 75 EUR

Card reader driver

Description

As swildner wrote on 18th Septmber 2017: we need a new driver for a card reader.

RTS5209 PCI Express Card Reader

Estimated time

Unknown.

Donators

Donor Amount
ferz 20 EUR
TOTAL AMOUNT 20 EUR

Completed Bounties

Hypervisor for DragonFly/x86_64

Description

Technical details

Employ Intel VT-x and AMD SVM to provide fast virtualization support for running various guest OSes.

Main goals

Actuality

Created at: 2020-02-12
Completed at: 2021-08-08

Estimated time

Unknown.

Bounty status

Completed by: Aaron LI (aly@)

Previous Party: Kamil Rytarowski (kamil at netbsd dot org)
Previous Repository: https://github.com/Moritz-Systems/DragonFlyBSD

Results

Donators

Donor Amount
mneumann 500 USD (paid)
tuxillo 175 USD (paid)
kerma 500 USD (paid)
aly 500 CNY (myself ;))
TOTAL AMOUNT 1175 USD + 500 CNY

Port autofs from FreeBSD

Description

Autofs allows dynamic filesystem mapping to render filesystems accessible, without keeping them mounted. It is designed as a modern, simpler, cleanroom reimplementation of amd.

Main goals

Not yet written.

Estimated time

Unknown.

Donators

Donor Amount
kerma 50 USD (paid)
TOTAL AMOUNT 50 USD

Bring in usb4bsd

Description

Technical details

Not yet written.

Main goals

Not yet written.

Estimated time

Unknown.

Donators

Donor Amount
alexh 300 USD (paid)
sjg 100 USD (paid)
ferz 50 EUR (paid)
tuxillo 50 EUR (paid)
TOTAL AMOUNT 100 EUR + 400 USD