Valent Is A KDE Connect Client For GTK-Based Desktops (Cinnamon, Xfce, MATE, Pantheon)

Valent is a new KDE Connect protocol implementation built on GNOME platform libraries. Compared to GSConnect, which is implemented as a GNOME Shell extension, Valent doesn't need GNOME Shell to run (it's a standalone app), so it can be used on any GTK-based desktop environment like Xfce, Budgie, Cinnamon, Pantheon, MATE, etc. Both GSConnect and Valent are developed by Andy Holmes.

Valent KDE Connect for GNOME Xfce
Valent running on the Xfce desktop (Xubuntu)

It's important to note from the start that Valent is currently alpha software. There are missing features and bugs.

KDE Connect is created for use with KDE Plasma, but it does work on other desktop environments as well. However, you need to install quite a few KDE dependencies with it, and it doesn't integrate well with the system. This is where Valent comes in.

What can this do? Using Valent (and KDE Connect), you can:

  • receive Android phone notifications on your desktop and reply to messages
  • sync the clipboard between your Android or iOS device and desktop
  • control music playing on your desktop from your phone
  • share files between your desktop and phone, and browse your phone from the desktop
  • send SMS from your desktop
  • execute predefined commands from your phone to run on your desktop
  • control your desktop's mouse and keyboard from the Android/iOS device
  • browse your Android device filesystem from your desktop wirelessly
  • and more

KDE Connect initially only supported Android devices, but it later added support for iOS. It supports fewer features on iOS though, due to limitations.

This is a screenshot of all Valent plugins, showing everything it can do when paired with an Android device:

Valent plugins

For all this to work, the Android / iOS device needs to have the KDE Connect app installed and paired with Valent that's running on the desktop. Also, the devices need to be in the same local network (although I see there's also work to do this via Bluetooth). You can also connect multiple Linux desktops running on the same local network using Valent.

Right now, Valent doesn't come with file manager integration or a tray icon (there's a GNOME Shell extension, but no tray / applets for other desktops). However, you don't have to keep its window open for it to work – when you close the Valent window using the window close button (X), the application will continue to run in the background, so your desktop will continue to be connected to your Android / iOS device. 

To actually close Valent, choose Quit from its appmenu. I don't know a way to start it in the background though, so if you want to add it to your startup applications, its main window will show up when it's launched. if you figure this out, let me know in the comments!

It's also worth noting that in the future, Valent might also support Phosh, the pure Wayland shell for GNOME on mobile devices.

You might also like: Control Android Devices From A Desktop With scrcpy

Download Valent

Valent is currently packaged only as a nightly Flatpak. So to install it, you'll firstly need to setup Flatpak (and Flathub) on your system, if you haven't already.

To install Valent, download the valent.flatpakref file linked using the download button above, then install it (run this command in the folder where you have downloaded the file) using:

flatpak install valent.flatpakref

This includes the nightly Flatpak repository, so Valent will be updated with the rest of your Flatpak applications (using e.g. GNOME Software with the Flatpak plugin installed).

There's a GNOME Shell (for version 43) extension as well if you want to integrate this better with GNOME Shell, although for now it's probably best to use GSConnect if you're using GNOME.

To use Valent, besides installing this application on your Linux desktop, you'll also need to install KDE Connect on your Android / iOS device. Get it from the Google Play Store or F-Droid for Android, or App Store for iOS. Then, with both the Linux desktop and Android/iOS device running on the same local network, pair the devices, and you're ready to go.