DoSOCS1.0 is no longer actively maintained. Please visit DoSOCS2.0 for the most current version.
The Software Package Data Exchange (SPDX) specification is a formatting standard for communicating the licenses and copyrights associated with a software package. Being able to explicate this information is a required function for operations support system management within an organization.
DoSOCS is aimed at processing software packages into SPDX documents. This utility will scan, store, and print spdx documents. DoSOCS Stores SPDX docs in a MySQL database, the same that is documented here.
- Source Code: Apache 2.0
- Documentation: Creative Commmons BY-SA-3.0
Copyright © 2014 University of Nebraska at Omaha
In general, your system should meet FOSSology's performance recommendations, which depend on the maximum file or package size you intend to scan.
- Install Prerequisites
- Download and run install.sh to the directory you want DoSOCS installed (Note: you may need to change the user name and password fields in install.sh)
- Update settings.py with database connection information, and install locations of ninka and fossology.
This will install DoSOCS, SOCSDashboard, and SOCSDatabase. Also ensure you have execute rights on ninka and fossology.
./DoSPDX.py [options]
#####Options
--packagePath [Path to archive]
Allows user to specify which package to run DoSPDX against.- Conditionally optional, Required if used with
-s
or--scan
- Example:
./DoSPDX.py -p archive.tar.bz2
- Conditionally optional, Required if used with
-s
or--scan
Runs a scan on the package specified in package path argument.- Conditionally optional, Required if used with
-s
or--scan
- Example:
./DoSPDX.py -p archive.tar.bz2 -s
- Conditionally optional, Required if used with
--print [format]
Prints out SPDX document in specified format.- Optional
- Example:
./DoSPDX.py --print TAG
or./DoSPDX.py --print RDF
- Note: Currently supported print formats are "TAG","RDF", and "JSON"
--documentComment [Document Comment]
Specifies SPDX document Comment section.- Optional
- Example:
./DoSPDX.py --documentComment "Scanned as part of the Yocto build process."
--spdxDocId [SPDX Doc Id]
Used to generate the spdx document object from the MySql Database.- Conditionally optional, Required if
-s
or--scan
is not used. - Example:
./DoSPDX.py --spdxDocId 37
- Conditionally optional, Required if
--creator [Creator]
Specifies who is creating the SPDX document.- Optional
- Example:
./DoSPDX.py --creator "Zachary McFarland"
--creatorComment [Creator Comment]
Specifies creator comment for the SPDX document.- Optional
- Example:
./DoSPDX.py --creatorComment "Inital scan of pacakge."
--packageVersion [Package Version]
Specifies version of the package being scanned.- Optional
- Example:
./DoSPDX.py --packageVersion 1.2
--packageSupplier [Package Supplier]
Specifies creator comment for the SPDX document.- Optional
- Example:
./DoSPDX.py --packageSupplier "Apache Software Foundation"
--packageDownloadLocation [Download Location]
URL of where the pacakge was downloaded from.- Optional
- Example:
./DoSPDX.py --packageDownloadLocation "http://www.apache.org/"
--pacakgeOriginator [Originator]
Specifies the originating source of pacakge.- Optional
- Example:
./DoSPDX.py --pacakgeOriginator "IBM"
--packageHomePage [HomePage]
Specifies URL for software pacakge homepage.- Optional
- Example:
./DoSPDX.py --packageHomePage "http://www.apache.org/"
--pacakgeSourceInfo [Package Source Info]
Specifies source information of the pacakge.- Optional
- Example:
./DoSPDX.py --pacakgeSourceInfo "Package that is part of Yocto Build process."
--packageLicenseComments [Comments]
Allows for comments to be made about the license of a pacakge.- Optional
- Example:
./DoSPDX.py --packageLicenseComments "Apache"
--packageDescription [Description]
Allows user to enter a description of the package.- Optional
- Example:
./DoSPDX.py --packageDescription "This package allows for hosting local content to the web."
--scanOption [scanner]
Allows for user to specify which scanner they would like to use.- Optional
- Example:
./DoSPDX.py --scanOption fossology --scan
- Note: if not specified Ninka and fossology will be used. The only supported scanOption is "fossology"
All contributions to DoSOCS will be subject to review by the owner of the repo before being merged. The following methods are acceptable ways to request changes:
- Pull requests
- Submitting issues
If you have any questions about this application feel free to send the developers an email.