Git Product home page Git Product logo

desktop's Introduction

TrebleShot

  • TrebleShot is a file-sharing tool and this is the desktop intended version.
  • Still in alpha state and for this reason, nearly everything is subject to change and probably broken.
  • Uses Qt5 framework at its core and can work on Linux, Windows, MacOS.
  • Unless you want to help the development, please do not use the CI builds (the release tagged as continuous).

For Android version follow this link.

This project is work in progress. See what is happening here.

Build

Have these installed

  • cmake (3.2.0+) - CMake
  • qtbase5-dev (5.10+) - Qt5 Framework
  • libkf5dnssd-dev - KDE DNS-SD Development Package

Run these commands

  • cd to the root directory of the project
  • git submodule update --init to get the submodules.
  • Build trebleshot target with CMake or run ./build_trebleshot.sh on *nix

Latest CI Build https://github.com/genonbeta/TrebleShot-Desktop/releases/tag/continuous

Status

Build Status

desktop's People

Contributors

denilsonsa avatar luav avatar velitasali avatar xlotlu 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

desktop's Issues

Add updater

It would be nice to see option to "check for updates" and the built in updater

[Qt 5.11] SQL Not Executed by Threads Not Owning the Instance

According to what other developers stated, this issue happens on 5.11 and will probably happen on upper versions.

The error that occurs is that
QSqlDatabasePrivate::database: requested database does not belong to the calling thread.

Also opening a connection leads the previous connection to be closed.

The database is a local SQLite3 database and solution will be either one of these;

  • Always open a new connection for queries
  • Find a way to clone the connection owned by different threads

An example of database query

AppUtils::getDatabase()->publish(device);

AppUtils holds a static variable to provide access to the same instance.

getDatabase() returns a AccessDatabase instance which handles and eases the database operations.

qmdnsengine headers not found when building

