I am new in Funtoo/Gentoo. Where do I start learning how to create my own "packages"?

For example, I have done the following to get the source code of Bespin, a Style for Qt4, derived from the Style for the Oxygen project and compile it:

  1. svn checkout svn://svn.code.sf.net/p/cloudcity/code/ cloudcity-code

  2. cd cloudcity-code/ and less INSTALL, q when done with reading

  3. mkdir build && cd build

  4. Configure Bespin using ccmake: ccmake ../

  5. Press c for a general configuration -- assuming all requirements are satisfied

  6. Optionally, adjust some paths to your wishes

  7. Press c for the final config run

  8. Press g to generate makefiles

  9. Run the compiler: make

At this point, I am hesitant to execute (as root) sudo make install. In other distributions I'd use checkinstall to create a .deb package, for example, which I could easily remove anytime.

What is the right way to do this in Gentoo? ebuilds?


1 Answer 1


Ebuilds are the right way to package an application in Gentoo. There are also eclasses which are collection of code used in ebuilds that automate procedures and makes your life easier.

If you want to learn more about packaging and development in Gentoo, there is a full development manual where you can find everything you want about ebuilds. Also In order to create and test your own personal ebuilds, the easiest way is to set up a local overlay.

You can either write an ebuild for personal use or you can contribute to Gentoo community providing your ebuild if the application doesn't exist in Gentoo's main tree.

If you choose the second way, then you should create an account to Gentoo's bugzilla, open a bug with title 'new-application-1.0: ebuild request' and attach your ebuild. Then a Gentoo developer will give you feedback. If the ebuild is 100% ready and correct, it will be added to Gentoo's main tree.

To learn more and to ask questions about ebuilds you can join in Freenode where Gentoo community has a huge list of IRC channels.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .