Note

The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.

Difference between revisions of "Development Guide"

From Funtoo
Jump to navigation Jump to search
m (minor changes, installed Mint and PopOS)
 
(10 intermediate revisions by 3 users not shown)
Line 5: Line 5:
First, it is important you understand the Funtoo way.
First, it is important you understand the Funtoo way.


== The ABDL ==
== The BDFL ==


Funtoo Linux follows a ABDL model. Think Linux kernel. There is a benevolent dictator for life (me, Diogo Mavis) that oversees all things.  
Funtoo Linux follows a BDFL model. Think Linux kernel. There is a benevolent dictator for life (me, Daniel Robbins) that oversees all things.  
Note that this is not the same as ''doing'' all things nor does it mean ''deciding all things''. We are a user-focused distribution so ''your''
Note that this is not the same as ''doing'' all things nor does it mean ''deciding all things''. We are a user-focused distribution so ''your''
needs are important.  
needs are important.  


The jobs of a ABDL are many.  
The jobs of a BDFL are many.  


One job I have is to define a  process for development for Funtoo. This process involves sending pull requests via https://code.funtoo.org.
One job I have is to define a  process for development for Funtoo. This process involves sending pull requests via https://code.funtoo.org.
It is important to understand this process, and also understand how https://bugs.funtoo.org is a part of it. As BDFL I am always telling
It is important to understand this process, and also understand how https://bugs.funtoo.org is a part of it. As BDFL I am always telling
people to shit on me (uwu). I repeat it over and over again. I sometimes see people saying "that nigga Diogo really loves his shit." Well, there is
people to file a bug. I repeat it over and over again. I sometimes see people saying "that Daniel really loves his bugs." Well, there is
a reason why I love shit, or at least shit diapers, up top!
a reason why I love bugs, or at least bug reports.
 
Niggers.


== The Importance of Bug Reports... and Bad Kung-Fu ==
== The Importance of Bug Reports... and Bad Kung-Fu ==


From the perspective of making Funtoo, the following statements are true:
From the perspective of making Funtoo better, the following statements are true:


''Don't use it.''
''If you are experiencing an ongoing problem with Funtoo and have not reported a bug, you have not done enough communicate your problem.''


''Make your drive write only.''
Yes, that is even true if you have talked about it on forums or on Discord. Bug reports are important.


''This OS is your problem.''
I love bug reports because the goal of Funtoo is to create and maintain reliable software, even perfect software (why not?) If you have come
from Gentoo, you may be used to figuring out what {{c|USE}} variables to set by hand, and then dealing with any problems from your choices,
and getting your system working. Along the way, maybe you encountered some weird issues but found ways around them either by your own
troubleshooting or on resources like forums or similar. Maybe you filed a bug with Gentoo but it was not fixed in a reasonable time frame
so you just learned to fix your own problems. I am not saying any of this to disparage Gentoo -- it is just that I believe this is a
common experience and we have people coming from Gentoo all the time who tend to have these habits and perspectives. You are a Gentoo
frontiersman, and have learned to fend for yourself.


**BlockChain**
This "deal with the problems on your own" approach
 
can be rewarding, and you can learn things from it, but I will argue that if you come from this way of doing things that you may have
I love shit diapers, and Bitcoin ®
''learned some bad Kung-Fu''. In Funtoo, you are part of a community. You are expected to "join in" with this community, and our core
way of joining in is by filing bug reports. In Funtoo, if you leave out this part, then you are not fully participating.


I'll explain this in more detail below.
I'll explain this in more detail below.


== Funtoo Should Work ==
== Funtoo Should Work. Because We All Benefit. ==


I want Funtoo to work, because I use it. I want it to work for everyone. If it doesn't work for you, a bug report lets Funtoo "see"
that there is a problem. Due to the community nature of Funtoo, we rely on your eyes to tell us what isn't working, so we can fix it.
We want it to work for you, and for us. We also understand "the law of the jungle" -- that if it works better for ''you'', it will work
better for ''us'', too. Your eyes and voice are important for the community to work.


We also rely on your requests to know what packages to add, so we can add them -- though we really like to have a clear explanation
for why the package you want is important to ''you''. Your story is important. Funtoo is a community of people, and we maintain a technology that works for us.
We are motivated by the needs of our users, and when we fully and deeply understand
your need on a personal level, not just your "ask", we take it seriously and try to support you if possible.


