Got Photoshop CS6 working on FreeBSD with GPU acceleration!

Kinda think it's pretty cool and want to share I make it work.) Not so many success stories about running PS on FBSD, so I'll post in brief. First, here is how it looks.

2023-03-12-012907_1920x1080_scrot.png


What I did, in brief (sorry if mis-typed here and there):

1. I on x86_64 system and have a proprietary nvidia card and a driver which always worked best compared to everything else.
2. Installed Wine compiled from source and then satisfied it's demand
Rich (BB code):
Try installing 32-bit Wine with
    /usr/local/share/wine/pkg32.sh install wine mesa-dri
For that you have to change you repository setting to allow i386 downloads. After what wine wrappers will create 32bit wine chroot for running 32bit binaries in $HOME/.i386-wine-pkg.
3. Add some winetricks stuff. It's different for different version of photoshop, for CS6 this worked:
Code:
WINEPREFIX=~/.wine.photoshop4 winetricks gdiplus atmlib msxml3 msxml6 d3dx9 d3dx10 d3dx11_42 d3dx11_43 dxvk;
4. Ok, now the trick. Go to winecfg, open Libraries, find and in the list "dxgi" and change it's type to builtin (wine). This is to use wine's part as GUI acceleration.
5. Setup photoshop in the bottle.
Code:
WINEPREFIX=~/.wine.photoshop4 wine /mnt/floppy/Adobe\ CS6/Set-up.exe
Set-up.exe is a 32 bit binary that is able to setups both 32 and 64 versions. I believe this is where confusion comes. Because it starts 32-bit wine... but later during the Install has to do something with 64 binaries... It manages to install 32 bit version and fails with 64 bit, but that's nothing. Proceed with only 64 bit, register as usual. ;-)
6. When time comes actually to run it, go to the directory where Photoshop.exe lies. First wine better works this way, second there is a binary that makes problems. It's called sniffer_gpu.exe. When it tries to sniff your GPU, it actually hangs. So don't let it do this. Delete the bastard!
7. After that I got happy ending! Have fun too!
 
Also I have a feeling that sometimes you may avoid
Code:
wineserver: file_set_error() can't map error: Cannot allocate memory

by modifying /etc/login.conf
Code:
memorylocked=unlimited

Then update db with cap_mkdb /etc/login.conf, then relogin and then run wineserver with correct WINEPREFIX manually from console to be sure limites are not applied.
 
Back
Top