Skip to content
DreamAlone666Public

About

将酷狗概念版 (Kugou Lite) 会员作为洛雪音乐 (LX Music) 的自定义音源。

Topics

Resources

Stars

15 stars

Watchers

0 watching

Forks

Repository files navigation

kg2lx

将酷狗概念版 (Kugou Lite) 会员作为洛雪音乐 (LX Music) 的自定义音源。

它包含一个基于 Rust 的后端(负责协议处理和链接解析)以及一个基于 SvelteKit 的管理后台(负责账号管理和二维码登录)。

特性

  • 扫码绑定: 每个酷狗概念版账号对应一个独立音源,互不影响。
  • 快捷导入: 在后台复制脚本地址,粘贴到 LX Music 的自定义音源即可。
  • 名字自定义: 音源标题可自定义,但改完需要重新导入。
  • 会员权益: 后台展示概念版VIP / 畅听VIP有效期,方便诊断。
  • 音质自动降级: 开启后,自动沿音质档位向下重试,尽量让你听到声音。
  • 运行时日志: 取链结果、上游原始业务状态、上游实际返回格式与实测码率以及降级报告,都能在后台查询。
  • 一键部署: 提供预构建的 linux/amd64 Docker 镜像与 Docker Compose 示例(见下)。

灵感来源

没别的,酷狗概念版是个很好的软件,但却没有一个好用的 PC 端(尤其是在 Linux 端)。

LX Music 的跨平台体验很好,我的歌单在上面同步,恰好我也有概念版会员,于是这个想法便诞生了。

免责声明

  • 本项目仅供学习使用,请尊重版权,禁止用于商业或非法用途!
  • 本项目不提供可用的账号,也不包含任何会员破解或音乐解锁行为,所有的音乐播放能力均自使用者自己的账号,请支持正版。
  • 本项目仅作为中转服务,通过 KuGouMusicApi 直连官方服务器,不发往第三方 API。
  • 本项目按原样提供源码,风险由使用者自负。

界面预览

kg2lx 音源详情与运行时日志

Docker Compose 一键部署(推荐)

项目提供预构建的 linux/amd64 Docker 镜像,发布在 GitHub Container Registry。需要部署两个服务:对外提供管理 UI 和运行时 API 的 kg2lx,以及仅供 Compose 网络内部访问的 KuGouMusicApi。

在任意目录下准备一个 compose.yaml,可以复制下面的示例,按需修改:

services:
  # 上游 API。如果有独立部署的 KuGouMusicApi,可以删除此服务,
  kugou-api:
    image: ghcr.io/dreamalone666/kugou-music-api:45f31fefe97b-p5a78e70e
    environment:
      # 必须为 lite 才能支持概念版接口
      platform: lite
      HOST: 0.0.0.0
      PORT: 3000
    expose:
      # 仅在 Compose 网络内暴露
      - "3000"
    restart: unless-stopped

  kg2lx:
    image: ghcr.io/dreamalone666/kg2lx:v0.2.0
    # 有独立部署的 KuGouMusicApi 时,才需要删除
    depends_on:
      - kugou-api
    environment:
      # 【必填】本服务的对外访问地址,用于生成 LX 脚本链接
      PUBLIC_BASE_URL: http://your-server-host:8787
      # 【必填】管理后台登录 Token,建议修改为强密码
      ADMIN_TOKEN: change-me
      # 指向上游 API 地址,有独立部署的 KuGouMusicApi时,才需要修改
      KUGOU_API_BASE_URL: http://kugou-api:3000
      # 监听地址
      LISTEN_ADDR: 0.0.0.0:8787
      # 数据目录
      DATA_DIR: /data
    ports:
      - "8787:8787"
    volumes:
      # 持久化存储账号、音源及日志数据
      - kg2lx-data:/data
    restart: unless-stopped

volumes:
  kg2lx-data:

启动:

docker compose up -d

kg2lx 与 KuGouMusicApi 使用兼容的版本组合。更新版本时,将 kg2lx 镜像替换为目标 release tag,并将 KuGouMusicApi 替换为该 release 兼容的短 commit tag。

使用方法

  1. 访问管理后台: 浏览器打开管理后台(比如 PUBLIC_BASE_URL)。
  2. 连接后端: 在 UI 界面输入您的 ADMIN_TOKEN 完成鉴权。
  3. 添加音源: 进入“添加音源”页面,扫描二维码完成酷狗概念版账号绑定。
  4. 导入 LX Music:
    • 在“音源列表”页面复制 脚本链接 (Script URL)。
    • 打开 LX Music 客户端,在设置中将其作为 自定义音源 导入。

手动部署

较为繁杂,只推荐开发使用。

前置要求

手动安装步骤

  1. KuGouMusicApi: 参考原仓库文档,配置 platform=lite 并启动。
  2. 后端 (Server):
    cd server
    # 配置环境变量 PUBLIC_BASE_URL, ADMIN_TOKEN, KUGOU_API_BASE_URL
    cargo run
  3. 前端 (Web):
    cd web
    pnpm install
    pnpm dev

项目结构

  • /server: Rust/Axum 后端,处理 API 请求、账号持久化和音乐链接解析。
  • /web: SvelteKit 管理后台,提供管理音源、扫码登录的 UI 界面。
  • /KuGouMusicApi: (子模块) 核心协议转换服务。

配置项 (环境变量)

变量名 描述 默认值
PUBLIC_BASE_URL 服务对外访问的公网/内网地址 (必填) -
ADMIN_TOKEN 管理后台 API 鉴权 Token (必填) -
KUGOU_API_BASE_URL KuGouMusicApi 服务的地址 (必填) -
LISTEN_ADDR 服务监听地址和端口 127.0.0.1:8787
DATA_DIR 数据持久化存储目录 ./data
WEB_DIST_DIR 管理后台前端构建产物目录 (开启后同源托管) -
ACCOUNT_REFRESH_TTL 账号登录态保鲜阈值(秒)。只在收到取链请求时按需判断,服务内没有定时任务 21600 (6 小时)

旧名 REFRESH_INTERVAL_SECS 仍可读取,但会打一条弃用提示。「刷新间隔」这个叫法会让人以为服务有定时刷新任务,实际上没有——只有取链请求到达时才会判断是否需要刷新登录。

许可证

本项目使用 MIT 许可证。

About

将酷狗概念版 (Kugou Lite) 会员作为洛雪音乐 (LX Music) 的自定义音源。

Topics

Resources

Stars

15 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages