kso512.ansible-install-mpd

ansible-install-mpd

Ansible 角色 使用 Bash 制作 使用 Markdown 制作 GitHub

GitHub 最新发布版本 GitHub 发布日期 GitHub 仓库大小 GitHub 问题 GitHub 分支

这是一个用于从源代码安装 音乐播放器守护进程 应用的 Ansible 角色,而不是通过包管理器进行安装。某些包管理器可能不包含 MP3 支持等功能,因此从源代码编译可能会有所帮助。

该角色已经弃用,并被新的角色 kso512.mpd 替代。

我不推荐默认配置直接连接到互联网,因为服务器配置包括无密码访问。 我建议操作员通过配置主机或组变量,使用来自外部自定义文件的内容来覆盖 ansible_install_mpd_conf_src 来增强安全性。

已在以下发行版上测试:

需求

如果服务器启用了防火墙,可能需要修改以允许在 TCP 端口 6600/8000 上接收数据包。该角色不包含音乐或播放列表,因此你需要自己提供。有关这些位置的信息,请参见下面的 角色变量 部分。

角色变量

下方显示的默认值应可以“开箱即用”,只有在不满足需求的情况下才需要自定义。

名称 描述 默认值
ansible_install_mpd_apt_prereqs 要安装的 APT 包列表 (见 注释 A below)
ansible_install_mpd_audio_output 包含音频输出定义的字典 (见 注释 B below)
ansible_install_mpd_bind_to_address 控制接口绑定的地址;示例有 "any" 或 "localhost" any
ansible_install_mpd_conf MPD 配置文件的全路径文件名 {{ ansible_install_mpd_home }}/mpd.conf
ansible_install_mpd_conf_src MPD 配置文件源的相对或全路径文件名 mpd.conf.j2
ansible_install_mpd_db_file MPD 数据库文件的全路径文件名 {{ ansible_install_mpd_home }}/database
ansible_install_mpd_executable MPD 可执行文件的全路径文件名 /usr/local/bin/mpd
ansible_install_mpd_filename MPD 压缩包的完整名称 {{ ansible_install_mpd_shortname }}.tar.gz
ansible_install_mpd_gcc_version 要安装的 Gnu C 编译器版本 8
ansible_install_mpd_group 将拥有守护进程的用户组 mpd
ansible_install_mpd_home 应用运行的主目录 /home/mpd
ansible_install_mpd_log_file MPD 日志文件的全路径文件名 {{ ansible_install_mpd_home }}/log
ansible_install_mpd_music_directory 存储音乐的文件夹 {{ ansible_install_mpd_home }}/music
ansible_install_mpd_pid_file MPD PID 文件的全路径文件名 {{ ansible_install_mpd_home }}/pid
ansible_install_mpd_playlist_directory 存储播放列表的文件夹 {{ ansible_install_mpd_home }}/playlist
ansible_install_mpd_port 控制接口绑定的地址 6600
ansible_install_mpd_shortname MPD 压缩包的短名称 mpd-0.22.10
ansible_install_mpd_src 解压源代码的目录 {{ ansible_install_mpd_src_base }}/{{ ansible_install_mpd_shortname }}
ansible_install_mpd_src_base 存放源代码压缩包的目录 {{ ansible_install_mpd_home }}/src
ansible_install_mpd_state_file MPD 状态文件的全路径文件名 {{ ansible_install_mpd_home }}/state
ansible_install_mpd_sticker_file MPD 贴纸文件的全路径文件名 {{ ansible_install_mpd_home }}/sticker.sql
ansible_install_mpd_systemd_service_dest MPD systemd 服务单元文件的全路径文件名 /lib/systemd/system/mpd.service
ansible_install_mpd_systemd_service_src MPD systemd 服务单元文件源的相对或全路径文件名 systemd.mpd.service.j2
ansible_install_mpd_systemd_socket_dest MPD systemd 套接字单元文件的全路径文件名 /lib/systemd/system/mpd.socket
ansible_install_mpd_systemd_socket_src MPD systemd 套接字单元文件源的相对或全路径文件名 systemd.mpd.socket.j2
ansible_install_mpd_url_base 下载源代码压缩包的 URL 基础 http://www.musicpd.org/download/mpd/0.22
ansible_install_mpd_user 将拥有守护进程的用户名称 mpd

注释 A

作为前置条件安装的 APT 包列表:

  • cmake
  • libadplug-dev
  • libao-dev
  • libasound2-dev
  • libaudio-mpd-perl
  • libaudiofile-dev
  • libavahi-client-dev
  • libavcodec-dev
  • libavformat-dev
  • libboost-dev
  • libbz2-dev
  • libcdio-paranoia-dev
  • libchromaprint-dev
  • libcppunit-dev
  • libcurl4-gnutls-dev
  • libexpat-dev
  • libfaad-dev
  • libflac-dev
  • libfluidsynth-dev
  • libgcrypt20-dev
  • libgme-dev
  • libgtest-dev
  • libicu-dev
  • libid3tag0-dev
  • libiso9660-dev
  • libjack-jackd2-dev
  • libmad0-dev
  • libmikmod-dev
  • libmms-dev
  • libmodplug-dev
  • libmp3lame-dev
  • libmpcdec-dev
  • libmpdclient-dev
  • libmpg123-dev
  • libnfs-dev
  • libogg-dev
  • libopenal-dev
  • libopus-dev
  • libpcre3-dev
  • libpulse-dev
  • libresid-builder-dev
  • libroar-dev
  • libsamplerate0-dev
  • libshine-dev
  • libshout3-dev
  • libsidplay2-dev
  • libsidutils-dev
  • libsmbclient
  • libsmbclient-dev
  • libsndfile1-dev
  • libsndio-dev
  • libsoxr-dev
  • libsqlite3-dev
  • libsystemd-dev
  • libtwolame-dev
  • libupnp-dev
  • libvorbis-dev
  • libwavpack-dev
  • libwildmidi-dev
  • libwrap0-dev
  • libyajl-dev
  • libzzip-dev
  • ninja-build
  • python3
  • python3-pip
  • unzip
  • xmlto

注释 B

ansible_install_mpd_audio_output 字典中 HTTP 流输出的示例:

httpd:
  type: httpd
  name: My HTTP Stream
  encoder: lame
  port: 8000
  bitrate: 128
  format: "44100:16:2"

依赖关系

该角色不依赖于其他任何角色。

示例剧本

仅为本地访问配置每个 MPD 服务器和自定义 mpd.conf:

- hosts: servers
  roles:
    - { role: kso512.ansible-install-mpd, ansible_install_mpd_bind_to_address: 127.0.0.1, ansible_install_mpd_conf_src: local/mpd.conf.j2 }

许可证

GNU 通用公共许可证第 2 版

作者信息

Chris Lindbergh @kso512

关于项目

Ansible role to install Music Player Daemon from source

安装
ansible-galaxy install kso512.ansible-install-mpd
许可证
gpl-2.0
下载
105
拥有者