Commit graph

102 commits

Author SHA1 Message Date
Alessandro
7ba1d61e34 Make self-update backups skip runtime sockets
Some checks failed
Build And Publish Docker Images / plan (push) Has been cancelled
Build And Publish Docker Images / build (push) Has been cancelled
Treat live usr runtime artifacts as non-blocking during self-update backups. Skip sockets, device nodes, vanished files, and unreadable entries with log messages so update rollback checks are not tripped by active Desktop profile state.
2026-05-12 16:46:07 +02:00
Alessandro
1af5344f3c Clean uv cache during self-update
Run a best-effort uv cache clean when the durable self-update manager consumes an update request. Cover uv-present, uv-missing, and cleanup-failure paths with focused tests, and document the new self-update step.
2026-05-08 00:56:24 +02:00
Alessandro
8b921a8ded Move Browser Playwright cache to tmp
Use /a0/tmp/playwright as the Browser plugin Chromium cache and Docker install target while preserving full Chromium installs.

Add startup migration cleanup for retired usr Playwright caches, update Browser status/runtime references and docs, and cover migration behavior with focused regressions.
2026-05-07 18:43:24 +02:00
Alessandro
3df27ccec3 Handle optional Xpra codec gaps on ARM64
Treat local Xpra GUI client packages as best-effort during Office runtime preparation so ARM64 codec dependency gaps do not surface as startup warnings when the browser-hosted Desktop is already usable.

Keep required Desktop Xpra packages strict, trim the ARM Docker fallback to the server/X11/html5 set, and add regression coverage for optional versus required xpra-codecs/libvpx9 failures.
2026-05-03 01:53:02 +02:00
Alessandro
29c829b389 Skip broken symlinks in usr update backups
Avoid aborting self-update backups when /usr contains dangling symlinks, such as host-created virtualenv links inside workdir. Broken file symlinks are logged and skipped so the backup can complete while preserving normal usr files.

Fixes #1598
2026-05-03 01:11:43 +02:00
Alessandro
6d9dedb821 Fix Office desktop runtime on arm64 2026-05-03 00:27:23 +02:00
Alessandro
f3d5e6b149 Avoid xpra codec dependency on arm64 fallback
Some checks are pending
Build And Publish Docker Images / plan (push) Waiting to run
Build And Publish Docker Images / build (push) Blocked by required conditions
2026-05-02 22:03:51 +02:00
Alessandro
1a4ef03853 Fix xpra repository fallback for arm64 Docker builds 2026-05-02 21:48:46 +02:00
Alessandro
2d11287f2e Revert "Raise Docker image nofile soft limit on startup"
This reverts commit 7bd70fa8b7.
2026-05-02 21:28:04 +02:00
Alessandro
7bd70fa8b7 Raise Docker image nofile soft limit on startup
Configure the Docker image initializer to raise the container soft nofile limit to a safer default when Docker's hard limit allows it.

Document the new-image behavior and optional A0_NOFILE_LIMIT override without requiring users to add Docker ulimit flags.
2026-05-02 20:37:47 +02:00
Alessandro
e64b9b2538 Remove legacy Office canvas affordances
Route DOCX, spreadsheets, and presentations exclusively through the Xpra desktop LibreOffice session. Keep the custom canvas path focused on Markdown source editing, remove the old dashboard/preview/native LibreOfficeKit code, and update tests and runtime package declarations to match the new Office surface.
2026-05-02 19:24:49 +02:00
Alessandro
10a6cd28c6 feat(office): replace Collabora with LibreOffice document runtime
Remove the Collabora/WOPI runtime and route stack, including the old status APIs, proxy helpers, bootstrap extensions, and WOPI store tests. Add the Markdown-first document store, LibreOffice status/conversion helpers, LibreOfficeKit session bridge, and reusable Xpra virtual desktop gateway used by the new document runtime.

