Squeak on Ubuntu 18.04 desktop

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Squeak on Ubuntu 18.04 desktop

Chris Muller-3
Has anyone figured out how to get Squeak's behavior to behave in 18.04 like it did in 16.04 and before?

In Ubuntu, Alt+~ (tilde) switches between windows of the same application.  But, in 18.04, it no longer works.  It treats every running instance of Squeak as a separate "app".

It also won't re-top an existing window when using with a .desktop file.  Nor will it let me anchor the .desktop file to the bar.

Sigh, so Linux..  It makes working with multiple images at once nearly impossible..

Has anyone else encountered this?

Thanks,
  Chris


Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

timrowledge


> On 2020-07-02, at 8:42 PM, Chris Muller <[hidden email]> wrote:
>
> Has anyone figured out how to get Squeak's behavior to behave in 18.04 like it did in 16.04 and before?

This is with the stock window manager for ubuntu 18? I got away from that horror story as quickly as I could work out. Not that xfce4 is looking much less annoying TBH. What is it with the unix world wanting to make life as miserable as possible?

It may just be from long experience but the least awful unix/gui pair I know is Raspbian - or more correctly since they recently changed the name - Raspberry Pi OS. It's Debian based, the UI is tolerably consistent and best of all the system is being cared for and developed by some people that seem to have a decent clue. It wouldn't be worth mentioning this if they didn't provide an X86 version but they do so it is.


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
The less time planning, the more time programming.



Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

K K Subbu
In reply to this post by Chris Muller-3
On 03/07/20 9:12 am, Chris Muller wrote:
> Has anyone figured out how to get Squeak's behavior to behave in 18.04
> like it did in 16.04 and before?

They use two different GUI shells. 16.04 uses Unity and 18.04 uses Gnome
desktop manager v3 (GDM3). You may install Unity to restore old behavior.

   # apt-get install ubuntu-unity-desktop

and choose lightdm as the desktop manager when prompted.

If you wish to continue with GDM, the keyboard shortcuts are different.
Use Win (aka Super) key with tilde to switch between windows of the same
app. More keyboard shortcuts are at:

 
https://help.gnome.org/users/gnome-help/stable/shell-keyboard-shortcuts.html.en

Also, you may find the 20.04 GDM to be much better than that in 18.04.

HTH .. Subbu

Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

Chris Muller-3
But the problem is not actually Gnome's window manager -- it works beautifully with every other app except Squeak.

At first I thought it was a chink in Fabio's fantastic squeak.sh script, but the same problem occurs even when I launch bin/squeak directly.

I sense it's something to do with how it's being executed by Linux and/or Gnome...  The way it's supposed to work is:   when the full command-line (I think) is exactly the same, it knows to re-top the window for the existing instance invoked by that command, UNLESS the [Shift] key is pressed, in which case, it spawns a new process instance of the command again (and producing another window running instance).

It works with everything except Squeak...

 - Chris


On Fri, Jul 3, 2020 at 4:06 AM K K Subbu <[hidden email]> wrote:
On 03/07/20 9:12 am, Chris Muller wrote:
> Has anyone figured out how to get Squeak's behavior to behave in 18.04
> like it did in 16.04 and before?

They use two different GUI shells. 16.04 uses Unity and 18.04 uses Gnome
desktop manager v3 (GDM3). You may install Unity to restore old behavior.

   # apt-get install ubuntu-unity-desktop

and choose lightdm as the desktop manager when prompted.

If you wish to continue with GDM, the keyboard shortcuts are different.
Use Win (aka Super) key with tilde to switch between windows of the same
app. More keyboard shortcuts are at:


https://help.gnome.org/users/gnome-help/stable/shell-keyboard-shortcuts.html.en

Also, you may find the 20.04 GDM to be much better than that in 18.04.

HTH .. Subbu



Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

codefrau
My guess is that Squeak is missing some property on its window that the X window manager uses to identify apps. The VM adds several properties to the window, but the standards keep evolving. See the latest wm-spec https://specifications.freedesktop.org
It's also possible that the desktop entry needs additional properties. That entry is not provided by the vm itself (I think) but added by the debian/ubuntu maintainers. You may have to edit yours.
That said, I myself have used linux only on servers recently (*), so I am somewhat out of the loop.

