summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authoreomanis2024-05-03 00:26:39 +0200
committereomanis2024-05-03 00:26:39 +0200
commit9ceb52e5c4cd08fabb1979eaeeca8b674362a949 (patch)
tree700ab882a0e4841cfce2991eeb32e1d0c1748b52
parent3c7d7787b840f3798efd121b33315ec0cd8ea87e (diff)
downloadaur-jmusicbot.tar.gz
Add patch for pull request 1552, fixes YouTube playback
-rw-r--r--.SRCINFO4
-rw-r--r--1552.patch272
-rw-r--r--PKGBUILD11
3 files changed, 283 insertions, 4 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 5c78227768f9..bd9ba329d0e9 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = jmusicbot
pkgdesc = A cross-platform Discord music bot with a clean interface
pkgver = 0.4.0
- pkgrel = 1
+ pkgrel = 2
url = https://github.com/jagrosh/MusicBot
arch = any
license = Apache
@@ -13,9 +13,11 @@ pkgbase = jmusicbot
source = fix-pom.xslt
source = jmusicbot@.service
source = jmusicbot.service
+ source = 1552.patch
sha384sums = d5fc747230eab289da6a8a44c1a86c38291073ad6bb43c84609bb6d7abcce98cab0f7b636747248e4e53b883e0884ff7
sha384sums = b14dcf390d40f51d40b2aee4e8c44722837ad7a9850ecfd48174c74e8ed50709b6a64a817c301a2186e6386c26de0440
sha384sums = 0e2f5b34b17ab99c425712b8e164493538c0d8df45b9d997649dbf6332bbdef7d6ce33e195ed331cf02d132ee2fa7e88
sha384sums = b57c88e240c167debd323399b4144a1f0a566205ccfe54075f06481fe6cfb105f92bc94536575b84bbc1607c102b5e75
+ sha384sums = bda596a9b8e56015ba5a774e73e48b36506cdc02751e1554f26c2481fa971dff11fb1091a4396b2f9483a8b41dba33b0
pkgname = jmusicbot
diff --git a/1552.patch b/1552.patch
new file mode 100644
index 000000000000..c8794d059380
--- /dev/null
+++ b/1552.patch
@@ -0,0 +1,272 @@
+From b42094a3b034bbb3d5cf476876356af25a79743a Mon Sep 17 00:00:00 2001
+From: Michail <git@michaili.dev>
+Date: Mon, 22 Apr 2024 21:39:20 +0200
+Subject: [PATCH 1/6] Switch to new lavalink's new YouTube audio source manager
+
+---
+ pom.xml | 7 ++-
+ .../jmusicbot/audio/PlayerManager.java | 4 +-
+ .../jmusicbot/utils/LogBackTurboFilter.java | 44 -------------------
+ src/main/resources/logback.xml | 2 -
+ 4 files changed, 8 insertions(+), 49 deletions(-)
+ delete mode 100644 src/main/java/com/jagrosh/jmusicbot/utils/LogBackTurboFilter.java
+
+diff --git a/pom.xml b/pom.xml
+index 699eeb5c1..39213bfd4 100644
+--- a/pom.xml
++++ b/pom.xml
+@@ -55,7 +55,12 @@
+ <dependency>
+ <groupId>dev.arbjerg</groupId>
+ <artifactId>lavaplayer</artifactId>
+- <version>727959e9f621fc457b3a5adafcfffb55fdeaa538-SNAPSHOT</version>
++ <version>2.1.1</version>
++ </dependency>
++ <dependency>
++ <groupId>com.github.lavalink-devs</groupId>
++ <artifactId>lavaplayer-youtube-source</artifactId>
++ <version>1.0.2</version>
+ </dependency>
+ <dependency>
+ <groupId>com.github.jagrosh</groupId>
+diff --git a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+index f4a5605ce..ba15309ea 100644
+--- a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
++++ b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+@@ -20,7 +20,7 @@
+ import com.sedmelluq.discord.lavaplayer.player.AudioPlayer;
+ import com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager;
+ import com.sedmelluq.discord.lavaplayer.source.AudioSourceManagers;
+-import com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager;
++import dev.lavalink.youtube.YoutubeAudioSourceManager;
+ import net.dv8tion.jda.api.entities.Guild;
+
+ /**
+@@ -39,10 +39,10 @@ public PlayerManager(Bot bot)
+ public void init()
+ {
+ TransformativeAudioSourceManager.createTransforms(bot.getConfig().getTransforms()).forEach(t -> registerSourceManager(t));
++ registerSourceManager(new YoutubeAudioSourceManager(true));
+ AudioSourceManagers.registerRemoteSources(this);
+ AudioSourceManagers.registerLocalSource(this);
+ DuncteBotSources.registerAll(this, "en-US");
+- source(YoutubeAudioSourceManager.class).setPlaylistPageCount(10);
+ }
+
+ public Bot getBot()
+diff --git a/src/main/java/com/jagrosh/jmusicbot/utils/LogBackTurboFilter.java b/src/main/java/com/jagrosh/jmusicbot/utils/LogBackTurboFilter.java
+deleted file mode 100644
+index c991a07ec..000000000
+--- a/src/main/java/com/jagrosh/jmusicbot/utils/LogBackTurboFilter.java
++++ /dev/null
+@@ -1,44 +0,0 @@
+-/*
+- * Copyright 2024 John Grosh <john.a.grosh@gmail.com>.
+- *
+- * Licensed under the Apache License, Version 2.0 (the "License");
+- * you may not use this file except in compliance with the License.
+- * You may obtain a copy of the License at
+- *
+- * http://www.apache.org/licenses/LICENSE-2.0
+- *
+- * Unless required by applicable law or agreed to in writing, software
+- * distributed under the License is distributed on an "AS IS" BASIS,
+- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+- * See the License for the specific language governing permissions and
+- * limitations under the License.
+- */
+-package com.jagrosh.jmusicbot.utils;
+-
+-import ch.qos.logback.classic.Level;
+-import ch.qos.logback.classic.Logger;
+-import ch.qos.logback.classic.turbo.TurboFilter;
+-import ch.qos.logback.core.spi.FilterReply;
+-import org.slf4j.Marker;
+-
+-/**
+- * A TurboFilter, currently only used to suppress specific log messages from libraries.
+- *
+- * @author Michaili K. <git@michaili.dev>
+- */
+-public class LogBackTurboFilter extends TurboFilter
+-{
+- @Override
+- public FilterReply decide(Marker marker, Logger logger, Level level, String format, Object[] params, Throwable t)
+- {
+- // Suppresses the auth token warning from the YoutubeAudioSourceManager
+- // https://github.com/jagrosh/MusicBot/pull/1490#issuecomment-1974070225
+- if (logger.getName().equals("com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAccessTokenTracker")
+- && format.equals("YouTube auth tokens can't be retrieved because email and password is not set in YoutubeAudioSourceManager, age restricted videos will throw exceptions.")
+- ) {
+- return FilterReply.DENY;
+- }
+-
+- return FilterReply.NEUTRAL;
+- }
+-}
+diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml
+index 1d03fcc22..4a7033f5d 100644
+--- a/src/main/resources/logback.xml
++++ b/src/main/resources/logback.xml
+@@ -14,6 +14,4 @@
+ <appender-ref ref="Simple"/>
+ </root>
+
+- <turboFilter class="com.jagrosh.jmusicbot.utils.LogBackTurboFilter" />
+-
+ </configuration>
+
+From 55e4bcc251df13e9832171742c19b73b8f51a028 Mon Sep 17 00:00:00 2001
+From: Michail <git@michaili.dev>
+Date: Mon, 22 Apr 2024 21:44:27 +0200
+Subject: [PATCH 2/6] Add back setPlaylistPageCount call for the youtube audio
+ source manager
+
+---
+ src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+index ba15309ea..c92cd9c00 100644
+--- a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
++++ b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+@@ -43,6 +43,7 @@ public void init()
+ AudioSourceManagers.registerRemoteSources(this);
+ AudioSourceManagers.registerLocalSource(this);
+ DuncteBotSources.registerAll(this, "en-US");
++ source(YoutubeAudioSourceManager.class).setPlaylistPageCount(10);
+ }
+
+ public Bot getBot()
+
+From 422deed7b77ce02fc4ee7cab595c32d15476d0c0 Mon Sep 17 00:00:00 2001
+From: Michail <git@michaili.dev>
+Date: Mon, 22 Apr 2024 23:13:19 +0200
+Subject: [PATCH 3/6] Manually add all the individual audio sources EXCEPT for
+ old youtube
+
+---
+ .../jmusicbot/audio/PlayerManager.java | 25 ++++++++++++++++++-
+ 1 file changed, 24 insertions(+), 1 deletion(-)
+
+diff --git a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+index c92cd9c00..7d2ef0526 100644
+--- a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
++++ b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+@@ -17,12 +17,23 @@
+
+ import com.dunctebot.sourcemanagers.DuncteBotSources;
+ import com.jagrosh.jmusicbot.Bot;
++import com.sedmelluq.discord.lavaplayer.container.MediaContainerRegistry;
+ import com.sedmelluq.discord.lavaplayer.player.AudioPlayer;
+ import com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager;
+ import com.sedmelluq.discord.lavaplayer.source.AudioSourceManagers;
++import com.sedmelluq.discord.lavaplayer.source.bandcamp.BandcampAudioSourceManager;
++import com.sedmelluq.discord.lavaplayer.source.beam.BeamAudioSourceManager;
++import com.sedmelluq.discord.lavaplayer.source.getyarn.GetyarnAudioSourceManager;
++import com.sedmelluq.discord.lavaplayer.source.http.HttpAudioSourceManager;
++import com.sedmelluq.discord.lavaplayer.source.nico.NicoAudioSourceManager;
++import com.sedmelluq.discord.lavaplayer.source.soundcloud.SoundCloudAudioSourceManager;
++import com.sedmelluq.discord.lavaplayer.source.twitch.TwitchStreamAudioSourceManager;
++import com.sedmelluq.discord.lavaplayer.source.vimeo.VimeoAudioSourceManager;
+ import dev.lavalink.youtube.YoutubeAudioSourceManager;
+ import net.dv8tion.jda.api.entities.Guild;
+
++import java.util.ArrayList;
++
+ /**
+ *
+ * @author John Grosh (john.a.grosh@gmail.com)
+@@ -39,10 +50,22 @@ public PlayerManager(Bot bot)
+ public void init()
+ {
+ TransformativeAudioSourceManager.createTransforms(bot.getConfig().getTransforms()).forEach(t -> registerSourceManager(t));
++
+ registerSourceManager(new YoutubeAudioSourceManager(true));
+- AudioSourceManagers.registerRemoteSources(this);
++
++ registerSourceManager(SoundCloudAudioSourceManager.createDefault());
++ registerSourceManager(new BandcampAudioSourceManager());
++ registerSourceManager(new VimeoAudioSourceManager());
++ registerSourceManager(new TwitchStreamAudioSourceManager());
++ registerSourceManager(new BeamAudioSourceManager());
++ registerSourceManager(new GetyarnAudioSourceManager());
++ registerSourceManager(new NicoAudioSourceManager());
++ registerSourceManager(new HttpAudioSourceManager(MediaContainerRegistry.DEFAULT_REGISTRY));
++
+ AudioSourceManagers.registerLocalSource(this);
++
+ DuncteBotSources.registerAll(this, "en-US");
++
+ source(YoutubeAudioSourceManager.class).setPlaylistPageCount(10);
+ }
+
+
+From fcda6c211626106ea25ccf26451385da997adeaf Mon Sep 17 00:00:00 2001
+From: Michail <git@michaili.dev>
+Date: Mon, 22 Apr 2024 23:19:09 +0200
+Subject: [PATCH 4/6] Remove unused import
+
+---
+ src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+index 7d2ef0526..c732af54b 100644
+--- a/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
++++ b/src/main/java/com/jagrosh/jmusicbot/audio/PlayerManager.java
+@@ -32,8 +32,6 @@
+ import dev.lavalink.youtube.YoutubeAudioSourceManager;
+ import net.dv8tion.jda.api.entities.Guild;
+
+-import java.util.ArrayList;
+-
+ /**
+ *
+ * @author John Grosh (john.a.grosh@gmail.com)
+
+From 62075776c0876d0b50bc3fdc9ffbe2338f31cf63 Mon Sep 17 00:00:00 2001
+From: Michail <git@michaili.dev>
+Date: Tue, 23 Apr 2024 00:45:20 +0200
+Subject: [PATCH 5/6] Upgrade lavaplayer-youtube-source to 1.0.3
+
+---
+ pom.xml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pom.xml b/pom.xml
+index 39213bfd4..e2f67b395 100644
+--- a/pom.xml
++++ b/pom.xml
+@@ -60,7 +60,7 @@
+ <dependency>
+ <groupId>com.github.lavalink-devs</groupId>
+ <artifactId>lavaplayer-youtube-source</artifactId>
+- <version>1.0.2</version>
++ <version>1.0.3</version>
+ </dependency>
+ <dependency>
+ <groupId>com.github.jagrosh</groupId>
+
+From 9ce3ae98e392625bbe542ba7acf541557e7b270c Mon Sep 17 00:00:00 2001
+From: Michaili K <git@michaili.dev>
+Date: Tue, 23 Apr 2024 01:39:06 +0200
+Subject: [PATCH 6/6] Upgrade lavaplayer-youtube-source to 1.0.4
+
+---
+ pom.xml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pom.xml b/pom.xml
+index e2f67b395..7e84b87fe 100644
+--- a/pom.xml
++++ b/pom.xml
+@@ -60,7 +60,7 @@
+ <dependency>
+ <groupId>com.github.lavalink-devs</groupId>
+ <artifactId>lavaplayer-youtube-source</artifactId>
+- <version>1.0.3</version>
++ <version>1.0.4</version>
+ </dependency>
+ <dependency>
+ <groupId>com.github.jagrosh</groupId>
diff --git a/PKGBUILD b/PKGBUILD
index 7310cdfb0afb..d9ea1eb25d07 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -7,7 +7,7 @@ _appname='jmusicbot'
pkgname="$_appname"
_pkgverUpstream="0.4.0"
pkgver="${_pkgverUpstream//-/.}"
-pkgrel=1
+pkgrel=2
pkgdesc="A cross-platform Discord music bot with a clean interface"
arch=('any')
url='https://github.com/jagrosh/MusicBot'
@@ -17,11 +17,13 @@ makedepends=('java-environment>=11' 'maven' 'libxslt')
source=("JMusicBot-${_pkgverUpstream}.tar.gz::https://github.com/jagrosh/MusicBot/archive/refs/tags/${_pkgverUpstream}.tar.gz"
"fix-pom.xslt"
"jmusicbot@.service"
- "jmusicbot.service")
+ "jmusicbot.service"
+ "1552.patch")
sha384sums=('d5fc747230eab289da6a8a44c1a86c38291073ad6bb43c84609bb6d7abcce98cab0f7b636747248e4e53b883e0884ff7'
'b14dcf390d40f51d40b2aee4e8c44722837ad7a9850ecfd48174c74e8ed50709b6a64a817c301a2186e6386c26de0440'
'0e2f5b34b17ab99c425712b8e164493538c0d8df45b9d997649dbf6332bbdef7d6ce33e195ed331cf02d132ee2fa7e88'
- 'b57c88e240c167debd323399b4144a1f0a566205ccfe54075f06481fe6cfb105f92bc94536575b84bbc1607c102b5e75')
+ 'b57c88e240c167debd323399b4144a1f0a566205ccfe54075f06481fe6cfb105f92bc94536575b84bbc1607c102b5e75'
+ 'bda596a9b8e56015ba5a774e73e48b36506cdc02751e1554f26c2481fa971dff11fb1091a4396b2f9483a8b41dba33b0')
# Build parameters
# Uncomment and edit to build with a specific Java Development Kit
@@ -34,6 +36,9 @@ build() {
cd "$buildDir" || return 1
+ echo "Applying patch containing pull request: https://github.com/jagrosh/MusicBot/pull/1552" >&2
+ patch --silent --strip=1 < "${srcdir}/1552.patch"
+
# Project version in pom.xml is set to "Snapshot"
# Set it to the upstream version
xsltproc --nonet --stringparam project-version "$_pkgverUpstream" "${srcdir}/fix-pom.xslt" "pom.xml" > "pom.xml.tmp"