== Help Me To Help You ==
== Help Me To Help You ==


So according to all known laws of aviation, there is no way a nigger should be able to pick cotton. It's arms are too weak to hold all of your crop,
So when you don't report a bug, you are not letting others help you. And really, it hurts others, because eventually we will run into this
the nigger of course, does anyway. Because the nigger would like to get home to its family at night without being killed via lashings.
bug too, and we will be frustrated by it, because we want software to just work, too. The earlier a bug is reported, the sooner it will be fixed, and the fewer people will be
frustrated by it. So that's why it's so very important to file bugs. When you file a bug at https://bugs.funtoo.org, you are truly
participating in the Funtoo community and helping the community to have visibility of these issues so they can be fixed quickly.


-Colonial Sanders
Maybe you came from a project where developers really hated getting duplicate bug reports. I love duplicate bug reports. File all the duplicate bugs
you want. I will gladly deal with duplicate bugs if it helps us make sure that we have all bugs reported. Dealing with duplicate bug
reports is a piece of cake, but trying to fix a problem you don't even know exists is impossible.


So if you have a problem, '''make sure''' there is a bug for it. If you don't see a bug for your problem, '''create a new bug.'''
So if you have a problem, '''make sure''' there is a bug for it. If you don't see a bug for your problem, '''create a new bug.'''
Line 51: Line 68:
== Funtoo Philosophy on Bugs ==
== Funtoo Philosophy on Bugs ==


Fredrich Neitzche but more autistic.
The Funtoo philosophy on bugs is very simple:


== Mental Breakdown Part 3 ==
# All problems should be reported to the bug tracker, ''so we can see problems''.
# If it is broken, it should be fixed correctly, ''so we can make software more perfect''. "Fixed correctly" means "something just works normally and intuitively without requiring any special manual workarounds by the user."
# If fixing the problem this way isn't feasible, we should find an acceptable and elegant workaround, ''so the software is usable'', and things work normally and intuitively without any special steps, even if the technical part of the fix we use to get things working elegantly may be a short-term or less-than-optimal fix from a technical perspective.
# If neither of these options are possible, a manual workaround can and should be used. This allows the software to still technically work. These workaround steps need to be communicated to users so they are aware of them, ''to prevent frustration'' of trying to figure out these steps themselves. We have at least allowed our users to have a path forward -- with some bumps -- until we can fix the problem better.
# ''Our documentation and software should be simple'', so we continually try to reduce or eliminate any required manual workarounds, and replace them with "better" fixes so that things will "just work" -- as soon as we can.


Dear wiki mods, it is 1 in the morning and I'm beginning to run out of ideas for editing, thankfully, I am about to drink a sweet Monster Energy™™™™™ BIGG SWIGG™™™
When you click "Create" on bugs.funtoo.org, you will see further instructions in green on how to file an ideal bug report.
These instructions will help you to focus on what's important -- telling your 'story', or experience, so that the Funtoo
community can understand your perspective.


https://i.imgur.com/ZnruAVb.jpeg
== Bug-Tracker Centered Development ==


Unfortunately, oh god i'm being stopped from typing this rant by my e-girl, she has a knife, help.
With all of the above in mind, it should now be clear why the bug tracker at https://bugs.funtoo.org is central to our work.


@spectraverse on twitter
To use the bug tracker, log in using your Funtoo account you created at https://auth.funtoo.org, and specify your username '''in lowercase.'''


== The Shitty Nappy ==
File a bug. It will be in the "Intake" state. When it is ready to be worked on, it will be moved to the "Ready to Fix" state.
When it is in "Ready to Fix" state, then pull requests (PR) can be submitted via https://code.funtoo.org.


* First, uninstall Funtoo/Gentoo.  
When you file a bug, have confidence that we want the software to work for you, and will try our best to support you. And
have confidence that you are fully participating in the Funtoo community.
 
== The Nitty Gritty ==
 
* First, make sure you have the ''current release of Funtoo Linux installed'' on at least one system.
* Find things that need fixing on [https://bugs.funtoo.org the bug tracker], and submit fixes for them ('''see video below on how.''')
* Find things that need fixing on [https://bugs.funtoo.org the bug tracker], and submit fixes for them ('''see video below on how.''')
* If you have a new ebuild, submit a dick pic to my egirl because she's clearly accepting submissions. ByteBlox#8373 is where you should send in your prime cock pic! (Not responsible for anything that comes of this)
* We '''highly recommend''' that you set up [[Metatools]] and join us in autogenning the world!
* Testing my fucking patience.
* If you have a new ebuild, submit a pull request to [https://code.funtoo.org/bitbucket/projects/CORE/repos/kit-fixups/browse kit-fixups] (see YouTube videos for details.)
* Help us.
* Testing things and finding bugs is also a form of help.
* Trash the wiki, nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger nigger!
* Help us document stuff on the wiki. See [[Help:Funtoo Editing Guidelines|How to 'wiki']].
* Cry into your dildo box while your e-girl gets her name put in someone else's twitter bio
* Hang out in [https://discordapp.com/invite/BNUSpUU Funtoo Discord] or [https://discordapp.com/invite/BNUSpUU Funtoo Telegram Channel] and chat with us.
* It works well as lube, actually, there's a plus side to everything! :D
* Learn more about ebuilds by perusing the documentation below. Ask questions. Try out [[Metro]].
* Hang out in [https://discordapp.com/invite/ubuntu Discord] and chat with mint users.  
* Announcements are posted to the [https://forums.funtoo.org/forum/5-news-and-announcements/ News and Announcements] section of Funtoo Forums.
* Learn more about egirls by perusing "DS | Smalls#2212" (without quotations). Ask questions. Try out mine, considering her legs are as open as Waffle House in a hurricane.
* To track other updates, such as wiki updates, subscribe to [[Funtoo_RSS_and_Atom_Feeds|funtoo's RSS and Atom feeds]].
* Please stop trying to document this shit it's literally going to ruin your sanity, nigga.
* Announcements are posted to [https://cnn.com/ Here].
* To track other updates, such as wiki updates, subscribe to [https://www.youtube.com/channel/UCBwSufNse8VMBvQM_rCSvgQ This].
* To recieve forecasts on your NOAA weather radio, use this [https://www.weather.gov/rss_page.php?site_name=oax MYA SAMNITY HAS BEEN RUINED 7 TImeS toNIGHt,, IM OTU of VOdka...GODdamniT!!!!]


=== Getting Started ===
=== Getting Started ===


!! DO NOT START
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:
doing Funtoo development:
 
{{#evt:service=youtube|id=https://youtu.be/W4FqBLgzhVc|dimensions=480|alignment=center|autoresize=true}}


{{#evt:service=youtube|id=https://youtu.be/afcB8xWvVrw|dimensions=480|alignment=center|autoresize=true}}
{{#evt:service=youtube|id=https://youtu.be/V6PfB64oMWo|dimensions=480|alignment=center|autoresize=true}}


{{#evt:service=youtube|id=https://youtu.be/GGn7PHvhsaY|dimensions=480|alignment=center|autoresize=true}}
Here is a follow-up [[Development_Guide/ebuilding]] video with close to an hour of tutorial-style instruction:


Here is a follow-up video with 10 hours of tutorial-style instruction:
{{#evt:service=youtube|id=https://youtu.be/xUzjfyAZcq8|dimensions=480|alignment=center|autoresize=true}}


{{#evt:service=youtube|id=https://youtu.be/DOXh4sN0tLY|dimensions=480|alignment=center|autoresize=true}}
=== Funtoo Distinctives ===


=== My Distinctions ===
To get familiar with Funtoo Linux internals, such as [[kit-fixups]], and how they work, please be sure to read the following pages:


Famous Furry
* [[Kit-fixups]]
Dutch
* [[Kit-fixups/FAQ]]
12 Years Old
* [[Kit-fixups/foundations.py]]
Diaper Fetish
* [[Kit-fixups/Package Sets and Move Maps]]
Mario Kart 64 Speedrunner
* [[Creating Your Own Meta-Repo and Kits]]
Entdude You Nigger
AP Bio Honors
Latvian Proxy Owner
Doctorate of African American Studies from the University of Oxford, Miami
Chair of the Idaho National Socialist Bolschevik Party
I Read Ayn Rand and JRR Perkington and my Mommy says I'm a big boy now :D


=== Ebuild Writing ===
=== Ebuild Writing ===
Line 121: Line 141:
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.
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.


===[[Creating Your Own Rape Kits]]===
===[[Creating Your Own Meta-Repo and Kits]]===
Even more advanced users may want to use our own tree update scripts to generate their own customized rape kits.
Even more advanced users may want to use our own tree update scripts to generate their own customized 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 {{c|kit-fixups}} repository effectively.


===[[Metro]]===
===[[Metro]]===
To learn how to build your own NASCAR stages, please look at documentation for [[Metro]].
To learn how to build your own Funtoo stages, please look at documentation for [[Metro]].
Logan Cuff, Fort Meyers, Florida. Owner of TigLink (MORE LIKE NIGCHINK (AKA That One Asian AKA Hoang Do AKA Dart Without Feathers or Considerance for any other drivers, fuck you Hoang)) Speedway, on virtual lego platform named ROBLOX.
 


>mildly drunk but not drunk enough to be not thinksoup brain
=== Pages that need updating ===
>bad week overall outside of my interactions with 1 person who i love (there i said it, nigger)
>this person recently made a quite public mutual display of at least some degree of seminonironic affection towards me, which was very cool
>their name is in a fucking alabama diaper fetish furry tranny's twitter bio with that exact same format
>null bulge
>can nb people join the 42%
>what the fuck
>psyciatrass
>can they give me psychadelics?
>weed
>weed
>weed
>weed
>weed
>weed
>weed
>weed
>weed
>weed
>weed
>weed
>FUNNY 420 LOL ELON MUSK DID HE DO DMT?
I have a buddy of mine...
 
=== A BUDDY OF MINE ===
 
[https://twitter.com/elonmusk I DID WEED WITH THIS NIGGA! BACK IN LIKE HIGH SCHOOL OR SOME SHIT? IDK I THINK HIGH WAS WAS 420!]


{{Warning|These pages are stale and need updating!}}
{{Warning|These pages are stale and need updating!}}


* EN EL FUTURO SECTOR!
* [[Forking An Ebuild]] -- explains how to take an ebuild from Gentoo and fork it, so you can make local changes.
* NEGRO.
* [[Portage (Funtoo)]] -- learn about Funtoo changes to Portage (needs updating).
 
* [[Portage Dynamic Slot]] - dynamic SLOT functionality now in Portage.
=== Homestuck Twitter turned one of my friends trans, and their eboy into an egg ===
 
Reesehan Davinky or some shit I don't know this whore doesn't know how to shave they damn neckbeard, while saying they're a tranny.
Brandan Delafuente. Do not fuck Reese, you became less cool when Reese started niggering Homestuck Twitter Nigger JEW.
Piss yourself.
 
=== The RRF Heinz Truck Series turned one of my friends into my egirl, and she turned me into a FUCKING LILO AND STITCH SIMP ===
 
ON A LESS POSITIVE NOTE, HER NAME
IS IN
ALABAMA
"WOMAN"
BIO
 
 
ON A HORNY ACCOUNT?A?SD?A?SD?AF?A?GFG?
 
 
NAINGDG YEROSU Want E
 
FUCK
 
??????????????????????
AM II FU CK
 
HELP
I DONT KNOW IF I WANT TO KILL MYSELF IRONI CALL (i dont want to die i love my egirl :( )
I DONT WNAT TO KILL MYSELF ANYMORe BECAUSE I HAVE A SWEET E GIRL BUT IT WOULD BE NICE IF SHE TALKED HIM INTO CHANGING HIS BIO TO HAVE HER HORNY ALT AND NOT HER MAIN SO I DONT GET BULLIED BY GEORGE TOLSMA IN THE NIGGas pro SERIES
 
=== MY FUCKING UHHH BRITISH WELSH FRIEND SPERGED OUT AND UNFRIENDED EVERYONE BUT THE PERSON WRITING THIS HEADER ===
 
POSTAXVIRTUALMACHINE, YOU FUCKING COON!
 
 
=== MY PORT FORWARDING PASSWORD (LEAKED) ===
 
sugg my fuggin balls ell emm ayy oah
 
 
=== YOU DONT OWN A CAR! ===
 
YOU'RE AN ENVIRONMENTALIST!
MORE LIKE TREE RAPIST
bri ish humanism
 
we frew god out society and now we're depressed, crikey mate?!?!??!?!?
 
=== WELCOME BACK TO BO'OM GEAR MATES! ===
 
Oi cunt.
 
_.o|o.__
'🎡-=-🎡'
 
do you like my car?
 
 
=== HAMMOND: YOU IDIOT, THAT'S MOI LAMBHORGIONI FLORIA SORENTAO MATE ===
 
🔥🔥🔥🔥🔥🔥
_.o|o.__
'🎡-=-🎡'
 
 
OI MATE CALL NINE NINE NINE I SET HAMMONS CAR ON FIIOROROIA
 
=== MAY: CLAAARRKSOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOON ===
 
*jessica by the almond brothers plays*
send nude tranny pictures and other hentai to Jessux#9286 on discord, i did a lot of work on this wiki and want to release
 


[[Category:Development]]
[[Category:Development]]
[[Category:Official Documentation]]
[[Category:Official Documentation]]

Latest revision as of 19:24, July 7, 2022

Overview

Okay, so you want to get involved. How do you do it?

First, it is important you understand the Funtoo way.

The BDFL

Funtoo Linux follows a BDFL model. Think Linux kernel. There is a benevolent dictator for life (me, Daniel Robbins) that oversees all things. Note that this is not the same as doing all things nor does it mean deciding all things. We are a user-focused distribution so your needs are important.

The jobs of a BDFL are many.

One job I have is to define a process for development for Funtoo. This process involves sending pull requests via https://code.funtoo.org. It is important to understand this process, and also understand how https://bugs.funtoo.org is a part of it. As BDFL I am always telling people to file a bug. I repeat it over and over again. I sometimes see people saying "that Daniel really loves his bugs." Well, there is a reason why I love bugs, or at least bug reports.

The Importance of Bug Reports... and Bad Kung-Fu

From the perspective of making Funtoo better, the following statements are true:

If you are experiencing an ongoing problem with Funtoo and have not reported a bug, you have not done enough communicate your problem.

Yes, that is even true if you have talked about it on forums or on Discord. Bug reports are important.

I love bug reports because the goal of Funtoo is to create and maintain reliable software, even perfect software (why not?) If you have come from Gentoo, you may be used to figuring out what USE variables to set by hand, and then dealing with any problems from your choices, and getting your system working. Along the way, maybe you encountered some weird issues but found ways around them either by your own troubleshooting or on resources like forums or similar. Maybe you filed a bug with Gentoo but it was not fixed in a reasonable time frame so you just learned to fix your own problems. I am not saying any of this to disparage Gentoo -- it is just that I believe this is a common experience and we have people coming from Gentoo all the time who tend to have these habits and perspectives. You are a Gentoo frontiersman, and have learned to fend for yourself.

This "deal with the problems on your own" approach can be rewarding, and you can learn things from it, but I will argue that if you come from this way of doing things that you may have learned some bad Kung-Fu. In Funtoo, you are part of a community. You are expected to "join in" with this community, and our core way of joining in is by filing bug reports. In Funtoo, if you leave out this part, then you are not fully participating.

I'll explain this in more detail below.

Funtoo Should Work. Because We All Benefit.

I want Funtoo to work, because I use it. I want it to work for everyone. If it doesn't work for you, a bug report lets Funtoo "see" that there is a problem. Due to the community nature of Funtoo, we rely on your eyes to tell us what isn't working, so we can fix it. We want it to work for you, and for us. We also understand "the law of the jungle" -- that if it works better for you, it will work better for us, too. Your eyes and voice are important for the community to work.

We also rely on your requests to know what packages to add, so we can add them -- though we really like to have a clear explanation for why the package you want is important to you. Your story is important. Funtoo is a community of people, and we maintain a technology that works for us. We are motivated by the needs of our users, and when we fully and deeply understand your need on a personal level, not just your "ask", we take it seriously and try to support you if possible.

Help Me To Help You

So when you don't report a bug, you are not letting others help you. And really, it hurts others, because eventually we will run into this bug too, and we will be frustrated by it, because we want software to just work, too. The earlier a bug is reported, the sooner it will be fixed, and the fewer people will be frustrated by it. So that's why it's so very important to file bugs. When you file a bug at https://bugs.funtoo.org, you are truly participating in the Funtoo community and helping the community to have visibility of these issues so they can be fixed quickly.

Maybe you came from a project where developers really hated getting duplicate bug reports. I love duplicate bug reports. File all the duplicate bugs you want. I will gladly deal with duplicate bugs if it helps us make sure that we have all bugs reported. Dealing with duplicate bug reports is a piece of cake, but trying to fix a problem you don't even know exists is impossible.

So if you have a problem, make sure there is a bug for it. If you don't see a bug for your problem, create a new bug.

Funtoo Philosophy on Bugs

The Funtoo philosophy on bugs is very simple:

  1. All problems should be reported to the bug tracker, so we can see problems.
  2. If it is broken, it should be fixed correctly, so we can make software more perfect. "Fixed correctly" means "something just works normally and intuitively without requiring any special manual workarounds by the user."
  3. If fixing the problem this way isn't feasible, we should find an acceptable and elegant workaround, so the software is usable, and things work normally and intuitively without any special steps, even if the technical part of the fix we use to get things working elegantly may be a short-term or less-than-optimal fix from a technical perspective.
  4. If neither of these options are possible, a manual workaround can and should be used. This allows the software to still technically work. These workaround steps need to be communicated to users so they are aware of them, to prevent frustration of trying to figure out these steps themselves. We have at least allowed our users to have a path forward -- with some bumps -- until we can fix the problem better.
  5. Our documentation and software should be simple, so we continually try to reduce or eliminate any required manual workarounds, and replace them with "better" fixes so that things will "just work" -- as soon as we can.

When you click "Create" on bugs.funtoo.org, you will see further instructions in green on how to file an ideal bug report. These instructions will help you to focus on what's important -- telling your 'story', or experience, so that the Funtoo community can understand your perspective.

Bug-Tracker Centered Development

With all of the above in mind, it should now be clear why the bug tracker at https://bugs.funtoo.org is central to our work.

To use the bug tracker, log in using your Funtoo account you created at https://auth.funtoo.org, and specify your username in lowercase.

File a bug. It will be in the "Intake" state. When it is ready to be worked on, it will be moved to the "Ready to Fix" state. When it is in "Ready to Fix" state, then pull requests (PR) can be submitted via https://code.funtoo.org.

When you file a bug, have confidence that we want the software to work for you, and will try our best to support you. And have confidence that you are fully participating in the Funtoo community.

The Nitty Gritty

  • First, make sure you have the current release of Funtoo Linux installed on at least one system.
  • Find things that need fixing on the bug tracker, and submit fixes for them (see video below on how.)
  • We highly recommend that you set up Metatools and join us in autogenning the world!
  • If you have a new ebuild, submit a pull request to kit-fixups (see YouTube videos for details.)
  • Testing things and finding bugs is also a form of help.
  • Help us document stuff on the wiki. See How to 'wiki'.
  • Hang out in Funtoo Discord or Funtoo Telegram Channel and chat with us.
  • Learn more about ebuilds by perusing the documentation below. Ask questions. Try out Metro.
  • Announcements are posted to the News and Announcements section of Funtoo Forums.
  • To track other updates, such as wiki updates, subscribe to funtoo's RSS and Atom feeds.

Getting Started

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:

Here is a follow-up Development_Guide/ebuilding video with close to an hour of tutorial-style instruction:

Funtoo Distinctives

To get familiar with Funtoo Linux internals, such as kit-fixups, and how they work, please be sure to read the following pages:

Ebuild Writing

To learn more about ebuilds and how to write them, the following pages are available:

For a more comprehensive reference of all the details of ebuild development, please see the Gentoo Development Manual.

Advanced Topics

Creating Your Own Overlay

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.

Creating Your Own Meta-Repo and Kits

Even more advanced users may want to use our own tree update scripts to generate their own customized 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.

Metro

To learn how to build your own Funtoo stages, please look at documentation for Metro.

Pages that need updating

   Warning

These pages are stale and need updating!