Coder Social home page Coder Social logo

andyholmes / valent Goto Github PK

View Code? Open in Web Editor NEW
523.0 12.0 16.0 185.94 MB

Connect, control and sync devices

Home Page: https://valent.andyholmes.ca

License: Other

Meson 3.62% Python 1.55% C 94.59% CSS 0.08% Shell 0.09% Dockerfile 0.07%
kdeconnect phosh pinephone librem5 gtk4

valent's Introduction

Flatpak Coverage API

Valent

Connect, Control and Sync Devices

Securely connect your devices to open files and links where you need them, get notifications when you need them, stay in control of your media and more.

Features:

  • Sync contacts, notifications and clipboard content
  • Control media players and volume
  • Share files, links and text
  • Virtual touchpad and keyboard
  • Call and text notification
  • Execute custom commands
  • More…

Valent is an implementation of the KDE Connect protocol, built on GNOME platform libraries.

Status

This project is currently in alpha. It generally works as intended, but is still missing some features and may contain bugs.

If that's okay with you, there is a nightly Flatpak that you can try out. It includes the nightly Flatpak repository, so you'll get updates along with your other applications.

Related

Valent (GNOME Shell Extension) Valent (Plugin Template)

valent's People

Contributors

andyholmes avatar dependabot[bot] avatar diegopvlk avatar fliperama00 avatar glerroo avatar hdavo avatar sky96111 avatar sungsphinx avatar valerierx avatar vistaus avatar vixalien avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

valent's Issues

Slideshow remote function times out

Current Behavior

When you first use the slideshow remote function it requests permission to use and interact with the screen. After a few seconds of inactivity it loses this permission and you need to accept it again with a dialog on the presenting machine

Expected Behavior

Accept the dialog and don't time out until you click on a button in the app to disengage the function

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Arch

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

KDE Connect (Android), Valent (Desktop Linux)

Plugins

No response

Logs

No response

Screenshots

image

Volume is decreased when receiving a phone call but does not return to its previous value once the phone call has ended.

Current Behavior

Valent lowers the volume when receiving a phone call (as expected) but does not increase it after the phone call has ended.

Expected Behavior

Volume returns to its previous value once a phone call has ended.

Desktop

Other (please specify)

Other Desktop

Hyprland

Operating System

NixOS 24.05

Installed from

Distribution Package

Version

1.0.0.alpha

Devices

KDE Connect (Android), Valent (Desktop Linux)

Plugins

PulseAudio

Logs

No response

Screenshots

No response

Presentation remote window doesn't have a close button

Current Behavior

Presentation remote window doesn't have a close button

Expected Behavior

Presentation remote window has a close button

Desktop

Pantheon

Other Desktop

No response

Operating System

elementary os 7

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

No response

Plugins

No response

Logs

No response

Screenshots

obraz

Font rendering issue

Current Behavior

I've just installed the Valent Gnome extension from the nightly zip. When I click the "All Devices" button on the quick settings panel, I get an obfuscated window.

I have tried rebuilding my font caches (fc-cache -r) which has helped solve similar problems in the past, but it had no effect. No other Gnome apps are exhibiting this behaviour.

Expected Behavior

The window text renders correctly.

GNOME Version

44

Other Version

44.0-2ubuntu3

Operating System

Ubuntu 23.04 beta

Installed from

Nightly ZIP

Version

1.alpha

Logs

No response

Screenshots

image

Can't connect if GSConnect is running

Current Behavior

Does not find the device to synchronize

Expected Behavior

Connect to the device

Desktop

GNOME Shell

Other Desktop

Gnome

Operating System

Fedora Silverblue 38

Installed from

Nightly Flatpak

Version

nightly

Devices

KDE Connect (Android)

Plugins

No response

Logs

[wellington@fedora ~]$ flatpak run ca.andyholmes.Valent
12:32:54.8871                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
12:32:54.9048                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gvfs (GDaemonVfs) for ‘gio-vfs’
12:32:54.9789                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation keyfile (GKeyfileSettingsBackend) for ‘gsettings-backend’
12:32:54.9797                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ‘gio-tls-backend’

(valent:2): GLib-GObject-CRITICAL **: 12:32:54.981: ../gobject/gsignal.c:2778: instance '0x55cde1184050' has no handler with id '51'

Screenshots

Captura de tela de 2023-09-04 12-35-24

Segmentation fault in ValentNotificationPlugin

Current Behavior

There some condition under which Valent will crash if a notification reply dialog is opened via the notification action.

Expected Behavior

Shouldn't crash when notification.reply action is activated.

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora Silverblue 39

Installed from

Nightly Flatpak

Version

nightly

Devices

Valent (Desktop Linux)

Plugins

notification

Logs

