summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorxiota2023-01-14 18:40:11 -0800
committerxiota2023-01-14 18:43:59 -0800
commitec2361046267b652d0770f0233c6f4850bfec46c (patch)
treef754cc9c8878a3022a02a52d9bc113a79dcf26a7
parent37ac05aecca85a1f7242fdb29522503879bb73b2 (diff)
downloadaur-mkchromecast.tar.gz
optdep on yt-dlp instead of youtube-dl
use pactl instead of pacmd (for pipewire compatibility)
-rw-r--r--.SRCINFO13
-rw-r--r--.gitignore4
-rw-r--r--PKGBUILD80
-rw-r--r--pipewire.patch44
4 files changed, 106 insertions, 35 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 9880e90fae0c..282570e91416 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = mkchromecast
pkgdesc = Cast Audio/Video to your Google Cast and Sonos Devices
pkgver = 0.3.8.1
- pkgrel = 2
+ pkgrel = 3
url = http://mkchromecast.com
arch = any
license = MIT
@@ -21,11 +21,12 @@ pkgbase = mkchromecast
optdepends = python-pychromecast: to cast to Chromecast devices
optdepends = python-pyqt5: for system tray menu support
optdepends = python-soco: to cast to Sonos devices
- optdepends = youtube-dl: for --youtube
+ optdepends = yt-dlp: for --youtube
source = https://github.com/muammar/mkchromecast/archive/0.3.8.1/mkchromecast-0.3.8.1.tar.gz
- source = pychromecast_optional.patch::https://github.com/muammar/mkchromecast/commit/0070f9f2b505f1c5a1b6d63324ff337f2de09860.patch
- sha512sums = ee66450768f3221500f198bf618120f02b93108797209ca0d6c2be9f882eee36753d3e1038354e51b5d76d130c12d193c7d152b33f80776cb225347a3743f376
- sha512sums = 2fa2fa3986075582ed7f1d881ec32660b97278e47afffadecbd7cfc1c58833a734f5a7d442d4699fc99582c00b18e3c43cf87f974c8a8ec3af4b8ebfea40435f
+ source = https://github.com/muammar/mkchromecast/commit/0070f9f2b505f1c5a1b6d63324ff337f2de09860.patch
+ source = pipewire.patch
+ sha256sums = c680a398385d95d51c47eb522b95cf98f932b55caf065ab8b5725e78bf0099b2
+ sha256sums = SKIP
+ sha256sums = ba2d8c5080469a77df145b5430ce7abd0041040ba095a26d7fc04ae117905d0c
pkgname = mkchromecast
-
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..018a3de08144
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*
+!PKGBUILD
+!.SRCINFO
+!.gitignore
diff --git a/PKGBUILD b/PKGBUILD
index c038023ecec6..cada86eff811 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,46 +1,68 @@
-# Maintainer: Daniel M. Capella <polyzen@archlinux.org>
+# Contributor: Daniel M. Capella <polyzen@archlinux.org>
pkgname=mkchromecast
pkgver=0.3.8.1
-pkgrel=2
+pkgrel=3
pkgdesc='Cast Audio/Video to your Google Cast and Sonos Devices'
arch=('any')
url=http://mkchromecast.com
license=('MIT')
-depends=('faac' 'flac' 'lame' 'python-flask' 'python-gobject' 'python-psutil'
- 'sox' 'vorbis-tools')
-optdepends=('alsa-utils: to cast with ALSA'
- 'ffmpeg: for ffmpeg backend (which is also needed to cast with ALSA)'
- 'gstreamer: for gstreamer backend'
- 'pavucontrol: for parec backend or just to cast with PulseAudio'
- 'pulseaudio: for parec backend or just to cast with PulseAudio'
- 'python-pychromecast: to cast to Chromecast devices'
- 'python-pyqt5: for system tray menu support'
- 'python-soco: to cast to Sonos devices'
- 'youtube-dl: for --youtube')
-source=("https://github.com/muammar/$pkgname/archive/$pkgver/$pkgname-$pkgver.tar.gz"
- 'pychromecast_optional.patch::https://github.com/muammar/mkchromecast/commit/0070f9f2b505f1c5a1b6d63324ff337f2de09860.patch')
-sha512sums=('ee66450768f3221500f198bf618120f02b93108797209ca0d6c2be9f882eee36753d3e1038354e51b5d76d130c12d193c7d152b33f80776cb225347a3743f376'
- '2fa2fa3986075582ed7f1d881ec32660b97278e47afffadecbd7cfc1c58833a734f5a7d442d4699fc99582c00b18e3c43cf87f974c8a8ec3af4b8ebfea40435f')
+depends=(
+ 'faac'
+ 'flac'
+ 'lame'
+ 'python-flask'
+ 'python-gobject'
+ 'python-psutil'
+ 'sox'
+ 'vorbis-tools'
+)
+optdepends=(
+ 'alsa-utils: to cast with ALSA'
+ 'ffmpeg: for ffmpeg backend (which is also needed to cast with ALSA)'
+ 'gstreamer: for gstreamer backend'
+ 'pavucontrol: for parec backend or just to cast with PulseAudio'
+ 'pulseaudio: for parec backend or just to cast with PulseAudio'
+ 'python-pychromecast: to cast to Chromecast devices'
+ 'python-pyqt5: for system tray menu support'
+ 'python-soco: to cast to Sonos devices'
+ 'yt-dlp: for --youtube'
+)
+source=(
+ "https://github.com/muammar/$pkgname/archive/$pkgver/$pkgname-$pkgver.tar.gz"
+ "https://github.com/muammar/mkchromecast/commit/0070f9f2b505f1c5a1b6d63324ff337f2de09860.patch"
+ pipewire.patch
+)
+sha256sums=(
+ 'c680a398385d95d51c47eb522b95cf98f932b55caf065ab8b5725e78bf0099b2'
+ 'SKIP'
+ 'ba2d8c5080469a77df145b5430ce7abd0041040ba095a26d7fc04ae117905d0c'
+)
prepare() {
- cd $pkgname-$pkgver
- sed -i '1s/env //' mkchromecast.py
- patch -Np1 --no-backup-if-mismatch -i ../pychromecast_optional.patch
+ cd "$srcdir/$pkgname-$pkgver"
+
+ for p in ../*.patch ; do
+ echo "$p"
+ patch -Np1 -F50 --verbose -i "$p"
+ done
+
+ sed -i 's/\byoutube-dl\b/yt-dlp/' mkchromecast/audio.py
+ sed -i 's/\byoutube-dl\b/yt-dlp/' mkchromecast/video.py
}
package() {
- cd $pkgname-$pkgver
- install -d "$pkgdir"/usr/bin
- ln -s /usr/share/$pkgname/$pkgname.py "$pkgdir"/usr/bin/$pkgname
+ cd "$srcdir/$pkgname-$pkgver"
+ install -d "$pkgdir/usr/bin"
+ ln -s "/usr/share/$pkgname/$pkgname.py" "$pkgdir/usr/bin/$pkgname"
- install -Dt "$pkgdir"/usr/share/$pkgname $pkgname.py
- cp -a --parents images/google* $pkgname "$pkgdir"/usr/share/$pkgname
+ install -Dt "$pkgdir/usr/share/$pkgname" "$pkgname.py"
+ cp -a --parents images/google* "$pkgname" "$pkgdir/usr/share/$pkgname"
- install -Dm644 -t "$pkgdir"/usr/share/licenses/$pkgname LICENSE
- install -Dm644 -t "$pkgdir"/usr/share/applications $pkgname.desktop
- install -Dm644 -t "$pkgdir"/usr/share/pixmaps images/$pkgname.xpm
- install -Dm644 -t "$pkgdir"/usr/share/man/man1 man/$pkgname.1
+ install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE
+ install -Dm644 -t "$pkgdir/usr/share/applications" "$pkgname.desktop"
+ install -Dm644 -t "$pkgdir/usr/share/pixmaps" "images/$pkgname.xpm"
+ install -Dm644 -t "$pkgdir/usr/share/man/man1" "man/$pkgname.1"
}
# vim:set ts=2 sw=2 et:
diff --git a/pipewire.patch b/pipewire.patch
new file mode 100644
index 000000000000..b1c869486437
--- /dev/null
+++ b/pipewire.patch
@@ -0,0 +1,44 @@
+--- a/mkchromecast/pulseaudio.py
++++ b/mkchromecast/pulseaudio.py
+@@ -13,14 +13,8 @@
+ 'pactl',
+ 'load-module',
+ 'module-null-sink',
+- 'sink_name=' + sink_name
+- ]
+-
+- rename_sink = [
+- 'pacmd',
+- 'update-sink-proplist',
+- sink_name,
+- 'device.description=' + sink_name
++ 'sink_name=' + sink_name,
++ "sink_properties=device.description=" + sink_name,
+ ]
+
+ cs = subprocess.Popen(
+@@ -32,12 +26,6 @@
+
+ time.sleep(1)
+
+- rs = subprocess.Popen(
+- rename_sink,
+- stdout=subprocess.PIPE,
+- stderr=subprocess.PIPE
+- )
+- rsoutput, rserror = rs.communicate()
+ return
+
+
+@@ -59,8 +47,9 @@
+
+ def check_sink():
+ check_sink = [
+- 'pacmd',
+- 'list-sinks'
++ 'pactl',
++ 'list',
++ 'sinks'
+ ]
+ chk = subprocess.Popen(
+ check_sink,