После перезапуска IceWM проверяю ps ax'ом - скрипт не запущен. Devmon запущен, conky тоже. Но не мой скрипт. Запускаю его вручную, снова ps ax - запущен.
я бы начал с просмотра ~/.xsession-errors
туда, кстати, попадёт всё, что выдаст (например, с целью отладки) ваш скрипт во время его запуска из ~/.icewm/startup·
Но я сделал по-другому - перенёс всё в ~/.xinitrc перед "exec icewm-session". Ещё раз делаю вывод, что IceWM сырой и недоделанный. С ~/.xinitrc скрипт, как и всё остальное, запускается успешно.
~/.xsession-errors — это умолчальное место, куда x-сервер складывает то, что выдают x-клиенты в stdout и stderr·
если у вас настроено по-другому, смотреть надо, соответственно, в другом месте·
Боюсь, что проблема в другом. =) Как минимум в том, что в конфиге IceWM не указан путь к скрипту startup. Типичная ситуация "Почему ты делаешь то, что я говорю, а не то что я хочу?!"