Vanessa

(*) as in, the last decade

On Fri, Jul 3, 2020 at 2:05 PM Chris Muller <[hidden email]> wrote:
But the problem is not actually Gnome's window manager -- it works beautifully with every other app except Squeak.

At first I thought it was a chink in Fabio's fantastic squeak.sh script, but the same problem occurs even when I launch bin/squeak directly.

I sense it's something to do with how it's being executed by Linux and/or Gnome...  The way it's supposed to work is:   when the full command-line (I think) is exactly the same, it knows to re-top the window for the existing instance invoked by that command, UNLESS the [Shift] key is pressed, in which case, it spawns a new process instance of the command again (and producing another window running instance).

It works with everything except Squeak...

 - Chris


On Fri, Jul 3, 2020 at 4:06 AM K K Subbu <[hidden email]> wrote:
On 03/07/20 9:12 am, Chris Muller wrote:
> Has anyone figured out how to get Squeak's behavior to behave in 18.04
> like it did in 16.04 and before?

They use two different GUI shells. 16.04 uses Unity and 18.04 uses Gnome
desktop manager v3 (GDM3). You may install Unity to restore old behavior.

   # apt-get install ubuntu-unity-desktop

and choose lightdm as the desktop manager when prompted.

If you wish to continue with GDM, the keyboard shortcuts are different.
Use Win (aka Super) key with tilde to switch between windows of the same
app. More keyboard shortcuts are at:


https://help.gnome.org/users/gnome-help/stable/shell-keyboard-shortcuts.html.en

Also, you may find the 20.04 GDM to be much better than that in 18.04.

HTH .. Subbu




Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

Chris Muller-3
In reply to this post by Chris Muller-3
OMG, thank you so much Subbu, that did it!   :-D

The xprop command did already return that exact output, but it wasn't until adding that line you said to my .desktop file that it worked.

99%, anyway.  I'd hoped I'd be able to have a .desktop file for a specific image (so it can have its own icon, instead of the Squeak icon).

    # standard Squeak icon for launching any image
    Name=Squeak
    Exec=/usr/local/bin/spur %f
    Icon=/home/cmm/my/icons/Squeak-logo-white-background-68x51.png
    StartupWMClass=squeak
    ...

the other, for MyApp,

    # for launching MyApp's image.
    Name=MyApp
    Exec=/path/for/apps/vm/squeak.sh /path/for/apps/image/app.image
    Icon=/home/cmm/my/icons/My-App-logo.png
    StartupWMClass=squeak
    ...

I put both of the above into separate .desktop files at ~/.local/share/applications.  After an afternoon of tinkering, what I found was a little strange -- for the icon, Ubuntu 18.04 seems to use whichever desktop file was launched first.  However, even though it gets the icon wrong, it at least uses the right Exec= vm specification.   I tried changing the StartupWMClass on one of them, but it didn't work.  But, I can at least work again..  :)

Thanks,
  Chris


On Sat, Jul 4, 2020 at 2:37 AM K K Subbu <[hidden email]> wrote:
On 04/07/20 2:34 am, Chris Muller wrote:
> But the problem is not actually Gnome's window manager -- it works
> beautifully with _every other app_ *except* Squeak.

Perhaps those apps come with properly configured .desktop file. Squeak
does not ship with one.

Could you please report Squeak app window has the right class?

$ xprop WM_CLASS
WM_CLASS(STRING) = "squeak", "Squeak"

If this does not appear, then you will have to add one to your .desktop
launcher file:

StartupWMClass=squeak

HTH .. Subbu


Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

K K Subbu
On 05/07/20 5:19 am, Chris Muller wrote:
> I put both of the above into separate .desktop files at
> ~/.local/share/applications.  After an afternoon of tinkering, what I
> found was a little strange -- for the icon, Ubuntu 18.04 seems to use
> whichever desktop file was launched first.  However, even though it gets
> the icon wrong, it at least uses the right Exec= vm specification.   I
> tried changing the StartupWMClass on one of them, but it didn't work.
> But, I can at least work again..  :)
Chris,

