-
Notifications
You must be signed in to change notification settings - Fork 215
Refactor Dockerfile #628
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
base: main
Are you sure you want to change the base?
Refactor Dockerfile #628
Conversation
PassiveLemon
commented
Apr 6, 2025
- Switch back Alpine (I don't get unrecognized symbol errors anymore)
- Download zoraxy_plugin from the plugins repository
- Fix some ZeroTier related issues
Switch to Alpine + compat and download zoraxy_plugin from the plugins repository
RUN git clone https://github.com/aroz-online/zoraxy-official-plugins &&\ | ||
# v this path with likely need to be updated | ||
cp -r ./zoraxy-official-plugins/src/ztnc/mod/zoraxy_plugin/ /opt/zoraxy/zoraxy_plugin/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still not sure if zoraxy-official-plugins/src/ztnc/mod/zoraxy_plugin/
is going to stay so I'll need some information on where the most stable path should be.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am still working on the plugin manger architecture and I am not sure about this too. But I can try to not change this path if possible in the coming releases if that is something you preferred.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the zoraxy_plugin should have its own place outside of the plugins themselves, that would be ideal. Maybe a directory along-side the other plugins?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure what you mean. Can you give an example structure or a diagram of what is your preferred way for storing the system / official plugins that is easy to work with in docker?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the zoraxy-official-plugins repository:
src/
ztnc/
zoraxy_plugin/
... (other plugins)
I'm mainly just looking for a dedicated place that is unlikely to suddenly change
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@PassiveLemon Hmm I don't really get it. The zoraxy-offical-plugin repo only stores Zoraxy's official plugins. The src/ztnc path should be stable and other plugins will be added as the structure you described. So in the future the official plugin repo will look something like this.
src/
ztnc/
upnp/
zoramonkey/
. . . (other plugins)
directories/
index.json (contains the download paths for the release binary and version info of the plugins)
I guess we are suggesting the same structure here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the ztnc path is expected to be stable, then I'll just keep it where it currently is
Other question: If each plugin has the zoraxy_plugin inside of it, what's the purpose of the "Copying zoraxy_plugin to all mods" part of the build_all.sh script?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The zoraxy_plugin is the IPC library of zoraxy plugins where it is used by the plugins to "talks" to the current version of Zoraxy while keeping the API used by the plugin unchanged. Different versions of Zoraxy should came with its own "zoraxy_plugin" library and that is where it needed to be updated in the build script.
I will try to keep the IPC unchanged (so in the future the zoraxy_plugin folder copy & recompile should be done in a minimum required interval) , but it is really hard to affirm you on this right now as I am still tinkering with the plugin manager design (for Zoraxy) as well as the events pub / sub pipeline (for plugins).