http://wiki.linuxmce.org/index.php?title=Packages&feed=atom&action=historyPackages - Revision history2024-03-28T16:29:48ZRevision history for this page on the wikiMediaWiki 1.24.1http://wiki.linuxmce.org/index.php?title=Packages&diff=34769&oldid=prevPhenigma: Packages page - editing for clarity - Part 1 - break time.2014-01-21T23:26:03Z<p>Packages page - editing for clarity - Part 1 - break time.</p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">←Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 23:26, 21 January 2014</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 6:</td>
<td colspan="2" class="diff-lineno">Line 6:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>'''This page is not for the average user, so do not make any changes on this page unless you are prepared for the problems it may cause.'''</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>'''This page is not for the average user, so do not make any changes on this page unless you are prepared for the problems it may cause.'''</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The purpose of <del class="diffchange diffchange-inline">this </del>page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  <del class="diffchange diffchange-inline">This also lists </del>all the places where <del class="diffchange diffchange-inline">the </del>software can be downloaded from.  ***Make Release*** <del class="diffchange diffchange-inline">is another program that </del>will use the information <del class="diffchange diffchange-inline">on this page </del>to automatically compile <del class="diffchange diffchange-inline">the </del>software, and build archives, packages or other sources for download.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">=Overview=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The purpose of <ins class="diffchange diffchange-inline">the Packages </ins>page is to list all the software <ins class="diffchange diffchange-inline">packages, </ins>and other files<ins class="diffchange diffchange-inline">, </ins>that are needed <ins class="diffchange diffchange-inline">by LinuxMCE </ins>so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  <ins class="diffchange diffchange-inline">The Package definitions list </ins>all the places where <ins class="diffchange diffchange-inline">that specific </ins>software can be downloaded from.  ***Make Release*** will use the information <ins class="diffchange diffchange-inline">in these Packages definitions </ins>to automatically compile software, and build archives, packages or other sources for download.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>A "package" is a <del class="diffchange diffchange-inline">software program, or some other </del>collection of files<del class="diffchange diffchange-inline">.  The first check box indicates if this package contains source code, or other files.  If you specify </del>that <del class="diffchange diffchange-inline">it contains source code</del>, <del class="diffchange diffchange-inline">then that means the package must first be compiled to produce another package that has the files for the end-user.  .cpp</del>, <del class="diffchange diffchange-inline">.h files and related</del>, <del class="diffchange diffchange-inline">Makefile</del>, <del class="diffchange diffchange-inline">.vcproj</del>, <del class="diffchange diffchange-inline">etc.</del>, <del class="diffchange diffchange-inline">are examples </del>of <del class="diffchange diffchange-inline">source code</del>.  <del class="diffchange diffchange-inline">Other types of files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to </del>be <del class="diffchange diffchange-inline">used and are generally not considered 'source code' for these purposes</del>.  <del class="diffchange diffchange-inline">If you use MakeRelease to do all the building, MakeRelease will first go through all the </del>packages <del class="diffchange diffchange-inline">that are source code and attempt to build them all.  If the package you are editing is not </del>source code, <del class="diffchange diffchange-inline">and source code is available, you should indicate on the next line what package contains </del>the source code<del class="diffchange diffchange-inline">.  MakeRelease will attempt to compile the source code for a given package before outputting it, unless you specify the no build (-b) option</del>.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">=What is a package?=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>A "package" is a collection of files that <ins class="diffchange diffchange-inline">can contain software</ins>, <ins class="diffchange diffchange-inline">documentation</ins>, <ins class="diffchange diffchange-inline">configurations</ins>, <ins class="diffchange diffchange-inline">images</ins>, <ins class="diffchange diffchange-inline">audio files</ins>, <ins class="diffchange diffchange-inline">video files</ins>, <ins class="diffchange diffchange-inline">or any other type </ins>of <ins class="diffchange diffchange-inline">file</ins>.  <ins class="diffchange diffchange-inline">A package can </ins>be <ins class="diffchange diffchange-inline">either a Source package or a release package</ins>.  <ins class="diffchange diffchange-inline">Source </ins>packages <ins class="diffchange diffchange-inline">usually contain </ins>source code, <ins class="diffchange diffchange-inline">whereas release packages usually contain binaries (executables or libraries) created from </ins>the source code.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">The Package type is just for organizing packages.</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">The Manufacturer should </del>be <del class="diffchange diffchange-inline">Pluto IF </del>the package <del class="diffchange diffchange-inline">should </del>be compiled <del class="diffchange diffchange-inline">during </del>a <del class="diffchange diffchange-inline">regular build-maindebs cycle</del>. <del class="diffchange diffchange-inline">For all package definition</del>, that <del class="diffchange diffchange-inline">just reference </del>external <del class="diffchange diffchange-inline">deb </del>files <del class="diffchange diffchange-inline">for dependency sake, this should </del>be <del class="diffchange diffchange-inline">left empty</del>.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">=What kind of Package?=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">==Source Package/Release Package/Reference Package?==</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">When creating or editing a package the first check box selects if this package contains source code, or release files.  There are three primary kinds of package you can create:</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">===Source Package===</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">If you specify that it contains source code, that means the package must first </ins>be <ins class="diffchange diffchange-inline">compiled to produce another package (</ins>the <ins class="diffchange diffchange-inline">release </ins>package<ins class="diffchange diffchange-inline">) that has the files for the end-user.  .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code.  Source Packages must have the manufacturer set to Pluto to </ins>be <ins class="diffchange diffchange-inline">built or packaged by MakeRelease.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">===Release Package===</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">Contains </ins>compiled <ins class="diffchange diffchange-inline">binary versions of files that were defined in </ins>a <ins class="diffchange diffchange-inline">Source Package</ins>. <ins class="diffchange diffchange-inline"> May contain documentation</ins>, <ins class="diffchange diffchange-inline">configuration scripts or other ancillary files.  Some files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes.  Release Packages must have the manufacturer set to Pluto to be created by MakeRelease.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">===Reference Package===</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">Will refer to a package </ins>that <ins class="diffchange diffchange-inline">exists in an </ins>external <ins class="diffchange diffchange-inline">(non-LinuxMCE) repository.  No </ins>files <ins class="diffchange diffchange-inline">will </ins>be <ins class="diffchange diffchange-inline">referenced and these packages will not be built by MakeRelease during a build cycle</ins>.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">Next you indicate what platforms this package is compatible with.  Whenever you see </del>a <del class="diffchange diffchange-inline">compatibility pair listing an operating system and distro it always works like this: </del>If you <del class="diffchange diffchange-inline">select an operating system only</del>, <del class="diffchange diffchange-inline">it will match every distribution platform for that platform.  If you select a distribution</del>, <del class="diffchange diffchange-inline">regardless of </del>the <del class="diffchange diffchange-inline">operating system you chose, only that particular distribution is a match</del>.  <del class="diffchange diffchange-inline">If you leave both </del>of <del class="diffchange diffchange-inline">them at 'any', then it will match every platform</del>.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">==Linking </ins>a <ins class="diffchange diffchange-inline">Source Package to a Release Package==</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>If <ins class="diffchange diffchange-inline">the package </ins>you <ins class="diffchange diffchange-inline">are editing is not source code</ins>, <ins class="diffchange diffchange-inline">and source code is available</ins>, <ins class="diffchange diffchange-inline">indicate on </ins>the <ins class="diffchange diffchange-inline">next line what package contains the source code</ins>.  <ins class="diffchange diffchange-inline">The package must already have been defined to appear in the list </ins>of <ins class="diffchange diffchange-inline">selectable packages</ins>. <ins class="diffchange diffchange-inline"> </ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">==How MakeRelease uses this information==</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">MakeRelease will first go through all packages that are source code, with Pluto as Manufacturer, and attempt to build them all.  MakeRelease will build the source defined in the source code package and then create the release package from the resultant compiled binaries, and include any other files that are specified.  MakeRelease will attempt to compile the source code for a given package before creating the Source Package, unless you specify the no build (-b) option.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">=Package Type=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">The Package type is for organizational purposes only and has no specific meaning.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">=Manufacturer=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">The Manufacturer should be Pluto IF the package should be compiled (or packaged) during a regular build cycle with MakeRelease. This should be empty for packages from non-LinuxMCE repositories.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">=Package Compatibility=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Next you indicate what platforms this package is compatible with.  </ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Whenever you see a compatibility pair listing an operating system and distro within the LinuxMCE webadmin it will always work like this: </ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">*If you select an operating system only, it will match every distribution platform for that OS.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">*If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match.  </ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">*If you leave both of them at 'any', then it will match every platform.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">=Dependencies=</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Next, indicate what packages this one depends on--its dependencies.  The dependencies will always be installed first.  If a package is only required to build from source code, then that package should be a dependent of the source code only.  For example, our DCE Library requires MySql.  So the DCE library depends on MySql.  The MySql development libraries are required to build DCE from source code, so the DCE Library Source Code package depends on MySql development libraries.  They will only be installed then if the user wants to build from source.  If you add a dependent package and that dependent package is not compatible with the given platform, it will be ignored.  For example, the LinuxMCE Orbiter requires ALSA libraries when running on Linux.  So, the Orbiter package is marked as compatible with all operating systems.  It depends on ALSA, which is only compatible with Linux.  When the Orbiter is installed on Windows, it will ignore the ALSA dependency.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Next, indicate what packages this one depends on--its dependencies.  The dependencies will always be installed first.  If a package is only required to build from source code, then that package should be a dependent of the source code only.  For example, our DCE Library requires MySql.  So the DCE library depends on MySql.  The MySql development libraries are required to build DCE from source code, so the DCE Library Source Code package depends on MySql development libraries.  They will only be installed then if the user wants to build from source.  If you add a dependent package and that dependent package is not compatible with the given platform, it will be ignored.  For example, the LinuxMCE Orbiter requires ALSA libraries when running on Linux.  So, the Orbiter package is marked as compatible with all operating systems.  It depends on ALSA, which is only compatible with Linux.  When the Orbiter is installed on Windows, it will ignore the ALSA dependency.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Next specify the <del class="diffchange diffchange-inline">source </del>of the package--where to get it from.  The Repository Sources are maintained in a separate table.  The values in for Name, Repository, Version and Parms are specific to the type of repository, and how the installer will use them.  For archives, like .tar files, the installer will look up the URL from the Repository source, and assume the "Repository" field is a directory on that source, and the name of the file is "Name"[_"Version"]"Parms".  If Name is "myfile", Version is "2.0" and Parms is ".zip", it will try to download a file myfile_2.0.zip.  For Ubuntu archives, Name is the package name, Version is the Version number, and Parms is not used.  If you will be creating your own installer to handle a given repository type you have some flexibility in defining how these fields are used so that it is appropriate for the given type.  Add compatibility for the repository sources so the system knows what platforms this source can be used on.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">=Sources for Package=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Next specify the <ins class="diffchange diffchange-inline">location </ins>of the package--where to get it from.  The Repository Sources are maintained in a separate table.  The values in for Name, Repository, Version and Parms are specific to the type of repository, and how the installer will use them.  For archives, like .tar files, the installer will look up the URL from the Repository source, and assume the "Repository" field is a directory on that source, and the name of the file is "Name"[_"Version"]"Parms".  If Name is "myfile", Version is "2.0" and Parms is ".zip", it will try to download a file myfile_2.0.zip.  For Ubuntu archives, Name is the package name, Version is the Version number, and Parms is not used.  If you will be creating your own installer to handle a given repository type you have some flexibility in defining how these fields are used so that it is appropriate for the given type.  Add compatibility for the repository sources so the system knows what platforms this source can be used on.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Lastly you must specify the directories and files that will go into the package.  For each type of directory/file add a new directory.  You can add multiple directories of the same type, and make multiple directory types point to the same place.  The path is assumed to be the destination on the user's machine.  There are build modules that are specific to each repository source and will interpret the path.  Generally, on the Linux systems the path is considered relative to /usr while on Windows machines it is relative to \Program Files.  If you want different behavior for different operating systems or distros, just create more directories and specify that the files are only compatible with the given distro/os.  If the path starts with a /, it is considered absolute, otherwise relative.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Lastly you must specify the directories and files that will go into the package.  For each type of directory/file add a new directory.  You can add multiple directories of the same type, and make multiple directory types point to the same place.  The path is assumed to be the destination on the user's machine.  There are build modules that are specific to each repository source and will interpret the path.  Generally, on the Linux systems the path is considered relative to /usr while on Windows machines it is relative to \Program Files.  If you want different behavior for different operating systems or distros, just create more directories and specify that the files are only compatible with the given distro/os.  If the path starts with a /, it is considered absolute, otherwise relative.</div></td></tr>
</table>Phenigmahttp://wiki.linuxmce.org/index.php?title=Packages&diff=22093&oldid=prevMarie.o: Added note on the manufacturer field for the package definition.2010-01-14T07:36:03Z<p>Added note on the manufacturer field for the package definition.</p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">←Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 07:36, 14 January 2010</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 11:</td>
<td colspan="2" class="diff-lineno">Line 11:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The Package type is just for organizing packages.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The Package type is just for organizing packages.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">The Manufacturer should be Pluto IF the package should be compiled during a regular build-maindebs cycle. For all package definition, that just reference external deb files for dependency sake, this should be left empty.</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Next you indicate what platforms this package is compatible with.  Whenever you see a compatibility pair listing an operating system and distro it always works like this: If you select an operating system only, it will match every distribution platform for that platform.  If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match.  If you leave both of them at 'any', then it will match every platform.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Next you indicate what platforms this package is compatible with.  Whenever you see a compatibility pair listing an operating system and distro it always works like this: If you select an operating system only, it will match every distribution platform for that platform.  If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match.  If you leave both of them at 'any', then it will match every platform.</div></td></tr>
</table>Marie.ohttp://wiki.linuxmce.org/index.php?title=Packages&diff=7098&oldid=prevRwilson131: Added Screenshots2007-11-10T15:02:12Z<p>Added Screenshots</p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">←Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 15:02, 10 November 2007</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>The purpose of this page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  This also lists all the places where the software can be downloaded from.  ***Make Release*** is another program that will use the information on this page to automatically compile the software, and build archives, packages or other sources for download.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">[[Category:Admin Website]]</ins></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>A "package" is a software program, or some other collection of files.  The first check box indicates if this package contains source code, or other files.  If you specify that it contains source code, then that means the package must first be compiled to produce another package that has the files for the end-user.  .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code.  Other types of files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes.  If you use MakeRelease to do all the building, MakeRelease will first go through all the packages that are source code and attempt to build them all.  If the package you are editing is not source code, and source code is available, you should indicate on the next line what package contains the source code.  MakeRelease will attempt to compile the source code for a given package before outputting it, unless you specify the no build (-b) option.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">[[Category:Programmer's Guide]]</ins></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>The Package type is just for organizing packages.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>Next you indicate what platforms this package is compatible with.  Whenever you see a compatibility pair listing an operating system and distro it always works like this: If you select an operating system only, it will match every distribution platform for that platform.  If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match.  If you leave both of them at 'any', then it will match every platform.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">[[Image:AdvancedPackages.jpg|thumb|200px|Packages Advanced Admin Page]]</ins></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>Next, indicate what packages this one depends on--its dependencies.  The dependencies will always be installed first.  If a package is only required to build from source code, then that package should be a dependent of the source code only.  For example, our DCE Library requires MySql.  So the DCE library depends on MySql.  The MySql development libraries are required to build DCE from source code, so the DCE Library Source Code package depends on MySql development libraries.  They will only be installed then if the user wants to build from source.  If you add a dependent package and that dependent package is not compatible with the given platform, it will be ignored.  For example, the LinuxMCE Orbiter requires ALSA libraries when running on Linux.  So, the Orbiter package is marked as compatible with all operating systems.  It depends on ALSA, which is only compatible with Linux.  When the Orbiter is installed on Windows, it will ignore the ALSA dependency.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>Next specify the source of the package--where to get it from.  The Repository Sources are maintained in a separate table.  The values in for Name, Repository, Version and Parms are specific to the type of repository, and how the installer will use them.  For archives, like .tar files, the installer will look up the URL from the Repository source, and assume the "Repository" field is a directory on that source, and the name of the file is "Name"[_"Version"]"Parms".  If Name is "myfile", Version is "2.0" and Parms is ".zip", it will try to download a file myfile_2.0.zip.  For Ubuntu archives, Name is the package name, Version is the Version number, and Parms is not used.  If you will be creating your own installer to handle a given repository type you have some flexibility in defining how these fields are used so that it is appropriate for the given type.  Add compatibility for the repository sources so the system knows what platforms this source can be used on.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">'''This page is not for the average user, so do not make any changes on this page unless you are prepared for the problems it may cause.'''</ins></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>Lastly you must specify the directories and files that will go into the package.  For each type of directory/file add a new directory.  You can add multiple directories of the same type, and make multiple directory types point to the same place.  The path is assumed to be the destination on the user's machine.  There are build modules that are specific to each repository source and will interpret the path.  Generally, on the Linux systems the path is considered relative to /usr while on Windows machines it is relative to \Program Files.  If you want different behavior for different operating systems or distros, just create more directories and specify that the files are only compatible with the given distro/os.  If the path starts with a /, it is considered absolute, otherwise relative.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>When MakeRelease runs, it takes as a parameter 2 prefixes to find the files: source prefix, and non-source prefix.  When searching for the input files it will prepend the path with the source prefix if the type of directory is "Source Implementation", or with the non-source path for all other types.  If you check 'Flip Source' then this behavior is reversed.  If you type in a command in the text box, then that command will be executed from the input path before attempting to copy the file.  This allows for commands such as make, copy, etc.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The purpose of this page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  This also lists all the places where the software can be downloaded from.  ***Make Release*** is another program that will use the information on this page to automatically compile the software, and build archives, packages or other sources for download.</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>If the type of directory is Source Implementation, it will first do a search and replace on all the .cpp, .c and .h files replacing any occurancies of <=version=> with the actual version it is compiling.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><p></del>The compiled output directory contains files that need to be compiled, but should not be output in the package.  This directory is used only compiling.  For example, the source code package may contain entries in Compiled Directory for all the files it should build, which the non-source code package will later use.  Those files in the Compiled Directory will have the make command.  You could alternatively put the make command in the non-source package.  But in that case the command would get executed every time the package was built, whether build/compile was enabled or disabled.  So, in summary, if a non-source package needs a command to be run to create a file every time the package is built, put that command in the file's make command.  If the command should only be run when doing a clean build from source, put it in the Compiled Directory of the source package.<del class="diffchange diffchange-inline"></p></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>A "package" is a software program, or some other collection of files.  The first check box indicates if this package contains source code, or other files.  If you specify that it contains source code, then that means the package must first be compiled to produce another package that has the files for the end-user.  .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code.  Other types of files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes.  If you use MakeRelease to do all the building, MakeRelease will first go through all the packages that are source code and attempt to build them all.  If the package you are editing is not source code, and source code is available, you should indicate on the next line what package contains the source code.  MakeRelease will attempt to compile the source code for a given package before outputting it, unless you specify the no build (-b) option.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The Package type is just for organizing packages.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Next you indicate what platforms this package is compatible with.  Whenever you see a compatibility pair listing an operating system and distro it always works like this: If you select an operating system only, it will match every distribution platform for that platform.  If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match.  If you leave both of them at 'any', then it will match every platform.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Next, indicate what packages this one depends on--its dependencies.  The dependencies will always be installed first.  If a package is only required to build from source code, then that package should be a dependent of the source code only.  For example, our DCE Library requires MySql.  So the DCE library depends on MySql.  The MySql development libraries are required to build DCE from source code, so the DCE Library Source Code package depends on MySql development libraries.  They will only be installed then if the user wants to build from source.  If you add a dependent package and that dependent package is not compatible with the given platform, it will be ignored.  For example, the LinuxMCE Orbiter requires ALSA libraries when running on Linux.  So, the Orbiter package is marked as compatible with all operating systems.  It depends on ALSA, which is only compatible with Linux.  When the Orbiter is installed on Windows, it will ignore the ALSA dependency.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Next specify the source of the package--where to get it from.  The Repository Sources are maintained in a separate table.  The values in for Name, Repository, Version and Parms are specific to the type of repository, and how the installer will use them.  For archives, like .tar files, the installer will look up the URL from the Repository source, and assume the "Repository" field is a directory on that source, and the name of the file is "Name"[_"Version"]"Parms".  If Name is "myfile", Version is "2.0" and Parms is ".zip", it will try to download a file myfile_2.0.zip.  For Ubuntu archives, Name is the package name, Version is the Version number, and Parms is not used.  If you will be creating your own installer to handle a given repository type you have some flexibility in defining how these fields are used so that it is appropriate for the given type.  Add compatibility for the repository sources so the system knows what platforms this source can be used on.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Lastly you must specify the directories and files that will go into the package.  For each type of directory/file add a new directory.  You can add multiple directories of the same type, and make multiple directory types point to the same place.  The path is assumed to be the destination on the user's machine.  There are build modules that are specific to each repository source and will interpret the path.  Generally, on the Linux systems the path is considered relative to /usr while on Windows machines it is relative to \Program Files.  If you want different behavior for different operating systems or distros, just create more directories and specify that the files are only compatible with the given distro/os.  If the path starts with a /, it is considered absolute, otherwise relative.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>When MakeRelease runs, it takes as a parameter 2 prefixes to find the files: source prefix, and non-source prefix.  When searching for the input files it will prepend the path with the source prefix if the type of directory is "Source Implementation", or with the non-source path for all other types.  If you check 'Flip Source' then this behavior is reversed.  If you type in a command in the text box, then that command will be executed from the input path before attempting to copy the file.  This allows for commands such as make, copy, etc.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>If the type of directory is Source Implementation, it will first do a search and replace on all the .cpp, .c and .h files replacing any occurancies of <=version=> with the actual version it is compiling.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The compiled output directory contains files that need to be compiled, but should not be output in the package.  This directory is used only compiling.  For example, the source code package may contain entries in Compiled Directory for all the files it should build, which the non-source code package will later use.  Those files in the Compiled Directory will have the make command.  You could alternatively put the make command in the non-source package.  But in that case the command would get executed every time the package was built, whether build/compile was enabled or disabled.  So, in summary, if a non-source package needs a command to be run to create a file every time the package is built, put that command in the file's make command.  If the command should only be run when doing a clean build from source, put it in the Compiled Directory of the source package.</div></td></tr>
</table>Rwilson131http://wiki.linuxmce.org/index.php?title=Packages&diff=3572&oldid=prevJuliet at 09:22, 19 March 20072007-03-19T09:22:42Z<p></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">←Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 09:22, 19 March 2007</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><table width="100%"> <tr><td bgcolor="#FFCFCF">This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007.  In general any information should apply to LinuxMCE.  However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.</td></tr> </table></del><p>The purpose of this page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  This also lists all the places where the software can be downloaded from.  ***Make Release*** is another program that will use the information on this page to automatically compile the software, and build archives, packages or other sources for download.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>The purpose of this page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  This also lists all the places where the software can be downloaded from.  ***Make Release*** is another program that will use the information on this page to automatically compile the software, and build archives, packages or other sources for download.</p></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>A "package" is a software program, or some other collection of files.  The first check box indicates if this package contains source code, or other files.  If you specify that it contains source code, then that means the package must first be compiled to produce another package that has the files for the end-user.  .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code.  Other types of files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes.  If you use MakeRelease to do all the building, MakeRelease will first go through all the packages that are source code and attempt to build them all.  If the package you are editing is not source code, and source code is available, you should indicate on the next line what package contains the source code.  MakeRelease will attempt to compile the source code for a given package before outputting it, unless you specify the no build (-b) option.</p></div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>A "package" is a software program, or some other collection of files.  The first check box indicates if this package contains source code, or other files.  If you specify that it contains source code, then that means the package must first be compiled to produce another package that has the files for the end-user.  .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code.  Other types of files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes.  If you use MakeRelease to do all the building, MakeRelease will first go through all the packages that are source code and attempt to build them all.  If the package you are editing is not source code, and source code is available, you should indicate on the next line what package contains the source code.  MakeRelease will attempt to compile the source code for a given package before outputting it, unless you specify the no build (-b) option.</p></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>The Package type is just for organizing packages.</p></div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>The Package type is just for organizing packages.</p></div></td></tr>
</table>Juliethttp://wiki.linuxmce.org/index.php?title=Packages&diff=3196&oldid=prevJuliet at 12:49, 15 March 20072007-03-15T12:49:14Z<p></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">←Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 12:49, 15 March 2007</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><table width="100%"> <tr><td bgcolor="#FFCFCF">This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007.  In general any information should apply to LinuxMCE.  However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.</td></tr> </table><p>The purpose of this page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  This also lists all the places where the software can be downloaded from.  ***Make Release*** is another program that will use the information on this page to automatically compile the software, and build archives, packages or other sources for download.</p></div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><table width="100%"> <tr><td bgcolor="#FFCFCF">This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007.  In general any information should apply to LinuxMCE.  However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.</td></tr> </table><p>The purpose of this page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program.  This also lists all the places where the software can be downloaded from.  ***Make Release*** is another program that will use the information on this page to automatically compile the software, and build archives, packages or other sources for download.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><p>A "package" is a software program, or some other collection of files.  The first check box indicates if this package contains source code, or other files.  If you specify that it contains source code, then that means the package must first be compiled to produce another package that has the files for the end-user.  .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code.  Other types of files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes.  If you use MakeRelease to do all the building, MakeRelease will first go through all the packages that are source code and attempt to build them all.  If the package you are editing is not source code, and source code is available, you should indicate on the next line what package contains the source code.  MakeRelease will attempt to compile the source code for a given package before <del class="diffchange diffchange-inline">outputing </del>it, unless you specify the no build (-b) option.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>A "package" is a software program, or some other collection of files.  The first check box indicates if this package contains source code, or other files.  If you specify that it contains source code, then that means the package must first be compiled to produce another package that has the files for the end-user.  .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code.  Other types of files are more ambiguous, such as .php.  While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes.  If you use MakeRelease to do all the building, MakeRelease will first go through all the packages that are source code and attempt to build them all.  If the package you are editing is not source code, and source code is available, you should indicate on the next line what package contains the source code.  MakeRelease will attempt to compile the source code for a given package before <ins class="diffchange diffchange-inline">outputting </ins>it, unless you specify the no build (-b) option.</p></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>The Package type is just for organizing packages.</p></div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>The Package type is just for organizing packages.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><p>Next you indicate what platforms <del class="diffchange diffchange-inline">the </del>this package is compatible with.  Whenever you see a compatibility pair listing an operating system and distro it always works like this: If you select an operating system only, it will match every distribution platform for that platform.  If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match.  If you leave both of them at 'any', then it will match every platform.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>Next you indicate what platforms this package is compatible with.  Whenever you see a compatibility pair listing an operating system and distro it always works like this: If you select an operating system only, it will match every distribution platform for that platform.  If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match.  If you leave both of them at 'any', then it will match every platform.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><p>Next, indicate what packages this one depends on--its dependencies.  The dependencies will always be installed first.  If a package is only required to build from source code, then that package should be a dependent of the source code only.  For example, our DCE Library requires MySql.  So the DCE library depends on MySql.  The MySql development libraries are required to build DCE from source code, so the DCE Library Source Code package depends on MySql development libraries.  They will only be installed then if the user wants to build from source.  If you add a dependent package and that dependent package is not compatible with the given platform, it will be ignored.  For example, the <del class="diffchange diffchange-inline">Pluto </del>Orbiter requires ALSA libraries when running on Linux.  So, the Orbiter package is marked as compatible with all operating systems.  It depends on ALSA, which is only compatible with Linux.  When the Orbiter is installed on Windows, it will ignore the ALSA dependency.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>Next, indicate what packages this one depends on--its dependencies.  The dependencies will always be installed first.  If a package is only required to build from source code, then that package should be a dependent of the source code only.  For example, our DCE Library requires MySql.  So the DCE library depends on MySql.  The MySql development libraries are required to build DCE from source code, so the DCE Library Source Code package depends on MySql development libraries.  They will only be installed then if the user wants to build from source.  If you add a dependent package and that dependent package is not compatible with the given platform, it will be ignored.  For example, the <ins class="diffchange diffchange-inline">LinuxMCE </ins>Orbiter requires ALSA libraries when running on Linux.  So, the Orbiter package is marked as compatible with all operating systems.  It depends on ALSA, which is only compatible with Linux.  When the Orbiter is installed on Windows, it will ignore the ALSA dependency.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><p>Next specify the source of the package--where to get it from.  The Repository Sources are maintained in a separate table.  The values in for Name, Repository, Version and Parms are specific to the type of repository, and how the installer will use them.  For archives, like .tar files, the installer will look up the URL from the <del class="diffchange diffchange-inline">Respository </del>source, and assume the "Repository" field is a directory on that source, and the name of the file is "Name"[_"Version"]"Parms".  If Name is "myfile", Version is "2.0" and Parms is ".zip", it will try to download a file myfile_2.0.zip.  For <del class="diffchange diffchange-inline">Debian </del>archives, Name is the package name, Version is the Version number, and Parms is not used.  If you will be creating your own installer to handle a given repository type you have some flexibility in defining how these fields are used so that it is appropriate for the given type.  Add compatibility for the repository sources so the system knows what platforms this source can be used on.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>Next specify the source of the package--where to get it from.  The Repository Sources are maintained in a separate table.  The values in for Name, Repository, Version and Parms are specific to the type of repository, and how the installer will use them.  For archives, like .tar files, the installer will look up the URL from the <ins class="diffchange diffchange-inline">Repository </ins>source, and assume the "Repository" field is a directory on that source, and the name of the file is "Name"[_"Version"]"Parms".  If Name is "myfile", Version is "2.0" and Parms is ".zip", it will try to download a file myfile_2.0.zip.  For <ins class="diffchange diffchange-inline">Ubuntu </ins>archives, Name is the package name, Version is the Version number, and Parms is not used.  If you will be creating your own installer to handle a given repository type you have some flexibility in defining how these fields are used so that it is appropriate for the given type.  Add compatibility for the repository sources so the system knows what platforms this source can be used on.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><p>Lastly you must specify the directories and files that will go into the package.  For each type of directory/file add a new directory.  You can multiple directories of the same type, and make multiple directory types point to the same place.  The path is assumed to be the destination on the user's machine.  There are build modules that are specific to each repository source and will interpret the path.  Generally, on the Linux systems the path is considered relative to /usr while on Windows machines it is relative to \Program Files.  If you want different behavior for different operating systems or distros, just create more directories and specify that the files are only compatible with the given distro/os.  If the path starts with a /, it is considered absolute, otherwise relative.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>Lastly you must specify the directories and files that will go into the package.  For each type of directory/file add a new directory.  You can <ins class="diffchange diffchange-inline">add </ins>multiple directories of the same type, and make multiple directory types point to the same place.  The path is assumed to be the destination on the user's machine.  There are build modules that are specific to each repository source and will interpret the path.  Generally, on the Linux systems the path is considered relative to /usr while on Windows machines it is relative to \Program Files.  If you want different behavior for different operating systems or distros, just create more directories and specify that the files are only compatible with the given distro/os.  If the path starts with a /, it is considered absolute, otherwise relative.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><p>When MakeRelease runs, it takes as a parameter 2 prefixes to find the files: source prefix, and non-source prefix.  When searching for the input files it will prepend the path with the source prefix if the type of directory is "Source Implementation", or with the non-source path for all other types.  If you check 'Flip Source' then this behavior is reversed.  If you type in a command in the text box, then that command will be executed from the input path before <del class="diffchange diffchange-inline">attemping </del>to copy the file.  This allows for commands such as make, copy, etc.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>When MakeRelease runs, it takes as a parameter 2 prefixes to find the files: source prefix, and non-source prefix.  When searching for the input files it will prepend the path with the source prefix if the type of directory is "Source Implementation", or with the non-source path for all other types.  If you check 'Flip Source' then this behavior is reversed.  If you type in a command in the text box, then that command will be executed from the input path before <ins class="diffchange diffchange-inline">attempting </ins>to copy the file.  This allows for commands such as make, copy, etc.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><p>If the type of directory is Source Implementation, it will first do a search and replace on all the .cpp, .c and .h files replacing any <del class="diffchange diffchange-inline">occurances </del>of <=version=> with the actual version it is compiling.</p></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><p>If the type of directory is Source Implementation, it will first do a search and replace on all the .cpp, .c and .h files replacing any <ins class="diffchange diffchange-inline">occurancies </ins>of <=version=> with the actual version it is compiling.</p></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>The compiled output directory contains files that need to be compiled, but should not be output in the package.  This directory is used only compiling.  For example, the source code package may contain entries in Compiled Directory for all the files it should build, which the non-source code package will later use.  Those files in the Compiled Directory will have the make command.  You could alternatively put the make command in the non-source package.  But in that case the command would get executed every time the package was built, whether build/compile was enabled or disabled.  So, in summary, if a non-source package needs a command to be run to create a file every time the package is built, put that command in the file's make command.  If the command should only be run when doing a clean build from source, put it in the Compiled Directory of the source package.</p></div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div><p>The compiled output directory contains files that need to be compiled, but should not be output in the package.  This directory is used only compiling.  For example, the source code package may contain entries in Compiled Directory for all the files it should build, which the non-source code package will later use.  Those files in the Compiled Directory will have the make command.  You could alternatively put the make command in the non-source package.  But in that case the command would get executed every time the package was built, whether build/compile was enabled or disabled.  So, in summary, if a non-source package needs a command to be run to create a file every time the package is built, put that command in the file's make command.  If the command should only be run when doing a clean build from source, put it in the Compiled Directory of the source package.</p></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;"></del></div></td><td colspan="2"> </td></tr>
</table>Juliethttp://wiki.linuxmce.org/index.php?title=Packages&diff=1898&oldid=prevWikiadmin: Imported document2006-06-05T16:43:54Z<p>Imported document</p>
<p><b>New page</b></p><div><table width="100%"> <tr><td bgcolor="#FFCFCF">This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007. In general any information should apply to LinuxMCE. However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.</td></tr> </table><p>The purpose of this page is to list all the software and other files that are needed so that they can be downloaded automatically using the ***ConfirmDependencies*** program. This also lists all the places where the software can be downloaded from. ***Make Release*** is another program that will use the information on this page to automatically compile the software, and build archives, packages or other sources for download.</p><br />
<p>A "package" is a software program, or some other collection of files. The first check box indicates if this package contains source code, or other files. If you specify that it contains source code, then that means the package must first be compiled to produce another package that has the files for the end-user. .cpp, .h files and related, Makefile, .vcproj, etc., are examples of source code. Other types of files are more ambiguous, such as .php. While they are considered source code, they do not normally require compiling to be used and are generally not considered 'source code' for these purposes. If you use MakeRelease to do all the building, MakeRelease will first go through all the packages that are source code and attempt to build them all. If the package you are editing is not source code, and source code is available, you should indicate on the next line what package contains the source code. MakeRelease will attempt to compile the source code for a given package before outputing it, unless you specify the no build (-b) option.</p><br />
<p>The Package type is just for organizing packages.</p><br />
<p>Next you indicate what platforms the this package is compatible with. Whenever you see a compatibility pair listing an operating system and distro it always works like this: If you select an operating system only, it will match every distribution platform for that platform. If you select a distribution, regardless of the operating system you chose, only that particular distribution is a match. If you leave both of them at 'any', then it will match every platform.</p><br />
<p>Next, indicate what packages this one depends on--its dependencies. The dependencies will always be installed first. If a package is only required to build from source code, then that package should be a dependent of the source code only. For example, our DCE Library requires MySql. So the DCE library depends on MySql. The MySql development libraries are required to build DCE from source code, so the DCE Library Source Code package depends on MySql development libraries. They will only be installed then if the user wants to build from source. If you add a dependent package and that dependent package is not compatible with the given platform, it will be ignored. For example, the Pluto Orbiter requires ALSA libraries when running on Linux. So, the Orbiter package is marked as compatible with all operating systems. It depends on ALSA, which is only compatible with Linux. When the Orbiter is installed on Windows, it will ignore the ALSA dependency.</p><br />
<p>Next specify the source of the package--where to get it from. The Repository Sources are maintained in a separate table. The values in for Name, Repository, Version and Parms are specific to the type of repository, and how the installer will use them. For archives, like .tar files, the installer will look up the URL from the Respository source, and assume the "Repository" field is a directory on that source, and the name of the file is "Name"[_"Version"]"Parms". If Name is "myfile", Version is "2.0" and Parms is ".zip", it will try to download a file myfile_2.0.zip. For Debian archives, Name is the package name, Version is the Version number, and Parms is not used. If you will be creating your own installer to handle a given repository type you have some flexibility in defining how these fields are used so that it is appropriate for the given type. Add compatibility for the repository sources so the system knows what platforms this source can be used on.</p><br />
<p>Lastly you must specify the directories and files that will go into the package. For each type of directory/file add a new directory. You can multiple directories of the same type, and make multiple directory types point to the same place. The path is assumed to be the destination on the user's machine. There are build modules that are specific to each repository source and will interpret the path. Generally, on the Linux systems the path is considered relative to /usr while on Windows machines it is relative to \Program Files. If you want different behavior for different operating systems or distros, just create more directories and specify that the files are only compatible with the given distro/os. If the path starts with a /, it is considered absolute, otherwise relative.</p><br />
<p>When MakeRelease runs, it takes as a parameter 2 prefixes to find the files: source prefix, and non-source prefix. When searching for the input files it will prepend the path with the source prefix if the type of directory is "Source Implementation", or with the non-source path for all other types. If you check 'Flip Source' then this behavior is reversed. If you type in a command in the text box, then that command will be executed from the input path before attemping to copy the file. This allows for commands such as make, copy, etc.</p><br />
<p>If the type of directory is Source Implementation, it will first do a search and replace on all the .cpp, .c and .h files replacing any occurances of <=version=> with the actual version it is compiling.</p><br />
<p>The compiled output directory contains files that need to be compiled, but should not be output in the package. This directory is used only compiling. For example, the source code package may contain entries in Compiled Directory for all the files it should build, which the non-source code package will later use. Those files in the Compiled Directory will have the make command. You could alternatively put the make command in the non-source package. But in that case the command would get executed every time the package was built, whether build/compile was enabled or disabled. So, in summary, if a non-source package needs a command to be run to create a file every time the package is built, put that command in the file's make command. If the command should only be run when doing a clean build from source, put it in the Compiled Directory of the source package.</p><br />
</div>Wikiadmin