Without sessioninstaller (org.freedesktop.PackageKit dbus service provider) user is unable to install applications to handle unknown filetypes

Bug #1938641 reported by Norbert
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Session Installer
Invalid
Undecided
Unassigned
librecad (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Steps to reproduce:
1. Have Ubuntu MATE 20.04 LTS (or newer) installed
2. Obtain some file which is unknown for your system (for example DXF)
3. Open Caja, navigate to this file, try to open it
4. Caja opens the dialog with text:

    Could not display "/home/user/file.dxf"

    There is no application installed for DXF vector image files.
    Do you want to search for an application to open this file?

  User click 'Yes'

Expected results:
* software installation dialog is opened, DXF file will be associated with LibreCAD and opened in it

Actual results:
* no dialog is opened after clicking on 'Yes' button

Notes:

1. `dbus-monitor` says the following after click on 'Yes':

method call time=1627826047.524366 sender=:1.27 -> destination=org.freedesktop.PackageKit serial=373 path=/org/freedesktop/PackageKit; interface=org.freedesktop.PackageKit.Modify; member=InstallMimeTypes
   uint32 14680581
   array [
      string "image/vnd.dxf"
   ]
   string "hide-confirm-search"
error time=1627826047.524401 sender=org.freedesktop.DBus -> destination=:1.27 error_name=org.freedesktop.DBus.Error.ServiceUnknown reply_serial=373
   string "The name org.freedesktop.PackageKit was not provided by any .service files"
method call time=1627826047.524930 sender=:1.27 -> destination=org.freedesktop.DBus serial=374 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',path='/org/freedesktop/DBus',arg0='org.freedesktop.PackageKit'"
method return time=1627826047.524946 sender=org.freedesktop.DBus -> destination=:1.27 serial=299 reply_serial=374
method call time=1627826047.525258 sender=:1.27 -> destination=org.freedesktop.DBus serial=375 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',sender='org.freedesktop.PackageKit',interface='org.freedesktop.DBus.Properties',member='PropertiesChanged',path='/org/freedesktop/PackageKit',arg0='org.freedesktop.PackageKit.Modify'"
method return time=1627826047.525273 sender=org.freedesktop.DBus -> destination=:1.27 serial=300 reply_serial=375
method call time=1627826047.525573 sender=:1.27 -> destination=org.freedesktop.DBus serial=376 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',sender='org.freedesktop.PackageKit',interface='org.freedesktop.PackageKit.Modify',path='/org/freedesktop/PackageKit'"
method return time=1627826047.525588 sender=org.freedesktop.DBus -> destination=:1.27 serial=301 reply_serial=376
method call time=1627826048.835558 sender=:1.3 -> destination=org.freedesktop.DBus serial=26 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=ReleaseName
   string "org.freedesktop.ReserveDevice1.Audio0"
signal time=1627826048.835589 sender=org.freedesktop.DBus -> destination=:1.3 serial=47 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string "org.freedesktop.ReserveDevice1.Audio0"
signal time=1627826048.835598 sender=org.freedesktop.DBus -> destination=(null destination) serial=79 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string "org.freedesktop.ReserveDevice1.Audio0"
   string ":1.3"
   string ""
method return time=1627826048.835609 sender=org.freedesktop.DBus -> destination=:1.3 serial=48 reply_serial=26
   uint32 1

2. This problem does not exist in Ubuntu MATE 18.04 LTS. Someone with big competences have removed the sessioninstaller package from Debian as per https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=755504 .
3. The problem may be fixed as simple as

   cd /tmp
   wget -c http://archive.ubuntu.com/ubuntu/pool/universe/s/sessioninstaller/sessioninstaller_0.20+bzr150-0ubuntu4.1_all.deb
   sudo apt-get install /tmp/sessioninstaller_0.20+bzr150-0ubuntu4.1_all.deb

So my verdict is that sessioninstaller package should be reintroduced in Ubuntu as soon as possible!

ProblemType: Bug
DistroRelease: Ubuntu 21.10
Package: caja 1.24.1-0ubuntu1
ProcVersionSignature: Ubuntu 5.11.0-20.21+21.10.1-generic 5.11.21
Uname: Linux 5.11.0-20-generic x86_64
ApportVersion: 2.20.11-0ubuntu67
Architecture: amd64
CasperMD5CheckResult: pass
CurrentDesktop: MATE
Date: Sun Aug 1 17:07:01 2021
InstallationDate: Installed on 2021-07-30 (1 days ago)
InstallationMedia: Ubuntu-MATE 21.10 "Impish Indri" - Alpha amd64 (20210730)
SourcePackage: caja
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Norbert (nrbrtx) wrote :
Revision history for this message
Norbert (nrbrtx) wrote :

Dear Julian Andres Klode!

Please revert your mistake. Sessioninstaller is actually used as PackageKit service provider on MATE.

Revision history for this message
Norbert (nrbrtx) wrote :

Extra info from my Ubuntu MATE 18.04.5 LTS:

```
$ lsb_release -cs
bionic

$ apt-cache policy sessioninstaller
sessioninstaller:
  Installed: 0.20+bzr150-0ubuntu4.1
  Candidate: 0.20+bzr150-0ubuntu4.1
  Version table:
 *** 0.20+bzr150-0ubuntu4.1 500
        500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
        500 http://archive.ubuntu.com/ubuntu bionic/universe i386 Packages
        100 /var/lib/dpkg/status

$ apt-cache rdepends sessioninstaller
sessioninstaller
Reverse Depends:
  gnome-software
  gnome-software
  ubuntu-mate-desktop
  ubuntu-mate-core

$ aptitude why sessioninstaller
i ubuntu-mate-desktop Recommends sessioninstaller
```

so the actual premise that nobody uses `sessioninstaller` was wrong.

Revision history for this message
Norbert (nrbrtx) wrote :

For modern Ubuntu versions this bug is linked with bug 1889057 .

Revision history for this message
Norbert (nrbrtx) wrote :

Screencast for DXF file on Ubuntu MATE 20.04 LTS with manually installed `sessioninstaller` package is attached.

Revision history for this message
Julian Andres Klode (juliank) wrote :

sessioninstaller is dead, use PackageKit.

Changed in sessioninstaller (Ubuntu):
status: New → Won't Fix
Revision history for this message
Norbert (nrbrtx) wrote :

OK, great, thanks. Very helpful decision. The sessioninstaller is not dead, it works even in latest Ubuntu MATE 21.10. And of course works in 20.04 LTS as it was already demonstrated in the screencast https://bugs.launchpad.net/ubuntu/+source/caja/+bug/1938641/+attachment/5515140/+files/dxf.gif .
Do not break a thing which was working! Do not take wrong decisions!

You said about GNOME Software. Then I should say that it does not work even in the newest and freshest Ubuntu 21.04. See screencast here - https://i.stack.imgur.com/A7H9B.gif .
As long time MATE user and Ubuntu MATE team member I do not care about GNOME Software.
I care only about my (and our users) experience. You have just break it. Thank you! Keep going.

Revision history for this message
Julian Andres Klode (juliank) wrote :

Is PackageKit not installed? I can't say. Please go check, it's not a bug on our side, but the MATE side.

Revision history for this message
Norbert (nrbrtx) wrote :

Yes! I do not want to test GNOME Software. It ugly, massive and ineffective. See screencast, all moments are shown.

And please revive sessioninstaller package. I have just created PPA ( https://launchpad.net/~nrbrtx/+archive/ubuntu/sessioninstaller ) for my personal needs and needs of out Ubuntu MATE community, but having the package in universe ( https://packages.ubuntu.com/bionic/sessioninstaller ) is better and most user-friendly. Please do it.

@Wimpy please do something!

Revision history for this message
Norbert (nrbrtx) wrote :

@Wimpy please do something!

Revision history for this message
Julian Andres Klode (juliank) wrote (last edit ):

sessioninstaller is dead, please do not revive it. If you don't like gnome-software, you are welcome to write another PackageKit frontend. Check with Xubuntu if they agree with you. It shouldn't be _too_ hard.

Our goal is still to get rid of aptdaemon. We are not able to support it, it's rotten. We can't really commit on removing it atm either, though.

PackageKit is also bit messy to future wise, as upstream primary maintainer says it's no longer being developed; but nobody has written a replacement yet, and not everyone agrees with the statement. Our goal is to get an apt daemon eventually, but it needs to go back to the drawing board and time needs to be found to write it.

Note that if you want to have a different installer tool for that, you also need to have a gnome-software replacement for normal installing, as gnome-software also installs the session handler.

Revision history for this message
Julian Andres Klode (juliank) wrote :

In your example, LibreCAD does not ship AppStream metadata, so if you want to see it, add some.

summary: - Without sessioninstaller (org.freedesktop.PackageKit dbus service
- provider) user is unable to install applications to handle unknown
- filetypes
+ librecad missing AppStream data
affects: caja (Ubuntu) → librecad (Ubuntu)
no longer affects: sessioninstaller (Ubuntu)
no longer affects: ubuntu-mate-meta (Ubuntu)
no longer affects: ubuntu-mate
Changed in sessioninstaller:
status: New → Invalid
Revision history for this message
Norbert (nrbrtx) wrote :

LibreCAD was just an example. Do not touch the bug.

summary: - librecad missing AppStream data
+ Without sessioninstaller (org.freedesktop.PackageKit dbus service
+ provider) user is unable to install applications to handle unknown
+ filetypes
no longer affects: librecad (Ubuntu)
Revision history for this message
Norbert (nrbrtx) wrote :

Xubuntu uses the great GNOME Software which we know is broken.

Changed in ubuntu-mate:
status: New → Confirmed
Changed in sessioninstaller (Ubuntu):
status: New → Confirmed
Changed in ubuntu-mate-meta (Ubuntu):
status: New → Confirmed
Revision history for this message
Julian Andres Klode (juliank) wrote (last edit ):

Please stop bouncing the bug. You are free to add bug tasks for packages that miss necessary AppStream metadata. A return of sessioninstaller is _not_ acceptable. A gnome-software is bad strawman is not constructive behavior. Please stop.

affects: sessioninstaller (Ubuntu) → librecad (Ubuntu)
no longer affects: ubuntu-mate-meta (Ubuntu)
no longer affects: ubuntu-mate
no longer affects: ubuntu-mate
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.