DIY Disclosure files: Difference between revisions

From OSSelot
Jump to navigation Jump to search
mNo edit summary
(Added on-demand display of options of the SPDX2Disclosure script (design and features))
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Create individually designed disclosure files=
__NOTOC__
=Create individually do-it-yourself designed disclosure files=
This interface uses a script available from the [https://github.com/osadl/SPDX2Disclosure SPDX2Disclosure] repository.
This interface uses a script available from the [https://github.com/osadl/SPDX2Disclosure SPDX2Disclosure] repository.
<html>
<html>
<input type="button" onclick="showorhide(this, 'showoptions');" value="Show options of the SPDXDisclosure script" />
<div id="showoptions" style="display: none;">
</html>
===Design of the disclosure document===
{| class="wikitable" style="text-align: left; color: #1565AF; font-weight: normal;"
|-
! Long option !! Short option !! Function
|-
| licensing=none || style="text-align: center;" | -ln || Additional section with copyright notices per file
|-
| licensing=referenced || style="text-align: center;" | -lr || Same as -ln plus all licenses referenced
|-
| licensing=bsdtext || style="text-align: center;" | -lb || Same as -ln plus non-standard BSD licenses verbatim
|-
| licensing=hashedtext || style="text-align: center;" | -lh || Same as -ln plus all hashed licenses verbatim
|-
| licensing=text || style="text-align: center;" | -lt || Same as -ln plus all licenses verbatim
|}
===Features of the disclosure document===
{| class="wikitable" style="text-align: left; color: #1565AF; font-weight: normal;"
|-
! Option !! Display
|-
| style="text-align: center;" | -c || Include SHA256 checksums
|-
| style="text-align: center;" | -n || Line numbering
|-
| style="text-align: center;" | -p || Prepend general package data
|}
<html>
</div>
</html>
==Encapsulate the [[Search|search]] Web script into a shell script to provide a command line interface for creating individually designed disclosure files==
<html>
<input type="button" onclick="showorhide(this, 'showtechbg');" value="Show technical background of this functionality" />
<div id="showtechbg" style="display: none;">
</html>
The actual converter to create individually designed disclosure documents from the <span style="font-family: OSSelot-Bold; font-weight: 500; color: #1565af;">OSSelot</span> Github repository files is located on the www.osselot.org server and invoked via the PHP script "diydisclosure.php" with package name and version, page style and options given as query string. It can be called from browser or from command line using a shell script.
===Call from browser===
The calling convention of the URL is
<nowiki>https://www.osselot.org/diydisclosure.php?<package>/version-<version>&<design>&<features></nowiki>
where <design> and <features> may be any of the related command line options of the Python script [https://github.com/osadl/SPDX2Disclosure SPDX2Disclosure]. For example, to retrieve a disclosure document of the "angular" package in version 15.2.2 with copyright notices and license references by file followed by a list with all referenced licenses (option "-lr") and prepended package information (option "-p") the URL [https://www.osselot.org/diydisclosure.php?angular/version-15.2.2&-lr&-p https://www.osselot.org/diydisclosure.php?angular/version-15.2.2&-lr&-p] may be used.
===Call from command line===
To create disclosure documents from arbitrary curated <span style="font-family: OSSelot-Bold; font-weight: 500; color: #1565af;">OSSelot</span> packages with individually selected document format and features the following shell script can be used:
#!/bin/bash
if test -z "$1" -o -z "$2" -o -z "$3" -o -z "$4"
then
  echo "Usage: $0 <package> <version> <design> <features>"
  exit 1
fi
package="$1"
version="$2"
design="$3"
features="$4"
if test `wget -qO - <nowiki>https://www.osselot.org/curated.php?$package</nowiki> | grep version-$version`
then
  wget -qO - <nowiki>"https://www.osselot.org/diydisclosure.php?$package/version-$version&$design&$features" | sed 's/<.*pre>//'</nowiki>
fi
The output of this script can then be adapted to the actual file set of the binary software distribution and given to the recipient of the software upon delivery as an important step toward compliance with the license terms. Possible further steps to license compliance are the adaptation of other legal materials such as terms and conditions and, if the license imposes this obligation, the immediate provision or an appropriate written offer to deliver the source code.
<html>
</div>
<script src="/scripts/osadl.js">
<script src="/scripts/osadl.js">
</script>
</script>
</html>
==Web interface to immediately use the above described script and [[Search|search]] for a particular package to create a disclosure document according to the given settings==
<html>
<h5>Overall design</h5>
<h5>Overall design</h5>
<input type="radio" id="none" name="licensing" checked="checked" value="-ln">
<input type="radio" id="standard" name="licensing" value="standard">
<label for="none"> Additional section with copyright notices per file</label><br>
<label for="none"> Unreferenced licenses, then copyright notices (unmodified SPDX standard)</label><br>
<input type="radio" id="referenced" name="licensing" value="-lr">
<input type="radio" id="none" name="licensing" value="-ln">
<label for="referenced"> Same as first choice plus all licenses referenced</label><br>
<label for="none"> Unreferenced licenses, then copyright notices by file</label><br>
<input type="radio" id="referenced" name="licensing" checked="checked" value="-lr">
<label for="referenced"> Copyright notices and license references by file, then referenced licenses</label><br>
<input type="radio" id="bsdtext" name="licensing" value="-lb">
<input type="radio" id="bsdtext" name="licensing" value="-lb">
<label for="bsdtext"> Same as first choice plus non-standard BSD licenses verbatim</label><br>
<label for="bsdtext"> Referenced license templates, then copyright notices and license references by file with verbatim texts of non-template BSD-type licenses</label><br>
<input type="radio" id="hashedtext" name="licensing" value="-lh">
<input type="radio" id="hashedtext" name="licensing" value="-lh">
<label for="hashedtext"> Same as first choice plus all hashed licenses verbatim</label><br>
<label for="hashedtext"> Referenced license templates, then copyright notices and license references by file with verbatim texts of all non-template licenses</label><br>
<input type="radio" id="text" name="licensing" value="-lt">
<input type="radio" id="text" name="licensing" value="-lt">
<label for="text"> Same as first choice plus all licenses verbatim</label><br>
<label for="text"> Copyright notices and verbatim license texts by file</label><br>
<h5>Additional features</h5>
<h5>Additional features</h5>
<input type="checkbox" id="checksums" name="checksums">
<input type="checkbox" id="checksums" name="checksums">
<label for="checksums"> Include file checksums</label><br>
<label for="checksums"> Include SHA256 checksums</label><br>
<input type="checkbox" id="numbered" name="numbered">
<input type="checkbox" id="numbered" name="numbered">
<label for="numbered"> Number files consecutively</label><br>
<label for="numbered"> Number files consecutively</label><br>
<input type="checkbox" id="preamble" name="preamble">
<input type="checkbox" id="preamble" name="preamble">
<label for="preamble"> Prepend package information</label><br>
<label for="preamble"> Prepend package information</label><br>
<h4>Look for software packages that may have already been curated at <span style="font-family: OSSelot-Bold; font-weight: 500; color: #1565af;">O</span> and provide links to the related individually designed disclosure documents that will be created on the fly</h4>
<h4>Look for software packages that may have already been curated at <span style="font-family: OSSelot-Bold; font-weight: 500; color: #1565af;">OSSelot</span> and provide links to the related individually designed disclosure documents that will be created on the fly</h4>
<input type="text" onkeyup="searchtextkeyup(event, this, 'diydisclosure');" size="30" /><button onclick="searchOSSelot(this, 'diydisclosure');">Search for an <span style="font-family: OSSelot-Bold; font-weight: 500; color: #1565af;">O</span> disclosure document</button><br />
<input type="text" onkeyup="searchtextkeyup(event, this, 'diydisclosure');" size="30"><button onclick="searchOSSelot(this, 'diydisclosure');">Search for an <span style="font-family: OSSelot-Bold; font-weight: 500; color: #1565af;">OSSelot</span> disclosure document</button><br />
<span style="display: none;"></span>
<span style="display: none;"></span>
<br />
<br />

Latest revision as of 22:41, 19 September 2024

Create individually do-it-yourself designed disclosure files

This interface uses a script available from the SPDX2Disclosure repository.

Encapsulate the search Web script into a shell script to provide a command line interface for creating individually designed disclosure files

Web interface to immediately use the above described script and search for a particular package to create a disclosure document according to the given settings

Overall design







Additional features




Look for software packages that may have already been curated at OSSelot and provide links to the related individually designed disclosure documents that will be created on the fly



Interface to obtain standard disclosure documents

A similar interface provides for retrieving the standard disclosure files without the possibility for selecting the overall design for inclusion of licensing data and for adding certain optional features.

Interface to obtain a list of licenses

A similar interface provides for listing the licenses that a particular software package uses instead of the entire disclosure documents.