之前一直都是手动检查每周新番并添加到 Transmission 中的,最近尝试把这一流程自动化一下。简单搜索了一下发现了 FlexGet 这个工具。支持 Transmission 也能在 Linux 下运行,就决定是它了。
安装到用户目录
ArchLinux 源里并没有这个包,又考虑到这是个 Python 程序,所以就决定直接用venv
了:
1 2 3 4 5 6
| mkdir ~/.config/flexget cd ~/.config/flexget python -m venv virtualenv source virtualenv/bin/activate pip install flexget pip install transmission-rpc
|
配置文件
配置方法可以看教程也可以看官方文档。我就只简单贴一下。
~/.config/flexget/config.yml1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| templates: transmission: transmission: host: 'https://domain-name.com/transmission/rpc' port: 443 username: 'your-username' password: 'your-password'
tasks: 这里随便写: rss: 'https://mikanani.me/RSS/...' accept_all: yes template: transmission transmission: path: '/folder/path/on/server'
|
Systemd 配置
~/.config/systemd/user/flexget.service1 2 3 4 5 6
| [Unit] Description=Refresh RSS with flexget
[Service] Type=oneshot ExecStart=/home/recursiveg/.config/flexget/virtualenv/bin/flexget execute
|
用户登录后 5 分钟进行同步,然后每两小时检查一次。
~/.config/systemd/user/flexget.timer1 2 3 4 5 6 7 8 9
| [Unit] Description=Run flexget on login then every 2hrs
[Timer] OnStartupSec=5min OnUnitActiveSec=2h
[Install] WantedBy=timers.target
|
一些可能会用到的命令:
1 2 3 4 5 6 7 8
| systemctl --user enable --now flexget.timer
systemctl --user start flexget.service
systemctl --user list-timers
journalctl --user-unit flexget.service -f
|