perl-linux-gpib-git
MEDIUM
maintainer dreieck
0 votes
base
linux-gpib-git
scanned 2026-09-05 16:00:23.828148
Why flagged
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
Triggered rules
Medium
source=() URL on a non-standard host
source_untrusted_domain
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
-
PKGBUILD:59
"${_gitname}::git+https://git.code.sf.net/p/linux-gpib/git"
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: dreieck (https://aur.archlinux.org/account/dreieck)
2
# Contributor: Spyros Stathopoulos <foucault.online (at) gmail[dot[com> (https://aur.archlinux.org/account/Foucault)
3
# Contributor: Alex Forenchich <alex(at(alexforencich[dot]com>
4
5
# PKGBUILD taken and modified from the PKGBUILD of
6
# * 'linux-gpib-dkms' (https://aur.archlinux.org/packages/linux-gpib-dkms),
7
# with a peek into the PKGBUILDs of
8
# * 'python-linux-gpib' (https://aur.archlinux.org/packages/python-linux-gpib) and
9
# * 'python2-linux-gpib' (https://aur.archlinux.org/packages/python2-linux-gpib),
10
# on 2025-04-29.
11
12
_gitname='linux-gpib'
13
_pkgbase="${_gitname}"
14
pkgbase="${_pkgbase}-git"
15
pkgname=(
16
"linux-gpib-git"
17
"linux-gpib-docs-git"
18
"linux-gpib-dkms-git"
19
"linux-gpib-user-git"
20
## Bindings for other languages:
21
"guile-linux-gpib-git"
22
"perl-linux-gpib-git"
23
"php-linux-gpib-git"
24
"python-linux-gpib-git"
25
#"python2-linux-gpib-git"
26
"tcl-linux-gpib-git"
27
)
28
pkgver=4.3.7.r2274.20260820.c49314b5
29
pkgrel=1
30
pkgdesc='A support package for GPIB (IEEE 488) hardware: Kernel drivers, userspace utilities and libraries, python bindings.'
31
arch=('i686' 'x86_64' 'aarch64')
32
url='http://linux-gpib.sourceforge.net/'
33
license=('GPL-2.0-only')
34
makedepends=(
35
'autoconf'
36
'automake'
37
'bison'
38
# 'docbook-utils'
39
'gcc-libs'
40
'git'
41
'glibc'
42
'guile'
43
'libtool'
44
'make'
45
'perl'
46
'php'
47
'python'
48
'python-build'
49
'python-installer'
50
'python-setuptools'
51
'python-wheel'
52
# 'python2'
53
# 'python2-setuptools'
54
'readline'
55
'tcl'
56
'which'
57
)
58
source=(
59
"${_gitname}::git+https://git.code.sf.net/p/linux-gpib/git"
60
"dkms.conf.in"
61
"linux-gpib-kernel.install"
62
)
63
sha256sums=(
64
'SKIP' # Main upstream source
65
'9b7e01d13be0b15bc5c5a4d1d3a0c8e6cdb488c2eff5fb835c8672047ca9de77' # dkms.conf.in
66
'e745f2a6acc4f1bdf06e0ae15763e07f6a75b4112f7738d8c4fd2f5140e4327e' # linux-gpib-user.install
67
)
68
options+=('emptydirs')
69
70
71
prepare() {
72
cd "${srcdir}"
73
74
printf '%s\n' " > Creating 'dkms.conf' from 'dkms.conf.in' ..."
75
sed -e "s/@PACKAGE_VERSION@/${pkgver}/" dkms.conf.in > dkms.conf
76
77
cd "${srcdir}/${_gitname}"
78
79
git log > git.log
80
81
cd linux-gpib-kernel
82
83
printf '%s\n' " > Patching kernel module makefile to be DKMS compatible ..."
84
sed -E -e 's|`uname -r`|$(LINUX_VERSION)|' -i Makefile
85
86
printf '%s\n' " > Changing some stuff in some driver sources ..."
87
sed -i -e 's/ioremap_nocache/ioremap/g' drivers/gpib/eastwood/fluke_gpib.c
88
sed -i -e 's/config.slave_id = 0;//g' drivers/gpib/eastwood/fluke_gpib.c
89
sed -i -e 's/ioremap_nocache/ioremap/g' drivers/gpib/fmh_gpib/fmh_gpib.c
90
sed -i -e 's/config.slave_id = 0;//g' drivers/gpib/fmh_gpib/fmh_gpib.c
91
92
case "${CARCH}" in
93
'x86_64')
94
printf '%s\n' " > remove the GPIO driver from build recipe as it's failing to compile on x64 ..."
95
sed -i -e 's/obj-y += gpio\///g' drivers/gpib/Makefile
96
;;
97
esac
98
99
cd "${srcdir}/${_gitname}"
100
cd linux-gpib-user
101
102
printf '%s\n' " > fix 'FXLOAD_OPTIONS' in 'usb/gpib_udev_fxloader.in' ..."
103
sed -i -e 's/fx2/fx2 -p \$BUSNUM,\$DEVNUM/g' usb/gpib_udev_fxloader.in
104
105
# printf '%s\n' " > Creating 'usb/99-gpib-generic.rules' ..."
106
# printf '%s\n' 'ACTION=="add|change", KERNEL=="gpib[0-9]*", MODE="0660", GROUP="gpib"' >| usb/99-gpib-generic.rules
107
108
cd "${srcdir}/${_gitname}"
109
}
110
111
pkgver() {
112
cd "${srcdir}/${_gitname}"
113
114
_ver="$(grep -E '^[[:space:]]*#define[[:space:]]+GPIB_VERSION' linux-gpib-kernel/drivers/gpib/include/version.h | tail -n1 | awk '{print $3}' | tr -d \"\')"
115
_rev="$(git rev-list --count HEAD)"
116
_date="$(git log -1 --date=format:"%Y%m%d" --format="%ad")"
117
_hash="$(git rev-parse --short HEAD)"
118
119
if [ -z "${_ver}" ]; then
120
error "Version could not be determined."
121
return 1
122
else
123
printf '%s' "${_ver}.r${_rev}.${_date}.${_hash}"
124
fi
125
}
126
127
build() {
128
cd "${srcdir}/${_gitname}"
129
cd linux-gpib-user
130
131
printf '%s\n' " > Configuring userland utils ..."
132
./bootstrap
133
./configure \
134
--prefix=/usr \
135
--sysconfdir=/etc \
136
--bindir=/usr/bin \
137
--sbindir=/usr/bin \
138
--enable-shared \
139
--enable-static \
140
--enable-guile-binding \
141
--enable-perl-binding \
142
--enable-php-binding \
143
--enable-python-binding \
144
--enable-tcl-binding \
145
--disable-documentation
146
# --with-tcl=/usr/lib
147
printf '%s\n' " > Building userland utils ..."
148
make
149
150
printf '%s\n' " > Building python binding using 'python -m build --wheel --no-isolation' ..."
151
cd language/python
152
python -m build --wheel --no-isolation
153
154
## INFO: If you want to build for 'python2', add it to 'makedepends' array and use 'python2 setup.py ...' in the 'linux-gpib-user/language/python' directory.
155
}
156
157
package_linux-gpib-git() {
158
pkgdesc="Metapackage installing 'linux-gpib-kernel' and 'linux-gpib-user', and providing 'linux-gpib' dependency."
159
arch=('any')
160
depends=(
161
"linux-gpib-dkms-git=${pkgver}"
162
"linux-gpib-user-git=${pkgver}"
163
)
164
optdepends=(
165
"python-linux-gpib: Python bindings."
166
"python2-linux-gpib: Python2 bindings."
167
)
168
provides=(
169
"linux-gpib=${pkgver}"
170
)
171
conflicts=()
172
replaces=(
173
"linux-gpib-svn<=r2106"
174
)
175
}
176
177
package_linux-gpib-docs-git() {
178
pkgdesc="Documentation for 'linux-gpib-*' packages."
179
arch=('any')
180
license=('GFDL-1.2-no-invariants-or-later')
181
depends=()
182
optdepends=(
183
"linux-gpib-modules: For the kernel modules this documentation is for."
184
"linux-gpib-user: For the user space utilities this documentation is for."
185
"php: For PHP examples."
186
"perl: For Perl examples."
187
"tk: For tcl examples."
188
)
189
provides=(
190
"linux-gpib-docs=${pkgver}"
191
)
192
conflicts=(
193
"linux-gpib-docs"
194
)
195
replaces=()
196
197
cd "${srcdir}/${_gitname}"
198
199
install -Dvm644 -t "${pkgdir}/usr/share/doc/${_pkgbase}" git.log ChangeLog README.md README.rel
200
201
cd linux-gpib-kernel
202
install -Dvm644 -t "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-kernel" AUTHORS INSTALL NEWS README
203
204
cd ../linux-gpib-user
205
install -Dvm644 -t "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user" AUTHORS ChangeLog INSTALL README README.HAMEG README.hp82335 TODO
206
cp -rv doc "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user"/
207
208
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" doc/fdl.xml
209
210
211
local _binding
212
for _binding in guile perl python tcl; do
213
install -Dvm644 -t "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user/${_binding}" "language/${_binding}/README"
214
done
215
216
cp -rv language/perl/examples "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user/perl"/
217
find "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user/perl/examples" -type f -name '*.pl' -exec chmod 775 {} +
218
install -dvm755 "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user/php"
219
220
cp -rv language/php/TESTS "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user/php"/
221
222
cp -rv language/tcl/examples "${pkgdir}/usr/share/doc/${_pkgbase}/linux-gpib-user/tcl"/
223
}
224
225
package_linux-gpib-dkms-git() {
226
pkgdesc="Kernel drivers (DKMS) for some GPIB (IEEE 488) hardware."
227
depends=(
228
'dkms'
229
'linux>=2.6.8'
230
)
231
optdepends=(
232
"fxload: firmware upload support for NI USB-B, Keithley KUSB-488 and Agilent 82357."
233
"linux-gpib-firmware: Firmware for some devices."
234
"linux-gpib-libs: User space libraries."
235
"linux-gpib-tools: User space utilities."
236
"linux-gpib-udev: udev rules."
237
"linux-gpib-docs: Documentation."
238
"gpib-utils: More user space utilities."
239
)
240
provides=(
241
"linux-gpib-dkms=${pkgver}"
242
"linux-gpib-kernel=${pkgver}"
243
"linux-gpib-kernel-git=${pkgver}"
244
"linux-gpib-modules=${pkgver}"
245
)
246
conflicts=(
247
"linux-gpib-dkms"
248
"linux-gpib-kernel"
249
"linux-gpib-modules"
250
)
251
replaces=()
252
install='linux-gpib-kernel.install'
253
254
cd "${srcdir}/${_gitname}"
255
256
local _modulesourceinstalldir="/usr/src/linux-gpib-${pkgver}"
257
install -dvm755 "${pkgdir}/${_modulesourceinstalldir}"
258
cp -rv linux-gpib-kernel/* "${pkgdir}/${_modulesourceinstalldir}"/
259
install -Dvm644 -t "${pkgdir}/${_modulesourceinstalldir}" "${srcdir}/dkms.conf"
260
261
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" linux-gpib-kernel/COPYING
262
}
263
264
package_linux-gpib-user-git() {
265
pkgdesc='Userspace libraries and tools for GPIB (IEEE 488) hardware, as well as udev rules.'
266
depends=(
267
'bash'
268
'gcc-libs'
269
'glibc'
270
'libreadline.so'
271
)
272
optdepends=(
273
"linux-gpib-docs: Documentation."
274
"udev: For the provided udev rules."
275
)
276
provides=(
277
"linux-gpib-user=${pkgver}"
278
"linux-gpib-libs=${pkgver}"
279
"linux-gpib-libs-git=${pkgver}"
280
"linux-gpib-tools=${pkgver}"
281
"linux-gpib-tools-git=${pkgver}"
282
"linux-gpib-udev=${pkgver}"
283
"linux-gpib-udev-git=${pkgver}"
284
"libgpib.so"
285
)
286
conflicts=(
287
"linux-gpib-user"
288
"linux-gpib-libs"
289
"linux-gpib-tools"
290
"linux-gpib-udev"
291
"libgpib.so"
292
)
293
replaces=()
294
backup=(
295
'etc/gpib.conf'
296
'etc/udev/rules.d/98-gpib-generic.rules'
297
'etc/udev/rules.d/99-agilent_82357a.rules'
298
'etc/udev/rules.d/99-lpvo_usb_gpib.rules'
299
'etc/udev/rules.d/99-ni_usb_gpib.rules'
300
)
301
302
cd "${srcdir}/${_gitname}/linux-gpib-user"
303
printf '%s\n' " > Installing user space libraries and programmes ..."
304
make INSTALL_MOD_PATH="${pkgdir}" DESTDIR="${pkgdir}" -j1 install
305
306
## Remove the language bindings which will be installed by the separate packages:
307
printf '%s\n' " > Removing files that are provided by split out language binding packages ..."
308
rm -fv "${pkgdir}/usr/lib"/libgpib-guile*.so
309
rm -Rfv "${pkgdir}/usr/lib"/php
310
rm -Rfv "${pkgdir}/usr/lib"/python3*
311
rm -fv "${pkgdir}/usr/lib"/libgpib_tcl*.so
312
313
cd "${srcdir}/${_gitname}"
314
315
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" linux-gpib-user/COPYING
316
}
317
318
package_guile-linux-gpib-git() {
319
pkgdesc="Guile bindings for 'linux-gpib' (libraries for GPIB (IEEE 488) hardware)."
320
depends=(
321
"libgpib.so"
322
"glibc"
323
"guile"
324
)
325
optdepends=(
326
"linux-gpib-docs: Documentation"
327
)
328
provides=(
329
"guile-linux-gpib=${pkgver}"
330
)
331
conflicts=(
332
"guile-linux-gpib"
333
)
334
replaces=()
335
336
cd "${srcdir}/${_gitname}/linux-gpib-user/language/guile"
337
printf '%s\n' " > Installing guile bindings ..."
338
make INSTALL_MOD_PATH="${pkgdir}" DESTDIR="${pkgdir}" -j1 install
339
340
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/${_gitname}/linux-gpib-user/COPYING"
341
}
342
343
package_perl-linux-gpib-git() {
344
pkgdesc="Perl bindings for 'linux-gpib' (libraries for GPIB (IEEE 488) hardware)."
345
depends=(
346
"libgpib.so"
347
"glibc"
348
"perl"
349
)
350
optdepends=(
351
"linux-gpib-docs: Documentation"
352
)
353
provides=(
354
"perl-linux-gpib=${pkgver}"
355
)
356
conflicts=(
357
"perl-linux-gpib"
358
)
359
replaces=()
360
361
cd "${srcdir}/${_gitname}/linux-gpib-user/language/perl"
362
printf '%s\n' " > Installing perl bindings ..."
363
make INSTALL_MOD_PATH="${pkgdir}" DESTDIR="${pkgdir}" -j1 install
364
365
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/${_gitname}/linux-gpib-user/COPYING"
366
}
367
368
package_php-linux-gpib-git() {
369
pkgdesc="PHP bindings for 'linux-gpib' (libraries for GPIB (IEEE 488) hardware)."
370
depends=(
371
"libgpib.so"
372
"glibc"
373
"php"
374
)
375
optdepends=(
376
"linux-gpib-docs: Documentation"
377
)
378
provides=(
379
"php-linux-gpib=${pkgver}"
380
)
381
conflicts=(
382
"php-linux-gpib"
383
)
384
replaces=()
385
386
cd "${srcdir}/${_gitname}/linux-gpib-user/language/php"
387
printf '%s\n' " > Installing php bindings ..."
388
make INSTALL_MOD_PATH="${pkgdir}" DESTDIR="${pkgdir}" -j1 install
389
390
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/${_gitname}/linux-gpib-user/COPYING"
391
}
392
393
package_python-linux-gpib-git() {
394
pkgdesc="Python 3 bindings for 'linux-gpib' (libraries for GPIB (IEEE 488) hardware)."
395
depends=(
396
"libgpib.so"
397
"glibc"
398
"python>=3"
399
)
400
optdepends=(
401
"linux-gpib-docs: Documentation"
402
)
403
provides=(
404
"python-linux-gpib=${pkgver}"
405
)
406
conflicts=(
407
"python-linux-gpib"
408
)
409
replaces=()
410
411
cd "${srcdir}/${_gitname}/linux-gpib-user/language/python"
412
printf '%s\n' " > Installing python bindings ..."
413
python -m installer --destdir="$pkgdir" --compile-bytecode=2 dist/*.whl
414
# make INSTALL_MOD_PATH="${pkgdir}" DESTDIR="${pkgdir}" -j1 install
415
416
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/${_gitname}/linux-gpib-user/COPYING"
417
}
418
419
# package_python2-linux-gpib-git() {
420
# pkgdesc="Python 2 bindings for 'linux-gpib' (libraries for GPIB (IEEE 488) hardware)."
421
# depends=(
422
# "libgpib.so"
423
# "glibc"
424
# "python2"
425
# )
426
# optdepends=(
427
# "linux-gpib-docs: Documentation"
428
# )
429
# provides=(
430
# "python2-linux-gpib=${pkgver}"
431
# )
432
# conflicts=(
433
# "python2-linux-gpib"
434
# )
435
# replaces=()
436
#
437
# cd "${srcdir}/${_gitname}/linux-gpib-user/language/python"
438
# printf '%s\n' " > Installing python2 bindings ..."
439
# python2 setup.py install --prefix=/usr --root=${pkgdir}
440
#
441
# install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/${_gitname}/linux-gpib-user/COPYING"
442
# }
443
444
package_tcl-linux-gpib-git() {
445
pkgdesc="Tcl bindings for 'linux-gpib' (libraries for GPIB (IEEE 488) hardware)."
446
depends=(
447
"libgpib.so"
448
"glibc"
449
"tcl"
450
)
451
optdepends=(
452
"linux-gpib-docs: Documentation"
453
)
454
provides=(
455
"tcl-linux-gpib=${pkgver}"
456
)
457
conflicts=(
458
"tcl-linux-gpib"
459
)
460
replaces=()
461
462
cd "${srcdir}/${_gitname}/linux-gpib-user/language/tcl"
463
printf '%s\n' " > Installing tcl bindings ..."
464
make INSTALL_MOD_PATH="${pkgdir}" DESTDIR="${pkgdir}" -j1 install
465
466
install -Dvm644 -t "${pkgdir}/usr/share/licenses/${pkgname}" "${srcdir}/${_gitname}/linux-gpib-user/COPYING"
467
}
468
469
# vim:ts=4:et:sw=4
470
Changes since previous scan
--- PKGBUILD @ 2026-06-19 19:07+++ PKGBUILD @ 2026-09-05 16:00@@ -25,7 +25,7 @@ #"python2-linux-gpib-git" "tcl-linux-gpib-git" )-pkgver=4.3.7.r2193.20251128.bef0c613+pkgver=4.3.7.r2274.20260820.c49314b5 pkgrel=1 pkgdesc='A support package for GPIB (IEEE 488) hardware: Kernel drivers, userspace utilities and libraries, python bindings.' arch=('i686' 'x86_64' 'aarch64')Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-05 16:00:23 | Medium | 1 |
| 2026-06-19 19:07:35 | Clean | 2 |
| 2026-06-18 16:11:54 | Medium | 1 |