mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-28 11:43:25 +02:00
mympd: new addon to control mpd via WebGUI
myMPD is written in C and has a nice WebGUI to play local music and also a WebRadio browser. This is to replace the removec client175. After install it can reached via https://IP_OF_THE_IPFIRE:8800 Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org> Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
This commit is contained in:
committed by
Michael Tremer
parent
c4b233ddf7
commit
9786225a9b
1
config/backup/includes/mympd
Normal file
1
config/backup/includes/mympd
Normal file
@@ -0,0 +1 @@
|
||||
/var/lib/mympd
|
||||
18
config/rootfiles/packages/mympd
Normal file
18
config/rootfiles/packages/mympd
Normal file
@@ -0,0 +1,18 @@
|
||||
etc/rc.d/init.d/mympd
|
||||
usr/bin/mympd
|
||||
usr/bin/mympd-script
|
||||
#usr/lib/systemd/system/mympd.service
|
||||
#usr/share/doc/mympd
|
||||
#usr/share/doc/mympd/CHANGELOG.md
|
||||
#usr/share/doc/mympd/LICENSE.md
|
||||
#usr/share/doc/mympd/README.md
|
||||
#usr/share/doc/mympd/SECURITY.md
|
||||
#usr/share/man/man1/mympd-script.1.gz
|
||||
#usr/share/man/man1/mympd.1.gz
|
||||
var/ipfire/backup/addons/includes/mympd
|
||||
var/lib/mympd
|
||||
#var/lib/mympd/config
|
||||
#var/lib/mympd/config/http
|
||||
#var/lib/mympd/config/ssl_port
|
||||
#var/lib/mympd/state
|
||||
#var/lib/mympd/state/music_directory
|
||||
107
lfs/mympd
Normal file
107
lfs/mympd
Normal file
@@ -0,0 +1,107 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007-2024 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Definitions
|
||||
###############################################################################
|
||||
|
||||
include Config
|
||||
|
||||
SUMMARY = Webfrontend for Music Player Daemon
|
||||
|
||||
VER = 13.0.6
|
||||
|
||||
THISAPP = myMPD-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = mympd
|
||||
PAK_VER = 1
|
||||
|
||||
# TODO move mpd initskript and config to mpd package to run without mpfire
|
||||
DEPS = mpd libmpdclient mpfire
|
||||
|
||||
SERVICES = mympd
|
||||
|
||||
###############################################################################
|
||||
# Top-level Rules
|
||||
###############################################################################
|
||||
|
||||
objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_BLAKE2 = 2ecd8d42b9398e85fc6c149c9e55f760f2039434039d558ac1914b447858a59676ed9300bc89b2a25757b8d9828dec5934376d4587f6b84026d07adbfd2e4a33
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
|
||||
|
||||
download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
|
||||
b2 : $(subst %,%_BLAKE2,$(objects))
|
||||
|
||||
dist:
|
||||
@$(PAK)
|
||||
|
||||
###############################################################################
|
||||
# Downloading, checking, b2sum
|
||||
###############################################################################
|
||||
|
||||
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
|
||||
@$(CHECK)
|
||||
|
||||
$(patsubst %,$(DIR_DL)/%,$(objects)) :
|
||||
@$(LOAD)
|
||||
|
||||
$(subst %,%_BLAKE2,$(objects)) :
|
||||
@$(B2SUM)
|
||||
|
||||
###############################################################################
|
||||
# Installation Details
|
||||
###############################################################################
|
||||
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && mkdir -p build
|
||||
cd $(DIR_APP)/build && cmake -Wno-dev \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ..
|
||||
cd $(DIR_APP)/build && make $(MAKETUNING)
|
||||
cd $(DIR_APP)/build && make install
|
||||
|
||||
#generate config
|
||||
mkdir -p /var/lib/mympd/config
|
||||
echo false > /var/lib/mympd/config/http
|
||||
echo 8800 > /var/lib/mympd/config/ssl_port
|
||||
mkdir -p /var/lib/mympd/state
|
||||
echo /var/mp3 > /var/lib/mympd/state/music_directory
|
||||
chown nobody:nobody -R /var/lib/mympd
|
||||
|
||||
#install backup include
|
||||
install -v -m 644 $(DIR_SRC)/config/backup/includes/mympd \
|
||||
/var/ipfire/backup/addons/includes/mympd
|
||||
|
||||
#install initscript
|
||||
$(call INSTALL_INITSCRIPTS,$(SERVICES))
|
||||
|
||||
@rm -rf $(DIR_APP)
|
||||
@$(POSTBUILD)
|
||||
1
make.sh
1
make.sh
@@ -1702,6 +1702,7 @@ buildipfire() {
|
||||
lfsmake2 perl-MIME-Base32
|
||||
lfsmake2 perl-URI-Encode
|
||||
lfsmake2 rsnapshot
|
||||
lfsmake2 mympd
|
||||
|
||||
# Kernelbuild ... current we have no platform that need
|
||||
# multi kernel builds so KCFG is empty
|
||||
|
||||
53
src/initscripts/packages/mympd
Normal file
53
src/initscripts/packages/mympd
Normal file
@@ -0,0 +1,53 @@
|
||||
#!/bin/sh
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007-2024 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
###############################################################################
|
||||
|
||||
. /etc/sysconfig/rc
|
||||
. $rc_functions
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
|
||||
boot_mesg "Starting mympd..."
|
||||
loadproc /usr/bin/mympd -u nobody -s >/dev/null 2>&1 &
|
||||
evaluate_retval
|
||||
;;
|
||||
|
||||
stop)
|
||||
boot_mesg "Stopping mympd..."
|
||||
killproc /usr/bin/mympd >/dev/null 2>&1
|
||||
evaluate_retval
|
||||
;;
|
||||
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 3
|
||||
$0 start
|
||||
;;
|
||||
|
||||
status)
|
||||
statusproc /usr/bin/mympd
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
30
src/paks/mympd/install.sh
Normal file
30
src/paks/mympd/install.sh
Normal file
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
############################################################################
|
||||
# #
|
||||
# This file is part of the IPFire Firewall. #
|
||||
# #
|
||||
# IPFire is free software; you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation; either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# IPFire is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with IPFire; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||
# #
|
||||
# Copyright (C) 2007-2024 IPFire-Team <info@ipfire.org>. #
|
||||
# #
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
extract_files
|
||||
ln -svf /etc/init.d/mympd /etc/rc.d/rc3.d/S66mympd
|
||||
ln -svf /etc/init.d/mympd /etc/rc.d/rc0.d/K34mympd
|
||||
ln -svf /etc/init.d/mympd /etc/rc.d/rc6.d/K34mympd
|
||||
restore_backup ${NAME}
|
||||
/etc/init.d/mympd start
|
||||
28
src/paks/mympd/uninstall.sh
Normal file
28
src/paks/mympd/uninstall.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
############################################################################
|
||||
# #
|
||||
# This file is part of the IPFire Firewall. #
|
||||
# #
|
||||
# IPFire is free software; you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation; either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# IPFire is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with IPFire; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||
# #
|
||||
# Copyright (C) 2007-2024 IPFire-Team <info@ipfire.org>. #
|
||||
# #
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
/etc/init.d/mpd stop
|
||||
make_backup ${NAME}
|
||||
remove_files
|
||||
rm -f /etc/rc.d/rc*.d/???mympd
|
||||
27
src/paks/mympd/update.sh
Normal file
27
src/paks/mympd/update.sh
Normal file
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
############################################################################
|
||||
# #
|
||||
# This file is part of the IPFire Firewall. #
|
||||
# #
|
||||
# IPFire is free software; you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation; either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# IPFire is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with IPFire; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||
# #
|
||||
# Copyright (C) 2007-2024 IPFire-Team <info@ipfire.org>. #
|
||||
# #
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
extract_backup_includes
|
||||
./uninstall.sh
|
||||
./install.sh
|
||||
Reference in New Issue
Block a user