DFSG stands for: Debian Free Software Guidelines. This is a set of guidelines about the license of a software package, as outlined in the Debian Social Contract. Debian has three software categories inside the repository: main, non-free and contrib. The packages go into one of the repository depending on whether their license is DFSG-compatible or not. Packages in main meet the DFSG, while packages in non-free fail to meet the DFSG, and packages in contrib are DFSG compatible but depend on packages that fail to meet the DFSG:
- main (packages meet DFSG)
- non-free (packages fail to meet DFSG)
- contrib (packages meet DFSG, but depend on packages that fail DFSG)
A package is basically DFSG-compatible if its source code is available, and if everybody is allowed to modify and distribute it; examples of compatible licenses are the GNU General Public License or the BSD License.