OnionShare’in Geliştirilmesi¶
Birlikte Çalışma¶
OnionShare, projeyi tartışmak, sorular sormak, fikirleri ve tasarımları paylaşmak ve gelecekteki geliştirmeler için planlar yapmak için açık bir Keybase ekibine sahiptir. (Ayrıca OnionShare adresleri gibi, OnionShare topluluğundaki diğer kişilere uçtan uca şifrelenmiş doğrudan mesajlar göndermenin kolay bir yoludur.) Keybase’i kullanmak için Keybase uygulamasını indirin, bir hesap oluşturun ve bu ekibe katılın. Uygulama içinde “Teams” bölümüne gidin, “Join a Team” düğmesine tıklayın ve “onionshare” yazın.
OnionShare ayrıca geliştiricilerin ve tasarımcıların projeyi tartışmaları için bir e-posta listesine sahiptir.
Kodlara Katkıda Bulunma¶
OnionShare source code is to be found in this Git repository: https://github.com/onionshare/onionshare
If you’d like to contribute code to OnionShare, it helps to join the Keybase team and ask questions about what you’re thinking of working on. You should also review all of the open issues on GitHub to see if there are any you’d like to tackle.
Kodlara katkıda bulunmaya hazır olduğunuzda GitHub deposunda bir çekme isteği açın, proje yöneticilerinden biri onu inceleyecek ve muhtemelen sorular soracak, değişiklikler isteyecek, reddedecek veya projeyle birleştirecektir.
Geliştirmeye Başlama¶
OnionShare is developed in Python.
To get started, clone the Git repository at https://github.com/onionshare/onionshare/ and then consult the cli/README.md
file to learn how to set up your development environment for the command-line version, and the desktop/README.md
file to learn how to set up your development environment for the graphical version.
Bu dosyalar, platformunuz için bağımlılıkları kurmak ve kaynak ağacından OnionShare’i çalıştırmak için gerekli teknik talimatları ve komutları içerir.
Hata ayıklama ipuçları¶
Ayrıntılı mod¶
Geliştirme sırasında, OnionShare’i bir terminalden çalıştırmak ve komuta --verbose
(veya -v
) seçeneklerini eklemek faydalıdır. Bu, terminale birçok yararlı mesajlar, örneğin belirli nesneler başlatıldığında, olaylar gerçekleştiğinde (düğmeler tıklandı, ayarlar kaydedildi veya yeniden yüklendi gibi) ve diğer hata ayıklama bilgileri yazdırır. Örneğin:
$ poetry run onionshare-cli -v ~/Documents/roms/nes/Q-bert\ \(USA\).nes
╭───────────────────────────────────────────╮
│ * ▄▄█████▄▄ * │
│ ▄████▀▀▀████▄ * │
│ ▀▀█▀ ▀██▄ │
│ * ▄█▄ ▀██▄ │
│ ▄█████▄ ███ -+- │
│ ███ ▀█████▀ │
│ ▀██▄ ▀█▀ │
│ * ▀██▄ ▄█▄▄ * │
│ * ▀████▄▄▄████▀ │
│ ▀▀█████▀▀ │
│ -+- * │
│ ▄▀▄ ▄▀▀ █ │
│ █ █ ▀ ▀▄ █ │
│ █ █ █▀▄ █ ▄▀▄ █▀▄ ▀▄ █▀▄ ▄▀▄ █▄▀ ▄█▄ │
│ ▀▄▀ █ █ █ ▀▄▀ █ █ ▄▄▀ █ █ ▀▄█ █ ▀▄▄ │
│ │
│ v2.3.3 │
│ │
│ https://onionshare.org/ │
╰───────────────────────────────────────────╯
[May 10 2021 18:24:02] Settings.__init__
[May 10 2021 18:24:02] Settings.load
[May 10 2021 18:24:02] Settings.load: Trying to load /home/user/.config/onionshare/onionshare.json
[May 10 2021 18:24:02] Common.get_resource_path: filename=wordlist.txt
[May 10 2021 18:24:02] Common.get_resource_path: filename=wordlist.txt, path=/home/user/code/onionshare/cli/onionshare_cli/resources/wordlist.txt
[May 10 2021 18:24:02] ModeSettings.load: creating /home/user/.config/onionshare/persistent/tattered-handgun-stress.json
[May 10 2021 18:24:02] ModeSettings.set: updating tattered-handgun-stress: general.title = None
[May 10 2021 18:24:02] ModeSettings.set: updating tattered-handgun-stress: general.public = False
[May 10 2021 18:24:02] ModeSettings.set: updating tattered-handgun-stress: general.autostart_timer = 0
[May 10 2021 18:24:02] ModeSettings.set: updating tattered-handgun-stress: general.autostop_timer = 0
[May 10 2021 18:24:02] ModeSettings.set: updating tattered-handgun-stress: general.legacy = False
[May 10 2021 18:24:02] ModeSettings.set: updating tattered-handgun-stress: general.client_auth = False
[May 10 2021 18:24:02] ModeSettings.set: updating tattered-handgun-stress: share.autostop_sharing = True
[May 10 2021 18:24:02] Web.__init__: is_gui=False, mode=share
[May 10 2021 18:24:02] Common.get_resource_path: filename=static
[May 10 2021 18:24:02] Common.get_resource_path: filename=static, path=/home/user/code/onionshare/cli/onionshare_cli/resources/static
[May 10 2021 18:24:02] Common.get_resource_path: filename=templates
[May 10 2021 18:24:02] Common.get_resource_path: filename=templates, path=/home/user/code/onionshare/cli/onionshare_cli/resources/templates
[May 10 2021 18:24:02] Web.generate_static_url_path: new static_url_path is /static_4yxrx2mzi5uzkblklpzd46mwke
[May 10 2021 18:24:02] ShareModeWeb.init
[May 10 2021 18:24:02] Onion.__init__
[May 10 2021 18:24:02] Onion.connect
[May 10 2021 18:24:02] Settings.__init__
[May 10 2021 18:24:02] Settings.load
[May 10 2021 18:24:02] Settings.load: Trying to load /home/user/.config/onionshare/onionshare.json
[May 10 2021 18:24:02] Onion.connect: tor_data_directory_name=/home/user/.config/onionshare/tmp/tmpw6u0nz8l
[May 10 2021 18:24:02] Common.get_resource_path: filename=torrc_template
[May 10 2021 18:24:02] Common.get_resource_path: filename=torrc_template, path=/home/user/code/onionshare/cli/onionshare_cli/resources/torrc_template
Connecting to the Tor network: 100% - Done
[May 10 2021 18:24:10] Onion.connect: Connected to tor 0.4.5.7
[May 10 2021 18:24:10] Settings.load
[May 10 2021 18:24:10] Settings.load: Trying to load /home/user/.config/onionshare/onionshare.json
[May 10 2021 18:24:10] Web.generate_password: saved_password=None
[May 10 2021 18:24:10] Common.get_resource_path: filename=wordlist.txt
[May 10 2021 18:24:10] Common.get_resource_path: filename=wordlist.txt, path=/home/user/code/onionshare/cli/onionshare_cli/resources/wordlist.txt
[May 10 2021 18:24:10] Web.generate_password: built random password: "tipping-colonize"
[May 10 2021 18:24:10] OnionShare.__init__
[May 10 2021 18:24:10] OnionShare.start_onion_service
[May 10 2021 18:24:10] Onion.start_onion_service: port=17645
[May 10 2021 18:24:10] Onion.start_onion_service: key_type=NEW, key_content=ED25519-V3
[May 10 2021 18:24:14] ModeSettings.set: updating tattered-handgun-stress: general.service_id = omxjamkys6diqxov7lxru2upromdprxjuq3czdhen6hrshzd4sll2iyd
[May 10 2021 18:24:14] ModeSettings.set: updating tattered-handgun-stress: onion.private_key = 6PhomJCjlWicmOyAAe0wnQoEM3vcyHBivrRGDy0hzm900fW5ITDJ6iv2+tluLoueYj81MhmnYeTOHDm8UGOfhg==
Compressing files.
[May 10 2021 18:24:14] ShareModeWeb.init
[May 10 2021 18:24:14] ShareModeWeb.set_file_info_custom
[May 10 2021 18:24:14] ShareModeWeb.build_zipfile_list
[May 10 2021 18:24:14] Web.start: port=17645
* Running on http://127.0.0.1:17645/ (Press CTRL+C to quit)
Give this address to the recipient:
http://onionshare:tipping-colonize@omxjamkys6diqxov7lxru2upromdprxjuq3czdhen6hrshzd4sll2iyd.onion
Press Ctrl+C to stop the server
onionshare/common.py
içinden Common.log
yöntemini çalıştırarak kendi hata ayıklama mesajlarınızı ekleyebilirsiniz. Örneğin:
common.log('OnionShareGui', 'start_server', 'I ran here')
Bu, OnionShare kullanılırken meydana gelen olaylar zincirini veya belirli değişkenlerin değiştirilmeden önce ve sonra değerini öğrenirken faydalı olabilir.
Yalnızca Yerel¶
Tor yavaştır ve geliştirme sırasında onion hizmetlerini başlatmayı tamamen atlamak genellikle uygundur. Bunu --local-only
seçeneğiyle yapabilirsiniz. Örneğin:
$ poetry run onionshare-cli --local-only --receive
╭───────────────────────────────────────────╮
│ * ▄▄█████▄▄ * │
│ ▄████▀▀▀████▄ * │
│ ▀▀█▀ ▀██▄ │
│ * ▄█▄ ▀██▄ │
│ ▄█████▄ ███ -+- │
│ ███ ▀█████▀ │
│ ▀██▄ ▀█▀ │
│ * ▀██▄ ▄█▄▄ * │
│ * ▀████▄▄▄████▀ │
│ ▀▀█████▀▀ │
│ -+- * │
│ ▄▀▄ ▄▀▀ █ │
│ █ █ ▀ ▀▄ █ │
│ █ █ █▀▄ █ ▄▀▄ █▀▄ ▀▄ █▀▄ ▄▀▄ █▄▀ ▄█▄ │
│ ▀▄▀ █ █ █ ▀▄▀ █ █ ▄▄▀ █ █ ▀▄█ █ ▀▄▄ │
│ │
│ v2.3.3 │
│ │
│ https://onionshare.org/ │
╰───────────────────────────────────────────╯
* Running on http://127.0.0.1:17617/ (Press CTRL+C to quit)
Files sent to you appear in this folder: /home/user/OnionShare
Warning: Receive mode lets people upload files to your computer. Some files can potentially take control of your computer if you open them. Only open things from people you trust, or if you know what you are doing.
Give this address to the sender:
http://onionshare:ended-blah@127.0.0.1:17617
Press Ctrl+C to stop the server
Bu durumda, http://onionshare:train-system@127.0.0.1:17635
URL’sini Tor Browser kullanmak yerine Firefox gibi normal bir web tarayıcısında açarsınız.
Çevirilere Katkıda Bulunma¶
Hosted Weblate adresinde OnionShare’i çevirerek daha kolay kullanılmasına ve insanlar için daha bilindik ve kullanıcı dostu olmasına yardımcı olun. “OnionShare” sözcüğünü her zaman latin harflerinde tutun ve gerekirse “OnionShare (yerel adı)” kullanın.
Çeviriye yardımcı olmak için bir Hosted Weblate hesabı oluşturun ve katkıda bulunmaya başlayın.
Asıl İngilizce Dizgeler için Öneriler¶
Bazen asıl İngilizce dizgeler yanlıştır veya uygulama ile belgelendirme arasında uyumsuzluk vardır.
Weblate’teki yorumunuza @kingu ekleyerek veya bir GitHub sorunu veya çekme isteği açarak kaynağı dizgesi için iyileştirmeler önerin. İkinci seçenek, tüm proje geliştiricilerinin öneriyi görmesini sağlar ve dizge üzerinde olağan kod inceleme süreçleri aracılığıyla değişiklikler yapabilir.
Çevirilerin Durumu¶
Şu anki çeviri durumu aşağıdaki gibidir. Henüz başlamamış bir dilde çeviriye başlamak istiyorsanız lütfen e-posta listesine yazın: onionshare-dev@lists.riseup.net