Update image and self-update bootstrap paths so existing containers can acquire the LibreOffice, XFCE, Xpra, and desktop-control dependencies through the normal install hooks instead of an ad hoc manual install.
2026-05-02 13:07:10 +02:00
Alessandro
ccd0f5891e Install Collabora CODE in Docker builds 2026-04-26 12:58:07 +02:00
Alessandro
fa7eef1919 Use persistent full Chromium runtime for Browser
- Always launch Browser with full Playwright Chromium instead of switching between headless shell and extension mode
- Cache Chromium under /a0/usr/plugins/_browser/playwright with legacy lookup for existing installs
- Store installed Browser extensions under /a0/usr/plugins/_browser/extensions with legacy extension-root compatibility
- Show clearer first-run Chromium install messaging and extend the initial Browser timeout
- Fix Browser spinner animation for startup and extension install states
- Update Docker Playwright install script and regression coverage
2026-04-24 19:08:01 +02:00
Alessandro
527192a26d disable wikidata searxng engine to prevent bootstrap failure
- Fixes SearXNG startup failure in the Docker container caused by `wikidata` engine init raising `KeyError: 'name'`.
- Adds a default-settings engine override to remove `wikidata` during initialization in both base and run image SearXNG configs.
2026-04-21 06:03:40 +02:00
frdel
0bca80a49f Extract installed_target_matches_request helper for update skip check and use describe field for exact version matching
Add installed_target_matches_request helper to check if requested update target matches current installation. Replace short_tag comparison with describe field to ensure exact commit match - prevents skipping updates when current version is ahead of requested tag (e.g. v1.11-12-ge9d9c93d vs v1.11). Return false for "latest" selector tags to force update check. Add test coverage
2026-03-26 13:16:02 +01:00
frdel
8078693e41 Use peeled commit refs (^{commit}) for tag resolution in self-update manager
Replace direct tag refs with peeled commit refs (refs/tags/{tag}^{commit}) in git rev-parse and merge-base operations to ensure resolution to commit objects rather than annotated tag objects. Extract get_tag_commit_ref helper for consistent ref formatting. Update fetch_release_refs to check peeled ref in ancestry validation. Add test coverage for peeled commit resolution in explicit tag selection and fetch operations. Update
2026-03-26 12:54:54 +01:00
frdel
261c4d6138 Add CLI trigger script for self-update with major version validation and backup configuration
- Add trigger_self_update.sh to executable permissions in Dockerfile
- Add trigger-update command mode to self_update_manager.py with argparse CLI
- Add queue_update_request helper to write trigger file with normalized parameters
- Add parse_selector_version, is_valid_selector_tag, is_supported_selector_tag helpers
- Add get_latest_same_major_tag to resolve "latest" within current major version line
- Add ensure
2026-03-26 12:32:37 +01:00
frdel
192d6e2cae Add latest selector option to self-update with branch head resolution for testing/development and newest tag resolution for main
- Add LATEST_SELECTOR_TAG constant and is_latest_selector_tag helper to identify "latest" selection
- Add split_describe_version helper to parse git describe output into tag and commit count
- Replace fetch_release_refs with resolve_requested_target that handles both specific tags and "latest" resolution
- For main branch, resolve "latest" to newest reachable release tag
- For testing/development branches
2026-03-26 10:44:12 +01:00
frdel
247c8d845f Change default self-update backup directory from /a0/tmp to /root and add lazy aiogram dependency loading for Telegram plugin
- Update default backup path from /a0/tmp/self-update-backups to /root/update-backups in self_update_manager.py, helpers/self_update.py, and documentation
- Move aiogram from global requirements.txt to plugin-local requirements for _telegram_integration
- Add ensure_dependencies() helper that installs aiogram on-demand via uv pip install
- Add has_aiogram() check to avoid
2026-03-26 10:20:35 +01:00
frdel
eafe51a688 Refactor self-update system to use native Git operations instead of file sync
- Replace file-based sync_tree with native Git checkout, fetch, and stash operations
- Add Git stash-based rollback protection for tracked and untracked changes
- Remove protected path detection logic (now handled by Git ignore rules)
- Add stash management helpers: create_rollback_stash, apply_stash, drop_stash
- Add repository state restoration via restore_git_state for branch/detached HEAD
- Implement clean_repo_wor
2026-03-24 18:44:57 +01:00
frdel
94edfeaf8d Update system prototype 2026-03-24 13:49:12 +01:00
linuztx
63651deb9e refactor: Extract code execution tool to plugin 2026-03-08 09:52:17 +08:00
frdel
1f7e3b5a28 searxng settings fix 2026-02-10 10:56:43 +01:00
frdel
ac0041d951 searxng settings 2026-02-10 10:19:42 +01:00
frdel
e7a9308860 Update Dockerfile 2026-02-06 14:40:49 +01:00
frdel
9b378a6579 skills extras polishing, less printing 2026-02-05 20:40:47 +01:00
frdel
670120fc5f better session running messages 2026-02-05 13:08:20 +01:00
frdel
7081479193 frontend file browsers, css colors, litellm update, reqs split 2025-11-09 20:56:31 +01:00
linuztx
33618bc030 feat: Kali upgrade python3.13 2025-09-11 12:10:47 +08:00
frdel
97575a2d8b local TTY implementation 2025-08-07 13:32:56 +02:00
frdel
8dd641bf13 image_get fix, build examples 2025-07-29 17:37:10 +02:00
frdel
562ebcedf3 Update build.txt 2025-07-29 17:22:57 +02:00
frdel
602c4e379c Local docker build 2025-07-29 12:52:20 +02:00
frdel
f3db1658ae Merge branch 'main' into testing 2025-07-18 11:25:06 +02:00
frdel
b823cc17da preload adjustments 2025-07-15 22:49:46 +02:00
frdel
58d134cee0 cleanups and fixes 2025-07-12 20:55:53 +02:00
frdel
a2c01c63cf attachments merge 2025-07-09 14:52:13 +02:00
frdel
e275ac428c Update pre_install.sh 2025-07-09 10:41:25 +02:00
deci
6f3a62d80a mount frontend for web dev realtime 2025-06-23 13:12:50 -05:00
frdel
602d60cc8f searxng config radio, todos cleanup 2025-06-17 22:12:56 +02:00
frdel
80abbdd301 torch version fix, cron chmod fix 2025-06-17 21:15:11 +02:00
frdel
8edcb957b9 x86 build fix + build cleanup 2025-06-17 20:49:33 +02:00
frdel
4767db3b60 rag + markdown, final touches 2025-06-17 13:37:28 +02:00
frdel
a9d3987609 RAG tool merge 2025-06-14 09:45:04 +02:00
frdel
aadc111b31 playwright headless fix 2025-06-11 13:58:08 +02:00
frdel
102c57bf5c deps fixes 2025-06-11 11:32:26 +02:00
frdel
62b694b316 Merge branch 'pr/440' into development 2025-06-10 21:04:01 +02:00
frdel
e422d27fa8 anthropic version 2025-06-06 10:18:45 +02:00
Rafael Uzarowski
15fe658aca
feat: update browser_use to v2 (0.2.5) 2025-06-05 20:56:36 +02:00