Repository navigation
dyode setup: guided setup in dialog boxes, hooked into install.sh - #2
Merged
Merged
Conversation
A port of DYODE (Python) 1.5's curses setup, built into the binary with no ncurses dependency: termios raw mode and ANSI drawing (src/tui.rs), with a plain-question fallback for pipes and dumb terminals. - one question per screen, Esc back everywhere, nothing written before the review; the result is validated by config::parse - import keeps every option it does not ask about; backups on write - new lidi ports/rate screens, diode-card warnings, key step - install.sh runs it when no config.yaml exists (--wizard, --no-wizard, --import-config) and builds the unit from the config it wrote Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QXjQsiWnwLMndr5XU9g5LJ
- every module gets an Advanced screen (after its main fields, and from its menu) with each option the loader accepts, its default and checks - install.sh asks offline/online before installing anything, drawn by the dyode binary in the same dialog look (plain prompt without a binary) - install.sh runs the guided setup on every interactive install Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QXjQsiWnwLMndr5XU9g5LJ
- folder modules: parallel_files (1-16) files of a batch in flight at once, each its own lidi transfer; max_clients defaults to the modules' concurrent transfers + 2 - dyode check: compares the installed dyode-in/out.service with config.yaml (NIC, command, config path), suggests lidi ports for the CPU count, warns when an explicit max_clients is too small - packaging/systemd/reference/: v1/v2 units for both sides, kept equal to the generator by a test - setup: parallel_files on the folder Advanced screen - loopback test with 4 files in flight over 2 lidi ports Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QXjQsiWnwLMndr5XU9g5LJ
2.0.2: parallel_files, unit/NIC check in dyode check, lidi port hints, reference units
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings back DYODE (Python) 1.5's guided setup, as
dyode setup, built into the binary.What it does
--plain.config::parse(the service's own loader) before it can be written; existing files are backed up.dyode_out.macfrom that card (and warns if that changes an imported file).install.sh
--no-wizardskips,--import-config FILEstarts from a file), then writes the systemd unit from the config it produced instead of config.example.yaml.Testing
dyode setupand ofinstall.sh --dry-run(mode question → wizard), terminal restored on exit.cargo fmt --check,cargo clippy --all-targets -D warningsclean.Generated by Claude Code