tabby 는, Electron 계열 터미널 에뮬레이터 프로그램이다. 내가 쓰고 있는 거의 유일한 Electron 의 자손은 VS Code/Codium 인데, 이건 딱히 Electron 이란 생각이 잘 들지 않을 정도다. 다시 말하면, 내겐 Electron 에 관한 지식이 별로 없다.
Electron 이라해도, 보통은 제작진에서 리눅스용 꾸러미를 제공해주기 마련인데, tabby 는 특이하게도 아치리눅스용으로 .pacman 이라는, 다소 생소한 형식의 파일만 주고 있었다. 이게 도대체 뭐지??
검색을 해봐도 딱히 걸리는게 없다. 심지어 그건 pacman
용 파일이 아니라는 글까지 있었는데.. 아무튼, 간단히 줄이면, 이건 pacman 관리자의 PKGBUILD 파일을 위해 필요한 파일이다. 즉, 그냥 내려받아서 설치할 수 있는 게 아니라는 뜻이다.
그럼 어떻게 해야 하나?
찾아보니 AUR 이 있긴 하다. 다만, 여기는 관리가 활발하진 않은 모양이라, 최신판이 아닌 다소 예전(23년 1월)판을 설치하게 설정돼 있다.
그렇다고 최신판은 설치는 안될까?
된다. 살짝 손만 봐주면.
일단 git clone
하여 PKGBUILD 파일을 내려 받는다.
열어보면 이런 식으로 돼 있는데, 한군데(또는 두군데?)만 고쳐주면 최신판을 설치할 수 있다.
# Maintainer: Erde <erkkah@gmail.com> # Maintainer: Solomon Choina <shlomochoina@gmail.com> # Contributor: Solomon Choina <shlomochoina@gmail.com> pkgname=tabby-bin _pkgname=tabby pkgver=1.0.188 pkgrel=1 pkgdesc="Tabby (formerly Terminus) is a highly configurable terminal emulator, SSH and serial client for Windows, macOS and Linux" arch=('x86_64') url="https://github.com/Eugeny/tabby" license=('MIT') depends=('nodejs' 'alsa-lib' 'nss') optdepends=('gnome-keyring') provides=("tabby") conflicts=("tabby") replaces=('tabby') source=("tabby-${pkgver}-linux.pacman::$url/releases/download/v${pkgver}/${_pkgname}-${pkgver}-linux-x64.pacman") sha256sums=('08b5deb4ede070b40521c0b656ca28d92babaaa6630f1ee7aa566de1f93eb635') package() { cd "$srcdir/" tar -xvf tabby-${pkgver}-linux.pacman -C ${pkgdir} # Remove exsiting files rm -f ${pkgdir}/.PKGINFO ${pkgdir}/.MTREE ${pkgdir}/.INSTALL install -Dm755 /dev/stdin "$pkgdir"/usr/bin/$_pkgname <<END #!/usr/bin/bash /opt/Tabby/tabby chown root:root /opt/Tabby/chrome-sandbox chmod 4755 /opt/Tabby/chrome-sandox END }
살펴보면 사실 별거 하는게 없다. 압축 풀고(.pacman 파일은 압축이 돼 있다.), 적절한 디렉토리로 파일을 복사해주는 작업이 전부다.
따라서, pkgver 와 sha256sums 만 최신판으로 변경해주면 된다.
sha256sum??
이게 좀 웃긴게, 제작자는 .pacman 파일의 sha256sum 을 알려주고 있진 않다. 따라서, 일단 .pacman 파일을 수동으로 내려받은 뒤 sha256 키를 알아내고, 그걸 PKGBUILD 파일에 써놔야 하는데.. 그렇게 한다고 해도 무결성을 입증할 순 없다. 그저, 내가 받은 2개 파일이 동일하다는 증명이 될 뿐.
따라서, 그냥 sha256sums 행을 주석처리하는게 나을 듯 하다.
수정했으면 makepkg
로, pacman 꾸러미를 만들면 된다. 여기서 방법은 두가지.
sha256sum 을 산출하여 PKGBUILD 에 넣어줬다면 그냥 makepkg
, 주석처리하여 건너뛰었다면 makepkg --skipchecksums
을 실행한다.
꾸러미(.zst)가 잘 생성됐다면, pacman -U <파일명>
으로 설치해주면 된다.