diff --git a/build-terminfo b/build-terminfo index 8805803c3..db13fae8c 100755 --- a/build-terminfo +++ b/build-terminfo @@ -2,6 +2,8 @@ import os import sys +import shutil +import subprocess base = os.path.dirname(os.path.abspath(__file__)) os.chdir(base) @@ -13,4 +15,10 @@ with open('terminfo/kitty.terminfo', 'w') as f: f.write(generate_terminfo()) os.environ['TERMINFO'] = os.path.join(base, 'terminfo') -os.execvp('tic', 'tic terminfo/kitty.terminfo'.split()) +subprocess.check_call(['tic', 'terminfo/kitty.terminfo']) +# On OS X tic puts the compiled database into a different directory +try: + os.mkdir('terminfo/78') +except FileExistsError: + pass +shutil.copy2('terminfo/x/xterm-kitty', 'terminfo/78') diff --git a/setup.py b/setup.py index 7a31049fd..ceb63db51 100755 --- a/setup.py +++ b/setup.py @@ -217,15 +217,16 @@ def safe_makedirs(path): def package(args): # {{{ ddir = args.prefix libdir = os.path.join(ddir, 'lib', 'kitty') - terminfo_dir = os.path.join(ddir, 'share/terminfo/x') + terminfo_sdir = ('78' if isosx else 'x') + terminfo_dir = os.path.join(ddir, 'share/terminfo/' + terminfo_sdir) if os.path.exists(libdir): shutil.rmtree(libdir) - os.makedirs(os.path.join(libdir, 'terminfo/x')) + os.makedirs(os.path.join(libdir, 'terminfo/' + terminfo_sdir)) os.makedirs(os.path.join(libdir, 'logo')) safe_makedirs(terminfo_dir) shutil.copy2('__main__.py', libdir) shutil.copy2('terminfo/x/xterm-kitty', terminfo_dir) - shutil.copy2('terminfo/x/xterm-kitty', os.path.join(libdir, 'terminfo/x')) + shutil.copy2('terminfo/x/xterm-kitty', os.path.join(libdir, 'terminfo/' + terminfo_sdir)) shutil.copy2('logo/kitty.rgba', os.path.join(libdir, 'logo')) def src_ignore(parent, entries): diff --git a/terminfo/78/xterm-kitty b/terminfo/78/xterm-kitty new file mode 100644 index 000000000..4ca761612 Binary files /dev/null and b/terminfo/78/xterm-kitty differ