use native Gtk2 crash dialogs on Linux

closes #3872
closes #3849
This commit is contained in:
Matthias Mailänder
2014-05-04 14:37:27 +02:00
parent 12767b7f21
commit bae47ff3c9
6 changed files with 20 additions and 2 deletions

View File

@@ -328,6 +328,8 @@ install-core: default
@$(INSTALL_PROGRAM) thirdparty/Newtonsoft.Json.dll "$(DATA_INSTALL_DIR)"
@$(INSTALL_PROGRAM) thirdparty/RestSharp.dll "$(DATA_INSTALL_DIR)"
@$(INSTALL_PROGRAM) -m +rx "error-dialog.sh" "$(DATA_INSTALL_DIR)"
@echo "#!/bin/sh" > openra
@echo 'BINDIR=$$(dirname $$(readlink -f $$0))' >> openra
@echo 'ROOTDIR="$${BINDIR%'"$(bindir)"'}"' >> openra

View File

@@ -129,6 +129,9 @@ namespace OpenRA
).F(title, message, icon, logsButton, logsPath, faqButton, faqPath, quitButton);
}
if (CurrentPlatform == PlatformType.Linux && File.Exists("/usr/bin/zenity") && File.Exists("/usr/bin/xdg-open"))
process = "error-dialog.sh";
var psi = new ProcessStartInfo(process, args);
psi.UseShellExecute = false;
psi.CreateNoWindow = true;

11
error-dialog.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/bin/sh
zenity --error --title "OpenRA" --text "OpenRA has encountered a fatal error."
zenity --question --title "OpenRA" --text="Would you like have a look at the crash log files?" || exit
xdg-open ~/.openra/Logs
zenity --question --title "OpenRA" --text="Would you like to read the FAQ?" || exit
xdg-open https://github.com/OpenRA/OpenRA/wiki/FAQ

View File

@@ -3,7 +3,7 @@ Version: {VERSION}
Architecture: all
Maintainer: Chris Forbes <chrisf@ijw.co.nz>
Installed-Size: {SIZE}
Depends: libopenal1, mono-runtime (>= 2.10), libmono-system-core4.0-cil, libmono-system-drawing4.0-cil, libmono-system-windows-forms4.0-cil, libfreetype6, libc6, libasound2, libgl1-mesa-glx, libgl1-mesa-dri
Depends: libopenal1, mono-runtime (>= 2.10), libmono-system-core4.0-cil, libmono-system-drawing4.0-cil, libmono-system-windows-forms4.0-cil, libfreetype6, libc6, libasound2, libgl1-mesa-glx, libgl1-mesa-dri, xdg-utils, zenity
Section: games
Priority: extra
Homepage: http://www.open-ra.org/

View File

@@ -7,7 +7,7 @@ arch=('any')
url="http://open-ra.org"
license=('GPL3')
groups=()
depends=('mono' 'openal' 'mesa' 'freetype2' 'glibc' 'alsa-lib')
depends=('mono' 'openal' 'mesa' 'freetype2' 'glibc' 'alsa-lib' 'xdg-utils' 'zenity')
makedepends=('git' 'unzip' 'wget')
optdepends=('gksu: Elevation for installing game packages on Gnome platforms'
'kdesudo: Elevation for installing game packages on KDE platforms')

View File

@@ -22,6 +22,8 @@ Requires: libdl.so.2
Requires: libm.so.6
Requires: libpthread.so.0
Requires: librt.so.1
Requires: xdg-utils
Requires: zenity
Prefix: /usr
Source: %{name}-%{version}.tar.gz