Custom launcher for SQuirreL starts new process on every click

Bug #878113 reported by Dean Jones on 2011-10-19
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
BAMF
Undecided
Unassigned
Unity
Expired
Undecided
Unassigned
bamf (Ubuntu)
Undecided
Unassigned
unity (Ubuntu)
Undecided
Unassigned

Bug Description

I've managed to create a custom launcher for Squirrel (the widely-used SQL client, not the mail client), but whenever I click on it, it launches a new process. When I have already started Squirrel, clicking on the launcher should show the running instance, not start a new one. Also, as the running program is not visible in the desktop wall, I cannot actually resume using the running program, or even stop it (apart from killing the process).

Also, I would like to modify the launcher myself, but it is not in ~/.local/share/applications which is where I expected it to be.

ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: unity 4.22.0-0ubuntu3
ProcVersionSignature: Ubuntu 3.0.0-12.20-generic-pae 3.0.4
Uname: Linux 3.0.0-12-generic-pae i686
NonfreeKernelModules: nvidia
.proc.driver.nvidia.gpus.0: Error: [Errno 21] Is a directory: '/proc/driver/nvidia/gpus/0'
.proc.driver.nvidia.registry: Binary: ""
.proc.driver.nvidia.version:
 NVRM version: NVIDIA UNIX x86 Kernel Module 280.13 Wed Jul 27 16:55:43 PDT 2011
 GCC version: gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3)
.tmp.unity.support.test.0:

ApportVersion: 1.23-0ubuntu3
Architecture: i386
CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,grid,mousepoll,regex,animation,gnomecompat,place,vpswitch,snap,move,imgpng,session,resize,wall,workarounds,expo,unitymtgrabhandles,fade,scale,unityshell]
CompositorRunning: compiz
Date: Wed Oct 19 12:34:37 2011
DistUpgraded: Log time: 2011-10-17 10:34:40.092303
DistroCodename: oneiric
DistroVariant: ubuntu
DkmsStatus: nvidia-current, 280.13, 3.0.0-12-generic-pae, i686: installed
EcryptfsInUse: Yes
GraphicsCard:
 nVidia Corporation G84 [Quadro FX 570] [10de:040e] (rev a1) (prog-if 00 [VGA controller])
   Subsystem: nVidia Corporation Device [10de:0474]
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release i386 (20101007)
JockeyStatus:
 xorg:nvidia_173 - NVIDIA accelerated graphics driver (Proprietary, Disabled, Not in use)
 xorg:nvidia_173_updates - NVIDIA accelerated graphics driver (post-release updates) (Proprietary, Disabled, Not in use)
 xorg:nvidia_current - NVIDIA accelerated graphics driver (Proprietary, Enabled, In use)
 xorg:nvidia_current_updates - NVIDIA accelerated graphics driver (post-release updates) (Proprietary, Disabled, Not in use)
MachineType: Dell Inc. OptiPlex GX620
ProcEnviron:
 LC_COLLATE=C
 PATH=(custom, user)
 LANG=en_GB.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.0.0-12-generic-pae root=UUID=f30b0ad9-b31f-4040-8895-24b4de430453 ro quiet splash vt.handoff=7
SourcePackage: unity
UpgradeStatus: Upgraded to oneiric on 2011-10-17 (1 days ago)
dmi.bios.date: 02/20/2006
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A06
dmi.board.name: 0HH807
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 6
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA06:bd02/20/2006:svnDellInc.:pnOptiPlexGX620:pvr:rvnDellInc.:rn0HH807:rvr:cvnDellInc.:ct6:cvr:
dmi.product.name: OptiPlex GX620
dmi.sys.vendor: Dell Inc.
version.compiz: compiz 1:0.9.6+bzr20110929-0ubuntu5
version.libdrm2: libdrm2 2.4.26-1ubuntu1
version.libgl1-mesa-dri: libgl1-mesa-dri 7.11-0ubuntu3
version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
version.libgl1-mesa-glx: libgl1-mesa-glx 7.11-0ubuntu3
version.nvidia-graphics-drivers: nvidia-graphics-drivers N/A
version.xserver-xorg: xserver-xorg 1:7.6+7ubuntu7
version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.6.0-1ubuntu13
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.14.99~git20110811.g93fc084-0ubuntu1
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.15.901-1ubuntu2
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:0.0.16+git20110411+8378443-1

Dean Jones (dean-m-jones) wrote :
Bilal Akhtar (bilalakhtar) wrote :

Seems like a BAMF mismatch.

BTW, most desktop files are stored in /usr/share/applications or /usr/local/share/applications and not ~/.local/share/applications.

Omer Akram (om26er) on 2012-01-27
Changed in bamf:
status: New → Confirmed
Changed in unity:
status: New → Confirmed
Omer Akram (om26er) on 2012-01-27
Changed in bamf (Ubuntu):
status: New → Confirmed
Changed in unity (Ubuntu):
status: New → Confirmed
dino99 (9d9) wrote :

Oneiric is EOL now; is it still an issue with the recent releases ?

tags: added: precise
removed: oneiric
Changed in unity (Ubuntu):
status: Confirmed → Incomplete
Changed in bamf (Ubuntu):
status: Confirmed → Incomplete
Changed in unity:
status: Confirmed → Incomplete
Changed in bamf:
status: Confirmed → Incomplete
Launchpad Janitor (janitor) wrote :

[Expired for bamf (Ubuntu) because there has been no activity for 60 days.]

Changed in bamf (Ubuntu):
status: Incomplete → Expired
Launchpad Janitor (janitor) wrote :

[Expired for Unity because there has been no activity for 60 days.]

Changed in unity:
status: Incomplete → Expired
Launchpad Janitor (janitor) wrote :

[Expired for BAMF because there has been no activity for 60 days.]

Changed in bamf:
status: Incomplete → Expired
Launchpad Janitor (janitor) wrote :

[Expired for unity (Ubuntu) because there has been no activity for 60 days.]

Changed in unity (Ubuntu):
status: Incomplete → Expired
müzso (bit2) wrote :

This is not a launcher or Unity bug. And it's still relevant for the latest Ubuntu version (13.04).
Take a look at the *.desktop file of jEdit (it's a text editor written in Java and ships in Ubuntu's universal repository).

First of all: create a copy of jedit.desktop and modify all the relevant entries. Most of them are relevant. :-)
Now the problematic entry is StartupWMClass. If you don't set up this correctly, Unity won't be able to "identify" the process/window that is launched by the executable specified by the "Exec" entry.
You can start up SQuirreL and use xprop to get the correct value. I'll help you: it's "net-sourceforge-squirrel_sql-client-Main"

So a proper squirrel.desktop file looks like this:

[Desktop Entry]
Name=SQuirreL
GenericName=SQuirreL SQL Client
Comment=Browse/edit SQL databases
Exec=/opt/SQuirreLSQLClient/squirrel-sql.sh %U
Icon=/opt/SQuirreLSQLClient/icons/acorn.png
Terminal=false
Type=Application
Categories=Development;
StartupNotify=true
MimeType=text/x-sql;
StartupWMClass=net-sourceforge-squirrel_sql-client-Main
Keywords=Programming;Java;SQL

(Of course assuming that SquirreL is install in /opt/SQuirreLSQLClient)

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers