Насколько безопасен *.run, зависит не от *.run. А от его наполнения.
А ТС не сообщил что это за *.run.
Например в ut2004*.run, никаких make install нет и быть не может.
При этом установщик должен предлагать правильный путь умолчанием с возможностью изменения:
$ strings ut2004d/setup.data/bin/Linux/x86_64/setup | grep local/games -A3
/usr/local/games
eula
keepdirs
readme
А в идеале, инсталл-скрипт, должен иметь и функцию DetectARCH(), шоб не пудрить мозг пользователю, на какую архитектуру устанавливается *.run:
$ sed -n '28,61p' ./ut2004d/setup.sh
# Return the appropriate architecture string
DetectARCH()
{
status=1
case `uname -m` in
...
esac
return $status
}
При этом, приоритет загрузки библиотек, должен устанавливаться самим старт-скриптом:
$ sed -n '37,43p' /usr/local/games/ut2004demo/ut2004-demo
# Set the home if not already set.
if [ "${UT2004_DATA_PATH}" = "" ]; then
UT2004_DATA_PATH="`FindPath $0`/System"
fi
LD_LIBRARY_PATH=.:${UT2004_DATA_PATH}:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
$ cat var.txt
UT2004_DATA_PATH= /usr/local/games/ut2004demo/System
LD_LIBRARY_PATH= .:/usr/local/games/ut2004demo/System:
И это без проблем и безопасно работает уже 16 лет.
С _этим_ *.run, после старта установки, пользователю достаточно будет жать Next>Next>Next.
Дополнительно установив зависимости:
Две из репозитория и одну костылём из p8.
Засада здесь только в одном:
Альты поклали через resolved wontfix на сборку библиотеки libstdc++.so.5. Которая есть во всех стабильных, основных веток линукс. Но не в альтах.
Но всё это философия.
А финалом только одно:
ТС не сообщил, что это за *.run. А нет данных и подробностей о *.run, - то и говорить не о чем.