rwpm

LOW
maintainer keyz182 0 votes scanned 2026-10-21 15:32:06.139547
View on AUR
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: Kieran David Evans <keyz182 at gmail dot com>
2
3pkgname=rwpm
4pkgver=1.16.0
5pkgrel=1
6pkgdesc='Separate RimWorld profiles, each with its own saves, settings and mod list'
7arch=('x86_64')
8url='https://github.com/keyz182/rimworld-profile-manager'
9license=('MIT')
10depends=('glibc' 'gcc-libs')
11makedepends=('rust' 'dotnet-sdk')
12# The window code loads these at run time, so the linker does not list them.
13optdepends=(
14 'vulkan-icd-loader: GPU drawing for the app window'
15 'libxkbcommon: keyboard input'
16 'wayland: Wayland window support'
17 'libx11: X11 window support'
18 'libxcursor: X11 mouse pointer'
19 'libxi: X11 input'
20 'libxcb: X11 connection'
21 'dbus: desktop dialogs'
22)
23conflicts=('rwpm-bin')
24# !strip: makepkg would strip Valve's libsteam_api.so, which must stay as shipped.
25options=('!lto' '!strip')
26source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
27sha256sums=('c231d1c70f1b9dc0e7b2aed939e6a53fcc5cd8a342ed2ee6fcf1e2a43c5e647a')
28
29_src() { echo "$srcdir/rimworld-profile-manager-$pkgver"; }
30
31prepare() {
32 cd "$(_src)"
33 export CARGO_HOME="$srcdir/cargo-home"
34 cargo fetch --locked --target x86_64-unknown-linux-gnu
35
36 export DOTNET_CLI_HOME="$srcdir/dotnet-home" DOTNET_CLI_TELEMETRY_OPTOUT=1 DOTNET_NOLOGO=1
37 dotnet restore payload/Rwpm.Payload
38 dotnet restore payload/Rwpm.Payload.Hook
39}
40
41build() {
42 cd "$(_src)"
43 export CARGO_HOME="$srcdir/cargo-home" CARGO_TARGET_DIR="$srcdir/target"
44 cargo build --frozen --release -p rwpm -p rwpm-steam
45
46 export DOTNET_CLI_HOME="$srcdir/dotnet-home" DOTNET_CLI_TELEMETRY_OPTOUT=1 DOTNET_NOLOGO=1
47 dotnet build payload/Rwpm.Payload -c Release --no-restore -o "$srcdir/payload-build"
48 dotnet build payload/Rwpm.Payload.Hook -c Release --no-restore -o "$srcdir/hook-build"
49}
50
51package() {
52 cd "$(_src)"
53 export CARGO_HOME="$srcdir/cargo-home"
54
55 # Valve's Steamworks library comes from the pinned steamworks-sys crate, as in
56 # scripts/package.sh. rwpm-steam looks for it beside itself.
57 local steam_lib
58 steam_lib="$(cargo metadata --frozen --format-version 1 --filter-platform x86_64-unknown-linux-gnu |
59 python3 -I -c 'import json,sys; print(next(p["manifest_path"] for p in json.load(sys.stdin)["packages"] if p["name"]=="steamworks-sys"))')"
60 steam_lib="$(dirname "$steam_lib")/lib/steam/redistributable_bin/linux64/libsteam_api.so"
61
62 # The app finds payload/ and doorstop/ beside its own file, so the bundle stays together.
63 install -Dm755 "$srcdir/target/release/rwpm" "$pkgdir/opt/rwpm/rwpm"
64 install -Dm755 "$srcdir/target/release/rwpm-steam" "$pkgdir/opt/rwpm/rwpm-steam"
65 install -Dm644 "$steam_lib" "$pkgdir/opt/rwpm/libsteam_api.so"
66 install -Dm644 "$srcdir/payload-build/Rwpm.Payload.dll" "$pkgdir/opt/rwpm/payload/Rwpm.Payload.dll"
67 install -Dm644 "$srcdir/hook-build/Rwpm.Payload.Hook.dll" "$pkgdir/opt/rwpm/payload/Rwpm.Payload.Hook.dll"
68 install -Dm644 vendor/unitydoorstop/4.5.0/linux_x64/libdoorstop.so "$pkgdir/opt/rwpm/doorstop/libdoorstop.so"
69 install -dm755 "$pkgdir/usr/bin"
70 ln -s /opt/rwpm/rwpm "$pkgdir/usr/bin/rwpm"
71
72 for n in 16 32 48 64 128 256; do
73 install -Dm644 "crates/rwpm/assets/icon/rwpm-$n.png" "$pkgdir/usr/share/icons/hicolor/${n}x${n}/apps/rwpm.png"
74 done
75 install -Dm644 crates/rwpm/assets/icon/rwpm.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/rwpm.svg"
76 install -Dm644 packaging/linux/rwpm-mime.xml "$pkgdir/usr/share/mime/packages/rwpm.xml"
77
78 install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/rwpm.desktop" <<'DESKTOP'
79[Desktop Entry]
80Type=Application
81Name=RimWorld Profile Manager
82Comment=Separate RimWorld profiles with their own saves, settings and mods
83Exec=rwpm %f
84Icon=rwpm
85Terminal=false
86Categories=Game;Utility;
87MimeType=application/x-rimrim;application/x-rimpack;
88StartupWMClass=rwpm
89DESKTOP
90
91 install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
92 install -Dm644 vendor/unitydoorstop/4.5.0/LICENSE "$pkgdir/usr/share/licenses/$pkgname/UnityDoorstop-LGPL-2.1.txt"
93 install -Dm644 licenses/*.txt -t "$pkgdir/usr/share/licenses/$pkgname/"
94}
95

Scan history

Scanned at (UTC)SeverityRules
2026-10-21 15:32:06 Low 1

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion