In January 2024 you promised to fix the broken Dynamic DNS package:
The problem is:
You have created a Dynamic DNS service operated by yourself (that is cool).
But you modified an existing dynamic DNS OpenWRT package to add your code to it, and you didn't rename any files, so the files on your hard disk conflict with the official upstream package (that is bad)
Which means that if people install another provider (like Cloudflare Dynamic DNS) as a LuCi plugin, then the files get rewritten back to upstream versions, which breaks the GL-iNet interface and causes router errors because the file paths conflicted (that is bad).
This has been discussed before.
The solution is that you rename your package files to a new, unique path with non conflicting function names. Please do it so we can install OpenWRT packages without conflicting with your modified versions...
The problem is this package which needs to put itself in a different disk path to avoid conflicts: gl-sdk4-ddns
While this problem remains, I cannot use Dynamic DNS on the router. Because I need to use Cloudflare Dynamic DNS and this is currently impossible to do without deleting the core gl-sdl4-ddns package.
It was also mentioned in previous threads that you can remove most of the code of your custom package because most of your logic is implemented in a C library.
People have described a workaround here which deleted the core gl inet package that contains the broken files. This is a bad solution because removing the package breaks parts of the GL iNet router GUI:
Please just fix the package instead so your modified files/function hooks doesn't use the same file paths and function names as the upstream package.
People were saying that the conflict has not been fixed. The GL-iNet firmware changelog doesn't mention any fix.
I am using Flint 2 v4.7.0.
The package I want to install is "ddns-scripts-cloudflare" which also installs "ddns-scripts" and "ddns-scripts-services". And "luci-app-ddns" plus "luci-i18n-ddns-en" for config UI.
Installing these packages used to break GL-iNet's own Dynamic DNS package.
I have the Brume 2 with older firmware than 4.7.0 and I install two ddns scripts for cloudflare to track my dynamic IP.
The two packages I installed via Luci are
ddns-scripts-cloudflare and then I install the luci-app-ddns package, refresh and visit the ddns section via Luci and configure. I actually have a cloudflare entry and a duckdns entry and both update fine. No errors. Granted I don't use the inbuilt ddns from glinet, it is still in my main gui and avaible to enable though. I didn't need to remove any packages.
If I was you, I would just create a backup via Luci and then ensure you have the current firmware file too. Install the packages via Luci and see what happens. Worst case you restore settings or flash again and restore settings.
The order of installation might be key. Again, install the cloudflare package "ddns-scripts-cloudflare" and then the Luci package "luci-app-ddns" and leave the settings default "Overwrite files from other package(s)" - UNCHECKED.
I only install those two packages and everything that's included with the package installs itself. No need to choose anymore than them two packages to install for my usecase and potentially yours (if all you want to do is update to cloudflare)
Thank you for the detailed post/help, j2zero. I decided to try installing it, and yeah it seems like it doesn't conflict anymore? At least I am not seeing any errors in the router logs! And I was able to set up the Cloudflare Dynamic DNS settings in LuCi.
@bruce Just double-checking. Is it confirmed that the mentioned packages have no more conflicts with Flint 2 v4.7.0? "ddns-scripts-cloudflare", "ddns-scripts", "ddns-scripts-services", "luci-app-ddns", "luci-i18n-ddns-en".
Thank you again for fixing the issue. The logs look okay with no errors about DDNS, and Cloudflare DDNS package is working. I am not sure what the old error looked like but I don't see anything when I search the logs for "DNS" or "error". Seems all is okay!