Difference between revisions of "Documentation/Nightly/FAQ/Extensions"
m |
|||
Line 17: | Line 17: | ||
Discussion: http://massmail.spl.harvard.edu/public-archives/slicer-users/2013/006703.html | Discussion: http://massmail.spl.harvard.edu/public-archives/slicer-users/2013/006703.html | ||
+ | |||
+ | == Should I install the nightly version to access to last extension updates ? == | ||
+ | |||
+ | If the extension developers contributed updates for the current stable release, you don't have to install the nightly version of Slicer. You can simply update the extension. Consider reading [here]. | ||
+ | |||
+ | On the other hand, if the extension developers stopped to maintain the version of their extension built against the stable release (so that we can use the latest feature that will be in the next Slicer release), downloading the nightly is the only way to get the latest version of the extension. | ||
+ | |||
+ | == How to update an already installed extension? == | ||
+ | |||
+ | Assuming updates extensions are available for your version of Slicer, it is currently not possible without uninstalling the extension and re-installing it. | ||
+ | |||
+ | We are currently developing a mechanism allowing to either manually update or automatically suggest update. In the process of finalizing, reviewing and testing, the corresponding feature will be available in Slicer {{documentation/nextversion}}. | ||
+ | |||
+ | For more details, see [1][2] and [3] | ||
+ | |||
+ | [1] http://na-mic.org/Mantis/view.php?id=2089 | ||
+ | |||
+ | [2] https://github.com/mwoehlke-kitware/Slicer/tree/REBASE-2089-update-extensions | ||
+ | |||
+ | [3] http://wiki.slicer.org/slicerWiki/index.php/Documentation/Labs/ExtensionsFrameworkRoadmap | ||
== How to manually install an extension ? == | == How to manually install an extension ? == |
Revision as of 01:33, 18 June 2014
Home < Documentation < Nightly < FAQ < Extensions
For the latest Slicer documentation, visit the read-the-docs. |
Contents
- 1 Extensions
- 1.1 What is an extension ?
- 1.2 What is the extensions catalog ?
- 1.3 Why there are no windows 32-bit extensions available ?
- 1.4 Should I install the nightly version to access to last extension updates ?
- 1.5 How to update an already installed extension?
- 1.6 How to manually install an extension ?
- 1.7 How do I associate a remote with my local extension git source directory ?
- 1.8 Which remote name is expected for extension git checkout ?
Extensions
What is an extension ?
![](/w/img_auth.php/thumb/a/aa/Extension_Manager.png/300px-Extension_Manager.png)
An extension could be seen as a delivery package bundling together one or more Slicer modules. After installing an extension, the associated modules will be presented to the user as built-in ones
The Slicer community maintains a website referred to as the Slicer Extensions Catalog to support finding, downloading and installing of extensions. Access to this website is integral to Slicer and facilitated by the Extensions Manager functionality built into the distributed program.
The Catalog classifies extensions into three levels of compliance:
- Category 1: Fully compliant Slicer Extensions: Slicer license, open source, maintained.
- Category 2: Open source, contact exists.
- Category 3: All other extensions (work in progress, beta, closed source etc).
To publish extensions, developers should consider reading the following pages:
What is the extensions catalog ?
The extensions catalog provides Slicer users with a convenient way to access the extensions previously uploaded on the extensions server:
- from within Slicer with the help of the extensions manager
- from the web: http://slicer.kitware.com/midas3/slicerappstore
Why there are no windows 32-bit extensions available ?
- Win 32 has a very limited amount of memory available to an application.
- Many registration and segmentation algorithms fail on that platform because they run out of memory, when used with state of large data.
- Some of these failures are just that, some can crash slicer. Even though the "real" failure is caused by overextending the capabilities of the hardware (in a way the users fault), it appears to the user that Slicer does not work.
- If you search the archives of slicer-users there are several such complaints until we started to discourage people to use 32 bit.
Discussion: http://massmail.spl.harvard.edu/public-archives/slicer-users/2013/006703.html
Should I install the nightly version to access to last extension updates ?
If the extension developers contributed updates for the current stable release, you don't have to install the nightly version of Slicer. You can simply update the extension. Consider reading [here].
On the other hand, if the extension developers stopped to maintain the version of their extension built against the stable release (so that we can use the latest feature that will be in the next Slicer release), downloading the nightly is the only way to get the latest version of the extension.
How to update an already installed extension?
Assuming updates extensions are available for your version of Slicer, it is currently not possible without uninstalling the extension and re-installing it.
We are currently developing a mechanism allowing to either manually update or automatically suggest update. In the process of finalizing, reviewing and testing, the corresponding feature will be available in Slicer 4.12.
For more details, see [1][2] and [3]
[1] http://na-mic.org/Mantis/view.php?id=2089
[2] https://github.com/mwoehlke-kitware/Slicer/tree/REBASE-2089-update-extensions
[3] http://wiki.slicer.org/slicerWiki/index.php/Documentation/Labs/ExtensionsFrameworkRoadmap
How to manually install an extension ?
1) Get revision associated with your install or built Slicer. (Menu -> Help -> About)
2) Download extension matching your Slicer revision. Select operating system, bitness and enter revision on http://slicer.kitware.com/midas3/slicerappstore
3) Extract the archive (zip or tar.gz) in a folder. You should then have a folder like:
/path/to/<slicer_revision>-<os>-<bitness>-<extension_name>-<extension_scm><extension_revision>-YYYY-MM-DD
containing folder like:
lib/Slicer-X.Y/cli-modules lib/Slicer-X.Y/qt-loadable-modules lib/Slicer-X.Y/qt-scripted-modules
For more details: Documentation/Nightly/Developers/DirectoryStructure
4) In the Module settings (Menu -> Edit -> Settings), add the path ending with lib/Slicer-X.Y/{cli|qt-scripted|qt-loadable}-modules
How do I associate a remote with my local extension git source directory ?
1) Start a terminal (or Git Bash on Windows)
2) Get the associated SSH remote url. Need help ?
3) Associate the remote URL with your local git source tree
git remote add origin git://github.com/<username>/MyExtension
Which remote name is expected for extension git checkout ?
When packaging an extension and generating the associated description file, the system will look for a remote named origin
.
In case you get the error reported below, you will have to either rename or add a remote. Need help ?
CMake Warning at /path/to/Slicer/CMake/FindGit.cmake:144 (message): No remote origin set for git repository: /path/to/MyExtension Call Stack (most recent call first): /path/to/Slicer/CMake/SlicerMacroExtractRepositoryInfo.cmake:99 (GIT_WC_INFO) /path/to/Slicer/CMake/SlicerExtensionCPack.cmake:55 (SlicerMacroExtractRepositoryInfo) CMakeLists.txt:25 (include)