Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a gooey-only installer that can be installed without admin privileges #430

Merged

Conversation

christian-monch
Copy link
Collaborator

This PR implements option 1 of issue #425. It modifies the "Build Windows Installer action to build a second installer that will only install datalad-gooey, datalad, and python 3.9 in user directories, i.e. <user>\AppData\Local\datalad.org.

This commit modifies the build-settings for
the windows installer. The resulting installer
should allow non-priviledged execution.
This commit adds another installer build definition
that will build a gooey-only installer. This
installer will not try to install git or git-annex
and will not require admin-privileges
This commit adds a second installer that only installs
the gooey-components, i.e. `datalad-gooey` and `datalad`,
as well as a python executable.

The installer allows to install datalad-gooey as non-admin
user. But it requires that `git` and `git-annex` are
available on the system to execute datalad-gooey
successfully.
@codecov-commenter
Copy link

codecov-commenter commented Sep 4, 2023

Codecov Report

Patch coverage: 100.00% and project coverage change: +0.07% 🎉

Comparison is base (6c218f6) 60.53% compared to head (7aab36e) 60.60%.
Report is 16 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #430      +/-   ##
==========================================
+ Coverage   60.53%   60.60%   +0.07%     
==========================================
  Files          49       49              
  Lines        3512     3511       -1     
==========================================
+ Hits         2126     2128       +2     
+ Misses       1386     1383       -3     
Files Changed Coverage Δ
datalad_gooey/constraints.py 83.47% <100.00%> (ø)
datalad_gooey/credentials.py 12.50% <100.00%> (ø)
datalad_gooey/patches/clone.py 77.77% <100.00%> (-2.23%) ⬇️

... and 1 file with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Member

@adswa adswa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @christian-monch. I left two small wording suggestions for the docs.
I tested both installers on Windows 10, and they seemed to work as advertised - yay!
I only have two general remarks, probably for a follow-up PR:
The overview of releases currently looks like this

image

I suspect that the Git-SHA-based name looks more weird to many users than the old installer with the "clean" v0.2.0. Should we do a patch release in order to have those two most recent installers readily and easily identifiable?

I noticed when using the full installer that Git 2.37.3 was being installed, this is 5 minor versions below the current version and was released more than one year ago. Its likely useful to update this. If users already have a more recent git version they would otherwise be forced to downgrade.

docs/source/installation.rst Show resolved Hide resolved
docs/source/installation.rst Show resolved Hide resolved
Copy link
Member

@adswa adswa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah wait, one second - something is weird. I did not notice the first time I ran the full installer, but when I redid it after wiping everything just for good measure, I noticed that the full installer does not seem to install git-annex anymore? I can't pinpoint where in this PR this would happen, but executing the full installer on an admin account does not prompt for the admin password, and does not install git-annex.

@christian-monch
Copy link
Collaborator Author

ah wait, one second - something is weird. I did not notice the first time I ran the full installer, but when I redid it after wiping everything just for good measure, I noticed that the full installer does not seem to install git-annex anymore? I can't pinpoint where in this PR this would happen, but executing the full installer on an admin account does not prompt for the admin password, and does not install git-annex.

Thanks for the report. Checking this now

@christian-monch
Copy link
Collaborator Author

christian-monch commented Sep 5, 2023

Thanks a lot @adswa

Thanks @christian-monch. I left two small wording suggestions for the docs. I tested both installers on Windows 10, and they seemed to work as advertised - yay! I only have two general remarks, probably for a follow-up PR: The overview of releases currently looks like this

image

I suspect that the Git-SHA-based name looks more weird to many users than the old installer with the "clean" v0.2.0. Should we do a patch release in order to have those two most recent installers readily and easily identifiable?

Yes, will do that

I noticed when using the full installer that Git 2.37.3 was being installed, this is 5 minor versions below the current version and was released more than one year ago. Its likely useful to update this.

Good point. Created issue #434 and assigned it to myself.

If users already have a more recent git version they would otherwise be forced to downgrade.
Thanks for noticing that. Users might indeed downgrade, but they are not forced to do that. Users are free to cancel the git installation. I added a note about this topic to the installation instructions for windows

@christian-monch
Copy link
Collaborator Author

christian-monch commented Sep 5, 2023

ah wait, one second - something is weird. I did not notice the first time I ran the full installer, but when I redid it after wiping everything just for good measure, I noticed that the full installer does not seem to install git-annex anymore? I can't pinpoint where in this PR this would happen, but executing the full installer on an admin account does not prompt for the admin password, and does not install git-annex.

Found it. The git-annex installer, which requests admin privileges, is only started by an installer that has requested admin privileges. Long story short, I fixed it by requesting admin level for the full installer (in 7aab36e)

Copy link
Member

@adswa adswa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried the full installer and can confirm that git-annex gets installed - thanks!

@christian-monch christian-monch merged commit aee993a into datalad:main Sep 5, 2023
6 checks passed
@christian-monch christian-monch deleted the issue-425-non-admin-installer branch September 5, 2023 10:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants