Skip to content

Commit

Permalink
Wineskin-2.9.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Gcenx committed Dec 29, 2023
1 parent 907eaca commit 68731a3
Show file tree
Hide file tree
Showing 14 changed files with 118 additions and 85 deletions.
2 changes: 1 addition & 1 deletion WineskinApp/7z
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#
# Wrapper script for winetricks compatability
#
# Copyright (C) 2021 Dean M Greer
# Copyright (C) 2018-2023 Dean M Greer
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
Expand Down
7 changes: 4 additions & 3 deletions WineskinApp/Base.lproj/MainMenu.xib
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="21507" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="21701" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
<dependencies>
<deployment version="1080" identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="21507"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="21701"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
Expand Down Expand Up @@ -1232,7 +1232,7 @@ Gw
<button fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="1475">
<rect key="frame" x="16" y="8" width="194" height="36"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<buttonCell key="cell" type="bevel" title="Uninstaller (uninstaller)" bezelStyle="regularSquare" alignment="center" state="on" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="1476">
<buttonCell key="cell" type="bevel" title="Control Panel (control)" bezelStyle="regularSquare" alignment="center" state="on" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="1476">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
Expand Down Expand Up @@ -2781,6 +2781,7 @@ For more information see
<outlet property="installerSettingsAutomaticRadioButton" destination="mVA-v5-mQG" id="FZ8-BO-Acq"/>
<outlet property="installerSettingsOverrideRadioButton" destination="6mg-EK-7fX" id="Ely-iM-kXr"/>
<outlet property="installerWindow" destination="1928" id="1979"/>
<outlet property="logsButtonPressed" destination="778" id="7gd-gY-g8r"/>
<outlet property="macDriverX11TabView" destination="qU5-eT-wgq" id="anz-xb-1cP"/>
<outlet property="mapUserFoldersCheckBoxButton" destination="1541" id="1544"/>
<outlet property="menubarNameTextField" destination="722" id="786"/>
Expand Down
6 changes: 3 additions & 3 deletions WineskinApp/CustomEXE.app/Contents/MacOS/CustomEXE
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@
####################################################
# Set all variables
CMACOSFOLD="$(dirname "$0")"
MACOSFOLD="${CMACOSFOLD}/../../../Contents/MacOS"
cd ${MACOSFOLD}
MACOSFOLD="$CMACOSFOLD/../../../Contents/MacOS"
cd "$MACOSFOLD"
MACOSFOLD="$(echo "$PWD")"
CEXENAME="$(basename "${CMACOSFOLD%/Contents/MacOS}")"

# Launch wrapper
${MACOSFOLD}/WineskinLauncher CustomEXE "${CEXENAME}"
"$MACOSFOLD/WineskinLauncher" "CustomEXE" "$CEXENAME"
2 changes: 2 additions & 0 deletions WineskinApp/NSComputerInformation.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#ifndef NSComputerInformation_Class
#define NSComputerInformation_Class

#define IS_SYSTEM_MAC_OS_10_6_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.6"] // Snow Leopard
#define IS_SYSTEM_MAC_OS_10_7_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.7"] // Lion
#define IS_SYSTEM_MAC_OS_10_8_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.8"] // Mountain Lion
#define IS_SYSTEM_MAC_OS_10_9_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.9"] // Mavericks
Expand All @@ -18,6 +19,7 @@
#define IS_SYSTEM_MAC_OS_10_13_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.13"] // High Sierra
#define IS_SYSTEM_MAC_OS_10_14_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.14"] // Mojave
#define IS_SYSTEM_MAC_OS_10_15_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.15"] // Catalina
#define IS_SYSTEM_MAC_OS_10_15_4_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.15.4"] // Catalina ldtset
#define IS_SYSTEM_MAC_OS_11_0_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"11.00"] // Big Sur
#define IS_SYSTEM_MAC_OS_12_0_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"12.0"] // Monterey
#define IS_SYSTEM_MAC_OS_13_0_OR_SUPERIOR [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"13.0"] // Ventura
Expand Down
4 changes: 2 additions & 2 deletions WineskinApp/NSComputerInformation.m
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,8 @@ +(BOOL)isUsingFnKeysFunctions

