Dulus Channel
132 subscribers
18 photos
2 files
11 links
Official Dulus Channel Created by KevRojox
Download Telegram
Channel created
Channel photo updated
Hi guys
This is a Channel, im gonna make a Telegram group tomorrow, but you can join in the discord in the meanwhile (still creating everything inside discord but the server is up)

https://discord.gg/Za7nWKg2
👍2
Commit 3891e67

fix: WSL/Linux system-lib hints (PortAudio + tkinter) + lazy GUI imports
Two recurring install traps on fresh WSL / Ubuntu boxes that ate hours
for early users:

1. PortAudio missing on Linux. sounddevice imports but its CFFI binding
can't find libportaudio2 at runtime, so the recorder bails with
'PortAudio library not found' and users try 'pip install portaudio'
which never works because PortAudio is a C library, not a PyPI
package.

2. tkinter missing on Linux taking the webchat down with it. The
webchat-server module imports from gui.

- /doctor adds a tkinter row that explains python3-tk on Linux.
- Dockerfile gains --build-arg WITH_GUI=1 for python3-tk.
- README adds a 'Linux / WSL — tkinter' subsection.

Bump 0.2.75 -> 0.2.76.
Commit ceca2b8

fix(bg+webchat): tmux-based bg + stop-stealing-session + leaked-semaphore noise

🐍 /bg start clean — tmux new-session + send-keys (yadike3 style, 201 líneas vs 376 anteriores)
🛡 /bg stop ya no mata la REPL (PID file source of truth, refuses own pid)
🪟 Cero ventanas cmd.exe flasheando en Windows
💬 Webchat ya no auto-cambia de sesión cuando otro entry point (Telegram/IPC) activa otra
Timestamps del sidebar solo bump si hay mensaje nuevo de verdad (F5 sin enviar = no cambia)
🔇 Warning leaked semaphore objects
🦅🔥 dulus 0.2.79 live
Commit c6d2264

feat(installer): one-liner curl|bash + irm|iex with profile picker
Add install.sh (Linux/macOS/WSL/Termux/Git Bash) and install.ps1
(Windows native, PowerShell 5.1+) so installs become a single line
in the README the way Rust/Bun/Deno/Homebrew do it.

install.sh:
- Detects OS (WSL/Linux/macOS/Termux/Git Bash), distro, WSLg
PulseAudio bridge, package manager (apt/dnf/pacman/brew/pkg/
zypper) and Python >=3.11 up front.
- Interactive profile picker: full | standard | basic | custom.
- Computes only the apt packages that are MISSING for the chosen
profile via dpkg/rpm/pacman/brew/pkg queries (no redundant
sudo).
- Three install paths offered: auto with sudo, show-me-the-command,
or skip. Falls back to show-me-the-command when piped via
curl|bash (non-TTY) so we never run sudo without a real prompt.
- Writes ~/.asoundrc pointing at /mnt/wslg/PulseServer when the
profile includes voice + we're on WSL with WSLg present — this
is the Kali fix users were hitting.
- Picks uv > pipx > pip automatically, applies --break-system-
packages on Termux / PEP 668 boxes.
- Runs when webbridge is chosen.
- --dry-run, --no-deps, --pre, --profile=NAME, --uv/--pip/--pipx
flags for power users and CI.

install.ps1:
- Same flow on Windows. Detects OS / arch / elevation / package
manager (winget > scoop > choco), Python >=3.11, uv/pipx/pip.
- Tmux is the only system dep on Windows because the sounddevice
wheel bundles PortAudio and python.org ships tkinter built-in.
- -DryRun, -Profile, -Installer, -Pre, -NoDeps. Env-var fallbacks
(DULUS_PROFILE / DULUS_INSTALLER) for irm|iex preset usage.

README:
- New 'Option A - One-liner installer (recommended)' block at the
top of Quick Start. Docker moves to Option B, manual pip to C.
- Documents the four profiles, the power-user flags, and how to
preset via env var when running through iex.

Bump 0.2.79 -> 0.2.80.
/doctor command fully functional now!

