Difference between revisions of "Contribute"

From Amahi Wiki
Jump to: navigation, search
m (Added updated patch policy)
Line 83: Line 83:
 
* After that you can generate a patch to be sent upstream, e.g. for a patch of the latest commit.:
 
* After that you can generate a patch to be sent upstream, e.g. for a patch of the latest commit.:
  
      git format-patch HEAD^..HEAD
+
    1. Go into the patch folder located in the root of the git folders.
 +
    2. git format-patch HEAD^..HEAD
 +
   
 +
NOTE: When creating the patch title(first line) please put it in YYMMDD-PATCHSEQUENCE#-long-patch-name.patch format. In the long name please include what module you are working on. AKA what application etc..
 +
 
  
 
* This will generate a file called 0001-my-patch.mbox or similar (type ls -l 00*), which then you can email or pastebin it to someone to be committed upstream. You probably want to [[Configure Git]] to your liking first to display the email properly.
 
* This will generate a file called 0001-my-patch.mbox or similar (type ls -l 00*), which then you can email or pastebin it to someone to be committed upstream. You probably want to [[Configure Git]] to your liking first to display the email properly.

Revision as of 11:36, 21 March 2010

There are a few ways to contribute and get involved and with Amahi!

Here is a list of ideas that the community has been suggesting:

  • Contribute to this wiki! That is probably the most direct and quick way to contribute. Your experience helps others install and run their HDA!
  • Share your experience in the area or running a server and answer questions in the community forums or in the users mailing list. If you are an experienced user, others will appreciate your efforts and this will make the project more usable and successful in the long run
  • Talk about Amahi! Let people know what Amahi is about, help them install their HDA
  • Promote Amahi, such as doing a presentation to your local LUG (Linux User Group), share your presentation with others!
  • Blog about your experience with Amahi
  • Make recommendations
  • Do reviews or HOWTOs
  • Help us create a polished "press kit" of sorts that we can give when manazines and website editors ask us about Amahi
  • Create a theme or two
  • Help us write a "manual" so that it's printable (in pdf and also in paper)
  • Submit to other sites that may like it! :-)

... remember, it has to be fun and enjoyable for you, take as little time as possible, and help the community!

Aside from the above, there are two major ways to contribute in a more active role.

Types of Contributor

We have three types of contributor, from less involved to more involved:

  • Editor: editing the apps "visual" part for English readability, HTML validation, logo/screenshot "shinyness" and generally making beta apps look good
  • Tester: testing, rating and sending feedback on beta apps
  • Packager: packaging apps. no programming required

You can become any (or all) of these three roles by making yourself known to the community in the forums or in the IRC channel and asking to become a contributor!

Becoming an Application Packager/Contributor

  • This is very easy. Whether you are an expert or you only know the basics of some application installation and configuration, this is a great way to contribute
  • Read the Application Contributor Guide

What if I want to contribute but don't have the time to package an app?

Well heres a solution, you can find some apps for our developement team to package and we can do that for you. All you have to do is supply a link to the apps homepage and we will jump right on it. Click Here to add you app ideas to the list. Any and all apps are ok.

Contributing Code

     git clone git://git.amahi.org/amahi.git
  • If not, pull any changes from the master repo
     cd amahi                (the root of the git tree)
     git pull
  • Get yourself familiar with the pieces, and ask questions!
  • Make some changes to the code, then test them:
  • e.g. for testing the platform:
     cd platform/platform/html
     ./script/server
    and access it at http://hda:3000
  • You can see your changes with two git tools: status and diff
     git status
  • The status gives you a list of what files were modified, added or removed. you can see changes in your area with:
     git diff --cached
  • When you know you want to modify a file, you add it to the changes to be committed, for example, say a README file:
     git add README
  • For the parts that are added and checked in, you can see the changes with
     git diff
  • This is what will be committed!
  • Then actually commit your changes to your git repo:
     git commit
  • After that you can generate a patch to be sent upstream, e.g. for a patch of the latest commit.:
    1. Go into the patch folder located in the root of the git folders.
    2. git format-patch HEAD^..HEAD
   

NOTE: When creating the patch title(first line) please put it in YYMMDD-PATCHSEQUENCE#-long-patch-name.patch format. In the long name please include what module you are working on. AKA what application etc..


  • This will generate a file called 0001-my-patch.mbox or similar (type ls -l 00*), which then you can email or pastebin it to someone to be committed upstream. You probably want to Configure Git to your liking first to display the email properly.
  • Please note, once the patch is applied upstream, your name and email WILL be officially in the amahi git repo as as contributor, which mean it's in the open and it's crawlable, so please use your PUBLIC name/email accordingly.