Compare commits

...
7 Commits
Author SHA1 Message Date
luis 50c86089d1 Merge pull request 'Fix anisette-v3-server provisioning: add libplist runtime dep' (#2) from hermes-agent/my-pkgs:fix/anisette-libplist into main
CI / Build Packages (default) (push) Successful in 1m20s
CI / Nix Flake Check (push) Successful in 1m25s
CI / Build Packages (example-a) (push) Successful in 1m25s
CI / Build Packages (example-b) (push) Successful in 1m22s
CI / Build Packages (pyzotero) (push) Successful in 1m44s
CI / Build Packages (pyzotero-cli) (push) Successful in 1m43s
Reviewed-on: #2
2026-08-08 14:12:29 +02:00
Hermes 81de36baa2 Add libplist runtime dep via wrapper (fixes silent provisioning failure)
CI / Build Packages (default) (pull_request) Successful in 1m12s
CI / Nix Flake Check (pull_request) Successful in 1m13s
CI / Build Packages (example-a) (pull_request) Successful in 59s
CI / Build Packages (example-b) (pull_request) Successful in 1m0s
CI / Build Packages (pyzotero) (pull_request) Successful in 1m25s
CI / Build Packages (pyzotero-cli) (pull_request) Successful in 1m25s
2026-08-08 12:01:40 +00:00
Hermes 463817d00c Use slf4d error(Exception) signature 2026-08-08 11:58:31 +00:00
Hermes a6931f7357 Fix diagnostic log format 2026-08-08 11:55:41 +00:00
Hermes 6e5860a851 TEMP: log swallowed provisioning exception for diagnosis 2026-08-08 11:52:47 +00:00
Hermes 59fcec2e6d Build with static D runtime config (matches reference Dockerfile) 2026-08-08 11:52:14 +00:00
Hermes ae00243185 Add libplist runtime dep (plist-d dlopens it; fixes silent provisioning failure) 2026-08-08 11:44:40 +00:00
+14
View File
@@ -2,8 +2,10 @@
lib,
buildDubPackage,
fetchFromGitHub,
makeWrapper,
zlib,
openssl_1_1,
libplist,
}:
buildDubPackage rec {
@@ -19,8 +21,20 @@ buildDubPackage rec {
dubLock = ./dub-lock.json;
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ zlib openssl_1_1 ];
# libplist is dlopen'd at runtime by the plist-d C binding via dynamic-loader
# (libplist-2.0.so.3). It is NOT linked, so it does not land in the closure
# via buildInputs. Without it the ADI provisioning step throws
# LibraryLoadingException and the server serves unprovisioned data, so Apple
# rejects the login. Wrap the binary with LD_LIBRARY_PATH so dlopen finds it.
postFixup = ''
wrapProgram $out/bin/anisette-v3-server \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libplist ]}
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin