Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package openai-codex for openSUSE:Factory 
checked in at 2026-10-18 19:22:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openai-codex (Old)
 and      /work/SRC/openSUSE:Factory/.openai-codex.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openai-codex"

Sun Oct 18 19:22:56 2026 rev:22 rq:1385608 version:0.163.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/openai-codex/openai-codex.changes        
2026-10-16 20:14:03.600189753 +0200
+++ /work/SRC/openSUSE:Factory/.openai-codex.new.3698736/openai-codex.changes   
2026-10-18 19:24:08.147777305 +0200
@@ -1,0 +2,11 @@
+Sat Oct 17 13:25:42 UTC 2026 - Pavel Dostál <[email protected]>
+
+- Ship a complete Codex package so the daemon, started by default
+  since 0.157.0, works instead of failing with "this CLI has no
+  complete local package" (gh#openai/codex#48050):
+  * install the binary, codex-package.json and the rg/bwrap helpers
+    below /usr/libexec/codex, with /usr/bin/codex a symlink to it
+  * codex-disable-daemon-auto-update.patch: the daemon does not
+    replace the packaged binary with an upstream download by default
+
+-------------------------------------------------------------------

New:
----
  codex-disable-daemon-auto-update.patch

----------(New B)----------
  New:    below /usr/libexec/codex, with /usr/bin/codex a symlink to it
  * codex-disable-daemon-auto-update.patch: the daemon does not
    replace the packaged binary with an upstream download by default
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ openai-codex.spec ++++++
--- /var/tmp/diff_new_pack.LReIuy/_old  2026-10-18 19:24:09.251823118 +0200
+++ /var/tmp/diff_new_pack.LReIuy/_new  2026-10-18 19:24:09.252823159 +0200
@@ -124,6 +124,8 @@
 Patch3:         codex-bump-gix-0.88.patch
 # PATCH-FIX-OPENSUSE codex-gix-error-anyhow.patch [email protected] -- adapt 
codex-git-utils to the gix 0.88 gix-error API (boo#1285151)
 Patch4:         codex-gix-error-anyhow.patch
+# PATCH-FIX-OPENSUSE codex-disable-daemon-auto-update.patch [email protected] 
-- distribution policy: the managed daemon must not replace the packaged binary 
with an upstream download
+Patch5:         codex-disable-daemon-auto-update.patch
 BuildRequires:  cargo
 BuildRequires:  cargo-packaging >= 1.2.0
 BuildRequires:  cmake
@@ -277,13 +279,39 @@
     echo "cannot find the built codex binary" >&2
     exit 1
 fi
-install -D -m 0755 "$targetdir/release/codex" %{buildroot}%{_bindir}/codex
+# The daemon (daemon_auto_start, on by default) needs a complete Codex package:
+# codex-package.json beside bin/, codex-resources/ and codex-path/ (see
+# scripts/codex_package/layout.py, app-server-daemon/src/prepare_install.rs).
+# rg and bwrap must be real files inside it, so they wrap the system binaries;
+# codex-code-mode-host is not built (Patch0 drops v8) but the layout requires 
it.
+pkgdir=%{_libexecdir}/codex
+install -D -m 0755 "$targetdir/release/codex" %{buildroot}$pkgdir/bin/codex
+install -d %{buildroot}$pkgdir/codex-resources %{buildroot}$pkgdir/codex-path
+printf '#!/bin/sh\necho "codex-code-mode-host is not built in this package" 
>&2\nexit 1\n' > %{buildroot}$pkgdir/bin/codex-code-mode-host
+printf '#!/bin/sh\nexec %{_bindir}/bwrap "$@"\n' > 
%{buildroot}$pkgdir/codex-resources/bwrap
+printf '#!/bin/sh\nexec %{_bindir}/rg "$@"\n' > 
%{buildroot}$pkgdir/codex-path/rg
+chmod 0755 %{buildroot}$pkgdir/bin/codex-code-mode-host 
%{buildroot}$pkgdir/codex-resources/bwrap %{buildroot}$pkgdir/codex-path/rg
+# The target must equal the daemon's platform_target(): the compiler's host 
triple.
+target=$(rustc -vV | sed -n 's/^host: //p')
+cat > %{buildroot}$pkgdir/codex-package.json <<EOF
+{
+  "layoutVersion": 1,
+  "version": "%{version}",
+  "target": "$target",
+  "variant": "codex",
+  "entrypoint": "bin/codex",
+  "resourcesDir": "codex-resources",
+  "pathDir": "codex-path"
+}
+EOF
+install -d %{buildroot}%{_bindir}
+ln -s ../libexec/codex/bin/codex %{buildroot}%{_bindir}/codex
 
 # The unbundling is silent when it regresses: bzip2-sys falls back to its own
 # copy when pkg-config fails, and the two env vars in %%build are easy to lose.
 # Fail the build instead.
 for lib in libbz2.so libzstd.so libonig.so libsqlite3.so; do
-    readelf -d %{buildroot}%{_bindir}/codex | grep -q "NEEDED.*$lib" || {
+    readelf -d %{buildroot}$pkgdir/bin/codex | grep -q "NEEDED.*$lib" || {
         echo "ERROR: $lib is not a DT_NEEDED of codex - it got bundled again" 
>&2
         exit 1
     }
@@ -330,6 +358,7 @@
 %license LICENSE NOTICE
 %doc README.md CHANGELOG.md docs/
 %{_bindir}/codex
+%{_libexecdir}/codex/
 
 %files bash-completion
 %dir %{_datadir}/bash-completion

++++++ codex-disable-daemon-auto-update.patch ++++++
From: Martin Pluskal <[email protected]>
Subject: Do not self-update the managed daemon from chatgpt.com by default

The packaged app-server daemon (daemon_auto_start, on by default since 0.157.0)
spawns an updater that, five minutes after start and then hourly, downloads
https://chatgpt.com/codex/install.sh, runs it, and swaps the RPM-installed
binary for an upstream prebuilt in ~/.codex/packages/app-server-daemon.  Updates
come from the package manager here, so default the daemon updater to off; users
who want it can set updater.autoUpdateEnabled = true in
~/.codex/app-server-daemon/settings.json.

Downstream-only distribution policy, not suitable for upstream submission.

--- a/codex-rs/app-server-daemon/src/settings.rs
+++ b/codex-rs/app-server-daemon/src/settings.rs
@@ -29,7 +29,7 @@
         Self {
             remote_control_enabled: false,
             feature_overrides: BTreeMap::new(),
-            auto_update_enabled: true,
+            auto_update_enabled: false,
             update_interval_minutes: DEFAULT_UPDATE_INTERVAL_MINUTES,
             shutdown_grace_seconds: DEFAULT_SHUTDOWN_GRACE_SECONDS,
         }
@@ -85,7 +85,7 @@
 }
 
 fn default_auto_update_enabled() -> bool {
-    true
+    false
 }
 
 fn default_update_interval_minutes() -> u32 {

Reply via email to