시스템의 와인 패키지가 업데이트되면 대부분의 와인 패키지 WINEPREFIX
(특정 버전의 와인을 사용하도록 구성되지 않은 경우)도 업데이트되어야 합니다. 모두가 아는 한, 업데이트는 접두사를 기반으로 애플리케이션이 시작될 때 자동으로 처리됩니다. 그래서 그런 것으로 WINEPREFIX='/path/to/prefix' winecfg
충분할 것입니다.
그러나 사용자 입력 없이 여러 접두사를 일괄 업데이트하는 방법을 찾고 있습니다. 그리고 X를 실행하지 않는 것이 좋습니다. 이를 수행하는 방법에 대한 제안이 있습니까?
답변1
그래픽이 아닌 wine/windows 명령만 실행하면 되며 $DISPLAY
설정이 전혀 필요하지 않습니다.
예는 다음과 같습니다.
$ unset DISPLAY
$ wine ping
000b:fixme:winediag:start_process Wine Staging 3.21 is a testing version containing experimental patches.
000b:fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
000b:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
000b:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0027:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0027:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0027:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
0027:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
002b:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
002b:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
0027:err:ole:apartment_createwindowifneeded CreateWindow failed with error -536870654
002d:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
002d:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
Could not load wine-gecko. HTML rendering will be disabled.
0027:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
0027:err:ole:apartment_createwindowifneeded CreateWindow failed with error -536870654
0027:err:ole:apartment_createwindowifneeded CreateWindow failed with error 0
0027:err:ole:apartment_createwindowifneeded CreateWindow failed with error -536870654
wine: configuration in '/home/test/.wine' has been updated.
Usage: ping [-n count] [-w timeout] [-l buffer_length] target_name
Options:
-n Number of echo requests to send.
-w Timeout in milliseconds to wait for each reply.
-l Length of send buffer.
일반적으로 모노와 와인게코를 다운로드하라는 팝업이 표시됩니다. 부품이 고장났지만(필요한 경우 미리 제공할 수 있음) 보시다시피 어쨌든 업그레이드되었습니다.
wine: configuration in '/home/test/.wine' has been updated.
(그리고 ping 명령은 구문에 대해 불평했습니다. 실제로 실행되었습니다.)
물론 이 동작이 변경되지 않고 유지된다는 보장은 없습니다. 따라서 테스트와 백업을 수행해야 합니다.
편집: 요청에 따라 보다 중립적인 명령 및 출력을 위해:
unset DISPLAY
export WINEDEBUG=-all
wine net help >/dev/null
두 개의 행만 생성합니다(또는 마지막 행만 생성할 수도 있음).표준 에러종료 코드 0을 제공합니다.
Could not load wine-gecko. HTML rendering will be disabled.
wine: configuration in '/home/test/.wine' has been updated.
답변2
완전 자동이며 업데이트 프로세스 중에 질문이 없습니다.
for I in */wine*
do
WINEDLLOVERRIDES="winemenubuilder.exe=d;mscoree=d;" WINEPREFIX="$PWD/$I" wineboot --update
done
설명하다:
for I in */wine*
- 모든 와인 접두어를 열거합니다.WINEDLLOVERRIDES="winemenubuilder.exe=d;mscoree=d;"
- 바탕화면 바로가기는 업데이트되지 않으며 모노는 업데이트를 요청받지 않습니다.wineboot --update
- 접두사 업데이트