null

Установка Fusion360 в Ubuntu

Добрый день!

Сегодня мы рассмотрим с вами небольшой инструкцию по установке программы для создания 3д моделей - Fusion360 в Ubuntu.

Данный гайд проверялся на версии Wine 3.5 в Ubuntu 18.04.

Для начала решим первую проблему - сайт Autodesk'а автоматически определяет вашу операционную систему и не позволяет скачать установочник, если видит, что текущая оперционная система не поддерживается. Для решения этой проблемы измени User agent нашего браузера. В хроме это делается следующим образом:

  1. Заходим в раздел для скачивания установочника на сайте Autodesk
  2. Открываем инструменты разработчика (F12), заходим в настройки в раздел "More tools" и выбираем "Network conditions"
  3. Снимаем галочку "Select automatically" и выбираем "Chrome - Windows"

После выполнения этих шагов мы можем скачать установочник Fusion360 для винды.

Далее устанавливаем winetricks и выполняем следующие команды:

  1. winetricks win7
  2. winetricks vcrun2017
  3. winetricks win7
  4. winetricks d3d11=disabled

Следующей проблемой является питоновский скрипт в установочнике, определяющий текущую операционную систему. Разберёмся и с ним

  1. Используя 7zip разархивируем скачаный установочник как zip архив
  2. Внутри есть архив python35.zip. Разархивируем его. Нам потребутеся platform.pyс, который лежит в корне архива.
  3. Установим uncompyle6 и декомпилируем platform.pyс.
  4. Изменим строку, которая начинается с maj, min, build = на maj, min, build = winver[:3] (обычно это строка 323)
  5. Изменим возвращаемое значение следующих функций
    • def system(): return 'Windows'
    • def release(): return '7'
    • def version(): return '6.1.7601'
  6. Сохраним скрипт и положим его рядом с streamer.exe
  7. Запускаем streamer.exe и идём смотреть логи ~/.wine/drive_c/users/{USERNAME}/Local Settings/Application Data/Autodesk/autodesk.webdeploy.log

В лучшем случае установка завершится успешно и можно праздновать победу, однако я столкнулся со следующей проблемой: 

File "R:\Core\Neutron\Installer\Streamer\src\adsk\dls\streamer\manifests.py", line 764, in walk_external_references 
File "R:\Core\Neutron\Installer\Streamer\src\adsk\dls\streamer\windows\platform.py", line 350, in __filevisitor
File "R:\Core\Neutron\Installer\Streamer\src\adsk\dls\streamer\windows\platform.py", line 234, in _create_shortcut 
File "R:\Core\Neutron\Installer\Streamer\src\adsk\dls\streamer\windows\native.py", line 160, in Save
File "R:\Core\Neutron\Installer\Streamer\src\adsk\dls\streamer\windows\native.py", line 139, in __SaveShellProps 
_ctypes.COMError: (-2147467263, None, (None, None, None, 0, None))

Проделаем фокус с декомпиляцией файла adsk\dls\streamer\windows\platform.pyс из всё того же архива python35.zip. Удалим комментарии, который оставляет в начале файла декомпилятор и закомментируем строки 234 (self._manipulate_shortcuts...) и 277 (self._create_shortcut...). Посл чего, подменяем исходный файл adsk\dls\streamer\windows\platform.pyс на наш исправленный и собираем архив. Далее подкладываем этот архив к установочнику в wine ~/.wine/drive_c/users/{USERNAME}/Local Settings/Application Data/Autodesk/webdeploy/meta/streamer/{ЧИСЛА}/. Перезапускаем streamer.exe. Процесс установки должен завершиться быстро и без проблем, после чего мы можем запускать ~/.wine/drive_c/users/{USERNAME}/Local Settings/Application Data/Autodesk/webdeploy/production/{МНОГО_ЦИФР}/Fusion360.exe и радоваться жизни.

На этом всё, надеюсь сей сумбурный гайд был полезен.