music player daemon.

This commit is contained in:
4fury-c3440d8
2020-12-13 08:50:58 +00:00
parent d73bd33008
commit c3e440a411
22 changed files with 868 additions and 221 deletions
+105
View File
@@ -0,0 +1,105 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file https://www.gnu.org/licenses/gpl-3.0.txt
from pisi.actionsapi import mesontools
from pisi.actionsapi import pisitools
def setup():
# pisitools.dosed("doc/meson.build", "sphinx-build", "sphinx-build3")
pisitools.ldflags.add("-lbsd")
pisitools.cxxflags.add("-lbsd")
mesontools.configure("-Ddocumentation=enabled -Dfifo=false \
\
-Dtcp=true \
-Ddsd=true \
-Dcue=true \
-Dpipe=true \
-Dhttpd=true \
-Depoll=true \
-Ddaemon=true \
-Dinotify=true \
-Deventfd=true \
-Dsignalfd=true \
-Drecorder=true \
-Ddatabase=true \
-Dneighbor=true \
-Dwave_encoder=true \
-Dlocal_socket=true \
\
-Dao=enabled \
-Dgme=enabled \
-Dmad=enabled \
-Dmms=enabled \
-Dnfs=enabled \
-Dicu=enabled \
-Doss=enabled \
-Dfaad=enabled \
-Dflac=enabled \
-Dipv6=enabled \
-Dupnp=enabled \
-Dcurl=enabled \
-Dalsa=enabled \
-Dopus=enabled \
-Dlame=enabled \
-Djack=enabled \
-Dsoxr=enabled \
-Ddbus=enabled \
-Dpcre=enabled \
-Dyajl=enabled \
-Dzlib=enabled \
-Dzzip=enabled \
-Dqobuz=enabled \
-Dtidal=enabled \
-Diconv=enabled \
-Dshout=enabled \
-Dbzip2=enabled \
-Dshine=enabled \
-Dpulse=enabled \
-Dexpat=enabled \
-Dopenal=enabled \
-Dmpg123=enabled \
-Dvorbis=enabled \
-Dudisks=enabled \
-Dwebdav=enabled \
-Dmpcdec=enabled \
-Dffmpeg=enabled \
-Dmikmod=enabled \
-Did3tag=enabled \
-Dsqlite=enabled \
-Dmodplug=enabled \
-Dwavpack=enabled \
-Dtwolame=enabled \
-Diso9660=enabled \
-Dsndfile=enabled \
-Dsmbclient=enabled \
-Daudiofile=enabled \
-Dvorbisenc=enabled \
-Dfluidsynth=enabled \
-Dsoundcloud=enabled \
-Dchromaprint=enabled \
-Dlibmpdclient=enabled \
-Dlibsamplerate=enabled \
-Dcdio_paranoia=enabled \
-Dsolaris_output=enabled \
\
-Dzeroconf=auto \
\
-Dsndio=disabled \
-Dadplug=disabled \
-Dtremor=disabled \
-Dsidplay=disabled \
-Dsystemd=disabled \
-Dwildmidi=disabled")
def build():
mesontools.build()
def install():
mesontools.install()
pisitools.insinto("/etc", "doc/mpdconf.example", "mpd.conf")
pisitools.dodoc("AUTHORS", "COPYING", "NEWS", "README.md")
+15
View File
@@ -0,0 +1,15 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
for d in ["/var/lib/mpd", "/var/lib/mpd/.mpd", "/var/lib/mpd/.mpd/playlists", "/var/lib/mpd/.mpd/music"]:
if not os.path.exists(d):
os.mkdir(d)
# $ id nobody
# uid=250(mpd) gid=18(audio)
os.chown(d, 250, 18)
os.chmod(d, 0750)
os.system("/sbin/mudur_tmpfiles.py /usr/lib/tmpfiles.d/mpd.conf")
+29
View File
@@ -0,0 +1,29 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
serviceType = "server"
serviceDesc = \
\
_({"en": "Music Player Daemon",
"tr": "Müzik Çalıcı Sunucusu"})
from comar.service import *
import re
import os
PIDFILE = "/run/mpd/mpd.pid"
@synchronized
def start():
startService(command="/usr/bin/mpd",
args="/etc/mpd.conf",
pidfile=PIDFILE,
donotify=True)
@synchronized
def stop():
stopService(PIDFILE,
donotify=True)
def status():
return isServiceRunning(PIDFILE)
@@ -0,0 +1 @@
d /run/mpd 0755 mpd audio
+167
View File
@@ -0,0 +1,167 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>mpd</Name>
<Homepage>https://www.musicpd.org/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>service</IsA>
<PartOf>multimedia.stream</PartOf>
<Summary>Music Player Daemon.</Summary>
<Description>
Music Player Daemon (MPD) is a flexible, powerful, server-side application for playing music. Through plugins and libraries it can play a variety of sound files while being controlled by its network protocol.
</Description>
<Archive sha1sum="30bb8adcb6665fa3863f181f14a513209876297a" type="tarxz">
https://www.musicpd.org/download/mpd/0.22/mpd-0.22.3.tar.xz
</Archive>
<BuildDependencies>
<Dependency>meson</Dependency>
<Dependency>cmake</Dependency>
<Dependency>curl-devel</Dependency>
<Dependency>flac-devel</Dependency>
<Dependency>yajl-devel</Dependency>
<Dependency>lame-devel</Dependency>
<Dependency>zlib-devel</Dependency>
<Dependency>dbus-devel</Dependency>
<Dependency>boost-devel</Dependency>
<Dependency>expat-devel</Dependency>
<Dependency>samba-devel</Dependency>
<Dependency>icu4c-devel</Dependency>
<Dependency>avahi-devel</Dependency>
<Dependency>faad2-devel</Dependency>
<Dependency>libao-devel</Dependency>
<Dependency>shine-devel</Dependency>
<Dependency>libmms-devel</Dependency>
<Dependency>mpg123-devel</Dependency>
<Dependency>sqlite-devel</Dependency>
<Dependency>openal-devel</Dependency>
<Dependency>ffmpeg-devel</Dependency>
<Dependency>libgme-devel</Dependency>
<Dependency>libmad-devel</Dependency>
<Dependency>libogg-devel</Dependency>
<Dependency>libnfs-devel</Dependency>
<Dependency>libcdio-devel</Dependency>
<Dependency>libopus-devel</Dependency>
<Dependency>libsoxr-devel</Dependency>
<Dependency>libupnp-devel</Dependency>
<Dependency>twolame-devel</Dependency>
<Dependency>wavpack-devel</Dependency>
<Dependency>zziplib-devel</Dependency>
<Dependency>alsa-lib-devel</Dependency>
<Dependency>libshout-devel</Dependency>
<Dependency>liburing-devel</Dependency>
<Dependency>libmpcdec-devel</Dependency>
<Dependency>libgcrypt-devel</Dependency>
<Dependency>audiofile-devel</Dependency>
<Dependency>libid3tag-devel</Dependency>
<Dependency>libmikmod-devel</Dependency>
<Dependency>libvorbis-devel</Dependency>
<Dependency>fluidsynth-devel</Dependency>
<Dependency>libmodplug-devel</Dependency>
<Dependency>libsndfile-devel</Dependency>
<Dependency>libmpdclient-devel</Dependency>
<Dependency>libsamplerate-devel</Dependency>
<Dependency>libchromaprint-devel</Dependency>
<Dependency>pulseaudio-libs-devel</Dependency>
<Dependency>libcdio-paranoia-devel</Dependency>
<Dependency>jack-audio-connection-kit-devel</Dependency>
<!-- for documentation build. -->
<Dependency>python3-six</Dependency>
<Dependency>python3-Babel</Dependency>
<Dependency>python3-sphinx</Dependency>
<Dependency>python3-certifi</Dependency>
<Dependency>python3-requests</Dependency>
<Dependency>python3-imagesize</Dependency>
<Dependency>python3-snowballstemmer</Dependency>
<Dependency>python3-sphinx-alabaster-theme</Dependency>
<Dependency>python3-sphinxcontrib-websupport</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>mpd</Name>
<RuntimeDependencies>
<Dependency>curl</Dependency>
<Dependency>flac</Dependency>
<Dependency>yajl</Dependency>
<Dependency>lame</Dependency>
<Dependency>zlib</Dependency>
<Dependency>dbus</Dependency>
<Dependency>boost</Dependency>
<Dependency>expat</Dependency>
<Dependency>samba</Dependency>
<Dependency>icu4c</Dependency>
<Dependency>avahi</Dependency>
<Dependency>faad2</Dependency>
<Dependency>libao</Dependency>
<Dependency>shine</Dependency>
<Dependency>libmms</Dependency>
<Dependency>mpg123</Dependency>
<Dependency>sqlite</Dependency>
<Dependency>openal</Dependency>
<Dependency>ffmpeg</Dependency>
<Dependency>libgme</Dependency>
<Dependency>libmad</Dependency>
<Dependency>libogg</Dependency>
<Dependency>libnfs</Dependency>
<Dependency>libcdio</Dependency>
<Dependency>libopus</Dependency>
<Dependency>libsoxr</Dependency>
<Dependency>libupnp</Dependency>
<Dependency>twolame</Dependency>
<Dependency>wavpack</Dependency>
<Dependency>zziplib</Dependency>
<Dependency>alsa-lib</Dependency>
<Dependency>libshout</Dependency>
<Dependency>liburing</Dependency>
<Dependency>libmpcdec</Dependency>
<Dependency>libgcrypt</Dependency>
<Dependency>audiofile</Dependency>
<Dependency>libid3tag</Dependency>
<Dependency>libmikmod</Dependency>
<Dependency>libvorbis</Dependency>
<Dependency>avahi-libs</Dependency>
<Dependency>fluidsynth</Dependency>
<Dependency>libmodplug</Dependency>
<Dependency>libsndfile</Dependency>
<Dependency>libmpdclient</Dependency>
<Dependency>libsamplerate</Dependency>
<Dependency>libchromaprint</Dependency>
<Dependency>pulseaudio-libs</Dependency>
<Dependency>libcdio-paranoia</Dependency>
<Dependency>jack-audio-connection-kit</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="config">/etc</Path>
<Path fileType="executable">/usr/bin</Path>
<!-- <Path fileType="data">/usr/lib/tmpfiles.d/</Path> -->
<Path fileType="data">/usr/share/icons</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
<AdditionalFiles>
<!-- <AdditionalFile owner="root" permission="0644" target="/usr/lib/tmpfiles.d/mpd.conf">tmpfiles.conf</AdditionalFile> -->
</AdditionalFiles>
<Provides>
<!--
<COMAR script="service.py">System.Service</COMAR>
<COMAR script="package.py">System.Package</COMAR>
-->
</Provides>
</Package>
<History>
<Update release="1">
<Date>2020-12-13</Date>
<Version>0.22.3</Version>
<Comment>First Beta release.</Comment>
<Name>fury</Name>
<Email>wascheme@tuta.io</Email>
</Update>
</History>
</PISI>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>mpd</Name>
<Summary xml:lang="tr">Müzik Çalıcı Sunucusu (MPD)</Summary>
<Description xml:lang="tr">MPD çoğu müzik dosyasını (MP3, Ogg Vorbis, FLAC, AAC, Mod vs.) çalar ve ağda yayınlar.</Description>
</Source>
</PISI>