This is the official DragonFly FAQ. Primary language is English, but you can also find translations to other languages here.
- Is DragonFly ready for production?
- What are the potential goals for the next release?
- Is there a branch oriented towards stability, like the FreeBSD's -STABLE?
- How do I upgrade my system?
- I get garbage on the screen when I boot or I can't seem to pause at the initial boot menu.
- How can I speed up my build process?
- But make quickworld / make quickkernel fails!
- What is used to handle third-party applications? (like ports, yum, apt-get, etc.)
- What architectures does DragonFly support?
- How can I contribute?
- Does DragonFly use a dynamic /dev filesystem, as in devfs?
- Will DragonFly use (insert name here) technology?
- What's the correct way to name this operating system?
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 24000 packages. You are advised to keep a close eye on the forums. Check the forums page to find out on how to get access. 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.
We have a
-RELEASE tag which is considered to be stable.
There are three parts to upgrade: kernel, world, and userland. Userland packages should be upgraded with
pkg upgrade, many times if it's been a while since the last upgrade you'll need to upgrade pkg first. To upgrade your kernel and world you'll need source, which you can get by running
make src-create-shallow while in
/usr. Enter the
src directory and run, in order, the following to upgrade your system:
git pull && nice -n 20 make buildworld && nice -n 20 make buildkernel && nice -20 make preupgrade && nice -n 20 make installworld && nice -n 20 make installkernel && nice -n 20 make upgrade. The
git pull is part of
make src-create-shallow and is unnecessary, but for every consequent upgrade, you can omit the
make src-create-shallow and replace it with that line to update your source and build and install the kernel and world. Detailed information can be found in
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:
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
make buildworld or
make buildkernel instead.
Since 3.6, DragonFly uses DPorts, a patched version of the FreeBSD ports collection, modified and tested to run 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 are advised unless nonstandard options are required, pkg is the tool used and has thorough documentation in the man page and the help flag.
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.
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 the 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.
Since 2.3, DragonFly has a dynamic
/dev file system, aka devfs(5).
Yes and no. Features must match the existing plan outlined on the site here, and there's plenty of existing problems to solve before 'nonessential' 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.
It's a BSD variant, called DragonFly. Note the capitalization on the F, which isn't proper English.