938 words
5 minutes
Aria2懒人包制作步骤

自己动手,丰衣足食

安装前提#

参考:https://meta.appinn.net/t/topic/7434

需要提前准备好以下软件:

  1. 下载最新版Aria2 aria2-1.36.0-win-64bit-build1.zip
  2. 下载最新版AriaNg_Native AriaNg_Native-1.2.4-Windows-x64.7z
  3. 下载最新版WinSW和官方给出的配置模板sample-minimal.xml WinSW-x64.exesample-minimal.xml
  4. 下载最新版7z.SFX.Builder 7z.SFX.Builder.Setup-2.1.exe

后面的操作步骤以:所有文件在同一文件夹下进行操作为前提。

步骤1#

解压Aria2的压缩包,得到aria2c.exe文件,不要更名,如果更名的话后面的安装脚本中也需要改成一致的; 解压AriaNg_Native的压缩包到当前目录下的AriaNg文件夹,注意文件夹层级不要多,目的是为了和后面安装脚本一致;

步骤2#

先将 WinSW-x64.exe 更名为:winsw-aria2c.exe 再将 sample-minimal.xml 也更名为: winsw-aria2c.xml,名称保持一致,扩展名不需要更改 两个文件需要保持在同一目录下,然后编辑winsw-aria2c.xml

<service>
<!-- ID of the service. It should be unique across the Windows system-->
<id>aria2c</id>
<!-- Display name of the service -->
<name>aria2c</name>
<!-- Service description -->
<description>aria2 is a lightweight multi-protocol multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink. </description>
<!-- Path to the executable, which should be started -->
<executable>%BASE%\aria2c.exe</executable>
<arguments>--enable-rpc --rpc-listen-all --rpc-allow-origin-all --conf-path=aria2.conf</arguments>
<!-- https://github.com/winsw/winsw/blob/master/doc/loggingAndErrorReporting.md -->
<logpath>%BASE%\logs</logpath>
<log mode="roll-by-size">
<sizeThreshold>1024</sizeThreshold>
<keepFiles>4</keepFiles>
</log>
<onfailure action="restart" delay="10 sec"/>
<onfailure action="restart" delay="20 sec"/>
<onfailure action="none" />
</service>

步骤3#

配置安装命令行,保存为当前文件夹下 install.bat,其中:

bt-tracker 内容可参考Github: trackers_all.txt。 在这份txt文本中一行为一个tracker节点,配置到 aria2.conf 中则不可换行,应使用英文半角逗号分隔; dir字段是aria2的下载路径,根据需求适当调整;

