Repository navigation
link2linux 0.1.1
Pre-release
Pre-release
Keeps more of the phone's private content to the phone, makes the desktop app
share less with other programs on the computer, and lets the computer pair and
connect over the phone's own hotspot.
Added
- One-time codes stay on the phone. Notifications that look like they hold
a sign-in, payment or verification code, in English or one of thirteen other
languages, reach the computer as "One-time code hidden. Check your phone",
with no text, pictures or actions, on every Android version. They can still
be dismissed from the computer. "Keep one-time codes on your phone" on the
phone's Notifications screen turns this off; it is on by default.
Fixed
- The phone keeps listening, announcing and sending beacons while it hosts a
Wi-Fi hotspot, or USB or Bluetooth tethering, and has no other network, so a
computer that joins the phone's hotspot finds it.
Security
- The desktop's private key is in the keyring. The key that identifies the
desktop to your phones now lives in the system keyring (the Secret Service of
GNOME Keyring, KWallet or KeePassXC) instead of a file. A key from 0.1.0 moves
there on the first start, and its file is overwritten and deleted. Without a
keyring, the key stays in a file only you can read, as before. If the keyring
that holds the key is locked or not running, the app says so and offers to
try again, rather than making a new key that your phones wouldn't know. Once
the key has moved, 0.1.0 no longer finds it: going back to 0.1.0 means
pairing your phones again. - Pop-ups hide the notification's text. Desktop pop-ups pass through the
desktop's notification service, where other apps can read them, so a pop-up
now only names the phone's app and says "New notification". The whole
notification is in the link2linux window, which a click on the pop-up opens.
The new Settings page can turn the text back on. Even then, pop-ups never
show it while the screen is locked, and notifications the phone's app marked
secret get no pop-up at all on a locked screen. - Pictures stay off the disk. Pictures that come with notifications are
kept in your login session's runtime folder, which is cleared at logout, or
only in memory without one. The pictures 0.1.0 saved in its data folder are
deleted, and a phone's pictures are deleted when you unpair it. - The desktop app's memory is closed to other programs. Other programs you
run can no longer attach a debugger to the app or read its memory, and it
writes no core dumps. The window's web view runs in separate processes that
this doesn't cover.
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.1 shOr 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/link2linuxWhat's Changed
- Download the release files straight from the website's buttons by @codesensei-tushar in #185
- Keep the phone findable while it hosts a hotspot or tethering by @codesensei-tushar in #186
- Keep notifications that hold a one-time code on the phone by @codesensei-tushar in #187
- Show a notice on the desktop when the phone keeps a one-time code by @codesensei-tushar in #188
- Keep the desktop's private key in the system keyring by @codesensei-tushar in #189
- Hide the notification's text in desktop pop-ups by @codesensei-tushar in #190
- Add a settings page with a switch for pop-up text by @codesensei-tushar in #191
- Keep notification pictures off the disk and the app's memory private by @codesensei-tushar in #192
- Show why the desktop app couldn't start, with a way to try again by @codesensei-tushar in #193
- Release 0.1.1 by @codesensei-tushar in #194
Full Changelog: v0.1.0...v0.1.1