resource-hacker
maintainer bemxio
· 2 votes
· scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged
The package downloads a prebuilt Windows executable from the project's official website, which is not on a standard code hosting platform but is plausibly the legitimate source; the binary is not executed directly on the host and is intended to run under Wine, with no obfuscated scripts or remote code execution.
Triggered rules
LOW
AI review downgraded a static finding
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads a prebuilt Windows executable from the project's official website, which is not on a standard code hosting platform but is plausibly the legitimate source; the binary is not executed directly on the host and is intended to run under Wine, with no obfuscated scripts or remote code execution.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:17
source=("${pkgname}-${pkgver}.zip::https://www.angusj.com/resourcehacker/resource_hacker.zip" "resource-hacker" "LICENSE.resource-hacker")
PKGBUILD
1 offending line(s) highlighted
1
# Maintainer: bemxio <bemxiov at protonmail dot com>
2
3
pkgname="resource-hacker"
4
pkgdesc="A freeware resource compiler & decompiler for Windows applications"
5
6
pkgver=5.2.8
7
pkgrel=3
8
9
arch=(any)
10
11
url="https://www.angusj.com/resourcehacker"
12
license=("LicenseRef-ResourceHacker")
13
14
depends=(wine)
15
makedepends=(gendesk icoutils)
16
17
source=("${pkgname}-${pkgver}.zip::https://www.angusj.com/resourcehacker/resource_hacker.zip" "resource-hacker" "LICENSE.resource-hacker")
18
md5sums=("5049d2d44a5b378c6dd92524b902c4e7" "01748cf604897644bb6bdb410cffba19" "74ac74cfc24b7b4561f3be670c63da24")
19
20
prepare() {
21
# extract icon out of executable
22
wrestool -x -n MAINICON ResourceHacker.exe -o ResourceHacker.ico
23
24
# get highest quality PNG from icon file
25
icotool -x ResourceHacker.ico -i 1 -o ResourceHacker.png
26
27
# generate .desktop file
28
gendesk -f -n \
29
--pkgname "Resource Hacker" \
30
--pkgdesc "${pkgdesc}" \
31
--exec resource-hacker \
32
--icon resource-hacker \
33
--categories "Development;Utility"
34
}
35
36
package() {
37
# copy all program files
38
install -Dm755 ResourceHacker.exe "${pkgdir}/usr/share/${pkgname}/ResourceHacker.exe"
39
40
install -Dm644 ReadMe.txt "${pkgdir}/usr/share/doc/${pkgname}/ReadMe.txt"
41
install -Dm644 changes.txt "${pkgdir}/usr/share/doc/${pkgname}/changes.txt"
42
43
find help -type f -exec install -Dm644 {} "${pkgdir}/usr/share/${pkgname}/{}" \;
44
find samples -type f -exec install -Dm644 {} "${pkgdir}/usr/share/${pkgname}/{}" \;
45
46
# copy executable script
47
install -Dm755 resource-hacker "${pkgdir}/usr/bin/${pkgname}"
48
49
# copy extracted icon and generated .desktop file
50
install -Dm644 ResourceHacker.png "${pkgdir}/usr/share/pixmaps/${pkgname}.png"
51
install -Dm644 "Resource Hacker.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
52
53
# copy license file
54
install -Dm644 LICENSE.resource-hacker "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
55
}
56
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | LOW | 2 |
| 2026-08-02 00:16:08 | LOW | 2 |
| 2026-08-01 00:11:18 | LOW | 2 |
| 2026-07-31 00:14:10 | LOW | 2 |
| 2026-07-30 00:17:23 | LOW | 2 |
| 2026-07-29 00:25:53 | LOW | 2 |
| 2026-07-28 00:07:28 | LOW | 2 |
| 2026-07-27 00:24:32 | LOW | 2 |
| 2026-07-26 00:07:32 | LOW | 2 |
| 2026-07-25 00:13:44 | LOW | 2 |
| 2026-07-24 00:02:28 | LOW | 2 |
| 2026-07-23 00:14:47 | LOW | 2 |
| 2026-07-22 00:29:32 | LOW | 2 |
| 2026-07-21 00:24:15 | LOW | 2 |
| 2026-07-20 00:19:49 | LOW | 2 |
| 2026-07-19 00:17:08 | LOW | 2 |
| 2026-07-18 00:14:48 | LOW | 2 |
| 2026-07-17 00:06:16 | LOW | 2 |
| 2026-07-16 00:05:41 | LOW | 2 |
| 2026-07-15 00:09:25 | LOW | 2 |