Terminal window
@echo off
fltmc > nul || (echo 请以管理员身份运行 & pause > nul & exit)
cd /d %~dp0
winsw-aria2c.exe install
set UA=Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:106.0) Gecko/20100101 Firefox/106.0
set DownloadDir=D:\Download\Aria2Download
set PA=Deluge 2.1.1
set PIPrefix=-DE2101-
echo user-agent=%UA%>> aria2.conf
echo dir=%DownloadDir%>> aria2.conf
echo peer-agent=%PA%>> aria2.conf
echo peer-id-prefix=%PIPrefix%>> aria2.conf
echo quiet=true>> aria2.conf
echo allow-overwrite=false>> aria2.conf
echo follow-torrent=true>> aria2.conf
echo pause-metadata=true>> aria2.conf
echo disable-ipv6=true>> aria2.conf
echo log=aria2.log>> aria2.conf
echo log-level=notice>> aria2.conf
echo max-connection-per-server=16>> aria2.conf
echo split=64>> aria2.conf
echo continue=true>> aria2.conf
echo http-accept-gzip=true>> aria2.conf
echo input-file=aria2.session>> aria2.conf
echo save-session=aria2.session>> aria2.conf
echo netrc-path=netrc>> aria2.conf
echo dht-file-path=dht.dat>> aria2.conf
echo dht-file-path6=dht6.dat>> aria2.conf
echo pause-metadata=true>> aria2.conf
echo bt-save-metadata=true>> aria2.conf
echo listen-port=62323-63434>> aria2.conf
echo dht-listen-port=62323-63434>> aria2.conf
echo seed-ratio=1.0>> aria2.conf
echo seed-time=5>> aria2.conf
echo rpc-save-upload-metadata=true>> aria2.conf
:: 这个字段的数值如果是1,2等数字,需要加'^'转义符
echo save-session-interval=^1>> aria2.conf
echo auto-save-interval=15>> aria2.conf
echo bt-force-encryption=true>> aria2.conf
echo bt-tracker=udp://tracker.opentrackr.org:1337/announce,http://tracker.opentrackr.org:1337/announce,udp://9.rarbg.com:2810/announce,udp://tracker.openbittorrent.com:6969/announce,http://tracker.openbittorrent.com:80/announce,udp://opentracker.i2p.rocks:6969/announce,https://opentracker.i2p.rocks:443/announce,udp://open.stealth.si:80/announce,udp://tracker.torrent.eu.org:451/announce,udp://ipv4.tracker.harry.lu:80/announce,udp://vibe.sleepyinternetfun.xyz:1738/announce,udp://tracker2.dler.org:80/announce,udp://tracker1.bt.moack.co.kr:80/announce,udp://tracker.zemoj.com:6969/announce,udp://tracker.tiny-vps.com:6969/announce,udp://tracker.theoks.net:6969/announce,udp://tracker.swateam.org.uk:2710/announce,udp://tracker.publictracker.xyz:6969/announce,udp://tracker.monitorit4.me:6969/announce,udp://tracker.moeking.me:6969/announce,udp://tracker.lelux.fi:6969/announce,udp://tracker.dler.org:6969/announce,udp://tracker.army:6969/announce,udp://tracker.altrosky.nl:6969/announce,udp://tracker-udp.gbitt.info:80/announce,udp://tr.cili001.com:8070/announce,udp://public.tracker.vraphim.com:6969/announce,udp://public.publictracker.xyz:6969/announce,udp://p4p.arenabg.com:1337/announce,udp://open.demonii.com:1337/announce,udp://movies.zsw.ca:6969/announce,udp://fe.dealclub.de:6969/announce,udp://explodie.org:6969/announce,udp://exodus.desync.com:6969/announce,udp://camera.lei001.com:6969/announce,udp://bubu.mapfactor.com:6969/announce,udp://bt2.archive.org:6969/announce,udp://bt1.archive.org:6969/announce,udp://app.icon256.com:8000/announce,udp://admin.videoenpoche.info:6969/announce,udp://6ahddutb1ucc3cp.ru:6969/announce,https://tracker2.ctix.cn:443/announce,https://tracker.tamersunion.org:443/announce,https://tracker.nanoha.org:443/announce,https://tracker.lilithraws.org:443/announce,https://tracker.gbitt.info:443/announce,https://tr.burnabyhighstar.com:443/announce,http://tracker2.dler.org:80/announce,http://tracker1.bt.moack.co.kr:80/announce,http://tracker.mywaifu.best:6969/announce,http://tracker.lelux.fi:80/announce,http://tracker.gbitt.info:80/announce,http://tracker.edkj.club:6969/announce,http://tracker.dler.org:6969/announce,http://tr.cili001.com:8070/announce,http://t.overflow.biz:6969/announce,http://bt.okmp3.ru:2710/announce,udp://zecircle.xyz:6969/announce,udp://yahor.ftp.sh:6969/announce,udp://uploads.gamecoast.net:6969/announce,udp://u4.trakx.crim.ist:1337/announce,udp://tracker1.myporn.club:9337/announce,udp://tracker.tcp.exchange:6969/announce,udp://tracker.srv00.com:6969/announce,udp://tracker.skyts.net:6969/announce,udp://tracker.pomf.se:80/announce,udp://tracker.openbtba.com:6969/announce,udp://tracker.leech.ie:1337/announce,udp://tracker.joybomb.tw:6969/announce,udp://tracker.jonaslsa.com:6969/announce,udp://tracker.filemail.com:6969/announce,udp://tracker.ddunlimited.net:6969/announce,udp://tracker.bitsearch.to:1337/announce,udp://tracker.auctor.tv:6969/announce,udp://tracker.artixlinux.org:6969/announce,udp://tracker.4.babico.name.tr:3131/announce,udp://tr.bangumi.moe:6969/announce,udp://torrents.artixlinux.org:6969/announce,udp://torrentclub.space:6969/announce,udp://thouvenin.cloud:6969/announce,udp://tamas3.ynh.fr:6969/announce,udp://smtp-relay.odysseylabel.com.au:6969/announce,udp://slicie.icon256.com:8000/announce,udp://sanincode.com:6969/announce,udp://run.publictracker.xyz:6969/announce,udp://run-2.publictracker.xyz:6969/announce,udp://rep-art.ynh.fr:6969/announce,udp://qtstm32fan.ru:6969/announce,udp://psyco.fr:6969/announce,udp://open.tracker.ink:6969/announce,udp://open.free-tracker.ga:6969/announce,udp://open.dstud.io:6969/announce,udp://new-line.net:6969/announce,udp://moonburrow.club:6969/announce,udp://mirror.aptus.co.tz:6969/announce,udp://mail.zasaonsk.ga:6969/announce,udp://mail.artixlinux.org:6969/announce,udp://madiator.com:6969/announce,udp://leefafa.tk:6969/announce,udp://laze.cc:6969/announce,udp://kokodayo.site:6969/announce,udp://keke.re:6969/announce,udp://htz3.noho.st:6969/announce,udp://fh2.cmp-gaming.com:6969/announce,udp://f1sh.de:6969/announce,udp://epider.me:6969/announce,udp://download.nerocloud.me:6969/announce,udp://cutscloud.duckdns.org:6969/announce,udp://concen.org:6969/announce,udp://chouchou.top:8080/announce,udp://carr.codes:6969/announce,udp://buddyfly.top:6969/announce,udp://bt.ktrackers.com:6666/announce,udp://black-bird.ynh.fr:6969/announce,udp://ben.kerbertools.xyz:6969/announce,udp://astrr.ru:6969/announce,udp://admin.52ywp.com:6969/announce,udp://aarsen.me:6969/announce,udp://960303.xyz:6969/announce,https://xtremex.herokuapp.com:443/announce,https://tracker1.520.jp:443/announce,https://tracker.kuroy.me:443/announce,https://tracker.jiesen.life:8443/announce,https://tracker.foreverpirates.co:443/announce,https://tracker.expli.top:443/announce,https://tr.abir.ga:443/announce,https://tr.abiir.top:443/announce,https://1337.abcvg.info:443/announce,http://wepzone.net:6969/announce,http://vps02.net.orel.ru:80/announce,http://tracker4.itzmx.com:2710/announce,http://tracker3.itzmx.com:6961/announce,http://tracker3.ctix.cn:8080/announce,http://tracker1.itzmx.com:8080/announce,http://tracker.skyts.net:6969/announce,http://tracker.files.fm:6969/announce,http://tracker.bt4g.com:2095/announce,http://t.acg.rip:6699/announce,http://open.tracker.ink:6969/announce,http://open.acgnxtracker.com:80/announce,http://jp.moeweb.pw:6969/announce,http://incine.ru:6969/announce,http://fxtt.ru:80/announce,http://fosstorrents.com:6969/announce,http://1337.abcvg.info:80/announce>> aria2.conf
winsw-aria2c.exe start
@set desk = ""
for /f "tokens=2,*" %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Desktop"') do (
@set desk=%%j
)
set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs"
echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT%
echo sLinkFile = "%desk%\AriaNg.lnk" >> %SCRIPT%
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT%
echo oLink.TargetPath = "%~dp0\AriaNg\AriaNg.exe" >> %SCRIPT%
echo oLink.Save >> %SCRIPT%
cscript /nologo %SCRIPT%
del %SCRIPT%
exit

