GithubHelp home page GithubHelp logo

me.kozec.syncthingtk's Introduction

Updating

To update syncthing, it has proven useful to update the tarball URL and hash and then a) comment generated-sources.json in syncthing.yaml b) enable network for the build, i.e. uncomment the build-args c) run flatpak-builder, e.g. flatpak-builder --user --ccache --keep-build-dirs --force-clean -v --repo=/tmp/fb.repo fpbuilder net.syncthing.syncthing.yaml d) run the go-vendor generator, e.g. python3 ~/vcs/flatpak-builder-tools/go-get/flatpak-go-vendor-generator.py .flatpak-builder/build//syncthing/vendor/modules.txt > go-sources.json e) undo a) and b)

me.kozec.syncthingtk's People

Contributors

a6gibkm avatar fakeshemp avatar flathubbot avatar jurf avatar kasraghu avatar muelli avatar ntninja avatar tiz-huglife avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

me.kozec.syncthingtk's Issues

KDE: Invisible Status/Tray Icon - Missing export of share/icons/hicolor/RES/status/?

Bug

When running Syncthing GTK from Flatpak (without the syncthing-gtk dpkg package installed), the status icon in the system tray is invisible: It still exists and "takes up space" in the tray, and interacting with it is still possible (right click opens the context menu), but no icon is visible.

Blank space in system tray
Context menu still works

Affected version

at least the following version (I suspect this is also the only one, as support the KDE tray support was just enabled in the last commit: 9bd3403)

$ LC_ALL=C flatpak info me.kozec.syncthingtk

Syncthing GTK - GUI and notification area icon for Syncthing

          ID: me.kozec.syncthingtk
         Ref: app/me.kozec.syncthingtk/x86_64/stable
        Arch: x86_64
      Branch: stable
     Version: v0.9.4.3
     License: GPL-2.0
      Origin: flathub
  Collection: org.flathub.Stable
Installation: system
   Installed: 65.4?MB
     Runtime: org.gnome.Platform/x86_64/3.32
         Sdk: org.gnome.Sdk/x86_64/3.32

      Commit: da4c0bfb14715341526a54e3775cc44a983f8b9cb6dd3905907677056ed041e9
      Parent: 94cfa16344e9a868df255cf1145c2f7b1aaa7671ac79db33e455faf2c3f40747
     Subject: Enable Status Notifier / System Tray support for KDE (9bd34039)
        Date: 2019-08-08 13:11:30 +0000

Probable cause

I suspect this is caused by not exporting the directories share/icons/hicolor/RES/status/ to $XDG_DATA_DIRS so that KDE is unable to find the icons that have been requested via dbus (shortend log from dbus-monitor):

method call [...] path=/org/ayatana/NotificationItem/syncthing_gtk; interface=org.freedesktop.DBus.Properties; member=GetAll
   string "org.kde.StatusNotifierItem"