It is likely that something changed on qmdnsengine's part (I'm just guessing), because there is not (or it isn't working) a correct path for its header files. Starting with a fresh clone, and after initializing the submodules:

In file included from /tmp/desktop/cmake-build-release/trebleshot_autogen/WNS5U4BGQZ/moc_DNSSDService.cpp:10,
                 from /tmp/desktop/cmake-build-release/trebleshot_autogen/mocs_compilation.cpp:3:
/tmp/desktop/src/broadcast/DNSSDService.h:47:10: fatal error: qmdnsengine/server.h: No such file or directory
   47 | #include <qmdnsengine/server.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [CMakeFiles/trebleshot.dir/build.make:110: CMakeFiles/trebleshot.dir/trebleshot_autogen/mocs_compilation.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from /tmp/desktop/src/ui/MainWindow.h:20,
                 from /tmp/desktop/src/main.cpp:21:
/tmp/desktop/src/broadcast/DNSSDService.h:47:10: fatal error: qmdnsengine/server.h: No such file or directory
   47 | #include <qmdnsengine/server.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Request for an executable file.

Hi, @velitasali . It's been quite a long time. I was wondering when an executable file of the desktop variant of Trebleshot will be available for download. Using USB cables are becoming tiring. By the way, I was wondering if you will be needing documents as I did for the Android version. That is Privacy policy and FAQs. And maybe a contributor's guide.
Once again, great job.

Suggestion: Use Warpinator for Linux sharing

Background:
Warpinator is an app released in Linux Mint 20 that allows desktops to share files with other desktops having it installed on them. It is written in python.

Request:
Kindly have a look at the implementation of the app. If possible try to use it for Linux sharing.

Declaimer:
I haven't personally used it cuz I don't have another desktop to test. It seems to only work between desktops running Linux and Warpinator installed.

Link:
https://github.com/linuxmint/warpinator

Side suggestion: It might be possible to talk to them ask them contribute to uprotocol, which might help shape it better.

MacOS Support?

The title says it supports Mac OS, but I can't seem to compile it

"Open download folder" button

It would be nice to have an Open Downloads folder button somewhere in the main window so it would be easy to access it.

Missing dlls

Hi, I just tried the 0.1.0 build on Windows 10 Home (TrebleShot-0.1.0-installer.exe) and got multiple errors about missing .dll during first start:

  • MSVCP140D.dll
  • VCRUNTIME140D.dll
  • ucrtbased.dll

I guess I need to install some version of Visual C++?

Desktop to desktop transfer stuck at "Pending"

Hi,
I was wondering if TrebleShot could allow pc to pc file transfer, so I set up two computers on the same network using TrebleShot and gave it a go.

I could go as far as setting up the transfer, but I get stuck right before the actual transfer takes place. On both devices, the transfers get stuck at "Pending".

Device 1: Desktop connected using Ethernet, Windows 10
Device 2: Surface Pro 4 connected using 5GHz network, Windows 10
I get the pending issue on both devices.

I'm not sure if a firewall is blocking the transfer, or is the application not designed to handle desktop to desktop transfers in the first place.

image

Can't connect when running on different networks

I run my computers on 192.168.0 and my WiFi on 192.168.1 and i can't get it to work. If i use other apps i can connect but TrebleShot seems to not work. I haven't confirmed that TrebleShot work proper yet so maybe someone else can verify that TrebleShot do work and can send files if running on the same network.

I use Total Commander from my phone and i can connect to my computers over LAN, but maybe something else is needed in TrebleShot to get it to work?

I tried to send a file to my computer but it couldn't connect to 192.168.0.200, but it seems that Share via browser worked. I entered http://192.168.1.113:58732 in my web browser on my computer and i was able to download the file.

Very jerky to scroll

The dialog Choose files to send - TrebleShot 0.1.0 seems to have issues with the system icons. Instead of a smooth scroll it will be very jerky.

32 or 64 bit?

I have used the provided installer but after installing the app wont run and asking to check whether it is 32 or 64 bit windows. Mine is 32, so will it run?

Very slow startup

It takes about 16 seconds to start TrebleShot. If i compare it with Adobe Premiere that will take 8 seconds it is very slow comparing to Adobe Premiere.

Uninstalling won't remove all files

When uninstalling it leaves two files in the c:\Program Files (x86)\TrebleShot
COPYING and trebleshot.ico. The TrebleShot folder in the Roaming folder is also not removed even if it was empty.

Build fails on Linux Ubuntu 16.04 LTS

Build fails on Linux Ubuntu 16.04 LTS x64 because of several issues:

  • Specified cmake_minimum_required(VERSION 3.8.2) is too high, 3.1.0 is sufficient according to the Qt5 documentation
  • <functional> header is missed in some sources
  • cmake on Linux fetches Qt headers from the system directory instead of the required custom installation, which fails the build

Hidden Files

Hidden files are also listed in file explorer. Option in preferences for show hidden files.

Impossible to send the files between PC - Android

I tried adding the android device running trebleshot on the PC via IP, on the the pc it found the phone after manually adding the IP, but doesn't send or recieve anything.

The android doesn't find the pc's IP (scanning for devices doesn't do anything. They're on the same wifi network and i turned on the trustZone for my device on the pc after i manually added it and turned on trustzone on android... Nothing.

I'd really like trebleshot to work so i tried multiple options as you can see, but this is probably some bugs.

Install directly from APT

It is easy for us than appimage for install, update etc (interest than snap because has regional download option)

Is this project still active?

Is this project still active? The last commit was in 2019. I hope that there is some work in progress behind the scenes.

A bit of good news and a few issues

Hey there!

First and foremost, thank you very much for Trebleshot. It's a great program.

Secondly, a bit of good news: I just found the desktop version out today, and packaged it up in GNU Guix for my own personal use. Since GNU Guix is a universal package manager (although not quite as famous as Snap or Flatpak), once a usable release is made, I could send the patch in to Guix upstream and all GNU/Linux users could be using this program with a mere guix install trebleshot, and future contributors could set up a development environment using a mere guix environment trebleshot. One could do so even now with the following commands and my package definition:

$ git clone https://github.com/trebleshot/desktop
$ cd desktop
$ curl https://raw.githubusercontent.com/peanutbutterandcrackers/guix-packages/master/trebleshot.scm -o trebleshot.scm
$ guix environment --load-path=`pwd` trebleshot

provided that they have guix installed on their machine (which is super easy using the installer script). I only write this information here just in case any contributor wants to join but can't be bothered to set up the development environment.

I just built Trebleshot and ran it (since I'm on Guix the host operating system does not really matter because guix does reproducible builds). And I ran into a few issues.

  1. It could not detect Trebleshot running on a Samsung SM-J100H (Android 4.4.4) phone.
  2. While it did detect Trebleshot running on a newer Lava A3_mini (Android 7.0) phone and another Redmi Note 9 Pro Max (Android 10 | MIUI Global 11.0.4) phone, I could not figure out how to send files to them, and get Failed to connect to the devices below: "device_name_here" error as reported by #33. Only, I am building from ecf0ec6.

Please do let me know if I can submit further information, or do other tests. I do have a couple of phones lying around (friends and family) and I would love to help in whatsoever small way that I can to make this project reach 1.0. Thank you once again for your hard work!

Failed to connect to the devices below

When I try to connect to send a file to device I get the following message:

Failed to connect to the devices below

image

I'm running TrebleShot-ecf0ec6-x86_64.AppImage

I can ping device, and apparently it's discovered as it got it's name that I set in the android app. Also I can use the browser to send file but not the desktop app which I need to send text.

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.