DragonFly BSD


This is the official DragonFly FAQ.

Is DragonFly ready for production?

Yes. DragonFly is generally stable and speedy at this point. For third-party software, it uses DPorts, which is based on the FreeBSD ports collection and contains more than 24,000 packages. We have an active community that are working on keeping things working. As in any open source project, if you find problems reporting them increases the chance that someone can fix it.

What are the potential goals for the next release?

For DragonFly news and events, keep an eye on the DragonFly BSD Digest, this Wiki, and the DragonFly mailing lists/newsgroups.

Is there a branch oriented towards stability, like the FreeBSD's -STABLE?

We have the DragonFly_RELEASE_X_X branches which are considered to be stable.

I get garbage on the screen when I boot or I can't seem to pause at the initial boot menu.

DragonFly, when booting, outputs to both video and serial ports. If the booting computer has a 'noisy' serial device connected, it may read data from it during the boot process. Serial console activation during boot can be disabled by creating the file /boot.config with this contents: -V

How can I speed up my build process?

You can use make quickworld instead of make buildworld. This reuses existing tools on disk and speeds this step up considerably. For the kernel there is a similar quickkernel target.

But make quickworld / make quickkernel fails!

Try make buildworld or make buildkernel instead.

What is used to handle third-party applications? (like ports, yum, apt-get, etc.)

DragonFly uses DPorts, a patched version of the FreeBSD Ports Collection that runs on DragonFly systems. You can build from the DPorts collection by going to the port of your choice and running make config install clean. Binary packages can be easily installed/managed using the pkg(8) package manager, and they are advised unless non-standard options are required.

What architectures does DragonFly support?

DragonFly is currently targeted at the 64-bit x86 line of processors (x86_64); version 3.8 was the last release supporting 32-bit processors (i386). There are currently no plans for support of other processor types. However, support for Sparc or PowerPC or other systems is possible in the future. If you plan to submit code to the DragonFly project, please keep this in mind.

How can I contribute?

Pick a topic that you enjoy and start working. Check the team page to see if there are others interested in your topic, or ask around in the appropriate forum. You can download the source to the operating system and to the official site, and send patches in unified diff format (diff -uN) to submit at dragonflybsd.org for review. Subscribe to that same submit mailing list/newsgroup to see feedback on your patches, and to find if they have been accepted or rejected. In addition, you can update this DragonFly Wiki.

Note that you do not have to be a programmer in order to help. Evangelizing DragonFly and testing it on a variety of hardware, and reporting results can help a great deal. Try new features and report to the forums on your experiences. Cleaning up /etc/rc.d only requires shell script experience, for instance, and there's always a need for better documentation.

Does DragonFly use a dynamic /dev filesystem, as in devfs?

DragonFly has a dynamic /dev file system, aka devfs(5).

Will DragonFly use (insert name here) technology?

Yes and no. Features must match the existing plan outlined on the site here, and there's plenty of existing problems to solve before 'non-essential' work can be done. However, if you are willing to work on it, it probably can be done. The forums are an excellent place to get feedback and to find others that may be interested in your topic. The team page is also a good place to check.

What's the correct way to name this operating system?

It's a BSD variant, called DragonFly. Note the capitalization on the F, which isn't proper English.

Who is "Fred"?

Fred is the name of the mascot of the DragonFly BSD, and owns the assets of the Project, as can be seen from the repositories page.