Skip to content

link2linux 0.1.0

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 26 Oct 11:24
· 74 commits to main since this release
9a2a84e

The first release: an Android phone and a Linux desktop pair once, then find
each other on the local network by themselves, and the phone's notifications
appear on the desktop.

Added

  • Pairing. Pair a phone by scanning the QR code the desktop shows. A phone
    that can't scan pairs by comparing a six-digit code on both screens instead.
  • Finding each other. Once paired, the desktop finds the phone on the local
    network through mDNS, or through the phone's own announcements where the
    network filters multicast, and reconnects by itself after the phone sleeps
    or changes networks.
  • Notifications. The phone's notifications appear on the desktop with their
    action buttons. Reply to messages from the desktop: inside the notification
    on KDE Plasma, and from the link2linux window elsewhere. Dismissing a
    notification on the desktop dismisses it on the phone too; this dismiss sync
    is on by default and can be turned off. Content that Android withholds from
    other apps, such as one-time codes, shows as hidden rather than as
    placeholder text.
  • Desktop app. Pages for pairing and notifications, and the connection
    status of each paired phone.
  • Phone app. For Android 8.0 and newer. Each feature asks for its Android
    permission only when you turn it on.
  • Downloads. A .deb, an .rpm and an AppImage for 64-bit x86 Linux, and a
    signed APK, each with a SHA-256 checksum and a build provenance attestation,
    plus a one-line installer for the desktop app.

Security

  • Everything stays on the local network: no account, no server and no relay.
  • Every connection is mutually authenticated TLS 1.3, with each device's own
    P-256 key pinned at pairing. The QR code's one-time secret and the six-digit
    code are bound to the TLS connection, so they can't be relayed to another
    device.
  • The desktop never accepts incoming connections: it dials the phone, and only
    addresses on its own local networks. The firewalld and ufw definitions that
    come with the packages open only mDNS and the beacon port, and only once you
    allow them.

Known limitations

  • Messages, calls, photos, files, the clipboard and screen mirroring are not
    in this release.
  • GNOME has no reply field inside notifications, so replies go through the
    link2linux window there.
  • There are no ARM64 builds and no Flatpak yet.

Install

Linux desktop, 64-bit x86

Install this version in one line. It picks the .deb on Debian and Ubuntu, the
.rpm on Fedora and openSUSE, and the AppImage elsewhere:

curl -fsSL https://codesensei-tushar.github.io/link2linux/install.sh | L2L_VERSION=v0.1.0 sh

Or download a package below: link2linux_amd64.deb, link2linux.x86_64.rpm,
or link2linux-x86_64.AppImage (which needs FUSE 2).

Android phone, 8.0 and newer

Download link2linux.apk on the phone and open it. If Android asks, allow your
browser to install apps.

Then open link2linux on the desktop and scan the QR code it shows with the
phone.

Verify

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify link2linux_amd64.deb --repo codesensei-tushar/link2linux

What's Changed

New Contributors

Full Changelog: https://github.com/codesensei-tushar/link2linux/commits/v0.1.0