bdbcat / oesenc_pi

GNU General Public License v2.0
10 stars 17 forks source link

Win 10 V 4.2.2 local install can't find oeserverd #81

Closed Hakansv closed 4 years ago

Hakansv commented 4 years ago

I've built oesenc_pi-4.2.2_msvc-10.0.18363.exe form today's master and installed it locally. It's searching for oeserverd in a false place. Is there a mix with the managed version?

image

rgleason commented 4 years ago

Have you tried chmod=+x? From your prompt screen

CHMOD /bin/bash: ci/circleci-build-fedora.sh: Permission denied Exited with code exit status 126

The problem was that I was doing it from a parent directory using the path. You must be in the actual directory for the commands to work! Also git status must show file changed.

 git update-index --add --chmod=+x build.sh
 git commit -m 'Make build.sh executable' 
 git push

Did a chmod=+x on the file.

Hakansv commented 4 years ago

Rick..

Håkan

rgleason commented 4 years ago

The plugins get installed to different directories Managed goes to %LocalAppData% and earlier "Unmanaged" to the more familiar locations.

https://github.com/leamas/OpenCPN/wiki/Installation-paths

Of course there will be a transition period, so perhaps you're going to have to move the plugin to the alternate location? It certainly would be nice if there was an automatic search for the proper location, by both types of plugins.

The need for a package installer would be if a user is without a Internet connection and need a oeSENC_pi update.

rgleason commented 4 years ago

Perhaps this Local installation will help? https://github.com/leamas/OpenCPN/wiki/Local-installations-(debugging)

bdbcat commented 4 years ago

Hakan... If you want to build an old-fashioned unmanaged plugin, use branch "legacy" This method (and legacy branch) are deprecated, and will not likely be maintained after managed plugins are introduced. It only exists to support oesenc_pi today, on O5.0

Hakansv commented 4 years ago

Dave. Yes, that's understood. But how to solve the case when a user wants to install the plugin without Internet? Should we maybe change the installer to put the plugin and its files to the same place as the managed plugin?

bdbcat commented 4 years ago

I don't think so. This would eliminate the possibility of uninstalling a managed plugin to recover a "hidden" legacy plugin. A user may have a legacy build plugin "reserved" for the case of re-install without internet. This is the same plugin available now from opencpn.org. It will install in the "legacy" location, and work fine, if a managed plugin is not taking precedence.

How exactly did you build the plugin that failed to find oeserverd?

Hakansv commented 4 years ago

I built it the usual way by VS2017 - PACKAGE and this installs in program files ---- \plugins But the pluginmanager found a managed plugin that I've forgot to EDIT. uninstall. So when I first uninstalled the managed plugin it found all files for v.4.2.2. But still: Should we end the support for installation without Internet for next O release? That's maybe a conclusion of the whole managed project? If we keep the installer package for the easy case Windows all Linux users will be sad. One of the goal is to get rid of all PPA builds. Right?

bdbcat commented 4 years ago

Hakan.... I think we should keep support for legacy plugins, but stop updating them. This will motivate users to move to managed plugins.

For your case: You cannot build an unmanaged plugin version 4.2.x from oesenc_pi master branch. Well, you can, but it won't work, as you see. I should remove the "PACKAGE" target from that build script in branch master. It is no longer relevant. If you want an unmanaged, older plugin, you need to checkout branch "legacy", and build that in the old usual way. You will get Version 4.0.x. And that is what is available today at opencpn.org.

bdbcat commented 4 years ago

Installation without internet: Alec has some code for test that allows a user to install a saved managed plugin (from metadata and tarball files). Not so easy, maybe, for average user. But is possible.
We could improve the user experience on that, if there is great call from the field.

Hakansv commented 4 years ago

The requests would be hard to investigate. I think the only reasonably similar statistics available would be how many O-Charts users have uploaded a oeSENC ftr instead of a direct transfer via the plugin. Renate or Hubert may be able to put some figures on this?

rgleason commented 4 years ago

Why not enable the "Custom" channel to accept a hard drive path to a previously downloaded tarball and xml file? Maybe the xml isn't needed because the path is not http, but the hard drive. Then cruisers could download and save in a backup directory the plugins that they use all the time, and be able to easily install them.

I had asked about this earlier but minds were focused on other things.

bdbcat commented 4 years ago

Rick... Would require some significant effort. Reason: The XML metadata is needed, containing the critical name/version etc. But worse, the XML points to an online version of the tarball. We would need to intercept that URL, and convert it to a local disk access. There is probably a better way...

rgleason commented 4 years ago

I suppose you could just have a browse button to point to a tarball on the drive and just install it, but then there would be no xml data. In any case you are going to need at least a part of the xml data.

Maybe the tarball should also have a copy of the xml data that gets sent to Cloudsmith separately, so you can inspect and take the values you need from it while doing the installation.

leamas commented 4 years ago

Alec has some code for test that allows a user to install a saved managed plugin

My primary use case for this code is developers and their need to test plugins without the upload/download cycle.

If we should support "off-line" installations á là @Hakansv we should IMHO

Hakansv commented 4 years ago

Alec.. I'm not sure I understand the "cache" and where that's located. But never mind: Before we develop something that forces much or less effort why not simply ask our users when O beta is released? Time to close this and create a new if needed. Thanks