+(BOOL)isComputerMacDriverCompatible
{
// If the version is 10.7.5 or superior, it will work
return [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.7.5"];
// If the version is 10.6.8 or superior, it will work
return [NSComputerInformation isSystemMacOsEqualOrSuperiorTo:@"10.6.8"];
}

@end
Expand Down
5 changes: 5 additions & 0 deletions WineskinApp/NSWineskinPortDataWriter.m
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,11 @@ +(void)setMainExePath:(NSString*)exePath atPort:(NSPortManager*)port
{
[port setPlistObject:@TRUE forKey:WINESKIN_WRAPPER_PLIST_KEY_RUN_PATH_IS_NOT_EXE];
}
//TODO: Steam.exe needs to use Start.exe
if ([winPath contains:@"Steam.exe"])
{
[port setPlistObject:@TRUE forKey:WINESKIN_WRAPPER_PLIST_KEY_RUN_PATH_IS_NOT_EXE];
}
}
else
{
Expand Down
17 changes: 10 additions & 7 deletions WineskinApp/Wineskin.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
A1C6AA8727012187007485C5 /* Codecs in Resources */ = {isa = PBXBuildFile; fileRef = A1C6AA8627012187007485C5 /* Codecs */; };
A1C6AA9627015225007485C5 /* 7z in Resources */ = {isa = PBXBuildFile; fileRef = A1C6AA9427015225007485C5 /* 7z */; };
A1DD875F2495906300E4D0DE /* 7za in Resources */ = {isa = PBXBuildFile; fileRef = A1DD875E2495906300E4D0DE /* 7za */; };
A1E190F32974F6AD002184C0 /* curl in Resources */ = {isa = PBXBuildFile; fileRef = A1E190F22974F6AD002184C0 /* curl */; };
A1E4C63426FEA74000A7B2A3 /* 7z.so in Resources */ = {isa = PBXBuildFile; fileRef = A1DD87662496EDBA00E4D0DE /* 7z.so */; };
A1E4C63727011E2800A7B2A3 /* 7zr in Resources */ = {isa = PBXBuildFile; fileRef = A1E4C63627011E2800A7B2A3 /* 7zr */; };
A1E4C63927011E3C00A7B2A3 /* 7zCon.sfx in Resources */ = {isa = PBXBuildFile; fileRef = A1E4C63827011E3C00A7B2A3 /* 7zCon.sfx */; };
Expand Down Expand Up @@ -162,6 +163,7 @@
A1C6AA9427015225007485C5 /* 7z */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; path = 7z; sourceTree = "<group>"; };
A1DD875E2495906300E4D0DE /* 7za */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; path = 7za; sourceTree = "<group>"; };
A1DD87662496EDBA00E4D0DE /* 7z.so */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.bundle"; path = 7z.so; sourceTree = "<group>"; };
A1E190F22974F6AD002184C0 /* curl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = curl; sourceTree = "<group>"; };
A1E4C63627011E2800A7B2A3 /* 7zr */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; path = 7zr; sourceTree = "<group>"; };
A1E4C63827011E3C00A7B2A3 /* 7zCon.sfx */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; path = 7zCon.sfx; sourceTree = "<group>"; };
A82645D4153ADC3D00FA0306 /* WineskinBanner2.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = WineskinBanner2.jpg; sourceTree = "<group>"; };
Expand Down Expand Up @@ -269,6 +271,7 @@
A14ED61326E1021B0022EC36 /* regsvr32 */,
A868FC2C12820230001EBA25 /* remakedefaults.reg */,
A12E8EAA2491CBE600401C0E /* unrar */,
A1E190F22974F6AD002184C0 /* curl */,
A10B62A2248FC277003FE411 /* wine */,
A11031EA249474BC00E16174 /* wine64 */,
A14ED60926E1020B0022EC36 /* wineapploader.in */,
Expand Down Expand Up @@ -463,6 +466,7 @@
A1C6AA9627015225007485C5 /* 7z in Resources */,
A1DD875F2495906300E4D0DE /* 7za in Resources */,
A1E4C63727011E2800A7B2A3 /* 7zr in Resources */,
A1E190F32974F6AD002184C0 /* curl in Resources */,
A12E8EAE2492662B00401C0E /* wine in Resources */,
A11031EC249474BD00E16174 /* wine64 in Resources */,
A14ED62126E1021B0022EC36 /* notepad in Resources */,
Expand Down Expand Up @@ -567,7 +571,7 @@
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
CREATE_INFOPLIST_SECTION_IN_BINARY = NO;
CURRENT_PROJECT_VERSION = 2.9.1.6;
CURRENT_PROJECT_VERSION = 2.9.2.0;
DEVELOPMENT_TEAM = "";
ENABLE_HARDENED_RUNTIME = NO;
GCC_DYNAMIC_NO_PIC = NO;
Expand All @@ -584,9 +588,8 @@
GCC_WARN_UNUSED_PARAMETER = NO;
INFOPLIST_FILE = "Wineskin-Info.plist";
INSTALL_PATH = "$(HOME)/Applications";
MACOSX_DEPLOYMENT_TARGET = 10.9;
"MACOSX_DEPLOYMENT_TARGET[sdk=macosx10.6][arch=i386]" = 10.9;
MARKETING_VERSION = 2.9.1.6;
MACOSX_DEPLOYMENT_TARGET = 10.13;
MARKETING_VERSION = 2.9.2.0;
ONLY_ACTIVE_ARCH = NO;
PRODUCT_BUNDLE_IDENTIFIER = com.unofficial.wineskin;
PRODUCT_NAME = Wineskin;
Expand All @@ -607,7 +610,7 @@
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
CREATE_INFOPLIST_SECTION_IN_BINARY = NO;
CURRENT_PROJECT_VERSION = 2.9.1.6;
CURRENT_PROJECT_VERSION = 2.9.2.0;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
ENABLE_HARDENED_RUNTIME = NO;
Expand All @@ -623,8 +626,8 @@
GCC_WARN_UNUSED_PARAMETER = NO;
INFOPLIST_FILE = "Wineskin-Info.plist";
INSTALL_PATH = "$(HOME)/Applications";
MACOSX_DEPLOYMENT_TARGET = 10.9;
MARKETING_VERSION = 2.9.1.6;
MACOSX_DEPLOYMENT_TARGET = 10.13;
MARKETING_VERSION = 2.9.2.0;
PRODUCT_BUNDLE_IDENTIFIER = com.unofficial.wineskin;
PRODUCT_NAME = Wineskin;
PROVISIONING_PROFILE_SPECIFIER = "";
Expand Down
17 changes: 10 additions & 7 deletions WineskinApp/WineskinAppDelegate.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@

