Skip to content

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

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

PassiveLemon
Copy link
Collaborator

  • 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
Comment on lines +46 to +48
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/
Copy link
Collaborator Author

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.

Copy link
Owner

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.

Copy link
Collaborator Author

@PassiveLemon PassiveLemon Apr 7, 2025

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?

Copy link
Owner

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?

Copy link
Collaborator Author

@PassiveLemon PassiveLemon Apr 8, 2025

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

Copy link
Owner

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?

Copy link
Collaborator Author

@PassiveLemon PassiveLemon Apr 9, 2025

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?

Copy link
Owner

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).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants