2 个版本
0.1.1 | 2023 年 12 月 4 日 |
---|---|
0.1.0 | 2023 年 12 月 4 日 |
#734 在 文件系统
43KB
1K SLoC
DiscFS
将文件存储在 Discord 消息的附件中。
安装
使用 cargo install discfs
或在项目仓库中使用 Nix flake 安装。
请注意,您将需要开发库 fuse3-dev
、openssl-dev
和 pkg-config
或您包管理器中对应的名称。
设置
创建 Discord 机器人
首先您需要创建一个 Discord 机器人来上传文件。根据文档 (https://discord.com/developers/docs/getting-started),创建一个机器人。在侧边栏 "OAuth2 -> URL 生成器" 下,给它 bot
权限和以下机器人权限
- 发送消息
- 附件文件
- 读取消息历史记录
然后复制底部的生成 URL,将其粘贴到浏览器中,并在您的个人服务器上安装机器人。
接下来,通过转到侧边栏 "机器人",点击 "重置令牌" 并复制令牌来获取机器人令牌。
此令牌以及机器人需要发送消息的频道的 ID 需要设置在以下环境变量中
DISCORD_TOKEN=
CHANNEL_ID=
可以通过转到 Discord 网络应用,导航到频道,并复制 URL 的最后一部分来获取频道 ID。
https://discord.com/channels/956113749209661480/ -> 956113749209661483 <- (this part)
运行 CLI
使用文本如下
Usage: discfs [OPTIONS] <MOUNTPOINT>
Arguments:
<MOUNTPOINT> Path to mount virtual filesystem at
Options:
--dotenv Use dotenv-vault (https://www.dotenv.org/docs/)
-v... Logging verbosity. Repeat multiple times to increase logging level
--db-path <DB_PATH> Path to create SQLite database file [env: DB_PATH=fs.db] [default: ./fs.db]
-h, --help Print help
-V, --version Print version
请确保您没有意外删除 SQLite 数据库,因为它映射了所有附件并存储了所有文件元数据。删除它将导致所有上传的内容无法访问。
依赖项
~38–54MB
~1M SLoC