LINUX.ORG.RU

Приложения на флешке


0

0

Ребят, подскажите, можно ли сделать такую тему: запуск приложений с флешки и хранение настроек (которые при обычном раскладе хранаться в ~/.my_application) этих приложений на этой же флешке? Т.е. я скачиваю пакет с программой, распаковываю и кидаю на флешку, в случае, если программка простая и состоит из одного только бинарника, то все ясно - запускается без проблем, но если программа помимо исполняемого файла содержит и некоторый набор библиотек, как быть + хранение настроек на флешке? Как такое организовать?

anonymous
Ответ на: комментарий от sin_a

Вариант, но собирать самому каждый раз новое приложение не хотелось бы. Как быть с настройками?

anonymous
()

Может сделать чтоб на флешке вместо бинарников запускались скрипты вида:

-- скрипт начался ---
#!/bin/sh

# тут найти путь к флешке.. не помню как это портабельно сделать...
# ps с какими-нибудь хитрыми опциями запустить или что еще
FLASH_HOME= ....

export HOME=$FLASH_HOME

# запустить настоящий бинарник
# передать ему аргументы чтоб не лазал в /etc.. обычно такие есть
$FLASH_HOME/bin/myapp.bin

--скрипт кончился ---

gods-little-toy ★★★
()

указать переменные XDG_CONFIG_DIR(это для новых приложений), и HOME(будет работать для всех, сли xdg_* не переопределены). Для библиотек -- LD_LIBRARY_PATH

gaa ★★
()
Ответ на: комментарий от gods-little-toy

Получается, если я переназначу домашнюю директорию, то программы, установленные на компьютере, не найдут своих конфигурациооных файлов, т.е. не получиться после запуска приложения с флешки запустить, например, браузер, установленный на машине, у кторого закладки и прочие настройки лежат /home/username/.web_browser.

>>передать ему аргументы чтоб не лазал в /etc.. обычно такие есть

Пусть лазает, важно, чтобы он находил библиотеки, которые идут с этим приложением (в пакете с ним), но лежат на флешке, как и бинарник, читало свои настройки с нее и туда же сохраняло, при этом установленные приложения на компьютере не теряли своих настроек.

anonymous
()
Ответ на: комментарий от anonymous

> Получается, если я переназначу домашнюю директорию, то программы, установленные на компьютере, не найдут своих конфигурациооных файлов, т.е. не получиться после запуска приложения с флешки запустить, например, браузер, установленный на машине, у кторого закладки и прочие настройки лежат /home/username/.web_browser.

Вовсе нет. $HOME переназначается только для запускаемого с флешки приложения. Все остальные продолжат использовать старый $HOME...

Но вот браузер может быть исключением - у большинства браузеров в начале выполняется такой код:

if (уже есть запущенная этим юзером копия этого приложения) { сказать ей открыть новое окно; exit(0); }

поэтому запустив firefox с флешки запустить второй firefox c винта может не выйти - будут создаваться новые окна firefox'а с флешки.

>>передать ему аргументы чтоб не лазал в /etc.. обычно такие есть

> Пусть лазает, важно, чтобы он находил библиотеки, которые идут с этим приложением (в пакете с ним), но лежат на флешке, как и бинарник,

это надо в запускающем скрипте выставить $LD_LIBRARY_PATH. Вполне достижимо.

Кстати. Была же такая штука - open office на флешке. portable open office или как-то так называлась... если она под линукс есть можешь на нее посмотреть...

gods-little-toy ★★★
()

ещё можно попробовать ln -s /mnt/flash/config/my_application ~/.my_application

alexsaa
()
Ответ на: комментарий от shdr

И в PATH добавить путь к флешке:

export PATH=$PATH:<путь_к_флешке>

DiGital
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.