//advanced menu
IBOutlet NSWindow *advancedWindow;
IBOutlet NSButton *winetricksButton;
IBOutlet NSButton *testRunButton;
IBOutlet NSButton *advancedInstallSoftwareButton;
IBOutlet NSProgressIndicator *toolRunningPI;
Expand All @@ -57,15 +58,17 @@
IBOutlet NSButton *winecfgButton;
IBOutlet NSButton *regeditButton;
IBOutlet NSButton *taskmgrButton;
IBOutlet NSButton *uninstallerButton;
//cmd
IBOutlet NSButton *uninstallerButton;
IBOutlet NSButton *customExeButton;
IBOutlet NSButton *logsButtonPressed;
IBOutlet NSButton *commandLineWineTestButton;
//kill wineskin processes
IBOutlet NSButton *refreshWrapperButton;
IBOutlet NSButton *rebuildWrapperButton;
IBOutlet NSButton *refreshWrapperButton;
IBOutlet NSButton *winetricksButton;
IBOutlet NSButton *customExeButton;
IBOutlet NSButton *changeEngineButton;
IBOutlet NSButton *updateWrapperButton;
IBOutlet NSButton *changeEngineButton;
IBOutlet NSTextField *currentVersionTextField;
IBOutlet NSButton *updateWrapperButton;
IBOutlet NSButton *commandLineWineTestButton;

