The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Development Guide
To get started with Funtoo development, it's strongly recommended that you first watch the following video, which will introduce you to code.funtoo.org and explain how to use it to fork a repository and create a pull request. Forking a repository and creating a pull request is the best way to start doing Funtoo development:
Ebuild Writing
To learn more about ebuilds and how to write them, the following pages are available:
- Portage Variables -- learn about all those variables inside an ebuild, and in make.conf.
- Ebuild Functions -- src_unpack, src_compile -- these are ebuild functions. There are others. See all of them and learn how they work.
For a more comprehensive reference of all the details of ebuild development, please see the Gentoo Development Manual.
Advanced Topics
If you are maintaining several ebuilds for Funtoo, you may find it more convenient to maintain your own overlay and have us pull new versions of ebuilds from you, rather than having to create a pull request. For information on how to do this, see Creating Your Own Overlay.
Even more advanced users may want to use our own tree update scripts to generate their own customized meta-repo and kits. For information on how to do this, see Creating Your Own Meta-Repo and Kits. This document also covers the functionality of our tree update scripts in detail, and will give you some insight into how to work with the kit-fixups
repository effectively.
To learn how to build your own Funtoo stages, please look at documentation for Metro.
Pages that need updating
These pages are stale and need updating!
- Forking An Ebuild -- explains how to take an ebuild from Gentoo and fork it, so you can make local changes.
- Portage (Funtoo) -- learn about Funtoo changes to Portage (needs updating).
- Portage Dynamic Slot - dynamic SLOT functionality now in Portage.