From 9e18f26aeb1953d5b5c9ceec512793e847e5115c Mon Sep 17 00:00:00 2001 From: Franciszek Stachura Date: Fri, 16 Aug 2024 22:56:15 +0200 Subject: [PATCH] Restructure Elixir to avoid Python path hacks * Move static files from http to a new directory --- elixir/__init__.py | 0 {http => elixir}/api.py | 7 +--- {http => elixir}/autocomplete.py | 9 +--- data.py => elixir/data.py | 2 +- {http => elixir}/filters/__init__.py | 0 {http => elixir}/filters/configin.py | 2 +- {http => elixir}/filters/cppinc.py | 2 +- {http => elixir}/filters/cpppathinc.py | 2 +- {http => elixir}/filters/defconfig.py | 2 +- {http => elixir}/filters/dtscompcode.py | 2 +- {http => elixir}/filters/dtscompdocs.py | 2 +- {http => elixir}/filters/dtscompdts.py | 2 +- {http => elixir}/filters/dtsi.py | 2 +- {http => elixir}/filters/ident.py | 2 +- {http => elixir}/filters/kconfig.py | 2 +- {http => elixir}/filters/kconfigidents.py | 2 +- {http => elixir}/filters/makefiledir.py | 2 +- {http => elixir}/filters/makefiledtb.py | 2 +- {http => elixir}/filters/makefilefile.py | 2 +- {http => elixir}/filters/makefileo.py | 2 +- {http => elixir}/filters/makefilesrctree.py | 2 +- {http => elixir}/filters/makefilesubdir.py | 2 +- {http => elixir}/filters/projects.py | 0 {http => elixir}/filters/utils.py | 2 +- lib.py => elixir/lib.py | 2 +- query.py => elixir/query.py | 6 +-- {http => elixir}/web.py | 24 ++++------- find_compatible_dts.py | 2 +- http/fonts.css | 39 ------------------ {http => static}/autocomplete.css | 0 {http => static}/autocomplete.js | 0 {http => static}/banner.css | 0 {http => static}/dynamic-references.js | 0 static/fonts.css | 39 ++++++++++++++++++ {http => static}/fonts/lxr.svg | 0 {http => static}/fonts/lxr.ttf | Bin {http => static}/fonts/ubuntu/LICENCE-FAQ.txt | 0 {http => static}/fonts/ubuntu/LICENCE.txt | 0 {http => static}/fonts/ubuntu/copyright.txt | 0 ...n_latin-ext_greek-ext_cyrillic-ext-700.eot | Bin ...n_latin-ext_greek-ext_cyrillic-ext-700.svg | 0 ...n_latin-ext_greek-ext_cyrillic-ext-700.ttf | Bin ..._latin-ext_greek-ext_cyrillic-ext-700.woff | Bin ...latin-ext_greek-ext_cyrillic-ext-700.woff2 | Bin ...atin-ext_greek-ext_cyrillic-ext-italic.eot | Bin ...atin-ext_greek-ext_cyrillic-ext-italic.svg | 0 ...atin-ext_greek-ext_cyrillic-ext-italic.ttf | Bin ...tin-ext_greek-ext_cyrillic-ext-italic.woff | Bin ...in-ext_greek-ext_cyrillic-ext-italic.woff2 | Bin ...tin-ext_greek-ext_cyrillic-ext-regular.eot | Bin ...tin-ext_greek-ext_cyrillic-ext-regular.svg | 0 ...tin-ext_greek-ext_cyrillic-ext-regular.ttf | Bin ...in-ext_greek-ext_cyrillic-ext-regular.woff | Bin ...n-ext_greek-ext_cyrillic-ext-regular.woff2 | Bin {http => static}/header.css | 2 +- {http => static}/img/2penguins.svg | 0 {http => static}/img/arrow-dropdown-16.svg | 0 {http => static}/script.js | 0 {http => static}/style.css | 6 +-- templates/header.html | 4 +- templates/layout.html | 12 +++--- update.py | 8 ++-- wsgi.py | 1 + 63 files changed, 90 insertions(+), 109 deletions(-) create mode 100755 elixir/__init__.py rename {http => elixir}/api.py (92%) rename {http => elixir}/autocomplete.py (93%) rename data.py => elixir/data.py (99%) rename {http => elixir}/filters/__init__.py (100%) mode change 100644 => 100755 rename {http => elixir}/filters/configin.py (91%) mode change 100644 => 100755 rename {http => elixir}/filters/cppinc.py (92%) mode change 100644 => 100755 rename {http => elixir}/filters/cpppathinc.py (94%) mode change 100644 => 100755 rename {http => elixir}/filters/defconfig.py (92%) mode change 100644 => 100755 rename {http => elixir}/filters/dtscompcode.py (94%) mode change 100644 => 100755 rename {http => elixir}/filters/dtscompdocs.py (95%) mode change 100644 => 100755 rename {http => elixir}/filters/dtscompdts.py (93%) mode change 100644 => 100755 rename {http => elixir}/filters/dtsi.py (92%) mode change 100644 => 100755 rename {http => elixir}/filters/ident.py (94%) mode change 100644 => 100755 rename {http => elixir}/filters/kconfig.py (91%) mode change 100644 => 100755 rename {http => elixir}/filters/kconfigidents.py (94%) mode change 100644 => 100755 rename {http => elixir}/filters/makefiledir.py (93%) mode change 100644 => 100755 rename {http => elixir}/filters/makefiledtb.py (92%) mode change 100644 => 100755 rename {http => elixir}/filters/makefilefile.py (93%) mode change 100644 => 100755 rename {http => elixir}/filters/makefileo.py (92%) mode change 100644 => 100755 rename {http => elixir}/filters/makefilesrctree.py (92%) mode change 100644 => 100755 rename {http => elixir}/filters/makefilesubdir.py (93%) mode change 100644 => 100755 rename {http => elixir}/filters/projects.py (100%) mode change 100644 => 100755 rename {http => elixir}/filters/utils.py (99%) mode change 100644 => 100755 rename lib.py => elixir/lib.py (98%) rename query.py => elixir/query.py (99%) rename {http => elixir}/web.py (97%) delete mode 100644 http/fonts.css rename {http => static}/autocomplete.css (100%) rename {http => static}/autocomplete.js (100%) rename {http => static}/banner.css (100%) rename {http => static}/dynamic-references.js (100%) create mode 100644 static/fonts.css rename {http => static}/fonts/lxr.svg (100%) rename {http => static}/fonts/lxr.ttf (100%) rename {http => static}/fonts/ubuntu/LICENCE-FAQ.txt (100%) rename {http => static}/fonts/ubuntu/LICENCE.txt (100%) rename {http => static}/fonts/ubuntu/copyright.txt (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.svg (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.ttf (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff2 (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.svg (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.ttf (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff2 (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.svg (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.ttf (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff (100%) rename {http => static}/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff2 (100%) rename {http => static}/header.css (97%) rename {http => static}/img/2penguins.svg (100%) rename {http => static}/img/arrow-dropdown-16.svg (100%) rename {http => static}/script.js (100%) rename {http => static}/style.css (99%) create mode 100755 wsgi.py diff --git a/elixir/__init__.py b/elixir/__init__.py new file mode 100755 index 0000000..e69de29 diff --git a/http/api.py b/elixir/api.py similarity index 92% rename from http/api.py rename to elixir/api.py index b95849b..19e5825 100755 --- a/http/api.py +++ b/elixir/api.py @@ -24,12 +24,7 @@ import falcon from urllib import parse import sys -ELIXIR_DIR = os.path.dirname(os.path.realpath(__file__)) + '/..' - -if ELIXIR_DIR not in sys.path: - sys.path = [ ELIXIR_DIR ] + sys.path - -from query import get_query +from .query import get_query class ApiIdentGetterResource: def on_get(self, req, resp, project, ident): diff --git a/http/autocomplete.py b/elixir/autocomplete.py similarity index 93% rename from http/autocomplete.py rename to elixir/autocomplete.py index 5f95dd0..31568c7 100755 --- a/http/autocomplete.py +++ b/elixir/autocomplete.py @@ -25,13 +25,8 @@ from urllib import parse from bsddb3.db import DB_SET_RANGE import falcon -ELIXIR_DIR = os.path.dirname(os.path.realpath(__file__)) + '/..' - -if ELIXIR_DIR not in sys.path: - sys.path = [ ELIXIR_DIR ] + sys.path - -from lib import autoBytes -from query import get_query +from .lib import autoBytes +from .query import get_query class AutocompleteResource: def on_get(self, req, resp): diff --git a/data.py b/elixir/data.py similarity index 99% rename from data.py rename to elixir/data.py index 3cf3e67..7e8c3ed 100755 --- a/data.py +++ b/elixir/data.py @@ -20,7 +20,7 @@ import bsddb3 import re -from lib import autoBytes +from .lib import autoBytes import os import os.path import errno diff --git a/http/filters/__init__.py b/elixir/filters/__init__.py old mode 100644 new mode 100755 similarity index 100% rename from http/filters/__init__.py rename to elixir/filters/__init__.py diff --git a/http/filters/configin.py b/elixir/filters/configin.py old mode 100644 new mode 100755 similarity index 91% rename from http/filters/configin.py rename to elixir/filters/configin.py index ee6af99..fa765a2 --- a/http/filters/configin.py +++ b/elixir/filters/configin.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches # Filters for Config.in includes # source "path/file" diff --git a/http/filters/cppinc.py b/elixir/filters/cppinc.py old mode 100644 new mode 100755 similarity index 92% rename from http/filters/cppinc.py rename to elixir/filters/cppinc.py index 35df338..c4ffab9 --- a/http/filters/cppinc.py +++ b/elixir/filters/cppinc.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number, extension_matches +from .utils import Filter, FilterContext, encode_number, decode_number, extension_matches # Filters for cpp includes like these: # #include "file" diff --git a/http/filters/cpppathinc.py b/elixir/filters/cpppathinc.py old mode 100644 new mode 100755 similarity index 94% rename from http/filters/cpppathinc.py rename to elixir/filters/cpppathinc.py index c09416b..6d3c48c --- a/http/filters/cpppathinc.py +++ b/elixir/filters/cpppathinc.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number, extension_matches +from .utils import Filter, FilterContext, encode_number, decode_number, extension_matches # Filters for cpp includes like these: # #include diff --git a/http/filters/defconfig.py b/elixir/filters/defconfig.py old mode 100644 new mode 100755 similarity index 92% rename from http/filters/defconfig.py rename to elixir/filters/defconfig.py index 1e9c25c..e1c6ee7 --- a/http/filters/defconfig.py +++ b/elixir/filters/defconfig.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number, extension_matches +from .utils import Filter, FilterContext, encode_number, decode_number, extension_matches # Filter for kconfig identifier in defconfigs # Replaces defconfig identifiers with links to definitions/references diff --git a/http/filters/dtscompcode.py b/elixir/filters/dtscompcode.py old mode 100644 new mode 100755 similarity index 94% rename from http/filters/dtscompcode.py rename to elixir/filters/dtscompcode.py index b69ef91..c9c4a5b --- a/http/filters/dtscompcode.py +++ b/elixir/filters/dtscompcode.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number, extension_matches +from .utils import Filter, FilterContext, encode_number, decode_number, extension_matches # Filter for DT compatible strings in code (C family) files # Finds assigments to properties and variables named 'compatible' and recognized by the Query.query('file') diff --git a/http/filters/dtscompdocs.py b/elixir/filters/dtscompdocs.py old mode 100644 new mode 100755 similarity index 95% rename from http/filters/dtscompdocs.py rename to elixir/filters/dtscompdocs.py index 9122e13..21b8834 --- a/http/filters/dtscompdocs.py +++ b/elixir/filters/dtscompdocs.py @@ -1,6 +1,6 @@ import re from urllib.parse import quote -from filters.utils import Filter, FilterContext, encode_number, decode_number +from .utils import Filter, FilterContext, encode_number, decode_number # Filter for DT compatible strings in documentation (B family) files # syscon diff --git a/http/filters/dtscompdts.py b/elixir/filters/dtscompdts.py old mode 100644 new mode 100755 similarity index 93% rename from http/filters/dtscompdts.py rename to elixir/filters/dtscompdts.py index 3482cc6..19712e9 --- a/http/filters/dtscompdts.py +++ b/elixir/filters/dtscompdts.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number, extension_matches +from .utils import Filter, FilterContext, encode_number, decode_number, extension_matches # Filter for DT compatible strings in DTS (D family) files # compatible = "device" diff --git a/http/filters/dtsi.py b/elixir/filters/dtsi.py old mode 100644 new mode 100755 similarity index 92% rename from http/filters/dtsi.py rename to elixir/filters/dtsi.py index f2647dd..1ef3fba --- a/http/filters/dtsi.py +++ b/elixir/filters/dtsi.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number, extension_matches +from .utils import Filter, FilterContext, encode_number, decode_number, extension_matches # Filters for dts includes as follows: # Replaces include directives in dts/dtsi files with links to source diff --git a/http/filters/ident.py b/elixir/filters/ident.py old mode 100644 new mode 100755 similarity index 94% rename from http/filters/ident.py rename to elixir/filters/ident.py index 0b4c245..cef37bd --- a/http/filters/ident.py +++ b/elixir/filters/ident.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number +from .utils import Filter, FilterContext, encode_number, decode_number # Filter for identifier links # Replaces identifiers marked by Query.query('file') with links to ident page. diff --git a/http/filters/kconfig.py b/elixir/filters/kconfig.py old mode 100644 new mode 100755 similarity index 91% rename from http/filters/kconfig.py rename to elixir/filters/kconfig.py index 910207c..f21dee3 --- a/http/filters/kconfig.py +++ b/elixir/filters/kconfig.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, encode_number, decode_number, filename_without_ext_matches # Filters for Kconfig includes # Replaces KConfig includes (source keyword) with links to included files diff --git a/http/filters/kconfigidents.py b/elixir/filters/kconfigidents.py old mode 100644 new mode 100755 similarity index 94% rename from http/filters/kconfigidents.py rename to elixir/filters/kconfigidents.py index f2b9ca2..16564a1 --- a/http/filters/kconfigidents.py +++ b/elixir/filters/kconfigidents.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, encode_number, decode_number +from .utils import Filter, FilterContext, encode_number, decode_number # Filter for kconfig identifier links # Replaces KConfig identifiers with links to definitions and references diff --git a/http/filters/makefiledir.py b/elixir/filters/makefiledir.py old mode 100644 new mode 100755 similarity index 93% rename from http/filters/makefiledir.py rename to elixir/filters/makefiledir.py index ff6e805..77a7e42 --- a/http/filters/makefiledir.py +++ b/elixir/filters/makefiledir.py @@ -1,6 +1,6 @@ from os.path import dirname import re -from filters.utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches # Filters for Makefile directory includes as follows: # obj-$(VALUE) += dir/ diff --git a/http/filters/makefiledtb.py b/elixir/filters/makefiledtb.py old mode 100644 new mode 100755 similarity index 92% rename from http/filters/makefiledtb.py rename to elixir/filters/makefiledtb.py index 89046aa..a7fa416 --- a/http/filters/makefiledtb.py +++ b/elixir/filters/makefiledtb.py @@ -1,6 +1,6 @@ from os.path import dirname import re -from filters.utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches # Filters for Makefile file includes like these: # dtb-y += file.dtb diff --git a/http/filters/makefilefile.py b/elixir/filters/makefilefile.py old mode 100644 new mode 100755 similarity index 93% rename from http/filters/makefilefile.py rename to elixir/filters/makefilefile.py index bfc2b8b..5cc27b0 --- a/http/filters/makefilefile.py +++ b/elixir/filters/makefilefile.py @@ -1,6 +1,6 @@ from os.path import dirname import re -from filters.utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches # Filters for files listed in Makefiles # path/file diff --git a/http/filters/makefileo.py b/elixir/filters/makefileo.py old mode 100644 new mode 100755 similarity index 92% rename from http/filters/makefileo.py rename to elixir/filters/makefileo.py index 0cd00f3..6c8f0fe --- a/http/filters/makefileo.py +++ b/elixir/filters/makefileo.py @@ -1,6 +1,6 @@ from os.path import dirname import re -from filters.utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches # Filters for Makefile file includes like these: # file.o diff --git a/http/filters/makefilesrctree.py b/elixir/filters/makefilesrctree.py old mode 100644 new mode 100755 similarity index 92% rename from http/filters/makefilesrctree.py rename to elixir/filters/makefilesrctree.py index 9394f4f..d9caf00 --- a/http/filters/makefilesrctree.py +++ b/elixir/filters/makefilesrctree.py @@ -1,5 +1,5 @@ import re -from filters.utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches # Filters for files listed in Makefiles using $(srctree) # $(srctree)/Makefile diff --git a/http/filters/makefilesubdir.py b/elixir/filters/makefilesubdir.py old mode 100644 new mode 100755 similarity index 93% rename from http/filters/makefilesubdir.py rename to elixir/filters/makefilesubdir.py index 72abf54..e4c6777 --- a/http/filters/makefilesubdir.py +++ b/elixir/filters/makefilesubdir.py @@ -1,6 +1,6 @@ from os.path import dirname import re -from filters.utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches +from .utils import Filter, FilterContext, decode_number, encode_number, filename_without_ext_matches # Filters for Makefile directory includes as follows: # subdir-y += dir diff --git a/http/filters/projects.py b/elixir/filters/projects.py old mode 100644 new mode 100755 similarity index 100% rename from http/filters/projects.py rename to elixir/filters/projects.py diff --git a/http/filters/utils.py b/elixir/filters/utils.py old mode 100644 new mode 100755 similarity index 99% rename from http/filters/utils.py rename to elixir/filters/utils.py index 52dd2f2..83a70c2 --- a/http/filters/utils.py +++ b/elixir/filters/utils.py @@ -2,7 +2,7 @@ import re import os from dataclasses import dataclass from typing import Callable, List -from query import Query +from ..query import Query # Context data used by Filters # tag: browsed version, unqoted diff --git a/lib.py b/elixir/lib.py similarity index 98% rename from lib.py rename to elixir/lib.py index 3aa245e..8211e27 100755 --- a/lib.py +++ b/elixir/lib.py @@ -20,7 +20,7 @@ import subprocess, os -CURRENT_DIR = os.path.dirname(os.path.abspath(__file__)) +CURRENT_DIR = os.path.abspath(os.path.dirname(os.path.abspath(__file__)) + '/..') def script(*args, env=None): args = (os.path.join(CURRENT_DIR, 'script.sh'),) + args diff --git a/query.py b/elixir/query.py similarity index 99% rename from query.py rename to elixir/query.py index b99b744..7676b8a 100755 --- a/query.py +++ b/elixir/query.py @@ -18,9 +18,9 @@ # You should have received a copy of the GNU Affero General Public License # along with Elixir. If not, see . -from lib import script, scriptLines, decode -import lib -import data +from .lib import script, scriptLines, decode +from . import lib +from . import data import os from collections import OrderedDict from urllib import parse diff --git a/http/web.py b/elixir/web.py similarity index 97% rename from http/web.py rename to elixir/web.py index a4a7c57..d324f0b 100755 --- a/http/web.py +++ b/elixir/web.py @@ -28,23 +28,13 @@ from urllib import parse import falcon import jinja2 -ELIXIR_DIR = os.path.dirname(os.path.realpath(__file__)) + '/..' - -if ELIXIR_DIR not in sys.path: - sys.path = [ ELIXIR_DIR ] + sys.path - -HTTP_DIR = os.path.dirname(os.path.realpath(__file__)) - -if HTTP_DIR not in sys.path: - sys.path = [ HTTP_DIR ] + sys.path - -from lib import validFamily -from query import Query, SymbolInstance -from filters import get_filters -from filters.utils import FilterContext -from autocomplete import AutocompleteResource -from api import ApiIdentGetterResource -from query import get_query +from .lib import validFamily +from .query import Query, SymbolInstance +from .filters import get_filters +from .filters.utils import FilterContext +from .autocomplete import AutocompleteResource +from .api import ApiIdentGetterResource +from .query import get_query # Generated a Elixir error page def get_error_page(ctx, title, details=None): diff --git a/find_compatible_dts.py b/find_compatible_dts.py index 8baa165..8aec94d 100755 --- a/find_compatible_dts.py +++ b/find_compatible_dts.py @@ -20,7 +20,7 @@ import re from urllib import parse -from lib import decode +from elixir.lib import decode class FindCompatibleDTS: def __init__(self): diff --git a/http/fonts.css b/http/fonts.css deleted file mode 100644 index eafd55d..0000000 --- a/http/fonts.css +++ /dev/null @@ -1,39 +0,0 @@ -/* ubuntu-regular - cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext */ -@font-face { - font-family: 'Ubuntu'; - font-style: normal; - font-weight: 400; - src: url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot'); /* IE9 Compat Modes */ - src: local('Ubuntu Regular'), local('Ubuntu-Regular'), - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff2') format('woff2'), /* Super Modern Browsers */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff') format('woff'), /* Modern Browsers */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.ttf') format('truetype'), /* Safari, Android, iOS */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.svg#Ubuntu') format('svg'); /* Legacy iOS */ -} -/* ubuntu-italic - cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext */ -@font-face { - font-family: 'Ubuntu'; - font-style: italic; - font-weight: 400; - src: url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot'); /* IE9 Compat Modes */ - src: local('Ubuntu Italic'), local('Ubuntu-Italic'), - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff2') format('woff2'), /* Super Modern Browsers */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff') format('woff'), /* Modern Browsers */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.ttf') format('truetype'), /* Safari, Android, iOS */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.svg#Ubuntu') format('svg'); /* Legacy iOS */ -} -/* ubuntu-700 - cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext */ -@font-face { - font-family: 'Ubuntu'; - font-style: normal; - font-weight: 700; - src: url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot'); /* IE9 Compat Modes */ - src: local('Ubuntu Bold'), local('Ubuntu-Bold'), - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff2') format('woff2'), /* Super Modern Browsers */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff') format('woff'), /* Modern Browsers */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.ttf') format('truetype'), /* Safari, Android, iOS */ - url('/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.svg#Ubuntu') format('svg'); /* Legacy iOS */ -} diff --git a/http/autocomplete.css b/static/autocomplete.css similarity index 100% rename from http/autocomplete.css rename to static/autocomplete.css diff --git a/http/autocomplete.js b/static/autocomplete.js similarity index 100% rename from http/autocomplete.js rename to static/autocomplete.js diff --git a/http/banner.css b/static/banner.css similarity index 100% rename from http/banner.css rename to static/banner.css diff --git a/http/dynamic-references.js b/static/dynamic-references.js similarity index 100% rename from http/dynamic-references.js rename to static/dynamic-references.js diff --git a/static/fonts.css b/static/fonts.css new file mode 100644 index 0000000..28bb1a3 --- /dev/null +++ b/static/fonts.css @@ -0,0 +1,39 @@ +/* ubuntu-regular - cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext */ +@font-face { + font-family: 'Ubuntu'; + font-style: normal; + font-weight: 400; + src: url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot'); /* IE9 Compat Modes */ + src: local('Ubuntu Regular'), local('Ubuntu-Regular'), + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff2') format('woff2'), /* Super Modern Browsers */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff') format('woff'), /* Modern Browsers */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.ttf') format('truetype'), /* Safari, Android, iOS */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.svg#Ubuntu') format('svg'); /* Legacy iOS */ +} +/* ubuntu-italic - cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext */ +@font-face { + font-family: 'Ubuntu'; + font-style: italic; + font-weight: 400; + src: url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot'); /* IE9 Compat Modes */ + src: local('Ubuntu Italic'), local('Ubuntu-Italic'), + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff2') format('woff2'), /* Super Modern Browsers */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff') format('woff'), /* Modern Browsers */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.ttf') format('truetype'), /* Safari, Android, iOS */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.svg#Ubuntu') format('svg'); /* Legacy iOS */ +} +/* ubuntu-700 - cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext */ +@font-face { + font-family: 'Ubuntu'; + font-style: normal; + font-weight: 700; + src: url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot'); /* IE9 Compat Modes */ + src: local('Ubuntu Bold'), local('Ubuntu-Bold'), + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff2') format('woff2'), /* Super Modern Browsers */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff') format('woff'), /* Modern Browsers */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.ttf') format('truetype'), /* Safari, Android, iOS */ + url('/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.svg#Ubuntu') format('svg'); /* Legacy iOS */ +} diff --git a/http/fonts/lxr.svg b/static/fonts/lxr.svg similarity index 100% rename from http/fonts/lxr.svg rename to static/fonts/lxr.svg diff --git a/http/fonts/lxr.ttf b/static/fonts/lxr.ttf similarity index 100% rename from http/fonts/lxr.ttf rename to static/fonts/lxr.ttf diff --git a/http/fonts/ubuntu/LICENCE-FAQ.txt b/static/fonts/ubuntu/LICENCE-FAQ.txt similarity index 100% rename from http/fonts/ubuntu/LICENCE-FAQ.txt rename to static/fonts/ubuntu/LICENCE-FAQ.txt diff --git a/http/fonts/ubuntu/LICENCE.txt b/static/fonts/ubuntu/LICENCE.txt similarity index 100% rename from http/fonts/ubuntu/LICENCE.txt rename to static/fonts/ubuntu/LICENCE.txt diff --git a/http/fonts/ubuntu/copyright.txt b/static/fonts/ubuntu/copyright.txt similarity index 100% rename from http/fonts/ubuntu/copyright.txt rename to static/fonts/ubuntu/copyright.txt diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.eot diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.svg b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.svg similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.svg rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.svg diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.ttf b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.ttf similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.ttf rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.ttf diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff2 b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff2 similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff2 rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-700.woff2 diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.eot diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.svg b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.svg similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.svg rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.svg diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.ttf b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.ttf similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.ttf rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.ttf diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff2 b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff2 similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff2 rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-italic.woff2 diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.eot diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.svg b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.svg similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.svg rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.svg diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.ttf b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.ttf similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.ttf rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.ttf diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff diff --git a/http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff2 b/static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff2 similarity index 100% rename from http/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff2 rename to static/fonts/ubuntu/ubuntu-v14-cyrillic_greek_latin_latin-ext_greek-ext_cyrillic-ext-regular.woff2 diff --git a/http/header.css b/static/header.css similarity index 97% rename from http/header.css rename to static/header.css index 84c6569..dddff54 100644 --- a/http/header.css +++ b/static/header.css @@ -1,7 +1,7 @@ .header { height: 200px; background: #6D7DD2; - background-image: url('/img/2penguins.svg'); + background-image: url('/static/img/2penguins.svg'); background-repeat: no-repeat; background-size: 300px; background-position: bottom -82px right; diff --git a/http/img/2penguins.svg b/static/img/2penguins.svg similarity index 100% rename from http/img/2penguins.svg rename to static/img/2penguins.svg diff --git a/http/img/arrow-dropdown-16.svg b/static/img/arrow-dropdown-16.svg similarity index 100% rename from http/img/arrow-dropdown-16.svg rename to static/img/arrow-dropdown-16.svg diff --git a/http/script.js b/static/script.js similarity index 100% rename from http/script.js rename to static/script.js diff --git a/http/style.css b/static/style.css similarity index 99% rename from http/style.css rename to static/style.css index 541348b..2c354d9 100644 --- a/http/style.css +++ b/static/style.css @@ -288,7 +288,7 @@ h2 { text-decoration: none; background-color: #aaa; - background-image: url("/img/arrow-dropdown-16.svg"); + background-image: url("/static/img/arrow-dropdown-16.svg"); background-position: right 2px center; background-repeat: no-repeat; @@ -810,8 +810,8 @@ h2 { @font-face { font-family: "lxr"; - src: url("/fonts/lxr.svg") format("svg"), - url("/fonts/lxr.ttf") format("truetype"); + src: url("/static/fonts/lxr.svg") format("svg"), + url("/static/fonts/lxr.ttf") format("truetype"); font-weight: normal; font-style: normal; } diff --git a/templates/header.html b/templates/header.html index 3b0bedc..0b3ae34 100644 --- a/templates/header.html +++ b/templates/header.html @@ -12,9 +12,9 @@

- + - Bootlin logo + Bootlin logo

Elixir Cross Referencer

diff --git a/templates/layout.html b/templates/layout.html index 16d325f..a67cc21 100644 --- a/templates/layout.html +++ b/templates/layout.html @@ -14,9 +14,9 @@ Elixir Cross Referencer - Explore source code in your browser - Particularly useful for the Linux kernel and other low-level projects in C/C++ (bootloaders, C libraries...) {%- endblock %}"> - - - + + + @@ -48,8 +48,8 @@ powered by Elixir 2.2 - - - + + + diff --git a/update.py b/update.py index ae662f9..3b8fee7 100755 --- a/update.py +++ b/update.py @@ -25,10 +25,10 @@ from sys import argv from threading import Thread, Lock, Event, Condition -import lib -from lib import script, scriptLines -import data -from data import PathList +import elixir.lib as lib +from elixir.lib import script, scriptLines +import elixir.data as data +from elixir.data import PathList from find_compatible_dts import FindCompatibleDTS verbose = False diff --git a/wsgi.py b/wsgi.py new file mode 100755 index 0000000..3b2620c --- /dev/null +++ b/wsgi.py @@ -0,0 +1 @@ +from elixir.web import application