Compare commits
3 Commits
media-soun
...
7127f0ab66
Author | SHA1 | Date | |
---|---|---|---|
7127f0ab66 | |||
ad04e2f121 | |||
a24935c7c3
|
@ -1,180 +0,0 @@
|
|||||||
# Copyright 1999-2024 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
ECM_HANDBOOK="optional"
|
|
||||||
ECM_TEST="true"
|
|
||||||
KFMIN=6.5.0
|
|
||||||
QTMIN=6.7.2
|
|
||||||
inherit ecm kde.org optfeature
|
|
||||||
|
|
||||||
DESCRIPTION="Free, versatile, powerful and feature-rich music player and collection manager"
|
|
||||||
HOMEPAGE="https://amarok.kde.org/ https://apps.kde.org/amarok/"
|
|
||||||
|
|
||||||
S="${WORKDIR}/${PN}-v${PV}"
|
|
||||||
LICENSE="GPL-2+" # TODO: CHECK
|
|
||||||
SLOT="6"
|
|
||||||
KEYWORDS="~amd64 ~x86"
|
|
||||||
#IUSE="ipod lastfm mtp +mariadb wikipedia qt5 +qt6 podcast"
|
|
||||||
IUSE="ipod lastfm mtp qt5 +qt6"
|
|
||||||
RESTRICT="mirror"
|
|
||||||
|
|
||||||
REQUIRED_USE="|| ( qt5 qt6 )"
|
|
||||||
|
|
||||||
#SRC_URI="https://invent.kde.org/multimedia/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
virtual/mysql
|
|
||||||
media-libs/taglib-extras
|
|
||||||
media-libs/taglib
|
|
||||||
media-libs/phonon[qt5?,qt6?]
|
|
||||||
|
|
||||||
qt6? (
|
|
||||||
dev-qt/qttools:6
|
|
||||||
dev-qt/qt5compat:6
|
|
||||||
>=dev-qt/qtbase-${QTMIN}:6[gui,widgets,xml]
|
|
||||||
dev-qt/qtdeclarative:6
|
|
||||||
>=kde-frameworks/karchive-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kcodecs-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kconfig-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kconfigwidgets-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kcoreaddons-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kcrash-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kdbusaddons-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kdeclarative-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kdnssd-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kdoctools-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kglobalaccel-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kguiaddons-${KFMIN}:6
|
|
||||||
>=kde-frameworks/ki18n-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kiconthemes-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kcmutils-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kio-${KFMIN}:6
|
|
||||||
>=kde-frameworks/knotifications-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kpackage-${KFMIN}:6
|
|
||||||
>=kde-frameworks/solid-${KFMIN}:6
|
|
||||||
>=kde-frameworks/ktexteditor-${KFMIN}:6
|
|
||||||
>=kde-frameworks/threadweaver-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kwidgetsaddons-${KFMIN}:6
|
|
||||||
>=kde-frameworks/kwindowsystem-${KFMIN}:6
|
|
||||||
|
|
||||||
kde-frameworks/kcolorscheme:6
|
|
||||||
kde-frameworks/kirigami:6
|
|
||||||
kde-frameworks/kstatusnotifieritem:6
|
|
||||||
)
|
|
||||||
|
|
||||||
qt5? (
|
|
||||||
|
|
||||||
dev-qt/linguist-tools
|
|
||||||
dev-qt/qtcore:5
|
|
||||||
dev-qt/qtdeclarative:5
|
|
||||||
dev-qt/qtgui:5
|
|
||||||
dev-qt/qtwidgets:5
|
|
||||||
dev-qt/qtxml:5
|
|
||||||
dev-qt/qtsql:5
|
|
||||||
|
|
||||||
kde-frameworks/karchive:5
|
|
||||||
kde-frameworks/kcodecs:5
|
|
||||||
kde-frameworks/kconfig:5
|
|
||||||
kde-frameworks/kconfigwidgets:5
|
|
||||||
kde-frameworks/kcoreaddons:5
|
|
||||||
kde-frameworks/kcrash:5
|
|
||||||
kde-frameworks/kdbusaddons:5
|
|
||||||
kde-frameworks/kdeclarative:5
|
|
||||||
kde-frameworks/kdnssd:5
|
|
||||||
kde-frameworks/kdoctools:5
|
|
||||||
kde-frameworks/kglobalaccel:5
|
|
||||||
kde-frameworks/kguiaddons:5
|
|
||||||
kde-frameworks/ki18n:5
|
|
||||||
kde-frameworks/kiconthemes:5
|
|
||||||
kde-frameworks/kcmutils:5
|
|
||||||
kde-frameworks/kio:5
|
|
||||||
kde-frameworks/knotifications:5
|
|
||||||
kde-frameworks/kpackage:5
|
|
||||||
kde-frameworks/solid:5
|
|
||||||
kde-frameworks/ktexteditor:5
|
|
||||||
kde-frameworks/threadweaver:5
|
|
||||||
kde-frameworks/kwidgetsaddons:5
|
|
||||||
kde-frameworks/kwindowsystem:5
|
|
||||||
|
|
||||||
kde-frameworks/kirigami:5
|
|
||||||
|
|
||||||
ipod? ( media-libs/libmygpo-qt )
|
|
||||||
)
|
|
||||||
|
|
||||||
"
|
|
||||||
|
|
||||||
RDEPEND="${DEPEND}
|
|
||||||
media-video/ffmpeg
|
|
||||||
"
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
local mycmakeargs=(
|
|
||||||
-DBUILD_WITH_QT6=$(usex qt6)
|
|
||||||
-DWITH_MP3Tunes=OFF
|
|
||||||
-DWITH_PLAYER=ON
|
|
||||||
-DWITH_UTILITIES=ON
|
|
||||||
-DCMAKE_DISABLE_FIND_PACKAGE_Googlemock=ON
|
|
||||||
-DCMAKE_DISABLE_FIND_PACKAGE_LibOFA=ON
|
|
||||||
-DCMAKE_DISABLE_FIND_PACKAGE_MySQLe=ON
|
|
||||||
-DWITH_IPOD=$(usex ipod)
|
|
||||||
-DWITH_GPODDER=OFF
|
|
||||||
$(cmake_use_find_package lastfm LibLastFm)
|
|
||||||
# $(cmake_use_find_package !mariadb MySQL)
|
|
||||||
$(cmake_use_find_package mtp Mtp)
|
|
||||||
$(cmake_use_find_package wikipedia Qt6WebEngineWidgets)
|
|
||||||
)
|
|
||||||
use ipod && mycmakeargs+=( DWITH_GDKPixBuf=ON )
|
|
||||||
use qt5 && use podcast && mycmakeargs+=( $(cmake_use_find_package podcast Mygpo-qt5) )
|
|
||||||
|
|
||||||
ecm_src_configure
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
ecm_pkg_postinst
|
|
||||||
|
|
||||||
pkg_is_installed() {
|
|
||||||
echo "${1} ($(has_version ${1} || echo "not ")installed)"
|
|
||||||
}
|
|
||||||
|
|
||||||
db_name() {
|
|
||||||
use mariadb && echo "MariaDB" || echo "MySQL"
|
|
||||||
}
|
|
||||||
|
|
||||||
optfeature "Audio CD support" "kde-apps/audiocd-kio:6"
|
|
||||||
|
|
||||||
if [[ -z ${REPLACING_VERSIONS} ]]; then
|
|
||||||
elog "You must configure ${PN} to use an external database server."
|
|
||||||
elog " 1. Make sure either MySQL or MariaDB is installed and configured"
|
|
||||||
elog " Checking local system:"
|
|
||||||
elog " $(pkg_is_installed dev-db/mariadb)"
|
|
||||||
elog " $(pkg_is_installed dev-db/mysql)"
|
|
||||||
elog " For preliminary configuration of $(db_name) Server refer to"
|
|
||||||
elog " https://wiki.gentoo.org/wiki/$(db_name)#Configuration"
|
|
||||||
elog " 2. Ensure 'mysql' service is started and run:"
|
|
||||||
elog " # emerge --config amarok"
|
|
||||||
elog " 3. Run ${PN} and go to 'Configure Amarok - Database' menu page"
|
|
||||||
elog " Check 'Use external MySQL database' and press OK"
|
|
||||||
elog
|
|
||||||
elog "For more information please read:"
|
|
||||||
elog " https://community.kde.org/Amarok/Community/MySQL"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_config() {
|
|
||||||
# Create external mysql database with amarok default user/password
|
|
||||||
local AMAROK_DB_NAME="amarokdb"
|
|
||||||
local AMAROK_DB_USER_NAME="amarokuser"
|
|
||||||
local AMAROK_DB_USER_PWD="password"
|
|
||||||
|
|
||||||
einfo "Initializing ${PN} MySQL database 'amarokdb':"
|
|
||||||
einfo "If prompted for a password, please enter your MySQL root password."
|
|
||||||
einfo
|
|
||||||
|
|
||||||
mysql -u root -p -e '
|
|
||||||
CREATE DATABASE IF NOT EXISTS ${AMAROK_DB_NAME};
|
|
||||||
GRANT ALL PRIVILEGES ON ${AMAROK_DB_NAME}.* TO '${AMAROK_DB_USER_NAME}' IDENTIFIED BY '${AMAROK_DB_USER_PWD}';
|
|
||||||
FLUSH PRIVILEGES;'
|
|
||||||
einfo "${PN} MySQL database 'amarokdb' successfully initialized!"
|
|
||||||
}
|
|
13
metadata/md5-cache/www-apps/inpxer-0.2.5
Normal file
13
metadata/md5-cache/www-apps/inpxer-0.2.5
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
BDEPEND=>=dev-lang/go-1.20:= app-arch/unzip
|
||||||
|
DEFINED_PHASES=compile install prepare test unpack
|
||||||
|
DESCRIPTION=OPDS and web server for .inpx libraries with full-text search
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://github.com/shemanaev/inpxer
|
||||||
|
INHERIT=go-module
|
||||||
|
KEYWORDS=~amd64
|
||||||
|
LICENSE=MIT
|
||||||
|
RESTRICT=strip
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://github.com/shemanaev/inpxer/archive/v0.2.5.tar.gz -> inpxer-0.2.5.tar.gz
|
||||||
|
_eclasses_=multiprocessing e644caa6eb7ce7e5ab0864383ac13ad9 toolchain-funcs 948855ec7ad9f11351edf9066708dfa9 multilib 7e1347c006a76bb812f3a9f663b79991 flag-o-matic fa33e3696fe4689dda7e9affe92e2c94 go-env 90efbc8636d2f02d9654183330e84cf7 go-module 83fd3ed1657cfc316c93d6a37018290d
|
||||||
|
_md5_=b4ea44fc838b4ba7630c22ff85e423c2
|
1
www-apps/inpxer/Manifest
Normal file
1
www-apps/inpxer/Manifest
Normal file
@ -0,0 +1 @@
|
|||||||
|
DIST inpxer-0.2.5.tar.gz 485529 BLAKE2B d15f1aacbb00cedaf3b605a9125ce82c65e535cf4417b6562a3e7de8384e039dd551572a6c3b6b2c6d078a3b00f71df8254f101fd00c9831779ccaa422d75a38 SHA512 dbf1f5e50c3ec2291698293ef37bcb31a7e912832fd5a4bdad4e7a2db92d85592fdbb813ea85c151e53e5bf4d39219ec38f285b091f1d6a8fd986900dd04c175
|
11
www-apps/inpxer/files/01-config-placement-0.2.5.patch
Normal file
11
www-apps/inpxer/files/01-config-placement-0.2.5.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- a/internal/config/config.go 2024-09-16 02:47:23.666714944 +0300
|
||||||
|
+++ b/internal/config/config.go 2024-09-16 02:47:50.696715919 +0300
|
||||||
|
@@ -8,7 +8,7 @@
|
||||||
|
"github.com/pelletier/go-toml/v2"
|
||||||
|
)
|
||||||
|
|
||||||
|
-const configFilename = "inpxer.toml"
|
||||||
|
+const configFilename = "/etc/inpxer/inpxer.toml"
|
||||||
|
|
||||||
|
type MyConfig struct {
|
||||||
|
Language string `toml:"language"`
|
30
www-apps/inpxer/files/inpxer-example.toml
Normal file
30
www-apps/inpxer/files/inpxer-example.toml
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
# language used for interface and indexing
|
||||||
|
language = "en" # en, ru
|
||||||
|
# title displayed on web and in OPDS catalog
|
||||||
|
title = "My library"
|
||||||
|
# format for author's name. possible values:
|
||||||
|
# - short: Fyodor Dostoevsky
|
||||||
|
# - initials: F. M. Dostoevsky
|
||||||
|
# - full: Fyodor Mikhailovich Dostoevsky
|
||||||
|
author_name_format = "short"
|
||||||
|
# where to store index
|
||||||
|
# WARNING: keep in mind that this folder will be deleted during indexing,
|
||||||
|
# don't point it to an existing location (and definitely don't set it equal to library_path)
|
||||||
|
index_path = "/data/index"
|
||||||
|
# where is you books stored
|
||||||
|
library_path = "/data/library"
|
||||||
|
# host:port to listen on
|
||||||
|
listen = ":8080"
|
||||||
|
# fully qualified url to server. required for OPDS (OpenSearch)
|
||||||
|
full_url = "http://localhost:8080"
|
||||||
|
|
||||||
|
# format converters. can be as many as you want
|
||||||
|
#[[converters]]
|
||||||
|
## source file extension
|
||||||
|
#from = "fb2"
|
||||||
|
## target file extension
|
||||||
|
#to = "epub"
|
||||||
|
## converter executable
|
||||||
|
#command = "fb2epub"
|
||||||
|
## converter arguments. {from} becomes source file path, {to} - output file path, {to_dir} - output directory (for fb2converter)
|
||||||
|
#arguments = "{from} {to}"
|
23
www-apps/inpxer/files/inpxer.initd-1
Normal file
23
www-apps/inpxer/files/inpxer.initd-1
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#!/sbin/openrc-run
|
||||||
|
# Copyright 2016-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
description="Web server for .inpx libraries"
|
||||||
|
pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
|
||||||
|
user=${user:-${RC_SVCNAME}}
|
||||||
|
group=${group:-${RC_SVCNAME}}
|
||||||
|
|
||||||
|
command="/usr/sbin/inpxer"
|
||||||
|
command_args="${command_args:-serve}"
|
||||||
|
command_background="true"
|
||||||
|
command_user="${user}:${group}"
|
||||||
|
output_log="/var/log/inpxer/${RC_SVCNAME}.log"
|
||||||
|
error_log="/var/log/inpxer/${RC_SVCNAME}.log"
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
after net
|
||||||
|
}
|
||||||
|
|
||||||
|
start_pre() {
|
||||||
|
checkpath -q -d -m 0755 -o ${user}:${group} /var/log/inpxer
|
||||||
|
}
|
9
www-apps/inpxer/files/inpxer.logrotate
Normal file
9
www-apps/inpxer/files/inpxer.logrotate
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
/var/log/inpxer/inpxer.log {
|
||||||
|
weekly
|
||||||
|
rotate 10
|
||||||
|
copytruncate
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
notifempty
|
||||||
|
missingok
|
||||||
|
}
|
60
www-apps/inpxer/inpxer-0.2.5.ebuild
Normal file
60
www-apps/inpxer/inpxer-0.2.5.ebuild
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit go-module
|
||||||
|
|
||||||
|
DESCRIPTION="OPDS and web server for .inpx libraries with full-text search"
|
||||||
|
HOMEPAGE="https://github.com/shemanaev/inpxer"
|
||||||
|
|
||||||
|
if [[ ${PV} == 9999* ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
EGIT_REPO_URI="https://github.com/shemanaev/inpxer.git"
|
||||||
|
else
|
||||||
|
SRC_URI="
|
||||||
|
https://github.com/shemanaev/inpxer/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||||
|
"
|
||||||
|
KEYWORDS="~amd64"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# main pkg
|
||||||
|
LICENSE="MIT"
|
||||||
|
SLOT="0"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}"/01-config-placement-0.2.5.patch
|
||||||
|
)
|
||||||
|
|
||||||
|
src_unpack() {
|
||||||
|
if [[ ${PV} == 9999* ]]; then
|
||||||
|
git-r3_src_unpack
|
||||||
|
go-module_live_vendor
|
||||||
|
else
|
||||||
|
default
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
[[ ${PV} != 9999* ]] && { ln -sv ../vendor ./ || die ; }
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
go build . || die
|
||||||
|
./"${PN}" --help > "${PN}".1 || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
emake test-flags= test
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dosbin "${PN}"
|
||||||
|
cp "${FILESDIR}"/inpxer-example.toml "${ED}"/etc/inpxer/inpxer.toml || die
|
||||||
|
doman "${PN}".1
|
||||||
|
newinitd "${FILESDIR}"/${PN}.initd-1 ${PN}
|
||||||
|
insinto /etc/logrotate.d
|
||||||
|
newins "${FILESDIR}"/${PN}.logrotate "${PN}"
|
||||||
|
keepdir /var/log/${PN}
|
||||||
|
}
|
@ -1,14 +1,13 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
<pkgmetadata>
|
<pkgmetadata>
|
||||||
<maintainer type="person" proxied="yes">
|
<maintainer type="person">
|
||||||
<email>root@cppmm.net.ru</email>
|
<email>root@cppmm.net.ru</email>
|
||||||
<name>Anton Kropachev</name>
|
<name>Anton Kropachev</name>
|
||||||
</maintainer>
|
</maintainer>
|
||||||
<use>
|
|
||||||
<flag name="lastfm">Use liblastfm for fetching song info, scrobbling and radio streams</flag>
|
|
||||||
</use>
|
|
||||||
<upstream>
|
<upstream>
|
||||||
<remote-id type="kde-invent">multimedia/Amarok</remote-id>
|
<remote-id type="github">shemanaev/inpxer</remote-id>
|
||||||
|
<bugs-to>https://github.com/shemanaev/inpxer/issues</bugs-to>
|
||||||
|
<doc>https://github.com/shemanaev/inpxer/blob/master/README.md</doc>
|
||||||
</upstream>
|
</upstream>
|
||||||
</pkgmetadata>
|
</pkgmetadata>
|
Reference in New Issue
Block a user