+ ### Fetch blocks from static text file(s) ###
+ parser = subparser_command.add_parser(
+ "fetch_txt",
+ help="Fetches text/plain files as simple domain lists",
+ )
+ parser.set_defaults(command=commands.fetch_txt)
+
+ ### Fetch blocks from joinfediverse.wiki ###
+ #parser = subparser_command.add_parser(
+ # "fetch_joinfediverse",
+ # help="Fetches FediBlock page from joinfediverse.wiki",
+ #)
+ #parser.set_defaults(command=commands.fetch_joinfediverse)
+
+ ### Fetch instances JSON from instances.joinmobilizon.org
+ parser = subparser_command.add_parser(
+ "fetch_joinmobilizon",
+ help="Fetches instances from joinmobilizon",
+ )
+ parser.set_defaults(command=commands.fetch_joinmobilizon)
+
+ ### Fetch blocks from misskey.page ###
+ parser = subparser_command.add_parser(
+ "fetch_joinmisskey",
+ help="Fetches instances.json from misskey.page",
+ )
+ parser.set_defaults(command=commands.fetch_joinmisskey)
+
+ ### Fetch blocks from fediverse.observer ###
+ parser = subparser_command.add_parser(
+ "fetch_observer",
+ help="Fetches blocks from fediverse.observer.",
+ )
+ parser.set_defaults(command=commands.fetch_observer)
+ parser.add_argument("--software", help="Name of software, e.g. 'lemmy'")
+
+ ### Fetch instances from fedipact.online ###
+ parser = subparser_command.add_parser(
+ "fetch_fedipact",
+ help="Fetches blocks from fedipact.online.",
+ )
+ parser.set_defaults(command=commands.fetch_fedipact)
+
+ ### Fetch from pixelfed.org's API ###
+ parser = subparser_command.add_parser(
+ "fetch_pixelfed_api",
+ help="Fetches domain names from pixelfed.org's API",
+ )
+ parser.set_defaults(command=commands.fetch_pixelfed_api)
+
+ ### Check nodeinfo ###
+ parser = subparser_command.add_parser(
+ "check_nodeinfo",
+ help="Checks if domain is part of nodeinfo.",
+ )
+ parser.set_defaults(command=commands.check_nodeinfo)
+
+ ### Fetch CSV from fedilist.com ###
+ parser = subparser_command.add_parser(
+ "fetch_fedilist",
+ help="Fetches CSV from fedilist.com",
+ )
+ parser.set_defaults(command=commands.fetch_fedilist)
+ parser.add_argument("--software", help="Name of software, e.g. 'lemmy'")
+ parser.add_argument("--force", action="store_true", help="Include also already existing instances, otherwise only new are checked")
+
+ ### Update nodeinfo ###
+ parser = subparser_command.add_parser(
+ "update_nodeinfo",
+ help="Updates nodeinfo for all instances",
+ )
+ parser.set_defaults(command=commands.update_nodeinfo)
+ parser.add_argument("--domain", help="Instance name (aka. domain)")
+ parser.add_argument("--software", help="Name of software, e.g. 'lemmy'")
+ parser.add_argument("--mode", help="Name of detection mode, e.g. 'auto_discovery'")
+ parser.add_argument("--force", action="store_true", help="Forces update of data, no matter what.")
+ parser.add_argument("--no-software", action="store_true", help="Checks only entries with no software type detected.")
+ parser.add_argument("--no-auto", action="store_true", help="Checks only entries with other than AUTO_DISCOVERY as detection mode.")
+ parser.add_argument("--no-detection", action="store_true", help="Checks only entries with no detection mode set.")
+
+ ### Fetch instances from instances.social ###
+ parser = subparser_command.add_parser(
+ "fetch_instances_social",
+ help="Fetch instances from instances.social, you need an API key to access the API. Please consider donating to them when you want to more frequent use their API!",
+ )
+ parser.set_defaults(command=commands.fetch_instances_social)
+
+ ### Convert international domain names to punycode domains ###
+ parser = subparser_command.add_parser(
+ "convert_idna",
+ help="Convertes UTF-8 encoded international domain names into punycode (IDNA) domain names.",
+ )
+ parser.set_defaults(command=commands.convert_idna)
+
+ ### Fetch instances from ActivityPub relays ###
+ parser = subparser_command.add_parser(
+ "fetch_relays",
+ help="Fetches instances from ActivityPub relays",
+ )
+ parser.set_defaults(command=commands.fetch_relays)
+ parser.add_argument("--domain", help="Instance name (aka. 'relay')")
+ parser.add_argument("--software", help="Name of software, e.g. 'lemmy'")
+ parser.add_argument("--force", action="store_true", help="Forces update of data, no matter what.")
+
+ ### Fetches relay list from relaylist.com
+ parser = subparser_command.add_parser(
+ "fetch_relaylist",
+ help="Fetches relay list from relaylist.com",
+ )
+ parser.set_defaults(command=commands.fetch_relaylist)
+
+ ### Remove invalid domains ###
+ parser = subparser_command.add_parser(
+ "remove_invalid",
+ help="Removes invalid domains.",
+ )
+ parser.set_defaults(command=commands.remove_invalid)
+
+ logger.debug("EXIT!")