TreeMap
A free, open-source disk-space visualizer. Squarified treemap, duplicate hunting, disk-full forecasting, and cleanup that only ever moves files to the Trash.
Omasend is a file-sharing app built for Omarchy. It speaks the LocalSend protocol, so it sends files, screenshots, recordings and text to any LocalSend app on your local network.
ProductivityRust · PythonGitHub @huacnleeOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
An Omarchy native LocalSend client
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Copy, paste, and send to your other devices.
Omasend is a desktop file-sharing app built for Omarchy,
and a native client for the LocalSend protocol. Send files,
folders, screenshots, recordings, and text over your local network — to Omasend or
to any LocalSend app — with no account or cloud upload. Available for Linux, macOS,
and Windows.
Supports Linux x86_64 and ARM64, macOS Apple Silicon and Intel, and Windows x86_64.
The installer selects the latest release for your device. For manual installation,
custom locations, or removal, see the installation guide.Read the full README ↗Copy, paste, and send to your other devices.
Omasend is a file-sharing app built for Omarchy, and a native client for the LocalSend protocol. Send files, folders, screenshots, recordings, and text over your local network — to Omasend or to any LocalSend app — with no account or cloud upload. Available for Linux, macOS, Windows, Android, and iOS.
Website · Download · Installation guide
Supports Linux x86_64 and ARM64, macOS 14+ (Apple Silicon and Intel), Windows x86_64, Android 9+ (ARM64 and x86_64), and iOS 15+.
macOS / Linux
curl -fsSL https://huacnlee.github.io/omasend/install.sh | sh
Windows PowerShell
irm https://huacnlee.github.io/omasend/install.ps1 | iex
mise
mise use -g github:huacnlee/omasend
Android
Download omasend-VERSION-android.apk from the latest release
on your phone. Open the APK, allow Install unknown apps → Allow from this source
for your browser or file manager if prompted, then tap Install. To update,
install the newer APK over the existing app.
iOS / iPhone
Download omasend-VERSION-aarch64-apple-ios-unsigned.ipa from the
latest release.
The IPA is unsigned and needs signing before installation; opening it in Files
will not install the app. Use Sideloadly on macOS or
Windows, or AltStore Classic, with your
Apple account. Follow the tool's setup instructions, import the IPA, and install
it on your connected iPhone. Enable Settings → Privacy & Security → Developer Mode
on iOS 16+ and trust your developer account under Settings → General → VPN & Device Management
when prompted. Free Apple accounts require refreshing the signature every seven days.
See the step-by-step mobile installation guide.
On either phone, keep Omasend open and connect both devices to the same local network. Allow Local Network access on iOS when prompted.
The installer selects the latest release for your device. For manual installation, custom locations, mise on macOS, or removal, see the installation guide.
Omasend is a native client for the LocalSend protocol, so LocalSend on Android, iOS, macOS, Windows, or Linux appears as a nearby device in Omasend, and Omasend appears in it. There is nothing to pair and no bridge in between.
224.0.0.167:53317, and on the IPv6 group ff12::fd3a:e420.
Omasend also probes the local IPv4 subnet, so a device that misses multicast still shows up.53317, with a certificate generated on first run and pinned by
fingerprint. Omasend only talks to peers that announce HTTPS, and never falls back to plaintext.Keep both devices on the same network, and allow TCP and UDP port 53317 through the firewall.
Use ctrl+v to paste, ctrl+o to add files, and enter to send.
On macOS, cmd+v and cmd+o also work. Closing the macOS window keeps
Omasend available from the Dock; choose Exit to quit.
The main application now runs on Native Shell in Rust mode. UI parity work is still in progress; see migration status and verification. Some features described above remain to be restored in the new interface.
Built with Native Shell in Rust mode and the LocalSend Rust core.
With a recent stable Rust toolchain, the latest NSH CLI, and your platform’s development libraries, start the native development host with automatic rebuilding on Rust source changes:
nsh dev
nsh.json declares the Rust App root. The default target is the native host
for your platform (AppKit on macOS, GTK on Linux, Win32 on Windows).
For iPhone UI development, use the iOS simulator host:
nsh dev --target ios
With Xcode, the aarch64-apple-ios Rust target, an Apple Development certificate,
and a provisioning profile containing your iPhone, build and install with:
python3 scripts/ios.py --sign "Apple Development: …" \
--profile /path/to/profile.mobileprovision --device YOUR_DEVICE_UDID
The script packages with NSH, adds the local network permission and Files access,
signs the app, and installs and launches it. The signed IPA is .nsh/out/Omasend.ipa.
Received files are available in Files → On My iPhone → Omasend → Received.
The iPhone interface uses safe areas, touch sized controls, bottom sheet menus,
a photo-first source chooser, multi-select system photo/video and file pickers,
and the system share sheet. Transfers run while the app is open.
For a public, unsigned IPA that users can sign with their own Apple account:
python3 scripts/ios.py
This writes dist/omasend-VERSION-aarch64-apple-ios-unsigned.ipa. It contains no
personal provisioning profile and requires signing before installation.
Android ARM64 and x86_64 builds require JDK 17, Android SDK platform 35, build tools 36,
NDK 27.2.12479018, and the aarch64-linux-android and x86_64-linux-android Rust targets:
export ANDROID_HOME=/path/to/Android/sdk
export ANDROID_NDK_HOME="$ANDROID_HOME/ndk/27.2.12479018"
export NSH_KEYSTORE_PASSWORD=YOUR_KEYSTORE_PASSWORD
python3 scripts/android.py --keystore /path/to/release.p12 --alias omasend
The signed APK is written to dist/. Android uses system photo/video and document
pickers, app-private received files, clipboard access, and read-only URI sharing.
Release builds use the same persistent keystore for updates. GitHub Actions reads
ANDROID_KEYSTORE_BASE64 and ANDROID_KEYSTORE_PASSWORD from repository secrets.
Build the standalone release executable with:
cargo build --release --locked
Linux builds require a C/C++ compiler, pkg-config, GTK 4.14 or later, OpenSSL,
and XCB development files. The native file picker uses xdg-desktop-portal.
Install wl-clipboard for clipboard support on Wayland.
MIT licensed. An independent community project.