logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: 291844e122e255c128602ebe8a1267942f5eec96
parent 5534966dacec277867596ec2af030691801a7574
Author: hovercats <hovercatswithlasereyes@protonmail.com>
Date:   Tue, 21 Jan 2025 20:27:36 +0100

yt-dlp: 2025.01.15

Diffstat:

Mpkg/yt-dlp/patch/0001-Disable-use-of-ctypes-and-dynamic-loading.patch46+++++++++++++++++++++++++---------------------
Mpkg/yt-dlp/pylibs.txt25++++++++++++++++++-------
Mpkg/yt-dlp/sha2562+-
Mpkg/yt-dlp/url2+-
Mpkg/yt-dlp/ver2+-
5 files changed, 46 insertions(+), 31 deletions(-)

diff --git a/pkg/yt-dlp/patch/0001-Disable-use-of-ctypes-and-dynamic-loading.patch b/pkg/yt-dlp/patch/0001-Disable-use-of-ctypes-and-dynamic-loading.patch @@ -1,35 +1,36 @@ -From 85781c9dc7a882b8638dcfdd60da14261178f437 Mon Sep 17 00:00:00 2001 +From 1b166dc9a491440db655fa3c7b49df329683ef45 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Mon, 4 Jul 2016 16:14:18 -0700 Subject: [PATCH] Disable use of ctypes and dynamic loading --- - yt_dlp/cookies.py | 100 ----------------------------------------- - yt_dlp/utils/_utils.py | 85 +---------------------------------- - 2 files changed, 2 insertions(+), 183 deletions(-) + yt_dlp/cookies.py | 104 ----------------------------------------- + yt_dlp/utils/_utils.py | 85 +-------------------------------- + 2 files changed, 2 insertions(+), 187 deletions(-) diff --git a/yt_dlp/cookies.py b/yt_dlp/cookies.py -index 070d2fcb9..e527fdec4 100644 +index fad323c90..5e5c9df81 100644 --- a/yt_dlp/cookies.py +++ b/yt_dlp/cookies.py -@@ -400,8 +400,6 @@ def decrypt(self, encrypted_value): - def get_cookie_decryptor(browser_root, browser_keyring_name, logger, *, keyring=None): +@@ -416,8 +416,6 @@ def decrypt(self, encrypted_value): + def get_cookie_decryptor(browser_root, browser_keyring_name, logger, *, keyring=None, meta_version=None): if sys.platform == 'darwin': - return MacChromeCookieDecryptor(browser_keyring_name, logger) + return MacChromeCookieDecryptor(browser_keyring_name, logger, meta_version=meta_version) - elif sys.platform in ('win32', 'cygwin'): -- return WindowsChromeCookieDecryptor(browser_root, logger) - return LinuxChromeCookieDecryptor(browser_keyring_name, logger, keyring=keyring) +- return WindowsChromeCookieDecryptor(browser_root, logger, meta_version=meta_version) + return LinuxChromeCookieDecryptor(browser_keyring_name, logger, keyring=keyring, meta_version=meta_version) -@@ -488,43 +486,6 @@ def decrypt(self, encrypted_value): +@@ -511,46 +509,6 @@ def decrypt(self, encrypted_value): return encrypted_value -class WindowsChromeCookieDecryptor(ChromeCookieDecryptor): -- def __init__(self, browser_root, logger): +- def __init__(self, browser_root, logger, meta_version=None): - self._logger = logger - self._v10_key = _get_windows_v10_key(browser_root, logger) - self._cookie_counts = {'v10': 0, 'other': 0} +- self._meta_version = meta_version or 0 - - def decrypt(self, encrypted_value): - version = encrypted_value[:3] @@ -53,7 +54,9 @@ index 070d2fcb9..e527fdec4 100644 - ciphertext = raw_ciphertext[nonce_length:-authentication_tag_length] - authentication_tag = raw_ciphertext[-authentication_tag_length:] - -- return _decrypt_aes_gcm(ciphertext, self._v10_key, nonce, authentication_tag, self._logger) +- return _decrypt_aes_gcm( +- ciphertext, self._v10_key, nonce, authentication_tag, self._logger, +- hash_prefix=self._meta_version >= 24) - - else: - self._cookie_counts['other'] += 1 @@ -65,7 +68,7 @@ index 070d2fcb9..e527fdec4 100644 def _extract_safari_cookies(profile, logger): if sys.platform != 'darwin': raise ValueError(f'unsupported platform: {sys.platform}') -@@ -971,33 +932,6 @@ def _get_mac_keyring_password(browser_keyring_name, logger): +@@ -997,33 +955,6 @@ def _get_mac_keyring_password(browser_keyring_name, logger): return None @@ -99,7 +102,7 @@ index 070d2fcb9..e527fdec4 100644 def pbkdf2_sha1(password, salt, iterations, key_length): return hashlib.pbkdf2_hmac('sha1', password, salt, iterations, key_length) -@@ -1027,40 +961,6 @@ def _decrypt_aes_gcm(ciphertext, key, nonce, authentication_tag, logger): +@@ -1057,41 +988,6 @@ def _decrypt_aes_gcm(ciphertext, key, nonce, authentication_tag, logger, hash_pr return None @@ -129,8 +132,9 @@ index 070d2fcb9..e527fdec4 100644 - ctypes.byref(blob_out), # pDataOut - ) - if not ret: -- logger.warning('failed to decrypt with DPAPI', only_once=True) -- return None +- message = 'Failed to decrypt with DPAPI. See https://github.com/yt-dlp/yt-dlp/issues/10927 for more info' +- logger.error(message) +- raise DownloadError(message) # force exit - - result = ctypes.string_at(blob_out.pbData, blob_out.cbData) - ctypes.windll.kernel32.LocalFree(blob_out.pbData) @@ -141,10 +145,10 @@ index 070d2fcb9..e527fdec4 100644 return os.environ.get('XDG_CONFIG_HOME', os.path.expanduser('~/.config')) diff --git a/yt_dlp/utils/_utils.py b/yt_dlp/utils/_utils.py -index 0d3e707c5..357f145d7 100644 +index 699bf1e7f..710668036 100644 --- a/yt_dlp/utils/_utils.py +++ b/yt_dlp/utils/_utils.py -@@ -1482,64 +1482,7 @@ def __init__(self): +@@ -1506,64 +1506,7 @@ def __init__(self): super().__init__(self.msg) @@ -210,7 +214,7 @@ index 0d3e707c5..357f145d7 100644 try: import fcntl -@@ -1888,31 +1831,7 @@ def fix_xml_ampersands(xml_str): +@@ -1912,31 +1855,7 @@ def fix_xml_ampersands(xml_str): def setproctitle(title): @@ -244,5 +248,5 @@ index 0d3e707c5..357f145d7 100644 def remove_start(s, start): -- -2.44.0 +2.45.2 diff --git a/pkg/yt-dlp/pylibs.txt b/pkg/yt-dlp/pylibs.txt @@ -10,7 +10,6 @@ yt_dlp/compat/__init__.py yt_dlp/compat/_deprecated.py yt_dlp/compat/_legacy.py yt_dlp/compat/compat_utils.py -yt_dlp/compat/functools.py yt_dlp/compat/imghdr.py yt_dlp/compat/shutil.py yt_dlp/compat/types.py @@ -105,8 +104,10 @@ yt_dlp/extractor/baidu.py yt_dlp/extractor/banbye.py yt_dlp/extractor/bandaichannel.py yt_dlp/extractor/bandcamp.py +yt_dlp/extractor/bandlab.py yt_dlp/extractor/bannedvideo.py yt_dlp/extractor/bbc.py +yt_dlp/extractor/beacon.py yt_dlp/extractor/beatbump.py yt_dlp/extractor/beatport.py yt_dlp/extractor/beeg.py @@ -128,6 +129,7 @@ yt_dlp/extractor/bleacherreport.py yt_dlp/extractor/blerp.py yt_dlp/extractor/blogger.py yt_dlp/extractor/bloomberg.py +yt_dlp/extractor/bluesky.py yt_dlp/extractor/bokecc.py yt_dlp/extractor/bongacams.py yt_dlp/extractor/boosty.py @@ -249,6 +251,7 @@ yt_dlp/extractor/dreisat.py yt_dlp/extractor/drooble.py yt_dlp/extractor/dropbox.py yt_dlp/extractor/dropout.py +yt_dlp/extractor/drtalks.py yt_dlp/extractor/drtuber.py yt_dlp/extractor/drtv.py yt_dlp/extractor/dtube.py @@ -322,6 +325,7 @@ yt_dlp/extractor/funker530.py yt_dlp/extractor/fuyintv.py yt_dlp/extractor/gab.py yt_dlp/extractor/gaia.py +yt_dlp/extractor/gamedevtv.py yt_dlp/extractor/gamejolt.py yt_dlp/extractor/gamespot.py yt_dlp/extractor/gamestar.py @@ -333,6 +337,7 @@ yt_dlp/extractor/gedidigital.py yt_dlp/extractor/generic.py yt_dlp/extractor/genericembeds.py yt_dlp/extractor/genius.py +yt_dlp/extractor/germanupa.py yt_dlp/extractor/getcourseru.py yt_dlp/extractor/gettr.py yt_dlp/extractor/giantbomb.py @@ -429,10 +434,12 @@ yt_dlp/extractor/kaltura.py yt_dlp/extractor/kankanews.py yt_dlp/extractor/karaoketv.py yt_dlp/extractor/kelbyone.py +yt_dlp/extractor/kenh14.py yt_dlp/extractor/khanacademy.py yt_dlp/extractor/kick.py yt_dlp/extractor/kicker.py yt_dlp/extractor/kickstarter.py +yt_dlp/extractor/kika.py yt_dlp/extractor/kinja.py yt_dlp/extractor/kinopoisk.py yt_dlp/extractor/kommunetv.py @@ -471,7 +478,7 @@ yt_dlp/extractor/litv.py yt_dlp/extractor/livejournal.py yt_dlp/extractor/livestream.py yt_dlp/extractor/livestreamfails.py -yt_dlp/extractor/lnkgo.py +yt_dlp/extractor/lnk.py yt_dlp/extractor/loom.py yt_dlp/extractor/lovehomeporn.py yt_dlp/extractor/lrt.py @@ -510,7 +517,6 @@ yt_dlp/extractor/metacritic.py yt_dlp/extractor/mgtv.py yt_dlp/extractor/microsoftembed.py yt_dlp/extractor/microsoftstream.py -yt_dlp/extractor/mildom.py yt_dlp/extractor/minds.py yt_dlp/extractor/minoto.py yt_dlp/extractor/mirrativ.py @@ -522,6 +528,7 @@ yt_dlp/extractor/mixcloud.py yt_dlp/extractor/mlb.py yt_dlp/extractor/mlssoccer.py yt_dlp/extractor/mocha.py +yt_dlp/extractor/mojevideo.py yt_dlp/extractor/mojvideo.py yt_dlp/extractor/monstercat.py yt_dlp/extractor/motherless.py @@ -643,8 +650,8 @@ yt_dlp/extractor/pgatour.py yt_dlp/extractor/philharmoniedeparis.py yt_dlp/extractor/phoenix.py yt_dlp/extractor/photobucket.py +yt_dlp/extractor/pialive.py yt_dlp/extractor/piapro.py -yt_dlp/extractor/piaulizaportal.py yt_dlp/extractor/picarto.py yt_dlp/extractor/piksel.py yt_dlp/extractor/pinkbike.py @@ -659,10 +666,10 @@ yt_dlp/extractor/playtvak.py yt_dlp/extractor/playwire.py yt_dlp/extractor/pluralsight.py yt_dlp/extractor/plutotv.py +yt_dlp/extractor/plvideo.py yt_dlp/extractor/podbayfm.py yt_dlp/extractor/podchaser.py yt_dlp/extractor/podomatic.py -yt_dlp/extractor/pokemon.py yt_dlp/extractor/pokergo.py yt_dlp/extractor/polsatgo.py yt_dlp/extractor/polskieradio.py @@ -695,6 +702,7 @@ yt_dlp/extractor/radiode.py yt_dlp/extractor/radiofrance.py yt_dlp/extractor/radiojavan.py yt_dlp/extractor/radiokapital.py +yt_dlp/extractor/radioradicale.py yt_dlp/extractor/radiozet.py yt_dlp/extractor/radlive.py yt_dlp/extractor/rai.py @@ -751,10 +759,12 @@ yt_dlp/extractor/screen9.py yt_dlp/extractor/screencast.py yt_dlp/extractor/screencastify.py yt_dlp/extractor/screencastomatic.py +yt_dlp/extractor/screenrec.py yt_dlp/extractor/scrippsnetworks.py yt_dlp/extractor/scrolller.py yt_dlp/extractor/scte.py yt_dlp/extractor/sejmpl.py +yt_dlp/extractor/sen.py yt_dlp/extractor/senalcolombia.py yt_dlp/extractor/senategov.py yt_dlp/extractor/sendtonews.py @@ -781,6 +791,7 @@ yt_dlp/extractor/slideshare.py yt_dlp/extractor/slideslive.py yt_dlp/extractor/slutload.py yt_dlp/extractor/smotrim.py +yt_dlp/extractor/snapchat.py yt_dlp/extractor/snotr.py yt_dlp/extractor/sohu.py yt_dlp/extractor/sonyliv.py @@ -921,6 +932,7 @@ yt_dlp/extractor/udn.py yt_dlp/extractor/ufctv.py yt_dlp/extractor/ukcolumn.py yt_dlp/extractor/uktvplay.py +yt_dlp/extractor/uliza.py yt_dlp/extractor/umg.py yt_dlp/extractor/unistra.py yt_dlp/extractor/unity.py @@ -937,7 +949,6 @@ yt_dlp/extractor/utreon.py yt_dlp/extractor/varzesh3.py yt_dlp/extractor/vbox7.py yt_dlp/extractor/veo.py -yt_dlp/extractor/veoh.py yt_dlp/extractor/vesti.py yt_dlp/extractor/vevo.py yt_dlp/extractor/vgtv.py @@ -951,6 +962,7 @@ yt_dlp/extractor/videofyme.py yt_dlp/extractor/videoken.py yt_dlp/extractor/videomore.py yt_dlp/extractor/videopress.py +yt_dlp/extractor/vidflex.py yt_dlp/extractor/vidio.py yt_dlp/extractor/vidlii.py yt_dlp/extractor/vidly.py @@ -960,7 +972,6 @@ yt_dlp/extractor/viidea.py yt_dlp/extractor/viki.py yt_dlp/extractor/vimeo.py yt_dlp/extractor/vimm.py -yt_dlp/extractor/vine.py yt_dlp/extractor/viously.py yt_dlp/extractor/viqeo.py yt_dlp/extractor/viu.py diff --git a/pkg/yt-dlp/sha256 b/pkg/yt-dlp/sha256 @@ -1 +1 @@ -e08331fb9a36eba56b4efd074b5b25fbf08413e9cb47009a28ecbffe47150310 yt-dlp.tar.gz +e410c5fbbc84af848a02ac985bcfae6089586c62ffa95d1ed87dadd96babac8d yt-dlp.tar.gz diff --git a/pkg/yt-dlp/url b/pkg/yt-dlp/url @@ -1 +1 @@ -url = "https://github.com/yt-dlp/yt-dlp/releases/download/2024.08.06/yt-dlp.tar.gz" +url = "https://github.com/yt-dlp/yt-dlp/releases/download/2025.01.15/yt-dlp.tar.gz" diff --git a/pkg/yt-dlp/ver b/pkg/yt-dlp/ver @@ -1 +1 @@ -2024.08.06 r0 +2025.01.15 r0