Skip to content

Commit cbb4404

Browse files
committed
build: add uruntime-lite and debloatted mesa
adding utuntime-lite as header and pkgforge debloatted mesa build to reduce appimage size by 3M approx.
1 parent dc7e611 commit cbb4404

File tree

2 files changed

+16
-7
lines changed

2 files changed

+16
-7
lines changed

build.sh

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,19 +101,20 @@ cd "${TMP_DIR}"
101101

102102
# create app image
103103
cp $(command -v uruntime) ./uruntime
104+
cp $(command -v uruntime-lite) ./uruntime-lite
104105

105106
# persist mount for faster launch times
106-
sed -i 's|URUNTIME_MOUNT=[0-9]|URUNTIME_MOUNT=0|' ./uruntime
107+
sed -i 's|URUNTIME_MOUNT=[0-9]|URUNTIME_MOUNT=0|' ./uruntime-lite
107108

108109
# update info
109-
./uruntime --appimage-addupdinfo "${UPINFO}"
110+
./uruntime-lite --appimage-addupdinfo "${UPINFO}"
110111

111112
echo "Generating AppImage"
112113
./uruntime --appimage-mkdwarfs -f \
113114
--set-owner 0 --set-group 0 \
114115
--no-history --no-create-timestamp \
115-
--compression zstd:level=22 -S26 -B32 \
116-
--header uruntime -i "${APP_DIR}" \
116+
--compression zstd:level=22 -S26 -B8 \
117+
--header uruntime-lite -i "${APP_DIR}" \
117118
-o Ghostty-"${VERSION}"-"${ARCH}".AppImage
118119

119120
echo "Generating Zsync file"

setup.sh

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ GITHUB_BASE="https://github.com"
2727
PANDOC_BASE="${GITHUB_BASE}/jgm/pandoc/releases/download/${PANDOC_VERSION}"
2828
MINISIGN_URL="${GITHUB_BASE}/jedisct1/minisign/releases/download/${MINISIGN_VERSION}/minisign-${MINISIGN_VERSION}-linux.tar.gz"
2929
URUNTIME_URL="${GITHUB_BASE}/VHSgunzo/uruntime/releases/download/${URUNTIME_VERSION}/uruntime-appimage-dwarfs-${ARCH}"
30+
URUNTIME_LITE_URL="${GITHUB_BASE}/VHSgunzo/uruntime/releases/download/${URUNTIME_VERSION}/uruntime-appimage-dwarfs-lite-${ARCH}"
3031
LLVM_BASE="${GITHUB_BASE}/pkgforge-dev/llvm-libs-debloated/releases/download/continuous"
3132
ZIG_URL="https://ziglang.org/download/${ZIG_VERSION}/zig-linux-${ARCH}-${ZIG_VERSION}.tar.xz"
3233
SHARUN_URL="${GITHUB_BASE}/VHSgunzo/sharun/releases/download/${SHARUN_VERSION}/sharun-${ARCH}"
@@ -37,11 +38,13 @@ case "${ARCH}" in
3738
PANDOC_URL="${PANDOC_BASE}/pandoc-${PANDOC_VERSION}-linux-amd64.tar.gz"
3839
LLVM_URL="${LLVM_BASE}/llvm-libs-nano-x86_64.pkg.tar.zst"
3940
LIBXML_URL="${LLVM_BASE}/libxml2-iculess-x86_64.pkg.tar.zst"
41+
MESA_URL="${LLVM_BASE}/mesa-mini-x86_64.pkg.tar.zst"
4042
;;
4143
"aarch64")
4244
PANDOC_URL="${PANDOC_BASE}/pandoc-${PANDOC_VERSION}-linux-arm64.tar.gz"
4345
LLVM_URL="${LLVM_BASE}/llvm-libs-nano-aarch64.pkg.tar.xz"
4446
LIBXML_URL="${LLVM_BASE}/libxml2-iculess-aarch64.pkg.tar.xz"
47+
MESA_URL="${LLVM_BASE}/mesa-mini-aarch64.pkg.tar.xz"
4548
;;
4649
*)
4750
echo "Unsupported ARCH: '${ARCH}'"
@@ -52,7 +55,8 @@ esac
5255
# Debloated llvm and libxml2 without libicudata
5356
wget "${LLVM_URL}" -O /tmp/llvm-libs.pkg.tar.zst
5457
wget "${LIBXML_URL}" -O /tmp/libxml2.pkg.tar.zst
55-
pacman -U --noconfirm /tmp/llvm-libs.pkg.tar.zst /tmp/libxml2.pkg.tar.zst
58+
wget "${MESA_URL}" -O /tmp/mesa-mini.pkg.tar.zst
59+
pacman -U --noconfirm /tmp/*.pkg.tar.zst
5660

5761
# Download & install other dependencies
5862
# zig: https://ziglang.org
@@ -68,6 +72,11 @@ wget "${URUNTIME_URL}" -O /tmp/uruntime
6872
chmod +x /tmp/uruntime
6973
mv /tmp/uruntime /usr/local/bin/uruntime
7074

75+
rm -rf /usr/local/bin/uruntime-lite
76+
wget "${URUNTIME_LITE_URL}" -O /tmp/uruntime-lite
77+
chmod +x /tmp/uruntime-lite
78+
mv /tmp/uruntime-lite /usr/local/bin/uruntime-lite
79+
7180
# minisign: https://github.com/jedisct1/minisign
7281
rm -rf /usr/local/bin/minisign
7382
wget "${MINISIGN_URL}" -O /tmp/minisign-linux.tar.gz
@@ -104,5 +113,4 @@ rm -rf \
104113
/tmp/minisign-linux* \
105114
/tmp/zig-linux.tar.xz \
106115
/tmp/pandoc* \
107-
/tmp/llvm-libs.pkg.tar.zst \
108-
/tmp/libxml2.pkg.tar.zst
116+
/tmp/*.pkg.tar.zst

0 commit comments

Comments
 (0)