# Upplay et MinimWatch. Cette adresse MAC est celle du GoFlex Home ACCEPT net:~00:10:75:29:87:57 $FW udp,tcp # Upplay et MinimWatch. Cette adresse MAC est celle du GoFlex Net ACCEPT net:~00:10:75:26:6f:76 $FW udp,tcp
dans /etc/shorewall/rules
.
libupnp patché
, PKGBUILD pour libupnpp
et PKGBUILD pour upmpdcli
pour créer les packages. /etc/systemd/system/upmpdcli.service
[Unit] Description=UPnP Renderer front-end to MPD After=syslog.target mpd.service [Service] Type=simple # Note: if start fails check with "systemctl status upmpdcli" ExecStart=/usr/bin/upmpdcli -c /etc/upmpdcli.conf [Install] WantedBy=multi-user.target
useradd -r -d /usr/share/upmpdcli upmpdcli
crée un utilisateur système avec /usr/share/upmpdcli comme home.
$ wget https://aur.archlinux.org/cgit/aur.git/snapshot/logitechmediaserver.tar.gz $ tar zxvf logitechmediaserver.tar.gz $ cd logitechmediaserver $ sudo echo 60 > /proc/sys/vm/swappiness $ makepkg -s
$ sudo pacman -U logitechmediaserver-7.9.0.arch5-1-arm.pkg.tar.xz $ sudo systemctl enable logitechmediaserver $ sudo systemctl start logitechmediaserver $ sudo systemctl status logitechmediaserver
slimserver/CPAN/arch
. slimserver/Bin/*
. Ces binaires dans slimserver/Bin
me semble inutiles (au moins dans mon cas) si on a les packages flac, libmad, libvorbis et faad2 installés. Ils ont subi des patches spécifiques LMS que l'on peut examiner dans slimserver-vendor. On peut toujours revenir sur ces patches si on rencontre des problèmes avec les décodeurs.git clone git://github.com/Logitech/slimserver-vendor.git git clone git://github.com/Logitech/slimserver.git (**vérifier la branche 7.8 avec git branch, sinon changer avec la commande git checkout**)
slimserver-vendor/CPAN/*
pour perl 5.20 (les modules Perl binaires requis par LMS) : Créer un dossier logitechmediaserver-vendor
et y mettre ce PKGBUILD (modifier les lignes pkgrel et gitsrc si nécessaire). Compiler et installer le package (La compilation dure ~2h30 (mais mise à jour rarement), et elle a besoin de swap.). Ce package contient uniquement la partie arch dépendante des modules : sudo echo 60 > /proc/sys/vm/swappiness [swap normalement] cd logitechmediaserver-vendor makepkg -s sudo pacman -U logitechmediaserver-vendor-7.8.1-20140625-arm.pkg.tar.xz sudo echo 0 > /proc/sys/vm/swappiness [swap réduit au minimum]
logitechmediaserver
et y placer les fichiers PKGBUILD (modifier les lignes pkgrel et gitsrc si nécessaire), service et install. Créer et installer le package (en quelques minutes) : sudo echo 60 > /proc/sys/vm/swappiness [swap normalement] cd logitechmediaserver makepkg -s sudo pacman -U logitechmediaserver-7.8.1-20140625-arm.pkg.tar.xz sudo systemctl start logitechmediaserver.service sudo echo 0 > /proc/sys/vm/swappiness [swap réduit au minimum]
systemctl enable logitechmediaserver.service
File Format Conversion Setup
.# EDITOR=vim crontab -e ======== ajouter cette ligne (relancer logitechmediaserver tous les jours à 3h) : 0 3 * * * systemctl restart logitechmediaserver ========
/opt/logitechmediaserver/Logs/
. Créer un fichier /etc/logrotate.d/logitechmediaserver
de contenu /opt/logitechmediaserver/Logs/*.log { missingok }
/etc/asound.conf
pcm.!default { type hw card 0 } ctl.!default { type hw card 0 }
pacman -S git flac libmad mpg123 libvorbis faad2 git clone https://code.google.com/p/squeezelite/ cd squeezelite make clean make
# squeezelite -l Output devices: null - Discard all samples (playback) or generate zero samples (capture) sysdefault:CARD=M20 - M2Tech USB Audio 2.0, USB Audio - Default Audio Device front:CARD=M20,DEV=0 - M2Tech USB Audio 2.0, USB Audio - Front speakers surround40:CARD=M20,DEV=0 - M2Tech USB Audio 2.0, USB Audio - 4.0 Surround output to Front and Rear speakers surround41:CARD=M20,DEV=0 - M2Tech USB Audio 2.0, USB Audio - 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=M20,DEV=0 - M2Tech USB Audio 2.0, USB Audio - 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=M20,DEV=0 - M2Tech USB Audio 2.0, USB Audio - 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=M20,DEV=0 - M2Tech USB Audio 2.0, USB Audio - 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers iec958:CARD=M20,DEV=0 - M2Tech USB Audio 2.0, USB Audio - IEC958 (S/PDIF) Digital Audio Output
UAC2
au lieu de M20
. # squeezelite -l Output devices: null - Discard all samples (playback) or generate zero samples (capture) sysdefault:CARD=UAC2 - hiFaceTWO UAC2, USB Audio - Default Audio Device front:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - Front speakers surround21:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - 4.0 Surround output to Front and Rear speakers surround41:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers iec958:CARD=UAC2,DEV=0 - hiFaceTWO UAC2, USB Audio - IEC958 (S/PDIF) Digital Audio Output
squeezelite -z -n SqueezeliteGoFlexHome -o hw:0,0 -a 200::: -s ip_LMS
ou
squeezelite -z -n SqueezeliteGoFlexHome -o hw:CARD=UAC2 -a 200::: -s ip_LMS
ou
squeezelite -z -n SqueezeliteGoFlexHome -o hw:CARD=UAC2,DEV=0 -a 200::: -s ip_LMS
20:4::
. Le paramètre pour buffer_time (en milliseconde) “200” (0.2 secondes) est important pour supprimer des parasites dans le son. En fait sa valeur par défaut “20” (0.02 secondes) est trop courte dans mon cas. Sachant que mpd utilise par défaut 0.5 secondes de buffer_time (option définie utilisant microseconde) d'après la man page de mpd.conf : OPTIONAL ALSA OUTPUT PARAMETERS buffer_time <time in microseconds> This sets the length of the hardware sample buffer in microsec‐ onds. Increasing it may help to reduce or eliminate skipping on certain setups. Most users do not need to change this. The default is 500000 microseconds (0.5 seconds).
/usr/lib/systemd/system/logitechmediaserver.service
), il faut ajouter logitechms dans le groupe audio # gpasswd -a logitechms audio
(ou bien le faire manuellement dans les deux fichiers /etc/group
et /etc/gshadow
)
# chown root /opt/logitechmediaserver/cache/InstalledPlugins/Plugins/LocalPlayer/Bin/squeezelite-armv5te # chmod u+s /opt/logitechmediaserver/cache/InstalledPlugins/Plugins/LocalPlayer/Bin/squeezelite-armv5te
(mais il faut le refaire après chaque mise à jour du plugin) (intégrer aussi ces deux commandes dans le script post-install de LMS)
/opt/logitechmediaserver/Logs/localplayer.log
au démarrage de LMS (il faut activer temporairement les log dans la page de config du plugin, mais le désactiver pour un usage normal) : Starting Squeezelite: /opt/logitechmediaserver/cache/InstalledPlugins/Plugins/LocalPlayer/Bin/squeezelite-armv5te -d all=debug -f /opt/logitechmediaserver/Logs/localplayer.log -n SqueezeliteGoFlexHome -o hw:CARD=UAC2,DEV=0 -a 200::: -s 192.168.0.18 [18:08:55.188931] stream_init:264 init stream [18:08:55.189638] stream_init:265 streambuf size: 2097152 [18:08:55.214847] output_init_alsa:636 init output [18:08:55.215058] output_init_alsa:658 requested alsa_buffer: 200 alsa_period: 4 format: any mmap: 1 [18:08:55.215150] output_init_common:334 outputbuf size: 3528000 [18:08:55.249346] output_init_common:394 supported rates: 192000 176400 96000 88200 48000 44100 [18:08:55.349182] output_init_alsa:670 memory locked [18:08:55.349857] output_thread:465 open output device: hw:CARD=M20,DEV=0 [18:08:55.350903] alsa_open:234 opened device hw:CARD=M20,DEV=0 using format: S32_LE sample rate: 44100 mmap: 1 [18:08:55.351209] alsa_open:313 buffer: 200 period: 4 -> buffer size: 8820 period size: 2205 [18:08:55.351478] output_init_alsa:693 set output sched fifo rt: 45 [18:08:55.351559] decode_init:129 init decode [18:08:55.378604] load_faad:610 loaded libfaad.so.2 [18:08:55.399786] load_vorbis:295 loaded libvorbisfile.so.3 [18:08:55.448299] load_flac:258 loaded libFLAC.so.8 [18:08:55.448440] register_pcm:382 using pcm [18:08:55.470567] load_mad:351 loaded libmad.so.0 [18:08:55.804396] slimproto:787 connecting to 192.168.0.18:3483 [18:08:55.804943] slimproto:817 connected [18:08:55.805058] slimproto:833 local player [18:08:55.805127] sendHELO:117 mac: 00:10:75:29:87:57 [18:08:55.805226] sendHELO:119 cap: Model=squeezelite,ModelName=SqueezeLite,AccuratePlayPoints=1,HasDigitalOut=1,MaxSampleRate=192000,aac,ogg,flc,aif,pcm,mp3,loc [18:08:57.438489] process:469 strm [18:08:57.438641] process_strm:232 strm command q [18:08:57.438750] decode_flush:188 decode flush [18:08:57.438816] output_flush:407 flush output buffer [18:08:57.438881] sendSTAT:164 STAT: STMf [18:08:57.441233] process:469 strm [18:08:57.441349] process_strm:232 strm command q [18:08:57.441414] decode_flush:188 decode flush [18:08:57.441474] output_flush:407 flush output buffer [18:08:57.441537] sendSTAT:164 STAT: STMf [18:08:57.443019] process:469 setd [18:08:57.443124] sendSETDName:223 set playername: SqueezeliteGoFlexHome [18:08:57.443742] process:469 setd [18:08:57.444566] process:469 aude [18:08:57.444659] process_aude:368 enable spdif: 1 dac: 1 [18:08:57.446374] process:469 audg [18:08:57.446480] process_audg:385 audg gainL: 65536 gainR: 65536 adjust: 0 [18:08:57.508952] process:469 strm [18:08:57.509086] process_strm:232 strm command t [18:08:57.509156] sendSTAT:164 STAT: STMt
svn checkout http://squeezeslave.googlecode.com/svn/squeezeslave/trunk/squeezeslave cd squeezeslave/ vim makefile.linux26-armel-alsa-display (désactiver "interactive (aka DISPLAY) support") make -f makefile.linux26-armel-alsa-display realclean make -f makefile.linux26-armel-alsa-display cp bin/squeezeslave /usr/local/bin/
/etc/asound.conf
proposée par archlinux wiki (changer rate en 44100) ou l'exemple dans les codes sources squeezeslave/config/squeezeplug-asound.conf
résout ce problème. Voici la config /etc/asound.conf
(Même s'il n'y a pas de input, le “pcm.dsnooper” semble nécessaire. Aucune idée pourquoi ça marche !) pcm.!default { type plug slave.pcm "softvol" } pcm.softvol { type softvol slave { pcm "dmixer" } control { name "Master" card 0 } } pcm.dmixer { type dmix ipc_key 1024 slave { pcm "hw:0" period_time 0 period_size 4096 buffer_size 131072 rate 44100 } bindings { 0 0 1 1 } } pcm.dsnooper { type dsnoop ipc_key 1024 slave { pcm "hw:0" channels 2 period_time 0 period_size 4096 buffer_size 131072 rate 44100 } bindings { 0 0 1 1 } } ctl.!default { type hw card 0 } ctl.softvol { type hw card 0 } ctl.dmixer { type hw card 0 }
/etc/rc.local
<file># attendre le serveur logitechmediaserver :
sleep 60s
squeezeslave -m xx:xx:xx:xx:xx:xx
</file>/usr/bin/squeezeplay.sh
et remplacer la dernière ligne ./jive
par
xvfb-run ./jive
~/.squeezeplay/userpath/settings
. Il nous faut créer le bon fichier ~/.squeezeplay/userpath/settings/Playback.lua
avant de lancer /usr/bin/squeezeplay.sh
. Voici comment je l'ai obtenu : (le serveur Logitech Media Server étant déjà lancé sur mon Goflex Home) Sur mon vieux portable sous windows xp, installer et lancer SqueezePlay pour connecter au Logitech Media Server sur GoFlexHome. En suite je récupère le fichier généré C:\Documents and Settings\user_login_name\Application Data\SqueezePlay\userpath\settings\Playback.lua
. Voici la forme du contenu de ce fichier settings = {enableAudio=1,squeezeNetwork=false,serverUuid="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",powerState="on",volume=100,serverInit={ip="xxx.xxx.xxx.xxx",},serverName="alarm",playerInit={name="SqueezePlay",model="squeezeplay",},captureVolume=40,}
/etc/asound.conf
ci-dessus pour éviter le même problème de son.ldconfig
ou créer tout simplement un lien symbolique dans /usr/lib/
vers /opt/logitechmediaserver/cache/InstalledPlugins/Plugins/Spotify/Bin/arm-linux/libspotify.so.10
.
* Note : Pas besoin de faire ça sur RaspberryPi/Raspbian.
* Solution 2 : En fait, c'est un “bug” dans /usr/lib/systemd/system/logitechmediaserver.service
. Il faut ajouter User=logitechms
et Group=logitechms
. On peut enlever l'option –user logitechms
dans la ligne ExecStart=…
<code>— service 2012-07-27 01:40:22.000000000 +0200
+++ /usr/lib/systemd/system/logitechmediaserver.service 2013-04-04 10:53:51.000000000 +0200
@@ -3,13 +3,14 @@
After=network.target
[Service]
+User=logitechms
+Group=logitechms
PIDFile=/var/run/lms.pid
WorkingDirectory=/opt/logitechmediaserver
ExecStart=/opt/logitechmediaserver/slimserver.pl \
–prefsdir /opt/logitechmediaserver/prefs \
–cachedir /opt/logitechmediaserver/cache \
- –logfile /opt/logitechmediaserver/Logs/slimserver.log \
- –user logitechms
+ –logfile /opt/logitechmediaserver/Logs/slimserver.log
[Install]
WantedBy=multi-user.target
</code>mpd
sur la ligne IgnorePkg
de /etc/pacman.conf
pour qu'une mise à jour du système ne touche pas mpd, mais seulement afficher une notification. Voici le diff avec PKGBUILD original : $ diff -Nu /var/abs/extra/mpd/PKGBUILD mpd/PKGBUILD --- /var/abs/extra/mpd/PKGBUILD 2015-02-26 00:06:34.645590086 +0100 +++ mpd/PKGBUILD 2015-02-26 09:54:47.854711000 +0100 @@ -1,26 +1,24 @@ -# $Id: PKGBUILD 231234 2015-02-10 19:30:11Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Angel Velasquez <angvp@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Damir Perisa <damir.perisa@bluewin.ch> # Contributor: Ben <ben@benmazer.net> +# Note : désactiver des options et des dépendances pour une version minimaliste + pkgname=mpd pkgver=0.19.9 pkgrel=2 pkgdesc='Flexible, powerful, server-side application for playing music' url='http://www.musicpd.org/' license=('GPL') -arch=('i686' 'x86_64') -depends=('libao' 'ffmpeg' 'libmodplug' 'audiofile' 'libshout' 'libmad' 'curl' 'faad2' - 'sqlite' 'jack' 'libmms' 'wavpack' 'avahi' 'libid3tag' 'yajl' 'libmpdclient' - 'icu' 'libupnp' 'libnfs') +arch=('arm') +depends=('audiofile' 'libmad' 'curl' 'faad2' 'sqlite' 'libmms' 'libid3tag' 'libmpdclient' 'icu') makedepends=('boost' 'doxygen') -validpgpkeys=('0392335A78083894A4301C43236E8A58C6DB4512') -source=("http://www.musicpd.org/download/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz"{,.sig} +source=("http://www.musicpd.org/download/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz" 'tmpfiles.d' 'conf') -sha1sums=('6683bee5f132eda318c5a61ec14b2df8d9164d60' 'SKIP' +sha1sums=('6683bee5f132eda318c5a61ec14b2df8d9164d60' 'f4d5922abb69abb739542d8e93f4dfd748acdad7' '291fd5cda9f0845834a553017327c4586bd853f6') @@ -33,12 +31,28 @@ --prefix=/usr \ --sysconfdir=/etc \ --enable-libmpdclient \ - --enable-jack \ - --enable-soundcloud \ - --enable-pipe-output \ - --enable-pulse \ - --disable-sidplay \ - --with-systemdsystemunitdir=/usr/lib/systemd/system + --disable-ao \ + --disable-ffmpeg \ + --disable-jack \ + --disable-modplug \ + --disable-pulse \ + --disable-shout \ + --disable-sidplay \ + --disable-soundcloud \ + --disable-wavpack \ + --disable-wildmidi \ + --disable-upnp \ + --disable-smbclient \ + --disable-nfs \ + --disable-gme \ + --disable-dsd \ + --disable-oss \ + --disable-recorder-output \ + --disable-ipv6 \ + --disable-fluidsynth \ + --disable-bzip2 \ + --with-zeroconf=no \ + --with-systemdsystemunitdir=/usr/lib/systemd/system + make }
/etc/mpd.conf
(la sortie de la commande “egrep -v '^(#|$)' /etc/mpd.conf”) :music_directory "/archives/music" playlist_directory "/archives/mpd/playlists" db_file "/archives/mpd/database" log_file "/archives/mpd/mpd.log" pid_file "/archives/mpd/pid" state_file "/archives/mpd/state" sticker_file "/archives/mpd/sticker.sql" input { plugin "curl" } audio_output { type "alsa" name "M2TECH hiFace Two" auto_resample "no" device "hw:0,0" mixer_type "hardware" mixer_device "hw:0" mixer_control "M2Tech Clock Selector" mixer_index "1" } id3v1_encoding "UTF-8"
/usr/lib/systemd/system/mpd.service
utilise User=mpd
. Avec ma config, il faut que tout le dossier /archives/mpd/
appartienne à user et group mpd
.audio_output { type "httpd" name "GoFlexHome HTTP Stream" encoder "vorbis" port "8000" bind_to_address "127.0.0.1" quality "5.0" format "44100:16:1" }
/archives/mpd/mpd.log
. Créer un fichier /etc/logrotate.d/mpd
de contenu /archives/mpd/mpd.log { missingok }
/etc/mpd.conf
très simple audio_output { type "alsa" name "M2TECH hiFace Two" auto_resample "no" device "hw:0,0" mixer_type "none" #mixer_type "hardware" #mixer_device "hw:0" #mixer_control "M2Tech Clock Selector" #mixer_index "1" }
music_directory
de /etc/mpd.conf
. Dans mon cas, c'est /archives/music
. Configurer alors lighttpd avec l'option server.document-root=“/archives/music”
. Un exemple de /etc/lighttpd/lighttpd.conf
:# This is a minimal example config # See /usr/share/doc/lighttpd # and http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions server.port = 80 server.username = "http" server.groupname = "http" server.document-root = "/archives/music" server.errorlog = "/var/log/lighttpd/error.log" dir-listing.activate = "enable" index-file.names = ( "index.html" ) mimetype.assign = ( ".html" => "text/html", ".txt" => "text/plain", ".jpg" => "image/jpeg", ".png" => "image/png", "" => "application/octet-stream" ) # activer temporairement accesslog pour debug : #server.modules = ("mod_access", "mod_accesslog") #accesslog.filename = "/var/log/lighttpd/access.log"
music_directory
de /etc/mpd.conf
] = [server.document-root
de /etc/lighttpd/lighttpd.conf
] + [ce “Chemin vers la musique”].)cover.jpg
)shairport-sync
: voir https://wiki.archlinux.org/index.php/Shairport# diff -Nu libspotify/PKGBUILD libspotify.new/PKGBUILD --- libspotify/PKGBUILD 2012-07-18 15:55:00.000000000 +0200 +++ libspotify.new/PKGBUILD 2012-08-02 14:41:16.438661001 +0200 @@ -7,17 +7,17 @@ url="https://developer.spotify.com/technologies/libspotify/" license=('custom') depends=('glibc') -source=(http://developer.spotify.com/download/libspotify/libspotify-${pkgver}-Linux-${CARCH}-release.tar.gz) +source=(libspotify-12.1.51-Linux-armv5-release.tar.gz) -md5sums=('04735b890da0b1fc7f1f14e68a5293de') -sha256sums=('941ab4ba10bcd6ec4e96127afd095a39e11bc955de0882734c97e4f588b155ae') +#md5sums=('04735b890da0b1fc7f1f14e68a5293de') +sha256sums=('4d96efcb1423864683917f40fb4df481491250a76cb29be3a235b3732a64fefc') if [ "$CARCH" == "x86_64" ]; then md5sums=('83efddcc195d6ff12b24c97c767a5e45') sha256sums=('43a14e0732ba6ae30078fac105d0e2998d04d5f5c396a4968386bc4e22491058') fi build() { - cd "$srcdir/$pkgname-$pkgver-Linux-$CARCH-release" + cd "$srcdir/$pkgname-$pkgver-Linux-armv5-release" # Don't do stupid things from a Makefile msg2 "Patching Makefile..." @@ -25,7 +25,7 @@ } package() { - cd "$srcdir/$pkgname-$pkgver-Linux-$CARCH-release" + cd "$srcdir/$pkgname-$pkgver-Linux-armv5-release" make prefix="$pkgdir/usr" install
# diff -Nu pyspotify-git/PKGBUILD pyspotify-git.new/PKGBUILD --- pyspotify-git/PKGBUILD 2012-06-13 10:52:41.000000000 +0200 +++ pyspotify-git.new/PKGBUILD 2012-08-02 14:22:39.348661000 +0200 @@ -1,7 +1,7 @@ # Maintainer: Rickard Nilsson <rickard.nilsson@telia.com> pkgname=pyspotify-git -pkgver=20120613 +pkgver=20120802 pkgrel=1 pkgdesc="A Python Spotify library" arch=(any)
# diff -Nu mopidy-git/PKGBUILD mopidy-git.new/PKGBUILD --- mopidy-git/PKGBUILD 2012-02-19 19:16:57.000000000 +0100 +++ mopidy-git.new/PKGBUILD 2012-08-02 14:18:18.308661002 +0200 @@ -1,7 +1,7 @@ # Maintainer: Rickard Nilsson <rickard.nilsson@telia.com> pkgname=mopidy-git -pkgver=20120219 +pkgver=20120802 pkgrel=1 pkgdesc="A music server which can play music from Spotify" arch=(any)
MPD_SERVER_HOSTNAME = u'::' SPOTIFY_USERNAME = u'login' SPOTIFY_PASSWORD = u'mot_de_passe' SPOTIFY_BITRATE = 320
/etc/conf.d/mopidy
# The user that mopidy should run as. MOPIDY_USER="root"
et ajouter modpidy
dans la ligne DAEMONS=(…)
du fichier /etc/rc.conf
.
media_dir
et éventuellement donner un nom friendly_name
dans /etc/minidlna.conf
. Laisser les autres lignes par défaut.... media_dir=A,/archives/music media_dir=P,/archives/Photos media_dir=V,/archives/Videos ...
nobody
pour tourner minidlna. On peut le changer dans /etc/minidlna.conf
. Mais cette modification éventuelle n'a pas d'effet si on lance minidlna par systemd. En fait, /usr/lib/systemd/system/minidlna.service
contient une ligne qui définit ce user. Pour faire simple, garder ce user nobody
et # mkdir /var/{cache,log}/minidlna # chown nobody:nobody /var/{cache,log}/minidlna # systemctl enable minidlna.service # systemctl start minidlna Pour recréer manuellement la base de données : # systemctl stop minidlna # minidlnad -u nobody -R Attendre (utiliser top ou htop pour voir)... et ensuite : # killall minidlnad # systemctl start minidlna