Client

Install

Command line

This (option for dsss needs to be defined) gets selected download and dependencies as specified by its parameters (parameters for this option needs to be defined). One parameter may specify the version of the download to download. Checks on filesystem (maybe not in the initial release) for dependencies that have already been installed that are required by this download. Checks the version of the dependencies against the download's supported dependency versions. If no version is specified, it uploads a file (specified by server for comparison) to the server that will tell what version this dependency is (maybe not initial release and mabye not at all. All non-installed, required dependencies are downloaded unless a parameter specifying not to is supplied. Will not let other downloads clash because of new dependencies and will install a newer version or report incompatibility issues to the user. The user may specify a parameter to ignore incompatibility issues. If incompatibility issues can not be solved, this will revert to an older version of the download until it is not possible for these to not clash in which case it will install the most up to date download and dependencies with versions matching that of which the download is compatible with.

Update

This (option for dsss needs to be defined) will update downloads. If a download is name is a paremeter it will go through the entire clash check process and install the most up to date compatible version. If no download name is specified it will update all to the most up to date non-clashed downloads. The clash check process is defined above. This will also take a parameter on which version of the download (if download name provided) to update close to. (some of this may not be made available in initial release). Makes a backup of the old version and it's clash-checked dependencies

Update command line:

dsss update; OPTIONAL: NAME, -nodependencies=(TRUE|FALSE), -backup=(TRUE|FALSE), -version=NUMBER

Revert

Reverts an update to its older on system version or if not found on system, as found on internet.

Revert command line:

dsss revert NAME; OPTIONAL: -version=NUMBER

Remove

Removes a download and its dependencies (dependencies only if specified to remove them).

Remove command line:

dsss remove NAME; OPTIONAL: -nodependencies=(TRUE|FALSE)

Installed

Tells of all installed downloads and their dependencies (dependencies are counted as downloads).

dsss installed?; OPTIONAL: NAME


Server

Should be able to associate (versions, downloads) to their dependencies of correct (versions, download).


ETC..

If there are any questions provide them below. If there are any problems, plans, comments, suggestions, changes needed, etc....... describe below.