mirror of
https://github.com/kovidgoyal/kitty.git
synced 2024-11-15 07:04:31 +03:00
56 lines
1.5 KiB
Python
Executable File
56 lines
1.5 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
# vim:fileencoding=utf-8
|
|
# License: GPL v3 Copyright: 2017, Kovid Goyal <kovid at kovidgoyal.net>
|
|
|
|
import os
|
|
import shlex
|
|
import shutil
|
|
import subprocess
|
|
import sys
|
|
import tempfile
|
|
from contextlib import suppress
|
|
|
|
if False:
|
|
tarball = sys.argv[-1]
|
|
dest = os.path.expanduser('~/.local/kitty.app')
|
|
shutil.rmtree(dest, ignore_errors=True)
|
|
os.makedirs(dest)
|
|
os.chdir(dest)
|
|
dest = os.path.expanduser('~/.local/bin/kitty')
|
|
with suppress(OSError):
|
|
os.remove(dest)
|
|
with suppress(OSError):
|
|
os.makedirs(os.path.dirname(dest))
|
|
subprocess.check_call(['tar', 'xJf', tarball])
|
|
os.symlink(os.path.abspath('bin/kitty'), dest)
|
|
print('kitty installed to ~/.local/kitty.app')
|
|
|
|
|
|
# EOF_REMOTE
|
|
|
|
HOST = 'ubuntu'
|
|
|
|
base = os.path.dirname(os.path.abspath(__file__))
|
|
if True:
|
|
sys.path.insert(0, base)
|
|
from kitty.constants import str_version
|
|
|
|
tarball = f'kitty-{str_version}-x86_64.txz'
|
|
|
|
|
|
def run(what):
|
|
ret = subprocess.run(shlex.split(what))
|
|
if ret.returncode != 0:
|
|
raise SystemExit(ret.returncode)
|
|
|
|
|
|
with open(__file__, 'rb') as f:
|
|
script = f.read().decode('utf-8')
|
|
script = script[:script.find('# EOF_REMOTE')].replace('if False:', 'if True:', 1)
|
|
with tempfile.NamedTemporaryFile(prefix='install-tarball-', suffix='.py') as f:
|
|
run('python ../bypy linux program --dont-strip --compression-level=1')
|
|
f.write(script.encode('utf-8'))
|
|
f.flush()
|
|
run(f'scp bypy/b/linux/64/sw/dist/{tarball} {f.name} {HOST}:/tmp')
|
|
run(f'ssh {HOST} python /tmp/{os.path.basename(f.name)} /tmp/{tarball}')
|