trebleshot / desktop

An Open-Source file sharing software for Linux, macOS and Windows allowing you to send and receive files over available connections, and pause and resume transfer process even when an error is given
GNU General Public License v2.0
33 stars 6 forks source link

A bit of good news and a few issues #35

Open peanutbutterandcrackers opened 3 years ago

peanutbutterandcrackers commented 3 years ago

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 https://github.com/trebleshot/desktop/issues/33. Only, I am building from ecf0ec654d08535047f92aeaa0474ceff93695ea.

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!

velitasali commented 3 years ago

Thanks for the help.

Your issue may be similar to #24, which is normal considering the state of the desktop app (it still being in alpha).

As for the packaging, that sounds nice. Does guix have a central repo or something?

peanutbutterandcrackers commented 3 years ago

@velitasali - Yes. Actually, guix contains package definitions and guix itself in the same repository (it is a design decision). But it also allows one to have their own personal channels. (It's like ubuntu PPAs but so much easier and better). Once this app reaches a usable state, I will send in a patch upstream.

I see that you are "working on a new communication protocol" for trebleshot desktop. May I ask how long it might take you to push something upstream for beta testing, please? I would be glad to help out in any way that I can. Please do let me know if there is anything I can do. (I wish I could contribute patches, myself, but due to my lack on knowledge, I can only volunteer for testing)

I am just super glad that we have a FLOSS alternative to proprietary share-stuff apps. With this last piece of the puzzle done (the desktop client), Trebleshot would rival all and every single file-sharing app out there!

velitasali commented 3 years ago

I see. Thank you, I will inform you all when there is a testable build.

peanutbutterandcrackers commented 3 years ago

I look forward to it!

peanutbutterandcrackers commented 3 years ago

Hey there!

Just checking in on this one. I hope you are doing well, lead dev.

I have been using and spreading Trebleshot in my circle and teaching them to use Trebleshot. I have even shown them how small the size footprint of Trebleshot is compared to the other proprietary softwares, and also making them aware of the fact that Trebleshot has no ads. And the feature in Trebleshot to share itself via Bluetooth is super easy and makes them really comfortable with using that.

I hope you are not discouraged, Captain. Trebleshot is a gem. And there are quite a few of us who are using it and are blessed by this awesome tool.

Hope I'll get to test Trebleshot Desktop out soon. (And maybe I should really learn some android programming too. Any pointers?)

velitasali commented 3 years ago

Thanks for the support. I really appreciate it.

I took a break due to time constraints, but, starting with this week, I will be continuing.

I was previously working on a library that will make the basic functionality of TrebleShot available to 3rd party software. A demo is almost ready.

Now I am working on the encryption support. Yesterday, I read a bit more about the topic and I am hoping to implement it in a week or so.

If you have can help with this, I would appreciate it :)

peanutbutterandcrackers commented 3 years ago

Awesome!

Forgive me, Captain, as I do not yet have the ability to contribute as an actual developer. But please do let me know if there is any way I can test things out. I would love to help in whatever small way that I can.

I am looking forward to the newer changes. And I am really glad that you are going to continue. This is great news!

I wish you all the very best! You are super awesome! (: :+1:

P. S: I will be very glad to test out the beta-builds of the encryption-ready Trebleshot on the few phones that I have near me. Please do write a small wiki page with the instructions so that more volunteers can join. Most of the people around me use android, hence I think I am in a position to test the changes out for a wide range of android versions: 4.x to 10.x (not all of them, but some).

velitasali commented 3 years ago

@peanutbutterandcrackers Thank you. Actually, after some reading (again), it looks like bounty castle (a library to generate certificates on-to-go) is the only choice for encryption support. I found out that KDE Connect has a simple approach (which also uses bounty castle) so it will be what my implementation is based upon. I can safely assume that I can get the encryption support ready in a day or two. Then, I will complete the API and release another version. Afterwards, I will modify the source code of TrebleShot and it will ready for testing.

I am not the tidiest person when it comes to documenting things, but I will try documenting the contribution basics when I can.

peanutbutterandcrackers commented 3 years ago

Awesome! I look forward to the changes and the instructions!