method return [...]
   array [
      dict entry(
         string "Id"
         variant             string "syncthing-gtk"
      [...]
      dict entry(
         string "IconName"
         variant             string "si-syncthing-white-unknown"
      )
     [...]
   ]

In for example, /var/lib/flatpak/app/me.kozec.syncthingtk/current/active/files/share/icons/hicolor/24x24/status/ there exists a si-syncthing-white-unknown.png and many other icons - but there are now status folders in /var/lib/flatpak/app/me.kozec.syncthingtk/current/active/export/share/icons/hicolor/RES/.

Also, the dpkg package (http://download.opensuse.org/repositories/home:/kozec/xUbuntu_18.10/amd64/syncthing-gtk_0.9.4.3_amd64.deb) has an emblems folder in /usr/share/icons/64x64/ - I do not know what role this folder plays in this issue.

If you have the system package for syncthing-gtk installed, it provides the icons in /usr/share (at least the packages from http://download.opensuse.org/repositories/home:/kozec/xUbuntu_18.10/ do so) KDE can find the icons and so the problem is not visible.

Blank window

I just installed it and that appeared when I opened

https://ibb.co/sFtwtSG

In terminal

pro@Asus:~$ flatpak run me.kozec.syncthingtk
Gtk-Message: 20:39:58.627: Failed to load module "canberra-gtk-module"
I StatusIcon    Using backend StatusIconGTK3 (primary)
Traceback (most recent call last):
  File "/app/lib/python2.7/site-packages/syncthing_gtk/app.py", line 242, in do_command_line
    if self.setup_connection():
  File "/app/lib/python2.7/site-packages/syncthing_gtk/app.py", line 385, in setup_connection
    self.daemon = Daemon()
  File "/app/lib/python2.7/site-packages/syncthing_gtk/daemon.py", line 321, in __init__
    self._read_config()
  File "/app/lib/python2.7/site-packages/syncthing_gtk/daemon.py", line 337, in _read_config
    raise InvalidConfigurationException("Failed to read daemon configuration: %s" % e)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 26: ordinal not in range(128)
W StatusIcon    StatusIcon: Using backend StatusIconAppIndicator (fallback)

(syncthing-gtk:2): Gdk-CRITICAL **: 20:39:58.852: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed

Ubuntu 21.04, Flatpak 1.10.2, Nvidia 1050 Ti with Nvidia 460 driver.

Logs flooding problem ( around ~20 times / seconds) with error "tk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed"

Hi !

Thank you a lot for your flatpak of Syncthing-GTK !

Every 30 seconds, I have around 20 times a log about this same error, stressing a lot my logs/ssd.
Is it possible to fix this warning/error, or at least, to only report it one time at start-up time please?

Thank you a lot !

janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:46:46 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
janv. 24 17:47:04 dev syncthing-gtk[2508]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed

Syncthing cmd in Gnome 42/PopOS 22.10 with errors

Since I upgraded to PopOS 22.10 with Gnome 42 I get the following errors

flatpak run me.kozec.syncthingtk
Gtk-Message: 12:04:15.313: Failed to load module "xapp-gtk3-module"
Gtk-Message: 12:04:15.313: Failed to load module "appmenu-gtk-module"

Two runtime required for SyncThing ?

When I try to remove the gnome Platform, I got this message:

flatpak remove org.gnome.Platform/x86_64/40


        ID                                Branch        Op
 1. [โœ—] org.gnome.Platform                40            r
 2. [ ] org.gnome.Platform.Locale         40            r

Error: Can't remove org.gnome.Platform/x86_64/40, it is needed for: me.kozec.syncthingtk
error: Failed to uninstall org.gnome.Platform: Can't remove org.gnome.Platform/x86_64/40, it is needed for: me.kozec.syncthingtk

But when I get remote information about syncThing, I got this message:

flatpak list --app  --app-runtime=org.freedesktop.Platform/x86_64/20.08 --columns=ref,version,branch,installation,size

me.kozec.syncthingtk                              org.freedesktop.Platform/x86_64/21.08

Do I really need two runtime ? It appears I do :-(

Doesn't Launch After Updating

When I try to launch Syncthing-GTK, the following error occurs. It even launched just before I applied the update but it crashed afterwards.

~$ flatpak run me.kozec.syncthingtk
Traceback (most recent call last):
  File "/app/bin/syncthing-gtk", line 32, in <module>
    from syncthing_gtk.app import App
  File "/app/lib/python2.7/site-packages/syncthing_gtk/app.py", line 19, in <module>
    from syncthing_gtk.notifications import Notifications, HAS_DESKTOP_NOTIFY
  File "/app/lib/python2.7/site-packages/syncthing_gtk/notifications.py", line 21, in <module>
    gi.require_version('Notify', '0.7')
  File "/app/lib/python2.7/site-packages/gi/__init__.py", line 133, in require_version
    (namespace, version))
ValueError: Namespace Notify not available for version 0.7

OS: Linux Mint 20
Version: 0.9.4.4

Create flatpak version with just binary (no GUI)

I'm looking to run just syncthing in a flatpak due to some system limitations I'm running into. I know I can run this flatpak with flatpak run --command=syncthing me.kozec.syncthingtk and just get the syncthing binary spun up. But it seems like a waste to also have all the GTK stuff installed too.

I managed to build a flatpak with just syncthing based on this package. I'm a newbie to flatpak so I'm not 100% sure how to get it into flathub myself. But before I took that step I wanted 1) to check if this was something you'd be interested/able to do, 2) if not, would you mind if I did, and 3) was there anything you did to get this set up? Contact syncthing devs for permission etc.

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.