dulus 0.2.5__tar.gz → 0.2.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dulus-0.2.5/dulus.egg-info → dulus-0.2.7}/PKG-INFO +4 -4
- {dulus-0.2.5 → dulus-0.2.7}/README.md +1 -1
- {dulus-0.2.5 → dulus-0.2.7/dulus.egg-info}/PKG-INFO +4 -4
- {dulus-0.2.5 → dulus-0.2.7}/dulus.py +6 -8
- {dulus-0.2.5 → dulus-0.2.7}/pyproject.toml +3 -3
- {dulus-0.2.5 → dulus-0.2.7}/tools.py +1 -2
- {dulus-0.2.5 → dulus-0.2.7}/LICENSE +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/MANIFEST.in +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/agent.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/compressor.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/context.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/githook.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/marketplace.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/mempalace_bridge.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/personas.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/plugins.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/server.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/backend/tasks.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/batch_api.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/checkpoint/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/checkpoint/hooks.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/checkpoint/store.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/checkpoint/types.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/claude_code_watcher.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/clipboard_utils.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/cloudsave.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/common.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/compaction.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/config.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/context.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/data/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/data/active_persona.json +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/data/context.json +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/data/marketplace.json +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/data/personas.json +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/data/tasks.json +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/README.md +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/api.html +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/architecture.md +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/azure-speech-template.json +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/dashboard/index.html +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/divider.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/generate.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/hero.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/index.html +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/news.md +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/nvidia-models.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/particle-playground.html +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/personas/index.html +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/preview.html +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-agents.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-brainstorm.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-bridges.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-features.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-freetier.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-memory.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-models.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-perms.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-plugins.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-quickstart.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/sec-ssj.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/spinners.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/split-pane.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/terminal-boot.svg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/docs/uploads/particle-playground.html +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus.egg-info/SOURCES.txt +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus.egg-info/dependency_links.txt +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus.egg-info/entry_points.txt +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus.egg-info/requires.txt +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus.egg-info/top_level.txt +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus_gui.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus_mcp/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus_mcp/client.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus_mcp/config.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus_mcp/tools.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/dulus_mcp/types.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/agent_bridge.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/chat_widget.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/main_window.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/personas.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/session_utils.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/settings_dialog.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/sidebar.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/tasks_view.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/themes.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/gui/tool_panel.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/input.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/license_manager.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/audit.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/consolidator.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/context.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/offload.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/palace.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/scan.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/sessions.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/store.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/tools.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/types.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/memory/vector_search.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/multi_agent/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/multi_agent/subagent.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/multi_agent/tools.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/offload_helper.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/plugin/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/plugin/autoadapter.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/plugin/loader.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/plugin/recommend.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/plugin/store.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/plugin/types.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/providers.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/setup.cfg +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/skill/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/skill/builtin.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/skill/clawhub.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/skill/executor.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/skill/loader.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/skill/tools.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/skills.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/spinner.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/string_utils.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/subagent.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/task/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/task/store.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/task/tools.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/task/types.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_checkpoint.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_compaction.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_diff_view.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_injection_fix.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_license.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_mcp.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_memory.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_plugin.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_skills.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_subagent.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_task.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_telegram_buffer.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_tool_registry.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tests/test_voice.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tmux_offloader.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tmux_tools.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/tool_registry.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/ui/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/ui/input.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/ui/render.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/voice/__init__.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/voice/keyterms.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/voice/recorder.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/voice/stt.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/voice/tts.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/webchat.py +0 -0
- {dulus-0.2.5 → dulus-0.2.7}/webchat_server.py +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dulus
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.7
|
|
4
4
|
Summary: Spanish-first multi-provider AI CLI — 14 NVIDIA models free, Mesa Redonda, voice, TTS, RTK token reducer, MemPalace
|
|
5
5
|
Author: KevRojo
|
|
6
|
-
License:
|
|
6
|
+
License: GPL-3.0
|
|
7
7
|
Project-URL: Homepage, https://github.com/KevRojo/Dulus
|
|
8
8
|
Project-URL: Repository, https://github.com/KevRojo/Dulus
|
|
9
9
|
Project-URL: Issues, https://github.com/KevRojo/Dulus/issues
|
|
@@ -11,7 +11,7 @@ Keywords: ai,cli,llm,claude,gemini,nvidia,openai,kimi,deepseek,qwen,ollama,agent
|
|
|
11
11
|
Classifier: Development Status :: 4 - Beta
|
|
12
12
|
Classifier: Environment :: Console
|
|
13
13
|
Classifier: Intended Audience :: Developers
|
|
14
|
-
Classifier: License :: OSI Approved ::
|
|
14
|
+
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
15
15
|
Classifier: Operating System :: OS Independent
|
|
16
16
|
Classifier: Programming Language :: Python :: 3
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -61,7 +61,7 @@ SET /sticky_input ON since the first run for the best experience!
|
|
|
61
61
|
<a href="https://pypi.org/project/dulus/"><img src="https://static.pepy.tech/badge/dulus?style=flat-square" alt="downloads"/></a>
|
|
62
62
|
<img src="https://img.shields.io/badge/python-3.11+-ff6b1f?style=flat-square&labelColor=07070a" alt="python"/>
|
|
63
63
|
<img src="https://img.shields.io/badge/license-GPLv3-ff6b1f?style=flat-square&labelColor=07070a" alt="license"/>
|
|
64
|
-
<img src="https://img.shields.io/badge/version-
|
|
64
|
+
<img src="https://img.shields.io/badge/version-v0.2.6-ff6b1f?style=flat-square&labelColor=07070a" alt="version"/>
|
|
65
65
|
<img src="https://img.shields.io/badge/providers-11-ff6b1f?style=flat-square&labelColor=07070a" alt="providers"/>
|
|
66
66
|
<img src="https://img.shields.io/badge/tools-27-ff6b1f?style=flat-square&labelColor=07070a" alt="tools"/>
|
|
67
67
|
<img src="https://img.shields.io/badge/tests-263+-ff6b1f?style=flat-square&labelColor=07070a" alt="tests"/>
|
|
@@ -22,7 +22,7 @@ SET /sticky_input ON since the first run for the best experience!
|
|
|
22
22
|
<a href="https://pypi.org/project/dulus/"><img src="https://static.pepy.tech/badge/dulus?style=flat-square" alt="downloads"/></a>
|
|
23
23
|
<img src="https://img.shields.io/badge/python-3.11+-ff6b1f?style=flat-square&labelColor=07070a" alt="python"/>
|
|
24
24
|
<img src="https://img.shields.io/badge/license-GPLv3-ff6b1f?style=flat-square&labelColor=07070a" alt="license"/>
|
|
25
|
-
<img src="https://img.shields.io/badge/version-
|
|
25
|
+
<img src="https://img.shields.io/badge/version-v0.2.6-ff6b1f?style=flat-square&labelColor=07070a" alt="version"/>
|
|
26
26
|
<img src="https://img.shields.io/badge/providers-11-ff6b1f?style=flat-square&labelColor=07070a" alt="providers"/>
|
|
27
27
|
<img src="https://img.shields.io/badge/tools-27-ff6b1f?style=flat-square&labelColor=07070a" alt="tools"/>
|
|
28
28
|
<img src="https://img.shields.io/badge/tests-263+-ff6b1f?style=flat-square&labelColor=07070a" alt="tests"/>
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dulus
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.7
|
|
4
4
|
Summary: Spanish-first multi-provider AI CLI — 14 NVIDIA models free, Mesa Redonda, voice, TTS, RTK token reducer, MemPalace
|
|
5
5
|
Author: KevRojo
|
|
6
|
-
License:
|
|
6
|
+
License: GPL-3.0
|
|
7
7
|
Project-URL: Homepage, https://github.com/KevRojo/Dulus
|
|
8
8
|
Project-URL: Repository, https://github.com/KevRojo/Dulus
|
|
9
9
|
Project-URL: Issues, https://github.com/KevRojo/Dulus/issues
|
|
@@ -11,7 +11,7 @@ Keywords: ai,cli,llm,claude,gemini,nvidia,openai,kimi,deepseek,qwen,ollama,agent
|
|
|
11
11
|
Classifier: Development Status :: 4 - Beta
|
|
12
12
|
Classifier: Environment :: Console
|
|
13
13
|
Classifier: Intended Audience :: Developers
|
|
14
|
-
Classifier: License :: OSI Approved ::
|
|
14
|
+
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
15
15
|
Classifier: Operating System :: OS Independent
|
|
16
16
|
Classifier: Programming Language :: Python :: 3
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -61,7 +61,7 @@ SET /sticky_input ON since the first run for the best experience!
|
|
|
61
61
|
<a href="https://pypi.org/project/dulus/"><img src="https://static.pepy.tech/badge/dulus?style=flat-square" alt="downloads"/></a>
|
|
62
62
|
<img src="https://img.shields.io/badge/python-3.11+-ff6b1f?style=flat-square&labelColor=07070a" alt="python"/>
|
|
63
63
|
<img src="https://img.shields.io/badge/license-GPLv3-ff6b1f?style=flat-square&labelColor=07070a" alt="license"/>
|
|
64
|
-
<img src="https://img.shields.io/badge/version-
|
|
64
|
+
<img src="https://img.shields.io/badge/version-v0.2.6-ff6b1f?style=flat-square&labelColor=07070a" alt="version"/>
|
|
65
65
|
<img src="https://img.shields.io/badge/providers-11-ff6b1f?style=flat-square&labelColor=07070a" alt="providers"/>
|
|
66
66
|
<img src="https://img.shields.io/badge/tools-27-ff6b1f?style=flat-square&labelColor=07070a" alt="tools"/>
|
|
67
67
|
<img src="https://img.shields.io/badge/tests-263+-ff6b1f?style=flat-square&labelColor=07070a" alt="tests"/>
|
|
@@ -2996,7 +2996,7 @@ def cmd_sticky_input(_args: str, _state, config) -> bool:
|
|
|
2996
2996
|
Background notifications land where they land.
|
|
2997
2997
|
"""
|
|
2998
2998
|
from config import save_config
|
|
2999
|
-
config["sticky_input"] = not config.get("sticky_input",
|
|
2999
|
+
config["sticky_input"] = not config.get("sticky_input", True)
|
|
3000
3000
|
state_str = "ON" if config["sticky_input"] else "OFF"
|
|
3001
3001
|
ok(f"Sticky input bar: {state_str} (restart Dulus to take effect)")
|
|
3002
3002
|
save_config(config)
|
|
@@ -7438,13 +7438,11 @@ def repl(config: dict, initial_prompt: str = None):
|
|
|
7438
7438
|
sys.stdout.write("\x1b[?2004h") # enable bracketed paste mode
|
|
7439
7439
|
sys.stdout.flush()
|
|
7440
7440
|
|
|
7441
|
-
# ── Sticky input bar (
|
|
7442
|
-
# prompt_toolkit
|
|
7443
|
-
#
|
|
7444
|
-
#
|
|
7445
|
-
|
|
7446
|
-
# config) if they want the anchored behavior.
|
|
7447
|
-
_sticky_input_enabled = bool(config.get("sticky_input", False))
|
|
7441
|
+
# ── Sticky input bar (ON by default) ─────────────────────────────────────
|
|
7442
|
+
# prompt_toolkit anchors the input line so background prints flow above it.
|
|
7443
|
+
# On Windows consoles it can redraw on every keystroke (mild jitter), but
|
|
7444
|
+
# the UX win outweighs it. Toggle off with `/sticky_input` if needed.
|
|
7445
|
+
_sticky_input_enabled = bool(config.get("sticky_input", True))
|
|
7448
7446
|
try:
|
|
7449
7447
|
import common as _cm
|
|
7450
7448
|
_cm.apply_theme(config.get("theme", "dulus"))
|
|
@@ -4,11 +4,11 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "dulus"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.7"
|
|
8
8
|
description = "Spanish-first multi-provider AI CLI — 14 NVIDIA models free, Mesa Redonda, voice, TTS, RTK token reducer, MemPalace"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
11
|
-
license = {text = "
|
|
11
|
+
license = {text = "GPL-3.0"}
|
|
12
12
|
authors = [{name = "KevRojo"}]
|
|
13
13
|
keywords = [
|
|
14
14
|
"ai", "cli", "llm", "claude", "gemini", "nvidia", "openai",
|
|
@@ -18,7 +18,7 @@ classifiers = [
|
|
|
18
18
|
"Development Status :: 4 - Beta",
|
|
19
19
|
"Environment :: Console",
|
|
20
20
|
"Intended Audience :: Developers",
|
|
21
|
-
"License :: OSI Approved ::
|
|
21
|
+
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
|
|
22
22
|
"Operating System :: OS Independent",
|
|
23
23
|
"Programming Language :: Python :: 3",
|
|
24
24
|
"Programming Language :: Python :: 3.11",
|
|
@@ -896,8 +896,7 @@ def _rtk_binary() -> Optional[str]:
|
|
|
896
896
|
here = Path(__file__).resolve().parent
|
|
897
897
|
name = "rtk.exe" if _sys.platform == "win32" else "rtk"
|
|
898
898
|
candidates = [here / "rtk" / name]
|
|
899
|
-
|
|
900
|
-
candidates.append(Path.home() / ".local" / "bin" / "rtk")
|
|
899
|
+
candidates.append(Path.home() / ".local" / "bin" / name)
|
|
901
900
|
|
|
902
901
|
for c in candidates:
|
|
903
902
|
if c.exists() and c.is_file():
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|