LocalSend: Yakındaki cihazlar arasında dosya paylaşımı için açık kaynaklı çapraz platform çözümü
(localsend.org)- LocalSend, bulut ya da aracı sunucu olmadan aynı yerel ağdaki cihazlar arasında dosya alışverişi sağlayarak, AirDrop benzeri işlevleri birden çok platformda kullanmak isteyenler için faydalıdır
- Windows, macOS, Linux, Android ve iOS’u destekler; hesap veya giriş gerektirmeden kurulumdan hemen sonra yakındaki cihazlar arasında dosya aktarımı başlatılabilir
- Aktarım verileri yerel WiFi ağının dışına çıkmaz ve tüm aktarımlarda HTTPS şifrelemesi kullanılır
- Fotoğraf, video, belge, metin gibi dosya türlerinde kısıtlama yoktur; varsayılan kayıt konumu cihazın Downloads klasörüdür, ancak ayarlardan değiştirilebilir
- 70k+ GitHub Stars, 5M+ indirme ve 100+ katkı sunan geliştiriciye sahip ücretsiz açık kaynaklı bir projedir; reklam, izleyici ve gizli maliyet içermez
Yerel ağ tabanlı dosya paylaşımı
- LocalSend, bulut olmadan dosya paylaşımı sağlayan açık kaynaklı çapraz platform bir araçtır
- Desteklenen platformlar: Windows, macOS, Linux, Android, iOS
- Kullanım akışı basittir
- Her cihaza LocalSend kurulup çalıştırılır
- Fotoğraf, video, belge, metin veya başka bir dosya türü seçilir
- Yakındaki cihaza dokunulduğunda aktarım yerel ağ üzerinden gerçekleştirilir
- Hesap, giriş veya sunucu gerekmez
- İnternet bağlantısı olmadan çalışır ve veriler yerel WiFi ağı dışına çıkmaz
- WiFi ağının izin verdiği en yüksek hızda aktarım yapar ve bant genişliği sınırı yoktur
- Tüm aktarımlar HTTPS ile şifrelenir
- Ek güvenlik gerekirse PIN doğrulaması etkinleştirilebilir
- Dosyalar varsayılan olarak cihazın Downloads klasörüne kaydedilir; kayıt konumu ayarlardan değiştirilebilir
Proje durumu ve destek kanalları
- LocalSend %100 ücretsiz ve açık kaynaklıdır; reklam, takip ve gizli maliyet içermez
- Açık göstergeler 70k+ GitHub Stars, 5M+ indirme ve 100+ katkı sunan geliştirici düzeyindedir
- Web sürümü web.localsend.org adresinde sunulmaktadır
- Topluluk ve destek kanalları
- Hatalar GitHub Issues üzerinden bildirilebilir
1 yorum
Hacker News yorumları
En iyi yanı, büyük platformların çoğunda kullanılabilmesi ve GUI’nin kullanımının kolay olması
iOS uygulaması da harika
Ancak dikkat edilmesi gereken birkaç hata var: Windows’ta LocalSend penceresi açıkken çalışıyorsa (alım sonrası mı?) sistemin uykuya geçmesi engelleniyor; Linux’ta ise pencere görünmese bile aynı şey oluyor
Linux’ta LocalSend penceresi görünür halde boştayken masaüstü pencere yöneticisi hasarlı alanları sürekli güncellediği için CPU’yu anormal derecede fazla kullanıyor
Windows’ta “startup minimized” seçeneğini açıp başlangıçta çalışacak şekilde ayarlasanız bile pencerenin olduğu gibi açılması sık görülüyor; uyku sorununu düşününce arka planda çalışması da pek hoş değil
Tek şikâyetim, alıcı cihazın uyanık olması ve uygulamanın ön planda bulunması gerekmesi. En azından Android’de hızlı kaydetme seçeneği açıkken bile böyleydi
Quick Share’in (eski adıyla Nearby Share) Linux’ta da kullanılabilmesini isterdim. Chrome üzerinden olsa bile olur
Geçenlerde kardeşimle telefonlar hakkında konuştum; işi gereği iPhone kullanmak zorunda
ABD federal orman yangını itfaiyecisi ve geçen yaz boyunca hotshot ekiplerinde çalıştı; telefon sinyalinin de merkezi Wi-Fi yönlendiricisinin de olmadığı ücra yerlerde, ekip üyeleri dağılmadan önce AirDrop ile harita gibi dosyaları birbirlerine gönderdiklerini söyledi
Oldukça ilginç; bu araç da Android’den iPhone’a gönderme gibi senaryoları destekleyebilir mi?
Gizlilik politikası harika: https://localsend.org/#/privacy
“18 yaşın üzerinde olduğunuzu beyan edersiniz ve şirket, 18 yaşın altındakilerin hizmeti kullanmasına izin vermez” diyor
Ailemle, özellikle de çocuklarla birlikte kullanmayı düşünüyordum; bu bir engel oluyor
2024’te bile AirDrop’ın Apple ekosisteminin büyük bir avantajı olması şaşırtıcı
Teknik olarak yapılabilecek en basit özelliklerden biri; yenilik teknolojiden değil, Apple’da olup rakiplerde olmayan çıkar uyumundan geliyor
Çünkü rakipler hem birbirleriyle hem de Apple’la rekabet ediyor
Apple, yıllarca tescilli kablo eleştirilerini reddettikten sonra AB zorunluluğunun ardından iPhone 15’in USB-C bağlantı noktasını şöyle anlatıyor:
“Yeni USB-C konnektörüyle, iPhone 15’i şarj etmek için kullandığınız aynı kabloyla Mac’inizi veya iPad’inizi de şarj edebilirsiniz. Apple Watch’unuzu veya AirPods’unuzu iPhone 15’inizle de şarj edebilirsiniz. Kablo karmaşasına veda edin.”
https://www.apple.com/ca/iphone-15/
Bunun tekrar tekrar yaşanmasının nedeni, Apple ve Google’ın bilgisayarlar ile telefonlar arasındaki işlev farkını sürekli büyütmesi. Telefon tarafında tüketicilerin üçüncü taraf uygulamalar ve çevre birimleri kullanırken seçenekleri çok daha az
Bu yazılım için Techno Tim’in kullanım anlatım videosunu öneririm
Kullanım senaryolarını açıklıyor ve başlıca platformların tamamında gösteriyor: https://youtu.be/2ITezMkbAqE?si=-YVJq8iqwFYQ9gMr
Birkaç ayda bir böyle bir araç çıkıyor ama hiçbiri yaygın kullanıma ulaşamıyor
Böyle kör noktaların oluşması yalnızca çözünce para kazandırmamasından veya açık çözümlerin her zamanki gibi zor kullanılmasından kaynaklanmıyor
Bu durumda çözmemekte para var. Harika, basit ve evrensel bir çözüm olursa tüm dosyalar üzerinde bulut veri madenciliğini mümkün kılan ya da abonelik gerektiren büyük ve karmaşık bulut depolama sistemlerine olan talep azalır
Muhtemelen mümkün olduğunca çok uygulamada aynı protokolü uygulamak şeklinde olurdu
Sonunda yeterince ortak protokol kullanılıp uygulamaların çoğu birbiriyle konuşabilir hale gelmeli ki ağ etkisi oluşsun
Tabii gerçekten bu kadar derine inecek zamanım veya yeteneğim var mı bilmiyorum
LANDrop adlı başka bir açık kaynak projeyi memnuniyetle kullanıyorum
LocalSend’de takıldığım nokta aktarım hızının düşük olması. Nedense LANDrop’tan bile yavaş, SMB veya Croc’tan ise çok daha yavaş
Keşif tarafında da çok tuhaf bir sorun var. iPad’imden Windows PC’ye gönderemiyorum, ama PC’den iPad’e gönderebiliyorum
Sunucuyu yeniden başlatmak, güvenlik duvarını kapatmak vb. işe yaramadı. LAN’ım VLAN’larla biraz karmaşık olduğu için yalnızca bana özgü bir sorun olabilir diye issue olarak açmadım
Ama LANDrop’ta aynı sorun olmadığı için daha da tuhaf
İki GitHub deposunu karşılaştırınca LANDrop oldukça durağan görünüyor, LocalSend ise çok aktif
https://github.com/LANDrop/LANDrop
https://github.com/localsend/localsend
Gerçekte ne kadar önemli olduğunu bilmiyorum ama dikkate değer
iPhone’dan Android tabanlı araç ekranına dosya göndermeye çalıştığım deneyime göre LocalSend ve LANDrop en iyileriydi
Sharedrop, Snapdrop, Pairdrop, Arc gibi diğerleri ya internet gerektiriyordu ya da düzgün çalışmıyordu
Keşif için Bluetooth’u özlüyorum; küçük dosya aktarımı için de Bluetooth’u özlüyorum
Herhangi bir biçimde aynı ağda olma ihtiyacı ortadan kalkıyor, yakındaki cihazların algılanmasını sağlıyor ve günümüzde dizüstü ↔ akıllı telefon aktarımları için de iyi
Büyük dosya aktarımı için Wi‑Fi ile bir erişim noktası oluşturma ihtimali de var
Bluetooth tabanlı keşif, AirDrop’un güçlü yanı. Emin değilim ama Apple büyük aktarımlar için geçici bir Wi‑Fi oluşturuyor ve karşı taraf kısa süreliğine ona bağlanıyor gibi
Teleport [1] uygulaması keşif için Zeroconf kullanıyor ama çapraz platform desteği yetersiz
Avahi yapılandırması karmaşık, çakışmalar da oluyor ve bir daemon gerektiriyor; bu yüzden muhtemelen multicast’i doğrudan kullanmak daha iyi olabilir
Ek olarak, Bluetooth’ta zaten yerleşik dosya aktarımı (vCard vb.) olduğunu sık sık unutuyoruz
Bunu yalnızca GNOME’un gösterdiğini hatırlıyorum; o da Nautilus’un içinde değildi
WebDAV da benzer; bende SMB’den çok daha iyi çalışıyor. Ama çoğu kişi WebDAV’ın yerleşik olduğunu bilmiyor
Dün bir arkadaşım iPhone 11 Pro’sundan benim iPhone 15 Pro’ma AirDrop ile fotoğraf göndermeye çalıştı
Telefonların üst kısımlarını birbirine yaklaştırınca eğlenceli bir titreşim animasyonu çıktı ama dosya aktarılmadı
Sonra AirDrop’ta fotoğrafıma dokundu ve arkadaşımın tarafında “onay bekleniyor” göründü, ama bende hiç açılır pencere çıkmadı
Birkaç kez yeniden denedik, yeniden başlatmaya kadar gittik ama vazgeçtik; sonunda WhatsApp ile gönderdi ve ironik biçimde o sadece çalıştı
Apple’ın bu tür hataları düzeltmesi gerekiyor. Donanımdan ziyade yazılıma daha az odaklanıyor olmaları üzücü
İstemcinin hiçbir şey kurmasına gerek kalmaması için HTTP ön ucu olan eşdeğer bir araç var mı?
Eskiden böyle uygulamalar kullanmıştım ama bakımları durmuş ve artık çalışmıyor gibi görünüyor
python -m http.serverkullanıyorumKaynak makinede Python’u ayarlamak zahmetliyse ya da ağ karmaşıksa, hedef makinede uploadserver[1] çalıştırma yöntemi iyi iş görüyor
Adında “magic” geçen gösterişli araçların harici relay sunucularına dayanması konusunda temkinliyim
Öyle olmasa bile eski usul basit HTTP hoşuma gidiyor. Daha karmaşık bir şeye gerek yok ve çoğu durumda şifreleme de gerekmiyor
netcat/socat da bir çözüm olabilir ama Python ve HTTP kadar her yerde bulunmuyor. Üstelik komut büyüsünü de hiç aklımda tutamıyorum
[1]: https://pypi.org/project/uploadserver/
https://github.com/localsend/protocol?tab=readme-ov-file#51-browser-url
Yoksa HTTP ön ucuyla yükleme yapmayı mı kastettin?
python -m http.server 8000’ün daha iyi bir sürümüÖnce yazılımın bulunduğu bir masaüstü ya da dizüstü bilgisayarda bir sunucu başlatırsanız, web tarayıcısı olan herhangi bir istemci (Android, iOS, PlayStation, Kindle vb.) istemci yazılımı kurmadan web GUI üzerinden dosya yükleyebilir veya indirebilir
x86-64 Linux, Windows ve Mac OS için önceden derlenmiş ikili dosyalar https://github.com/akovacs/uploadserver/releases/ adresinden alınabilir
Apple Silicon için önceden derlenmiş ikili dosya henüz yok, ancak yeterli talep olursa eklenebilir; isterseniz nightly Rust araç zinciriyle kaynaktan da derleyebilirsiniz
Bulut servisleriyle veya
python -m http.server 8000ile karşılaştırıldığında sunucu Rust ile yazıldığı için çok hızlı, oldukça basit (derlenip strip edilmiş ikili dosya genelde 3 MB’ın altında) ve her şeyi yerel LAN üzerinden aktarıyor4 GB’tan büyük dosyaları da oldukça iyi işliyor gibi görünüyor ve yazılımı yalnızca tek bir makineye kurmak yeterli
Ayrıntılar için bkz. https://news.ycombinator.com/item?id=39665095