//advanced menu - Options Tab
IBOutlet NSButton *alwaysMakeLogFilesCheckBoxButton;
Expand Down
76 changes: 50 additions & 26 deletions WineskinApp/WineskinAppDelegate.m
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@ -(NSString*)cDrivePathForWrapper
-(NSString*)wswineBundlePath
{
return [NSString stringWithFormat:@"%@/Contents/SharedSupport/wine",self.wrapperPath];
//return [NSString stringWithFormat:@"%@/Contents/SharedSupport/wswine.bundle",self.wrapperPath];
}
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
Expand All @@ -61,11 +60,6 @@ - (void)applicationDidFinishLaunching:(NSNotification *)aNotification
[NSApp terminate:nil];
}

//if (IS_SYSTEM_MAC_OS_11_0_OR_SUPERIOR)
//{
// [NSAlert showAlertOfType:NSAlertTypeWarning withMessage:@"No new executables found!\n\nMaybe the installer failed...?\n\nIf you tried to install somewhere other than C: drive (drive_c in the wrapper) then you will get this message too. All software must be installed in C: drive."];
//}

[self setWinetricksCachedList:[NSArray array]];
[self setWinetricksInstalledList:[NSArray array]];
[self setWinetricksSelectedList:[NSMutableDictionary dictionary]];
Expand Down Expand Up @@ -103,6 +97,14 @@ - (void)setButtonsState:(BOOL)state
NSString* engineString = [NSPortDataLoader engineOfPortAtPath:self.wrapperPath];
NSWineskinEngine* engine = [NSWineskinEngine wineskinEngineWithString:engineString];


[confirmQuitCheckBoxButton setEnabled:state];
[advancedInstallSoftwareButton setEnabled:state];
[winetricksButton setEnabled:state];
[testRunButton setEnabled:state];


// ****Configure****
[windowsExeTextField setEnabled:state];
[exeBrowseButton setEnabled:state];
[customCommandsTextField setEnabled:state];
Expand All @@ -115,20 +117,47 @@ - (void)setButtonsState:(BOOL)state
[extMinusButton setEnabled:state];
[iconImageView setEditable:state];
[iconBrowseButton setEnabled:state];
[advancedInstallSoftwareButton setEnabled:state];
[testRunButton setEnabled:state];
[winetricksButton setEnabled:state];


// ****Tools****
//winecfg
//regedit
//taskmgr
//cmd
//controll
//BLANK
[customExeButton setEnabled:state];
//last run log
[logsButtonPressed setEnabled:state];
[commandLineWineTestButton setEnabled:state];
//kill wineskin processes
[refreshWrapperButton setEnabled:state];
[rebuildWrapperButton setEnabled:state];
[updateWrapperButton setEnabled:state];
[changeEngineButton setEnabled:state];
//BLANK


// ****Options****
[alwaysMakeLogFilesCheckBoxButton setEnabled:state];
[setMaxFilesCheckBoxButton setEnabled:state];
[mapUserFoldersCheckBoxButton setEnabled:state];
[modifyMappingsButton setEnabled:state];
[confirmQuitCheckBoxButton setEnabled:state];
[WinetricksNoLogsButton setEnabled:state];
[fntoggleCheckBoxButton setEnabled:state];

if (engine.isCompatibleWithCommandCtrl)
{
[commandCheckBoxButton setEnabled:state];
} else {
[commandCheckBoxButton setEnabled:NO];
}

if (engine.isCompatibleWithOptionAlt)
{
[optionCheckBoxButton setEnabled:state];
} else {
[optionCheckBoxButton setEnabled:NO];
}

// Option does not work above 10.8 so disable it
if (IS_SYSTEM_MAC_OS_10_9_OR_SUPERIOR)
Expand All @@ -141,20 +170,13 @@ - (void)setButtonsState:(BOOL)state
[disableCPUsCheckBoxButton setEnabled:state];
}


// ****Advanced****
[WinetricksNoLogsButton setEnabled:state];
[winedbgDisabledButton setEnabled:state];
[geckoCheckBoxButton setEnabled:state];
[monoCheckBoxButton setEnabled:state];
[fntoggleCheckBoxButton setEnabled:state];

if (engine.isCompatibleWithCommandCtrl)
{
[commandCheckBoxButton setEnabled:state];
}

if (engine.isCompatibleWithOptionAlt)
{
[optionCheckBoxButton setEnabled:state];
}