配置卸载脚本,保存为当前目录下 uninstall.bat

Terminal window
@echo off
fltmc > nul || (echo 请以管理员身份运行 & pause > nul & exit)
cd /d %~dp0
winsw-aria2c.exe stop
winsw-aria2c.exe uninstall
set current_dir="%~dp0"
cd ..
echo 将删除当前目录,按任意键继续,关闭窗口则取消
pause > nul
rmdir /Q /S %current_dir% & echo 卸载完毕,按任意键退出 & pause > nul & exit

压缩成7zip#

将如下文件压缩成一个7zip包,并保证在压缩包的一级目录:

\AriaNg\
aria2.ico
aria2.log
aria2.session
aria2c.exe
dht.dat
install.bat
uninstall.bat
winsw-aria2c.exe
winsw-aria2c.xml

压缩后的文件结构

然后运行启动软件 7Z SFX Builder, 首次运行先切换界面语言: 切换界面语言

配置 7zip SFX#

其中可以替换的信息为:

  • 7zSFXBuilder_Res_FileDescription Aria2和AriaNg的版本号信息
;!@Install@!UTF-8!
InstallPath="%%S\\Aria2"
BeginPrompt="选择一个路径开始安装"
ExtractPathText="请选择解压路径"
ExtractDialogText="解压中..."
CancelPrompt="解压取消"
FinishMessage="解压完成"
GUIFlags="4+64+128"
MiscFlags="4"
RunProgram="hidcon:install.bat"
;Config file generated by 7z SFX Builder v2.1. (http://sourceforge.net/projects/s-zipsfxbuilder/)
;!@InstallEnd@!
7zSFXBuilder_SFXName=aria2-install-sfx.exe
7zSFXBuilder_Res_FileDescription=Aria2-1.36.0; AriaNgNative-1.2.4

将这段配置配置文件保存为txt,编码格式为GB2312,然后用SFX打开这个配置文件:

打开配置文件

正常加载后是可以在”输出”标签页中看到配置文件信息的,并且软件还会补充几项自动生成的配置,可以默认不修改:

Aria2懒人包制作步骤
https://blog.doracoin.cc/posts/2022/2022-10-21-aria2懒人包制作步骤/
Author
Doracoin
Published at
2022-10-21
License
CC BY-NC-SA 4.0