Skip to content
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

ZeronameExPlugin - Really nice tail #2861

Open
wants to merge 6 commits into
base: py3
Choose a base branch
from
Open

Conversation

wolfitdm
Copy link

@wolfitdm wolfitdm commented Jan 19, 2025

So it finally works.

The ZeronameEx plugin, which is an extension of the Zeroname plugin.

You need the Zeroname plugin so that this plugin can really work its magic.

What can the plugin do?

Decentralize the DNS!!!!

What no, how is that possible?

The plugin creates a file ZeronameExPlugin.json in its directory ZeroNet\plugins\ZeronameEx\ZeronameExPlugin.json

It looks like this:
{

"domains": {},

"last_updated": 1737299508.5499341,

"main_resolver": "1Name2NXVi1RDPDgf5617UoW7xA6YrhM9F",

"resolvers": [

"1Name2NXVi1RDPDgf5617UoW7xA6YrhM9F",

"1SitesVCdgNfHojzf2aGKQrD4dteAZR1k",

"1E97TpiDiCj1WGhZWxoKjBV9KkVty1PFsq"

],

"update_interval": 18000,

"update_time": 0,

"use_cache": true

}

The plugin takes the resolvers from the argument --bit_resolvers

Now the plugin fetches all domains and stores them in between.
The update interval of 18000 tells the plugin that it should query the resolvers again every 5 hours.

But the nice thing about the JSON file is that once it has been created, the plugin fetches the information from there.

This means that you can add more resolvers at any time.

Delete them and enter or change new domains yourself.

But now comes the best part...

Now you could say that you can overwrite the domains at any time. Wrong, you can't do that, huh???

The plugin still calls the original Zeroname plugin as a fallback. This means that the domains of the Zeroname plugin have top priority!!!!! Correct, you can have multiple resolvers, but you cannot overwrite the domains of the central register that is set for Zeroname. This means that you can still set your main resolver with the Zeroname plugin, and the Zeroname is only extended here.

So now you are independent....

YAYYYYYYYYYYYYYYYYY!!!!!!

https://github.com/wolfitdm/ZeroNet/blob/py3/plugins/ZeronameEx/ZeroNameExPlugin.json

@wolfitdm
Copy link
Author

So new update

The ZeroNameExPlugin.json can now do something really cool...

In the event that no resolver knows the domain, it can still resolve it... Huh?

It gets the domain from the content.json.

Every resolver can overwrite the domain field from the content.json.

"content_json_domains": {

"Blog.ZeroNetwork.bit": "1BLogC9LN4oPDcruNz3qo1ysa133E9AGg8",

"Sites.ZeroNetX.bit": "1SitesVCdgNfHojzf2aGKQrD4dteAZR1k",

"Talk.ZeroNetwork.bit": "1TaLkFrMwvbNsooF4ioKAY9EuxTBTjipT"

},

@wolfitdm
Copy link
Author

Add reverse dns cache for faster resolve domain entries in the ZeroNet\plugins\ZeronameEx\ZeroNameExPlugin.json

"content_json_domains": {
"1BLogC9LN4oPDcruNz3qo1ysa133E9AGg8": "Blog.ZeroNetwork.bit",
"1SitesVCdgNfHojzf2aGKQrD4dteAZR1k": "Sites.ZeroNetX.bit",
"1TaLkFrMwvbNsooF4ioKAY9EuxTBTjipT": "Talk.ZeroNetwork.bit",
"Blog.ZeroNetwork.bit": "1BLogC9LN4oPDcruNz3qo1ysa133E9AGg8",
"Sites.ZeroNetX.bit": "1SitesVCdgNfHojzf2aGKQrD4dteAZR1k",
"Talk.ZeroNetwork.bit": "1TaLkFrMwvbNsooF4ioKAY9EuxTBTjipT"
},

@wolfitdm
Copy link
Author

wolfitdm commented Jan 19, 2025

addresses

Split content json addresses and domains

--bit_resolvers argument is the resolvers field

and change the main_resolver field doesn't have a effect, it is a read only field and this field is under control by the ZeroName Plugin

for questions please ask me, but now you can share zites, and everybody on the planet can use the domain from your zite.....

@mx5kevin
Copy link

mx5kevin commented Jan 21, 2025

Thank you, we need more developers like you. The main problem is that the ZeroNet with all forks download system is completely unusable. The users cannot complete and update the file download. A torrent-based download system should be integrated, especially for optional files (like BiglyBT with I2P support). It is not worth improving the existing one, a working torrent system needs to be integrated. The 10MB page limit is also a joke in the world of 1000MB websites. And make entire websites downloadable with the click of a button automatic way. Until this is realized, all the development work invested in the project is a waste of time, because currently the software is not doing what it was designed to do. If anyone can solve this the easiest way open a new fork with Windows Linux and the existing binaries, and don't wait for anyone to integrate the fixes.

@wolfitdm

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