システムのワインパッケージが更新されると、ほとんどのワインパッケージ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
2つの行のみを生成します(または最後の行のみを生成することもできます)。標準エラー終了コード 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
- プレフィックスの更新