LINUX.ORG.RU

История изменений

Исправление kostik87, (текущая версия) :

Смотри, когда ты запускаешь какое-то приложение через SHELL напрямую - SHELL, в твоём случае zsh, передаёт все свои переменные приложения дочернему процессу.

Немного не так, экспортированные или декларированные переменные.

Переменные могут быть ещё локальными только для этого SHELL и далее в дочернем SHELL или процессе видны не будут.

Когда ты запускаешь что-то через другое приложение, например rofi, то сам rofi будучи запущенным из какого-то окружения может наследовать все переменные окружения родителя, в случае SHELL будут наследованы все, а вот для тех приложений, которые запускает он - он уже сам формирует переменные окружения.

Поэтому делать export в оболочке смысла нет, rofi просто не передаёт при вызове дочерних процессов все переменные окружения, что есть у его родителя или у него самого.

Тебе надо смотреть как в конфигурационных файлах rofi указать, что rofi при вызове такого-то приложения должен передавать ему такие-то переменные окружения.

Читай документацию, смотри ссылку два в моём первом сообщении в теме.

Я rofi не пользуюсь, более сказать ничего не могу. Ставить его ради тебя и ковырять - не собираюсь.

Плюс, может у тебя в твоём SHELL нет нужных переменных окружения, а эмулятор терминала отображается на русском и вся оболочка потому, что у тебя стоит соответствующий пакет l10n для твоей графической оболочки.

Может ты сам сломал в SHELL правильное наследование переменных с определением локали.

Что у тебя в SHELL по локалям?

Смотри вывод:

export
set

Но думается мне - тебе всё же нужно читать документацию по rofi и определять передачу переменных с локалью в его конфиге для каждого запускаемого через него приложения.

Исправление kostik87, :

Смотри, когда ты запускаешь какое-то приложение через SHELL напрямую - SHELL, в твоём случае zsh, передаёт все свои переменные приложения дочернему процессу.

Немного не так, экспортированные или декларированные переменные.

Переменные могут быть ещё локальными только для этого SHELL и далее в дочернем SHELL или процессе видны не будут.

Когда ты запускаешь что-то через другое приложение, например rofi, то сам rofi будучи запущенным из какого-то окружения может наследовать все переменные окружения родителя, в случае SHELL будут наследованы все, а вот для тех приложений, которые запускает он - он уже сам формирует переменные окружения.

Поэтому делать export в оболочке смысла нет, rofi просто не передаёт при вызове дочерних процессов все переменные окружения, что есть у него родителя или у него самого.

Тебе надо смотреть как в конфигурационных файлах rofi указать, что rofi при вызове такого-то приложения должен передавать ему такие-то переменные окружения.

Читай документацию, смотри ссылку два в моём первом сообщении в теме.

Я rofi не пользуюсь, более сказать ничего не могу. Ставить его ради тебя и ковырять - не собираюсь.

Плюс, может у тебя в твоём SHELL нет нужных переменных окружения, а эмулятор терминала отображается на русском и вся оболочка потому, что у тебя стоит соответствующий пакет l10n для твоей графической оболочки.

Может ты сам сломал в SHELL правильное наследование переменных с определением локали.

Что у тебя в SHELL по локалям?

Смотри вывод:

export
set

Но думается мне - тебе всё же нужно читать документацию по rofi и определять передачу переменных с локалью в его конфиге для каждого запускаемого через него приложения.

Исправление kostik87, :

Смотри, когда ты запускаешь какое-то приложение через SHELL напрямую - SHELL, в твоём случае zsh, передаёт все свои переменные приложения дочернему процессу.

Когда ты запускаешь что-то через другое приложение, например rofi, то сам rofi будучи запущенным из какого-то окружения может наследовать все переменные окружения родителя, в случае SHELL будут наследованы все, а вот для тех приложений, которые запускает он - он уже сам формирует переменные окружения.

Поэтому делать export в оболочке смысла нет, rofi просто не передаёт при вызове дочерних процессов все переменные окружения, что есть у него родителя или у него самого.

Тебе надо смотреть как в конфигурационных файлах rofi указать, что rofi при вызове такого-то приложения должен передавать ему такие-то переменные окружения.

Читай документацию, смотри ссылку два в моём первом сообщении в теме.

Я rofi не пользуюсь, более сказать ничего не могу. Ставить его ради тебя и ковырять - не собираюсь.

Плюс, может у тебя в твоём SHELL нет нужных переменных окружения, а эмулятор терминала отображается на русском и вся оболочка потому, что у тебя стоит соответствующий пакет l10n для твоей графической оболочки.

Может ты сам сломал в SHELL правильное наследование переменных с определением локали.

Что у тебя в SHELL по локалям?

Смотри вывод:

export
set

Но думается мне - тебе всё же нужно читать документацию по rofi и определять передачу переменных с локалью в его конфиге для каждого запускаемого через него приложения.

Исходная версия kostik87, :

Смотри, когда ты запускаешь какое-то приложение через SHELL напрямую - SHELL,, в твоём случае zsh, передаёт все свои переменные приложения дочернему процессу.

Когда ты запускаешь что-то через другое приложение, например rofi, то сам rofi будучи запущенным из какого-то окружения может наследовать все переменные окружения родителя, в случае SHELL будут наследованы все, а вот для тех приложений, которые запускает он - он уже сам формирует переменные окружения.

Поэтому делать export в оболочке смысла нет, rofi просто не передаёт при вызове дочерних процессов все переменные окружения, что есть у него родителя или у него самого.

Тебе надо смотреть как в конфигурационных файлах rofi указать, что rofi при вызове такого-то приложения должен передавать ему такие-то переменные окружения.

Читай документацию, смотри ссылку два в моём первом сообщении в теме.

Я rofi не пользуюсь, более сказать ничего не могу. Ставить его ради тебя и ковырять - не собираюсь.

Плюс, может у тебя в твоём SHELL нет нужных переменных окружения, а эмулятор терминала отображается на русском и вся оболочка потому, что у тебя стоит соответствующий пакет l10n для твоей графической оболочки.

Может ты сам сломал в SHELL правильное наследование переменных с определением локали.

Что у тебя в SHELL по локалям?

Смотри вывод:

export
set

Но думается мне - тебе всё же нужно читать документацию по rofi и определять передачу переменных с локалью в его конфиге для каждого запускаемого через него приложения.