howeyc / crocgui Goto Github PK
View Code? Open in Web Editor NEWGUI for croc
License: ISC License
GUI for croc
License: ISC License
Hello!
I installed the app successfully and try to make some settings or receive some files.
When using the input fields, like for the host settings or the passphrase, I am able to type into the input field but I'm not able to remove typos or the whole passphrase. Even mark and cut didn't work sadly.
Is it possible that fyne is not ready for Android 11 yet? Maybe things can be fixed using another type of input field? idk.
Thanks,
Bandie
Whitespace should be read as a dash when entered in a receive code. It doesn't occur in the regular word-list and is much easier to type on the Android keyboard than an actual dash.
The Croc GUI v1.4.1 on Android does not wrap text then typing out the log lines. You have to enable screen rotation and rotate the screen to see a bit more of the log line, but even then some log outputs are not fully readable.
i tried the app and it worked fine on wifi network but it failed to do so when i connected the devices with hotspot without internet.
what settings do i need to change in order to transfer files over hotspot/network that doesnt has internet.
if required, i will share the error code.
When typing the Receive Code on the on-screen keyboard on an android system the GUI should convert spaces automatically hyphens. This way one could avoid shifting the keyboard layout to special character input after each word. The current GUI v1.4.1 doesn't support this.
Maybe make this app in kotlin, it would be so much better, curremtly the ui is extremely buggy and impossible to use, threre is also no way to resume transfer and change download location
How to reproduce:
Smartphone: Mi 9t Pro, MIUI Global 12.0.4.0 (QFKEUXM), Android 10
Crocgui version: 1.7.0 (same issue with 1.5.0 and 1.6.0)
Thank you and regards
Sending works, Receiving works (into /tmp/crocgui-recvXXXXXXXX) but when the popup comes to select where to save, it is completely unclickable. Scrolling of the left pane and right pane works, tabbing is unresponsive, and the only thing I can click on are the crocgui window buttons for close/minimize/maximize.
Not sure if this is somehow related, but middle-click pasting into the Receive input line also doesn't work, only Paste from the clipboard.
Hi!
It would be really nice if Dark Mode automatically enabled if the user has that on in their preferences. I didn't realize dark mode existed until reading the issue tracker here.
Android documentation on that can be found here.
When sending an image/pdf, the file loses its filetype and its name changes to a 4 digit number. Not sure if this is intentional or a workaround of some sort, but its pretty annoying.
Would be nice to have it for changing its pattern to many simple ones, like currently, it's three random words, aren't they? So an option for making it two words, one word, random numbers with certain number of digits etc
Uhm, this thing https://github.com/schollz/croc#custom-code-phrase
Currently I can't run croc in debug mode on an Android. I don't see any option for it in the croc GUI v1.4.1. It would help much when hunting down errors.
I have just installed croc
All three computers are connected via wlan to the same dsl-router (and have a working connection to the internet)
works as expected: ubuntu -> ubuntu
works as expected: ubuntu -> windows7
not tested: windows7 -> ubuntu
error: android -> ubuntu
error: ubuntu -> android
error: windows -> android
since transfer ubuntu -> windows7 works i assume the problem lies on the android-10 side. Any ideas how to find out what went wrong?
do you know how the tranfer is done via tcp/ip ?
as far as i know android does not tolerate android-ip-server-ports below port 8000
Hi,
Is it possible to send folders?
Thank you.
croc is not compatible with older versions after upgrading to version 10.0
v9.6.16 was a breaking change so I have re-released it as v10.0.0 to signal that. clients must be >=v9.6.16 or >=v10 to be compatible.
When sending so many files that the file list pushes the "Send" button out of the screen, you can't press the "Send" button. A solution would be to make that view scrollable so you can scroll to the bottom of the send menu to press the "Send" button.
Selecting a large file in the file-picker (when sending a file) causes the UI to hang for some period of time. This appears to be roughly linear to the size of the file - a 400MB file hung the UI for 3 or 4 seconds, an 8gb one has hung the UI for well over a minute.
I'm not sure if the app is reading files into memory at the time they're selected for some reason, but I would imagine this isn't desired behavior in favor of streaming files into memory as they're sent.
Hi,
Could you explain what is the Network Local setting?
Thank you.
Hi, I'm using crocgui on a Xiaomi 11T with MIUI Global 12.5.5.
Whenever I try to send a file to my device it seems to download correctly, but after it finishes getting it, a file explorer pops up, and it doesn't show any way to save the file. If some screenshots or logs would be of help, I'm happy to provide them.
It would be so great to have the option to resume files.
Also if I transfer a folder and I receive 10 out of 50 files and the sender aborts the transfer, the files are gone and nowhere to be found.
for example, if I receive a PDF, the file will end in .pdf but android sees the file as a plain "File".
Currently the Android gui v 1.4.1 cannot be fully used in landscape orientation, simply because you can't scroll to the lower GUI elements. You only get to see the Relay Address and Ports. No access to anything below this. Unless you switch to portrait mode, but even then, depending on your phone model, you can see as low as Transfer Options: Disable Compression
When in landscape mode, the send button can go off screen after selecting a file to send. On the device that this happened to me, it only required selecting 1 file.
The device in question was a Vuzix M4000, which has a 854x480 resolution display. As far as I know, it has no portrait mode.
A cancel button would be necessary to suspend in case, needed. Currently, got to close the app and re-open it
CJK characters such as Japanese text are not displayed correctly.
They should be replaced with fonts that can display multiple languages, such as Noto Sans.
It would be nice if Croc could send text like the cli can do with croc send -t "hi"
Hello there, randomly saw this app on the f-droid starting page. Shortly looked at it, but the app icon distracts me from installing it. It's a really angry crocodile. It could be good on something like a Warez forum, but not on an app to privately share files :P.
I have installed the latest croc (1.10.1) via F-Droid on my OnePlus Nord 2. It works but the settings look broken:
After tapping every single text field or checkbox, the content appears:
I don't know if this happens only on OxygenOS but at least I can tell that I didn't see such a behavior in other apps.
The APK on F-droid is 50 MiB, that is really really big.
It would be nice if it was smaller.
Hey there,
Would you mind submitting this to the Fyne apps "store" as well as fdroid?
Hello!
Thank you so much for this app! It makes sharing files from my computer and phone so much easier!
My only problem is just a minor inconvenience. From other apps, when I press Share, Croc doesn't show up. It would be really nice if Croc showed up there with my other messaging apps!
Regardless, great job with this app! It's much quicker for me than having to open Signal Desktop on my laptop every time I need to share a file,
@howeyc Would you support an RFP @ F-Droid? IfF so, I'd happily open 1 up.
It would be nice if the users could swipe between the tabs, it's rather intuitive on Android.
I have absolutely no experience with Go, so I don't know if it's even feasible.
When sending multiple files through crocgui, I have to individually pick files one at a time, then re-open the file picker to grab another file. This can be a hassle if trying to send lots of small files in the same folder.
My phone is running LineageOS 16.0/Android 9 - to my knowledge, most of the gallery/file-picker APIs on newer API levels support multiple selections if the picker-intent is called with options to allow multiple selections.
Hi there, thanks for this app. I use it frequently to transfer files from my mac to android.
I would like to add a QR scanner as a feature. Will you accept my PR if i send in?
My current workflow is like this
I hope the workflow becomes like this
The title says it all. I rely a lot on dark and black themes on my phone.
Other apps do it like this:
Or something along these lines (could be another wording)
Could be in an "Appareance" section in the settings tab
Hello,
I cloned the repository into my local disk, then ran go build .
This is my output:
go: downloading fyne.io/fyne/v2 v2.1.4
go: downloading github.com/schollz/croc/v9 v9.5.6
go: downloading github.com/godbus/dbus/v5 v5.0.4
go: downloading github.com/fsnotify/fsnotify v1.4.9
go: downloading github.com/fredbi/uri v0.0.0-20181227131451-3dcfdacbaaf3
go: downloading github.com/yuin/goldmark v1.3.8
go: downloading github.com/go-gl/glfw/v3.3/glfw v0.0.0-20211024062804-40e447a793be
go: downloading github.com/goki/freetype v0.0.0-20181231101311-fa8a33aabaff
go: downloading github.com/srwiley/oksvg v0.0.0-20200311192757-870daf9aa564
go: downloading github.com/srwiley/rasterx v0.0.0-20200120212402-85cb7272f5e9
go: downloading golang.org/x/image v0.0.0-20200430140353-33d19683fad8
go: downloading github.com/go-gl/gl v0.0.0-20210813123233-e4099ee2221f
go: downloading golang.org/x/net v0.0.0-20220517181318-183a9ca12b87
go: downloading golang.org/x/crypto v0.0.0-20220518034528-6f7dac969898
# crocgui
./send.go:209:16: assignment mismatch: 2 variables but croc.GetFilesInfo returns 4 values
Issue has been moved to schollz/croc#556
For over a decade, XMPP clients can communicate over LAN and "mesh" by publishing their presence using Avahi (also referred to as "Zeroconf"); see XEP-0174: Serverless Messaging.
Avahi is a system which facilitates service discovery on a local network via the mDNS/DNS-SD protocol suite. This enables you to plug your laptop or computer into a network and instantly be able to view other people who you can chat with, find printers to print to or find files being shared.
Clients with XEP-0174 support: Gajim * and Kopete, and more...
*
Support to Gajim will be restored very soon
I am trying to use this between my windows PC and my android phone. For Windows I downloaded the zipped croc binary v8.6.11-757ed18
, on Android I use croc GUI v1.4.1
and croc v8.6.7
. The windows PC is connected to the internet through USB tethering of the android phone.
on the PC I run croc send "g:\some file.txt"
that gives me a receive code
on the android phone I start croc (I leave all the fields in the settings in their default state), enter the receive code and get this error:
Receive failed: could not connect to : found no addresses to connect
Then I ran this with --debug
a couple of times. I Realized that I must start the croc app on my Android phone after I execute the croc command on the PC and enter the receive code within 30 seconds, otherwise the croc session on the PC will time out and report the room empty (that's quite a tight time schedule, especially if you have to switch keyboard layouts on the android to type the hyphens). But even if all these preconditions are met, it still fails:
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info] 2021/03/26 08:22:36 starting TCP server on 9010
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info] 2021/03/26 08:22:36 starting TCP server on 9009
[debug] 08:22:36 croc.go:392: host: '', port: '9009'
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info] 2021/03/26 08:22:36 starting TCP server on 9012
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info] 2021/03/26 08:22:36 starting TCP server on 9013
[debug] 08:22:36 croc.go:398: got host '' and port '9009'
[debug] 08:22:36 tcp.go:56: starting with password 'pass123'
[info] 2021/03/26 08:22:36 starting TCP server on 9011
[debug] 08:22:36 croc.go:400: trying connection to :9009
[debug] 08:22:36 tcp.go:100: client 127.0.0.1:64851 connected
[debug] 08:22:36 comm.go:59: connected to ':9009'
[debug] 08:22:36 tcp.go:452: strong key: 3174eb9a61fd73c8da372e636cd3c07dd68b444d5b10d2122d96a28bb10f1fc0
[debug] 08:22:36 tcp.go:464: sending password
[debug] 08:22:36 tcp.go:473: waiting for first ok
[debug] 08:22:36 tcp.go:188: strongkey: 3174eb9a61fd73c8da372e636cd3c07dd68b444d5b10d2122d96a28bb10f1fc0
[debug] 08:22:36 tcp.go:200: waiting for password
[debug] 08:22:36 tcp.go:223: sending '9010,9011,9012,9013'
[debug] 08:22:36 tcp.go:234: waiting for answer
[debug] 08:22:36 tcp.go:488: sending room
[debug] 08:22:36 tcp.go:497: waiting for room confirmation
[debug] 08:22:36 tcp.go:510: all set
[debug] 08:22:36 croc.go:417: banner: 9010,9011,9012,9013
[debug] 08:22:36 tcp.go:265: room sto has 1
[debug] 08:22:36 croc.go:418: connection established: &{connection:0xc000224000}
[debug] 08:22:36 croc.go:420: waiting for bytes
[debug] 08:22:36 tcp.go:104: room: sto
[debug] 08:22:36 tcp.go:105: err: <nil>
[debug] 08:22:36 tcp.go:118: checking connection of room sto for &{connection:0xc000098038}
[debug] 08:22:36 tcp.go:126: room: {first:0xc000094240 second:<nil> opened:{wall:13839421806842422952 ext:578294501 loc:0x12dec20} full:false}
[debug] 08:22:36 croc.go:445: got ping
[debug] 08:22:36 croc.go:420: waiting for bytes
[debug] 08:22:36 croc.go:314: establishing connection
[debug] 08:22:36 comm.go:59: connected to 'localhost:9009'
[debug] 08:22:36 tcp.go:100: client [::1]:64852 connected
[debug] 08:22:36 tcp.go:452: strong key: d01a5de54c00818156d7c1762d5a0f75f0f16b17774a18e40fdbd651d7dda178
[debug] 08:22:36 tcp.go:464: sending password
[debug] 08:22:36 tcp.go:473: waiting for first ok
[debug] 08:22:36 tcp.go:188: strongkey: d01a5de54c00818156d7c1762d5a0f75f0f16b17774a18e40fdbd651d7dda178
[debug] 08:22:36 tcp.go:200: waiting for password
[debug] 08:22:36 tcp.go:223: sending '9010,9011,9012,9013'
[debug] 08:22:36 tcp.go:234: waiting for answer
[debug] 08:22:36 tcp.go:488: sending room
[debug] 08:22:36 tcp.go:497: waiting for room confirmation
[debug] 08:22:36 tcp.go:282: room sto has 2
[debug] 08:22:36 tcp.go:298: starting pipes
[debug] 08:22:36 tcp.go:510: all set
[debug] 08:22:36 croc.go:317: banner: 9010,9011,9012,9013
[debug] 08:22:36 croc.go:324: local connection established: &{connection:0xc000098058}
[debug] 08:22:37 tcp.go:118: checking connection of room sto for &{connection:0xc000098038}
[debug] 08:22:37 tcp.go:126: room: {first:0xc000094240 second:0xc000212000 opened:{wall:13839421806842422952 ext:578294501 loc:0x12dec20} full:true}
[debug] 08:22:37 tcp.go:128: rooms ready
[debug] 08:23:02 tcp.go:100: client [fe80::b08d:2bff:fe41:abde%Ethernet 5]:48426 connected
[debug] 08:23:02 tcp.go:104: room: pinglkasjdlfjsaldjf
[debug] 08:23:02 tcp.go:105: err: <nil>
[debug] 08:23:02 tcp.go:112: got ping
[debug] 08:23:02 tcp.go:100: client [fe80::b08d:2bff:fe41:abde%Ethernet 5]:48428 connected
[debug] 08:23:02 tcp.go:188: strongkey: 9d05debb6b8891b9a69c1b179f0a9da384026f5aa186ecbded2685444465dd78
[debug] 08:23:02 tcp.go:200: waiting for password
[debug] 08:23:02 tcp.go:104: room:
[debug] 08:23:02 tcp.go:105: err: bad password
[debug] 08:23:02 tcp.go:107: relay-[fe80::b08d:2bff:fe41:abde%Ethernet 5]:48428: bad password
[debug] 08:23:06 croc.go:305: discoveries: [address: fe80::b08d:2bff:fe41:abde%Ethernet 5, payload: ok]
[debug] 08:23:06 croc.go:305: discoveries: [address: 192.168.230.205, payload: ok]
The android phone reports in the same sense:
Receive failed: could not connect to: [fe80:8597:f74c:28d5:778c%rndis0]:9009: incorrect passphrase
I assure you that I entered the correct password, including the hyphens between the words.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.