omdrop-owl
LOW
maintainer t4t5
0 votes
scanned 2026-10-21 17:32:44.330620
Why flagged
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
Triggered rules
Low
Few votes, recently uploaded
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
PKGBUILD
1
# Maintainer: T4T5 <t4t5@hey.com>
2
3
# omdrop-owl: the radio half of omdrop on Wi-Fi cards without Apple's Broadcom
4
# firmware, through OWL.
5
#
6
# Generated by tools/aur-pkgbuild.sh from the PKGBUILD of
7
# https://github.com/t4t5/omdrop-owl at v0.3.0: change it there.
8
pkgname=omdrop-owl
9
pkgver=0.3.0
10
pkgrel=1
11
pkgdesc="AirDrop radio backend for omdrop on non-Broadcom Wi-Fi: AWDL in userspace through OWL"
12
arch=('x86_64' 'aarch64')
13
url="https://github.com/t4t5/omdrop-owl"
14
# OWL (and our patches to it) GPL-3.0-or-later; its bundled radiotap parser
15
# ISC; omdrop-awdl's tools GPL-2.0-only. They ship as separate programs.
16
license=('GPL-3.0-or-later' 'GPL-2.0-only' 'ISC')
17
depends=('bash' 'python' 'iproute2' 'iputils' 'iw' 'polkit' 'util-linux' 'procps-ng'
18
'libpcap' 'libev' 'libnl' 'networkmanager' 'keyutils'
19
'python-libarchive-c' 'python-pillow' 'python-zeroconf' 'python-ifaddr'
20
'bluez' 'python-dbus' 'python-gobject')
21
optdepends=('hostapd: exclusive mode on cards without ad-hoc mode')
22
makedepends=('git' 'cmake' 'gcc')
23
# Both own /usr/lib/omdrop: one radio backend at a time.
24
conflicts=('brcmfmac-awdl-dkms')
25
install="${pkgname}.install"
26
27
# Keep in step with ./pins (prepare() checks).
28
_owl_commit=832d70f815c3d4a06a02117bf0fc5e868daa1ff0
29
_omdrop_awdl_commit=534f91a525337951ca19c311e53d333bd6d55100
30
source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz"
31
"owl::git+https://github.com/jedbillyb/owl.git#commit=${_owl_commit}"
32
"googletest::git+https://github.com/google/googletest.git"
33
"radiotap::git+https://github.com/radiotap/radiotap-library.git"
34
"omdrop-awdl::git+https://github.com/brentkearney/omdrop-awdl.git#commit=${_omdrop_awdl_commit}")
35
sha256sums=('f64ec24563e70cf923cebc78ad4fa61255f50c319fd98e5706a90f742fe10a5b'
36
'a56d9c05716db293cce2f58a069a7100faedfcf15b4a4bef25c4a7a361dfae3d'
37
'SKIP'
38
'SKIP'
39
'894f99d3e7792142cc9405cf44897b366022e9531ddfba21b01dfa4f3e8588b3')
40
41
# omdrop-awdl's radio-independent tools, installed unmodified beside our
42
# helper: send-to-peer finds the helper, the sender and the BLE advertiser
43
# next to itself.
44
_from_omdrop_awdl=(send-to-peer airdrop-send.py awdl-af-parse.py awdl_identity.py
45
awdl_debug.py ble-airdrop-adv.py awdl-airdrop-adv.py awdl-mdns-respond.py)
46
47
prepare() {
48
local tree="${srcdir}/${pkgname}-${pkgver}"
49
. "${tree}/pins"
50
[[ "$OWL_COMMIT" == "$_owl_commit" && "$OMDROP_AWDL_COMMIT" == "$_omdrop_awdl_commit" ]] \
51
|| { error "PKGBUILD's pinned commits differ from ./pins"; return 1; }
52
grep -qx "VERSION=${pkgver}" "${tree}/userspace/omdrop-discoverable" \
53
|| { error "pkgver differs from VERSION in userspace/omdrop-discoverable"; return 1; }
54
55
# OWL's submodules, at the commits it records, from the clones makepkg made.
56
cd "${srcdir}/owl"
57
git submodule init
58
git config submodule.googletest.url "${srcdir}/googletest"
59
git config submodule.radiotap.url "${srcdir}/radiotap"
60
git -c protocol.file.allow=always submodule update
61
62
local p
63
for p in "${tree}"/patches/owl-*.patch; do
64
msg2 "applying ${p##*/}"
65
git apply "$p"
66
done
67
}
68
69
build() {
70
# The policy minimum is for the bundled googletest, whose
71
# cmake_minimum_required predates 3.5, which CMake 4 refuses. Only the owl
72
# target is built: googletest fails under current GCC and isn't needed.
73
cmake -S owl -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -Wno-dev
74
cmake --build build --target owl
75
}
76
77
check() {
78
case "$(build/daemon/owl -S intersect -R 12 -m 02:00:00:00:00:01 -F -E -A -h 2>&1 || true)" in
79
*"invalid option"*|*"-R takes"*|*"-m takes"*) error "owl lacks -S, -R, -m, -F, -E or -A: the patches did not apply"; return 1 ;;
80
esac
81
}
82
83
package() {
84
local tree="${srcdir}/${pkgname}-${pkgver}" lib="${pkgdir}/usr/lib/omdrop" f
85
install -Dm755 "${tree}/userspace/omdrop-discoverable" "${lib}/omdrop-discoverable"
86
install -Dm644 "${tree}/userspace/owl-profiles" "${lib}/owl-profiles"
87
install -Dm755 build/daemon/owl "${lib}/owl"
88
for f in "${_from_omdrop_awdl[@]}"; do
89
install -Dm755 "omdrop-awdl/userspace/${f}" "${lib}/${f}"
90
done
91
install -Dm644 "${tree}/packaging/omdrop-owl.policy" \
92
"${pkgdir}/usr/share/polkit-1/actions/io.github.t4t5.omdrop-owl.policy"
93
install -Dm644 "${tree}/packaging/99-omdrop-owl-unmanaged.conf" \
94
"${pkgdir}/usr/lib/NetworkManager/conf.d/99-omdrop-owl-unmanaged.conf"
95
install -Dm644 "${tree}/packaging/10-omdrop-owl-awdl0.link" \
96
"${pkgdir}/usr/lib/systemd/network/10-omdrop-owl-awdl0.link"
97
install -Dm644 "${tree}/README.md" "${pkgdir}/usr/share/doc/${pkgname}/README.md"
98
install -Dm644 owl/COPYING "${pkgdir}/usr/share/licenses/${pkgname}/OWL-GPL-3.0"
99
install -Dm644 omdrop-awdl/LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/omdrop-awdl-LICENSE"
100
install -Dm644 owl/radiotap/COPYING "${pkgdir}/usr/share/licenses/${pkgname}/radiotap-ISC"
101
}
102
Changes since previous scan
--- PKGBUILD @ 2026-10-17 00:21+++ PKGBUILD @ 2026-10-21 17:32@@ -4,9 +4,9 @@ # firmware, through OWL. # # Generated by tools/aur-pkgbuild.sh from the PKGBUILD of-# https://github.com/t4t5/omdrop-owl at v0.2.0: change it there.+# https://github.com/t4t5/omdrop-owl at v0.3.0: change it there. pkgname=omdrop-owl-pkgver=0.2.0+pkgver=0.3.0 pkgrel=1 pkgdesc="AirDrop radio backend for omdrop on non-Broadcom Wi-Fi: AWDL in userspace through OWL" arch=('x86_64' 'aarch64')@@ -18,6 +18,7 @@ 'libpcap' 'libev' 'libnl' 'networkmanager' 'keyutils' 'python-libarchive-c' 'python-pillow' 'python-zeroconf' 'python-ifaddr' 'bluez' 'python-dbus' 'python-gobject')+optdepends=('hostapd: exclusive mode on cards without ad-hoc mode') makedepends=('git' 'cmake' 'gcc') # Both own /usr/lib/omdrop: one radio backend at a time. conflicts=('brcmfmac-awdl-dkms')@@ -31,7 +32,7 @@ "googletest::git+https://github.com/google/googletest.git" "radiotap::git+https://github.com/radiotap/radiotap-library.git" "omdrop-awdl::git+https://github.com/brentkearney/omdrop-awdl.git#commit=${_omdrop_awdl_commit}")-sha256sums=('2f26d1dcfb75a7001b886a0e21620c21da5f979333d52e7f3541259a091342c7'+sha256sums=('f64ec24563e70cf923cebc78ad4fa61255f50c319fd98e5706a90f742fe10a5b' 'a56d9c05716db293cce2f58a069a7100faedfcf15b4a4bef25c4a7a361dfae3d' 'SKIP' 'SKIP'@@ -74,8 +75,8 @@ } check() {- case "$(build/daemon/owl -S intersect -R 12 -m 02:00:00:00:00:01 -F -E -h 2>&1 || true)" in- *"invalid option"*|*"-R takes"*|*"-m takes"*) error "owl lacks -S, -R, -m, -F or -E: the patches did not apply"; return 1 ;;+ case "$(build/daemon/owl -S intersect -R 12 -m 02:00:00:00:00:01 -F -E -A -h 2>&1 || true)" in+ *"invalid option"*|*"-R takes"*|*"-m takes"*) error "owl lacks -S, -R, -m, -F, -E or -A: the patches did not apply"; return 1 ;; esac } Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-21 17:32:44 | Low | 1 |
| 2026-10-17 00:21:55 | Clean | 2 |
| 2026-10-16 15:16:11 | Low | 1 |
| 2026-10-15 00:28:05 | Clean | 2 |
| 2026-10-14 17:20:19 | Low | 1 |
| 2026-10-14 00:06:47 | Clean | 2 |
| 2026-10-13 19:18:20 | Low | 1 |
| 2026-10-13 00:23:45 | Clean | 2 |
| 2026-10-12 09:12:50 | Low | 1 |