Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
There are many ways to contribute to FOSSology. If you are a developer and want to submit code, start by discussing what you want to do on our developer mailing list firstname.lastname@example.org. Submit your patches there or as a pull request. Once we know you a little better and trust your patches, we will give you commit access. You must agree with our licensing choice. All code is under GPL-2.0. If you want your copyright to appear in the code, put it in your patch.
Contributing to FOSSology
- Download Source via Git
- Install from Source
- Documentation Generation
- Reporting bugs
- Definition of Done
- Coding Style
- Git basic commands
- Chris Beam's Intro on Git Comments
Administration of FOSSology
- General Administration Notes
- Configuration and Tuning
- Configuration of OpenID Connect
- Email notification configuration
- Groups and Access Rights configuration
- Improving IO performance
Infrastructure for the application is comprised by the database, the Web server, the PHP environment etc.
- Global System Configuration Variables
- File Locations and folder locations of the FOSSology server application.
- File Install Locations in 1.4 and 2.X as an overview - migration information.
- Repository, where FOSSology stores uploads.
- Dependency injection
- PHP Object Baseclass
- PHP Debugging with Apache
- Database, the general setup.
- fossology-gold the master database schema
- License Ref Table
- Useful SQL Commands for Buckets
- More Useful SQL Commands
- DbManager for PHP
- DbManager-c, for the C-Agents
Agents and Jobs
- Job Scheduler
- FOSSology Agents
- Writing Agents & Plugins
- How To Create An Agent
- Writing a FOSSology agent (new work in progress)
- Programming for the Job Queue
- How to query an agent for version
- File Comparing and Diff type plugins
Particular Agent Documentation
- Nomos, a license scanner based in regular expressions.
- Monk, a license scanner based on text comparison.
- MonkBulk, an extension to Monk for user-based phase searching.
- Copyright, an Agent searching for copyright, URL, e-mail and authorship statements.
- ECC, export control and customs as an extension to Copyright.
- Package Agent, an agent exporting metadata from installation packages.
- Maintenance Agent, (new in 2.4.0)
- Mimetype Agent, running over files trying to determine the mimetype.
- Buckets, an agent to categorize files based un user-defineable definitions.
If you just want to run the tests or learn about them see the Running FOSSology Tests area of the wiki.
- FOSSology test automation
- PhpUnit test coverage
- Install Fossology on a Jenkins server
- Ant build file example for test execution
- Debugging tips
- Testing FOSSology (to be migrated)
This documents the nuts and bolts of producing a FOSSology release.
- Release Notes (from 1.3 onwards)
- Release Process
- Release Testing - Document the minimum tests necessary to pass before releasing
- How to create a new release
- Building FOSSology packages
- FOSSology Debian Package Process
- Tag and Create packages for new release
- Notepad Building Packages