2019-03-24 05:39:25 +03:00
|
|
|
#!/bin/bash
|
|
|
|
set -x
|
2019-06-23 16:47:35 +03:00
|
|
|
set -e
|
2019-03-24 05:39:25 +03:00
|
|
|
|
2020-01-20 02:38:24 +03:00
|
|
|
TARGET_DIR=${1:-target}
|
|
|
|
|
2021-12-06 05:21:06 +03:00
|
|
|
TAG_NAME=${TAG_NAME:-$(git -c "core.abbrev=8" show -s "--format=%cd-%h" "--date=format:%Y%m%d-%H%M%S")}
|
2019-03-24 05:39:25 +03:00
|
|
|
|
|
|
|
HERE=$(pwd)
|
|
|
|
|
2021-09-26 04:34:01 +03:00
|
|
|
if test -z "${SUDO+x}" && hash sudo 2>/dev/null; then
|
|
|
|
SUDO="sudo"
|
|
|
|
fi
|
|
|
|
|
2022-02-15 18:56:38 +03:00
|
|
|
if test -e /etc/os-release; then
|
|
|
|
. /etc/os-release
|
|
|
|
fi
|
|
|
|
|
2021-09-26 04:34:01 +03:00
|
|
|
|
2019-03-24 05:39:25 +03:00
|
|
|
case $OSTYPE in
|
|
|
|
darwin*)
|
2020-02-13 00:16:13 +03:00
|
|
|
zipdir=WezTerm-macos-$TAG_NAME
|
2019-06-27 16:58:21 +03:00
|
|
|
if [[ "$BUILD_REASON" == "Schedule" ]] ; then
|
|
|
|
zipname=WezTerm-macos-nightly.zip
|
|
|
|
else
|
|
|
|
zipname=$zipdir.zip
|
|
|
|
fi
|
|
|
|
rm -rf $zipdir $zipname
|
2019-03-24 23:55:08 +03:00
|
|
|
mkdir $zipdir
|
|
|
|
cp -r assets/macos/WezTerm.app $zipdir/
|
2020-12-18 07:18:02 +03:00
|
|
|
# Omit MetalANGLE for now; it's a bit laggy compared to CGL,
|
|
|
|
# and on M1/Big Sur, CGL is implemented in terms of Metal anyway
|
|
|
|
rm $zipdir/WezTerm.app/*.dylib
|
2021-02-16 05:06:42 +03:00
|
|
|
mkdir -p $zipdir/WezTerm.app/Contents/MacOS
|
|
|
|
mkdir -p $zipdir/WezTerm.app/Contents/Resources
|
|
|
|
cp -r assets/shell-integration/* $zipdir/WezTerm.app/Contents/Resources
|
2023-08-27 17:25:51 +03:00
|
|
|
cp -r assets/shell-completion $zipdir/WezTerm.app/Contents/Resources
|
2021-01-13 08:12:54 +03:00
|
|
|
|
|
|
|
for bin in wezterm wezterm-mux-server wezterm-gui strip-ansi-escapes ; do
|
|
|
|
# If the user ran a simple `cargo build --release`, then we want to allow
|
|
|
|
# a single-arch package to be built
|
|
|
|
if [[ -f target/release/$bin ]] ; then
|
2021-02-16 05:06:42 +03:00
|
|
|
cp target/release/$bin $zipdir/WezTerm.app/Contents/MacOS/$bin
|
2021-01-13 08:12:54 +03:00
|
|
|
else
|
|
|
|
# The CI runs `cargo build --target XXX --release` which means that
|
|
|
|
# the binaries will be deployed in `target/XXX/release` instead of
|
|
|
|
# the plain path above.
|
|
|
|
# In that situation, we have two architectures to assemble into a
|
|
|
|
# Universal ("fat") binary, so we use the `lipo` tool for that.
|
2021-02-16 05:06:42 +03:00
|
|
|
lipo target/*/release/$bin -output $zipdir/WezTerm.app/Contents/MacOS/$bin -create
|
2021-01-13 08:12:54 +03:00
|
|
|
fi
|
|
|
|
done
|
2021-11-22 21:27:14 +03:00
|
|
|
|
|
|
|
set +x
|
2021-11-23 03:10:42 +03:00
|
|
|
if [ -n "$MACOS_TEAM_ID" ] ; then
|
2021-11-23 06:07:51 +03:00
|
|
|
MACOS_PW=$(echo $MACOS_CERT_PW | base64 --decode)
|
|
|
|
echo "pw sha"
|
|
|
|
echo $MACOS_PW | shasum
|
|
|
|
|
2021-11-23 03:10:42 +03:00
|
|
|
# Remove pesky additional quotes from default-keychain output
|
|
|
|
def_keychain=$(eval echo $(security default-keychain -d user))
|
|
|
|
echo "Default keychain is $def_keychain"
|
|
|
|
echo "Speculative delete of build.keychain"
|
|
|
|
security delete-keychain build.keychain || true
|
|
|
|
echo "Create build.keychain"
|
2021-11-23 06:07:51 +03:00
|
|
|
security create-keychain -p "$MACOS_PW" build.keychain
|
2021-11-23 03:10:42 +03:00
|
|
|
echo "Make build.keychain the default"
|
|
|
|
security default-keychain -d user -s build.keychain
|
|
|
|
echo "Unlock build.keychain"
|
2021-11-23 06:07:51 +03:00
|
|
|
security unlock-keychain -p "$MACOS_PW" build.keychain
|
2021-11-23 03:10:42 +03:00
|
|
|
echo "Import .p12 data"
|
|
|
|
echo $MACOS_CERT | base64 --decode > /tmp/certificate.p12
|
2021-11-23 04:31:16 +03:00
|
|
|
echo "decoded sha"
|
|
|
|
shasum /tmp/certificate.p12
|
2021-11-23 06:07:51 +03:00
|
|
|
security import /tmp/certificate.p12 -k build.keychain -P "$MACOS_PW" -T /usr/bin/codesign
|
2021-11-23 03:10:42 +03:00
|
|
|
rm /tmp/certificate.p12
|
|
|
|
echo "Grant apple tools access to build.keychain"
|
2021-11-23 06:07:51 +03:00
|
|
|
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k "$MACOS_PW" build.keychain
|
2021-11-23 03:10:42 +03:00
|
|
|
echo "Codesign"
|
2022-07-16 05:33:30 +03:00
|
|
|
/usr/bin/codesign --keychain build.keychain --force --options runtime \
|
|
|
|
--entitlements ci/macos-entitlement.plist --deep --sign "$MACOS_TEAM_ID" $zipdir/WezTerm.app/
|
2021-11-23 03:10:42 +03:00
|
|
|
echo "Restore default keychain"
|
|
|
|
security default-keychain -d user -s $def_keychain
|
|
|
|
echo "Remove build.keychain"
|
|
|
|
security delete-keychain build.keychain || true
|
2021-11-22 21:27:14 +03:00
|
|
|
fi
|
|
|
|
|
|
|
|
set -x
|
2019-06-27 16:58:21 +03:00
|
|
|
zip -r $zipname $zipdir
|
2021-11-22 21:27:14 +03:00
|
|
|
set +x
|
|
|
|
|
2021-11-23 03:10:42 +03:00
|
|
|
if [ -n "$MACOS_TEAM_ID" ] ; then
|
|
|
|
echo "Notarize"
|
2021-11-22 21:27:14 +03:00
|
|
|
xcrun notarytool submit $zipname --wait --team-id "$MACOS_TEAM_ID" --apple-id "$MACOS_APPLEID" --password "$MACOS_APP_PW"
|
|
|
|
fi
|
|
|
|
set -x
|
2020-06-07 22:48:41 +03:00
|
|
|
|
|
|
|
SHA256=$(shasum -a 256 $zipname | cut -d' ' -f1)
|
2020-06-08 21:09:16 +03:00
|
|
|
sed -e "s/@TAG@/$TAG_NAME/g" -e "s/@SHA256@/$SHA256/g" < ci/wezterm-homebrew-macos.rb.template > wezterm.rb
|
2020-06-07 22:48:41 +03:00
|
|
|
|
2019-03-24 05:39:25 +03:00
|
|
|
;;
|
2019-03-24 20:42:20 +03:00
|
|
|
msys)
|
2020-02-13 00:16:13 +03:00
|
|
|
zipdir=WezTerm-windows-$TAG_NAME
|
2019-06-27 16:58:21 +03:00
|
|
|
if [[ "$BUILD_REASON" == "Schedule" ]] ; then
|
|
|
|
zipname=WezTerm-windows-nightly.zip
|
2020-05-25 10:12:36 +03:00
|
|
|
instname=WezTerm-nightly-setup
|
2019-06-27 16:58:21 +03:00
|
|
|
else
|
|
|
|
zipname=$zipdir.zip
|
2020-05-25 10:12:36 +03:00
|
|
|
instname=WezTerm-${TAG_NAME}-setup
|
2019-06-27 16:58:21 +03:00
|
|
|
fi
|
|
|
|
rm -rf $zipdir $zipname
|
2019-03-24 23:55:08 +03:00
|
|
|
mkdir $zipdir
|
2020-04-06 22:39:35 +03:00
|
|
|
cp $TARGET_DIR/release/wezterm.exe \
|
2020-10-03 10:10:04 +03:00
|
|
|
$TARGET_DIR/release/wezterm-mux-server.exe \
|
2020-10-25 02:54:36 +03:00
|
|
|
$TARGET_DIR/release/wezterm-gui.exe \
|
2020-05-18 07:51:07 +03:00
|
|
|
$TARGET_DIR/release/strip-ansi-escapes.exe \
|
2020-04-06 22:39:35 +03:00
|
|
|
$TARGET_DIR/release/wezterm.pdb \
|
|
|
|
assets/windows/conhost/conpty.dll \
|
|
|
|
assets/windows/conhost/OpenConsole.exe \
|
2021-02-09 19:34:58 +03:00
|
|
|
assets/windows/angle/libEGL.dll \
|
|
|
|
assets/windows/angle/libGLESv2.dll \
|
2020-04-06 22:39:35 +03:00
|
|
|
$zipdir
|
2020-10-02 04:31:57 +03:00
|
|
|
mkdir $zipdir/mesa
|
|
|
|
cp $TARGET_DIR/release/mesa/opengl32.dll \
|
|
|
|
$zipdir/mesa
|
2019-06-27 16:58:21 +03:00
|
|
|
7z a -tzip $zipname $zipdir
|
2020-05-25 10:12:36 +03:00
|
|
|
iscc.exe -DMyAppVersion=${TAG_NAME#nightly} -F${instname} ci/windows-installer.iss
|
2019-03-25 03:49:28 +03:00
|
|
|
;;
|
2022-04-25 23:27:56 +03:00
|
|
|
linux-gnu|linux)
|
2022-02-02 08:27:22 +03:00
|
|
|
distro=$(lsb_release -is 2>/dev/null || sh -c "source /etc/os-release && echo \$NAME")
|
|
|
|
distver=$(lsb_release -rs 2>/dev/null || sh -c "source /etc/os-release && echo \$VERSION_ID")
|
2020-05-03 21:21:58 +03:00
|
|
|
case "$distro" in
|
2022-04-25 23:27:56 +03:00
|
|
|
*Fedora*|*CentOS*|*SUSE*)
|
2019-12-29 19:41:50 +03:00
|
|
|
WEZTERM_RPM_VERSION=$(echo ${TAG_NAME#nightly-} | tr - _)
|
2022-06-25 02:40:50 +03:00
|
|
|
distroid=$(sh -c "source /etc/os-release && echo \$ID" | tr - _)
|
|
|
|
distver=$(sh -c "source /etc/os-release && echo \$VERSION_ID" | tr - _)
|
2023-10-03 01:45:46 +03:00
|
|
|
|
2023-10-03 05:36:24 +03:00
|
|
|
SPEC_RELEASE="1.${distroid}${distver}"
|
|
|
|
if test -n "${COPR_SRPM}" ; then
|
|
|
|
SPEC_RELEASE=0
|
|
|
|
fi
|
|
|
|
|
2019-12-29 19:41:50 +03:00
|
|
|
cat > wezterm.spec <<EOF
|
|
|
|
Name: wezterm
|
|
|
|
Version: ${WEZTERM_RPM_VERSION}
|
2023-10-03 05:36:24 +03:00
|
|
|
Release: ${SPEC_RELEASE}
|
2019-12-29 19:41:50 +03:00
|
|
|
Packager: Wez Furlong <wez@wezfurlong.org>
|
|
|
|
License: MIT
|
|
|
|
URL: https://wezfurlong.org/wezterm/
|
|
|
|
Summary: Wez's Terminal Emulator.
|
2022-04-25 23:27:56 +03:00
|
|
|
%if 0%{?suse_version}
|
|
|
|
Requires: dbus-1, fontconfig, openssl, libxcb1, libxkbcommon0, libxkbcommon-x11-0, libwayland-client0, libwayland-egl1, libwayland-cursor0, Mesa-libEGL1, libxcb-keysyms1, libxcb-ewmh2, libxcb-icccm4
|
|
|
|
%else
|
2019-12-29 19:41:50 +03:00
|
|
|
Requires: dbus, fontconfig, openssl, libxcb, libxkbcommon, libxkbcommon-x11, libwayland-client, libwayland-egl, libwayland-cursor, mesa-libEGL, xcb-util-keysyms, xcb-util-wm
|
2022-04-25 23:27:56 +03:00
|
|
|
%endif
|
2023-10-03 01:45:46 +03:00
|
|
|
EOF
|
|
|
|
|
|
|
|
BUILD_COMMAND=<<EOF
|
|
|
|
%build
|
|
|
|
echo build
|
|
|
|
EOF
|
|
|
|
|
2023-10-03 02:27:51 +03:00
|
|
|
if test -n "${COPR_SRPM}" ; then
|
2023-10-03 01:45:46 +03:00
|
|
|
|
|
|
|
TAR_NAME=$(git -c "core.abbrev=8" show -s "--format=%cd_%h" "--date=format:%Y%m%d_%H%M%S")
|
|
|
|
|
|
|
|
cat >> wezterm.spec <<EOF
|
2023-10-03 19:51:18 +03:00
|
|
|
BuildRequires: gcc, gcc-c++, make, curl, fontconfig-devel, openssl-devel, libxcb-devel, libxkbcommon-devel, libxkbcommon-x11-devel, wayland-devel, xcb-util-devel, xcb-util-keysyms-devel, xcb-util-image-devel, xcb-util-wm-devel, git
|
|
|
|
%if 0%{?suse_version}
|
|
|
|
BuildRequires: Mesa-libEGL-devel
|
|
|
|
%else
|
|
|
|
BuildRequires: mesa-libEGL-devel
|
|
|
|
%endif
|
2023-10-03 02:43:14 +03:00
|
|
|
Source0: wezterm-${TAR_NAME}.tar.gz
|
2023-10-03 01:45:46 +03:00
|
|
|
|
|
|
|
%global debug_package %{nil}
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
* Mon Oct 2 2023 Wez Furlong
|
|
|
|
- See git for full changelog
|
2019-12-29 19:41:50 +03:00
|
|
|
|
2023-10-03 01:45:46 +03:00
|
|
|
EOF
|
|
|
|
HERE="."
|
|
|
|
BUILD_COMMAND=$(cat <<EOF
|
|
|
|
%prep
|
|
|
|
%autosetup
|
|
|
|
%build
|
|
|
|
|
|
|
|
echo Here I am
|
2023-10-03 17:13:06 +03:00
|
|
|
|
2023-10-03 17:34:24 +03:00
|
|
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
|
|
|
source ~/.cargo/env
|
|
|
|
|
2023-10-03 08:26:03 +03:00
|
|
|
cargo build --release \
|
2023-10-03 01:45:46 +03:00
|
|
|
-p wezterm-gui -p wezterm -p wezterm-mux-server \
|
|
|
|
-p strip-ansi-escapes
|
|
|
|
|
|
|
|
EOF
|
|
|
|
)
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
cat >> wezterm.spec <<EOF
|
2019-12-29 19:41:50 +03:00
|
|
|
%description
|
|
|
|
wezterm is a terminal emulator with support for modern features
|
|
|
|
such as fonts with ligatures, hyperlinks, tabs and multiple
|
|
|
|
windows.
|
|
|
|
|
2023-10-03 01:45:46 +03:00
|
|
|
${BUILD_COMMAND}
|
2019-12-29 19:41:50 +03:00
|
|
|
|
|
|
|
%install
|
|
|
|
set -x
|
2020-02-11 09:16:34 +03:00
|
|
|
cd ${HERE}
|
2020-11-14 20:24:21 +03:00
|
|
|
mkdir -p %{buildroot}/usr/bin %{buildroot}/etc/profile.d
|
2022-07-22 08:57:55 +03:00
|
|
|
install -Dm755 assets/open-wezterm-here -t %{buildroot}/usr/bin
|
2020-09-11 07:18:32 +03:00
|
|
|
install -Dsm755 target/release/wezterm -t %{buildroot}/usr/bin
|
2020-10-03 10:10:04 +03:00
|
|
|
install -Dsm755 target/release/wezterm-mux-server -t %{buildroot}/usr/bin
|
2020-10-25 03:17:45 +03:00
|
|
|
install -Dsm755 target/release/wezterm-gui -t %{buildroot}/usr/bin
|
2020-09-11 07:18:32 +03:00
|
|
|
install -Dsm755 target/release/strip-ansi-escapes -t %{buildroot}/usr/bin
|
2020-11-14 10:37:17 +03:00
|
|
|
install -Dm644 assets/shell-integration/* -t %{buildroot}/etc/profile.d
|
2022-05-28 22:46:37 +03:00
|
|
|
install -Dm644 assets/shell-completion/zsh %{buildroot}/usr/share/zsh/site-functions/_wezterm
|
|
|
|
install -Dm644 assets/shell-completion/bash %{buildroot}/etc/bash_completion.d/wezterm
|
2020-01-21 10:11:38 +03:00
|
|
|
install -Dm644 assets/icon/terminal.png %{buildroot}/usr/share/icons/hicolor/128x128/apps/org.wezfurlong.wezterm.png
|
|
|
|
install -Dm644 assets/wezterm.desktop %{buildroot}/usr/share/applications/org.wezfurlong.wezterm.desktop
|
2020-05-05 08:55:33 +03:00
|
|
|
install -Dm644 assets/wezterm.appdata.xml %{buildroot}/usr/share/metainfo/org.wezfurlong.wezterm.appdata.xml
|
2022-03-18 02:35:51 +03:00
|
|
|
install -Dm644 assets/wezterm-nautilus.py %{buildroot}/usr/share/nautilus-python/extensions/wezterm-nautilus.py
|
2019-12-29 19:41:50 +03:00
|
|
|
|
|
|
|
%files
|
2022-07-22 08:34:54 +03:00
|
|
|
/usr/bin/open-wezterm-here
|
2019-12-29 19:41:50 +03:00
|
|
|
/usr/bin/wezterm
|
2020-10-25 02:54:36 +03:00
|
|
|
/usr/bin/wezterm-gui
|
2020-10-03 10:10:04 +03:00
|
|
|
/usr/bin/wezterm-mux-server
|
2020-05-18 07:51:07 +03:00
|
|
|
/usr/bin/strip-ansi-escapes
|
2022-05-28 22:46:37 +03:00
|
|
|
/usr/share/zsh/site-functions/_wezterm
|
|
|
|
/etc/bash_completion.d/wezterm
|
2020-01-21 10:11:38 +03:00
|
|
|
/usr/share/icons/hicolor/128x128/apps/org.wezfurlong.wezterm.png
|
|
|
|
/usr/share/applications/org.wezfurlong.wezterm.desktop
|
2020-05-05 08:55:33 +03:00
|
|
|
/usr/share/metainfo/org.wezfurlong.wezterm.appdata.xml
|
2022-05-11 07:23:56 +03:00
|
|
|
/usr/share/nautilus-python/extensions/wezterm-nautilus.py*
|
2020-11-14 10:37:17 +03:00
|
|
|
/etc/profile.d/*
|
2019-12-29 19:41:50 +03:00
|
|
|
EOF
|
|
|
|
|
2023-10-03 02:27:51 +03:00
|
|
|
if test -n "${COPR_SRPM}" ; then
|
2023-10-03 01:45:46 +03:00
|
|
|
/usr/bin/rpmbuild -bs --rmspec wezterm.spec --verbose
|
2023-10-03 02:43:14 +03:00
|
|
|
mv $(rpm --eval '%{_srcrpmdir}')/wezterm-${TAR_NAME}*.src.rpm "${COPR_SRPM}"/
|
2023-10-03 01:45:46 +03:00
|
|
|
else
|
|
|
|
/usr/bin/rpmbuild -bb --rmspec wezterm.spec --verbose
|
|
|
|
fi
|
2019-12-29 19:41:50 +03:00
|
|
|
|
|
|
|
;;
|
2019-03-25 03:49:28 +03:00
|
|
|
Ubuntu*|Debian*)
|
|
|
|
rm -rf pkg
|
2019-11-20 07:50:20 +03:00
|
|
|
mkdir -p pkg/debian/usr/bin pkg/debian/DEBIAN pkg/debian/usr/share/{applications,wezterm}
|
2021-09-26 05:49:10 +03:00
|
|
|
cat > pkg/debian/control <<EOF
|
2019-03-25 03:49:28 +03:00
|
|
|
Package: wezterm
|
2019-06-27 02:04:31 +03:00
|
|
|
Version: ${TAG_NAME#nightly-}
|
2020-11-10 12:27:45 +03:00
|
|
|
Architecture: $(dpkg-architecture -q DEB_BUILD_ARCH_CPU)
|
2019-03-25 03:49:28 +03:00
|
|
|
Maintainer: Wez Furlong <wez@wezfurlong.org>
|
|
|
|
Section: utils
|
|
|
|
Priority: optional
|
2019-12-29 19:41:50 +03:00
|
|
|
Homepage: https://wezfurlong.org/wezterm/
|
2019-03-25 03:49:28 +03:00
|
|
|
Description: Wez's Terminal Emulator.
|
|
|
|
wezterm is a terminal emulator with support for modern features
|
|
|
|
such as fonts with ligatures, hyperlinks, tabs and multiple
|
|
|
|
windows.
|
2021-09-13 18:36:58 +03:00
|
|
|
Provides: x-terminal-emulator
|
2021-09-26 05:49:10 +03:00
|
|
|
Source: https://wezfurlong.org/wezterm/
|
2022-04-17 21:02:50 +03:00
|
|
|
EOF
|
|
|
|
|
|
|
|
cat > pkg/debian/postinst <<EOF
|
|
|
|
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
if [ "\$1" = "configure" ] ; then
|
2022-07-22 08:34:54 +03:00
|
|
|
update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator /usr/bin/open-wezterm-here 20
|
2022-04-17 21:02:50 +03:00
|
|
|
fi
|
|
|
|
EOF
|
|
|
|
|
|
|
|
cat > pkg/debian/prerm <<EOF
|
|
|
|
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
if [ "\$1" = "remove" ]; then
|
2022-07-22 08:34:54 +03:00
|
|
|
update-alternatives --remove x-terminal-emulator /usr/bin/open-wezterm-here
|
2022-04-17 21:02:50 +03:00
|
|
|
fi
|
2019-03-25 03:49:28 +03:00
|
|
|
EOF
|
2021-09-26 05:49:10 +03:00
|
|
|
|
2020-10-03 10:10:04 +03:00
|
|
|
install -Dsm755 -t pkg/debian/usr/bin target/release/wezterm-mux-server
|
2020-10-25 02:54:36 +03:00
|
|
|
install -Dsm755 -t pkg/debian/usr/bin target/release/wezterm-gui
|
2020-01-21 10:11:38 +03:00
|
|
|
install -Dsm755 -t pkg/debian/usr/bin target/release/wezterm
|
2022-07-22 08:57:55 +03:00
|
|
|
install -Dm755 -t pkg/debian/usr/bin assets/open-wezterm-here
|
2020-05-18 07:51:07 +03:00
|
|
|
install -Dsm755 -t pkg/debian/usr/bin target/release/strip-ansi-escapes
|
2021-09-26 08:19:01 +03:00
|
|
|
|
|
|
|
deps=$(cd pkg && dpkg-shlibdeps -O -e debian/usr/bin/*)
|
2022-04-17 21:02:50 +03:00
|
|
|
mv pkg/debian/postinst pkg/debian/DEBIAN/postinst
|
|
|
|
chmod 0755 pkg/debian/DEBIAN/postinst
|
|
|
|
mv pkg/debian/prerm pkg/debian/DEBIAN/prerm
|
|
|
|
chmod 0755 pkg/debian/DEBIAN/prerm
|
2021-09-26 08:19:01 +03:00
|
|
|
mv pkg/debian/control pkg/debian/DEBIAN/control
|
2022-12-04 18:53:37 +03:00
|
|
|
sed -i '/^Source:/d' pkg/debian/DEBIAN/control # The `Source:` field needs to be valid in a binary package
|
2021-09-26 08:19:01 +03:00
|
|
|
echo $deps | sed -e 's/shlibs:Depends=/Depends: /' >> pkg/debian/DEBIAN/control
|
|
|
|
cat pkg/debian/DEBIAN/control
|
|
|
|
|
2020-01-21 10:11:38 +03:00
|
|
|
install -Dm644 assets/icon/terminal.png pkg/debian/usr/share/icons/hicolor/128x128/apps/org.wezfurlong.wezterm.png
|
|
|
|
install -Dm644 assets/wezterm.desktop pkg/debian/usr/share/applications/org.wezfurlong.wezterm.desktop
|
2020-05-05 08:55:33 +03:00
|
|
|
install -Dm644 assets/wezterm.appdata.xml pkg/debian/usr/share/metainfo/org.wezfurlong.wezterm.appdata.xml
|
2022-03-18 02:35:51 +03:00
|
|
|
install -Dm644 assets/wezterm-nautilus.py pkg/debian/usr/share/nautilus-python/extensions/wezterm-nautilus.py
|
2022-05-29 07:29:40 +03:00
|
|
|
install -Dm644 assets/shell-completion/bash pkg/debian/usr/share/bash-completion/completions/wezterm
|
2022-05-28 22:46:37 +03:00
|
|
|
install -Dm644 assets/shell-completion/zsh pkg/debian/usr/share/zsh/functions/Completion/Unix/_wezterm
|
2020-11-14 10:37:17 +03:00
|
|
|
install -Dm644 assets/shell-integration/* -t pkg/debian/etc/profile.d
|
2019-06-27 16:58:21 +03:00
|
|
|
if [[ "$BUILD_REASON" == "Schedule" ]] ; then
|
2020-05-03 21:21:58 +03:00
|
|
|
debname=wezterm-nightly.$distro$distver
|
2019-06-27 16:58:21 +03:00
|
|
|
else
|
2020-05-03 21:21:58 +03:00
|
|
|
debname=wezterm-$TAG_NAME.$distro$distver
|
2019-06-27 16:58:21 +03:00
|
|
|
fi
|
|
|
|
fakeroot dpkg-deb --build pkg/debian $debname.deb
|
2021-09-26 04:02:25 +03:00
|
|
|
|
|
|
|
if [[ "$BUILD_REASON" != '' ]] ; then
|
2021-09-26 04:34:01 +03:00
|
|
|
$SUDO apt-get install ./$debname.deb
|
2021-09-26 04:02:25 +03:00
|
|
|
fi
|
|
|
|
|
2020-12-20 22:17:40 +03:00
|
|
|
mv pkg/debian pkg/wezterm
|
|
|
|
tar cJf $debname.tar.xz -C pkg wezterm
|
2019-03-25 03:49:28 +03:00
|
|
|
rm -rf pkg
|
|
|
|
;;
|
|
|
|
esac
|
2019-03-24 20:42:20 +03:00
|
|
|
;;
|
2022-02-15 18:56:38 +03:00
|
|
|
linux-musl)
|
|
|
|
case $ID in
|
|
|
|
alpine)
|
|
|
|
export SUDO=''
|
|
|
|
abuild-keygen -a -n -b 8192
|
|
|
|
pkgver="${TAG_NAME#nightly-}"
|
|
|
|
cat > APKBUILD <<EOF
|
|
|
|
# Maintainer: Wez Furlong <wez@wezfurlong.org>
|
|
|
|
pkgname=wezterm
|
|
|
|
pkgver=$(echo "$pkgver" | cut -d'-' -f1-2 | tr - .)
|
|
|
|
_pkgver=$pkgver
|
|
|
|
pkgrel=0
|
|
|
|
pkgdesc="A GPU-accelerated cross-platform terminal emulator and multiplexer written in Rust"
|
|
|
|
license="MIT"
|
|
|
|
arch="all"
|
|
|
|
options="!check"
|
|
|
|
url="https://wezfurlong.org/wezterm/"
|
|
|
|
makedepends="cmd:tic"
|
|
|
|
source="
|
|
|
|
target/release/wezterm
|
|
|
|
target/release/wezterm-gui
|
|
|
|
target/release/wezterm-mux-server
|
2022-07-22 08:34:54 +03:00
|
|
|
assets/open-wezterm-here
|
2022-02-15 18:56:38 +03:00
|
|
|
assets/wezterm.desktop
|
|
|
|
assets/wezterm.appdata.xml
|
|
|
|
assets/icon/terminal.png
|
|
|
|
assets/icon/wezterm-icon.svg
|
|
|
|
termwiz/data/wezterm.terminfo
|
|
|
|
"
|
|
|
|
builddir="\$srcdir"
|
|
|
|
|
|
|
|
build() {
|
|
|
|
tic -x -o "\$builddir"/wezterm.terminfo "\$srcdir"/wezterm.terminfo
|
|
|
|
}
|
|
|
|
|
|
|
|
package() {
|
2022-07-22 08:34:54 +03:00
|
|
|
install -Dm755 -t "\$pkgdir"/usr/bin "\$srcdir"/open-wezterm-here
|
2022-02-15 18:56:38 +03:00
|
|
|
install -Dm755 -t "\$pkgdir"/usr/bin "\$srcdir"/wezterm
|
|
|
|
install -Dm755 -t "\$pkgdir"/usr/bin "\$srcdir"/wezterm-gui
|
|
|
|
install -Dm755 -t "\$pkgdir"/usr/bin "\$srcdir"/wezterm-mux-server
|
|
|
|
|
|
|
|
install -Dm644 -t "\$pkgdir"/usr/share/applications "\$srcdir"/wezterm.desktop
|
|
|
|
install -Dm644 -t "\$pkgdir"/usr/share/metainfo "\$srcdir"/wezterm.appdata.xml
|
|
|
|
install -Dm644 "\$srcdir"/terminal.png "\$pkgdir"/usr/share/pixmaps/wezterm.png
|
|
|
|
install -Dm644 "\$srcdir"/wezterm-icon.svg "\$pkgdir"/usr/share/pixmaps/wezterm.svg
|
|
|
|
install -Dm644 "\$srcdir"/terminal.png "\$pkgdir"/usr/share/icons/hicolor/128x128/apps/wezterm.png
|
|
|
|
install -Dm644 "\$srcdir"/wezterm-icon.svg "\$pkgdir"/usr/share/icons/hicolor/scalable/apps/wezterm.svg
|
|
|
|
install -Dm644 "\$builddir"/wezterm.terminfo "\$pkgdir"/usr/share/terminfo/w/wezterm
|
|
|
|
}
|
|
|
|
EOF
|
|
|
|
abuild -F checksum
|
|
|
|
abuild -Fr
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
;;
|
2019-03-24 05:39:25 +03:00
|
|
|
*)
|
|
|
|
;;
|
|
|
|
esac
|