添加奔图Pantum打印机驱动安装选项
- 新增选项5: 奔图打印机驱动 - 自动检测系统架构下载对应驱动 - 支持arm64/armhf/amd64架构 - 安装时自动添加wget和unzip依赖
This commit is contained in:
@@ -180,10 +180,11 @@ select_drivers() {
|
|||||||
echo " 2) HP 打印机 (hplip)"
|
echo " 2) HP 打印机 (hplip)"
|
||||||
echo " 3) 爱普生 (gutenprint)"
|
echo " 3) 爱普生 (gutenprint)"
|
||||||
echo " 4) 兄弟 (brlaser)"
|
echo " 4) 兄弟 (brlaser)"
|
||||||
echo " 5) 全部安装"
|
echo " 5) 奔图 Pantum (从官网下载)"
|
||||||
|
echo " 6) 全部安装 (不含奔图)"
|
||||||
echo " 0) 仅安装CUPS (不安装额外驱动)"
|
echo " 0) 仅安装CUPS (不安装额外驱动)"
|
||||||
echo ""
|
echo ""
|
||||||
echo -e " ${BLUE}示例: 1 2 或 1,2 表示同时安装通用驱动和HP驱动${NC}"
|
echo -e " ${BLUE}示例: 1 5 或 1,5 表示同时安装通用驱动和奔图驱动${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
read -p "请输入选项 (默认: 1): " driver_choice < /dev/tty
|
read -p "请输入选项 (默认: 1): " driver_choice < /dev/tty
|
||||||
driver_choice=${driver_choice:-1}
|
driver_choice=${driver_choice:-1}
|
||||||
@@ -191,9 +192,85 @@ select_drivers() {
|
|||||||
driver_choice=$(echo "$driver_choice" | tr ',' ' ')
|
driver_choice=$(echo "$driver_choice" | tr ',' ' ')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# 安装奔图驱动
|
||||||
|
install_pantum_driver() {
|
||||||
|
info "正在安装奔图 Pantum 打印机驱动..."
|
||||||
|
|
||||||
|
# 检测系统架构
|
||||||
|
local arch=$(dpkg --print-architecture)
|
||||||
|
info "检测到系统架构: $arch"
|
||||||
|
|
||||||
|
# 奔图驱动下载地址 (通用Linux驱动)
|
||||||
|
local pantum_url=""
|
||||||
|
local pantum_file=""
|
||||||
|
|
||||||
|
case $arch in
|
||||||
|
arm64|aarch64)
|
||||||
|
pantum_url="https://drivers.pantum.com/userfiles/files/download/drive/Pantum%20Ubuntu%20Driver%20V1_1_123_1.zip"
|
||||||
|
;;
|
||||||
|
armhf|arm)
|
||||||
|
pantum_url="https://drivers.pantum.com/userfiles/files/download/drive/Pantum%20Ubuntu%20Driver%20V1_1_123_1.zip"
|
||||||
|
;;
|
||||||
|
amd64|x86_64)
|
||||||
|
pantum_url="https://drivers.pantum.com/userfiles/files/download/drive/Pantum%20Ubuntu%20Driver%20V1_1_123_1.zip"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
warn "不支持的架构: $arch,跳过奔图驱动安装"
|
||||||
|
return 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# 创建临时目录
|
||||||
|
local tmp_dir=$(mktemp -d)
|
||||||
|
cd "$tmp_dir"
|
||||||
|
|
||||||
|
info "下载奔图驱动..."
|
||||||
|
if ! wget -q --show-progress -O pantum_driver.zip "$pantum_url"; then
|
||||||
|
warn "下载奔图驱动失败,尝试备用方案..."
|
||||||
|
# 备用: 直接安装依赖,用户手动下载驱动
|
||||||
|
apt install -y libcups2 libcupsimage2
|
||||||
|
warn "请手动从 https://www.pantum.com 下载驱动并安装"
|
||||||
|
cd - > /dev/null
|
||||||
|
rm -rf "$tmp_dir"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
info "解压驱动包..."
|
||||||
|
unzip -q pantum_driver.zip
|
||||||
|
|
||||||
|
# 查找并安装deb包
|
||||||
|
local deb_file=""
|
||||||
|
if [ "$arch" = "arm64" ] || [ "$arch" = "aarch64" ]; then
|
||||||
|
deb_file=$(find . -name "*arm64*.deb" -o -name "*aarch64*.deb" 2>/dev/null | head -1)
|
||||||
|
elif [ "$arch" = "armhf" ] || [ "$arch" = "arm" ]; then
|
||||||
|
deb_file=$(find . -name "*armhf*.deb" -o -name "*arm*.deb" 2>/dev/null | grep -v arm64 | head -1)
|
||||||
|
else
|
||||||
|
deb_file=$(find . -name "*amd64*.deb" -o -name "*x86_64*.deb" 2>/dev/null | head -1)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 如果找不到对应架构,尝试通用包
|
||||||
|
if [ -z "$deb_file" ]; then
|
||||||
|
deb_file=$(find . -name "*.deb" 2>/dev/null | head -1)
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$deb_file" ]; then
|
||||||
|
info "安装驱动包: $deb_file"
|
||||||
|
dpkg -i "$deb_file" || apt install -f -y
|
||||||
|
success "奔图驱动安装完成"
|
||||||
|
else
|
||||||
|
warn "未找到适合的驱动包"
|
||||||
|
warn "请手动从 https://www.pantum.com 下载驱动"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 清理
|
||||||
|
cd - > /dev/null
|
||||||
|
rm -rf "$tmp_dir"
|
||||||
|
}
|
||||||
|
|
||||||
# 安装驱动
|
# 安装驱动
|
||||||
install_drivers() {
|
install_drivers() {
|
||||||
local packages=""
|
local packages=""
|
||||||
|
local install_pantum=false
|
||||||
|
|
||||||
for choice in $driver_choice; do
|
for choice in $driver_choice; do
|
||||||
case $choice in
|
case $choice in
|
||||||
@@ -214,9 +291,11 @@ install_drivers() {
|
|||||||
packages="$packages printer-driver-brlaser"
|
packages="$packages printer-driver-brlaser"
|
||||||
;;
|
;;
|
||||||
5)
|
5)
|
||||||
|
install_pantum=true
|
||||||
|
;;
|
||||||
|
6)
|
||||||
info "添加全部驱动..."
|
info "添加全部驱动..."
|
||||||
packages="printer-driver-all hplip printer-driver-gutenprint printer-driver-brlaser"
|
packages="printer-driver-all hplip printer-driver-gutenprint printer-driver-brlaser"
|
||||||
break
|
|
||||||
;;
|
;;
|
||||||
0)
|
0)
|
||||||
info "跳过驱动安装"
|
info "跳过驱动安装"
|
||||||
@@ -229,6 +308,11 @@ install_drivers() {
|
|||||||
info "正在安装驱动: $packages"
|
info "正在安装驱动: $packages"
|
||||||
apt install -y $packages
|
apt install -y $packages
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 安装奔图驱动
|
||||||
|
if [ "$install_pantum" = true ]; then
|
||||||
|
install_pantum_driver
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# 配置CUPS
|
# 配置CUPS
|
||||||
@@ -346,7 +430,7 @@ main() {
|
|||||||
|
|
||||||
# 2. 安装 CUPS 和 Avahi
|
# 2. 安装 CUPS 和 Avahi
|
||||||
info "安装 CUPS 和 Avahi..."
|
info "安装 CUPS 和 Avahi..."
|
||||||
apt install -y cups avahi-daemon
|
apt install -y cups avahi-daemon wget unzip
|
||||||
success "CUPS 和 Avahi 安装完成"
|
success "CUPS 和 Avahi 安装完成"
|
||||||
|
|
||||||
# 3. 安装中文语言包(CUPS汉化)
|
# 3. 安装中文语言包(CUPS汉化)
|
||||||
|
|||||||
Reference in New Issue
Block a user