XDG uses lazy binding for resource paths using many env variables, so it
is best to use xdg-utils to get/set them and avoid hard-coded paths.  An
easily overlooked aspect is that env variables for GUI launched programs
come via .xsessionrc and not .bashrc or its relatives. So if your app
works from command line but not from GUI launch, you know where to look
;-). Getting everything right in 18.04 is a chore!

If you are developing your own launcher for your app, it is easier to
use the gnome-desktop-icon-edit utility to create the .desktop launcher
file.

For icons, it is better to create a theme with icons of different
resolutions (start with one) and install them using xdg-icon-resource
command (part of xdg-utils package).

HTH .. Subbu

Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

Squeak - Dev mailing list
In reply to this post by timrowledge
Sorry for the late reply, but in Ubuntu 16.04, the default Window mgr is Unity and in 18.04 they switched to a more standard Gnome based WM. Yeah, the upgrade caused many problems, not the least of which was the WM. 

/*—————————————————-*/
Sent from my iPhone
See https://objectnets.net and https://objectnets.org
https://datascilv.com and https://datascilv.org

On Jul 2, 2020, at 22:42, tim Rowledge <[hidden email]> wrote:



On 2020-07-02, at 8:42 PM, Chris Muller <[hidden email]> wrote:

Has anyone figured out how to get Squeak's behavior to behave in 18.04 like it did in 16.04 and before?

This is with the stock window manager for ubuntu 18? I got away from that horror story as quickly as I could work out. Not that xfce4 is looking much less annoying TBH. What is it with the unix world wanting to make life as miserable as possible?

It may just be from long experience but the least awful unix/gui pair I know is Raspbian - or more correctly since they recently changed the name - Raspberry Pi OS. It's Debian based, the UI is tolerably consistent and best of all the system is being cared for and developed by some people that seem to have a decent clue. It wouldn't be worth mentioning this if they didn't provide an X86 version but they do so it is.


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
The less time planning, the more time programming.





Reply | Threaded
Open this post in threaded view
|

Re: Squeak on Ubuntu 18.04 desktop

Chris Muller-3
You'll like to install the "Unite" extension that fixes the top bar
problem when running Squeak maximized.  Let's you reclaim that real
estate lost in 18.04...

On Fri, Sep 11, 2020 at 4:06 PM John Pfersich via Squeak-dev
<[hidden email]> wrote:

>
> Sorry for the late reply, but in Ubuntu 16.04, the default Window mgr is Unity and in 18.04 they switched to a more standard Gnome based WM. Yeah, the upgrade caused many problems, not the least of which was the WM.
>
> /*—————————————————-*/
> Sent from my iPhone
> https://boincstats.com/signature/-1/user/51616339056/sig.png
> See https://objectnets.net and https://objectnets.org
> https://datascilv.com and https://datascilv.org
>
> On Jul 2, 2020, at 22:42, tim Rowledge <[hidden email]> wrote:
>
> 
>
> On 2020-07-02, at 8:42 PM, Chris Muller <[hidden email]> wrote:
>
>
> Has anyone figured out how to get Squeak's behavior to behave in 18.04 like it did in 16.04 and before?
>
>
> This is with the stock window manager for ubuntu 18? I got away from that horror story as quickly as I could work out. Not that xfce4 is looking much less annoying TBH. What is it with the unix world wanting to make life as miserable as possible?
>
> It may just be from long experience but the least awful unix/gui pair I know is Raspbian - or more correctly since they recently changed the name - Raspberry Pi OS. It's Debian based, the UI is tolerably consistent and best of all the system is being cared for and developed by some people that seem to have a decent clue. It wouldn't be worth mentioning this if they didn't provide an X86 version but they do so it is.
>
>
> tim
> --
> tim Rowledge; [hidden email]; http://www.rowledge.org/tim
> The less time planning, the more time programming.
>
>
>
>