KDE3 - формирование переменных окружения startkde

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модератор: SLEDopit

Ответить
Аватара пользователя
sunjob
Сообщения: 324
Контактная информация:

KDE3 - формирование переменных окружения startkde

Сообщение sunjob »

формирование переменных окружения startkde для самих KDE3 :rolleyes:

добрый день

нужен волшебный пендель от гуру :о)
делаю сборку KDE3, есть проблема (не могу слёту решить, глаза замылились, мозг затуманился, руки искривились и начали расти не оттудова откудова обычно... )

объект: скрипт запуска KDE - startkde
задача: формирование "некоторых" переменных окружения, специальным образом :о)
симптомы: нормально/правильно формируются только некоторые, точнее все, кроме одной

правильно сформированные переменные:
- XDG_CONFIG_DIRS
- XDG_DATA_DIRS
- KDE3XDG (новая)

проблемная переменная:
- PATH

пояснение/детали:

пробовал все, что можно (в разумных пределах + пустого пользователя), отладочное старт-стоп эхо - показывает правильное формирование PATH (в самом скрипте), но как только стартуют кеды, значение PATH возвращается на "стандартное значение" (при том, что, все остальные сформированные переменные принимают "правильное" значение)

на скриншоте видно, что все "интересуемые" переменные получили "правильное "наполнение", типа "/etc/kde3/xxx" а в PATH - "оно" отсутствует

/etc/rc.d/*
& /etc/profile.d/ - все пересмотрел...
"export XXX" - пробовал по всякому

буду благодарен за советы, ключевые слова, волшебные пендели - ПО ТЕМЕ (в том числе и по "общей рихтовке" 3х кед, что смогу, то, постараюсь реализовать, в разумных и возможных пределах, конечно же)

для желающих "грязно покопаться в мозгах" ссылка на имидж системы (на текущий момент, с установленными кедами)

пользователи root & sun, пароли 123
PREFIX=/opt/kde3
PREFIX/bin/startkde - "виновник торжества"

KDE ver. 3.5.10 (стоковые исходники)
Slackware 13.37 x32

заранее благодарен

п.с.
для интересующихся (и постоянно напоминающих) об НЕРАБОТАЮЩЕЙ раскладке клавиатуры!!! ни чего специального не делал, только стандартный набор последовательностей - добавил как "оно логично должно быть" :о)
скачивайте образ, моделируйте "косяки клавиатуры", описывайте, будет так же плюсом :о)

п.с.2
vbox - образ пока закачивается, будет на месте в течении получаса

https://sourceforge.net/projects/tde-slackw....37/VirtualBox/

### UPDATE ###

наверное, мне надо было "дотошно" все обьяснить сразу же... не все же занимаются такой-же фигней как и я :о)

короче, обьясняю:
при "обычном раскладе", все - естественно, как обычно и всех устраивает :о)

можно PATH просписать где угодно и как угодно и он во время работы под любыми десктопапи (XFCE, KDE, LXDE...) будет устраивать всех... не будет никаких косяков...

но, если надобно "встроить в систему" родственные десктопы, у которых имена практически совпадают на 100%, как то KDE3/KDE4/TDE3/TDE14 - то тут, упс, один путь на все уже не катит, ведь странно же будет, если из под третьих кед запустить konsole - и получить консоль от 4х кед ... или которые там попадутся первыми в PATH ... это вкратце, надеюсь далее обьяснять не надо, сами допедрите :о)

ну дак вот, что бы избежать всей этой путаницы нужна "ДИНАМИЧЕСКАЯ НАСТРОЙКА ОКРУЖЕНИЯ", в зов-ти от запускаемого рабочего стола, причем эта самая настройка должна происходить во время запуска DE...

изначальная задача была - интеграция KDE3 в совместное проживание c KDE4 (само собой что PREFIX установки у них должен быть разный)

теперь возвращаясь к нашим баранам

startkde - как раз и занимается формированием окружения (PATH, XDG_DATA_DIRS, XDG_CONFIG_DIRS, DESKTOP_SESSION) и далее запуском самих кед...

ну вот... проблема в том, что все переменные формируются внутри startkde - правильно, но вот при запуске кед, переменная PATH - возвращается к "стандартной"... (т.е. проверяем значение PATH уже при запущенных кедах)

правильность формирования всех переменных внутри startkde- проверено эхо-отладкой (надеюсь подробно описывать не надо очевидные вещи)

ну вот, спасибо...

### UPDATE ###

добрый день

проблема оказалось в моей невнимательности (а чего мы ожжидали? :о)))

дело в том, что PATH имеет разные значения для шелл/ком.строки/konsole и для рабочего окружения KDE3 (т.е. то окружение, которое мы как раз и теребонькаем и подстраиваем под себя)

убедиться в этом можно запустив простой тест-эхо:
- из под ком. строки/шелл/консоли - баш скрипт
- кликом по *.desktop ярлыку, запускающему тот-же тестовый скрипт

...и ...получим разные результаты (разные, естественно, в том случае, если startkde до этого запустил свои шаловливые ручки в "определение" этих самых пересменных, в данном случае это PATH)

ну вот и все! всем удачи, надеюсь обществу пригодиться (мне же пригодилось :о)))


show_PATH.sh

Код: Выделить всё

#!/bin/sh
clear
echo "PATH = $PATH"; read


show PATH.desktop

Код: Выделить всё

[Desktop Entry]
Comment=
Comment[en_US]=
Exec[$e]='/home/sun/Desktop/show_PATH.sh'
GenericName=
GenericName[en_US]=
Icon=exec
MimeType=
Name=show PATH
Name[en_US]=show PATH
Path[$e]=
StartupNotify=true
Terminal=true
TerminalOptions=\s--noclose
Type=Application
X-DCOP-ServiceType=
X-KDE-SubstituteUID=false
X-KDE-Username=


Код: Выделить всё

- show_PATH.sh - start on bash/konsole shell  # PATH, standart env shell
- show PATH.desktop - click on start          # PATH, modign by startkde/kde3
Вложения
pic_2017.05.11_17.04.33.jpg
если я ошибаюсь, то поправьте а не критикуйте :о)
Спасибо сказали:
Ответить