I2P’nin eklenti çerçevesi, çekirdek kuruluma dokunmadan router’ı genişletmenize olanak tanır. Mevcut eklentiler posta, bloglar, IRC, depolama, wiki’ler, izleme araçları ve daha fazlasını kapsar.
Güvenlik notu: Eklentiler, yönlendirici ile aynı izinlerle çalışır. Üçüncü taraf indirmelerine, imzalı herhangi bir yazılım güncellemesine davrandığınız gibi davranın—kurmadan önce kaynağı doğrulayın.
1. Bir Eklenti Yükleyin
- Eklentinin indirme URL’sini proje sayfasından kopyalayın.

- Router konsolunun Eklenti Yapılandırma sayfasını
açın.

- URL’yi kurulum alanına yapıştırın ve Eklentiyi Kur‘a tıklayın.

Router imzalı arşivi indirir, imzayı doğrular ve eklentiyi anında etkinleştirir. Çoğu eklenti, router’ın yeniden başlatılmasını gerektirmeden konsol bağlantıları veya arka plan hizmetleri ekler.
2. Eklentiler Neden Önemlidir
- Son kullanıcılar için tek tıkla dağıtım—
wrapper.configveyaclients.configdosyalarında manuel düzenleme gerekmez - Temel
i2pupdate.su3paketini küçük tutarken büyük veya niş özellikleri isteğe bağlı olarak sunar - İsteğe bağlı eklenti başına JVM’ler gerektiğinde süreç izolasyonu sağlar
- Router sürümü, Java çalışma zamanı ve Jetty ile otomatik uyumluluk kontrolleri
- Güncelleme mekanizması router’ı yansıtır: imzalı paketler ve artımlı indirmeler
- Konsol entegrasyonları, dil paketleri, kullanıcı arayüzü temaları ve Java olmayan uygulamalar (betikler aracılığıyla) desteklenir
plugins.i2pgibi düzenlenmiş “uygulama mağazası” dizinlerini etkinleştirir
3. Yüklü Eklentileri Yönetme
I2P Router Eklentisi üzerindeki kontrolleri kullanarak:
- Tek bir eklentiyi güncellemeler için kontrol et
- Tüm eklentileri aynı anda kontrol et (router yükseltmelerinden sonra otomatik olarak tetiklenir)
- Mevcut güncellemeleri tek tıkla yükle

- Servis kaydeden eklentiler için otomatik başlatmayı etkinleştir/devre dışı bırak
- Eklentileri temiz bir şekilde kaldır
4. Kendi Eklentinizi Oluşturun
- Paketleme, imzalama ve metadata gereksinimleri için eklenti spesifikasyonunu inceleyin.
- Mevcut bir binary veya webapp’i kurulabilir bir arşiv haline getirmek için
makeplugin.shkullanın. - Router’ın ilk kurulumları artımlı yükseltmelerden ayırt edebilmesi için hem kurulum hem de güncelleme URL’lerini yayınlayın.
- Kullanıcıların özgünlüğü doğrulamasına yardımcı olmak için proje sayfanızda checksumları ve imzalama anahtarlarını belirgin şekilde sağlayın.
Örnek mi arıyorsunuz? plugins.i2p adresindeki topluluk eklentilerinin kaynak koduna göz atın (örneğin, snowman örneği).
5. Bilinen Sınırlamalar
- Düz JAR dosyaları içeren bir eklentiyi güncellemek, Java sınıf yükleyicisinin sınıfları önbelleğe aldığı için yönlendirici yeniden başlatması gerektirebilir.
- Konsol, eklentinin aktif bir süreci olmasa bile Durdur düğmesini görüntüleyebilir.
- Ayrı bir JVM’de başlatılan eklentiler, geçerli çalışma dizininde bir
logs/dizini oluşturur. - Bir imzalayan anahtarı ilk kez göründüğünde otomatik olarak güvenilir; merkezi bir imzalama otoritesi yoktur.
- Windows bazen bir eklenti kaldırıldıktan sonra boş dizinleri geride bırakır.
- Java 5 JVM üzerinde yalnızca Java 6 için olan bir eklentiyi yüklemek, Pack200 sıkıştırması nedeniyle “eklenti bozuk” bildirimi verir.
- Tema ve çeviri eklentileri büyük ölçüde test edilmemiş durumda kalır.
- Otomatik başlatma bayrakları, yönetilmeyen eklentiler için her zaman kalıcı olmaz.
6. Gereksinimler ve En İyi Uygulamalar
- Eklenti desteği I2P 0.7.12 ve daha yeni sürümlerde mevcuttur.
- Güvenlik düzeltmelerini almak için router’ınızı ve eklentilerinizi güncel tutun.
- Kullanıcıların sürümler arasındaki değişiklikleri anlaması için özet sürüm notları ekleyin.
- Mümkün olduğunda, açık-ağ metadata maruziyetini en aza indirmek için eklenti arşivlerini I2P içinde HTTPS üzerinden barındırın.
7. İleri Okuma
- Eklenti belirtimi
- İstemci uygulama çerçevesi
- Paketleme araçları için I2P betikleri deposu