// TODO: The code below seems to be causing a crash sometimes. Remove?
if (state) {
Expand Down Expand Up @@ -477,12 +499,15 @@ - (IBAction)testRunButtonPressed:(id)sender
}
- (void)runATestRun
{
[self runWineskinLauncherWithDisabledButtonsWithFlag:@"debug"];
//TODO: disableButtons causes testrun to crash for some reason
//[self disableButtons];
[self systemCommand:[NSPathUtilities wineskinLauncherBinForPortAtPath:self.wrapperPath] withArgs:@[@"debug"]];
//[self enableButtons];

if ([NSAlert showBooleanAlertOfType:NSAlertTypeSuccess withMessage:@"Do you wish to view the Test Run Log?" withDefault:YES])
{
NSString* logsFolderPath = [NSString stringWithFormat:@"%@/Contents/SharedSupport/Logs",self.wrapperPath];
[self systemCommand:@"/usr/bin/open" withArgs:@[@"-e",[NSString stringWithFormat:@"%@/LastRunWine.log",logsFolderPath]]];
[self systemCommand:@"/usr/bin/open" withArgs:@[@"-a", @"Console",[NSString stringWithFormat:@"%@/LastRunWine.log",logsFolderPath]]];
}
}

Expand Down Expand Up @@ -813,7 +838,7 @@ - (IBAction)uninstallerButtonPressed:(id)sender
}
- (void)runUninstaller
{
[self runWineskinLauncherWithDisabledButtonsWithFlag:@"WSS-uninstaller"];
[self runWineskinLauncherWithDisabledButtonsWithFlag:@"WSS-control"];
}
- (IBAction)regeditButtonPressed:(id)sender
{
Expand Down Expand Up @@ -1884,7 +1909,7 @@ - (IBAction)updateWrapperButtonPressed:(id)sender
- (IBAction)logsButtonPressed:(id)sender
{
NSString* logsFolder = [NSString stringWithFormat:@"%@/Contents/SharedSupport/Logs",self.wrapperPath];
[self systemCommand:@"/usr/bin/open" withArgs:@[@"-e",[NSString stringWithFormat:@"%@/LastRunWine.log",logsFolder]]];
[self systemCommand:@"/usr/bin/open" withArgs:@[@"-a", @"Console",[NSString stringWithFormat:@"%@/LastRunWine.log",logsFolder]]];
}
- (IBAction)commandLineShellButtonPressed:(id)sender
{
Expand Down Expand Up @@ -2205,7 +2230,6 @@ - (id)outlineView:(NSOutlineView *)outlineView objectValueForTableColumn:(NSTabl
|| tableColumn == winetricksTableColumnDownloaded)
&& [item valueForKey:WINETRICK_NAME] == nil)
return @"";

if (tableColumn == winetricksTableColumnRun)
{
NSNumber *thisEntry = [[self winetricksSelectedList] valueForKey:[item valueForKey:WINETRICK_NAME]];
Expand Down
20 changes: 7 additions & 13 deletions WineskinApp/wine32on64 → WineskinApp/curl
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#
# Wrapper script for winetricks compatability
#
# Copyright (C) 2021 Dean M Greer
# Copyright (C) 2019-2023 Dean M Greer
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
Expand All @@ -19,16 +19,10 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
#

# workaround SIP DYLD_stripping
# see https://support.apple.com/en-us/HT204899
if [[ -n ${WINETRICKS_FALLBACK_LIBRARY_PATH} ]]; then
export DYLD_FALLBACK_LIBRARY_PATH="${WINETRICKS_FALLBACK_LIBRARY_PATH}"
if [[ -f "/opt/local/bin/curl" ]]; then
exec "/opt/local/bin/curl" "${@}"
elif [[ -f "/usr/local/bin/curl" ]]; then
exec "/usr/local/bin/curl" "${@}"
else
exec "/usr/bin/curl" "${@}"
fi

export WINESKINPATH="$(dirname "$0")"/../../../Contents/SharedSupport/wine/bin

# Check for wine32on64 and use if found
if [[ -x "$(command -v "$WINESKINPATH"/wine32on64)" ]]; then exec "$WINESKINPATH/wine32on64" "$@"; fi

echo "Error: the wine32on64 loader was not found in $WINESKINPATH"
exit 1
Loading

0 comments on commit 68731a3

Please sign in to comment.