+From 460eb9c50e0970fdceb51485c5fe3268574c48e8 Mon Sep 17 00:00:00 2001
+From: Lesmiscore <nao20010128@gmail.com>
+Date: Mon, 15 Aug 2022 15:43:43 +0900
+Subject: [PATCH] [build] Exclude devscripts from installs
+
+Closes #4667
+---
+ pyinst.py | 2 +-
+ setup.py | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/pyinst.py b/pyinst.py
+index 9be5d896041..0b7c66a30fa 100644
+--- a/pyinst.py
++++ b/pyinst.py
+@@ -81,7 +81,7 @@ def version_to_list(version):
+ def dependency_options():
+ # Due to the current implementation, these are auto-detected, but explicitly add them just in case
+ dependencies = [pycryptodome_module(), 'mutagen', 'brotli', 'certifi', 'websockets']
+- excluded_modules = ['test', 'ytdlp_plugins', 'youtube_dl', 'youtube_dlc']
++ excluded_modules = ('youtube_dl', 'youtube_dlc', 'test', 'ytdlp_plugins', 'devscripts')
+
+ yield from (f'--hidden-import={module}' for module in dependencies)
+ yield '--collect-submodules=websockets'
+diff --git a/setup.py b/setup.py
+index aebe1dead9f..e376a694a38 100644
+--- a/setup.py
++++ b/setup.py
+@@ -28,7 +28,7 @@
+
+ def packages():
+ if setuptools_available:
+- return find_packages(exclude=('youtube_dl', 'youtube_dlc', 'test', 'ytdlp_plugins'))
++ return find_packages(exclude=('youtube_dl', 'youtube_dlc', 'test', 'ytdlp_plugins', 'devscripts'))
+
+ return [
+ 'yt_dlp', 'yt_dlp.extractor', 'yt_dlp.downloader', 'yt_dlp.postprocessor', 'yt_dlp.compat',