Merge pull request #462 from omacom/feat/ghostty-x86_64
Build Ghostty for x86_64 with pinned Zig toolchain
This commit is contained in:
2 files changed
+28
-9
No files matched your search
@@ -1,15 +1,15 @@
|
|||||||
# Ghostty for aarch64, built from the upstream release source tarball.
|
# Ghostty for x86_64 and aarch64, built from the upstream release source tarball.
|
||||||
#
|
#
|
||||||
# Ghostty 1.3.x requires Zig 0.15.2 exactly. Arch Linux ARM currently ships
|
# Ghostty 1.3.x requires Zig 0.15.2 exactly. Distribution toolchains can move
|
||||||
# newer Zig releases, so use the verified upstream aarch64 toolchain only at
|
# ahead, so use the verified upstream toolchain for each architecture only at
|
||||||
# package-build time rather than publishing a second Zig package.
|
# package-build time rather than publishing a second Zig package.
|
||||||
|
|
||||||
pkgbase=ghostty
|
pkgbase=ghostty
|
||||||
pkgname=(ghostty ghostty-shell-integration ghostty-terminfo ghostty-nautilus)
|
pkgname=(ghostty ghostty-shell-integration ghostty-terminfo ghostty-nautilus)
|
||||||
pkgver=1.3.1
|
pkgver=1.3.1
|
||||||
pkgrel=1
|
pkgrel=3
|
||||||
pkgdesc='Fast, native, feature-rich terminal emulator pushing modern features'
|
pkgdesc='Fast, native, feature-rich terminal emulator pushing modern features'
|
||||||
arch=(aarch64)
|
arch=(x86_64 aarch64)
|
||||||
url='https://github.com/ghostty-org/ghostty'
|
url='https://github.com/ghostty-org/ghostty'
|
||||||
license=(MIT)
|
license=(MIT)
|
||||||
depends=(
|
depends=(
|
||||||
@@ -38,16 +38,25 @@ _zigver=0.15.2
|
|||||||
_archive="$pkgbase-$pkgver"
|
_archive="$pkgbase-$pkgver"
|
||||||
source=(
|
source=(
|
||||||
"https://release.files.ghostty.org/$pkgver/$_archive.tar.gz"
|
"https://release.files.ghostty.org/$pkgver/$_archive.tar.gz"
|
||||||
"https://ziglang.org/download/$_zigver/zig-aarch64-linux-$_zigver.tar.xz"
|
'build-data-llvm.patch'
|
||||||
)
|
)
|
||||||
sha256sums=(
|
sha256sums=(
|
||||||
'3349d25600ffbda281197a18314f7d18791969cffe9474f0ff16a45a9ebfccdb'
|
'3349d25600ffbda281197a18314f7d18791969cffe9474f0ff16a45a9ebfccdb'
|
||||||
'958ed7d1e00d0ea76590d27666efbf7a932281b3d7ba0c6b01b0ff26498f667f'
|
'd9f5781b748651fa1ff7b919f4a79cd8570118faefe2848f64f02ea4220257ba'
|
||||||
)
|
)
|
||||||
|
source_x86_64=("https://ziglang.org/download/$_zigver/zig-x86_64-linux-$_zigver.tar.xz")
|
||||||
|
sha256sums_x86_64=('02aa270f183da276e5b5920b1dac44a63f1a49e55050ebde3aecc9eb82f93239')
|
||||||
|
source_aarch64=("https://ziglang.org/download/$_zigver/zig-aarch64-linux-$_zigver.tar.xz")
|
||||||
|
sha256sums_aarch64=('958ed7d1e00d0ea76590d27666efbf7a932281b3d7ba0c6b01b0ff26498f667f')
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
cd "$_archive"
|
cd "$_archive"
|
||||||
PATH="$srcdir/zig-aarch64-linux-$_zigver:$PATH" \
|
# Zig's native x86 linker cannot read .sframe relocations in Arch's crt1.o.
|
||||||
|
# Use bundled LLVM for the build-data helper, as the main executable does.
|
||||||
|
if [[ "$CARCH" == x86_64 ]]; then
|
||||||
|
patch -Np1 -i "$srcdir/build-data-llvm.patch"
|
||||||
|
fi
|
||||||
|
PATH="$srcdir/zig-$CARCH-linux-$_zigver:$PATH" \
|
||||||
ZIG_GLOBAL_CACHE_DIR="$srcdir/zig-global-cache" \
|
ZIG_GLOBAL_CACHE_DIR="$srcdir/zig-global-cache" \
|
||||||
./nix/build-support/fetch-zig-cache.sh
|
./nix/build-support/fetch-zig-cache.sh
|
||||||
}
|
}
|
||||||
@@ -56,7 +65,7 @@ build() {
|
|||||||
cd "$_archive"
|
cd "$_archive"
|
||||||
# A '-' suffix is a SemVer prerelease and selects Ghostty's tip channel.
|
# A '-' suffix is a SemVer prerelease and selects Ghostty's tip channel.
|
||||||
# Keep the package revision as build metadata on the stable release.
|
# Keep the package revision as build metadata on the stable release.
|
||||||
PATH="$srcdir/zig-aarch64-linux-$_zigver:$PATH" \
|
PATH="$srcdir/zig-$CARCH-linux-$_zigver:$PATH" \
|
||||||
DESTDIR=build \
|
DESTDIR=build \
|
||||||
zig build \
|
zig build \
|
||||||
--prefix /usr \
|
--prefix /usr \
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
--- a/src/build/GhosttyResources.zig
|
||||||
|
+++ b/src/build/GhosttyResources.zig
|
||||||
|
@@ -15,6 +15,7 @@
|
||||||
|
// This is the exe used to generate some build data.
|
||||||
|
const build_data_exe = b.addExecutable(.{
|
||||||
|
.name = "ghostty-build-data",
|
||||||
|
+ .use_llvm = true,
|
||||||
|
.root_module = b.createModule(.{
|
||||||
|
.root_source_file = b.path("src/main_build_data.zig"),
|
||||||
|
.target = b.graph.host,
|
||||||
Reference in new issue
Block a user