Skip to content

Latest commit

 

History

History
207 lines (154 loc) · 6.15 KB

README_zh-TW.md

File metadata and controls

207 lines (154 loc) · 6.15 KB

Test Status Codecov Release Download Donate Discord

ko-fi

English | 中文 | 日本語 | 正體中文

簡介

Gopeed(全稱 Go Speed),是一款使用Golang+Flutter編寫的高速下載軟體,支援(HTTP、BitTorrent、Magnet)協定,同時支援所有的平台。

前往 ✈ 主頁 | 📖 文檔

下載

運行平台 安裝包類型 下載鏈接
Windows EXE Installer 前往
Portable ZIP 前往
MacOS DMG Installer 前往
Linux SNAP 前往
DEB 前往
AppImage 前往
Android APK 前往
iOS IPA 前往
Web 前往
Docker 前往

更多關於安裝的內容請參考安裝文檔

使用CLI安裝

使用go install安裝:

go install github.com/GopeedLab/gopeed/cmd/gopeed@latest

贊助

如果你認為該項目對你有所幫助,請考慮贊助以支持該項目的持續發展,謝謝!

軟體介面

開發

該項目分為前端與後端,前端使用flutter編寫,後端使用Golang編寫,兩邊通過http協定進行通訊,在 unix 系統下,則使用unix socket,在 windows 系統下,則使用tcp協定。

前端代碼位於ui/flutter目錄內。

開發環境

  1. Golang 1.21+
  2. Flutter 3.16+

克隆項目

git clone git@github.com:GopeedLab/gopeed.git

協助開發

請參考協助指南

編譯

桌面端

首先需要按照flutter desktop 官方文檔配置開發環境,並準備好cgo環境,具體方法可以自行搜索。

組建指令:

  • windows
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/windows/libgopeed.dll github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build windows
  • macos
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/macos/Frameworks/libgopeed.dylib github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build macos
  • linux
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/linux/bundle/lib/libgopeed.so github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build linux

移動設備

需要cgo環境,並安裝gomobile

go install golang.org/x/mobile/cmd/gomobile@latest
go get golang.org/x/mobile/bind
gomobile init

組建指令:

  • android
gomobile bind -tags nosqlite -ldflags="-w -s" -o ui/flutter/android/app/libs/libgopeed.aar -target=android -androidapi 19 -javapkg=com.gopeed github.com/GopeedLab/gopeed/bind/mobile
cd ui/flutter
flutter build apk
  • ios
gomobile bind -tags nosqlite -ldflags="-w -s" -o ui/flutter/ios/Frameworks/Libgopeed.xcframework -target=ios github.com/GopeedLab/gopeed/bind/mobile
cd ui/flutter
flutter build ios --no-codesign

網頁端

組建指令:

cd ui/flutter
flutter build web
cd ../../
rm -rf cmd/web/dist
cp -r ui/flutter/build/web cmd/web/dist
go build -tags nosqlite,web -ldflags="-s -w" -o bin/ github.com/GopeedLab/gopeed/cmd/web

感謝

貢獻者

JetBrains

goland

軟體許可

該軟體遵循 GPLv3