mirror of https://github.com/KLayout/klayout.git
Updated doc.
This commit is contained in:
parent
c99dbebf0a
commit
e8a29ac612
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
<p>
|
||||
The key component for public package deployment is the "Salt.Mine" package repository
|
||||
service (<tt>sami.klayout.org</tt>). It is a web service that maintains a package list. It
|
||||
service. This is a web service that maintains a package index. It
|
||||
does not host the packages, but stores links to the actual hosting site. In order
|
||||
to author a package, you need to upload the package to one of the supported host
|
||||
sites and register your package on the Salt.Mine page. Registration is a simple
|
||||
|
|
@ -98,8 +98,8 @@
|
|||
</p>
|
||||
|
||||
<p>
|
||||
KLayout offers to initialize new packages from a template. You can modify the template
|
||||
package later.
|
||||
KLayout offers initialization of new packages from templates. You can modify that package
|
||||
according to your requirements afterwards.
|
||||
To create a package from a template, open the package manager using "Tools/Manage Packages",
|
||||
go to the "Current Packages" tab and push the "Create (Edit) Package" button.
|
||||
Chose a template from the list that opens and enter a package name (with prefix, if
|
||||
|
|
@ -112,7 +112,7 @@
|
|||
right details panel. Please specify at least some author information, a license
|
||||
model and a version. If the package needs other packages, the dependencies can be
|
||||
listed in the "Depends on" table. Those packages will be automatically installed
|
||||
together with the new package. The showcase image can be a screenshot that gives
|
||||
together with the new package. The showcase image can be a screen shot that gives
|
||||
some idea what the package will do.
|
||||
The package details are kept in a file called "grain.xml" inside the package
|
||||
folder. You can also edit this file manually. The "grain.xml" is the basic description
|
||||
|
|
@ -134,73 +134,25 @@
|
|||
a file server. KLayout talks WebDAV, so the web server needs to offer WebDAV
|
||||
access. A subversion (SVN) server provides WebDAV by default, so this is a good
|
||||
choice. For public open source deployment, only certain providers are supported.
|
||||
There is separate documentation covering this topic.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
After a package has been made available for download, it needs to be entered
|
||||
in the dictionary. For local deployment, the dictionary can be a file hosted
|
||||
on a web server or on the file system. The dictionary's location must be
|
||||
specified by the <tt>KLAYOUT_SALT_MINE</tt> environment variable in form of
|
||||
a URL. The basic format of this file is XML with this structure:
|
||||
</p>
|
||||
|
||||
<pre><salt-mine>
|
||||
<salt-grain>
|
||||
<name>name</name>
|
||||
<version>Version</version>
|
||||
<title>Title of the package</title>
|
||||
<doc>A brief description</doc>
|
||||
<doc_url>Documentation URL</doc_url>
|
||||
<url>Download URL</url>
|
||||
<license>License model</license>
|
||||
<icon>Icon image: base64-encoded, 64x64 max, PNG preferred</icon>
|
||||
</salt-grain>
|
||||
...
|
||||
</salt-mine>
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
For public deployment, the "Salt.Mine" service can be used to register and
|
||||
list new packages in the repository dictionary.
|
||||
</p>
|
||||
|
||||
<h2>The DNA</h2>
|
||||
|
||||
<p>
|
||||
Technically, packages are folders stored below the "salt" folder within KLayout's home
|
||||
path. Prefixed packages are kept in sub-folders named after the prefix. Each package
|
||||
directory contains a description file called "grain.xml" and the files that make up the
|
||||
package. For Ruby macros, for example, the package folder will contain a "macros"
|
||||
sub-folder. Basically, packages do not require to be of a specific kind - they can
|
||||
provide technology information, DRC scripts and macros in the same package. In this
|
||||
example, the will be a "tech", "drc" and "macros" sub-folder with the corresponding
|
||||
files. KLayout will scan the package folders for useful files and load them automatically.
|
||||
in the package index. For local deployment, the index can be a file hosted
|
||||
on a web server or on the file system. The package index location needs to be
|
||||
specified by the <tt>KLAYOUT_SALT_MINE</tt> environment variable which contains the
|
||||
download URL of the package index file.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Packages are published on the Salt.Mine server. This is a web service that delivers a
|
||||
dictionary of packages with some meta data such as current version, the icon
|
||||
and a brief description. KLayout uses this list to inform users of packages available
|
||||
for installation and available updates.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
When the package manager is opened, KLayout will download this list from
|
||||
<tt>http://sami.klayout.org/repository.xml</tt>. You can set the <tt>KLAYOUT_SALT_MINE</tt>
|
||||
environment variable to a different URL which makes KLayout use another dictionary
|
||||
service, i.e. one inside your own organisation. This service can be any HTTP server
|
||||
that delivers a package list in the same format than the Salt.Mine package service.
|
||||
The URL can also be a "file:" scheme URL. In this case, KLayout will download the
|
||||
list from the given file location.
|
||||
For public deployment, the <a href="http://sami.klayout.org">Salt.Mine Service</a> is used to register
|
||||
new packages in the package index. By default, KLayout loads the package index from that service, so
|
||||
once your package is registered there, everyone using KLayout will see it.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
When installing a package, KLayout will simply download the files from the URL given
|
||||
in the package list. KLayout employs the WebDAV protocol to download the files.
|
||||
This protocol is spoken by Subversion and GitHub with the subversion bridge. The
|
||||
latter requires a simple translation of the original Git URL's to obtain the
|
||||
subversion equivalent.
|
||||
There is separate documentation provided for details about the development and deployment
|
||||
process.
|
||||
</p>
|
||||
|
||||
</doc>
|
||||
|
|
|
|||
Loading…
Reference in New Issue