diff options
| author | Crucible <crucible@localhost> | 2026-10-22 18:39:33 -0500 |
|---|---|---|
| committer | Crucible <crucible@localhost> | 2026-10-22 18:39:33 -0500 |
| commit | 032b21359e8d878084b088e1142b1ee7fed127d8 (patch) | |
| tree | da25be4511823319fdfa8b0868a6b1e2a81f35be | |
| parent | 058de4ff4e41e583e68f54b458f2404e9860539d (diff) | |
| download | srcux-032b21359e8d878084b088e1142b1ee7fed127d8.tar.gz srcux-032b21359e8d878084b088e1142b1ee7fed127d8.tar.xz srcux-032b21359e8d878084b088e1142b1ee7fed127d8.zip | |
Publish srcux candidate 0000000812-20261022-183510
| -rw-r--r-- | app-misc/smith/Manifest | 1 | ||||
| -rw-r--r-- | app-misc/smith/smith-0.13.1.ebuild | 64 | ||||
| -rw-r--r-- | profiles/package.mask/srcux-workarounds | 2 |
3 files changed, 67 insertions, 0 deletions
diff --git a/app-misc/smith/Manifest b/app-misc/smith/Manifest index 241a9984204a..d5b987f0134e 100644 --- a/app-misc/smith/Manifest +++ b/app-misc/smith/Manifest @@ -266,3 +266,4 @@ DIST zerovec-derive-0.11.6.crate 23102 BLAKE2B 879195255bc944ccfb1a711d5f3056ef2 DIST zmij-1.0.23.crate 28612 BLAKE2B 5b1fda50a365ae6bba79ed8444f15dd184d0ba0d7b993c8f119355029b5d7cf6a4fe5d9f36eec722221725ed747cad5108eb707ef14920670ffa45843edcbfec SHA512 12f8d9726b232b6be68cefbe294505debb7a98715c11b95d89682a596fe1a02d9d7b2a6cdba97f2e8d47fa947ffbce9506a18568f2cab749ca3d03121e5fb66d DIST smith-0.11.1.tar.gz 214524 BLAKE2B 25fc7748a1e911819b09606d4b7a3b48e2d1298ceec48563a164f97184560eecfdf0d8a1eef154e01968e2b4880cbc62f23c2818fbb0423f89b20312eda7081f SHA512 64f7de9081dd3ee77496597ced23f202b5554af6c1f2335ef46c2e2f533d225c6f1deacff73251dd0661f15c4bcf5845977b33af1fc037f090748419acb7f756 DIST smith-0.13.0.tar.gz 221206 BLAKE2B 34b83778468f0697635606adeb7ce4b7b1f78fc1acc3d52262880be7204b6bc6dbb55fe921e82ba8140e89d487771496d3e79285285d9586e8f8785788e07adf SHA512 377478ff7960342814703d90557e12f1fec7967071b7a2648b360352294b9833eb7a0cfdf576b514436ca12e07aba899eaff0f485d79234e14450bdad8bea0fa +DIST smith-0.13.1.tar.gz 221228 BLAKE2B 5a835d07ddca10950cd1498c51fd4a8c62d89c11bc6b3f75be6bfd35bcdaf7b82fa640801387aeb6b1d21d9f3fc851b43509e88dad70390bc3964fedac4b4666 SHA512 7fd65bd572eef19389dbe48eb5321be6e88c5c21e2b85d7061e943d0f2103f497c0b9bd3e52b158373699ce8334f97ab61c61f4684309b2c378564441898218e diff --git a/app-misc/smith/smith-0.13.1.ebuild b/app-misc/smith/smith-0.13.1.ebuild new file mode 100644 index 000000000000..bae408aca3dd --- /dev/null +++ b/app-misc/smith/smith-0.13.1.ebuild @@ -0,0 +1,64 @@ +EAPI=8 + +inherit cmake flag-o-matic + +DESCRIPTION="Agent Smith: terminal assistant with tools on this host, sessions on alpha (C++)" +HOMEPAGE="https://trunkmasters.com/smith" +SRC_URI="https://www.srcux.com/distfiles/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="server" + +DEPEND=" + =dev-libs/boost-1.91.0* + =dev-libs/openssl-3.6.5* + >=dev-db/sqlite-3.53:3 + =dev-cpp/nlohmann_json-3.12.0* + =dev-cpp/tomlplusplus-3.4.0* +" +# The client runs sandboxed commands in bubblewrap and logs in over OpenSSH. The +# server runs as an existing `smith` account (on Alpha it predates any acct package). +RDEPEND=" + ${DEPEND} + dev-vcs/git + net-misc/openssh + sys-apps/bubblewrap +" +BDEPEND=" + dev-vcs/git + =dev-cpp/catch-3.15.3* + >=dev-lang/python-3.11 +" + +src_configure() { + # The project refuses in-source builds and requires an absolute build root. + export SMITH_CPP_BUILD_ROOT="${WORKDIR}/build" + local mycmakeargs=( -DSMITH_SANITIZER=none ) + cmake_src_configure +} + +src_test() { + # The end-to-end tests (sockets, TLS, a pty) run in CI, outside the Portage sandbox. + cmake_src_test -R '^unit$' +} + +src_install() { + cmake_src_install + if use server; then + newinitd "${ED}"/usr/share/smith/openrc/smithd.initd smithd + newconfd "${ED}"/usr/share/smith/openrc/smithd.confd smithd + else + rm "${ED}"/usr/sbin/smithd "${ED}"/usr/libexec/smith/smith-mcp || die + fi +} + +pkg_postinst() { + use server || return + elog "Server: needs the system account smith (and AIRouter's account in group of the" + elog "relay socket). Start from /usr/share/smith/server.toml.example as /etc/smith/server.toml" + elog "(root:smith 0640). AIRouter needs a smith principal, the smith role and a profile" + elog "pinned to it whose resource server is /usr/libexec/smith/smith-mcp with" + elog "SMITH_MCP_SOCKET=/run/smith/relay/relay.sock. Then: rc-service smithd start." +} diff --git a/profiles/package.mask/srcux-workarounds b/profiles/package.mask/srcux-workarounds index 705ba0bef4fd..c6c0df2ffe3a 100644 --- a/profiles/package.mask/srcux-workarounds +++ b/profiles/package.mask/srcux-workarounds @@ -37,8 +37,10 @@ # desktop). Masked so hosts with Rust smith are not upgraded by a world update; unmask # per host. USE=server also needs a smith account, a PKI and a local AIRouter node. # 2026-10-22: 0.13.0 added (`smith work` needs AIRouter >= _pre20261022, `shared_work = true` _p1). +# 2026-10-22: 0.13.1 added (same as 0.13.0; builds with GCC 16). =app-misc/smith-0.11.1 =app-misc/smith-0.13.0 +=app-misc/smith-0.13.1 =acct-user/smith-0 =acct-group/smith-0 |
