eiskaltdc ++ - 使用直接連接協議的文件共享程序
網站:https://github.com/eiskaltdcpp/eiskaltdcpp
來源:https://github.com/eiskaltdcpp/eiskaltdcpp
公共聊天室:https://gitter.im/eiskaltdcpp/eiskaltdcpp
Wiki:https://github.com/eiskaltdcpp/eiskaltdcpp/wiki
執照
該計劃已獲得GNU通用公共許可證的許可。有關更多信息,請參見複製文件。
描述
EiskaltDC ++是一個跨平台程序,使用直接連接(DC AKA NMDC)和高級直接連接(ADC)協議。它與DC ++,AirDC ++,FlyLinkDC ++和其他DC客戶兼兼容。 eiskaltdc ++也與所有常見的直流集線器軟件互操作。
當前支持的系統(以減少重要性的順序):GNU/Linux,MacOS,MS Windows,FreeBSD,Haiku和GNU/Hurd。
當前支持的功能(不是完整列表):
- QT(MAIN)和GTK+(替代)上具有圖形用戶界面(UI)的程序,以及可以通過命令行或Web UI控制的守護程序(通過JSON-RPC連接)。
- 多線程下載(從幾個來源下載單個文件的片段)。
- PFSR的支持(部分文件共享):用戶可以在文件下載過程中彼此下載文件部分,即使沒有一個人沒有完全下載的文件。
- DHT的支持(允許一個人通過tth搜索文件並在沒有連接到任何集線器的情況下交換這些文件)。此功能的實現基於strongDC ++代碼,並與所有版本的strongdc ++,apexdc ++,rsx ++,flylinkdc ++和pulse ++ k兼容。 (一些DC客戶端在最新版本中刪除了此功能的支持。)
- UPNP的支持(用戶Wi-Fi路由器支持此功能時,簡化了網絡連接配置)。
- 支持綁定到特定網絡接口或地址(如果用戶系統同時具有很少的網絡連接時)。
- 支持通過DynDNS服務自動更新外部IPv4地址。
- 支持案例敏感的文件列表。此功能在除MS Windows以外的所有受支持的系統上都非常重要(實際上,即使NTFS也支持對案例敏感的文件名稱,但是MS Windows不使用此功能。)。
- 用戶界面被翻譯成多種語言。
- GUI程序允許將小部件列表放在側邊欄,多行Tabbar面板上或單行tabar上。
- 基於QT的GUI程序支持隱藏程序菜單(可以通過特殊按鈕可用於工具欄)。
- 高級搜索具有分組結果的能力;搜索結果的黑色列表。
- 下載和上傳文件的列表;能夠保存下載日誌。
- 公共和最喜歡的樞紐列表。公共樞紐列表有多個來源;最喜歡的輪轂在配置功能方面非常靈活。
- 喜歡的用戶列表(他們將收到用於下載文件等的額外插槽)。
- 活動轉移列表(下載/上傳),包括等待插槽的用戶隊列(用戶可以為其臨時授予額外的插槽)。
- 用於下載文件的靈活設置(目標目錄列表,不完整下載的目錄,同時下載次數的限制,壓縮轉移,檢查總和的檢查總和等)。
- Main Downloads目錄所在的磁盤上的可用空間指標。
- 支持IP濾波器和基本反帕姆。
- 搜索間諜(允許人們查看發送其他用戶但當然沒有識別用戶的搜索短語)。
- ADL搜索,並支持Perl風格的正則表達式(使用PCRE庫)。
- 靈活的過濾器(具有正則表達式支持)在用戶列表中,搜索結果,公共集線器列表,文件列表等。
- 完整功能的聊天(不同的字體,劃線著色,磁性鏈接解析和其他鏈接,表情符號,聊天搜索,聊天命令,聊天命令,bbcode支持,禁用/禁用/啟用/清除聊天,拼寫檢查,拼寫檢查(使用Aspell),在聊天器中突出顯示聊天器中的聊天信息,聊天的能力,某些數據的訪問量(依賴iP offeres offers offers)通常用戶)。
- 用戶命令在集線器上。
- 秘書(允許您在許多聊天中不閱讀許多無用的消息來找到有趣的東西,例如帶有磁鐵鍊接或使用關鍵字的消息)。
- 靈活的鍵盤快捷鍵設置。
- 不同事件的文本和聲音通知。
- 在共享文件中突出顯示重複項。
- 文件散列的靈活設置(哈希的速度,忽略文件的過濾器等)。
- 計劃狀態欄的哈希進度指標。
- 用於計算任何文件的TTH的特殊工具(無需共享此文件)並為其準備磁鐵鍊接或Web Maget鏈接。
- 支持下載/上傳速度的局限性(永久或按時間表)。
- 支持共享文件大小的限制。 (是的,這是可疑的功能,但用戶高度要求它。)
- 支持處理磁鐵鍊接,Web磁鐵鍊接和集線器鏈接通過命令行傳輸的磁鐵鍊接的支持(例如,從Web瀏覽器中)。
- 支持文件拖放到字段中以輸入消息(如果在用戶文件列表中存在文件,則將添加磁鐵鍊接)。
- 在不存在用戶的情況下,支持私人消息的自動答复。
- 對QTScript(僅在GNU/Linux中的QT GUI中)和LUA(在所有受支持的系統中)的用戶擴展支持。
- IDN2的支持(對國家域名的識別)。
- 支持URL編碼字符串的集線器地址。
- 支持流量加密。
版本歷史
請參閱ChangElog.txt文件。
安裝
有關來自源的構建,請參閱安裝文件。
GNU/Linux和FreeBSD用戶可以安裝官方和非官方存儲庫,端口等的軟件包。
MACOS用戶可以使用Homebrows Cask安裝和更新官方構建:
brew install --cask eiskaltdcpp
或從SourceForge下載應用程序捆綁包並手動安裝它們。程序沒有更新的嵌入式機制,因此在這種情況下,用戶應自己監視更新。
Haiku用戶可以從Haikuports安裝官方軟件包:
pkgman install eiskaltdcpp
MS Windows用戶可以從SourceForge下載官方安裝程序和便攜式構建。程序沒有更新的嵌入式機制,因此用戶應自己監視更新。
用法
Eiskaltdc ++主要是為知道DC工作方式的經驗豐富的用戶設計的,應與他們的網絡連接類型一起使用哪些設置等。此簡短介紹並不旨在描述此類基本內容。
以下是第一次啟動程序後初始配置的小建議:
- 打開的首選項對話框並設置暱稱(這很重要!),默認編碼直流集線器(例如,俄羅斯集線器的Windows-1251),傳入連接的類型(活動模式,具有UPNP或被動模式的防火牆)以及下載目錄。
- 打開公共樞紐小部件,並連接到少數流行的公共樞紐(您可以按用戶數量或共享數據的總量進行排序)。
- 打開搜索小部件,嘗試搜索任何流行的文件。 (不要忘記將空間用作單詞分離器。)
- 在程序啟動過程中添加幾個集線器列表,並啟用與集線器的自動連接。
- 程序設置將保存在程序退出中。
來自Eiskaltdc ++項目( eiskaltdcpp-qt , eiskaltdcpp-gtk和eiskaltdcpp-daemon )的所有程序都使用相同的常見設置。因此,一旦您在eiskaltdc ++ QT中正確配置了連接後,您可以啟動eiskaltdcpp-daemon並使用Web UI進行統治(搜索文件,添加它們以下載排隊等)。
發展
在過去幾年的開發中,我們使用了不同的CVS(首先顛覆,然後是GIT)和不同的開發模型。目前的過程看起來像這樣:
- 所有開發均在GIT
work部門或特殊(功能) work中完成。 - ChangElog文件應與源代碼的更改一起更新。可以根據情況在同一git commit中或單獨的git承諾中完成。為此使用常識。 (過去沒有更新更改日誌的規則,這會導致穩定發行的大量延遲。)
- 一旦
work分支的更改準備就緒,並且對大多數重要係統(Linux,MacOS,Windows)進行了程序的構建,則可以將其合併到master分支。 - 每日為測試人員,活躍用戶和只是好奇的人構建程序,應該從Git
master Branch完成。 - 從Git快照構建的版本方案應該看起來像:
<major>.<minor>.<patch>-<commits>-g<hash> (其中<major> ,<minor>, <minor>和<patch>不是數字,而是數字)。 <major>.<minor>.<patch>是最後一個git標籤(用於穩定發行版), <commits> - 自上次git標籤和<hash>以來的提交數量 - 當前git commit的簡短哈希。 - 一旦自上次穩定版本以來發生了明顯的更改,或者如果有非常重要的錯誤修復程序,應將其快速交付給用戶新的git標籤(
v<major>.<minor>.<patch> 。。 - 如果程序的
<minor>核心(庫LibeiskaltDCPP)發生明顯變化,則應更改程序版本的<major> 。 - 如果在程序的任何部分發生重大更改(例如,
<minor>代碼重構),則應更改程序版本<major>部分。 - 如果自上次穩定版本以來幾乎沒有更改的地方,但是它們很重要,應快速將其
<patch>部分版本的部分更改。 - 如果不影響程序的核心,則沒有適用於新
<patch>發布的更改的限制:它們可能包含新功能和GUI任何部分的明顯變化。
在開發過程中,所有更改均在連續集成服務Travis CI和Sibuserv CI上進行了測試。
開發人員
主要開發人員
- eiskaltdc ++的主要開發人員在作者文件中列出。
- 程序包含來自其他免費和開源項目的源代碼。它們的所有版權信息都在特殊文件中進行了良好的記錄。
- 使用GTK+ UI的程序的一部分包含其他Credits.txt文件。 (這只是LinuxDC ++和FreedC ++項目的貢獻者的列表,並不是所有這些都是版權持有人。)
其他貢獻者
有很多人參與了EiskaltDC ++的開發。其中一些位於源文件中的許可證標頭中,其中一些可能僅在我們的GIT存儲庫中的Consits歷史中找到。還有翻譯人員,測試人員和活躍的用戶。我們感謝他們!
您如何提供幫助
錯誤報告
如果您發現錯誤,請在我們的錯誤跟踪器中報告有關它。
Beta測試
您可以使用您自己(來自GIT master Branch)從源頭編制的程序或程序的每日構建進行測試和建議,並報告有關新錯誤(如果發生的話)。
評論和願望
我們喜歡建設性的評論,並希望對程序的功能發揮作用。您可以在公共聊天室與我們聯繫以討論您的想法。其中一些將在我們的錯誤跟踪器中作為功能請求繪製。
翻譯
翻譯人員的工作是常規的和無聊的。這樣做的人通常會失去興趣,而翻譯則不完整。如果您看到這樣的情況轉化為母語,請加入我們的翻譯團隊。非常歡迎!
有關翻譯過程的一些有用註釋,您可能會在特殊Wiki頁面上找到。
圖形
有很多方法可以為EiskaltDC ++項目做出貢獻,如果您認為可以使用EiskaltDC ++圖形做得更好,那麼就可以繼續前進!
程式設計
歡迎補丁!如果您正在研究它們,請與EiskaltDC ++開發人員聯繫。
包裝
目前,我們為Debian和Ubuntu發行版提供了活躍的軟件包維護者,MacOS和MS Windows。如果您有有關改進包裝的建議,請與它們聯繫。
如果您想為MS Windows和MacOS系統準備eiskaltdc ++的個人構建,非常歡迎!我們可能會將其鏈接添加到我們的文檔中。成為這些系統的官方維護者更為複雜,但也可能是可能的。
對於其他GNU/Linux和 *BSD系統,情況非常清楚:只需在您喜歡的發行版的官方存儲庫中更新包裝(PKGBUILDS,EBUILD等),或與它們一起製作個人軟件包檔案(PPA)。我們將在我們的文檔中添加鏈接。
捐贈
我們不接受整個eiskaltdc ++項目的捐款,因為沒有用於基礎架構等的支出。 (感謝Github,SourceForge,Transifex和Travis CI服務的所有者的支持!)
但是您可以個人向項目貢獻者(開發人員,文化譯本等)發送捐款。只需使用作者文件中的聯繫信息與他們聯繫。
軟件包和安裝程序
- 基於IT的官方PPA和ubuntu和發行版(穩定發行)
- 基於它的Ubuntu和發行版的官方PPA(每日構建)
- Ubuntu和其他發行版的官方快照包(每日構建)
- 官方建造窗戶
- 官方建造MacOS
- 官方構建Linux
- Debian的官方包裝
- Ubuntu的官方包裹
- 軟呢帽的官方包裹
- Gentoo Linux的官方包裝
- Alt Linux的官方包裝
- Haiku的官方包裝
- FreeBSD的官方包裝
- opensuse的包裝(官方和非官方)
- Arch Linux的包裝(在AUR中)
- 不同Linux發行版的軟件包(鏈接的最佳聚合器)
- 不同Linux發行版的軟件包(鏈接的替代聚合器)
- Debian和Ubuntu的非官方PPA(由Alex_P維護)
- MacPorts(MacOS 10.5+)
額外的鏈接
- GitHub的項目統計數據
- OpenHub的項目統計信息
- Project freec ++(是eiskaltdcpp-gtk的基礎)(來源)
- eiskaltdcpp-daemon(來源)的官方Web UI(來源)
- EiskaltDCPP-DAEMON(來源)的替代Web UI
- 舊屏幕截圖(英文)
- 舊屏幕截圖(俄語)
- 有關eiskaltdc ++的舊說明(俄語)
- 有關freec ++的舊說明(俄語)
- 關於eiskaltdc ++的舊常見問題(俄語)
- 設置Web瀏覽器(俄語)的磁鐵鍊接的攔截
- 審查Linux的DC客戶(俄語)
- DC ++和基於Wikipedia的程序(英文)
- DC ++和基於Wikipedia的程序(俄語)
- 維基百科(以英語)為基礎的Valknut及其程序
- Wikipedia(俄語)的Eiskaltdc ++
玩得開心!