@blackasteroid/riu 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/commands/upload.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/commands/upload.tsx"],"names":[],"mappings":"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"}
@@ -49,7 +49,10 @@ export function clearConfig() {
49
49
  store.clear();
50
50
  }
51
51
  // Probe whether the configured SDK path actually contains the macOS dylib.
52
- // Used by `riu init` validation and `riu doctor`.
52
+ // Used by `riu init` validation. Checks both the canonical Steamworks
53
+ // redistributable layout (redistributable_bin/osx/libsteam_api.dylib) AND
54
+ // the legacy flat layout (libsteam_api.dylib at the root) for backward
55
+ // compat with installs created before riu v0.4.0.
53
56
  export function probeSteamSdk(sdkPath) {
54
57
  if (!existsSync(sdkPath)) {
55
58
  return { ok: false, reason: `path does not exist: ${sdkPath}` };
@@ -58,13 +61,19 @@ export function probeSteamSdk(sdkPath) {
58
61
  if (!stat.isDirectory()) {
59
62
  return { ok: false, reason: `path is not a directory: ${sdkPath}` };
60
63
  }
61
- const dylibPath = join(sdkPath, "libsteam_api.dylib");
62
- if (!existsSync(dylibPath)) {
63
- return {
64
- ok: false,
65
- reason: `libsteam_api.dylib not found in ${sdkPath}`,
66
- };
64
+ // Canonical redist layout first (this is what the FFI loader actually uses).
65
+ const redistPath = join(sdkPath, "redistributable_bin", "osx", "libsteam_api.dylib");
66
+ if (existsSync(redistPath)) {
67
+ return { ok: true, dylibPath: redistPath };
67
68
  }
68
- return { ok: true, dylibPath };
69
+ // Legacy flat layout fallback.
70
+ const flatPath = join(sdkPath, "libsteam_api.dylib");
71
+ if (existsSync(flatPath)) {
72
+ return { ok: true, dylibPath: flatPath };
73
+ }
74
+ return {
75
+ ok: false,
76
+ reason: `libsteam_api.dylib not found in ${sdkPath} (checked redistributable_bin/osx/ and the flat layout)`,
77
+ };
69
78
  }
70
79
  //# sourceMappingURL=store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ // Sidecar metadata file written next to manifest.txt and icon.png inside
2
+ // each skin folder. Carries riu-specific bookkeeping that doesn't belong
3
+ // in manifest.txt (which is the Rust-facing format and could break if we
4
+ // pollute it with extra fields).
5
+ //
6
+ // Created by `riu new`. Read by `riu upload` so the user doesn't have to
7
+ // re-pass --title / --description / --tags. Optionally updated by
8
+ // `riu upload` after a successful publish to record the publishedFileId
9
+ // alongside the metadata.
10
+ import { existsSync, readFileSync, writeFileSync } from "node:fs";
11
+ import { join } from "node:path";
12
+ export const SIDECAR_FILENAME = "riu.json";
13
+ export function sidecarPath(skinDir) {
14
+ return join(skinDir, SIDECAR_FILENAME);
15
+ }
16
+ export function readSidecar(skinDir) {
17
+ const p = sidecarPath(skinDir);
18
+ if (!existsSync(p))
19
+ return null;
20
+ try {
21
+ const parsed = JSON.parse(readFileSync(p, "utf8"));
22
+ if (parsed && typeof parsed === "object" && parsed.version === 1) {
23
+ return parsed;
24
+ }
25
+ return null;
26
+ }
27
+ catch {
28
+ return null;
29
+ }
30
+ }
31
+ export function writeSidecar(skinDir, sidecar) {
32
+ const p = sidecarPath(skinDir);
33
+ writeFileSync(p, JSON.stringify(sidecar, null, 2) + "\n", "utf8");
34
+ return p;
35
+ }
36
+ export function updateSidecar(skinDir, patch) {
37
+ const existing = readSidecar(skinDir);
38
+ if (!existing)
39
+ return null;
40
+ const merged = { ...existing, ...patch, version: 1 };
41
+ writeSidecar(skinDir, merged);
42
+ return merged;
43
+ }
44
+ //# sourceMappingURL=sidecar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidecar.js","sourceRoot":"","sources":["../../src/manifest/sidecar.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,yEAAyE;AACzE,yEAAyE;AACzE,iCAAiC;AACjC,EAAE;AACF,yEAAyE;AACzE,kEAAkE;AAClE,wEAAwE;AACxE,0BAA0B;AAE1B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAqB3C,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,OAAO,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAe,CAAC;QACjE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;YACjE,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,OAAmB;IAC/D,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAC/B,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAClE,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAAe,EACf,KAA0B;IAE1B,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,MAAM,GAAe,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACjE,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9B,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,20 +1,49 @@
1
- // Manages the riu-owned dylib install at ~/.riu/sdk/libsteam_api.dylib.
1
+ // Manages the riu-owned dylib install under ~/.riu/sdk/.
2
+ //
3
+ // Layout (canonical Steamworks SDK redistributable structure — this is
4
+ // what steamworks-ffi-node's loader expects when you call setSdkPath):
5
+ //
6
+ // ~/.riu/sdk/
7
+ // └── redistributable_bin/
8
+ // └── osx/
9
+ // └── libsteam_api.dylib
2
10
  //
3
11
  // We always normalize the destination filename to libsteam_api.dylib so
4
- // steamworks-ffi-node's loader finds it regardless of the original
5
- // extension (.bundle, .dylib).
6
- import { copyFileSync, existsSync, mkdirSync, statSync } from "node:fs";
12
+ // the loader finds it regardless of the source extension (.bundle, .dylib).
13
+ import { copyFileSync, existsSync, lstatSync, mkdirSync, statSync, unlinkSync } from "node:fs";
7
14
  import { homedir } from "node:os";
8
15
  import { join, dirname } from "node:path";
9
16
  export const SDK_INSTALL_DIR = join(homedir(), ".riu", "sdk");
10
17
  export const SDK_DYLIB_FILENAME = "libsteam_api.dylib";
11
- export const SDK_DYLIB_PATH = join(SDK_INSTALL_DIR, SDK_DYLIB_FILENAME);
18
+ // Canonical redist path the FFI loader looks at.
19
+ export const SDK_DYLIB_PATH_REDIST = join(SDK_INSTALL_DIR, "redistributable_bin", "osx", SDK_DYLIB_FILENAME);
20
+ // Legacy flat path (riu < 0.4.0 wrote here). Kept for back-compat detection.
21
+ export const SDK_DYLIB_PATH_FLAT = join(SDK_INSTALL_DIR, SDK_DYLIB_FILENAME);
22
+ // Public name kept stable for callers — points at the canonical location.
23
+ export const SDK_DYLIB_PATH = SDK_DYLIB_PATH_REDIST;
12
24
  export function getManagedSdkDir() {
13
25
  return SDK_INSTALL_DIR;
14
26
  }
15
27
  export function isSdkInstalled() {
28
+ // True if EITHER layout is present — flat for legacy installs, redist
29
+ // for fresh ones. Either way the file is reachable.
30
+ for (const p of [SDK_DYLIB_PATH_REDIST, SDK_DYLIB_PATH_FLAT]) {
31
+ try {
32
+ if (statSync(p).isFile())
33
+ return true;
34
+ }
35
+ catch {
36
+ // try next
37
+ }
38
+ }
39
+ return false;
40
+ }
41
+ // True only when the install is in the canonical layout the FFI loader
42
+ // expects. Used by upload commands to suggest a forced reinstall when an
43
+ // older flat install is detected.
44
+ export function isSdkInRedistLayout() {
16
45
  try {
17
- return statSync(SDK_DYLIB_PATH).isFile();
46
+ return statSync(SDK_DYLIB_PATH_REDIST).isFile();
18
47
  }
19
48
  catch {
20
49
  return false;
@@ -24,7 +53,7 @@ export function installFromPath(srcPath, sourceLabel = "manual") {
24
53
  if (!existsSync(srcPath)) {
25
54
  return {
26
55
  ok: false,
27
- installedPath: SDK_DYLIB_PATH,
56
+ installedPath: SDK_DYLIB_PATH_REDIST,
28
57
  error: `source not found: ${srcPath}`,
29
58
  };
30
59
  }
@@ -36,19 +65,32 @@ export function installFromPath(srcPath, sourceLabel = "manual") {
36
65
  // ignore — copy will fail with a clear error below
37
66
  }
38
67
  try {
39
- mkdirSync(dirname(SDK_DYLIB_PATH), { recursive: true });
40
- copyFileSync(srcPath, SDK_DYLIB_PATH);
68
+ // Always write to the canonical redist layout. Delete any existing
69
+ // file or symlink at the destination first — copyFileSync would
70
+ // otherwise write through a symlink and silently update the wrong
71
+ // target (a real footgun for users with leftover workarounds).
72
+ mkdirSync(dirname(SDK_DYLIB_PATH_REDIST), { recursive: true });
73
+ try {
74
+ const lst = lstatSync(SDK_DYLIB_PATH_REDIST);
75
+ if (lst.isFile() || lst.isSymbolicLink()) {
76
+ unlinkSync(SDK_DYLIB_PATH_REDIST);
77
+ }
78
+ }
79
+ catch {
80
+ // doesn't exist — fine
81
+ }
82
+ copyFileSync(srcPath, SDK_DYLIB_PATH_REDIST);
41
83
  }
42
84
  catch (e) {
43
85
  return {
44
86
  ok: false,
45
- installedPath: SDK_DYLIB_PATH,
87
+ installedPath: SDK_DYLIB_PATH_REDIST,
46
88
  error: e instanceof Error ? e.message : String(e),
47
89
  };
48
90
  }
49
91
  return {
50
92
  ok: true,
51
- installedPath: SDK_DYLIB_PATH,
93
+ installedPath: SDK_DYLIB_PATH_REDIST,
52
94
  source: sourceLabel,
53
95
  bytesCopied: bytes,
54
96
  };
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/sdk/installer.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,EAAE;AACF,wEAAwE;AACxE,mEAAmE;AACnE,+BAA+B;AAE/B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAG1C,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAC9D,MAAM,CAAC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AACvD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;AAExE,MAAM,UAAU,gBAAgB;IAC9B,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAUD,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,WAAW,GAAG,QAAQ;IACrE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,aAAa,EAAE,cAAc;YAC7B,KAAK,EAAE,qBAAqB,OAAO,EAAE;SACtC,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,CAAC;QACH,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,mDAAmD;IACrD,CAAC;IACD,IAAI,CAAC;QACH,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,EAAE,EAAE,KAAK;YACT,aAAa,EAAE,cAAc;YAC7B,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;SAClD,CAAC;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,aAAa,EAAE,cAAc;QAC7B,MAAM,EAAE,WAAW;QACnB,WAAW,EAAE,KAAK;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAiB;IACjD,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/sdk/installer.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,12 @@ import { existsSync, readFileSync, readdirSync, statSync } from "node:fs";
16
16
  import { homedir, platform } from "node:os";
17
17
  import { join } from "node:path";
18
18
  const STEAM_LIBRARY_DEFAULT_MAC = join(homedir(), "Library", "Application Support", "Steam");
19
+ // The Steam client itself ships a libsteam_api.dylib inside Steam Helper.app.
20
+ // This is the highest-quality candidate because it's updated whenever Steam
21
+ // updates — it never lags behind the FFI lib's expected symbol set the way
22
+ // game-bundled copies can. Battle-tested: Rust's bundled .bundle was missing
23
+ // SteamAPI_SteamFriends_v018 which steamworks-ffi-node@0.10.2 requires.
24
+ const STEAM_HELPER_DYLIB_MAC = join(STEAM_LIBRARY_DEFAULT_MAC, "Steam.AppBundle", "Steam", "Contents", "MacOS", "Frameworks", "Steam Helper.app", "Contents", "MacOS", "libsteam_api.dylib");
19
25
  // Filenames we accept as valid sources, in order of preference.
20
26
  const CANDIDATE_NAMES = [
21
27
  "libsteam_api.dylib",
@@ -108,6 +114,18 @@ export function findSteamLibraries() {
108
114
  // here so the caller falls back to manual entry.
109
115
  return sources;
110
116
  }
117
+ // 1. Highest priority: the dylib bundled with the Steam client itself.
118
+ // This is always current because it ships with Steam updates, unlike
119
+ // game-bundled copies which lag behind their integration date.
120
+ if (isRegularFile(STEAM_HELPER_DYLIB_MAC)) {
121
+ sources.push({
122
+ path: STEAM_HELPER_DYLIB_MAC,
123
+ game: "Steam Helper",
124
+ destExtension: ".dylib",
125
+ });
126
+ seen.add(STEAM_HELPER_DYLIB_MAC);
127
+ }
128
+ // 2. Game installs (Spacewar / Rust / etc.)
111
129
  for (const root of getSteamLibraryRoots()) {
112
130
  const commonDir = join(root, "steamapps", "common");
113
131
  if (!existsSync(commonDir))
@@ -140,14 +158,19 @@ export function findSteamLibraries() {
140
158
  }
141
159
  }
142
160
  }
143
- // Sort: Rust first, then Spacewar (the SDK example), then alphabetical.
161
+ // Sort: Steam Helper first (ships with Steam itself, always current),
162
+ // then Spacewar (the SDK example also stays current), then Rust (often
163
+ // works), then alphabetical for everything else. Battle-tested in #22:
164
+ // game-bundled dylibs lag behind the FFI lib's required symbol set.
144
165
  sources.sort((a, b) => {
145
166
  const rank = (game) => {
146
- if (game === "Rust")
167
+ if (game === "Steam Helper")
147
168
  return 0;
148
169
  if (game === "Spacewar")
149
170
  return 1;
150
- return 2;
171
+ if (game === "Rust")
172
+ return 2;
173
+ return 3;
151
174
  };
152
175
  const ra = rank(a.game);
153
176
  const rb = rank(b.game);
@@ -1 +1 @@
1
- {"version":3,"file":"locator.js","sourceRoot":"","sources":["../../src/sdk/locator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"locator.js","sourceRoot":"","sources":["../../src/sdk/locator.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,14 @@ export class SteamInitFailedError extends Error {
28
28
  this.name = "SteamInitFailedError";
29
29
  }
30
30
  }
31
+ // Distinct error class so callers can label the field correctly. The SDK
32
+ // path is fine — the FFI module itself is malformed or incompatible.
33
+ export class SteamFfiInitError extends Error {
34
+ constructor(reason) {
35
+ super(`Steamworks FFI init failed: ${reason}`);
36
+ this.name = "SteamFfiInitError";
37
+ }
38
+ }
31
39
  class RealSteamClient {
32
40
  isMock = false;
33
41
  appId;
@@ -86,6 +94,34 @@ class RealSteamClient {
86
94
  needsLegalAgreement: false,
87
95
  };
88
96
  }
97
+ async updateSkinMetadata(publishedFileId, metadata, changeNote) {
98
+ const fileIdBig = BigInt(publishedFileId);
99
+ const handle = this.steam.workshop.startItemUpdate(this.appId, fileIdBig);
100
+ if (metadata.title !== undefined) {
101
+ if (!this.steam.workshop.setItemTitle(handle, metadata.title)) {
102
+ throw new Error("setItemTitle returned false");
103
+ }
104
+ }
105
+ if (metadata.description !== undefined) {
106
+ if (!this.steam.workshop.setItemDescription(handle, metadata.description)) {
107
+ throw new Error("setItemDescription returned false");
108
+ }
109
+ }
110
+ if (metadata.tags !== undefined) {
111
+ if (!this.steam.workshop.setItemTags(handle, metadata.tags)) {
112
+ throw new Error("setItemTags returned false");
113
+ }
114
+ }
115
+ const submitted = (await this.steam.workshop.submitItemUpdate(handle, changeNote));
116
+ if (!submitted) {
117
+ throw new Error("submitItemUpdate returned false during metadata update");
118
+ }
119
+ return {
120
+ publishedFileId,
121
+ url: `${RUST_WORKSHOP_URL_PREFIX}${publishedFileId}`,
122
+ needsLegalAgreement: false,
123
+ };
124
+ }
89
125
  shutdown() {
90
126
  if (this.shutDown)
91
127
  return;
@@ -106,25 +142,40 @@ class RealSteamClient {
106
142
  }
107
143
  }
108
144
  }
109
- // Probe a SDK directory for the macOS dylib. Linux/Windows variants are
110
- // handled by the steamworks-ffi-node loader itself; this check exists for
111
- // the doctor command and to bail early on macOS with a clear error.
145
+ // Probe a SDK directory for the macOS dylib. The Steamworks SDK redist
146
+ // layout puts platform binaries under redistributable_bin/<platform>/,
147
+ // which is what steamworks-ffi-node's loader expects. We check that
148
+ // canonical layout first, then fall back to the flat layout for backward
149
+ // compat with installs created before riu v0.4.0.
112
150
  export function probeDylib(sdkPath) {
113
151
  if (!existsSync(sdkPath))
114
152
  return { ok: false, reason: `path does not exist: ${sdkPath}` };
115
153
  if (!statSync(sdkPath).isDirectory()) {
116
154
  return { ok: false, reason: `not a directory: ${sdkPath}` };
117
155
  }
118
- // Look for the macOS dylib first since that's our primary target. Fall
119
- // back to checking for any of the supported lib names so we don't fail
120
- // on Linux/Windows in CI.
121
- const candidates = ["libsteam_api.dylib", "libsteam_api.so", "steam_api64.dll"];
122
- for (const name of candidates) {
156
+ // Canonical Steamworks redist layout (what the FFI loader actually uses).
157
+ const redistCandidates = [
158
+ join(sdkPath, "redistributable_bin", "osx", "libsteam_api.dylib"),
159
+ join(sdkPath, "redistributable_bin", "linux64", "libsteam_api.so"),
160
+ join(sdkPath, "redistributable_bin", "win64", "steam_api64.dll"),
161
+ ];
162
+ for (const p of redistCandidates) {
163
+ if (existsSync(p))
164
+ return { ok: true, dylibPath: p };
165
+ }
166
+ // Flat layout (legacy — riu < 0.4.0 wrote here). Kept so old installs
167
+ // keep reporting healthy; runUpload will detect the layout mismatch and
168
+ // suggest a re-install.
169
+ const flatCandidates = ["libsteam_api.dylib", "libsteam_api.so", "steam_api64.dll"];
170
+ for (const name of flatCandidates) {
123
171
  const p = join(sdkPath, name);
124
172
  if (existsSync(p))
125
173
  return { ok: true, dylibPath: p };
126
174
  }
127
- return { ok: false, reason: `no Steam library found in ${sdkPath} (looked for ${candidates.join(", ")})` };
175
+ return {
176
+ ok: false,
177
+ reason: `no Steam library found in ${sdkPath} (checked redistributable_bin/{osx,linux64,win64}/ and the flat layout)`,
178
+ };
128
179
  }
129
180
  export async function createSteamClient(opts) {
130
181
  if (opts.mock) {
@@ -140,10 +191,15 @@ export async function createSteamClient(opts) {
140
191
  writeFileSync(appIdPath, String(opts.appId), "utf8");
141
192
  // Lazily import the FFI lib only in real-mode so dry-run paths don't pay
142
193
  // the load cost (and don't crash on machines without the SDK).
194
+ //
195
+ // steamworks-ffi-node@0.10.x exports BOTH a default (an empty function,
196
+ // truthy but useless) AND a named SteamworksSDK class with getInstance().
197
+ // We must pick the named export, not the default. Battle-tested in #22.
143
198
  const mod = (await import("steamworks-ffi-node"));
144
- const SteamworksSDK = mod.default ?? mod.SteamworksSDK;
145
- if (!SteamworksSDK) {
146
- throw new SteamSdkMissingError("steamworks-ffi-node module did not export SteamworksSDK");
199
+ const SteamworksSDK = mod.SteamworksSDK ??
200
+ mod.default;
201
+ if (!SteamworksSDK || typeof SteamworksSDK.getInstance !== "function") {
202
+ throw new SteamFfiInitError("steamworks-ffi-node module did not export a usable SteamworksSDK class with getInstance()");
147
203
  }
148
204
  const steam = SteamworksSDK.getInstance();
149
205
  steam.setSdkPath(opts.sdkPath);
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/steam/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/steam/client.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,14 @@ export class MockSteamClient {
44
44
  needsLegalAgreement: false,
45
45
  };
46
46
  }
47
+ async updateSkinMetadata(publishedFileId, _metadata, _changeNote) {
48
+ await new Promise((r) => setTimeout(r, 25));
49
+ return {
50
+ publishedFileId,
51
+ url: `${RUST_WORKSHOP_URL_PREFIX}${publishedFileId}`,
52
+ needsLegalAgreement: false,
53
+ };
54
+ }
47
55
  shutdown() {
48
56
  // no-op
49
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../src/steam/mock.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,oDAAoD;AAEpD,OAAO,EAIL,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAEpB,IAAI,OAAO,GAAG,CAAC,CAAC;AAEhB,SAAS,UAAU;IACjB,6EAA6E;IAC7E,yEAAyE;IACzE,OAAO,IAAI,CAAC,CAAC;IACb,MAAM,IAAI,GAAG,aAAa,GAAG,OAAO,CAAC;IACrC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,OAAO,eAAe;IACjB,MAAM,GAAG,IAAI,CAAC;IAEvB,cAAc;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAoB;QACnC,0EAA0E;QAC1E,iDAAiD;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC3E,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAElE,qEAAqE;QACrE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,OAAO;YACL,eAAe,EAAE,EAAE;YACnB,GAAG,EAAE,GAAG,wBAAwB,GAAG,EAAE,EAAE;YACvC,mBAAmB,EAAE,KAAK;SAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,eAAuB,EACvB,OAAqB,EACrB,WAAmB;QAEnB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5C,OAAO;YACL,eAAe;YACf,GAAG,EAAE,GAAG,wBAAwB,GAAG,eAAe,EAAE;YACpD,mBAAmB,EAAE,KAAK;SAC3B,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,QAAQ;IACV,CAAC;CACF"}
1
+ {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../src/steam/mock.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,oDAAoD;AAEpD,OAAO,EAIL,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAEpB,IAAI,OAAO,GAAG,CAAC,CAAC;AAEhB,SAAS,UAAU;IACjB,6EAA6E;IAC7E,yEAAyE;IACzE,OAAO,IAAI,CAAC,CAAC;IACb,MAAM,IAAI,GAAG,aAAa,GAAG,OAAO,CAAC;IACrC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,OAAO,eAAe;IACjB,MAAM,GAAG,IAAI,CAAC;IAEvB,cAAc;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAoB;QACnC,0EAA0E;QAC1E,iDAAiD;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC3E,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAElE,qEAAqE;QACrE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,OAAO;YACL,eAAe,EAAE,EAAE;YACnB,GAAG,EAAE,GAAG,wBAAwB,GAAG,EAAE,EAAE;YACvC,mBAAmB,EAAE,KAAK;SAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,eAAuB,EACvB,OAAqB,EACrB,WAAmB;QAEnB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5C,OAAO;YACL,eAAe;YACf,GAAG,EAAE,GAAG,wBAAwB,GAAG,eAAe,EAAE;YACpD,mBAAmB,EAAE,KAAK;SAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,eAAuB,EACvB,SAAoE,EACpE,WAAmB;QAEnB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5C,OAAO;YACL,eAAe;YACf,GAAG,EAAE,GAAG,wBAAwB,GAAG,eAAe,EAAE;YACpD,mBAAmB,EAAE,KAAK;SAC3B,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,QAAQ;IACV,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/steam/types.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,yEAAyE;AACzE,uCAAuC;AAmDvC,MAAM,CAAC,MAAM,wBAAwB,GACnC,yDAAyD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/steam/types.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,yEAAyE;AACzE,uCAAuC;AAmEvC,MAAM,CAAC,MAAM,wBAAwB,GACnC,yDAAyD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blackasteroid/riu",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Automate uploading icon-only Rust workshop skins from the command line. Generate manifests, validate icons, and push to Steam Workshop — interactively or via JSON for agents.",
5
5
  "type": "module",
6
6
  "bin": {