I know that cmake has some built-in commands including tar. These would be
cross platform: https://cmake.org/cmake/help/v3.2/manual/cmake.1.html

I use the tar command within cmake to download and unzip yaehmop on all
platforms.

The problem, though, is that it looks like you may have to add cmake as a
runtime dependency with this setup, and I know you may not want to do
that...

Patrick

On Wednesday, November 16, 2016, Geoffrey Hutchison <
geoff.hutchi...@gmail.com> wrote:

> Hi Marcus,
>
> We have considerable progress on an enhanced plugin system for Avo2. This
> would potentially include the input generators and format scripts as well.
>
> Here's the question for debate. I have Ethan starting to work on the
> plugin manager. More details are below for those interested.
>
> *Option 1:* He can either make a call to GitHub API to get a zip of the
> release:
> https://developer.github.com/v3/repos/releases/#get-the-latest-release
>
> Now he needs to decompress everything recursively into a user directory.
> This needs code (e.g., LibArchive) as another dependency.
> (Maybe Kitware already has code that handles tars or zips cross-platform?)
>
> *Option 2:* He writes code to recursively download all the files in a
> repository directory using the GitHub API.
>
> *Option 3:* We add a dependency on LibGit2
>
> Thoughts? Should we just add LibArchive as a third party dependency?
> -Geoff
>
>
> More Details:
> People will be able to open up a "Plugin Manager" feature in Avogadro and
> find new types of scripts and/or updates to their installed scripts. Each
> plugin would then live in its own repository, and we can use GitHub API (or
> other web API) to poll for releases.
>
> Plugin Repository
> (example https://github.com/paulboone/avogadro-plugin-
> examples/tree/scikit-nano/scikit-nano)
>  - plugin.json - metadata about the plugin, including user description and
> list of command files
>  - requirements.txt - required packages (e.g., numpy for python)
> .. possibly multiple commands
>
> This makes it fairly easy to have a plugin that uses a larger Python
> package (e.g., cclib, ASE, RDKit, etc.) and offer multiple commands.
>
> It also means plugin authors have freedom to package extra files and dirs
> in whatever layout they want. But we need to download a whole subdirectory.
>
>
>
------------------------------------------------------------------------------
_______________________________________________
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

Reply via email to