КОМПАС 3D уcтановка в МОС-Linux: различия между версиями

Материал из IT в школе
Перейти к навигацииПерейти к поиску
Строка 32: Строка 32:


</syntaxhighlight>
</syntaxhighlight>
Второй cкрипт предустанавливает зависимости программы КОМПАС 3D в каталог .wine архитектуры win32 (в иной архитектуре программа работает нестабильно).
Второй cкрипт запускается от имени пользователя, который будет работать с КОМПАС
скрипт исполнялся от пользователя, который будет запускать КОМПАС
и предустанавливает зависимости программы КОМПАС 3D в каталог .wine архитектуры win32 (в иной архитектуре программа работает нестабильно).
для чистоты результата скрипт должен использоваться на компьютере, где wine еще не запускали, Удалите каталог .wine
для чистоты результата скрипт должен использоваться на компьютере, где wine еще не запускали, Удалите каталог .wine



Версия 11:10, 14 декабря 2022

В настоящее время отсутствует (но по некоторой информации готовится) версия КОМПАС 3D для Linux

Для установки windows-версии КОМПАС 3D в эмулятор Windows wine системы МОС-Linux можно использовать приведенные ниже скрипты. Они должны подходить для любых версий КОМПАС 3D. Для лицензионных версий нужно также установить haspd. Самую последнюю информацию о способе установки можно получить в техподдержке производителя.

Обращаем внимание, что согласно лицензии бесплатно в учебном заведении можно установить только LT версию https://edu.ascon.ru/main/download/freeware/

Первый скрипт устанавливает wine32, запускать его надо от имени root

#!/bin/bash

#установить или восстановить wine32 после проблем с libopenal1
if [ ! -z "`apt-get -y install i586-wine 2>&1 | grep libopenal | grep Depends`" ]; then
epm --auto downgrade libopenal1
rm /etc/apt/sources.list.d/alt.list
apt-get -y update
apt-get -y install i586-wine
fi
apt-get -y install winetricks

#установка win32 дополнительных библиотек
# эквивалент команды epm play i586-fix , которая на момент написания в МОС не работает, только в altlinux
LIST=""
for i in glibc-nss glibc-gconv-modules sssd-client vulkan-amdgpu libvulkan1 $(epmqp --short libnss | grep "^libnss-")  $(epmqp --short xorg-dri | grep "^xorg-dri-")
do
    epm --quiet installed $i && LIST="$LIST i586-$i"
done
epm --auto install $LIST

Второй cкрипт запускается от имени пользователя, который будет работать с КОМПАС и предустанавливает зависимости программы КОМПАС 3D в каталог .wine архитектуры win32 (в иной архитектуре программа работает нестабильно). для чистоты результата скрипт должен использоваться на компьютере, где wine еще не запускали, Удалите каталог .wine


#!/bin/bash

WINEARCH=win32 winecfg

for i in  dotnet48 d3dcompiler_47 jet40 msxml3  msxml4 msxml6 corefonts riched20 vcrun2019 
do
winetricks --force -q ${i}
done 
wine reg add 'HKEY_CURRENT_USER\Software\Wine\DllOverrides' /v *msxml3 /t REG_SZ /d native,builtin /f
wine reg add 'HKCU\SOFTWARE\Microsoft\Avalon.Graphics' /v DisableHWAcceleration /t REG_DWORD /d 1 /f
cp $HOME/.wine/drive_c/windows/system32/rgb9rast_2.dll $HOME/.wine/drive_c/windows/system32/rgb9rast.dll

После исполнения скриптов, остается перейти в каталог с дистрибутивом КОМПАС и запустить установку командой wine *.msi.

БОНУС: скрипт для копирования настроенного wine на все компьютеры класса (2-15) с первого компьютера. При этом wine должен быть уже установлен на них первым скриптом. Запускается из каталога /home/student первого компьютера от имени student

#!/bin/bash

SCHOOL=648
CORP=1
CAB=41

for i in {2..15} 
do
HOST=m${SCHOOL}-${CORP}-${CAB}-${i}.local
sshpass -p ${STUDENTPASS}  ssh -o StrictHostKeyChecking=no student@${HOST} mkdir /home/student/.wine
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.wine/ student@${HOST}:/home/student/.wine/ --delete
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.config/menus/ student@${HOST}:/home/student/.config/menus/ --delete
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.local/share/desktop-directories/ student@${HOST}:/home/student/.local/share/desktop-directories/ --delete
sshpass -p ${STUDENTPASS}  ssh -o StrictHostKeyChecking=no student@${HOST} mkdir /home/student/.local/share/applications/
sshpass -p ${STUDENTPASS}  ssh -o StrictHostKeyChecking=no student@${HOST} mkdir /home/student/.local/share/applications/wine/
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.local/share/applications/wine/ student@${HOST}:/home/student/.local/share/applications/wine/ --delete
done