Я пытаюсь создать оболочку bash для своей программы на Python, но столкнулся с проблемой, поскольку myprogram.py необходимо запускать в моем venv Python, а также в сеансе dbus. Я создал оболочку bash для myprogram.py, и сейчас она выглядит так:
Код: Выделить всё
#!/bin/bash
source ./my-venv/bin/activate #activate python venv
dbus-run-session -- bash --noprofile --norc #start dbus session
echo -n 'db' | gnome-keyring-daemon --unlock #unlock keyring(using gnome bc my linux distro is headless)
python ~/myprogram.py #run my python program
Эта последовательность команд работает в моей оболочке, но когда я помещаю ее в такой сценарий bash, она просто активирует my-venv и ждет ввода пользователя. Даже когда я сначала запускаю my-venv, а затем запускаю сценарий, он просто запускает сеанс dbus и снова ждет ввода пользователя. Со строкой gnome-keyring-daemon проблем нет, пока работают две вышеуказанные строки. Я хочу, чтобы он просто запускал всю последовательность без участия пользователя.
Как мне запустить myprogram.py внутри моего venv Python и моего сеанса dbus с помощью сценария bash? Любая помощь приветствуется, спасибо.
Подробнее здесь:
https://stackoverflow.com/questions/791 ... ash-script