master
yutent 2025-06-05 00:27:34 +08:00
parent 4093cdc981
commit 0cfa0b56ea
1 changed files with 120 additions and 0 deletions

120
rofi/package.sh Executable file
View File

@ -0,0 +1,120 @@
#!/bin/bash
app_name="rofi"
tmp_dir="/tmp/${app_name}_tmp"
version="1.7.9"
release="${version}-2"
deb_arch="amd64"
if [ -d "./unpack" ]; then
sudo rm -rf ./unpack
fi
if [ -f "./${app_name}-${deb_arch}_${release}.deb" ]; then
rm "./${app_name}-${deb_arch}_${release}.deb"
fi
# 创建临时待打包目录
echo "创建待打包目录..."
mkdir -p "./unpack/DEBIAN"
mkdir -p "./unpack/usr/bin"
mkdir -p "./unpack/usr/include/rofi"
mkdir -p "./unpack/usr/lib/pkgconfig"
mkdir -p "./unpack/usr/share/applications"
mkdir -p "./unpack/usr/share/icons/hicolor/scalable/apps"
mkdir -p "./unpack/usr/share/doc/rofi"
mkdir -p "./unpack/usr/share/man/man1"
mkdir -p "./unpack/usr/share/man/man5"
source_dir=/data/docker/rofi-${version}
echo "复制编译好的文件..."
cp -v "${source_dir}/build/rofi" ./unpack/usr/bin/
cp -v "${source_dir}/script/rofi-sensible-terminal" ./unpack/usr/bin/
cp -v "${source_dir}/script/rofi-theme-selector" ./unpack/usr/bin/
cp -v "${source_dir}/build/doc/rofi.doxy" ./unpack/usr/share/doc/rofi/
cp -rv "${source_dir}/Examples" ./unpack/usr/share/doc/rofi/examples
cp -v "${source_dir}/build/pkgconfig/rofi.pc" ./unpack/usr/lib/pkgconfig/
cp -v "${source_dir}/include/helper.h" ./unpack/usr/include/rofi/
cp -v "${source_dir}/include/mode.h" ./unpack/usr/include/rofi/
cp -v "${source_dir}/include/mode-private.h" ./unpack/usr/include/rofi/
cp -v "${source_dir}/include/rofi-icon-fetcher.h" ./unpack/usr/include/rofi/
cp -v "${source_dir}/include/rofi-types.h" ./unpack/usr/include/rofi/
cp -v "${source_dir}/doc/rofi.1" ./unpack/usr/share/man/man1/
cp -v "${source_dir}/doc/rofi-sensible-terminal.1" ./unpack/usr/share/man/man1/
cp -v "${source_dir}/doc/rofi-theme-selector.1" ./unpack/usr/share/man/man1/
cp -v "${source_dir}/doc/rofi-actions.5" ./unpack/usr/share/man/man5/
cp -v "${source_dir}/doc/rofi-script.5" ./unpack/usr/share/man/man5/
cp -v "${source_dir}/doc/rofi-theme.5" ./unpack/usr/share/man/man5/
cp -v "${source_dir}/doc/rofi-keys.5" ./unpack/usr/share/man/man5/
cp -v "${source_dir}/doc/rofi-dmenu.5" ./unpack/usr/share/man/man5/
cp -v "${source_dir}/doc/rofi-debugging.5" ./unpack/usr/share/man/man5/
cp -v "${source_dir}/doc/rofi-theme.5" ./unpack/usr/share/man/man5/
cp -v "${source_dir}/data/rofi.desktop" ./unpack/usr/share/applications/
cp -v "${source_dir}/data/rofi-theme-selector.desktop" ./unpack/usr/share/applications/
cp -v "${source_dir}/data/rofi.svg" ./unpack/usr/share/icons/hicolor/scalable/apps/
echo "复制完成, 计算文件md5..."
cd ./unpack
strip -s usr/bin/rofi
find usr/ -type f | xargs md5sum > DEBIAN/md5sums
echo """
Package: ${app_name}
Version: ${release}
Section: X11
Installed-Size: ${size[0]}
Architecture: ${deb_arch}
Maintainer: Yutent <yutent.io@gmail.com>
Depends: libcairo2 (>= 1.12.0), libgdk-pixbuf-2.0-0 (>= 2.31.1), libglib2.0-0 (>= 2.35.9), libpango-1.0-0 (>= 1.37.5), libpangocairo-1.0-0 (>= 1.22.0), libstartup-notification0 (>= 0.11), libxcb-cursor0 (>= 0.0.99), libxcb-ewmh2 (>= 0.4.1), libxcb-icccm4 (>= 0.4.1), libxcb-randr0 (>= 1.12), libxcb-util1 (>= 0.4.0), libxcb-xinerama0, libxcb-xkb1, libxcb1, libxkbcommon-x11-0 (>= 0.5.0), libxkbcommon0 (>= 0.7.0)
Priority: optional
Homepage: https://github.com/DaveDavenport/rofi/
Description: window switcher, run dialog and dmenu replacement
rofi can act as an application launcher, window switcher, ssh launcher and
dmenu replacement.
.
Included features:
* Full (configurable) keyboard navigation
* Type to filter
+ Tokenized: Type any word in any order to filter
+ Case insensitive
* UTF-8 enabled
+ UTF-8 aware string collating
+ intl. keyboard support (\`e -> è)
* Pango font rendering
* RTL language support
* Window Switcher
+ I3 support (requires i3-wm to be installed)
+ EWMH compatible WM
* Run dialog
* Desktop File Run dialog
* SSH launcher
* History based ordering based on use. (optional)
* Levenshtein distance ordering of matches. (optional)
* Drop in dmenu replacement (with many added improvements).
* Can be easily extended using scripts.
""" > DEBIAN/control
echo '计算文件md5完成, 打包中...'
cd ..
sudo chown -R root:root unpack
dpkg-deb -b ./unpack "./${app_name}-${deb_arch}_${release}.deb"
sudo rm -rf ./unpack
echo "打包完成 :)"