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

windows installer multiple issues #471

Closed
sthalik opened this issue Jul 6, 2015 · 16 comments
Closed

windows installer multiple issues #471

sthalik opened this issue Jul 6, 2015 · 16 comments

Comments

@sthalik
Copy link
Contributor

sthalik commented Jul 6, 2015

The Windows installer has multiple issues compared to installing cola by cloning the repository and running build.py:

There's no git-cola(.pyw) and git-dag(.pyw). The git-cola.launch.pyw script always goes straight to repo open screen, ignoring whether working directory is a git repo

Installing into existing directory, such as previous git-cola installation, causes installed files to be skipped rather than overwritten, silently.

It should install pywin32 for file notification support but it doesn't.

@davvid
Copy link
Member

davvid commented Jul 11, 2015

@takluyver do you think these would be easy fixes?

@takluyver
Copy link
Contributor

  • Entry points: right, I hadn't thought about using it from the command line in Windows. It's probably easy to make the .launch.pyw script respect the working directory. Installing a git-cola.cmd or similar should be possible with a custom template, though I don't quite know where the best place to put it is.
  • Overwriting existing files: hmm, that's a bit troubling. I assumed NSIS would default to overwriting files. I'll try to look into this, but it will be a few days before I'm back at my Windows VM to test.
  • pywin32: that should be easy, but IIRC pywin32 generates some of the modules at runtime, so it might necessitate building the installers on Windows (when the application runs, it won't have write access to its own directory, so those files need to be generated before building). Maybe that's only for win32com, though?

@sthalik
Copy link
Contributor Author

sthalik commented Jul 16, 2015

@takluyver the "git-cola" and "git-dag" modules are fine to launch with Windows pythonw.exe. They could be included in the Windows distro.

Perhaps pywin32 stuff is ABI-compatible when generated on a different system using the same Python. I'm unfamiliar with the issue though. There's the option of bundling a stipped-down version for cola's purposes only.

@nocnokneo
Copy link

pywin32 generates some of the modules at runtime, so it might necessitate building the installers on Windows

In theory this should be possible with the mingw packages in Ubuntu, but the details of reality may get in the way.

@collinsmichael
Copy link

Any update on fixing this broken approach to windows installation? The current suggestions from the readme are utterly broken.

@takluyver
Copy link
Contributor

Pynsist grew the ability to install command line commands since the last round of discussion (see docs). There's a Pynsist config file in the repository, but it doesn't look like it's being used at the moment.

If anyone wants to play with that, I'd recommend updating it to use Python 3 and PyQt5, which can be fetched from a wheel. Here's a PyQt5 example. With this, the fetch_pyqt_windows.sh script would not be needed.

@sthalik
Copy link
Contributor Author

sthalik commented Dec 5, 2017

Is Python 3 and PyQt5 fully working?

@takluyver
Copy link
Contributor

As far as I know, yes. I use Git Cola on Python 3 (though on Linux, not Windows). I'm not sure how to quickly check which Qt module it has loaded - I probably have them all installed.

@nocnokneo
Copy link

nocnokneo commented Dec 5, 2017 via email

@davvid
Copy link
Member

davvid commented Mar 24, 2018

Thanks to @takluyver and pynsist I finally got what (seems to be) a sensible, 64bit newly working installer working. Please test the latest beta release -- it should have resolved these issues (besides the git-dag entry point -- still need to work on that).

https://github.com/git-cola/git-cola/releases

Also, the instructions with the new installer are much simpler now. You don't need to install python, pyqt5, or any of that stuff. Just install "Git for Windows", "Git Cola" and that's it.

davvid added a commit to davvid/git-cola that referenced this issue Mar 24, 2018
Remove old cruft related to the InnoSetup installer.  We're switching to
pynsist.

Related-to: git-cola#471
Related-to: git-cola#785
Signed-off-by: David Aguilar <davvid@gmail.com>
davvid added a commit to davvid/git-cola that referenced this issue Mar 24, 2018
Update pynsist.cfg to get things working with modern Python and
semi-modern Windows versions.

Related-to: git-cola#471
Related-to: git-cola#785
Signed-off-by: David Aguilar <davvid@gmail.com>
davvid added a commit to davvid/git-cola that referenced this issue Mar 24, 2018
Vastly simplify the Windows instructions now that we're using
pynsist to generate our installers.

Add the run-pynsist.sh script that's used when generating
installers.

Closes git-cola#785
Related-to: git-cola#471
Thanks-to: Thomas Kluyver <takowl@gmail.com>
Signed-off-by: David Aguilar <davvid@gmail.com>
davvid added a commit to davvid/git-cola that referenced this issue Mar 25, 2018
Related-to: git-cola#471
Signed-off-by: David Aguilar <davvid@gmail.com>
davvid added a commit to davvid/git-cola that referenced this issue Mar 25, 2018
Add entry points for git-cola and git-dag commands.  This allows us to
run "git cola" and "git dag" from a Git Bash shell.

Related-to: git-cola#471
Signed-off-by: David Aguilar <davvid@gmail.com>
@takluyver
Copy link
Contributor

👍 I will take a look at your PRs to Pynsist later on. :-)

@davvid
Copy link
Member

davvid commented Mar 25, 2018

The latest beta installer now include launcher commands for git-cola and git-dag so I think this issue can be closed now.

Also, if you're still seeing the "not overwriting existing files" issue then we should open a pynsist issue to look into it. Thanks for the sugs.

@davvid davvid closed this as completed Mar 25, 2018
@nocnokneo
Copy link

Works for me except for file system change monitoring. Does pywin32 need to be added to the packages list in windows-installer.cfg?

@takluyver
Copy link
Contributor

It's listed in pypi_wheels - it shouldn't be necessary to specify it in packages as well. But there are some complexities with pywin32 - IIRC it generates modules at runtime, which may be causing issues.

@nocnokneo
Copy link

@takluyver Thanks. Are file system changes working for you with this new installer?

@takluyver
Copy link
Contributor

No idea - I don't use Windows much (despite making a tool for building Windows installers...)

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

No branches or pull requests

5 participants