Skip to content

Commit

Permalink
Merge branch 'main' of github.com:datalad/datalad-gooey into next-con…
Browse files Browse the repository at this point in the history
…straints
  • Loading branch information
adswa committed Jan 2, 2024
2 parents a4078b9 + efde469 commit 0a9dbaf
Show file tree
Hide file tree
Showing 10 changed files with 96 additions and 38 deletions.
10 changes: 10 additions & 0 deletions .github/workflows/build_windows_installer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,13 @@ jobs:
asset_path: tools\installer_building\datalad-gooey-installer-amd64.exe
asset_name: datalad-gooey-${{ env.build_id }}-installer-amd64.exe
asset_content_type: application/vnd.microsoft.portable-executable

- name: Upload gooey-only installer artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ env.upload_url }}
asset_path: tools\installer_building\datalad-gooey-installer-gooey-only-amd64.exe
asset_name: datalad-gooey-${{ env.build_id }}-installer-gooey-only-amd64.exe
asset_content_type: application/vnd.microsoft.portable-executable
2 changes: 1 addition & 1 deletion .github/workflows/update-contributors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
uses: actions/checkout@v2

- name: Tributors Update
uses: con/tributors@0.0.21
uses: con/tributors@0.1.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
Expand Down
4 changes: 0 additions & 4 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@
'sphinx.ext.autodoc',
'sphinx.ext.autosummary',
'sphinx.ext.doctest',
'sphinx.ext.intersphinx',
'sphinx.ext.todo',
'sphinx.ext.coverage',
'sphinx.ext.mathjax',
Expand Down Expand Up @@ -115,9 +114,6 @@
# If true, `todo` and `todoList` produce output, else they produce nothing.
todo_include_todos = True

# Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = {'https://docs.python.org/': None}

# -- Options for HTML output ----------------------------------------------

# The theme to use for HTML and HTML Help pages. See the documentation for
Expand Down
19 changes: 14 additions & 5 deletions docs/source/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,20 @@ use a dedicated `virtualenv`_:
Installing on Windows
---------------------

Download and run the `installer`_. Follow the prompts to complete the setup.
The current version of ``datalad-gooey`` comes with two installers, a full installer
and a gooey-only installer. The full
installer will install ``datalad-gooey`` as well as ``git`` and ``git-annex``.
it requires admin privileges to execute successfully. The gooey-only installer
will only install ``datalad-gooey``. It can be executed as admin user or as
non-admin user. If you use the gooey-only installer, ``git`` and ``git-annex`` have
to be provided by other means, e.g. an administrator installs them.

The installer comes with ``git`` and ``git-annex`` installers. If you have
``git`` and ``git-annex`` already installed, just quit the ``git`` and
``git-annex`` installers when they are executed.
Note: if the full installer is executed and the system has already a newer
version of ``git`` or ``git-annex`` installed, the ``git`` or
``git-annex``-installer can be canceled and installation of the remaining
components will continue.

The installers can be downloaded `here`_.


Installing on Linux
Expand Down Expand Up @@ -68,5 +77,5 @@ Installing on macOS
.. _virtualenv: https://virtualenv.pypa.io/en/latest/
.. _datalad: https://github.com/datalad/datalad
.. _installer: https://github.com/datalad/datalad-gooey/releases
.. _here: https://github.com/datalad/datalad-gooey/releases
.. _DataLad Handbook: https://handbook.datalad.org/en/latest/intro/installation.html
26 changes: 26 additions & 0 deletions readthedocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.10"

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/source/conf.py


formats: all

# Optionally declare the Python requirements required to build your docs
python:
install:
- path: .
method: pip
- requirements: requirements-devel.txt
9 changes: 7 additions & 2 deletions tools/installer_building/build_windows_installer.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -80,20 +80,25 @@ Copy-Item $start_dir\resources\datalad.ico ${sources_dir}
Copy-Item $start_dir\resources\run_gooey.ps1 ${sources_dir}

# Fetch git for windows installer
Invoke-WebRequest -UseBasicParsing 'https://github.com/git-for-windows/git/releases/download/v2.37.3.windows.1/Git-2.37.3-64-bit.exe' -OutFile ${sources_dir}\git-64-bit.exe
Invoke-WebRequest -UseBasicParsing 'https://github.com/git-for-windows/git/releases/download/v2.42.0.windows.2/Git-2.42.0.2-64-bit.exe' -OutFile ${sources_dir}\git-64-bit.exe

# Fetch git annex for windows
Invoke-WebRequest -UseBasicParsing 'https://downloads.kitenet.net/git-annex/windows/current/git-annex-installer.exe' -OutFile ${sources_dir}\git-annex-64-bit.exe

