tdlib.native
tdlib.native copied to clipboard
Separate packages per platform and distribution
The nearest plan is to:
- [ ] create separate packages per platform (like
tdlib.native.win-x64,tdlib.native.macos-x64,tdlib.native.ubuntu-20.04-x64- [ ] the default package
tdlib.native will include references totdlib.native.win-x64,tdlib.native.osx-x64,tdlib.native.ubuntu-20.04-x64` (note only Ubuntu 20.04 for compatibility reasons) and won't include the binaries anymore
- [ ] the default package
- [ ] create a new package for
ubuntu-22.04-x64, separate for now (#66), as it'll conflict withubuntu-20.04if we include it into the default set - [ ] create new packages for
macos-arm64(#74), this one it's safe to include into the default set
All this will have a downside that the user will have to explicitly collect the correct packages for their purposes, and there won't be an universally-accepted version anymore (we'll omit compoat for Ubuntu 22.04 for now).
So, for the future, we should also do this, to have a version that just works out of the box and will include new distributions if required:
- [ ] create a new model for the uber-package that will
- repack the incompatible binaries into different directories (like the outdated RID graph model,
linux/ubuntu-20.04+linux/ubuntu-22.04) - add a special method, like
TdLibNative.SetUpRuntimeResolver(), that the user will have to call manually to correctly resolve this - also expose constants with locations of binaries, for the users to use them in custom resolve scenarios if required
- repack the incompatible binaries into different directories (like the outdated RID graph model,