{"id":19669807,"url":"https://github.com/Martichou/rquickshare","last_synced_at":"2025-04-29T00:31:08.371Z","repository":{"id":222184620,"uuid":"756494926","full_name":"Martichou/rquickshare","owner":"Martichou","description":"Rust implementation of NearbyShare/QuickShare from Android for Linux and macOS.","archived":false,"fork":false,"pushed_at":"2025-04-08T02:15:28.000Z","size":4387,"stargazers_count":2057,"open_issues_count":29,"forks_count":38,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-04-21T10:12:18.923Z","etag":null,"topics":["android","linux","macos","nearbyshare","quickshare","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Martichou.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-02-12T19:19:38.000Z","updated_at":"2025-04-21T01:44:55.000Z","dependencies_parsed_at":"2024-03-24T21:25:34.311Z","dependency_job_id":"e2981bb1-0539-436f-bf8e-e0a6e3a3e68a","html_url":"https://github.com/Martichou/rquickshare","commit_stats":null,"previous_names":["martichou/rquickshare"],"tags_count":29,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Martichou%2Frquickshare","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Martichou%2Frquickshare/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Martichou%2Frquickshare/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Martichou%2Frquickshare/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Martichou","download_url":"https://codeload.github.com/Martichou/rquickshare/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251410250,"owners_count":21584986,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","linux","macos","nearbyshare","quickshare","rust"],"created_at":"2024-11-11T17:01:16.649Z","updated_at":"2025-04-29T00:31:08.365Z","avatar_url":"https://github.com/Martichou.png","language":"Rust","readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003erquickshare\u003c/h1\u003e\n\n  \u003cp\u003e\n    \u003cstrong\u003eNearbyShare/QuickShare for Linux and MacOS\u003c/strong\u003e\n  \u003c/p\u003e\n  \u003cp\u003e\n\n[![CI](https://github.com/Martichou/rquickshare/actions/workflows/build.yml/badge.svg)](https://github.com/Martichou/rquickshare/actions)\n[![CI](https://github.com/Martichou/rquickshare/actions/workflows/lint.yml/badge.svg)](https://github.com/Martichou/rquickshare/actions)\n\n  \u003c/p\u003e\n\u003c/div\u003e\n\n![demo image](.github/demo.png)\n\nInstallation\n--------------------------\n\nYou simply have to download the latest release.\n\n**Important notes:**\n- The minimum GLIBC version supported is included in the pkg name.\n  - You can check yours with `ldd --version`.\n- RQuickShare is distributed with two version (main \u0026 legacy):\n  - Legacy is for compatibility with older Ubuntu versions.\n  - Main is for future support of newer versions of Ubuntu.\n\n#### macOS\n\nSimply install the .dmg.\n\nNote that you may have to first allow the app to install under `Settings \u003e Privacy \u0026 Security \u003e Security` (you should see a dialog asking for permission)\n\n#### Linux\n\n##### Install dependencies\n\nRQuickShare requires one of the following libraries to be installed:\n\n- `libayatana-appindicator`\n- `libappindicator3`\n\nThe files should (in theory) install those dependencies by themselves, but if this is not the case you may have to install those manually.\n\n##### Install rquickshare\n```bash\nsudo dpkg -i r-quick-share_${VERSION}.deb\n```\n\n#### Debian\n```bash\nsudo dpkg -i r-quick-share_${VERSION}.deb\n```\n\n#### RPM\n```bash\nsudo rpm -i r-quick-share-${VERSION}.rpm\n```\n\n#### DNF (preferred over RPM)\n```bash\nsudo dnf install r-quick-share-${VERSION}.rpm\n```\n\n#### AppImage (no root required)\n\nAppImage is a little different. There's no installation needed, you simply have to give it the executable permission (+x on a chmod) to run it.\n\n```bash\nchmod +x r-quick-share_${VERSION}.AppImage\n```\n\nYou can then either double click on it, or run it from the cmd line:\n\n```bash\n./r-quick-share_${VERSION}.AppImage\n```\n\n#### Snap\n\nThe snap is not yet on the store, but you can install it with the following (you may need sudo):\n\n```bash\nsnap install --dangerous r-quick-share_${VERSION}.snap\n```\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eUnofficial Installation Methods\u003c/summary\u003e\n\n#### AUR (Arch)\n\nFor Arch Linux, you can install it from the AUR by using an AUR helper like yay:\n\n```bash\nyay -S r-quick-share\n```\n\n### Nix\n\nAvailable here: [NixOS](https://search.nixos.org/packages?channel=24.05\u0026show=rquickshare\u0026from=0\u0026size=50\u0026sort=relevance\u0026type=packages\u0026query=rquickshare)\n\nA nix-shell will temporarily modify your $PATH environment variable. This can be used to try a piece of software before deciding to permanently install it.\n\n```bash\n$ nix-shell -p rquickshare\n```\n\u003c/details\u003e\n\n---\n\nLimitations\n--------------------------\n\n- **Wi-Fi LAN only**. Your devices need to be on the same network for this app to work.\n\nFAQ\n--------------------------\n\n### My Android device doesn't see my laptop\n\nMake sure both your devices are on the same WiFi network. mDNS communication should be allowed on the network; this may not be the case if you're on a public network (coffee shops, airports, etc.).\n\n### My laptop doesn't see my Android device\n\nFor some reason, Android doesn't broadcast its mDNS service all the time, even when in \"Everyone\" mode.\n\nThe first solution (implemented in RQuickShare for Linux) is to broadcast a bluetooth advertisement so that Android will then make its mDNS available.\nOf course, for this you need to have bluetooth on your laptop/desktop. If you don't have that, continue reading.\n\nAs a workaround, you can use the \"[Files](https://play.google.com/store/apps/details?id=com.google.android.apps.nbu.files)\" app on your Android device and go to the \"Nearby Share\" tab (if it's not present, continue reading).\n\nA second workaround is to download a Shortcut maker (see [here](https://xdaforums.com/t/how-to-manually-create-a-homescreen-shortcut-to-a-known-unique-android-activity.4336833)) to create a shortcut to the particular intent:\n\n- Method A:\n\t- Activity: `com.google.android.gms.nearby.sharing.ReceiveSurfaceActivity`\n\n- Method B:\n\t- Action: `com.google.android.gms.RECEIVE_NEARBY`\n\t- Mime type: `*/*`\n\n_Note: Samsung did something shady with Quick Share, so the above workaround may not work. Unfortunately, there's no alternative at the moment. Sorry._\n\n### When sharing a file, my phone appears and disappears \"randomly\"\n\nTLDR: This is normal if you're just using bluetooth (as explained in the previous point).\n\nAndroid will see that your laptop/desktop is trying to share a file and will reveal itself. But for some reason, Android will de-register its service from time to time and will only then be revealed again once it detects the bluetooth message again.\n\n### Once I close the app, it won't reopen\n\nMake sure the app is really closed by running:\n\n```bash\nps aux | grep r-quick-share\n```\n\nIf you see that the process is still running, it's because the app is not closed. This may be an intended behavior: when closing the window, the app won't stop and instead is still running and accessible via the system tray icon. However, if your distribution doesn't support/hasn't enabled this, it may be an issue for you.\n\nIf you want to **really** close the app when clicking on the close button, you can change that inside the app by clicking on the three dots and then \"Stop app on close\".\n\n### My firewall is blocking the connection\n\nIn this case, you may want to configure a static port to allow it in your firewall. You can do so by modifying the config file as follow:\n\n```bash\n# linux\nvim ./.local/share/dev.mandre.rquickshare/.settings.json\n\n# mac\nvim Library/Application\\ Support/dev.mandre.rquickshare/.settings.json\n\n# to be sure\nfind $HOME -name \".settings.json\"\n```\n\n\u003e [!WARNING]\n\u003e\n\u003e The json must stay valid after your modification; for example, if \"port\" is the last item of the JSON it must not have a comma after it, otherwise the config will be reset.\n\n```json\n{\n\t...existing_config...,\n\t\"port\": 12345\n}\n```\n\nBy default the port is random (the OS will decide).\n\n### The app opens but I just get a blank window or cannot run it.\n\nThis happens for some users running Linux + NVIDIA cards.\n\nThe workaround is to start RQuickShare with an env variable defined as follows:\n\n```bash\nenv WEBKIT_DISABLE_COMPOSITING_MODE=1 rquickshare\n```\n\nAlternatively, you may try the `legacy` variant.\n\nWIP Notes\n--------------------------\n\n`rquickshare` is still in development (WIP) and currently only supports Linux even though it should be compatible with macOS too. Keep in mind that the design may change between versions, so flexibility is key.\n\nGot feedback or suggestions? We'd love to hear them! Feel free to open an issue and share your thoughts.\n\nCredits\n--------------------------\n\nThis project wouldn't exist without those amazing open-source project:\n\n- https://github.com/grishka/NearDrop\n- https://github.com/vicr123/QNearbyShare\n\n\nContributing\n--------------------------\n\nPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.\n","funding_links":[],"categories":["Rust","Table of Contents","android"],"sub_categories":["File Sharing"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMartichou%2Frquickshare","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMartichou%2Frquickshare","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMartichou%2Frquickshare/lists"}