Core was generated by `valent --gapplication-service'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f52292b8c83 in gtk_window_present_with_time () from /usr/lib/x86_64-linux-gnu/libgtk-4.so.1
[Current thread is 1 (Thread 0x7f5223d10c00 (LWP 2))]
(gdb) bt
#0  0x00007f52292b8c83 in gtk_window_present_with_time () at /usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#1  0x000055c2e322e2d1 in notification_reply_action (action=<optimized out>, parameter=<optimized out>, user_data=0x55c2e3c76b50) at ../src/plugins/notification/valent-notification-plugin.c:866
#2  0x00007f5229af043a in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#3  0x00007f5229b0496c in signal_emit_unlocked_R.isra.0 () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#4  0x00007f5229b063f1 in signal_emit_valist_unlocked () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#5  0x00007f5229b0c3c1 in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#6  0x00007f5229b0c483 in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#7  0x00007f5229c3d105 in g_simple_action_activate () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#8  0x00007f5229c3b6bf in g_action_activate () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#9  0x00007f5229e562a4 in device_action (action=<optimized out>, parameter=<optimized out>, user_data=<optimized out>) at ../src/libvalent/device/valent-device-manager.c:689
#10 0x00007f5229af043a in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#11 0x00007f5229b0496c in signal_emit_unlocked_R.isra.0 () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#12 0x00007f5229b063f1 in signal_emit_valist_unlocked () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007f5229b0c3c1 in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007f5229b0c483 in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007f5229c3d105 in g_simple_action_activate () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#16 0x00007f5229c3b6bf in g_action_activate () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#17 0x00007f5229c35c44 in g_application_impl_method_call () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#18 0x00007f5229c61968 in call_in_idle_cb () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#19 0x00007f52299e9d47 in g_main_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007f52299ebe57 in g_main_context_iterate_unlocked.isra () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007f52299ec513 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007f5229c33b1d in g_application_run () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#23 0x000055c2e320b2ec in main (argc=2, argv=0x7ffd69ddf578) at ../src/main.c:60

Screenshots

No response

Non-blocking error compiling valent

Current Behavior

When I was trying to update valent to e887b7f, I got this:

[271/341] Generating src/libvalent/Valent-1.gir with a custom command (wrapped by meson to set env)
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gutils.h:378: syntax error, unexpected INTEGER, expecting identifier in '  if ((__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 0); if (nth_bit < -1) G_PASTE (_g_boolean_var_, 0) = 1; else G_PASTE (_g_boolean_var_, 0) = 0; G_PASTE (_g_boolean_var_, 0); }), 0)))' at '0'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gutils.h:393: syntax error, unexpected INTEGER, expecting identifier in '  if (nth_bit < 0 || (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 1); if (nth_bit > 8 * 8) G_PASTE (_g_boolean_var_, 1) = 1; else G_PASTE (_g_boolean_var_, 1) = 0; G_PASTE (_g_boolean_var_, 1); }), 0)))' at '1'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gutils.h:408: syntax error, unexpected INTEGER, expecting identifier in '  return (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 2); if (number) G_PASTE (_g_boolean_var_, 2) = 1; else G_PASTE (_g_boolean_var_, 2) = 0; G_PASTE (_g_boolean_var_, 2); }), 1)) ?' at '2'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gstring.h:196: syntax error, unexpected INTEGER, expecting identifier in '  if ((__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 3); if (gstring != ' at '3'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gstring.h:218: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 4); if (gstring == ' at '4'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gstring.h:221: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 5); if (val == ' at '5'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gstring.h:229: syntax error, unexpected INTEGER, expecting identifier in '  if ((__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 6); if (gstring->len + len_unsigned < gstring->allocated_len) G_PASTE (_g_boolean_var_, 6) = 1; else G_PASTE (_g_boolean_var_, 6) = 0; G_PASTE (_g_boolean_var_, 6); }), 1)))' at '6'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gstring.h:232: syntax error, unexpected IF in '      if ((__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 7); if (val + len_unsigned <= end || val > end + len_unsigned) G_PASTE (_g_boolean_var_, 7) = 1; else G_PASTE (_g_boolean_var_, 7) = 0; G_PASTE (_g_boolean_var_, 7); }), 1)))' at 'if'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/glib/gstring.h:232: syntax error, unexpected INTEGER, expecting identifier in '      if ((__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 7); if (val + len_unsigned <= end || val > end + len_unsigned) G_PASTE (_g_boolean_var_, 7) = 1; else G_PASTE (_g_boolean_var_, 7) = 0; G_PASTE (_g_boolean_var_, 7); }), 1)))' at '7'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/gobject/gobject.h:819: syntax error, unexpected INTEGER, expecting identifier in '  do { if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 8); if ((((g_type_check_instance_is_fundamentally_a ((GTypeInstance*) ((weak_pointer)), (((GType) ((20) << (2))))))))) G_PASTE (_g_boolean_var_, 8) = 1; else G_PASTE (_g_boolean_var_, 8) = 0; G_PASTE (_g_boolean_var_, 8); }), 1)) ; else g_assertion_message (((gchar*) 0), "/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/gobject/gobject.h", 819, ((const char*) (__func__)), "'" "G_IS_OBJECT (weak_pointer)" "' should be TRUE"); } while (0);' at '8'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/gobject/gobject.h:819: syntax error, unexpected ')', expecting identifier or '(' in '  do { if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 8); if ((((g_type_check_instance_is_fundamentally_a ((GTypeInstance*) ((weak_pointer)), (((GType) ((20) << (2))))))))) G_PASTE (_g_boolean_var_, 8) = 1; else G_PASTE (_g_boolean_var_, 8) = 0; G_PASTE (_g_boolean_var_, 8); }), 1)) ; else g_assertion_message (((gchar*) 0), "/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/gobject/gobject.h", 819, ((const char*) (__func__)), "'" "G_IS_OBJECT (weak_pointer)" "' should be TRUE"); } while (0);' at ')'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/gobject/gobject.h:822: syntax error, unexpected INTEGER, expecting identifier in '  do { if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 9); if ((weak_pointer) == ' at '9'
/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/gobject/gobject.h:822: syntax error, unexpected ')', expecting identifier or '(' in '# 822 "/nix/store/zhl6wmjjsiclfyy69k37xpc1prswhjmw-glib-2.76.2-dev/include/glib-2.0/gobject/gobject.h"' at ')'
/build/source/src/libvalent/device/valent-packet.h:59: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 10); if (packet == ' at '10'
/build/source/src/libvalent/device/valent-packet.h:66: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 11); if ((node = json_object_get_member (root, "id")) == ' at '11'
/build/source/src/libvalent/device/valent-packet.h:71: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 12); if ((node = json_object_get_member (root, "type")) == ' at '12'
/build/source/src/libvalent/device/valent-packet.h:75: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 13); if ((node = json_object_get_member (root, "body")) == ' at '13'
/build/source/src/libvalent/device/valent-packet.h:80: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 14); if ((node = json_object_get_member (root, "payloadSize")) != ' at '14'
/build/source/src/libvalent/device/valent-packet.h:84: syntax error, unexpected INTEGER, expecting identifier in '  if (__builtin_expect (__extension__ ({ int G_PASTE (_g_boolean_var_, 15); if ((node = json_object_get_member (root, "payloadTransferInfo")) != ' at '15'

This error doesn't block the build though.

Expected Behavior

idk

Desktop

GNOME Shell

Other Desktop

No response

Operating System

NixOS unstable

Installed from

Built from source (Other)

Version

1.0.0.alpha

Devices

No response

Plugins

No response

Logs

No response

Screenshots

No response

Unable to recognize device

Current Behavior

devices are not able to detect each other via kdeconnect android app/ valent linux app.

on linux ( Arch + Sway ) , Valent is listening on port 1716

tcp6       0      0 :::1716                 :::*                    LISTEN      1000       8504529    1406935/valent      
udp6       0      0 :::1716                 :::*                                1000       8504530    1406935/valent 

on checking via netcat , 1716 port is also open on android device

192.168.1.39 1716 (xmsg) open

on ufw, port are allowed

1714:1764/udp (v6)         ALLOW       Anywhere (v6)             
1714:1764/tcp (v6)         ALLOW       Anywhere (v6)   

and both devices are connected to same wifi network .

Expected Behavior

devices should detect each other normally

Desktop

Other (please specify)

Other Desktop

Sway

Operating System

Arch

Installed from

Other

Version

nightly

Devices

KDE Connect (Android)

Plugins

No response

Logs

17:16:27.3111                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation dconf (DConfSettingsBackend) for ‘gsettings-backend’
17:16:27.3120                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
17:16:27.3199                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gvfs (GDaemonVfs) for ‘gio-vfs’
17:16:27.3304                        Adwaita:    DEBUG: Portal doesn't provide settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
17:16:27.3306                        Adwaita:    DEBUG: Portal doesn't provide settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
17:16:27.3648                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ‘gio-tls-backend’
17:16:27.3657                       GLib-GIO:    DEBUG: Failed to initialize portal (GNetworkMonitorPortal) for gio-network-monitor: Not using portals
17:16:27.3660                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
17:16:27.3676                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation networkmanager (GNetworkMonitorNM) for ‘gio-network-monitor’

Screenshots

No response

Unable to connect to phone using Tailscale

Current Behavior

I'm using Tailscale on my phone and on my computer, it's a mesh network so there's an IP for the phone and one for the computer. I tried to add the IP of the computer in the mobile app but it still doesn't detect Valent. Tailscale detect that Valent is running but the mobile app doesn't detect Valent. If you need more informations tell me!

Expected Behavior

I except the mobile app to detect valent and valent to detect the mobile app.

Desktop

GNOME Shell

Other Desktop

No response

Operating System

NixOS

Installed from

Distribution Package

Version

1.0.0.alpha

Devices

KDE Connect (Android)

Plugins

No response

Logs

No response

Screenshots

No response

Media restarts after phone call even if media was not stopped by phone call

Current Behavior

When I have a video paused in Firefox and a call ends, the video gets played back, even if the phone call did not interrupt the video.

Expected Behavior

I would expect Valent to keep track of if a play action is necessary so that this does not happen.

Desktop

GNOME Shell

Other Desktop

No response

Operating System

NixOS unstable

Installed from

Distribution Package

Version

1.0.0.alpha

Devices

KDE Connect (Android)

Plugins

No response

Logs

No response

Screenshots

No response

Clipboard adapter for Wayland environments (e.g. Sway)

Current Behavior

clipboard isnt being synced from pc to android until the valent window is focused via mouse.

Since im facing this issue on sway, this might only be related to sway/wlroots compositor behaviour specifically.
i faced a similar issue with firefox where subtitles werent being updated when browser window wasnt focused, which is resolved by now.

linking that issue incase its of any help

https://bugzilla.mozilla.org/show_bug.cgi?id=1770429

Expected Behavior

clipboard should sync to android device the moment its changed.

Desktop

Other (please specify)

Other Desktop

Sway/Wlroots

Operating System

Aech

Installed from

Distribution Package

Version

1.0.0.alpha

Devices

KDE Connect (Android), Valent (Desktop Linux)

Plugins

clipboard

Logs

20:57:26.5143                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation dconf (DConfSettingsBackend) for ‘gsettings-backend’
20:57:26.5150                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
20:57:26.8288                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gvfs (GDaemonVfs) for ‘gio-vfs’
20:57:26.8859                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ‘gio-tls-backend’
20:57:26.8864                       GLib-GIO:    DEBUG: Failed to initialize portal (GNetworkMonitorPortal) for gio-network-monitor: Not using portals
20:57:26.8866                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
20:57:26.8873                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation networkmanager (GNetworkMonitorNM) for ‘gio-network-monitor’
20:57:34.2562                 valent-battery:    DEBUG: ValentBattery: not a battery
20:57:34.3243            valent-mpris-player:    DEBUG: valent_mpris_player_get_position(): GDBus.Error:org.freedesktop.DBus.Error.NotSupported: /org/mpris/MediaPlayer2.org.mpris.MediaPlayer2.Player Position is not supported
20:57:41.7540        valent-clipboard-plugin:    DEBUG: valent_clipboard_read_text_cb(): text not available
20:57:41.7546        valent-clipboard-plugin:    DEBUG: valent_clipboard_read_text_cb(): text not available

Screenshots

No response

Can not broadcast to `255.255.255.255` on FreeBSD >= 12

Current Behavior

FreeBSD 12 introduced a new routing strategy which prevents broadcasting to 255.255.255.255.

See also:

Expected Behavior

Device running FreeBSD should be able to broadcast their identity to other devices.

Desktop

Other (please specify)

Other Desktop

All

Operating System

FreeBSD 12+

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

No response

Plugins

No response

Logs

No response

Screenshots

No response

Remove unpaired device

Current Behavior

I had to do some maintenance on my device and now I can't remove the old pairing.

Expected Behavior

I wish there was a remove button.

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora 39 Silverblue

Installed from

Nightly Flatpak

Version

nightly

Devices

KDE Connect (Android)

Plugins

All

Logs

ND

Screenshots

Captura de tela de 2023-09-27 09-28-10

Please, I would like to know how to remove the device that is not paired. I haven't figured out a way to do this.

fix(media): ensure players are exported on new and existing adapters

Currently ValentMediaPlayer instances are only exported on adapters that are available when the call to valent_media_export_player() is made. Adapters that restart or are added later don't export existing players.

Media players marked for export should be whenever an adapter becomes available.

Add device by IP

Discussed in #601

Originally posted by j-fuentes December 5, 2023
I connect to my devices via Tailscale VPN and they are not autodetected.

How I used to do it with GSConnect was by adding them by IP. But that option does not seem to be available in Valent.

Accessibility Checklist

GNOME Accessibility Checklist

  • GP General Principles
    • GP.1 Every action that alters the user's data or application's settings can be undone.
    • GP.2 All application settings can be restored to their defaults without the user having to remember what those defaults were.
    • GP.3 After installation, the application can be used without the user having to insert a disk or CD at any time.
    • GP.4 The most frequently used functions are found at the top level of the menu structure.
  • KN Keyboard Navigation
    • KN.1 Efficient keyboard access is provided to all application features.
    • KN.2 All windows have a logical keyboard navigation order.
    • KN.3 The correct tab order is used for controls whose enabled state is dependent on checkboxes, radio buttons or toggle buttons.
    • KN.4 Keyboard access to application-specific functions does not override existing system accessibility features.
    • KN.5 The application provides more than one method to perform keyboard tasks whenever possible.
    • KN.6 There are alternative key combinations wherever possible.
    • KN.7 There are no awkward reaches for frequently performed keyboard operations.
    • KN.8 The application does not use repetitive, simultaneous keypresses.
    • KN.9 The application provides keyboard equivalents for all mouse functions.
    • KN.10 Any text or object that can be selected with the mouse can also be selected with the keyboard alone.
    • KN.11 Any object that can be resized or moved with the mouse can also be resized or moved with the keyboard alone.
    • KN.12 The application does not use any general navigation functions to trigger operations.
    • KN.13 All keyboard-invoked menus, windows and tooltips appear near the object they relate to.
  • MI Mouse Interaction
    • MI.1 No operations depend on input from the right or middle mouse buttons.
    • MI.2 All mouse operations can be cancelled before they are complete.
    • MI.3 Visual feedback is provided throughout drag and drop operations
    • MI.4 The mouse pointer is never warped under application control, or its movement restricted to part of the screen by the application.
  • GE Graphical Elements
    • GE.1 There are no hard-coded graphical attributes such as line, border or shadow thickness.
    • GE.2 All multi-color graphical elements can be shown in monochrome only, where possible.
    • GE.3 All interactive GUI elements are easily distinguishable from static GUI elements.
    • GE.4 An option to hide non-essential graphics is provided.
  • FT Fonts and Text
    • FT.1 No font styles or sizes are hard-coded.
    • FT.2 An option to turn off graphical backdrops behind text is provided.
    • FT.3 All labels have names that make sense when taken out of context.
    • FT.4 No label names are used more than once in the same window.
    • FT.5 Label positioning is consistent throughout the application.
    • FT.6 All static text labels that identify other controls end in a colon (:).
    • FT.7 Static text labels that identify other controls immediately precede those controls in the tab order.
    • FT.8 An alternative to WYSIWYG is provided. For example, the ability to specify different screen and printer fonts in a text editor.
  • CC Color and Contrast
    • CC.1 Application colors are not hard-coded, but are drawn either from the current desktop theme or an application setting.
    • CC.2 Color is only used as an enhancement, and not as the only means to convey information or actions.
    • CC.3 The application supports all available high- contrast themes and settings.
    • CC.4 The software is not dependent on any particular high-contrast themes or settings.
  • MG Magnification
    • MG.1 The application provides the ability to magnify the work area.
    • MG.2 The application provides the option to scale the work area.
    • MG.3 The application's functionality is not affected by changing the magnification or scale settings.
  • AU Audio
    • AU.1 Sound is not used as the only means of conveying any items of information.
    • AU.2 The user can configure the frequency and volume of all sounds and warning beeps.
  • AN Animation
    • AN.1 There are no flashing or blinking elements with a frequency greater than 2Hz or lower than 55Hz.
    • AN.2 Any flashing or blinking is confined to small areas of the screen.
    • AN.3 If animation is used, an option is available to turn it off before it is first shown.
  • KF Keyboard Focus
    • KF.1 When a window is opened, focus starts at the most commonly-used control.
    • KF.2 Current input focus position is clearly displayed at all times.
    • KF.3 Input focus is shown in exactly one window at all times.
    • KF.4 Appropriate audio or visual feedback is provided when the user attempts to navigate past either end of a group of related objects.
    • KF.5 The default audio or visual warning signal is played when the user presses an inappropriate key.
    • KF.6 There is sufficient audio information for the visual focus that the user can figure out what to do next.
    • KF.7 When using assistive technologies, such as a screen reader or braille device, the current program indicates the position and content of the visual focus indicator.
  • TM Timing
    • TM.1 There are no hard-coded time-outs or time-based features in the application.
    • TM.2 The display or hiding of important information is not triggered solely by movement of the mouse pointer.
  • DC Documentation
    • DC.1 All documentation is in an accessible format, with textual alternate descriptions provided for all figures and diagrams.
    • DC.2 The documentation includes a section that covers all the application's accessibility features.

See Also

valent doesn't start - "TLS support is not available"

Current Behavior

❯ valent
20:12:10.1688                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
20:12:10.1700                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’
20:12:10.1701                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyTlsBackend) for ‘gio-tls-backend’
Failed to register: TLS support is not available

Expected Behavior

valent starts

Desktop

Other (please specify)

Other Desktop

sway

Operating System

nixos (nixos-unstable)

Installed from

Distribution Package

Version

1.0.0.alpha

Devices

Valent (Desktop Linux)

Plugins

No response

Logs

No response

Screenshots

No response

firewalld: ERROR: INVALID_NAME: '.' is not allowed in 'ca.andyholmes.Valent'

Current Behavior

Once installed, Valent makes the firewalld service crash each time it is started.
It causes a serious problem to the OS because it renders the firewall completely unavailable.

firewalld[3475]: ERROR: INVALID_NAME: '.' is not allowed in 'ca.andyholmes.Valent'

See the backtrace below.


My hypothesis is that the file name contains dots (.) and it seems that firewalld doesn't like it…

We should simply rename the file to something like Valent.xml, valent-connect.xml or valent-andyholmes.xml

Expected Behavior

Valent should provide a valid firewalld configuration file which allows it to open its specific ports without crashing the entire service 😅

Desktop

GNOME Shell

Operating System

Endeavour OS - Linux 6.4.3-arch1-2

Installed from

Built from source (AUR)

Version

r1071.4130dad2-1

Logs

systemd[1]: Starting firewalld - dynamic firewall daemon...
systemd[1]: Started firewalld - dynamic firewall daemon.
firewalld[3475]: ERROR: Failed to load user configuration. Falling back to full stock configuration.
firewalld[3475]: ERROR: INVALID_NAME: '.' is not allowed in 'ca.andyholmes.Valent'
firewalld[3475]: Traceback (most recent call last):
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 649, in start
                                                          self._start()
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 599, in _start
                                                          self._start_load_stock_config()
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 414, in _start_load_stock_config
                                                          self._loader_services(config.FIREWALLD_SERVICES)
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 690, in _loader_services
                                                          obj = service_reader(filename, path)
                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/io/service.py", line 224, in service_reader
                                                          service.check_name(service.name)
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/io/io_object.py", line 103, in check_name
                                                          raise FirewallError(
                                                      firewall.errors.FirewallError: INVALID_NAME: '.' is not allowed in 'ca.andyholmes.Valent'
                                                      
                                                      During handling of the above exception, another exception occurred:
                                                      
                                                      Traceback (most recent call last):
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 654, in start
                                                          self._start_failsafe()
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 638, in _start_failsafe
                                                          self._start_load_stock_config()
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 414, in _start_load_stock_config
                                                          self._loader_services(config.FIREWALLD_SERVICES)
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/fw.py", line 690, in _loader_services
                                                          obj = service_reader(filename, path)
                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/io/service.py", line 224, in service_reader
                                                          service.check_name(service.name)
                                                        File "/usr/lib/python3.11/site-packages/firewall/core/io/io_object.py", line 103, in check_name
                                                          raise FirewallError(
                                                      firewall.errors.FirewallError: INVALID_NAME: '.' is not allowed in 'ca.andyholmes.Valent'
firewalld[3475]: ERROR: INVALID_NAME: '.' is not allowed in 'ca.andyholmes.Valent'
firewalld[3475]: ERROR: Failed to load full stock configuration. This likely indicates a system level issue, e.g. the firewall backend (nftables, iptables) is broken. All hope is lost. Exiting.
firewalld[3475]: ERROR: Raising SystemExit in run_server
systemd[1]: firewalld.service: Deactivated successfully.

Screenshots

This is not a graphical problem. The console log is sufficient.

Running command from phone not working

Current Behavior

Running command from phone doesn't work, while this does work with GSConnect

Expected Behavior

A command to run from phone from app, homescreen widget or home controls

Desktop

GNOME Shell

Other Desktop

GNOME

Operating System

Fedora Silverblue 38

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

KDE Connect (Android), Valent (Desktop Linux)

Plugins

Commands

Logs

(flatpak-spawn:31): GLib-GIO-DEBUG: 01:49:07.001: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
** (flatpak-spawn:31): DEBUG: 01:49:07.005: child_pid: 30096
** (flatpak-spawn:31): DEBUG: 01:49:07.005: child exited 30096: 0
** (flatpak-spawn:31): DEBUG: 01:49:07.005: child exit code 30096: 0

📎 Full log

Screenshots

Kooha-2023-04-20-02-03-24.webm

Core dump json_node_unref

Current Behavior

Application core dumps when running in background

Expected Behavior

No Crash

Desktop

Other (please specify)

Other Desktop

sway

Operating System

Arch

Installed from

Built from source (Other)

Version

nightly

Devices

KDE Connect (Android)

Plugins

No response

Logs

17:36:37.2089                           Json: CRITICAL: json_node_unref: assertion 'JSON_NODE_IS_VALID (node)' failed
malloc(): unaligned tcache chunk detected
[1]    238822 IOT instruction (core dumped)  valent

Screenshots

No response

AppIndicator Support

Discussed in #403

Originally posted by Aleksanaa March 20, 2023
If anyone's interested, keep track of this issue: AyatanaIndicators/libayatana-appindicator#22

A few notes:

  • I'm not an AppIndicator fan, but I'm fine having a built-in plugin for those that are
  • Someone will have to contribute the plugin, but I'm happy to help
  • If there are required changes to the plugin API, request those ASAP
  • If it's built by default, it should be disabled in the Flatpak manifests

Browse Files isn't working for me

Current Behavior

Sorry, I'm not sure how to troubleshoot/provide a good report here.

Most features seem to work, but even after assigning valent a directory on my Pixel 6A, it seems to not do anything when I hit Browse Files (in valent).

It shows "primary:ValentShared" in the "Filesystem expose" plugin settings on the phone.

Expected Behavior

I'm able to browse the "ValentShared" directory I created and gave KDE Connect (on Android) permission to.

Desktop

Other (please specify)

Other Desktop

sway

Operating System

nixos (nixos-unstable)

Installed from

Other

Version

1.0.0.alpha

Devices

KDE Connect (Android)

Plugins

No response

Logs

(Also, I'm not sure if the version is right, valent doesn't seem to have a `--version`.)

There are no logs generated, by running `valent`, when I hit "Browse Files".

Screenshots

No response

Crashing when opening - Elementary OS 7

Current Behavior

The app opens and I see the interface for a brief moment then it closes again

Expected Behavior

The app to open

Desktop

Other (please specify)

Other Desktop

Pantheon

Operating System

Elementary OS 7 Horus

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

Valent (Desktop Linux)

Plugins

No response

Logs

No response

Screenshots

No response

Most features not working

Code of Conduct

  • I will prove that I'm an awesome person by using my manners
  • I agree that I am only entitled to The Four Essential Freedoms
  • I understand this project is in alpha and bugs are expected

Current Behavior

Somehow almost every feature is not working at all.

The remote input, while looking complete, did not do anything (wayland issue?), the presentation remote only worked when it came to uploading the file and the media remote did receive the media data, but could not send any.

The "browse files" button does not seem to do anything once configured. Nothing is mounted or accessible.

Expected Behavior

I know that not everything is 100% done yet, but I am a little confused regardless. The only features that I got to work were ping and ring.

Is this a problem with my setup? I explicitly only enabled kdeconnect via firewalld on both my phone and my desktop.

Now what I find confusing is that the coverage report states almost 100% for all of these features and yet most of them are completely unusable.

Steps to Reproduce

I guess I described that all above

Desktop

GNOME Shell

Other Desktop

Phosh though. only somewhat comparable to the Proper gnome shell.

Operating System

DanctNIX (Arch)

Installed from

Distribution Package

Version

1.0.0.alpha

Devices

Valent (Desktop Linux), Valent (Phosh)

Plugins

No response

Logs

Could sadly not get any as the process detaches itself from any terminal immediately and there is seemingly no way to circumvent this.

Screenshots

No response

Media Player interface doesn't distinguish between local and remote players

Current Behavior

When I pair & connect Valent to my Android device running KDE Connect on my phone, I can view players exposed by Valent through the KDE Connect protocol.

The issue is that when I open Valent on my PC, it also sees players from the phone.

Let me explain this in more detail by giving an example,

on my phone (KDE Connect)

I have two apps playing music:

  • YouTube Music
  • Apple Music

on my PC (Valent)

I have one app playing music:

  • Muzika

Observation

On my phone, I will see the two players (YouTube Music & Apple music) + the one exposed by Valent (Muzika)

If I go on my PC, Valent will see three players from the Android phone, i.e. YouTube Music, Apple Music & Muzika. Note that it sees Muzika as a player from the phone, even though it's a player from itself.

Expected Behavior

I woud expect only the sources from the app to be shown (not other sources exposed by KDE Connect on the phone)

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Alpine

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

KDE Connect (Android)

Plugins

No response

Logs

No response

Screenshots

No response

[Mobile] Valent Drains Battery Rapidly

Current Behavior

On OnePlus 6T with postmarketOS 22.12 Valent drains the battery rapidly (down by around 8 hours) when it is installed and active.

Expected Behavior

Valent to have little to no battery impact as KDE Connect does on Android. Admittedly, I have not tested KDE Connect itself on Mobile Linux.

Desktop

Other (please specify)

Other Desktop

Phosh

Operating System

PostmarketOS 22.12

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

No response

Plugins

No response

Logs

No response

Screenshots

No response

mpris clients from Android are missing icons

Current Behavior

Any sort of media playing on my phone is missing the appropriate icon on GNOME (via Valent), despite it being there on Android. I've tested with YouTube, Crunchyroll, and Spotify.

Expected Behavior

Icons would be transferred properly (albeit mangled, depending on context, like is done for icons in YouTube in Firefox or Chrome)

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora Rawhide

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

KDE Connect (Android), Valent (Desktop Linux)

Plugins

MPRIS

Logs

{
  "application" : {
    "id" : "ca.andyholmes.Valent",
    "version" : "1.0.0.alpha",
    "commit" : "1e5cfd8"
  },
  "runtime" : {
    "os" : "GNOME 45 (Flatpak runtime)",
    "desktop" : "GNOME",
    "session" : "wayland",
    "environment" : "flatpak"
  },
  "plugins" : {
    "xdp" : true,
    "telephony" : true,
    "systemvolume" : true,
    "sms" : true,
    "share" : true,
    "sftp" : true,
    "runcommand" : true,
    "pulseaudio" : true,
    "presenter" : true,
    "ping" : true,
    "notification" : true,
    "mpris" : true,
    "mousepad" : true,
    "lock" : true,
    "libvalent-ui" : true,
    "libvalent-device" : true,
    "lan" : true,
    "gtk" : true,
    "gnome" : true,
    "findmyphone" : true,
    "fdo" : true,
    "eds" : true,
    "contacts" : true,
    "connectivity_report" : true,
    "clipboard" : true,
    "battery" : true
  }
}

Screenshots

image

Only one MPRIS player is exported in Flatpak

Current Behavior

I have Valent connected to my android phone.

Valent only shows one media player in GNOME calendar popover when I play music on the phone.

For example, you can see in the panel that I only have one player.

image

But when I click on that player, you can see multiple players.

image

It seems only the first one is shown as an MPRIS player.

Expected Behavior

I would expect the 2 players to be visible in the GNOME panel.

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Alpine

Installed from

Nightly Flatpak

Version

nightly

Devices

KDE Connect (Android)

Plugins

MPRIS

Logs

No response

Screenshots

No response

Failing Test: data race in `test-contacts-preferences`

>>> TSAN_OPTIONS=force_seq_cst_atomics=1,history_size=5,suppressions=/__w/valent/valent/tests/extra/tsan.supp G_DEBUG=gc-friendly MALLOC_CHECK_=3 LD_LIBRARY_PATH=/__w/valent/valent/_build/src/libvalent GSETTINGS_SCHEMA_DIR=/__w/valent/valent/_build/schemas GDK_DEBUG=default-settings ASAN_OPTIONS=detect_leaks=1,intercept_tls_get_addr=0 G_SLICE=always-malloc GSETTINGS_BACKEND=memory GI_TYPELIB_PATH='/usr/lib64/girepository-1.0:/__w/valent/valent/_build/src/libvalent:$(GI_TYPELIB_PATH)' UBSAN_OPTIONS=print_stacktrace=1:print_summary=1:halt_on_error=1 GIO_USE_VOLUME_MONITOR=unix GVFS_DISABLE_FUSE=true PYTHONDONTWRITEBYTECODE=yes GDK_BACKEND=wayland,x11 LSAN_OPTIONS=fast_unwind_on_malloc=0,suppressions=/__w/valent/valent/tests/extra/lsan.supp GTK_A11Y=test GIO_USE_VFS=local MALLOC_PERTURB_=10 /__w/valent/valent/_build/tests/plugins/contacts/test-contacts-preferences --tap
――――――――――――――――――――――――――――――――――――― ✀  ―――――――――――――――――――――――――――――――――――――
stderr:
libEGL warning: MESA-LOADER: failed to open swrast: /usr/lib64/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri, suffix _dri)

libEGL warning: MESA-LOADER: failed to open swrast: /usr/lib64/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri, suffix _dri)

==================
WARNING: ThreadSanitizer: data race (pid=2675)
  Write of size 8 at 0x7b1000016800 by main thread:
    #0 free <null> (test-contacts-preferences+0x2a68b9) (BuildId: 683cb5f7e09d9146)
    #1 __cxa_finalize <null> (libc.so.6+0x3fbfc) (BuildId: 245240a31888ad5c11bbc55b18e02d87388f59a9)

  Previous write of size 8 at 0x7b1000016800 by thread T5 (mutexes: write M0):
    #0 malloc <null> (test-contacts-preferences+0x2a6150) (BuildId: 683cb5f7e09d9146)
    #1 operator new(unsigned long) <null> (libstdc++.so.6+0xb570b) (BuildId: d25eaf3596d9455fe9725f6e9cd1aa5433f31b92)
    #2 g_task_thread_pool_thread /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../gio/gtask.c:1531:3 (libgio-2.0.so.0+0xb5f83) (BuildId: 646a808aa8c4726c70e58de409ffa8ba06a2b850)

  Mutex M0 (0x7b0c000163b0) created at:
    #0 pthread_mutex_lock <null> (test-contacts-preferences+0x2a9baf) (BuildId: 683cb5f7e09d9146)
    #1 valent_object_private_lock /__w/valent/valent/_build/../src/libvalent/core/valent-object.c:57:3 (libvalent-1.so.1.0.0+0x47029) (BuildId: b2a0ba06f0ccf9ff)
    #2 valent_object_lock /__w/valent/valent/_build/../src/libvalent/core/valent-object.c:322:3 (libvalent-1.so.1.0.0+0x47029)
    #3 valent_contact_cache_constructed /__w/valent/valent/_build/../src/libvalent/contacts/valent-contact-cache.c:304:3 (libvalent-1.so.1.0.0+0x4e6e0) (BuildId: b2a0ba06f0ccf9ff)
    #4 g_object_new_internal /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../gobject/gobject.c:2297:5 (libgobject-2.0.so.0+0x25049) (BuildId: 7707028ea36f782e914d2bbd00c0ab19f2646733)
    #5 valent_component_enable_plugin /__w/valent/valent/_build/../src/libvalent/core/valent-component.c:227:7 (libvalent-1.so.1.0.0+0x4233f) (BuildId: b2a0ba06f0ccf9ff)
    #6 on_load_plugin /__w/valent/valent/_build/../src/libvalent/core/valent-component.c:321:5 (libvalent-1.so.1.0.0+0x41b89) (BuildId: b2a0ba06f0ccf9ff)
    #7 valent_component_constructed /__w/valent/valent/_build/../src/libvalent/core/valent-component.c:431:9 (libvalent-1.so.1.0.0+0x41116) (BuildId: b2a0ba06f0ccf9ff)
    #8 g_object_new_internal /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../gobject/gobject.c:2297:5 (libgobject-2.0.so.0+0x25049) (BuildId: 7707028ea36f782e914d2bbd00c0ab19f2646733)
    #9 valent_contacts_preferences_constructed /__w/valent/valent/_build/../src/plugins/contacts/valent-contacts-preferences.c:192:14 (test-contacts-preferences+0x33a0ce) (BuildId: 683cb5f7e09d9146)
    #10 g_object_new_internal /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../gobject/gobject.c:2297:5 (libgobject-2.0.so.0+0x25049) (BuildId: 7707028ea36f782e914d2bbd00c0ab19f2646733)
    #11 test_case_run /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../glib/gtestutils.c:3114:15 (libglib-2.0.so.0+0x89bc5) (BuildId: b0e6a618cd46494b058c5f00ce2f1a650b200ce3)
    #12 g_test_run_suite_internal /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../glib/gtestutils.c:3209:16 (libglib-2.0.so.0+0x89bc5)
    #13 __libc_start_call_main <null> (libc.so.6+0x27b49) (BuildId: 245240a31888ad5c11bbc55b18e02d87388f59a9)

  Thread T5 (tid=2683, running) created by thread T2 at:
    #0 pthread_create <null> (test-contacts-preferences+0x2a7ecf) (BuildId: 683cb5f7e09d9146)
    #1 g_system_thread_new /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../glib/gthread-posix.c:1221:9 (libglib-2.0.so.0+0x8c14f) (BuildId: b0e6a618cd46494b058c5f00ce2f1a650b200ce3)
    #2 g_thread_new_internal /usr/src/debug/glib2-2.76.3-1.fc38.x86_64/redhat-linux-build/../glib/gthread.c:935:22 (libglib-2.0.so.0+0x8c14f)

SUMMARY: ThreadSanitizer: data race (/__w/valent/valent/_build/tests/plugins/contacts/test-contacts-preferences+0x2a68b9) (BuildId: 683cb5f7e09d9146) in free
==================
ThreadSanitizer: reported 1 warnings

Messaging not syncing between phone/desktop

Current Behavior

Two issues related to messaging plugin. I can split the issue into separate bug reports need be.

  1. Deleting a message or thread on mobile is not reflected in the messaging plugin
  2. Sending a message via the messaging plugin is successfully sent, but the message is not reflected in the ui until closing/reopening the plugin.

Expected Behavior

  1. Messaging plugin stays in sync with the mobile messaging app.
  2. The newly sent message should be shown in the messaging plugin ui immediately.

Desktop

Other (please specify)

Other Desktop

awesomewm

Operating System

Arch

Installed from

Distribution Package

Version

nightly

Devices

KDE Connect (Android)

Plugins

Messaging

Logs

I have searched through the logs but have not found anything related to valent. I am building valent from the aur package, if there are any build flags are anything I can do to get you actual useful information please let me know.

Screenshots

No response

Not detecting the KDEConnect smartphone

Current Behavior

The app never goes past "Searching for device..." the "KDE connect" app on Android doesn't detect the app on PC either, both are on the same wifi network

Expected Behavior

Is expected to detect the smartphone with the KDE app on

Desktop

XFCE

Other Desktop

No response

Operating System

Fedora 38

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

Valent (Desktop Linux)

Plugins

No response

Logs

❯ flatpak run ca.andyholmes.Valent
01:43:52.3245                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
01:43:52.3265                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gvfs (GDaemonVfs) for ‘gio-vfs’
01:43:52.3635                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation keyfile (GKeyfileSettingsBackend) for ‘gsettings-backend’
01:43:52.3640                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ‘gio-tls-backend’

(valent:2): GLib-GObject-CRITICAL **: 01:43:52.365: ../gobject/gsignal.c:2778: instance '0x55aa2eab3ff0' has no handler with id '61'

Screenshots

No response

"Browse Files" results in "No apps available"

Current Behavior

On my Xubuntu 23.10, Xfce 4.18, no application is found to open (and mount) the "Browse Files" link.

A GNOME-looking window appears, and says:

No apps available
No apps installed that can open "sftp://..."

Valent is installed from Flatpak.

At the same time, opening the link via xdg-open works. Thunar, the default file browser, appears on the screen.

What can be the reason?

Expected Behavior

Thunar opens, and I see files kept on the phone.

Desktop

XFCE

Other Desktop

No response

Operating System

Ubuntu 23.10

Installed from

Nightly Flatpak

Version

nightly

Devices

KDE Connect (Android)

Plugins

Files

Logs

$ /usr/bin/flatpak run --branch=master --arch=x86_64 --command=valent --file-forwarding ca.andyholmes.Valent

(process:2): Gtk-WARNING **: 17:10:36.523: Locale not supported by C library.
	Using the fallback 'C' locale.
17:10:36.6241                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
17:10:36.6307                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gvfs (GDaemonVfs) for ‘gio-vfs’
17:10:36.6514                        Adwaita:    DEBUG: Portal doesn't provide settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
17:10:36.6523                        Adwaita:    DEBUG: Portal doesn't provide settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
17:10:36.6973                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation keyfile (GKeyfileSettingsBackend) for ‘gsettings-backend’
17:10:36.6982                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ‘gio-tls-backend’
17:10:36.7176                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
17:10:36.7483                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation portal (GNetworkMonitorPortal) for ‘gio-network-monitor’
17:10:37.0141                      libportal:    DEBUG: calling background
17:10:37.0184          valent-xdp-background:  WARNING: ValentXdpPlugin: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Background” on object at path /org/freedesktop/portal/desktop
17:10:37.5002                 valent-battery:    DEBUG: ValentBattery: not a battery
17:10:37.6422        valent-clipboard-plugin:    DEBUG: valent_clipboard_plugin_handle_clipboard_connect(): expected "content" field holding a string
17:10:37.8378        valent-clipboard-plugin:    DEBUG: valent_clipboard_plugin_handle_clipboard_connect(): expected "content" field holding a string

Screenshots

Screenshot_2023-11-18_17-16-40

fix(sftp): implement simple, proper server/client configuration

Summary

The SFTP server can not be configured sufficiently from the plugin preferences to support sharing local files. Configuration should involve be very simple, require no experience or knowledge of SFTP, and result in secure behaviour by default.

  • Add single-click setup for subprocess SFTP server
    • Generate sshd_config
    • Leverage ssh-copy-id
  • Add advanced dialog for host SFTP server
  • Integrate with ssh-agent if necessary

Current State

image

See: https://serverfault.com/questions/344295/is-it-possible-to-run-sshd-as-a-normal-user

[MPRIS] enabling MPRIS media players plugin causes app to crash

Current Behavior

Enabling MPRIS integration crashes the app

Expected Behavior

Controls for media playing on laptop is available on my phone

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora 39

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

Valent (Desktop Linux)

Plugins

MPRIS

Logs

{
  "application" : {
    "id" : "ca.andyholmes.Valent",
    "version" : "1.0.0.alpha",
    "commit" : "da60c12"
  },
  "runtime" : {
    "os" : "GNOME 45 (Flatpak runtime)",
    "desktop" : "GNOME",
    "session" : "wayland",
    "environment" : "flatpak"
  },
  "plugins" : {
    "xdp" : true,
    "telephony" : true,
    "systemvolume" : true,
    "sms" : true,
    "share" : true,
    "sftp" : true,
    "runcommand" : true,
    "pulseaudio" : true,
    "presenter" : true,
    "ping" : true,
    "notification" : true,
    "mpris" : true,
    "mousepad" : true,
    "lock" : true,
    "libvalent-ui" : true,
    "libvalent-device" : true,
    "lan" : true,
    "gtk" : true,
    "gnome" : true,
    "findmyphone" : true,
    "fdo" : true,
    "eds" : true,
    "contacts" : true,
    "connectivity_report" : true,
    "clipboard" : true,
    "battery" : true
  }
}
21:22:03.0017                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
21:22:03.0107                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’
21:22:03.0561                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation keyfile (GKeyfileSettingsBackend) for ‘gsettings-backend’
21:22:03.0571                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ‘gio-tls-backend’
21:22:03.0584                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation portal (GNetworkMonitorPortal) for ‘gio-network-monitor’
21:22:03.0586                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
21:22:03.1206                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
21:22:03.2276                      libportal:    DEBUG: calling background
21:22:16.4973              valent-mpris-impl: CRITICAL: valent_mpris_impl_export: assertion 'G_IS_DBUS_CONNECTION (connection)' failed

Screenshots

Permissions are reset to default:
image

MediaPlayer2 is allowed for talks:
image

feat(mousepad): compose mode

Add support for "compose mode", where long strings of text can be composed and sent in a single packet.

  • handle incoming packets with strings instead of keysms
  • add a user interface page to the input remote
  • send outgoing packets with strings, when requested

Failing Test: `mpris` fails under AddressSanitizer

The test-mpris-plugin test fails consistently when run under AddressSanitizer with the following error:

ERROR:../tests/plugins/mpris/test-mpris-plugin.c:455:test_mpris_plugin_handle_player: 'g_variant_lookup (metadata, "xesam:artist", "^a&s", &artist)' should be TRUE

Flatpak can't see MPRIS album art from Chrome/Rhythmbox/etc

Current Behavior

The phone should see the MPRIS album art and there should be no errors logged.

Expected Behavior

The phone has no thumbnail and Valent logs an error saying it's unable to find the album art.

Allowing filesystem=host and /tmp does fix the issue, but is undesirable. Maybe flatpak-spawn could be used to work around the issue?

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora 40 + GNOME 46

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

No response

Plugins

MPRIS

Logs

13:52:53.2469            valent-mpris-plugin:    DEBUG: Failed to upload album art: Error when getting information for file “/tmp/.com.google.Chrome.J2nRNM”: No such file or directory
13:53:15.0162            valent-mpris-plugin:    DEBUG: Failed to upload album art: Error when getting information for file “/home/ideapad/.cache/rhythmbox/album-art/006”: No such file or directory

Screenshots

No response

Support sending identity packet without capabilities

Current Behavior

Some platforms or networks don't support large broadcasts, which in the case of Valent probably can only be detected on BSD.

Expected Behavior

In case of an G_IO_ERROR_MESSAGE_TOO_LARGE, or if the platform can be detected ahead of time, strip the capabilities from the identity packet before sending.

Desktop

Other (please specify)

Other Desktop

All

Operating System

BSD, potentially others

Installed from

Other

Version

nightly

Devices

KDE Connect (macOS)

Plugins

No response

Logs

No response

Screenshots

No response

valent not following gtk dark mode color scheme settings

Current Behavior

I have for both gtk 3 and 4 settings.ini:

[Settings]
gtk-application-prefer-dark-theme=1

I start valent and it starts in light mode.

Expected Behavior

It starts in dark mode and respects my gtk settings.

Desktop

Other (please specify)

Other Desktop

hyprland

Operating System

NixOS 24.05.20231201.91050ea

Installed from

Distribution Package

Version

1.0.0.alpha

Devices

No response

Plugins

No response

Logs

$ valent
18:04:52.8581                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation dconf (DConfSettingsBackend) for ‘gsettings-backend’
18:04:52.8586                       GLib-GIO:    DEBUG: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
18:04:52.8636                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’
18:04:52.8737                        Adwaita:  WARNING: Using GtkSettings:gtk-application-prefer-dark-theme with libadwaita is unsupported. Please use AdwStyleManager:color-scheme instead.
18:04:53.0251                       GLib-GIO:    DEBUG: _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ‘gio-tls-backend’

Screenshots

No response

Failing Test: Object finalized off main thread

Occasionally a Valent.Object is finalized off the main thread, although this should be prevented from happening. This causes arbitrary tests to fail on very rare occasions, when a critical message is logged about the occurrence.

Tests documented as failing due to the logged critical:

  • test-object
    • /libvalent/core/object/dispose-thread
  • test-share-plugin

Remote input not working

Current Behavior

No input gets through to the desktop and this warning is shown for each stroke on the remote (phone).
valent-xdp-input: WARNING: remote_desktop_start_screencast_cb(): GDBus.Error:org.freedesktop.DBus.Error.Failed: Remote desktop session already started

Expected Behavior

Cursor moves with the the input strokes on the remote.

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora Silverblue 39

Installed from

Nightly Flatpak

Version

nightly

Devices

KDE Connect (Android), Valent (Desktop Linux)

Plugins

No response

Logs

No response

Screenshots

No response

Update the device ID generation to the protocol requirement

Current Behavior

Currently we generate a standard UUIDv4, then sanitize it for export on D-Bus.

Expected Behavior

There is an upstream issue (https://invent.kde.org/network/kdeconnect-meta/-/issues/9) with some minor discussion. The decided format is UUIDv4 with - replaced with _ which is safe for D-Bus, GSettings and probably everything else you'd expect a device ID to end up.

Desktop

Other (please specify)

Other Desktop

All platforms

Operating System

All operating systems

Installed from

Other

Version

nightly

Devices

KDE Connect (Android), KDE Connect (Desktop Linux), KDE Connect (Plasma Mobile), KDE Connect (iOS), KDE Connect (macOS), KDE Connect (SailfishOS), KDE Connect (Windows), GSConnect (GNOME Shell), Valent (Desktop Linux), Valent (Phosh)

Plugins

Possibly

Logs

No response

Screenshots

No response

Some translations filed are not valid

Current Behavior

Some text are translated in language.po but not work in application.
like:
Preference->Desktop Integration->all description under item
enter some device->three dots->Preferences and Unpair button
...

Expected Behavior

The translated text cam be displayed correctly

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora 38

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

No response

Plugins

No response

Logs

No response

Screenshots

screenshot
screenshot
screenshot
screenshot

Sending files to iPhone doesn't work

Current Behavior

Sending a file to iPhone results in the iPhone KDE Connect app making the 'received' sound, but nothing happens after.

Expected Behavior

The file is received correctly by the KDE Connect app on iPhone

Desktop

GNOME Shell

Other Desktop

No response

Operating System

Fedora Silverblue 38

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

KDE Connect (iOS)

Plugins

No response

Logs

No response

Screenshots

No response

Implement GNOME Shell plugin in C

Add a gnome plugin that implements ValentClipboardAdapter.

This should provide the client-side D-Bus proxy for the GNOME Shell extension clipboard interface, removing the need for extra sandbox permissions, an out-of-tree plugin and the python3 plugin loader.

Clipboard not syncing across devices

Current Behavior

The clipboard does not sync between my devices. I currently have Valent and its extension installed on 3 devices: 2 on Arch and one on postmarketOS. I also have a forth device running KDE Connect on Android. Clilboard syncing used to work pretty well when I used GSConnect but since i switched to Valent, it has been the most noticeable issue. The clipboard does not send or recieve anything from other devices. It sometimes works at the first boot before a device goes go sleep but even this appears to rarely happen.

Expected Behavior

The clipboard should sync effortlessly between all my devices.

Extra: Would be nice to have the clipboard syncing feature enabled by default when connecting a new device.

Desktop

GNOME Shell

Other Desktop

and GNOME-mobile

Operating System

Arch and postmarketOS

Installed from

Nightly Flatpak

Version

1.0.0.alpha

Devices

KDE Connect (Android), Valent (Desktop Linux), Valent (Phosh)

Plugins

Clipboard

Logs

No response

Screenshots

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.