- das-shell 0.1.0: the Das two-line bash prompt by default (replaces the PS1 of Void's skel .bashrc once), dprompt (Textual prompt builder with presets and live preview) and dbanner (SSH login banner editor: canvas tools, fields with values, widgets, das-banner service for cached ones, Das OS logo and tryzub pictures). Python tests in make test. - das-server 0.3.0 depends on das-shell; the server installer mentions dprompt and dbanner; the desktop image includes it. - run-qemu.sh forwards the guest's SSH to localhost:2222. - Hardware fixes: Ventoy menu icon, boot menu titles "Das OS <version>". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
# Template file for 'das-shell'
|
||||
# In-tree package: sources are in files/ (FILESDIR).
|
||||
pkgname=das-shell
|
||||
version=0.1.0
|
||||
revision=1
|
||||
create_wrksrc=yes
|
||||
hostmakedepends="python3"
|
||||
checkdepends="bash"
|
||||
depends="bash python3 python3-textual figlet"
|
||||
short_desc="Das OS terminal: bash prompt, dprompt and dbanner (SSH login banner)"
|
||||
maintainer="Das <anry.das@gmail.com>"
|
||||
license="MIT"
|
||||
homepage="https://git.das.org.ua/das/Das-OS"
|
||||
conf_files="/etc/bash/bashrc.d/das-prompt.sh /etc/profile.d/das-banner.sh"
|
||||
make_dirs="/var/cache/das/banner 0755 root root"
|
||||
pycompile_dirs="usr/lib/das/python"
|
||||
python_version=3
|
||||
|
||||
do_build() {
|
||||
# The stock prompt is the "das" preset turned into bash by the code itself
|
||||
PYTHONPATH="${FILESDIR}/python" DAS_SHELL_DATA="${FILESDIR}/share" \
|
||||
python3 -m das_shell.cli_prompt show das --script >default-prompt.sh
|
||||
}
|
||||
|
||||
do_check() {
|
||||
cd "${FILESDIR}" && PYTHONDONTWRITEBYTECODE=1 python3 -m unittest discover -s tests -t .
|
||||
}
|
||||
|
||||
do_install() {
|
||||
local f
|
||||
vinstall "${FILESDIR}/bashrc.d/das-prompt.sh" 644 etc/bash/bashrc.d
|
||||
vinstall "${FILESDIR}/profile.d/das-banner.sh" 644 etc/profile.d
|
||||
vinstall "${FILESDIR}/prompt-lib.sh" 644 usr/lib/das
|
||||
vinstall default-prompt.sh 644 usr/share/das/prompt default.sh
|
||||
for f in "${FILESDIR}"/python/das_shell/*.py; do
|
||||
vinstall "${f}" 644 usr/lib/das/python/das_shell
|
||||
done
|
||||
for f in "${FILESDIR}"/share/prompt/presets/*.json; do
|
||||
vinstall "${f}" 644 usr/share/das/prompt/presets
|
||||
done
|
||||
for f in "${FILESDIR}"/share/banner/presets/*.json; do
|
||||
vinstall "${f}" 644 usr/share/das/banner/presets
|
||||
done
|
||||
for f in "${FILESDIR}"/share/banner/art/*.json; do
|
||||
vinstall "${f}" 644 usr/share/das/banner/art
|
||||
done
|
||||
for f in "${FILESDIR}"/share/banner/widgets/*.sh; do
|
||||
vinstall "${f}" 755 usr/share/das/banner/widgets
|
||||
done
|
||||
chmod 644 "${DESTDIR}/usr/share/das/banner/widgets/lib.sh"
|
||||
vsv das-banner
|
||||
for f in dprompt dbanner; do
|
||||
vbin "${FILESDIR}/bin/${f}"
|
||||
vcompletion "${FILESDIR}/${f}.bash-completion" bash ${f}
|
||||
done
|
||||
vlicense "${FILESDIR}/LICENSE"
|
||||
}
|
||||
Reference in New Issue
Block a user