wadsmith-bin
LOW
maintainer codingncaffeine
0 votes
scanned 2026-10-22 05:34:05.500565
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: codingncaffeine <codingncaffeine@users.noreply.github.com>
2
# AUR binary package for WadSmith: repackages the official GitHub release tarball.
3
# Submit by pushing this and the generated .SRCINFO (makepkg --printsrcinfo > .SRCINFO) to
4
# ssh://aur@aur.archlinux.org/wadsmith-bin.git
5
pkgname=wadsmith-bin
6
pkgver=0.1.6
7
pkgrel=1
8
pkgdesc="Map editor for Doom, Heretic, Hexen and Strife, made for UZDoom and GZDoom"
9
arch=('x86_64')
10
url="https://github.com/codingncaffeine/WadSmith"
11
license=('GPL-3.0-or-later')
12
provides=('wadsmith')
13
conflicts=('wadsmith')
14
# The publish is self-contained (.NET, Skia and HarfBuzz are in the tarball). Avalonia draws through X11 or Wayland
15
# (libx11 + extensions, wayland + libxkbcommon), the 3D view through EGL/OpenGL (libglvnd); icu = .NET globalization.
16
depends=('fontconfig' 'freetype2' 'libglvnd' 'libx11' 'libxi' 'libxcursor' 'libxext' 'libxrandr' 'libxrender'
17
'libice' 'libsm' 'wayland' 'libxkbcommon' 'icu' 'zlib')
18
optdepends=('uzdoom: play your maps (uzdoom-bin provides it; or the Flatpak org.zdoom.UZDoom)'
19
'gzdoom: play your maps when UZDoom is not installed'
20
'sdl2: an object'"'"'s sound when pointing at it on the shelf')
21
options=('!strip') # a self-contained .NET bundle: stripping breaks it
22
source=("$url/releases/download/v$pkgver/WadSmith-$pkgver-linux-x64.tar.gz")
23
sha256sums=('2f42239da66088f1709d25e631cdd16fb6440a1667aa87f36bf7cd3db36d53fa')
24
# The tarball unpacks flat ("./"); stage it in its own folder so package() copies the payload wholesale.
25
noextract=("WadSmith-$pkgver-linux-x64.tar.gz")
26
27
prepare() {
28
rm -rf "$srcdir/publish"
29
mkdir -p "$srcdir/publish"
30
bsdtar -xf "$srcdir/WadSmith-$pkgver-linux-x64.tar.gz" -C "$srcdir/publish"
31
}
32
33
package() {
34
install -dm755 "$pkgdir/usr/lib/wadsmith" "$pkgdir/usr/bin"
35
36
# Copy the WHOLE publish output, never a list of names: the payload is the apphost, ~200 managed assemblies, the
37
# native libraries and the runtimeconfig/deps files, and a narrowed copy installs cleanly and fails at launch.
38
cp -a "$srcdir/publish/." "$pkgdir/usr/lib/wadsmith/"
39
rm -f "$pkgdir/usr/lib/wadsmith/"{README.txt,LICENSE,wadsmith.png}
40
41
local _dlls _f
42
_dlls=$(find "$pkgdir/usr/lib/wadsmith" -maxdepth 1 -name '*.dll' | wc -l)
43
if (( _dlls < 150 )); then
44
echo "==> ERROR: only $_dlls managed assemblies packaged (expected ~205)." >&2
45
return 1
46
fi
47
for _f in wadsmith wadsmith.dll wadsmith-cli wadsmith-cli.dll WadSmith.Core.dll WadSmith.Editor.dll wadsmith.runtimeconfig.json wadsmith.deps.json libcoreclr.so libSkiaSharp.so; do
48
if [[ ! -f "$pkgdir/usr/lib/wadsmith/$_f" ]]; then
49
echo "==> ERROR: $_f is missing from the package payload." >&2
50
return 1
51
fi
52
done
53
54
cat > "$pkgdir/usr/bin/wadsmith" <<'WRAP'
55
#!/bin/sh
56
exec /usr/lib/wadsmith/wadsmith "$@"
57
WRAP
58
cat > "$pkgdir/usr/bin/wadsmith-cli" <<'WRAP'
59
#!/bin/sh
60
exec /usr/lib/wadsmith/wadsmith-cli "$@"
61
WRAP
62
chmod 755 "$pkgdir/usr/bin/wadsmith" "$pkgdir/usr/bin/wadsmith-cli"
63
64
install -Dm644 "$srcdir/publish/wadsmith.png" "$pkgdir/usr/share/icons/hicolor/512x512/apps/wadsmith.png"
65
install -Dm644 "$srcdir/publish/README.txt" "$pkgdir/usr/share/doc/wadsmith/README.txt"
66
install -Dm644 "$srcdir/publish/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
67
install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/io.github.codingncaffeine.WadSmith.desktop" <<'DESK'
68
[Desktop Entry]
69
Name=WadSmith
70
GenericName=Map Editor
71
Comment=Build maps for Doom, Heretic, Hexen and Strife, then play them in UZDoom or GZDoom
72
Exec=wadsmith %F
73
Icon=wadsmith
74
Terminal=false
75
Type=Application
76
Categories=Game;Development;
77
Keywords=doom;uzdoom;gzdoom;map;editor;wad;udmf;level;
78
StartupWMClass=wadsmith
79
DESK
80
}
81
Changes since previous scan
--- PKGBUILD @ 2026-10-16 00:12+++ PKGBUILD @ 2026-10-22 05:34@@ -3,7 +3,7 @@ # Submit by pushing this and the generated .SRCINFO (makepkg --printsrcinfo > .SRCINFO) to # ssh://aur@aur.archlinux.org/wadsmith-bin.git pkgname=wadsmith-bin-pkgver=0.1.2+pkgver=0.1.6 pkgrel=1 pkgdesc="Map editor for Doom, Heretic, Hexen and Strife, made for UZDoom and GZDoom" arch=('x86_64')@@ -20,7 +20,7 @@ 'sdl2: an object'"'"'s sound when pointing at it on the shelf') options=('!strip') # a self-contained .NET bundle: stripping breaks it source=("$url/releases/download/v$pkgver/WadSmith-$pkgver-linux-x64.tar.gz")-sha256sums=('518af17f4631f8947f2b1e30e33c3879e907dd5968358d70a8deef9ba4756964')+sha256sums=('2f42239da66088f1709d25e631cdd16fb6440a1667aa87f36bf7cd3db36d53fa') # The tarball unpacks flat ("./"); stage it in its own folder so package() copies the payload wholesale. noextract=("WadSmith-$pkgver-linux-x64.tar.gz") Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-22 05:34:05 | Low | 1 |
| 2026-10-16 00:12:47 | Clean | 2 |
| 2026-10-15 19:13:05 | Low | 1 |
| 2026-10-15 17:12:54 | Low | 1 |
| 2026-10-15 03:10:23 | Low | 1 |
| 2026-10-15 01:21:20 | Low | 1 |
| 2026-10-15 00:28:05 | Clean | 2 |
| 2026-10-14 17:20:19 | Low | 1 |
| 2026-10-14 07:19:30 | Low | 1 |
| 2026-10-14 00:06:47 | Clean | 2 |
| 2026-10-13 21:18:20 | Low | 1 |
| 2026-10-13 19:18:20 | Low | 1 |
| 2026-10-13 17:17:20 | Low | 1 |
| 2026-10-13 00:23:45 | Clean | 2 |
| 2026-10-12 23:15:20 | Low | 1 |