logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: 00fe346cc1ce9b97dbfeca089b3afc97f0353bfe
parent 4fad1531cbc506408855d2027a60cdbeaf66eea3
Author: Michael Forney <mforney@mforney.org>
Date:   Tue,  6 Sep 2022 18:16:55 -0700

yt-dlp: Update to 2022.09.01

Diffstat:

Mpkg/yt-dlp/patch/0001-Disable-use-of-ctypes-and-dynamic-loading.patch80+++++++++++++++++++++++++++++++++++++++++++++++--------------------------------
Mpkg/yt-dlp/pylibs.txt24+++++++++++++++++++-----
Mpkg/yt-dlp/sha2562+-
Mpkg/yt-dlp/url2+-
Mpkg/yt-dlp/ver2+-
5 files changed, 70 insertions(+), 40 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,26 +1,18 @@ -From b5f26e6d73a01270c0bdb84843d5ff57438e3a2c Mon Sep 17 00:00:00 2001 +From 4309e1275d48248b427365952249b904be7c85d1 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 | 73 ----------------------------------------- - yt_dlp/utils.py | 82 +---------------------------------------------- - 2 files changed, 1 insertion(+), 154 deletions(-) + yt_dlp/cookies.py | 94 ----------------------------------------------- + yt_dlp/utils.py | 83 +---------------------------------------- + 2 files changed, 1 insertion(+), 176 deletions(-) diff --git a/yt_dlp/cookies.py b/yt_dlp/cookies.py -index df8f97b44..7c4fb932f 100644 +index 0ccd22947..3481243cc 100644 --- a/yt_dlp/cookies.py +++ b/yt_dlp/cookies.py -@@ -1,7 +1,5 @@ - import base64 - import contextlib --import ctypes --import http.cookiejar - import json - import os - import shutil -@@ -340,8 +338,6 @@ def decrypt(self, encrypted_value): +@@ -372,8 +372,6 @@ def decrypt(self, encrypted_value): def get_cookie_decryptor(browser_root, browser_keyring_name, logger, *, keyring=None): if sys.platform == 'darwin': return MacChromeCookieDecryptor(browser_keyring_name, logger) @@ -29,7 +21,7 @@ index df8f97b44..7c4fb932f 100644 return LinuxChromeCookieDecryptor(browser_keyring_name, logger, keyring=keyring) -@@ -411,43 +407,6 @@ def decrypt(self, encrypted_value): +@@ -443,43 +441,6 @@ def decrypt(self, encrypted_value): return encrypted_value @@ -73,7 +65,35 @@ index df8f97b44..7c4fb932f 100644 def _extract_safari_cookies(profile, logger): if profile is not None: logger.error('safari does not support profiles') -@@ -871,38 +830,6 @@ def _decrypt_aes_gcm(ciphertext, key, nonce, authentication_tag, logger): +@@ -855,27 +816,6 @@ def _get_mac_keyring_password(browser_keyring_name, logger): + return None + + +-def _get_windows_v10_key(browser_root, logger): +- path = _find_most_recently_used_file(browser_root, 'Local State', logger) +- if path is None: +- logger.error('could not find local state file') +- return None +- logger.debug(f'Found local state file at "{path}"') +- with open(path, encoding='utf8') as f: +- data = json.load(f) +- try: +- base64_key = data['os_crypt']['encrypted_key'] +- except KeyError: +- logger.error('no encrypted key in Local State') +- return None +- encrypted_key = base64.b64decode(base64_key) +- prefix = b'DPAPI' +- if not encrypted_key.startswith(prefix): +- logger.error('invalid key') +- return None +- return _decrypt_windows_dpapi(encrypted_key[len(prefix):], logger) +- +- + def pbkdf2_sha1(password, salt, iterations, key_length): + return pbkdf2_hmac('sha1', password, salt, iterations, key_length) + +@@ -903,40 +843,6 @@ def _decrypt_aes_gcm(ciphertext, key, nonce, authentication_tag, logger): return None @@ -82,10 +102,12 @@ index df8f97b44..7c4fb932f 100644 - References: - - https://docs.microsoft.com/en-us/windows/win32/api/dpapi/nf-dpapi-cryptunprotectdata - """ -- from ctypes.wintypes import DWORD +- +- import ctypes +- import ctypes.wintypes - - class DATA_BLOB(ctypes.Structure): -- _fields_ = [('cbData', DWORD), +- _fields_ = [('cbData', ctypes.wintypes.DWORD), - ('pbData', ctypes.POINTER(ctypes.c_char))] - - buffer = ctypes.create_string_buffer(ciphertext) @@ -113,23 +135,16 @@ index df8f97b44..7c4fb932f 100644 return os.environ.get('XDG_CONFIG_HOME', os.path.expanduser('~/.config')) diff --git a/yt_dlp/utils.py b/yt_dlp/utils.py -index 7648b6fce..21110dc33 100644 +index 00f2fbf42..5e12d9f74 100644 --- a/yt_dlp/utils.py +++ b/yt_dlp/utils.py -@@ -5,7 +5,6 @@ - import codecs - import collections - import contextlib --import ctypes - import datetime - import email.header - import email.utils -@@ -1983,63 +1982,6 @@ def __init__(self): +@@ -2042,64 +2042,6 @@ def __init__(self): super().__init__(self.msg) -# Cross-platform file locking -if sys.platform == 'win32': +- import ctypes - import ctypes.wintypes - import msvcrt - @@ -188,15 +203,16 @@ index 7648b6fce..21110dc33 100644 try: import fcntl -@@ -2362,29 +2304,7 @@ def fix_xml_ampersands(xml_str): +@@ -2422,30 +2364,7 @@ def fix_xml_ampersands(xml_str): def setproctitle(title): - assert isinstance(title, str) - -- # ctypes in Jython is not complete -- # http://bugs.jython.org/issue2148 -- if sys.platform.startswith('java'): +- # Workaround for https://github.com/yt-dlp/yt-dlp/issues/4541 +- try: +- import ctypes +- except ImportError: - return - - try: diff --git a/pkg/yt-dlp/pylibs.txt b/pkg/yt-dlp/pylibs.txt @@ -7,11 +7,9 @@ yt_dlp/cache.py yt_dlp/compat/__init__.py yt_dlp/compat/_deprecated.py yt_dlp/compat/_legacy.py -yt_dlp/compat/asyncio.py yt_dlp/compat/compat_utils.py yt_dlp/compat/functools.py yt_dlp/compat/imghdr.py -yt_dlp/compat/re.py yt_dlp/cookies.py yt_dlp/dependencies.py yt_dlp/downloader/__init__.py @@ -58,6 +56,7 @@ yt_dlp/extractor/amazon.py yt_dlp/extractor/amcnetworks.py yt_dlp/extractor/americastestkitchen.py yt_dlp/extractor/amp.py +yt_dlp/extractor/angel.py yt_dlp/extractor/animeondemand.py yt_dlp/extractor/ant1newsgr.py yt_dlp/extractor/anvato.py @@ -135,6 +134,7 @@ yt_dlp/extractor/caltrans.py yt_dlp/extractor/cam4.py yt_dlp/extractor/camdemy.py yt_dlp/extractor/cammodels.py +yt_dlp/extractor/camtasia.py yt_dlp/extractor/camwithher.py yt_dlp/extractor/canalalpha.py yt_dlp/extractor/canalc2.py @@ -255,6 +255,7 @@ yt_dlp/extractor/elpais.py yt_dlp/extractor/embedly.py yt_dlp/extractor/engadget.py yt_dlp/extractor/epicon.py +yt_dlp/extractor/epoch.py yt_dlp/extractor/eporner.py yt_dlp/extractor/eroprofile.py yt_dlp/extractor/ertgr.py @@ -263,6 +264,7 @@ yt_dlp/extractor/espn.py yt_dlp/extractor/esri.py yt_dlp/extractor/europa.py yt_dlp/extractor/europeantour.py +yt_dlp/extractor/eurosport.py yt_dlp/extractor/euscreen.py yt_dlp/extractor/expotv.py yt_dlp/extractor/expressen.py @@ -314,6 +316,7 @@ yt_dlp/extractor/gazeta.py yt_dlp/extractor/gdcvault.py yt_dlp/extractor/gedidigital.py yt_dlp/extractor/generic.py +yt_dlp/extractor/genericembeds.py yt_dlp/extractor/gettr.py yt_dlp/extractor/gfycat.py yt_dlp/extractor/giantbomb.py @@ -336,6 +339,7 @@ yt_dlp/extractor/gotostage.py yt_dlp/extractor/gputechconf.py yt_dlp/extractor/gronkh.py yt_dlp/extractor/groupon.py +yt_dlp/extractor/harpodeon.py yt_dlp/extractor/hbo.py yt_dlp/extractor/hearthisat.py yt_dlp/extractor/heise.py @@ -348,6 +352,7 @@ yt_dlp/extractor/historicfilms.py yt_dlp/extractor/hitbox.py yt_dlp/extractor/hitrecord.py yt_dlp/extractor/hketv.py +yt_dlp/extractor/holodex.py yt_dlp/extractor/hotnewhiphop.py yt_dlp/extractor/hotstar.py yt_dlp/extractor/howcast.py @@ -377,6 +382,7 @@ yt_dlp/extractor/internazionale.py yt_dlp/extractor/internetvideoarchive.py yt_dlp/extractor/iprima.py yt_dlp/extractor/iqiyi.py +yt_dlp/extractor/islamchannel.py yt_dlp/extractor/itprotv.py yt_dlp/extractor/itv.py yt_dlp/extractor/ivi.py @@ -387,6 +393,7 @@ yt_dlp/extractor/izlesene.py yt_dlp/extractor/jable.py yt_dlp/extractor/jamendo.py yt_dlp/extractor/jeuxvideo.py +yt_dlp/extractor/jixie.py yt_dlp/extractor/joj.py yt_dlp/extractor/jove.py yt_dlp/extractor/jwplatform.py @@ -402,6 +409,7 @@ yt_dlp/extractor/kicker.py yt_dlp/extractor/kickstarter.py yt_dlp/extractor/kinja.py yt_dlp/extractor/kinopoisk.py +yt_dlp/extractor/kompas.py yt_dlp/extractor/konserthusetplay.py yt_dlp/extractor/koo.py yt_dlp/extractor/krasview.py @@ -496,6 +504,7 @@ yt_dlp/extractor/motherless.py yt_dlp/extractor/motorsport.py yt_dlp/extractor/movieclips.py yt_dlp/extractor/moviepilot.py +yt_dlp/extractor/moview.py yt_dlp/extractor/moviezine.py yt_dlp/extractor/movingimage.py yt_dlp/extractor/msn.py @@ -526,6 +535,7 @@ yt_dlp/extractor/neteasemusic.py yt_dlp/extractor/netverse.py yt_dlp/extractor/netzkino.py yt_dlp/extractor/newgrounds.py +yt_dlp/extractor/newspicks.py yt_dlp/extractor/newstube.py yt_dlp/extractor/newsy.py yt_dlp/extractor/nextmedia.py @@ -587,7 +597,7 @@ yt_dlp/extractor/palcomp3.py yt_dlp/extractor/pandoratv.py yt_dlp/extractor/panopto.py yt_dlp/extractor/paramountplus.py -yt_dlp/extractor/parliamentliveuk.py +yt_dlp/extractor/parler.py yt_dlp/extractor/parlview.py yt_dlp/extractor/patreon.py yt_dlp/extractor/pbs.py @@ -663,6 +673,7 @@ yt_dlp/extractor/rbmaradio.py yt_dlp/extractor/rcs.py yt_dlp/extractor/rcti.py yt_dlp/extractor/rds.py +yt_dlp/extractor/redbee.py yt_dlp/extractor/redbulltv.py yt_dlp/extractor/reddit.py yt_dlp/extractor/redgifs.py @@ -679,7 +690,6 @@ yt_dlp/extractor/rokfin.py yt_dlp/extractor/roosterteeth.py yt_dlp/extractor/rottentomatoes.py yt_dlp/extractor/rozhlas.py -yt_dlp/extractor/rtbf.py yt_dlp/extractor/rte.py yt_dlp/extractor/rtl2.py yt_dlp/extractor/rtlnl.py @@ -718,6 +728,7 @@ yt_dlp/extractor/sexu.py yt_dlp/extractor/seznamzpravy.py yt_dlp/extractor/shahid.py yt_dlp/extractor/shared.py +yt_dlp/extractor/sharevideos.py yt_dlp/extractor/shemaroome.py yt_dlp/extractor/showroomlive.py yt_dlp/extractor/simplecast.py @@ -797,6 +808,8 @@ yt_dlp/extractor/telemundo.py yt_dlp/extractor/telequebec.py yt_dlp/extractor/teletask.py yt_dlp/extractor/telewebion.py +yt_dlp/extractor/tempo.py +yt_dlp/extractor/tencent.py yt_dlp/extractor/tennistv.py yt_dlp/extractor/tenplay.py yt_dlp/extractor/testurl.py @@ -826,10 +839,12 @@ yt_dlp/extractor/toongoggles.py yt_dlp/extractor/toutv.py yt_dlp/extractor/toypics.py yt_dlp/extractor/traileraddict.py +yt_dlp/extractor/triller.py yt_dlp/extractor/trilulilu.py yt_dlp/extractor/trovo.py yt_dlp/extractor/trueid.py yt_dlp/extractor/trunews.py +yt_dlp/extractor/truth.py yt_dlp/extractor/trutv.py yt_dlp/extractor/tube8.py yt_dlp/extractor/tubetugraz.py @@ -945,7 +960,6 @@ yt_dlp/extractor/webcaster.py yt_dlp/extractor/webofstories.py yt_dlp/extractor/weibo.py yt_dlp/extractor/weiqitv.py -yt_dlp/extractor/wetv.py yt_dlp/extractor/whowatch.py yt_dlp/extractor/wikimedia.py yt_dlp/extractor/willow.py diff --git a/pkg/yt-dlp/sha256 b/pkg/yt-dlp/sha256 @@ -1 +1 @@ -d2531dc0d17b78209ac21cbf4e228c5a41b5aca97b46a256c33574ed2176bff2 yt-dlp.tar.gz +675ff266e9400c47bb4df947ab3e7d5e9d4c362abcadd2c61ba341e86590f1df 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/2022.07.18/yt-dlp.tar.gz" +url = "https://github.com/yt-dlp/yt-dlp/releases/download/2022.09.01/yt-dlp.tar.gz" diff --git a/pkg/yt-dlp/ver b/pkg/yt-dlp/ver @@ -1 +1 @@ -2022.07.18 r0 +2022.09.01 r0