This FAQ is meant to provide a place for you to capture knowledge as you begin working on Mozilla development. When someone answers a question for you, consider adding it below. Create new topic headings as necessary.
Building Firefox
- Where can I get information on building Firefox or other Mozilla products?
- Start with the documentation on MDC: http://developer.mozilla.org/en/docs/Build_Documentation.
- Where can I get more help building Firefox on Windows?
- See Building Firefox on Win32 using Visual Studio .NET 2005.
- Windows Build Documentation is updated - 17:15, Sept 16 2006 (EST)
- Seneca students can get Visual Studios .NET 2003 or 2005 from ACS.
- How can I checkout the source code when ACS is blocking ports?
- Open up two terminals. The first one makes a tunnel to matrix. In terminal 1:
- ssh -L 2401:cvs-mirror.mozilla.org:2401 -l yourusername yourusername@matrix
- In terminal 2:
- cvs -d :pserver:anonymous:anonymous@localhost:/cvsroot co mozilla/client.mk
IRC
- Where can I find a comprehensive list of IRC clients?
- Visit http://en.wikipedia.org/wiki/List_of_IRC_clients for a list of IRC clients on various platforms. Two popular choices are Chatzilla and irssi.
- Where can I ask for help on IRC?
- Use the #seneca, #firefox, #build or #developers channels on irc://irc.mozilla.org.
- What is the best way to share long error messages or other text that is too big to copy/paste into IRC?
- Use a pastebin at http://pastebin.ca/ or http://pastebin.mozilla.org/ to copy/paste your output. Then paste the resulting URL into IRC.
- What is the best way to share long URLs in IRC?
- Use http://tinyurl.com/ and paste the resulting URL into IRC.
- IRSSI + Terminal Server:
- Click for a quick Irssi Tutorial
- IRSSI Documentation and Resources
- What do all these acronyms stand for?
- Look them up on the Glossary of IRC terminology
SVN
- What is SVN?
- Subversion (or SVN for short) is a revision control system that is used to track changes to a project's file repository. SVN tracks changes to the repository made by each project collaborator. SVN tracks changes and can be used to analyze differences and undo changes at a later time if needed. This allows for greater collaboration and speed , while minimizing (though never completely elimintating) risks associated with duplication and overwriting each others work. Project contents need not be limited to source code files.
- Where can I find an SVN tutorial?
- More complete documentation?
- Detailed SVN tutorials and other help information can be found in the free official online book by O'Reilly Media.
- Where can I find an SVN Client?
- View a list of SVN clients available for various platforms and development environments.
SVN
- What is SVN?
- Subversion (or SVN for short) is a revision control system that is used to track changes to a project's file repository. SVN tracks changes to the repository made by each project collaborator. SVN tracks changes and can be used to analyze differences and undo changes at a later time if needed. This allows for greater collaboration and speed , while minimizing (though never completely elimintating) risks associated with duplication and overwriting each others work. Project contents need not be limited to source code files.
- Where can I find an SVN tutorial?
- More complete documentation?
- Detailed SVN tutorials and other help information can be found in the free official online book by O'Reilly Media.
- Where can I find an SVN Client?
- View a list of SVN clients available for various platforms and development environments.
SVN Common Commands
- To access the svn repository for your project, use the following command to 'check out' your project.
svn checkout svn://cdot.senecac.on.ca/test/<yourprojecthere>
- Once you have your repository sandbox, change directories into the project folder.
- To add a file to your svn repository, use the following command:
svn add <filename>
- To remove a file from your svn repository, type:
svn remove <filename>
- To update the repository with your latest changes to the repository, type:
svn commit -m "type a message here that explains what you're committing"
- To update the sandbox located on your local machine to the same version on the repository, type:
svn update
- To view all the changes (commits) made on a svn repository, type:
svn log
- It is very important that you type useful messages when committing code.
Terminology
- What does MDC or devmo refer to?
- Mozilla Developer Center - http://developer.mozilla.org.
- What does MoCo stand for?
- Mozilla Corporation - http://www.mozilla.com/.
VMWare
- What is a VM appliance?
- A VM appliance is pre-configured, pre-packaged image of an operating system or environment. This allows you to simply download these appliances and not have to worry about downloading iso images and burning CD's etc. to install an OS. VM appliances are opened with the VMPlayer.
- How do I get VM appliances?
- To get started you will need to install the VMWare player. or VMWare Server To use an appliance, simply download and unzip it. Then launch VM Player or Server and open it when prompted.
- Where can I find a listing of available VM appliances?
- A detailed listing of available VM Appliances can be found at the Virtual Appliance Directory.
- Why is there a shortage/absence of appliances for Microsoft Operating Systems in the directory?
- Appliances can be created for Microsoft operating systems just they can be created for the the various other operating systems (e.g. Ubuntu, Fedora etc.) using VMWare Workstation. However, licensing restrictions remain the only factor limiting the availabilty of MS operating systems.
- Is there a way to create your own virtual machines (appliances) using only the VMWare Player?
- The easiest method to create VM appliances is using VM Server or Workstation edition. However, Mike Shaver was able to locate a hack for this. There is even a free third party wizard applicaton that can help you create your on VM's to run on the VM Player.