deb-packs/neovim/package.sh

82 lines
1.9 KiB
Bash
Raw Normal View History

#!/bin/bash
app_name="neovim"
2023-08-02 18:02:08 +08:00
tmp_dir="/tmp/${app_name}_tmp"
2023-11-01 11:36:08 +08:00
version="0.9.4"
release="v0.9.4"
deb_url="https://github.com/neovim/neovim/releases/download/${release}/nvim-linux64.tar.gz"
# 创建临时目录, 用于下载官方包
if [ -d $tmp_dir ]; then
rm -rf $tmp_dir
fi
if [ -d "./unpack" ]; then
sudo rm -rf ./unpack
fi
if [ -f "./${app_name}_${version}.deb" ]; then
rm "./${app_name}_${version}.deb"
fi
mkdir $tmp_dir
# 创建临时待打包目录
echo "创建待打包目录..."
mkdir -p "./unpack/DEBIAN"
mkdir -p "./unpack/usr"
echo "下载官方原包..."
wget $deb_url -O "${tmp_dir}/nvim-linux64.tar.gz"
echo "下载完成, 解包中..."
tar -xzvf "${tmp_dir}/nvim-linux64.tar.gz" -C $tmp_dir
echo "解包完成, 复制到待打包目录..."
mv ${tmp_dir}/nvim-linux64/* "./unpack/usr/"
rm -rf $tmp_dir
echo "复制完成, 计算文件md5..."
cd ./unpack
find usr/ -type f | xargs md5sum > DEBIAN/md5sums
2023-05-22 14:10:49 +08:00
IFS=$'\t' read -ra size <<< "$(du -d 0)"
echo """
2023-08-02 18:02:08 +08:00
Package: ${app_name}
Version: ${version}
Architecture: amd64
Depends: libc6 (>= 2.29), libgcc-s1 (>= 3.3)
Breaks: neovim-runtime (<= 0.7.2-7)
Replaces: neovim-runtime (<= 0.7.2-7)
Maintainer: Yutent <yutent.io@gmail.com>
Priority: optional
2024-01-02 11:12:53 +08:00
Section: devlop
2023-05-22 14:10:49 +08:00
Installed-Size: ${size[0]}
2023-11-01 11:36:08 +08:00
Homepage: https://github.com/neovim/neovim
Description: heavily refactored vim fork
Neovim is a fork of Vim focused on modern code and features, rather than
running in legacy environments.
.
msgpack API enables structured communication to/from any programming language.
Remote plugins run as co-processes that communicate with Neovim safely and
asynchronously.
.
GUIs (or TUIs) can easily embed Neovim or communicate via TCP sockets using
the discoverable msgpack API.
""" > DEBIAN/control
echo '计算文件md5完成, 打包中...'
cd ..
sudo chown -R root:root unpack
dpkg-deb -b ./unpack "./${app_name}_${version}.deb"
2023-09-14 15:01:31 +08:00
sudo rm -rf ./unpack
echo "打包完成 :)"