Hi! On Wed, 27 Nov 2024 at 07:58, Anil Sahoo <anil.sa...@enterprisedb.com> wrote:
> Hi Dave/Team, > > I am currently working on the auto-update feature of pgAdmin 4 desktop > application, #5766 <https://github.com/pgadmin-org/pgadmin4/issues/5766>. > > > As we are using Electron for shipping our desktop application, I have gone > through some possible ways we can implement the auto update of the app. > > I found 2 most popular ways, that are > > 1. *Use builtin electron’s autoUpdater* (Uses the Squirrel framework & > Available for Mac, Windows) > 2. *Use electron-builder and electron-updater packages *(Available for > Mac, Windows and Linux systems) > > *Linux systems:* > > > - Builtin Electron’s autoUpdater support is not available. > - electron-builder and electron-updater can be used, but need to > change the whole build process. Also most apps like VS code, Chrome, etc > does not support auto-update of apps on linux systems. > > We should not try to auto-update on Linux, because we're using the platform native packaging and auto-updating will cause nasty problems with that. > *Mac systems:* > > - We can use the builtin Electron’s autoUpdater to add auto-update > feature to macOs systems, It is simple and easy to configure. We need a > minor modification in our build process i.e. as we are supporting Intel and > Apple silicon chips, deployment url will have 2 zip files and each zip file > will hold the build for arm64 and x86_64. > - electron-builder and electron-updater can be used. With this, we > have to change the whole build process. > > *Windows systems:* > > - We can use the builtin Electron’s autoUpdater to add auto-update > feature to windows systems, Here also we need to change our build process. > Electron’s docs recommend using electron-winstaller or electron forge to > create the installer and some extra changes are needed in the deployment > server. > - electron-builder and electron-updater can be used. With this, we > have to change the whole build process. > > As Electron's builtin autoUpdater is easy to use so for now we can move > with the auto-update of the pgAdmin app on macOs systems as it requires > minimal changes. > That certainly sounds like the better option. A couple of questions: - What changes are required in the deployment server? We are very limited here, as we deploy through the postgresql.org infrastructure. - Whilst the docs (for Windows) recommend using electron-winstaller or electron forge, can you confirm one of them *must* be used? Our current installer is pretty standard in the way it works, so I'm curious to know if we would actually need to change technology for a specific reason. Thanks! -- Dave Page pgAdmin: https://www.pgadmin.org PostgreSQL: https://www.postgresql.org pgEdge: https://www.pgedge.com