egram.tel icon indicating copy to clipboard operation
egram.tel copied to clipboard

Autoupdater

Open x2bool opened this issue 5 years ago • 8 comments

Autoupdater should be implemented as soon as possible to keep users on up to date version. Depends on https://github.com/egramtel/egram.tel/issues/19

x2bool avatar Sep 23 '18 07:09 x2bool

Where would you want to store new versions?

  • Combine all the projects as a one nuget-package and pull it with each global realese? aka Microsoft.AspNetCore.All
  • Turn each project into a nuget package and pull them by minor realeses?

Trapov avatar Sep 24 '18 06:09 Trapov

There should be some kind of a distribution plan – we want just a simple executable file, like it's done in the classis telegram desktop app, or there would be many packages(dlls) across the app directory.

In the first case i would suggest using ILMerge, altho i don't really know how much stable it is with Fody.

Trapov avatar Sep 24 '18 06:09 Trapov

I think updating each project separately is too complex for now. Also I am fine with having multiple dlls: ILMerge docs say "Currently, ILMerge works only on Windows-based platforms".

Interesting idea about distributing app with NuGet. Would it work with binaries compiled to target platform (Mac, Linux, Windows)? I don't want to force users to install .net core on their machines.

x2bool avatar Sep 24 '18 10:09 x2bool

I think updating each project separately is too complex for now. Also I am fine with having multiple dlls: ILMerge docs say "Currently, ILMerge works only on Windows-based platforms".

@x2bool, oh yeah, sorry, i meant Mono linker.

Would it work with binaries compiled to target platform (Mac, Linux, Windows)? I don't want to force users to install .net core on their machines.

So you want to compile it to native binaries with an AOT compilation or just a self-contained version? If the second one, then it should be alright – if there's a new version of any package just replace the dll, it should work, would need to parse the .deps file and detect which package should be updated and which not of course.

Trapov avatar Sep 24 '18 10:09 Trapov

Just self-contained version built for target platform.

x2bool avatar Sep 24 '18 12:09 x2bool

For autoupdate, there're the following options:

ForNeVeR avatar Sep 26 '18 16:09 ForNeVeR

@ForNeVeR At first glance it's unclear whether we could use these frameworks. Mac installers seem to be tied to Cocoa apps. I am not sure though.

x2bool avatar Sep 27 '18 20:09 x2bool

Also there is https://github.com/Tyrrrz/Onova. Haven't used it, though.

Liminiens avatar Oct 23 '18 10:10 Liminiens