I know the title sounds a little strange but hear me out. The time tracking software I use for work doesn’t work on Wayland, unless I’m using Gnome as my DE. They have an extension that allows it to work in this case. Personally, I don’t enjoy Gnome on my desktop (I use it on my laptop). Is there a way for me to get the functionality that this extension provides on KDE so that I can use Wayland on my desktop as well?
Time tracking software:
Linux install script:
EDIT: I have included more files in the codeberg repo. I hope this helps.
Looks useful. So this software detects how long you spend on what app?
This may be compositor dependent but just a guess. Thats a problem of Wayland (currently)
The port will be huge and just making the extension run not enough.
Wayland doesn’t need to be a problem. The extension is running within Gnome, after all. Existing code will need to be rewritten, but extensions at this privilege level should be more than capable of doing what this program is doing.
In theory someone could write a GJS wrapper to get basic Gnome extensions to run on KDE but if there’s any kind of GUI modification/interaction involved, things will quickly break down.
Pretty much. My company has it set to track the following:
- Periodic screenshots
- Mouse and keyboard activity
- Apps used
- URLs visited
All of this is combined to determine how active you were (as a percentage), you can then try and determine how much time was spent on productive vs non-productive work. However, we use it as a glorified timesheet.
If the tracking software is open source what is stopping employees from changing source code to their advantage ?
It’s not open source. I just added it to codeberg for easy sharing to ask this question
I dont think they actually take screenshots, do they? That would be awfully inefficient. You can get the window titles in better ways.
the URL stuff should use a browser extension to tell them that name.
If that app really takes screenshots and extracts URLs from them, it is pretty overcomplex. But that improves platform-independence a lot
It takes screenshots that get posted to a user dashboard for management to check if needed.
I don’t have anything useful to say but that sounds fixing dystopian.
I hope you leave easter eggs
The GNOME extension appears to get the currently focused window information (ie name, title, PID and executable name) and make this information available over DBUS for the client binary.
The client binary calls
gnome-screenshot -f
and I assume gives a path that the client binary then sends to Hubstaff servers.A janky suggestion would be to create a Kwin Script that pulls the active window information, sends it (somehow) to a DBUS service that can provide it to the client binary and create a wrapper script around
spectacle
to pretend to begnome-screenshot
(egspectacle -b -f $@
)I don’t know if this would work fully though as the client binary strings seem to hint it checks the running version of GNOME Shell, and without an account I can’t see if this is a hard requirement or a “Hey, this is broken, we’ll try our best!” type thing.
In theory, someone could write a tool that will run the extension’s code and translate it into KDE compatible code. I suspect this will be brittle as hell, and most GUI interaction features will probably be broken, but it could be done.
In practice, I don’t think such a wrapper exists. Either the application needs to be ported or you or someone else will need to set up such a wrapper hack.
What I’d recommend instead is looking for Gnome extensions to make Gnome feel more KDE like. Task bars and start menus can all be added to Gnome, and you can install all the KDE tools you like (Dolphin, Konqueror, you name it) without any extensions at all. Extensions like dash to panel may not match KDE exactly, but you can cobble together something functional much faster than porting this application tracking tool will ever be.