Winetricks GUI Broken Again -- a Zenity Problem?

Using applications, configuring, problems
Post Reply
Message
Author
User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Winetricks GUI Broken Again -- a Zenity Problem?

#1 Post by mikeslr »

Hi All,
There was a time, and a version, of wine during which there was a GUI for winetricks which worked. Since wine 1.4, however, although the GUI can be started, after making a selection and checking the "ok" button, the GUI immediately crashes. Winetricks is a bash-script located in /usr/sbin. I've tested several by substituting various builds from several wine pets, including wine-1.3.13-Lucid52, which I know worked.
yes, starting winetricks from the terminal still works, but the GUI doesn't. While I can't be certain --I don't know enough-- searching the web reveals a problem with winetricks in other Linux distributions that may be related, http://code.google.com/p/winetricks/iss ... ail?id=393, and suggests that the root of the problem isn't winetricks, itself, but a change in the code in zenity which provides the GUI for winetricks. In each instance winetricks works, but not the GUI. If the problem in puppy is related to that discussed above, then the solution may be similar to that found here: https://git.gnome.org/browse/zenity/com ... 5b6310357f

Or not.

Either way, could someone familiar with zenity please look into this problem.

Thanks in advance,

mikesLr
Last edited by mikeslr on Mon 17 Mar 2014, 03:30, edited 1 time in total.

User avatar
8-bit
Posts: 3406
Joined: Wed 04 Apr 2007, 03:37
Location: Oregon

#2 Post by 8-bit »

Now you have me thinking!
Since Puppy by default does not include Zenity, is it included in an install of wine?

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Zenity in wine?

#3 Post by mikeslr »

I don't think Zenity is automatically included just by installing a wine pet or loading a wine sfs. Wine tricks is usually part of such install/loading. When it is, it can be initiated via the terminal. But then you have to understand the arguments to type into the terminal to use it. Most recent Puppies have been deployed with zenity built in as it is an alternative to gtk-dialog, yad and bash's own scripting language for creating dialog boxes.

mikesLr

User avatar
666philb
Posts: 3615
Joined: Sun 07 Feb 2010, 12:27
Location: wales ... by the sea

#4 Post by 666philb »

hi Mikeslr,

I don't think that zenity isn't in puppy, it is just a symlink to yad
Bionicpup64 built with bionic beaver packages http://murga-linux.com/puppy/viewtopic.php?t=114311
Xenialpup64, built with xenial xerus packages http://murga-linux.com/puppy/viewtopic.php?t=107331

User avatar
solo
Posts: 389
Joined: Thu 14 Nov 2013, 20:33

#5 Post by solo »

If I may chime in for a moment. I am working on two configurations, both Precise Puppy 5.7.1..
One of those is without Wine, and it only has a symlink called zenity in /usr/bin to yad. The other one has wine-1.3.6-i486-sfs4.sfs loaded, and this configuration has an additional zenity.sh in /root/.wine/drive_c/winetrickstmp/.
And it works.

User avatar
solo
Posts: 389
Joined: Thu 14 Nov 2013, 20:33

#6 Post by solo »

Okay, so, a little more information on this wine-1.3.6-i486-sfs4.sfs, so as to compare it with other versions.
In /usr/sbin/winetricks, this code is relatively at the beginning:

Code: Select all

# Internal variables; these locations are not too important
WINETRICKS_CACHE_WIN="`$XXXPATH -w $WINETRICKS_CACHE | tr '\012' ' ' | sed 's/ $//'`"
WINETRICKS_TMP="$DRIVE_C"/winetrickstmp
WINETRICKS_TMP_WIN='c:\winetrickstmp'
mkdir -p "$WINETRICKS_TMP"
Then, further down, we find this code:

Code: Select all

showmenu()
{
    case $MENU in
    zenity)
        echo "zenity --title 'Winetricks' --text 'Select packages to install' --list --checklist --column '' --column Package --column Description --height 440 --width 600 \\" > "$WINETRICKS_TMP"/zenity.sh
        usage | grep '^ [0-9a-z]' | sed 's/^ \([^ ]*\) *\(.*\)/FALSE "\1" '"'\2'/" | sed 's/$/ \\/' >> "$WINETRICKS_TMP"/zenity.sh
        todo="`sh "$WINETRICKS_TMP"/zenity.sh | tr '|' ' '`"
        ;;
    kdialog)
        packages=`usage | awk '/^ [0-9a-z]/ {print $1}'`
        todo="`kdialog_showmenu "winetricks" "Select a package to install" "Install?" "Package" $packages`"
        ;;
    xmessage) 
        packages=`usage | awk '/^ [0-9a-z]/ {print $1}'`
        todo="`xmessage_showmenu "winetricks" "Select a package to install" "Install?" "Package" $packages`"
        ;;
    esac

    if test "$todo"x = x
    then
       exit 0
    fi

Post Reply