diff --git a/.github/workflows/installer.yaml b/.github/workflows/installer.yaml new file mode 100644 index 0000000..3ceb8c2 --- /dev/null +++ b/.github/workflows/installer.yaml @@ -0,0 +1,45 @@ +name: Make single-file installers + +on: + workflow_dispatch: + +defaults: + run: + shell: bash -leo pipefail {0} + +jobs: + test: + name: Building single file installer on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [macos-14, macos-12, ubuntu-latest, windows-latest] + + steps: + - name: Checkout Code + uses: actions/checkout@v4 + + - name: Install constructor environment with Micromamba + uses: mamba-org/setup-micromamba@v1 + with: + environment-name: installer + create-args: >- + python=3.10 + jinja2 + constructor + init-shell: bash + + - name: Create installer + run: constructor . + + - name: Upload openfe forge to release + uses: svenstaro/upload-release-action@v2 + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: mda_workshop-jun24-ws-* + tag: ${{ github.ref }} + overwrite: true + file_glob: true + prerelease: true + tag: 1.0 diff --git a/LICENSE.md b/LICENSE.md index 454c873..d5ad8bc 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -410,7 +410,7 @@ Section 8 -- Interpretation. Creative Commons is not a party to its public licenses. Notwithstanding, Creative Commons may elect to apply one of its public licenses to material it publishes and in those instances -will be considered the “Licensor.” The text of the Creative Commons +will be considered the "Licensor." The text of the Creative Commons public licenses is dedicated to the public domain under the CC0 Public Domain Dedication. Except for the limited purpose of indicating that material is shared under a Creative Commons public license or as diff --git a/construct.yaml b/construct.yaml new file mode 100644 index 0000000..721eec0 --- /dev/null +++ b/construct.yaml @@ -0,0 +1,56 @@ +{% set version = os.environ.get("MINIFORGE_VERSION", "24.3.0-0") %} +{% set conda_libmamba_solver_version = "24.1.0"%} +{% set mamba_version = "1.5.8"%} + +name: mda_workshop +version: jun24-ws +company: MDAnalysis + +channels: + - conda-forge + +write_condarc: True +# keep pkgs for space-saving implications for hardlinks when create new environments +# and keep the same with Miniconda +keep_pkgs: True +license_file: LICENSE.md + +# During the interactive installation, these variables are checked. +# During batch installation, conda is never initialized +initialize_conda: True +initialize_by_default: False + +user_requested_specs: + - python 3.10.* + - pip + - conda >={{ version.split("-")[0] }} + # Omit conda-libmamba-solver so that conda is free to remove it later + - mamba >={{ mamba_version }} + - miniforge_console_shortcut 1.* # [win] + +specs: + - python 3.10.* + - conda {{ version.split("-")[0] }} + - conda-libmamba-solver {{ conda_libmamba_solver_version }} + - mamba {{ mamba_version }} + + - pip + - miniforge_console_shortcut 1.* # [win] + + - MDAnalysis + - MDAnalysisTests + - MDAnalysisData + - cookiecutter + - nglview==3.0.3 + - notebook<7 + - jupyter_contrib_nbextensions + - importlib-metadata + - rdkit + # For sphinx + - mdanalysis-sphinx-theme >=1.0.1 + # For prsentations + - rise + # testing + - pytest + - nbval + - ipywidgets==7.6.0