1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
# Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
# Contributor: snemc snemc @3112671039@qq.com
pkgname=umi-ocr-bin
_pkgname=Umi-OCR
pkgver=2.1.5
pkgrel=3
pkgdesc="Free, Open-source, Batch Offline OCR Software.(Prebuilt version)开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库"
arch=('x86_64')
url="https://github.com/hiroi-sora/Umi-OCR"
license=('MIT')
depends=(
'pyside6'
'python-pymupdf>=1.23'
'python-fonttools>=4.47'
'python-pillow>=10.2'
'python-psutil>=5.9'
'python-pynput'
'qt6-webengine'
'python-wheel'
'python-defusedxml'
'python-attrs'
'libxrandr'
'gdk-pixbuf2'
'python-brotli'
'libxcomposite'
'libxcrypt-compat'
'python-setuptools'
'python-pyqt6'
'python-tornado'
'openssl-1.1'
'python-reportlab'
'unixodbc'
'libpulse'
'python-typing_extensions'
'python-opengl'
'python-jinja'
'python-wxpython'
'qt5-tools'
'python-pyqt5'
'python-cairo'
'qt6-multimedia'
'postgresql-libs'
'python-simplejson'
'python-cryptography'
'python-lz4'
'python-mako'
'qt6-quick3d'
'python-lxml'
'python-pip'
'qt6-charts'
'python-pyopenssl'
'python-cffi'
'python-docutils'
'python-requests'
'qt6-webengine'
)
makedepends=(
'gendesk'
)
options=(
'!strip'
)
source=("${pkgname%-bin}-${pkgver}.tar.gz::${url}/releases/download/v${pkgver}/${_pkgname}_Linux_Paddle_${pkgver}.tar.xz")
sha256sums=('7ff32e5dc818d67171820545100433c86e7e71155f9bad0851fad2ced9588f9b')
prepare() {
gendesk -q -f -n \
--pkgname="${pkgname%-bin}" \
--pkgdesc="${pkgdesc}" \
--categories="Utility" \
--name="${_pkgname}" \
--exec="/usr/lib/${pkgname%-bin}/${pkgname%-bin}.sh"
find "${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}" -type f -perm 600 -exec chmod 644 {} +
sed -i "s/UPLOAD_DIR = \".\/temp_doc\"/UPLOAD_DIR = os.path.join(os.environ.get(\'XDG_CACHE_HOME\', os.path.expanduser(\'~\/.cache\')), \'umi-ocr\')/g" \
"${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}/UmiOCR-data/py_src/server/doc_server.py"
sed -i -e "
32i\from pathlib import Path
/# 日志保存目录/a \# 使用XDG标准目录\nconfig_dir = os.environ.get('XDG_CONFIG_HOME', os.path.expanduser('~\/.config'))
s/Logs_Dir = \".\/logs\"/Logs_Dir = os.path.join(config_dir, \"umi-ocr\", \"logs\")/g
/def open_logs_dir():/,/os.startfile(Logs_Dir)/ {
/def open_logs_dir():/a \ import subprocess
/os.startfile(Logs_Dir)/c \ subprocess.Popen(['xdg-open', Logs_Dir])
}
" "${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}/UmiOCR-data/py_src/imports/umi_log.py"
sed -i -e "
6i\from pathlib import Path
7i\# 使用XDG标准目录\nconfig_dir = os.environ.get('XDG_CONFIG_HOME', os.path.expanduser('~\/.config'))
s/_FileName = \".\/\.pre_settings\"/_FileName = os.path.join(config_dir, \"umi-ocr\", \".pre_settings\")/g
" "${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}/UmiOCR-data/py_src/utils/pre_configs.py"
# 修改 global_configs_connector.py 跳过写权限检查
sed -i 's/if not os.access(cwd, os.W_OK):/# 跳过写权限检查,因为程序已经修改了所有需要写权限的路径\n #if not os.access(cwd, os.W_OK):/g' \
"${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}/UmiOCR-data/py_src/utils/global_configs_connector.py"
find "${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}" -type f -name "run.sh" -exec chmod 755 {} +
}
package() {
install -Dm755 -d "${pkgdir}/usr/lib/${pkgname%-bin}"
cp -Pr --no-preserve=ownership "${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}/"* "${pkgdir}/usr/lib/${pkgname%-bin}"
install -Dm644 "${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}/docs/images/icon-256.png" "${pkgdir}/usr/share/pixmaps/${pkgname%-bin}.png"
install -Dm644 "${srcdir}/${pkgname%-bin}.desktop" -t "${pkgdir}/usr/share/applications"
install -Dm644 "${srcdir}/${_pkgname}_Linux_Paddle_${pkgver}/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
|