Running diagnostics...

[PASS] Python 3.13.12
[PASS] Git: git version 2.51.0
[WARN] Not inside a git repository
[PASS] API key for kimi-code: set (sk-k...QQZ3)
... testing kimi-code API connectivity...
[PASS] kimi-code API: reachable

[PASS] gemini key (GEMINI_API_KEY): set
[PASS] kimi key (MOONSHOT_API_KEY): set
[PASS] moonshot key (MOONSHOT_API_KEY): set
[PASS] deepseek key (DEEPSEEK_API_KEY): set
[PASS] nvidia-web key (NVIDIA_API_KEY): set

[PASS] Rich (live markdown rendering)
[PASS] Pillow (clipboard image /image)
[PASS] sounddevice (voice recording)
[PASS] faster-whisper (local STT)
[WARN] tkinter (GUI / webchat eager-load): missing system library.
Fix on Linux/WSL:
sudo apt install python3-tk
(tkinter is bundled on Windows/macOS; only Linux ships it as a separate apt package.)
[WARN] Audio player: NONE found — TTS playback will fail.
Fix on Linux/WSL: sudo apt install ffmpeg
Fix on macOS: brew install ffmpeg (afplay is bundled, but ffmpeg helps)
Fix on Windows: winget install Gyan.FFmpeg

[WARN] No project DULUS.md (run /init to create)
[PASS] Checkpoints: 0.0 MB (15 sessions)
[WARN] Permission mode: accept-all (all operations auto-approved)

14 passed, 5 warnings, 0 failures (19 checks)
Working on the Sanbox feature vía Android apk stay tuned
[Commit f421ac9]

feat: extract sandbox on first run + Linguist override (Python repo)

[Stop shipping the sandbox source tree as part of the wheel and stop letting it dominate the GitHub language stats.]

What ships now:

- _bundles/sandbox.tar.gz (~814 KB compressed, vs 2.4 MB raw):

-the pre-built Vite output, fixed-mtime tar for reproducibility.

- sandbox_bootstrap.py with ensure_sandbox(): extracts
the tarball to ~/.dulus/sandbox/ on first hit. Uses size+mtime signature to re-extract automatically when 'pip install --upgrade dulus' rotates the bundle.

Has a dev fallback to sandbox/dist/ when running from
source / editable install.

No prompt, no notification.

- tools/build_sandbox_bundle.py: maintainer-side script that packs

Bump 0.2.81 -> 0.2.82.
[Commit c73213c]

Website (docs/):
- New main page (index.html) — full Dulus rebranding, removed all
'Falcon' references in particle-playground.html and preview.html.
- New dulus-bird.png logo (459x716, transparent PNG) — the orange
Cigua Palmera (Dulus dominicus).

Webchat favicon:
- /favicon.ico and /dulus-bird.png routes serve the bird logo.
- <link rel='icon'> injected into the 4 HTML headers (Chat + 3 RT pages).

Installer scripts (install.sh + install.ps1):
- DEFAULT changed from 'uv > pipx > pip' to 'pip > uv > pipx'. Dulus
loads plugins that import arbitrary packages at runtime; uv tool's
isolated venv made those plugins blind to user-installed deps
(pandas, tomli, etc.). pip --user (or pip in active venv) keeps
Dulus in the same env as anything else the user pip-installs.
- Interactive prompt when uv/pipx are present and we're on a TTY.
- curl|bash / irm|iex (non-TTY) silently defaults to pip.
- 'uv tool install dulus' is a no-op when already installed — switched
to 'uv tool upgrade dulus' on re-runs. This was the bug that kept
KevRojo's own install stuck on v0.2.16 for months.
- PATH detection: when no Python on PATH, probe well-known install and print the exact PATH= line to add.
- Heads-up when ~/.local/bin is missing from PATH after install.

Bump to 📦 Dulus 0.2.83

$Dulus $DULUS
#Dulus
Mega update in the website already live https://kevrojo.github.io/Dulus/
Fixing some glitches with the install scripts , roll back here if needed

pip install dulus==0.2.82