summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorLeonard de Ruijter2021-02-10 08:35:23 +0100
committerLeonard de Ruijter2021-02-10 08:35:23 +0100
commit91f026431d67afcb98b19882575ff8d9c11f2e68 (patch)
treef3f4fa99450e6cce2acb6ed161b39e839ca3e3cf
parent2aa002872840a2d4a7527ba45a4896a036539138 (diff)
downloadaur-91f026431d67afcb98b19882575ff8d9c11f2e68.tar.gz
Bring package in sync with vanilla icecast
-rw-r--r--.SRCINFO40
-rw-r--r--PKGBUILD53
-rw-r--r--icecast-kh.install31
-rw-r--r--icecast-kh.service34
-rw-r--r--icecast-kh.sysusers1
-rw-r--r--icecast-kh.tmpfiles1
-rw-r--r--start-by-icecast.patch16
7 files changed, 97 insertions, 79 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8b609317f928..a4bff05a2b34 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,20 +1,22 @@
# Generated by mksrcinfo v8
-# Wed Feb 10 07:12:00 UTC 2021
+# Wed Feb 10 07:34:43 UTC 2021
pkgbase = icecast-kh
pkgdesc = The KH branche extends the official release of Icecast with features that may be (if found to be working out well) merged into the next official release.
pkgver = 2.4.0_kh15
- pkgrel = 1
+ pkgrel = 2
url = http://karlheyes.github.com
- install = icecast-kh.install
- arch = i686
arch = x86_64
license = GPL2
+ makedepends = curl
+ makedepends = libogg
+ makedepends = libvorbis
+ depends = glibc
+ depends = libkate
+ depends = libxml2
depends = libxslt
- depends = libvorbis
- depends = libtheora
+ depends = openssl
depends = speex
- depends = curl
- optdepends = ices-kh: client for icecast server
+ depends = libtheora
provides = icecast=2.4.0
conflicts = icecast
conflicts = icecast
@@ -24,12 +26,24 @@ pkgbase = icecast-kh
backup = etc/logrotate.d/icecast
source = https://github.com/karlheyes/icecast-kh/archive/icecast-2.4.0-kh15.tar.gz
source = icecast-kh.logrotate
- source = start-by-icecast.patch
source = icecast-kh.service
- sha256sums = fe7b7a9309f538a001f5253acd7f2899180d50244513dfc9cc490fe7d33ec9b7
- sha256sums = 46f4d6942223a6d82f0b188e616a8a9cda3911663d59cc976c44b7a9822149f0
- sha256sums = b09ac79daccf8347ead4088aca31d2214dcd27e211e9ee2e96ef1a44b65df84f
- sha256sums = 4b7f31aff45c6a572d54279531b7944567363d4c2bcd86d9c48887dc7da80a73
+ source = icecast-kh.sysusers
+ source = icecast-kh.tmpfiles
+ sha512sums = 698332967a1a9c0c6b67a1e01f9cefe85741eb2ba62b692877ca4003c9bdcf6a32e90842246ae67c700a0bd2e7760ca53455b4197f46089649b6148b5894cc64
+ sha512sums = db10c9c4b6f12fa2524820afd9f14d1ee14a7af6dfa1896975394a0d95ec412332f36f3d95375b5cd8679d64093ae609ebb66b9de14b3f95afda980f4f6dd458
+ sha512sums = 8b9170e155e393396aaf471bd304b77d6ae6b8a6198959aa5e1ddc8fe55be7f19efc844d0352300ba5621a8de9e47cc3842b8b8d0ac8606635e27346d805f497
+ sha512sums = ca0c6e81e84910ac5bcd573aa280224426201b4aa8580f974b17daea6f95472e3ba47b3319ea1291d6762e858a3f7e9120f05357fe02aa83f01bb767862a04c8
+ sha512sums = db3cf00e5ff1e2f5636288992212964f068f94ee98a880c27f00afda44f048e608636a34f2ae551f3cf24f7c43ebd2f40ab8a9bcc5d8057901d4a871c6b79f13
pkgname = icecast-kh
+ depends = glibc
+ depends = libkate
+ depends = libxml2
+ depends = libxslt
+ depends = openssl
+ depends = speex
+ depends = libtheora
+ depends = libcurl.so
+ depends = libogg.so
+ depends = libvorbis.so
diff --git a/PKGBUILD b/PKGBUILD
index e815cafeb4ca..635592046cc7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,43 +1,60 @@
-# Maintainer: Leonard de Ruijter <dev@systeemdenker.nl>
+# Maintainer: Leonard de Ruijter <alderuijter@gmail.com>
+# Contributor: David Runge <dvzrv@archlinux.org>
+# Contributor: Lukas Fleischer <lfleischer@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Andreas Radke <andyrtr@archlinux.org>
+# Contributor: Jason Chu <jchu@xentac.net>
pkgname=icecast-kh
pkgver=2.4.0_kh15
-pkgrel=1
+pkgrel=2
pkgdesc='The KH branche extends the official release of Icecast with features that may be (if found to be working out well) merged into the next official release.'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='http://karlheyes.github.com'
license=('GPL2')
conflicts=('icecast' 'icecast' 'icecast-svn' 'icecast-kh-git')
provides=("icecast=${pkgver/_*}")
-depends=('libxslt' 'libvorbis' 'libtheora' 'speex' 'curl')
-optdepends=('ices-kh: client for icecast server')
-OPTIONS=(!debugĀ !strip)
+depends=('glibc' 'libkate' 'libxml2' 'libxslt' 'openssl' 'speex' 'libtheora')
+makedepends=('curl' 'libogg' 'libvorbis')
backup=('etc/icecast.xml' 'etc/logrotate.d/icecast')
-install=$pkgname.install
-source=(https://github.com/karlheyes/$pkgname/archive/${pkgname/-*}-${pkgver//_/-}.tar.gz
- $pkgname.logrotate
- start-by-icecast.patch
- $pkgname.service)
-sha256sums=('fe7b7a9309f538a001f5253acd7f2899180d50244513dfc9cc490fe7d33ec9b7'
- '46f4d6942223a6d82f0b188e616a8a9cda3911663d59cc976c44b7a9822149f0'
- 'b09ac79daccf8347ead4088aca31d2214dcd27e211e9ee2e96ef1a44b65df84f'
- '4b7f31aff45c6a572d54279531b7944567363d4c2bcd86d9c48887dc7da80a73')
+source=(
+ "https://github.com/karlheyes/$pkgname/archive/${pkgname/-*}-${pkgver//_/-}.tar.gz"
+ "${pkgname}.logrotate"
+ "${pkgname}.service"
+ "${pkgname}.sysusers"
+ "${pkgname}.tmpfiles"
+)
+sha512sums=('698332967a1a9c0c6b67a1e01f9cefe85741eb2ba62b692877ca4003c9bdcf6a32e90842246ae67c700a0bd2e7760ca53455b4197f46089649b6148b5894cc64'
+ 'db10c9c4b6f12fa2524820afd9f14d1ee14a7af6dfa1896975394a0d95ec412332f36f3d95375b5cd8679d64093ae609ebb66b9de14b3f95afda980f4f6dd458'
+ '8b9170e155e393396aaf471bd304b77d6ae6b8a6198959aa5e1ddc8fe55be7f19efc844d0352300ba5621a8de9e47cc3842b8b8d0ac8606635e27346d805f497'
+ 'ca0c6e81e84910ac5bcd573aa280224426201b4aa8580f974b17daea6f95472e3ba47b3319ea1291d6762e858a3f7e9120f05357fe02aa83f01bb767862a04c8'
+ 'db3cf00e5ff1e2f5636288992212964f068f94ee98a880c27f00afda44f048e608636a34f2ae551f3cf24f7c43ebd2f40ab8a9bcc5d8057901d4a871c6b79f13')
+
_srcpath=$pkgname-${pkgname/-*}-${pkgver//_/-}
+prepare() {
+ cd "$srcdir/$_srcpath"
+ autoreconf -vfi
+}
+
build() {
cd "$srcdir/$_srcpath"
- patch -Np1 -i "${srcdir}/start-by-icecast.patch"
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
make
}
package() {
+ depends+=('libcurl.so' 'libogg.so' 'libvorbis.so')
cd "$srcdir/$_srcpath"
make DESTDIR="$pkgdir" install
# install logrotate config
- install -Dm0644 "$srcdir/$pkgname.logrotate" "$pkgdir/etc/logrotate.d/icecast"
+ install -vDm0644 "$srcdir/$pkgname.logrotate" "$pkgdir/etc/logrotate.d/icecast"
# install systemd unit
- install -Dm0644 "$srcdir/$pkgname.service" "$pkgdir/usr/lib/systemd/system/icecast.service"
+ install -vDm0644 "$srcdir/$pkgname.service" "$pkgdir/usr/lib/systemd/system/icecast.service"
+ install -vDm 644 "../${pkgname}.sysusers" \
+ "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf"
+ install -vDm 644 "../${pkgname}.tmpfiles" \
+ "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"
}
# vim:set ts=2 sw=2 et:
diff --git a/icecast-kh.install b/icecast-kh.install
deleted file mode 100644
index ba7b90f93b5e..000000000000
--- a/icecast-kh.install
+++ /dev/null
@@ -1,31 +0,0 @@
-# arg 1: the new package version
-post_install() {
- # Make sure the group and user "icecast" exists on this system and have the correct values
- if getent group icecast &> /dev/null ; then
- groupmod -g 88 -n icecast icecast &> /dev/null
- else
- groupadd -g 88 icecast &> /dev/null
- fi
-
- if getent passwd icecast &> /dev/null ; then
- usermod -s /bin/false -c "icecast user" -d /var/lib/icecast -u 88 -g icecast icecast &> /dev/null
- else
- useradd -s /bin/false -c "icecast user" -d /var/lib/icecast -u 88 -g icecast -r icecast &> /dev/null
- fi
- # create the logs folder
- install -do88 -g19 -m0755 /var/log/icecast
- # create folder in /var/lib/
- install -do88 -g88 -m0755 /var/lib/icecast
-}
-
-# arg 1: the new package version
-# arg 2: the old package version
-post_upgrade() {
- post_install $1
-}
-
-# arg 1: the old package version
-pre_remove() {
- userdel icecast &> /dev/null
- groupdel icecast &> /dev/null || /bin/true
-}
diff --git a/icecast-kh.service b/icecast-kh.service
index 5ca58dd1ebb8..24eab8165e25 100644
--- a/icecast-kh.service
+++ b/icecast-kh.service
@@ -3,9 +3,41 @@ Description=Icecast Network Audio Streaming Server (KH Version)
After=network.target
[Service]
-Type=simple
+CapabilityBoundingSet=~CAP_SETUID CAP_SETGID CAP_SETPCAP CAP_SYS_ADMIN CAP_SYS_PTRACE CAP_KILL CAP_SYS_BOOT CAP_LINUX_IMMUTABLE CAP_CHOWN CAP_FSETID CAP_SETFCAP CAP_FOWNER CAP_IPC_OWNER CAP_NET_ADMIN CAP_IPC_LOCK CAP_SYS_CHROOT CAP_BLOCK_SUSPEND CAP_LEASE CAP_SYS_PACCT CAP_SYS_TTY_CONFIG CAP_WAKE_ALARM CAP_SYS_NICE CAP_SYS_RESOURCE CAP_DAC_OVERRIDE CAP_DAC_READ_SEARCH CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_AUDIT_WRITE CAP_MAC_ADMIN CAP_MAC_OVERRIDE CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW
ExecStart=/usr/bin/icecast -c /etc/icecast.xml
ExecReload=/bin/kill -HUP $MAINPID
+Group=icecast
+IPAccounting=yes
+LogsDirectory=icecast
+LockPersonality=true
+MemoryDenyWriteExecute=true
+NoNewPrivileges=true
+PrivateDevices=true
+PrivateTmp=true
+PrivateUsers=true
+ProtectClock=true
+ProtectControlGroups=true
+ProtectHome=true
+ProtectHostname=true
+ProtectKernelLogs=true
+ProtectKernelModules=true
+ProtectKernelTunables=true
+ProtectSystem=strict
+ReadOnlyPaths=/etc/icecast.xml
+RemoveIPC=true
+RestrictAddressFamilies=~AF_AX25 AF_IPX AF_APPLETALK AF_X25 AF_DECnet AF_KEY AF_NETLINK AF_PACKET AF_RDS AF_PPPOX AF_LLC AF_IB AF_MPLS AF_CAN AF_TIPC AF_BLUETOOTH AF_ALG AF_VSOCK AF_KCM AF_XDP AF_UNIX
+RestrictAddressFamilies=AF_INET AF_INET6
+RestrictNamespaces=true
+RestrictRealtime=true
+RestrictSUIDSGID=true
+RuntimeDirectory=icecast
+StateDirectory=icecast
+SystemCallArchitectures=native
+SystemCallFilter=@system-service
+SystemCallFilter=~@resources @privileged
+Type=exec
+UMask=177
+User=icecast
[Install]
WantedBy=multi-user.target
diff --git a/icecast-kh.sysusers b/icecast-kh.sysusers
new file mode 100644
index 000000000000..d400a11bb310
--- /dev/null
+++ b/icecast-kh.sysusers
@@ -0,0 +1 @@
+u icecast - "Media streaming server" -
diff --git a/icecast-kh.tmpfiles b/icecast-kh.tmpfiles
new file mode 100644
index 000000000000..446f65cac3f8
--- /dev/null
+++ b/icecast-kh.tmpfiles
@@ -0,0 +1 @@
+z /etc/icecast.xml 0640 root icecast -
diff --git a/start-by-icecast.patch b/start-by-icecast.patch
deleted file mode 100644
index 192ed163af73..000000000000
--- a/start-by-icecast.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- source/conf/icecast.xml.in~ 2014-02-19 21:10:37.000000000 +0100
-+++ source/conf/icecast.xml.in 2014-02-19 21:11:54.000000000 +0100
-@@ -230,11 +230,9 @@
-
- <security>
- <chroot>0</chroot>
-- <!--
- <changeowner>
-- <user>nobody</user>
-- <group>nogroup</group>
-+ <user>icecast</user>
-+ <group>icecast</group>
- </changeowner>
-- -->
- </security>
- </icecast>