kso512.ansible-install-mpd
ansible-install-mpd
Rola Ansible do instalacji aplikacji Music Player Daemon z kodu źródłowego zamiast za pomocą menedżera pakietów. Niektóre menedżery pakietów mogą nie zawierać funkcji, takich jak wsparcie dla MP3, więc kompilacja z kodu źródłowego może pomóc.
Ta rola została wycofana i zastąpiona nową rolą: kso512.mpd
Nie zalecam domyślnej konfiguracji dla niezabezpieczonego połączenia bezpośrednio z Internetem, ponieważ konfiguracja serwera nie wymaga hasła do uzyskania dostępu. Zamiast tego zalecam zwiększenie bezpieczeństwa poprzez skonfigurowanie zmiennej hosta lub grupy, która nadpisać ansible_install_mpd_conf_src
własnym plikiem spoza repozytorium.
Testowane na następujących dystrybucjach:
Wymagania
Jeśli serwer ma włączoną zaporę, może być konieczne zezwolenie na przychodzące pakiety na portach TCP 6600/8000. Rola nie zawiera muzyki ani playlist, więc będziesz musiał je dostarczyć. Zobacz sekcję Zmienne roli poniżej, aby uzyskać te lokalizacje.
Zmienne roli
Wartości domyślne pokazane poniżej powinny działać "od ręki" i wymagają dostosowania tylko, jeśli nie spełniają Twoich potrzeb.
Nazwa | Opis | Wartość domyślna |
---|---|---|
ansible_install_mpd_apt_prereqs | Lista pakietów APT do zainstalowania | (Zobacz UWAGA A poniżej) |
ansible_install_mpd_audio_output | Słownik zawierający definicje wyjścia audio | (Zobacz UWAGA B poniżej) |
ansible_install_mpd_bind_to_address | Adres, do którego ma być związany interfejs sterujący; przykłady to "jakikolwiek" lub "localhost" | jakikolwiek |
ansible_install_mpd_conf | Pełna nazwa pliku konfiguracji MPD | {{ ansible_install_mpd_home }}/mpd.conf |
ansible_install_mpd_conf_src | Relatywna lub pełna nazwa pliku źródłowego konfiguracji MPD | mpd.conf.j2 |
ansible_install_mpd_db_file | Pełna nazwa pliku bazy danych MPD | {{ ansible_install_mpd_home }}/database |
ansible_install_mpd_executable | Pełna nazwa pliku wykonywalnego MPD | /usr/local/bin/mpd |
ansible_install_mpd_filename | Pełna nazwa archiwum MPD | {{ ansible_install_mpd_shortname }}.tar.gz |
ansible_install_mpd_gcc_version | Wersja kompilatora Gnu C do zainstalowania | 8 |
ansible_install_mpd_group | Grupa użytkownika, która będzie właścicielem procesu demona | mpd |
ansible_install_mpd_home | Główny katalog, w którym ma działać aplikacja | /home/mpd |
ansible_install_mpd_log_file | Pełna nazwa pliku dziennika MPD | {{ ansible_install_mpd_home }}/log |
ansible_install_mpd_music_directory | Katalog do przechowywania muzyki | {{ ansible_install_mpd_home }}/music |
ansible_install_mpd_pid_file | Pełna nazwa pliku PID MPD | {{ ansible_install_mpd_home }}/pid |
ansible_install_mpd_playlist_directory | Katalog do przechowywania playlist | {{ ansible_install_mpd_home }}/playlist |
ansible_install_mpd_port | Adres, do którego ma być związany interfejs sterujący | 6600 |
ansible_install_mpd_shortname | Krótka nazwa archiwum MPD | mpd-0.22.10 |
ansible_install_mpd_src | Katalog, w którym ma być rozpakowany kod źródłowy | {{ ansible_install_mpd_src_base }}/{{ ansible_install_mpd_shortname }} |
ansible_install_mpd_src_base | Katalog, w którym ma być umieszczone archiwum kodu źródłowego | {{ ansible_install_mpd_home }}/src |
ansible_install_mpd_state_file | Pełna nazwa pliku stanu MPD | {{ ansible_install_mpd_home }}/state |
ansible_install_mpd_sticker_file | Pełna nazwa pliku naklejki MPD | {{ ansible_install_mpd_home }}/sticker.sql |
ansible_install_mpd_systemd_service_dest | Pełna nazwa pliku jednostki serwisu systemd MPD | /lib/systemd/system/mpd.service |
ansible_install_mpd_systemd_service_src | Relatywna lub pełna nazwa pliku źródłowego jednostki serwisu systemd MPD | systemd.mpd.service.j2 |
ansible_install_mpd_systemd_socket_dest | Pełna nazwa pliku jednostki gniazda systemd MPD | /lib/systemd/system/mpd.socket |
ansible_install_mpd_systemd_socket_src | Relatywna lub pełna nazwa pliku źródłowego jednostki gniazda systemd MPD | systemd.mpd.socket.j2 |
ansible_install_mpd_url_base | Podstawowy adres URL do pobrania archiwum kodu źródłowego | http://www.musicpd.org/download/mpd/0.22 |
ansible_install_mpd_user | Nazwa użytkownika, który będzie właścicielem procesu demona | mpd |
UWAGA A
Lista pakietów APT zainstalowanych jako wymagania wstępne:
- 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
UWAGA B
Przykład wyjścia strumienia HTTP w słowniku ansible_install_mpd_audio_output
:
httpd:
typ: httpd
nazwa: Mój strumień HTTP
kodowanie: lame
port: 8000
bitrate: 128
format: "44100:16:2"
Zależności
Ta rola nie ma innych zależności.
Przykładowy playbook
Skonfiguruj każdy serwer MPD tylko do dostępu localhost i dostosowaną konfigurację mpd.conf:
- hosts: serwery
roles:
- { rola: kso512.ansible-install-mpd, ansible_install_mpd_bind_to_address: 127.0.0.1, ansible_install_mpd_conf_src: local/mpd.conf.j2 }
Licencja
GNU General Public License wersja 2
Informacje o autorze
Chris Lindbergh @kso512
Ansible role to install Music Player Daemon from source
ansible-galaxy install kso512.ansible-install-mpd