elementary / switchboard-plug-keyboard

Switchboard Keyboard Plug
GNU General Public License v2.0
28 stars 22 forks source link

Ubuntu specific installer used for InputMethod installer #324

Open worldofpeace opened 4 years ago

worldofpeace commented 4 years ago

Prerequisites

Describe the bug

I'm on NixOS, which isn't going to have apt at all, and it appears to be programmed in a way that assumes an apt client exists. At the very least it could bail out with a dialog or only add the Install Unlisted Engines button if an apt client exists. I currently just get this error in the console

UbuntuInstaller.vala:75: Could not queue downloads: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.debian.apt was not provided by any .service files

To Reproduce

  1. Be on a platform without apt
  2. Click on Input method view
  3. Click the :heavy_plus_sign:
  4. Click Install Unlisted Engines and select an engine
  5. :boom: what happened? (hint: it appears like nothing)

Expected behavior

It's possible to use packagekitd this without being specific to Ubuntu. If it isn't present I shouldn't even be able to access this in the interface. (On a side note, nix will have support for packagekitd in Nix 3.0)

Platform Information

worldofpeace commented 4 years ago

For now, in NixOS, we'll be removing the function entirely https://github.com/NixOS/nixpkgs/blob/b592c888ad84af149d6b00379940bd604ee2e47a/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/0001-Remove-Install-Unlisted-Engines-function.patch

ryonakano commented 4 years ago

Yeah, Dan suggested me to use packagekit when I made the PR that adds the input method view, but I have no knowledge about it so I stolen the apt-based code from the locale plug… If we use packagekit we can provide this function not only NixOS but also other non-apt distros like Fedora.

worldofpeace commented 4 years ago

Yeah, Dan suggested me to use packagekit when I made the PR that adds the input method view, but I have no knowledge about it so I stolen the apt-based code from the locale plug… If we use packagekit we can provide this function not only NixOS but also other non-apt distros like Fedora.

Yeah, I believe because of the code in the locale plug it remains unused/unpackaged on other distros. Yep, it will work on whatever platforms has a packagekit backend.