Я хотел бы сделать banshee --next
или просто контролировать банши в целом с виртуальной консоли (например, ту, которую я получаю, когда нажимаю Ctr-Alt-F1).
Это возможно? Как я могу это сделать?
Оказывается, мой сеанс X с запущенным dbus имеет следующий набор переменных среды, который доступен из всех эмуляторов терминала в X:
DBUS_SESSION_BUS_ADDRESS
Его содержимое (`echo $ DBUS_SESSION_BUS_ADDRESS), по-видимому, обозначает Разъем Unix, используемый Dbus.
Получение команд терминала banshee для работы в виртуальной консоли оказалось простым делом этой ценности с виртуальным терминалом.
Чтобы автоматизировать его, я написал следующий простой сценарий:
$ cat get_dbus_addr.sh
#!/bin/bash
#Use this file for sharing the most recent DBus socket address
FILE="/tmp/${USER}_DBUS_SESSION_BUS_ADDRESS"
if [ ! -z "$DBUS_SESSION_BUS_ADDRESS" ]
then
echo $DBUS_SESSION_BUS_ADDRESS > "$FILE"
else
export DBUS_SESSION_BUS_ADDRESS=`cat "$FILE"`
fi
Я получаю сценарий из соответствующих файлов конфигурации терминала (чтобы он был получен как в графическом интерфейсе, так и в виртуальной консоли). Источник в GUI сохраняет значение в файле общего доступа в / tmp, а источник в Виртуальной консоли (где переменная ENV не установлена) загружает его.
Я все забираю - tmux позволяет получать доступ к нескольким терминалам (или окнам) и управлять ими с одного терминала, такого как экран. Мне удалось banshee --next
с виртуальной консоли. Очень крутая утилита.
К сожалению, пока они не исправят известную ошибку , нет, это невозможно, потому что Banshee использует DBus для передачи этих команд из командной строки игроку. Лучшим обходным решением будет использование CTRL-ALT-T вместо CTRL-ALT-F1. Или, по крайней мере, это работает для меня 12.04. S>