mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 01:00:29 +08:00
大幅优化镜像体积
1. 使用 docker 预构建的必需文件,而不是安装全量依赖 2. 使用 zerofree 清除镜像无效数据 将 janus 日志级别调整为2
This commit is contained in:
parent
e375e41fb6
commit
48fe790897
@ -62,6 +62,7 @@ RUN sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.lis
|
||||
/run/kvmd \
|
||||
/tmp/kvmd-nginx \
|
||||
&& touch /run/kvmd/ustreamer.sock \
|
||||
&& apt clean \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& rm -rf /tmp/lib /tmp/wheel
|
||||
|
||||
|
||||
@ -47,6 +47,7 @@ RUN sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.lis
|
||||
libspeex-dev \
|
||||
libspeexdsp-dev \
|
||||
libusb-1.0-0-dev \
|
||||
&& apt clean \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY build/cargo_config /tmp/config
|
||||
@ -69,7 +70,7 @@ RUN --security=insecure pip config set global.index-url https://pypi.tuna.tsingh
|
||||
more-itertools multidict netifaces packaging passlib pillow ply psutil \
|
||||
pycparser pyelftools pyghmi pygments pyparsing pyotp qrcode requests \
|
||||
semantic-version setproctitle six spidev tabulate urllib3 wrapt xlib \
|
||||
yarl pyserial pyyaml zstandard supervisor
|
||||
yarl pyserial pyyaml zstandard supervisor pyfatfs
|
||||
|
||||
# 编译安装 libnice、libsrtp、libwebsockets 和 janus-gateway
|
||||
RUN git clone --depth=1 https://gitlab.freedesktop.org/libnice/libnice /tmp/libnice \
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
general: {
|
||||
debug_level = 0
|
||||
debug_level = 2
|
||||
}
|
||||
nat: {
|
||||
nice_debug = false
|
||||
|
||||
82
setup.py
82
setup.py
@ -21,43 +21,38 @@
|
||||
# #
|
||||
# ========================================================================== #
|
||||
|
||||
|
||||
import textwrap
|
||||
|
||||
import setuptools.command.easy_install
|
||||
from setuptools import setup, find_packages
|
||||
|
||||
|
||||
# =====
|
||||
class _Template(str):
|
||||
def __init__(self, text: str) -> None:
|
||||
self.__text = textwrap.dedent(text).strip()
|
||||
|
||||
def __mod__(self, kv: dict) -> str:
|
||||
kv = {"module_name": kv["ep"].module_name, **kv}
|
||||
return (self.__text % (kv))
|
||||
|
||||
|
||||
class _ScriptWriter(setuptools.command.easy_install.ScriptWriter):
|
||||
template = _Template("""
|
||||
# EASY-INSTALL-ENTRY-SCRIPT: %(spec)r,%(group)r,%(name)r
|
||||
|
||||
__requires__ = %(spec)r
|
||||
|
||||
from %(module_name)s import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
""")
|
||||
|
||||
|
||||
# =====
|
||||
def main() -> None:
|
||||
setuptools.command.easy_install.ScriptWriter = _ScriptWriter
|
||||
# Define entry points manually with specific import paths
|
||||
entry_points = {
|
||||
"console_scripts": [
|
||||
"kvmd = kvmd.apps.kvmd:main",
|
||||
"kvmd-media = kvmd.apps.media:main",
|
||||
"kvmd-pst = kvmd.apps.pst:main",
|
||||
"kvmd-pstrun = kvmd.apps.pstrun:main",
|
||||
"kvmd-otg = kvmd.apps.otg:main",
|
||||
"kvmd-otgnet = kvmd.apps.otgnet:main",
|
||||
"kvmd-otgmsd = kvmd.apps.otgmsd:main",
|
||||
"kvmd-otgconf = kvmd.apps.otgconf:main",
|
||||
"kvmd-htpasswd = kvmd.apps.htpasswd:main",
|
||||
"kvmd-totp = kvmd.apps.totp:main",
|
||||
"kvmd-edidconf = kvmd.apps.edidconf:main",
|
||||
"kvmd-ipmi = kvmd.apps.ipmi:main",
|
||||
"kvmd-vnc = kvmd.apps.vnc:main",
|
||||
"kvmd-nginx-mkconf = kvmd.apps.ngxmkconf:main",
|
||||
"kvmd-janus = kvmd.apps.janus:main",
|
||||
"kvmd-watchdog = kvmd.apps.watchdog:main",
|
||||
"kvmd-oled = kvmd.apps.oled:main",
|
||||
"kvmd-helper-pst-remount = kvmd.helpers.remount:main",
|
||||
"kvmd-helper-otgmsd-remount = kvmd.helpers.remount:main",
|
||||
"kvmd-helper-swapfiles = kvmd.helpers.swapfiles:main",
|
||||
]
|
||||
}
|
||||
|
||||
setup(
|
||||
name="kvmd",
|
||||
version="4.49",
|
||||
version="4.20",
|
||||
url="https://github.com/pikvm/kvmd",
|
||||
license="GPLv3",
|
||||
author="Maxim Devaev",
|
||||
@ -117,30 +112,7 @@ def main() -> None:
|
||||
"kvmd": ["i18n/zh/LC_MESSAGES/*.mo"],
|
||||
},
|
||||
|
||||
entry_points={
|
||||
"console_scripts": [
|
||||
"kvmd = kvmd.apps.kvmd:main",
|
||||
"kvmd-media = kvmd.apps.media:main",
|
||||
"kvmd-pst = kvmd.apps.pst:main",
|
||||
"kvmd-pstrun = kvmd.apps.pstrun:main",
|
||||
"kvmd-otg = kvmd.apps.otg:main",
|
||||
"kvmd-otgnet = kvmd.apps.otgnet:main",
|
||||
"kvmd-otgmsd = kvmd.apps.otgmsd:main",
|
||||
"kvmd-otgconf = kvmd.apps.otgconf:main",
|
||||
"kvmd-htpasswd = kvmd.apps.htpasswd:main",
|
||||
"kvmd-totp = kvmd.apps.totp:main",
|
||||
"kvmd-edidconf = kvmd.apps.edidconf:main",
|
||||
"kvmd-ipmi = kvmd.apps.ipmi:main",
|
||||
"kvmd-vnc = kvmd.apps.vnc:main",
|
||||
"kvmd-nginx-mkconf = kvmd.apps.ngxmkconf:main",
|
||||
"kvmd-janus = kvmd.apps.janus:main",
|
||||
"kvmd-watchdog = kvmd.apps.watchdog:main",
|
||||
"kvmd-oled = kvmd.apps.oled:main",
|
||||
"kvmd-helper-pst-remount = kvmd.helpers.remount:main",
|
||||
"kvmd-helper-otgmsd-remount = kvmd.helpers.remount:main",
|
||||
"kvmd-helper-swapfiles = kvmd.helpers.swapfiles:main",
|
||||
],
|
||||
},
|
||||
entry_points=entry_points,
|
||||
|
||||
classifiers=[
|
||||
"License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user