# Copy the installer script to the temp directory so it can be run in this environment
# Copy the installer scripts to the temp directory so it can be run in this environment
# (there may be other ways to ensure correctness of relative paths)
Copy-Item $start_dir\installer-init.nsi .
Copy-Item $start_dir\installer-gooey.nsi .
Copy-Item $start_dir\windows-installer-amd64.nsi .
Copy-Item $start_dir\windows-installer-gooey-only-amd64.nsi .

# Create the installer
makensis windows-installer-amd64.nsi
makensis windows-installer-gooey-only-amd64.nsi

# Move the installer to a known location
Move-Item datalad-gooey-installer-amd64.exe $start_dir\datalad-gooey-installer-amd64.exe -Force
Move-Item datalad-gooey-installer-gooey-only-amd64.exe $start_dir\datalad-gooey-installer-gooey-only-amd64.exe -Force

# Clean up a little
#Remove-Item $build_dir -Recurse -Force
Expand Down
19 changes: 19 additions & 0 deletions tools/installer_building/installer-gooey.nsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
Section "Python 3.9"
StrCpy $INSTDIR "$LOCALAPPDATA\datalad.org\datalad-gooey"
SetOutPath "$INSTDIR\python39"
File /r "sources\python39\*.*"
SectionEnd

Section "Datalad-Gooey"
StrCpy $INSTDIR "$LOCALAPPDATA\datalad.org\datalad-gooey"
SetOutPath "$GOOEYTEMP"
# TODO: delete wheelhouse and dist
File /r "sources\wheelhouse"
File /r "sources\dist"
ExecWait "powershell $INSTDIR\python39\python -m pip install --no-index --find-links $GOOEYTEMP\wheelhouse (Get-Item $GOOEYTEMP\dist\datalad_gooey*-py3-none-any.whl)"
SetOutPath "$INSTDIR"
File /r "sources\datalad.ico"
SetOutPath "$INSTDIR\python39\Scripts"
File /r "sources\run_gooey.ps1"
CreateShortCut /NoWorkingDir "$DESKTOP\Datalad Gooey.lnk" "powershell" "$INSTDIR\python39\Scripts\run_gooey.ps1" "$INSTDIR\datalad.ico"
SectionEnd
6 changes: 6 additions & 0 deletions tools/installer_building/installer-init.nsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Var GOOEYTEMP

Section "Initialize"
StrCpy $GOOEYTEMP "$TEMP\datalad-gooey-installer-Wlkfd983e"
RMDir /r "$GOOEYTEMP"
SectionEnd
30 changes: 4 additions & 26 deletions tools/installer_building/windows-installer-amd64.nsi
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,9 @@ Name "Datalad Gooey"

Outfile "datalad-gooey-installer-amd64.exe"

Var GOOEYTEMP
RequestExecutionLevel admin


Section "Initialize"
StrCpy $GOOEYTEMP "$TEMP\datalad-gooey-installer-Wlkfd983e"
RMDir /r "$GOOEYTEMP"
SectionEnd
!include installer-init.nsi

Section "git"
SetOutPath "$GOOEYTEMP\"
Expand All @@ -17,27 +13,9 @@ Section "git"
SectionEnd

Section "git-annex"
SetOutPath "$GOOEYTEMP"
SetOutPath "$GOOEYTEMP\"
File /r "sources\git-annex-64-bit.exe"
ExecWait "$GOOEYTEMP\git-annex-64-bit.exe"
SectionEnd

Section "Python 3.9"
StrCpy $INSTDIR "$LOCALAPPDATA\datalad.org\datalad-gooey"
SetOutPath "$INSTDIR\python39"
File /r "sources\python39\*.*"
SectionEnd

Section "Datalad-Gooey"
StrCpy $INSTDIR "$LOCALAPPDATA\datalad.org\datalad-gooey"
SetOutPath "$GOOEYTEMP"
# TODO: delete wheelhouse and dist
File /r "sources\wheelhouse"
File /r "sources\dist"
ExecWait "powershell $INSTDIR\python39\python -m pip install --no-index --find-links $GOOEYTEMP\wheelhouse (Get-Item $GOOEYTEMP\dist\datalad_gooey*-py3-none-any.whl)"
SetOutPath "$INSTDIR"
File /r "sources\datalad.ico"
SetOutPath "$INSTDIR\python39\Scripts"
File /r "sources\run_gooey.ps1"
CreateShortCut /NoWorkingDir "$DESKTOP\Datalad Gooey.lnk" "powershell" "$INSTDIR\python39\Scripts\run_gooey.ps1" "$INSTDIR\datalad.ico"
SectionEnd
!include installer-gooey.nsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Name "Datalad Gooey (without git and git-annex)"

Outfile "datalad-gooey-installer-gooey-only-amd64.exe"

RequestExecutionLevel user

!include installer-init.nsi

!include installer-gooey.nsi

0 comments on commit 0a9dbaf

Please sign in to comment.