By using this site, you agree to have cookies stored on your device, strictly for functional purposes, such as storing your session and preferences.

Dismiss

 config.py

View raw Download
text/x-script.python • 4.12 kiB
Python script, ASCII text executable
        
            
1
import os
2
from dotenv import load_dotenv
3
load_dotenv("secrets.env")
4
5
DB_PASSWORD = os.environ.get("DB_PASSWORD")
6
7
REPOS_PATH = "./repos"
8
BASE_DOMAIN = "localhost"
9
10
HASHING_ROUNDS = 16
11
RESERVED_NAMES = ("git", "settings", "logout", "accounts",)
12
13
locking = False
14
15
folderIcon = "mdi:folder"
16
unknownIcon = "mdi:file"
17
fileIcons = {
18
"text/plain": "ic:baseline-text-snippet",
19
"text/css": "simple-icons:css3",
20
"text/csv": "mdi:table",
21
"text/html": "simple-icons:html5",
22
"text/calendar": "mdi:calendar",
23
"text/javascript": "simple-icons:javascript",
24
"text/xml": "mdi:xml",
25
"text/markdown": "simple-icons:markdown",
26
27
"application/octet-stream": "mdi:numeric-10-box",
28
"application/x-abiword": "mdi:file-document",
29
"application/x-msword": "mdi:file-document",
30
"application/vnd.openxmlformats-officedocument.wordprocessingml.document": "mdi:file-document",
31
"application/vnd.oasis.opendocument.text": "mdi:file-document",
32
"application/rtf": "mdi:file-document",
33
"application/x-dvi": "mdi:file-document",
34
"application/epub+zip": "mdi:book-open-variant",
35
"application/pdf": "mdi:book-open-variant",
36
"application/x-freearc": "mdi:archive",
37
"application/x-bzip": "mdi:archive",
38
"application/x-bzip2": "mdi:archive",
39
"application/gzip": "mdi:archive",
40
"application/x-tar": "mdi:archive",
41
"application/zip": "mdi:archive",
42
"application/x-7z-compressed": "mdi:archive",
43
"application/vnd.rar": "mdi:archive",
44
"application/x-rar-compressed": "mdi:archive",
45
"application/java-archive": "simple-icons:openjdk",
46
"application/vnd.amazon.ebook": "mdi:cellphone-text",
47
"application/x-cdf": "mdi:disc-player",
48
"application/x-csh": "ic:baseline-terminal",
49
"application/x-sh": "ic:baseline-terminal",
50
"application/xml": "mdi:xml",
51
"application/json": "mdi:code-json",
52
"application/ld+json": "mdi:code-json",
53
"application/vnd.apple.installer+xml": "simple-icons:apple",
54
"application/vnd.oasis.opendocument.presentation": "mdi:presentation",
55
"application/vnd.ms-powerpoint": "mdi:presentation",
56
"application/vnd.openxmlformats-officedocument.presentationml.presentation": "mdi:presentation",
57
"application/vnd.oasis.opendocument.spreadsheet": "mdi:table-large",
58
"application/vnd.ms-excel": "mdi:table-large",
59
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "mdi:table-large",
60
"application/x-httpd-php": "mdi:server",
61
"application/xhtml+xml": "simple-icons:html5",
62
"application/vnd.android.package-archive": "bi:android2",
63
"application/x-x509-ca-cert": "mdi:certificate",
64
"application/x-shockwave-flash": "simple-icons:adobe",
65
"application/font-woff": "mdi:format-text",
66
"application/x-font-truetype": "mdi:format-text",
67
"application/x-font-opentype": "mdi:format-text",
68
"application/vnd.ms-fontobject": "mdi:format-text",
69
70
"audio/aac": "mdi:music",
71
"audio/mp3": "mdi:music",
72
"audio/ogg": "mdi:music",
73
"audio/opus": "mdi:music",
74
"audio/wav": "mdi:music",
75
"audio/webm": "mdi:music",
76
"audio/3gpp": "mdi:music",
77
"audio/3gpp2": "mdi:music",
78
"audio/midi": "mdi:piano",
79
"audio/x-midi": "mdi:piano",
80
"audio/flac": "mdi:music",
81
"audio/x-ms-wma": "mdi:music",
82
83
"image/avif": "mdi:image",
84
"image/jpeg": "mdi:image",
85
"image/png": "mdi:image",
86
"image/tiff": "mdi:image",
87
"image/webp": "mdi:image",
88
"image/gif": "mdi:image-multiple",
89
"image/vnd.microsoft.icon": "mdi:bookmark-multiple",
90
"image/x-icon": "simple-icons:windowsxp",
91
"image/bmp": "mdi:brush",
92
"image/svg+xml": "mdi:vector-curve",
93
94
"video/mp4": "mdi:video",
95
"video/mpeg": "mdi:video",
96
"video/ogg": "mdi:video",
97
"video/webm": "mdi:video",
98
"video/3gpp": "mdi:video",
99
"video/3gpp2": "mdi:video",
100
"video/x-flv": "mdi:video",
101
"video/mp2t": "ic:baseline-live-tv",
102
"video/x-msvideo": "mdi:video-vintage",
103
}
104
105
106
def matchIcon(name):
107
if name.startswith(("LICENCE", "LICENSE", "COPYING")):
108
return "ic:gavel"
109
if name.startswith("README"):
110
return "mdi:book-information-variant"
111
if name.startswith(".gitignore"):
112
return "simple-icons:git"
113