mirror of https://gitlab.com/bashrc2/epicyon
Merge branch 'main' of gitlab.com:bashrc2/epicyon
commit
057b67b3c9
12
daemon.py
12
daemon.py
|
@ -862,7 +862,7 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
self.send_header('Access-Control-Allow-Origin', '*')
|
self.send_header('Access-Control-Allow-Origin', '*')
|
||||||
return
|
return
|
||||||
self.send_header('X-AP-Instance-ID', self.server.instance_id)
|
self.send_header('X-AP-Instance-ID', self.server.instance_id)
|
||||||
self.send_header('X-Clacks-Overhead', 'GNU Natalie Nguyen')
|
self.send_header('X-Clacks-Overhead', self.server.clacks)
|
||||||
self.send_header('User-Agent',
|
self.send_header('User-Agent',
|
||||||
'Epicyon/' + __version__ +
|
'Epicyon/' + __version__ +
|
||||||
'; +' + self.server.http_prefix + '://' +
|
'; +' + self.server.http_prefix + '://' +
|
||||||
|
@ -21016,7 +21016,8 @@ def load_tokens(base_dir: str, tokens_dict: {}, tokens_lookup: {}) -> None:
|
||||||
break
|
break
|
||||||
|
|
||||||
|
|
||||||
def run_daemon(preferred_podcast_formats: [],
|
def run_daemon(clacks: str,
|
||||||
|
preferred_podcast_formats: [],
|
||||||
check_actor_timeout: int,
|
check_actor_timeout: int,
|
||||||
crawlers_allowed: [],
|
crawlers_allowed: [],
|
||||||
dyslexic_font: bool,
|
dyslexic_font: bool,
|
||||||
|
@ -21112,6 +21113,13 @@ def run_daemon(preferred_podcast_formats: [],
|
||||||
# caches css files
|
# caches css files
|
||||||
httpd.css_cache = {}
|
httpd.css_cache = {}
|
||||||
|
|
||||||
|
httpd.clacks = get_config_param(base_dir, 'clacks')
|
||||||
|
if not httpd.clacks:
|
||||||
|
if clacks:
|
||||||
|
httpd.clacks = clacks
|
||||||
|
else:
|
||||||
|
httpd.clacks = 'GNU Natalie Nguyen'
|
||||||
|
|
||||||
# load a list of dogwhistle words
|
# load a list of dogwhistle words
|
||||||
dogwhistles_filename = base_dir + '/accounts/dogwhistles.txt'
|
dogwhistles_filename = base_dir + '/accounts/dogwhistles.txt'
|
||||||
if not os.path.isfile(dogwhistles_filename):
|
if not os.path.isfile(dogwhistles_filename):
|
||||||
|
|
|
@ -183,6 +183,9 @@ def _command_options() -> None:
|
||||||
default=None,
|
default=None,
|
||||||
help='Name of the screen reader: ' +
|
help='Name of the screen reader: ' +
|
||||||
'espeak/picospeaker/mimic3')
|
'espeak/picospeaker/mimic3')
|
||||||
|
parser.add_argument('--clacks', dest='clacks', type=str,
|
||||||
|
default=None,
|
||||||
|
help='http header clacks overhead')
|
||||||
parser.add_argument('--fol', '--follow', dest='follow', type=str,
|
parser.add_argument('--fol', '--follow', dest='follow', type=str,
|
||||||
default=None,
|
default=None,
|
||||||
help='Handle of account to follow. eg. ' +
|
help='Handle of account to follow. eg. ' +
|
||||||
|
@ -3603,7 +3606,8 @@ def _command_options() -> None:
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
argb2, opt2 = _command_options()
|
argb2, opt2 = _command_options()
|
||||||
print('allowdeletion: ' + str(argb2.allowdeletion))
|
print('allowdeletion: ' + str(argb2.allowdeletion))
|
||||||
run_daemon(opt2['preferred_podcast_formats'],
|
run_daemon(argb2.clacks,
|
||||||
|
opt2['preferred_podcast_formats'],
|
||||||
argb2.check_actor_timeout,
|
argb2.check_actor_timeout,
|
||||||
opt2['crawlers_allowed'],
|
opt2['crawlers_allowed'],
|
||||||
argb2.dyslexic_font,
|
argb2.dyslexic_font,
|
||||||
|
|
|
@ -91,9 +91,6 @@ And paste the following:
|
||||||
client_max_body_size 31m;
|
client_max_body_size 31m;
|
||||||
client_body_buffer_size 128k;
|
client_body_buffer_size 128k;
|
||||||
|
|
||||||
limit_conn conn_limit_per_ip 10;
|
|
||||||
limit_req zone=req_limit_per_ip burst=10 nodelay;
|
|
||||||
|
|
||||||
index index.html;
|
index index.html;
|
||||||
rewrite ^ https://$server_name$request_uri? permanent;
|
rewrite ^ https://$server_name$request_uri? permanent;
|
||||||
}
|
}
|
||||||
|
|
23
inbox.py
23
inbox.py
|
@ -567,6 +567,22 @@ def inbox_permitted_message(domain: str, message_json: {},
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
|
def _reject_twitter_summary(base_dir: str, nickname: str, domain: str,
|
||||||
|
summary: str) -> bool:
|
||||||
|
"""Returns true if the post should be rejected due to twitter
|
||||||
|
existing within the summary
|
||||||
|
"""
|
||||||
|
remove_twitter = \
|
||||||
|
acct_dir(base_dir, nickname, domain) + '/.removeTwitter'
|
||||||
|
if not os.path.isfile(remove_twitter):
|
||||||
|
return False
|
||||||
|
summary_lower = summary.lower()
|
||||||
|
if 'twitter' in summary_lower or \
|
||||||
|
'birdsite' in summary_lower:
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
def save_post_to_inbox_queue(base_dir: str, http_prefix: str,
|
def save_post_to_inbox_queue(base_dir: str, http_prefix: str,
|
||||||
nickname: str, domain: str,
|
nickname: str, domain: str,
|
||||||
post_json_object: {},
|
post_json_object: {},
|
||||||
|
@ -655,6 +671,13 @@ def save_post_to_inbox_queue(base_dir: str, http_prefix: str,
|
||||||
if debug:
|
if debug:
|
||||||
print('WARN: post was filtered out due to content')
|
print('WARN: post was filtered out due to content')
|
||||||
return None
|
return None
|
||||||
|
if summary_str:
|
||||||
|
if _reject_twitter_summary(base_dir, nickname, domain,
|
||||||
|
summary_str):
|
||||||
|
if debug:
|
||||||
|
print('WARN: post was filtered out due to ' +
|
||||||
|
'twitter content')
|
||||||
|
return None
|
||||||
|
|
||||||
original_post_id = None
|
original_post_id = None
|
||||||
if post_json_object.get('id'):
|
if post_json_object.get('id'):
|
||||||
|
|
12
tests.py
12
tests.py
|
@ -838,8 +838,9 @@ def create_server_alice(path: str, domain: str, port: int,
|
||||||
crawlers_allowed = []
|
crawlers_allowed = []
|
||||||
check_actor_timeout = 2
|
check_actor_timeout = 2
|
||||||
preferred_podcast_formats = None
|
preferred_podcast_formats = None
|
||||||
|
clacks = None
|
||||||
print('Server running: Alice')
|
print('Server running: Alice')
|
||||||
run_daemon(preferred_podcast_formats,
|
run_daemon(clacks, preferred_podcast_formats,
|
||||||
check_actor_timeout,
|
check_actor_timeout,
|
||||||
crawlers_allowed,
|
crawlers_allowed,
|
||||||
dyslexic_font,
|
dyslexic_font,
|
||||||
|
@ -998,8 +999,9 @@ def create_server_bob(path: str, domain: str, port: int,
|
||||||
crawlers_allowed = []
|
crawlers_allowed = []
|
||||||
check_actor_timeout = 2
|
check_actor_timeout = 2
|
||||||
preferred_podcast_formats = None
|
preferred_podcast_formats = None
|
||||||
|
clacks = None
|
||||||
print('Server running: Bob')
|
print('Server running: Bob')
|
||||||
run_daemon(preferred_podcast_formats,
|
run_daemon(clacks, preferred_podcast_formats,
|
||||||
check_actor_timeout,
|
check_actor_timeout,
|
||||||
crawlers_allowed,
|
crawlers_allowed,
|
||||||
dyslexic_font,
|
dyslexic_font,
|
||||||
|
@ -1080,8 +1082,9 @@ def create_server_eve(path: str, domain: str, port: int, federation_list: [],
|
||||||
crawlers_allowed = []
|
crawlers_allowed = []
|
||||||
check_actor_timeout = 2
|
check_actor_timeout = 2
|
||||||
preferred_podcast_formats = None
|
preferred_podcast_formats = None
|
||||||
|
clacks = None
|
||||||
print('Server running: Eve')
|
print('Server running: Eve')
|
||||||
run_daemon(preferred_podcast_formats,
|
run_daemon(clacks, preferred_podcast_formats,
|
||||||
check_actor_timeout,
|
check_actor_timeout,
|
||||||
crawlers_allowed,
|
crawlers_allowed,
|
||||||
dyslexic_font,
|
dyslexic_font,
|
||||||
|
@ -1164,8 +1167,9 @@ def create_server_group(path: str, domain: str, port: int,
|
||||||
crawlers_allowed = []
|
crawlers_allowed = []
|
||||||
check_actor_timeout = 2
|
check_actor_timeout = 2
|
||||||
preferred_podcast_formats = None
|
preferred_podcast_formats = None
|
||||||
|
clacks = None
|
||||||
print('Server running: Group')
|
print('Server running: Group')
|
||||||
run_daemon(preferred_podcast_formats,
|
run_daemon(clacks, preferred_podcast_formats,
|
||||||
check_actor_timeout,
|
check_actor_timeout,
|
||||||
crawlers_allowed,
|
crawlers_allowed,
|
||||||
dyslexic_font,
|
dyslexic_font,
|
||||||
|
|
Loading…
Reference in New Issue