المستكشف
CUSTOMOS
iso
build-full-iso.sh
third-party.lock
scripts/security
customos-uki.sh
customos-verity-block.sh
customos-ai.sh
tests/security
test_ide.sh
docs
themes
733cmd_rollback() { 734 need_root rollback 735 out_dir="$CUSTOMOS_VB_DIR" 736 img=$(img_of "$out_dir"); hashdev=$(hash_of "$out_dir"); rhfile=$(rh_of "$out_dir") 737 [ -f "$img.prev" ] && [ -f "$hashdev.prev" ] && [ -f "$rhfile.prev" ] \ 738 || die "no complete previous slot in $out_dir -- nothing to roll back to" 739 # Swap current <-> prev file by file (rename only). If the current slot is 740 # incomplete (an interrupted rebuild), prev simply becomes current. 741 for _f in "$img" "$hashdev" "$rhfile"; do 742 if [ -f "$_f" ]; then 743 mv -f "$_f" "$_f.swap.$$" || die "could not stage $_f for the swap" 744 mv -f "$_f.prev" "$_f" || die "could not promote $_f.prev" 745 mv -f "$_f.swap.$$" "$_f.prev" || die "could not demote the old $_f" 746 else 747 mv -f "$_f.prev" "$_f" || die "could not promote $_f.prev" 748 fi 749 done
1# name version kind url sha256 license — consumed only by customos-fetch.sh (fail-closed) 19vscodium 1.135.06055 deb https://github.com/VSCodium/vscodium/releases/…/codium_1.135.06055_amd64.deb 5f5c00a9da9d232e4c84e9eee68bbdeb4d8737462022626ce3bdb6948f3d8649 MIT 28element-desktop 1.12.30 deb https://packages.element.io/debian/pool/main/e/element-desktop/…_amd64.deb 8db1b7bb53e96b31f77d3684776efa302cd3c518e54fece603a1f085e2c4cd93 AGPL-3.0-only
1#!/usr/bin/env bash 2# Tests for the IDE + opt-in AI assistants (THREAT_MODEL §2.20), WITHOUT network, 3# root or a real VSCodium: 4# 1) iso/third-party.lock parses: 6 fields, 64-hex sha256, https URL per entry. 5# 2) customos-fetch.sh: a wrong sha256 is REJECTED and the file deleted (mutation 6# test on a file:// fixture); the right one is accepted and cached. 9# 3) build wiring: the .deb goes through fetch/verify before 'apt-get install', 10# a mismatch aborts (fail), the vendor apt source/key are removed.
TERMINALCLAUDE CODECOPILOT CLIOLLAMABASH
❯ claude
╭ Claude Code 2.1 · repo customos (master) ╮
> explain why rollback must restore the dpkg database too
/var/lib/dpkg lives outside /usr, so a slot swap alone leaves dpkg listing
packages whose files are gone — restore_dpkg_db() fixes that.
(جلسة مثال — لا يُثبَّت Claude Code إلا بعد customos-ai install claude)
masterLn 742, Col 9 · UTF-8 · LF · Shell ScriptObsidian · القياس عن بُعد متوقف · التحديثات عبر customos-update
حالة مثال بعد تفعيل اختياري صريح. التثبيت الجديد لا يحتوي على أي منها.
Claude Code
CLI 2.1.288 · الشيفرة تغادر الجهاز
Copilot CLI
غير مثبّت · customos-ai install copilot
Ollama
127.0.0.1:11434 · يبقى محليًا
Continue
→ Ollama محلي · Apache-2.0
يرسل Claude وCopilot الشيفرة إلى خدمات طرف ثالث. وحده Ollama يبقى على هذا الجهاز. Copilot متاح عبر CLI فقط: لا توجد إضافة Copilot على Open VSX.
Obsidian themeمدمج · مولَّد من themes/obsidian.css
ContinueOpen VSX · إصدار مثبّت
ClineOpen VSX · إصدار مثبّت
Claude Codeمملوك · تُعرض الشروط وتُقبل أولًا
تعمل الإضافات بلا عزل وبصلاحياتك. Open VSX غير مُنتقى كما هو حال Debian (§2.20).
$ customos-ai install all (first login, after your explicit [y/N])
[ OK ] codium 1.135.06055 — pinned in iso/third-party.lock, sha256 verified at build time; its apt repo removed (customos-update owns updates)
[ OK ] Claude Code 2.1.288 (native binary, sha256 OK) · Anthropic terms shown and accepted
[ OK ] ollama 0.35.1 (GitHub release, sha256 OK) · bound to 127.0.0.1 only · no model downloaded: run ollama pull qwen2.5-coder:7b
[ OK ] Continue → http://127.0.0.1:11434 · telemetry off · theme Obsidian · font JetBrains Mono
[ -- ] Copilot CLI skipped (needs a GitHub account; install later: customos-ai install copilot)
(sample run)