Hardware fixes: issue version, installer Cyrillic, console TUIs (0.9.2)
build / build (push) Canceled after 0s

- /etc/issue shows the Das OS version instead of the kernel's; the server
  installer carries it into the installed system.
- das-server-installer: setfont -C /dev/tty0 before the language menu
  (sudo runs it in its own pty, so the Cyrillic was drawn as Latin), and
  floppy drives are no longer offered as install targets.
- ncdu on the desktop image and in das-server 0.4.0.
- das-shell 0.2.0: each prompt line sets its own color; the dbanner start
  screen buttons are no longer covered by the key bar; on the Linux
  console (TERM=linux) dprompt and dbanner draw solid borders and swap
  the glyphs that no console font has (▊▎▔▁ and others) for ones it has.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
das
2026-10-21 19:21:47 +03:00
co-authored by Claude Opus 5.5
parent 94b1bf5f8b
commit 6564d1eb17
17 changed files with 83 additions and 26 deletions
@@ -17,7 +17,7 @@ from textual.widgets import (Button, Checkbox, Footer, Header, Input, Label, Lis
from . import banner, widgets
from .canvas import TOOLS, Canvas
from .i18n import t, title
from .tui_common import AskDialog, Swatches, run_as_root
from .tui_common import AskDialog, Swatches, console_mode, run_as_root
TOOL_NAMES = {
"pen": ("Олівець", "Pen"), "eraser": ("Гумка", "Eraser"), "line": ("Лінія", "Line"),
@@ -657,7 +657,8 @@ class StartScreen(Screen):
CSS = """
#list { width: 46; border-right: solid $primary; }
#start_preview { padding: 0 1; }
.buttons { height: 3; dock: bottom; }
#start_main { height: 1fr; }
.buttons { height: auto; }
.buttons Button { margin-right: 1; }
"""
BINDINGS = [
@@ -671,7 +672,7 @@ class StartScreen(Screen):
def compose(self):
yield Header()
with Horizontal():
with Horizontal(id="start_main"):
yield ListView(id="list")
yield VerticalScroll(Static(id="start_preview"))
with Horizontal(classes="buttons"):
@@ -769,6 +770,7 @@ class BannerApp(App):
def __init__(self):
# The terminal's own 16 colors: the picture looks as it will at login
console_mode()
super().__init__(ansi_color=True)
def on_mount(self):