Ошибка в Steam для Linux может привести к удалению всех данных пользователя

Один из пользователей Steam на платформе Linux столкнулся с непонятным пропаданием всех своих данных после перемещения директории ~/.local/share/steam на новый диск через символическую ссылку. После перемещения данных, запуск Steam завершился крахом, а повторный запуск привёл к инициированию переустановки клиента Steam. После данных манипуляций все принадлежащие текущему пользователю данные оказались удалены, в том числе данные, размещённые в директории пользователя и в примонтированном накопителе.

Причиной удаления оказался скрипт steam.sh, в котором была допущена ошибка, приводящая к запуску команды "rm -rf /" в случае проблем с доступом к директории с данными Steam. В частности, в скрипте присутствует строка rm -rf "$STEAMROOT/"*, которая должна была выполнить чистку содержимого директории с данными Steam при переустановке. Заполнение переменной производится командой STEAMROOT="$(cd "${0%/*}" && echo $PWD)"). Таким образом, в случае, если директория не найдена, в переменную STEAMROOT записывается пустая строка, что приводит к выполнению rm -rf "/"* и удалению в системе всех данных, принадлежащих пользователю. Следует отметить, что похожая проблема наблюдается и в версии для платформы Windows (при установке Steam в "C:\\Program Files\\" вместо "C:\\Program Files\\Steam\\" может быть удален весь "C:\\Program Files\\").