Compare commits

...

2 Commits

Author SHA1 Message Date
3d5aa298c9 Format Linux build script 2024-07-29 08:36:07 -07:00
950c052e3f Use local server instead of temporary file 2024-07-29 08:36:05 -07:00
2 changed files with 43 additions and 24 deletions

View File

@ -6,13 +6,21 @@ distName=navpoint-linux-$arch
rm -rf dist/$distName-bundle rm -rf dist/$distName-bundle
mkdir -p dist/$distName-bundle mkdir -p dist/$distName-bundle
pyinstaller -w -F --hidden-import tornado.web --add-data README.md:files --add-data GPL-3.0.txt:files --add-data CC-BY-SA-4.0.txt:files main.py pyinstaller --windowed --onefile \
--hidden-import tornado.web \
--add-data README.md:files \
--add-data GPL-3.0.txt:files \
--add-data CC-BY-SA-4.0.txt:files \
main.py
cp dist/main dist/$distName-standalone cp dist/main dist/$distName-standalone
mv dist/main dist/$distName-bundle/navpoint mv dist/main dist/$distName-bundle/navpoint
cp icon.png dist/$distName-bundle/navpoint.png cp icon.png dist/$distName-bundle/navpoint.png
cp GPL-3.0.txt CC-BY-SA-4.0.txt dist/$distName-bundle/ cp GPL-3.0.txt CC-BY-SA-4.0.txt dist/$distName-bundle/
pandoc -s --metadata "title=Navpoint Desktop" README.md | grep -v 'h1 id="navpoint-desktop"' > dist/$distName-bundle/README.html pandoc -s --metadata "title=Navpoint Desktop" README.md |
grep -v 'h1 id="navpoint-desktop"' \
> dist/$distName-bundle/README.html
cat > dist/$distName-bundle/navpoint.desktop << HERE cat > dist/$distName-bundle/navpoint.desktop << HERE
[Desktop Entry] [Desktop Entry]

View File

@ -1,30 +1,29 @@
import webbrowser import webbrowser
import tempfile import threading
import time
import os
import markdown import markdown
import tornado.ioloop
import tornado.web
import navpoint.fix_path import navpoint.fix_path
def about(): class AboutHandler(tornado.web.RequestHandler):
with open(navpoint.fix_path.fix_path("README.md")) as f: def get(self):
readme = markdown.markdown( with open(navpoint.fix_path.fix_path("README.md")) as f:
f.read() readme = markdown.markdown(
.replace("https://www.gnu.org/licenses/gpl-3.0.en.html", "#gpl") f.read()
.replace("https://creativecommons.org/licenses/by-sa/4.0/", "#cc") .replace("https://www.gnu.org/licenses/gpl-3.0.en.html", "#gpl")
) .replace(
"https://creativecommons.org/licenses/by-sa/4.0/", "#cc"
)
)
with open(navpoint.fix_path.fix_path("GPL-3.0.txt")) as f: with open(navpoint.fix_path.fix_path("GPL-3.0.txt")) as f:
gpl = f.read() gpl = f.read()
with open(navpoint.fix_path.fix_path("CC-BY-SA-4.0.txt")) as f: with open(navpoint.fix_path.fix_path("CC-BY-SA-4.0.txt")) as f:
cc = f.read() cc = f.read()
fd, name = tempfile.mkstemp(suffix=".html") self.write(
os.close(fd)
with open(name, "w") as f:
f.write(
f"""\ f"""\
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
@ -45,7 +44,19 @@ def about():
</html> </html>
""" """
) )
tornado.ioloop.IOLoop.instance().stop()
webbrowser.open(name)
time.sleep(5) # Give the browser time to open the file def _run():
os.remove(name) app = tornado.web.Application(
[
("/", AboutHandler),
]
)
app.listen(9999, address="127.0.0.1")
tornado.ioloop.IOLoop.instance().start()
def about():
threading.Thread(target=_run).start()
webbrowser.open("http://127.0.0.1:9999/")