mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-14 02:00:32 +08:00
som fix
This commit is contained in:
parent
06a64725be
commit
c711683c63
@ -53,16 +53,19 @@ if [ ! -f /etc/kvmd/.init_flag ]; then
|
|||||||
touch /etc/kvmd/.docker_flag && \
|
touch /etc/kvmd/.docker_flag && \
|
||||||
sed -i 's/localhost.localdomain/docker/g' /etc/kvmd/meta.yaml && \
|
sed -i 's/localhost.localdomain/docker/g' /etc/kvmd/meta.yaml && \
|
||||||
sed -i 's/localhost/localhost:4430/g' /etc/kvmd/kvm_input.sh; then
|
sed -i 's/localhost/localhost:4430/g' /etc/kvmd/kvm_input.sh; then
|
||||||
log_info "基础配置完成"
|
log_info "移动配置文件完成"
|
||||||
else
|
else
|
||||||
log_error "基础配置失败"
|
log_error "移动配置文件失败"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# SSL证书配置
|
# SSL证书配置
|
||||||
if ! /usr/share/kvmd/kvmd-gencert --do-the-thing && \
|
if ! /usr/share/kvmd/kvmd-gencert --do-the-thing; then
|
||||||
! /usr/share/kvmd/kvmd-gencert --do-the-thing --vnc; then
|
log_error "Nginx SSL 证书生成失败"
|
||||||
log_error "SSL 证书生成失败"
|
exit 1
|
||||||
|
fi
|
||||||
|
if ! /usr/share/kvmd/kvmd-gencert --do-the-thing --vnc; then
|
||||||
|
log_error "VNC SSL 证书生成失败"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -185,6 +188,17 @@ EOF
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 设置默认视频模式为 mjpeg
|
||||||
|
if ! grep -q "mjpeg_default:" /etc/kvmd/override.yaml; then
|
||||||
|
cat >> /etc/kvmd/override.yaml << EOF
|
||||||
|
|
||||||
|
streamer:
|
||||||
|
mjpeg_default: true # 首次访问默认使用 MJPEG 模式
|
||||||
|
h264_bitrate: 5000 # 默认码率 5000 Kbps
|
||||||
|
EOF
|
||||||
|
log_info "已设置首次访问默认使用 MJPEG 模式"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ ! -z "$VIDEOFORMAT" ]; then
|
if [ ! -z "$VIDEOFORMAT" ]; then
|
||||||
if sed -i "s/format=mjpeg/format=$VIDFORMAT/g" /etc/kvmd/override.yaml; then
|
if sed -i "s/format=mjpeg/format=$VIDFORMAT/g" /etc/kvmd/override.yaml; then
|
||||||
log_info "视频输入格式已设置为 $VIDFORMAT"
|
log_info "视频输入格式已设置为 $VIDFORMAT"
|
||||||
@ -216,5 +230,5 @@ if [ "$OTG" == "1" ]; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
log_info "One-KVM 启动完成,正在启动服务..."
|
log_info "One-KVM 配置文件准备完成,正在启动服务..."
|
||||||
exec supervisord -c /etc/kvmd/supervisord.conf
|
exec supervisord -c /etc/kvmd/supervisord.conf
|
||||||
@ -4,6 +4,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
@ -55,7 +56,7 @@ cd "$path"
|
|||||||
# - https://msol.io/blog/tech/create-a-self-signed-ecc-certificate
|
# - https://msol.io/blog/tech/create-a-self-signed-ecc-certificate
|
||||||
openssl ecparam -out server.key -name prime256v1 -genkey
|
openssl ecparam -out server.key -name prime256v1 -genkey
|
||||||
openssl req -new -x509 -sha256 -nodes -key server.key -out server.crt -days 3650 \
|
openssl req -new -x509 -sha256 -nodes -key server.key -out server.crt -days 3650 \
|
||||||
-subj "/C=US/O=PiKVM/OU=PiKVM/CN=localhost"
|
-subj "/C=CN/O=One-KVM/OU=One-KVM/CN=localhost"
|
||||||
|
|
||||||
#chown "root:kvmd-$target" "$path"/*
|
#chown "root:kvmd-$target" "$path"/*
|
||||||
chmod 440 "$path/server.key"
|
chmod 440 "$path/server.key"
|
||||||
|
|||||||
@ -5,6 +5,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
@ -86,7 +87,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<p class="text credits"><a target="_blank" href="https://pikvm.org" i18n="index_text_10">PiKVM Project</a> | <a target="_blank" href="https://docs.pikvm.org" i18n="index_text_11">PiKVM Documentation</a> | <a target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12">One-KVM Project</a> | <a target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13">One-KVM Documentation</a></p>
|
<p class="text credits"><a target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12">One-KVM Project</a> | <a target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13">One-KVM Documentation</a></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@ -39,10 +39,6 @@ block start
|
|||||||
|
|
||||||
hr
|
hr
|
||||||
p(class="text credits")
|
p(class="text credits")
|
||||||
a(target="_blank" href="https://pikvm.org" i18n="index_text_10") PiKVM Project
|
|
||||||
| |
|
|
||||||
a(target="_blank" href="https://docs.pikvm.org" i18n="index_text_11") PiKVM Documentation
|
|
||||||
| |
|
|
||||||
a(target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12") One-KVM Project
|
a(target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12") One-KVM Project
|
||||||
| |
|
| |
|
||||||
a(target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13") One-KVM Documentation
|
a(target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13") One-KVM Documentation
|
||||||
@ -5,6 +5,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
|
|||||||
@ -5,6 +5,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
@ -166,7 +167,7 @@
|
|||||||
<div class="text">
|
<div class="text">
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td rowspan="2"><img class="sign stream-message-no-webrtc" src="/share/svg/warning.svg"></td>
|
<td rowspan="2"><img class="sign " src="/share/svg/warning.svg"></td>
|
||||||
<td style="line-height:1.5"><b>WebRTC is not supported by this browser</b></td>
|
<td style="line-height:1.5"><b>WebRTC is not supported by this browser</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
@ -234,17 +235,12 @@
|
|||||||
<td i18n="kvm_text14">Video <a target="_blank" href="https://docs.pikvm.org/webrtc">mode</a>:</td>
|
<td i18n="kvm_text14">Video <a target="_blank" href="https://docs.pikvm.org/webrtc">mode</a>:</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="radio-box">
|
<div class="radio-box">
|
||||||
|
<input checked type="radio" id="stream-mode-radio-mjpeg" name="stream-mode-radio" value="mjpeg">
|
||||||
|
<label for="stream-mode-radio-mjpeg">Legacy<br>MJPEG</label>
|
||||||
|
<input type="radio" id="stream-mode-radio-media" name="stream-mode-radio" value="media">
|
||||||
|
<label for="stream-mode-radio-media">Direct<br>H.264</label>
|
||||||
<input type="radio" id="stream-mode-radio-janus" name="stream-mode-radio" value="janus">
|
<input type="radio" id="stream-mode-radio-janus" name="stream-mode-radio" value="janus">
|
||||||
<label for="stream-mode-radio-janus">WebRTC</label>
|
<label for="stream-mode-radio-janus">WebRTC<br>H.264 </label>
|
||||||
<input type="radio" id="stream-mode-radio-media" name="stream-mode-radio" value="media">
|
|
||||||
<label for="stream-mode-radio-media">H.264</label>
|
|
||||||
<input checked type="radio" id="stream-mode-radio-mjpeg" name="stream-mode-radio" value="mjpeg">
|
|
||||||
<label for="stream-mode-radio-mjpeg">MJPEG</label>
|
|
||||||
<label for="stream-mode-radio-janus">WebRTC</label>
|
|
||||||
<input type="radio" id="stream-mode-radio-media" name="stream-mode-radio" value="media">
|
|
||||||
<label for="stream-mode-radio-media">H.264</label>
|
|
||||||
<input checked type="radio" id="stream-mode-radio-mjpeg" name="stream-mode-radio" value="mjpeg">
|
|
||||||
<label for="stream-mode-radio-mjpeg">MJPEG</label>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -264,7 +260,7 @@
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="feature-disabled" id="stream-audio">
|
<tr class="feature-disabled" id="stream-audio">
|
||||||
<td i18n="kvm_text19">Audio volume:</td>
|
<td>Audio volume:</td>
|
||||||
<td class="value-slider">
|
<td class="value-slider">
|
||||||
<input class="slider" type="range" id="stream-audio-volume-slider">
|
<input class="slider" type="range" id="stream-audio-volume-slider">
|
||||||
</td>
|
</td>
|
||||||
@ -279,15 +275,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="feature-disabled" id="stream-mic">
|
|
||||||
<td>Microphone:</td>
|
|
||||||
<td align="right">
|
|
||||||
<div class="switch-box">
|
|
||||||
<input disabled type="checkbox" id="stream-mic-switch">
|
|
||||||
<label for="stream-mic-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
</table>
|
||||||
<hr>
|
<hr>
|
||||||
<div class="buttons buttons-row">
|
<div class="buttons buttons-row">
|
||||||
@ -433,16 +420,7 @@
|
|||||||
</details>
|
</details>
|
||||||
<table class="kv">
|
<table class="kv">
|
||||||
<tr>
|
<tr>
|
||||||
<td>Bad link mode (release keys immediately):</td>
|
<td i18n="hid-keyboard-bad-link-switch">Bad link mode (release keys immediately):</td>
|
||||||
<td align="right">
|
|
||||||
<div class="switch-box">
|
|
||||||
<input type="checkbox" id="hid-keyboard-bad-link-switch">
|
|
||||||
<label for="hid-keyboard-bad-link-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Bad link mode (release keys immediately):</td>
|
|
||||||
<td align="right">
|
<td align="right">
|
||||||
<div class="switch-box">
|
<div class="switch-box">
|
||||||
<input type="checkbox" id="hid-keyboard-bad-link-switch">
|
<input type="checkbox" id="hid-keyboard-bad-link-switch">
|
||||||
@ -556,7 +534,6 @@
|
|||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
</div>
|
</div>
|
||||||
<div class="hidden" id="msd-message-too-big-for-dvd">
|
|
||||||
<div class="hidden" id="msd-message-too-big-for-dvd">
|
<div class="hidden" id="msd-message-too-big-for-dvd">
|
||||||
<div class="text">
|
<div class="text">
|
||||||
<table>
|
<table>
|
||||||
@ -566,7 +543,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><sup style="line-height:1">The maximum is 31.6GiB. Please switch to the Flash mode.</sup></td>
|
<td><sup style="line-height:1">The maximum is 31.6GiB. Please switch to the Flash mode.</sup></td>
|
||||||
<td><sup style="line-height:1">The maximum is 31.6GiB. Please switch to the Flash mode.</sup></td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@ -637,7 +613,6 @@
|
|||||||
<div class="radio-box">
|
<div class="radio-box">
|
||||||
<input checked type="radio" id="msd-mode-radio-cdrom" name="msd-mode-radio" value="1">
|
<input checked type="radio" id="msd-mode-radio-cdrom" name="msd-mode-radio" value="1">
|
||||||
<label for="msd-mode-radio-cdrom">CD/DVD</label>
|
<label for="msd-mode-radio-cdrom">CD/DVD</label>
|
||||||
<label for="msd-mode-radio-cdrom">CD/DVD</label>
|
|
||||||
<input type="radio" id="msd-mode-radio-flash" name="msd-mode-radio" value="0">
|
<input type="radio" id="msd-mode-radio-flash" name="msd-mode-radio" value="0">
|
||||||
<label for="msd-mode-radio-flash">Flash</label>
|
<label for="msd-mode-radio-flash">Flash</label>
|
||||||
</div>
|
</div>
|
||||||
@ -811,11 +786,27 @@
|
|||||||
</table>
|
</table>
|
||||||
<table class="kv">
|
<table class="kv">
|
||||||
<tr>
|
<tr>
|
||||||
<td i18n="hid-pak-slow-switch">Slow typing:</td>
|
<td>Slow typing:</td>
|
||||||
<td align="right">
|
<td align="right">
|
||||||
<div class="switch-box">
|
<div class="switch-box">
|
||||||
<input type="checkbox" id="hid-pak-slow-switch">
|
<input type="checkbox" id="hid-pak-slow-switch">
|
||||||
<label for="hid-pak-slow-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
<label for="hid-pak-slow-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Hide input text:</td>
|
||||||
|
<td align="right">
|
||||||
|
<div class="switch-box">
|
||||||
|
<input type="checkbox" id="hid-pak-secure-switch">
|
||||||
|
<label for="hid-pak-secure-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td i18n="hid-pak-slow-switch">Slow typing:</td>
|
||||||
|
<td align="right">
|
||||||
|
<div class="switch-box">
|
||||||
<input type="checkbox" id="hid-pak-slow-switch">
|
<input type="checkbox" id="hid-pak-slow-switch">
|
||||||
<label for="hid-pak-slow-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
<label for="hid-pak-slow-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
||||||
</div>
|
</div>
|
||||||
@ -877,7 +868,6 @@
|
|||||||
<hr>
|
<hr>
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<div class="buttons-row">
|
<div class="buttons-row">
|
||||||
<button class="row50" data-force-hide-menu data-shortcut="CapsLock">• Caps Lock <img class="inline-lamp-small hid-keyboard-caps-led led-gray" src="/share/svg/led-square.svg"></button>
|
|
||||||
<button class="row50" data-force-hide-menu data-shortcut="CapsLock">• Caps Lock <img class="inline-lamp-small hid-keyboard-caps-led led-gray" src="/share/svg/led-square.svg"></button>
|
<button class="row50" data-force-hide-menu data-shortcut="CapsLock">• Caps Lock <img class="inline-lamp-small hid-keyboard-caps-led led-gray" src="/share/svg/led-square.svg"></button>
|
||||||
<button class="row50" data-force-hide-menu data-shortcut="MetaLeft">• Left Win</button>
|
<button class="row50" data-force-hide-menu data-shortcut="MetaLeft">• Left Win</button>
|
||||||
</div>
|
</div>
|
||||||
@ -997,50 +987,6 @@
|
|||||||
<table class="kv" id="switch-chain"></table>
|
<table class="kv" id="switch-chain"></table>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="right feature-disabled" id="switch-dropdown"><a class="menu-button" id="switch-menu-button" href="#"><img class="led-gray" id="switch-atx-power-led" src="/share/svg/led-atx-power.svg"><img class="led-gray" id="switch-atx-hdd-led" src="/share/svg/led-atx-hdd.svg"><span>Switch <i><sub id="switch-active-port"></sub></i></span></a>
|
|
||||||
<div class="menu" id="switch-menu">
|
|
||||||
<table style="border-spacing: 0px;">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<div class="text"><b><a target="_blank" href="https://docs.pikvm.org/switch">PiKVM Switch</a> is attached<br></b><sub>Select a port or perform any available action like ATX click</sub></div>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<div class="text">
|
|
||||||
<button class="small" data-force-hide-menu data-show-window="switch-window">• Settings</button>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr>
|
|
||||||
<div class="hidden" id="switch-message-update">
|
|
||||||
<div class="text">
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<td rowspan="2"><img class="sign " src="/share/svg/info.svg"></td>
|
|
||||||
<td style="line-height:1.5"><b>Good news! Your switch is ready to get the firmware update</b></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><sup style="line-height:1">Please <a target="_blank" href="https://docs.pikvm.org/switch/#firmware-updating">follow the instructions</a> when you decide to install it.</sup></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<hr>
|
|
||||||
</div>
|
|
||||||
<table class="kv">
|
|
||||||
<tr>
|
|
||||||
<td>Ask ATX click confirmation:</td>
|
|
||||||
<td align="right">
|
|
||||||
<div class="switch-box">
|
|
||||||
<input checked type="checkbox" id="switch-atx-ask-switch">
|
|
||||||
<label for="switch-atx-ask-switch"><span class="switch-inner"></span><span class="switch"></span></label>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<hr>
|
|
||||||
<table class="kv" id="switch-chain"></table>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
<div class="window" id="stream-ocr-window">
|
<div class="window" id="stream-ocr-window">
|
||||||
<div class="hidden" id="stream-ocr-selection"></div>
|
<div class="hidden" id="stream-ocr-selection"></div>
|
||||||
@ -1059,7 +1005,6 @@
|
|||||||
<div class="stream-box-offline" id="stream-box"><img id="stream-image" src="/share/png/blank-stream.png">
|
<div class="stream-box-offline" id="stream-box"><img id="stream-image" src="/share/png/blank-stream.png">
|
||||||
<video class="hidden" id="stream-video" disablePictureInPicture="true" autoplay playsinline muted></video>
|
<video class="hidden" id="stream-video" disablePictureInPicture="true" autoplay playsinline muted></video>
|
||||||
<canvas class="hidden" id="stream-canvas"></canvas>
|
<canvas class="hidden" id="stream-canvas"></canvas>
|
||||||
<canvas class="hidden" id="stream-canvas"></canvas>
|
|
||||||
<div id="stream-fullscreen-active"></div>
|
<div id="stream-fullscreen-active"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="keypad" id="stream-mouse-buttons" align="center">
|
<div class="keypad" id="stream-mouse-buttons" align="center">
|
||||||
@ -2395,650 +2340,10 @@
|
|||||||
// If you also want to support this project,<br>
|
// If you also want to support this project,<br>
|
||||||
// you can donate on <a target="_blank" href="https://www.patreon.com/pikvm">Patreon</a>
|
// you can donate on <a target="_blank" href="https://www.patreon.com/pikvm">Patreon</a>
|
||||||
or <a target="_blank" href="https://paypal.me/pikvm">Paypal</a>.</span>
|
or <a target="_blank" href="https://paypal.me/pikvm">Paypal</a>.</span>
|
||||||
<ul>
|
|
||||||
<li>A. Isenring</li>
|
|
||||||
<li>Aaron Graubert</li>
|
|
||||||
<li>Aaron Heise</li>
|
|
||||||
<li>Aaron Stein</li>
|
|
||||||
<li>Accalia</li>
|
|
||||||
<li>Adam Goodbar</li>
|
|
||||||
<li>Adam S</li>
|
|
||||||
<li>Adam Stuart</li>
|
|
||||||
<li>AdamBomb</li>
|
|
||||||
<li>adipisicing</li>
|
|
||||||
<li>Adrian Basham</li>
|
|
||||||
<li>Adrian Popescu</li>
|
|
||||||
<li>Ahmed Syed</li>
|
|
||||||
<li>Alberto Bassi</li>
|
|
||||||
<li>alejandro</li>
|
|
||||||
<li>Aleksei Brusianskii</li>
|
|
||||||
<li>Alessio Curri</li>
|
|
||||||
<li>Alex T</li>
|
|
||||||
<li>Alex Z</li>
|
|
||||||
<li>Alexander Karmanov</li>
|
|
||||||
<li>Alexander Lahuerta</li>
|
|
||||||
<li>Alexander Martin</li>
|
|
||||||
<li>Alexander Pankov</li>
|
|
||||||
<li>Alexandre Jablonski</li>
|
|
||||||
<li>Alexey Kamenskiy</li>
|
|
||||||
<li>alm0241</li>
|
|
||||||
<li>Alok Anand</li>
|
|
||||||
<li>Alucard</li>
|
|
||||||
<li>Ananthaneshan Elampoornan</li>
|
|
||||||
<li>Andreas Grundler</li>
|
|
||||||
<li>Andreas Marufke</li>
|
|
||||||
<li>Andreas Schmid</li>
|
|
||||||
<li>Andrew Brant</li>
|
|
||||||
<li>Andrew Melton</li>
|
|
||||||
<li>Andrew Reusch</li>
|
|
||||||
<li>Andrew Ruan</li>
|
|
||||||
<li>Andrzej V</li>
|
|
||||||
<li>Andy</li>
|
|
||||||
<li>Andy Keys</li>
|
|
||||||
<li>Anish Patel</li>
|
|
||||||
<li>Anix</li>
|
|
||||||
<li>Anonymous</li>
|
|
||||||
<li>Anthony Junk</li>
|
|
||||||
<li>Anton Kovalenko</li>
|
|
||||||
<li>Armen</li>
|
|
||||||
<li>Aron Green</li>
|
|
||||||
<li>Aron Perelman</li>
|
|
||||||
<li>Artem Simonov</li>
|
|
||||||
<li>Arthur Mayer</li>
|
|
||||||
<li>Arthur Woimbée</li>
|
|
||||||
<li>Ashlesh Chaudhari</li>
|
|
||||||
<li>Asim Shakour</li>
|
|
||||||
<li>Augusto Becciu</li>
|
|
||||||
<li>AVS Computer</li>
|
|
||||||
<li>awkspace</li>
|
|
||||||
<li>Badal Patel</li>
|
|
||||||
<li>baddog</li>
|
|
||||||
<li>Bao Tin Hoang</li>
|
|
||||||
<li>Bean Co.</li>
|
|
||||||
<li>Bela Bargel</li>
|
|
||||||
<li>Belf Igor</li>
|
|
||||||
<li>Ben Gordon</li>
|
|
||||||
<li>Ben Scott</li>
|
|
||||||
<li>Benedikt Heine</li>
|
|
||||||
<li>Benedikt Meier</li>
|
|
||||||
<li>Benjamin Frewert</li>
|
|
||||||
<li>Benjamin Melancon</li>
|
|
||||||
<li>Benjamin Schwartz</li>
|
|
||||||
<li>Benjamin Stegmann</li>
|
|
||||||
<li>Benni Stauder</li>
|
|
||||||
<li>Bernhard Fitzke</li>
|
|
||||||
<li>Beu</li>
|
|
||||||
<li>bikmaek</li>
|
|
||||||
<li>bitjoe</li>
|
|
||||||
<li>Bits and Bytes Computers LLC</li>
|
|
||||||
<li>Bjoern Petsch</li>
|
|
||||||
<li>Blair Hasler</li>
|
|
||||||
<li>Blindside</li>
|
|
||||||
<li>Blue Frog LLC</li>
|
|
||||||
<li>Bootstrapper - Programmierung erklärt</li>
|
|
||||||
<li>Bosco</li>
|
|
||||||
<li>Bradford King</li>
|
|
||||||
<li>Brainspore Networks</li>
|
|
||||||
<li>Branden Shaulis</li>
|
|
||||||
<li>Brandon Daniels</li>
|
|
||||||
<li>Brian</li>
|
|
||||||
<li>Brian Moses</li>
|
|
||||||
<li>Brian T Mulcahy</li>
|
|
||||||
<li>Brian Vecchiarelli</li>
|
|
||||||
<li>Brian White</li>
|
|
||||||
<li>brodonalds</li>
|
|
||||||
<li>Bruno Gomes</li>
|
|
||||||
<li>Bryan Adams</li>
|
|
||||||
<li>Bryan Montgomery</li>
|
|
||||||
<li>Buzzer</li>
|
|
||||||
<li>C P ELSE</li>
|
|
||||||
<li>Calanish</li>
|
|
||||||
<li>Cameron Hatcher</li>
|
|
||||||
<li>Cameron Tacklind</li>
|
|
||||||
<li>Carl Mercier</li>
|
|
||||||
<li>Carl-Fredrik Johansson</li>
|
|
||||||
<li>Carlos Eduardo Porter Herrera</li>
|
|
||||||
<li>Carlos Garcia</li>
|
|
||||||
<li>Carlos Manuel Torres</li>
|
|
||||||
<li>cbad536</li>
|
|
||||||
<li>César Nascimento</li>
|
|
||||||
<li>CHINATERA LIMITED</li>
|
|
||||||
<li>Chris Blackmon</li>
|
|
||||||
<li>Chris Burton</li>
|
|
||||||
<li>Chris Campbell</li>
|
|
||||||
<li>Chris Jackson</li>
|
|
||||||
<li>Chris Lewis</li>
|
|
||||||
<li>Chris Rizio</li>
|
|
||||||
<li>Christi King</li>
|
|
||||||
<li>Christian Schlögl</li>
|
|
||||||
<li>Christian Svensson</li>
|
|
||||||
<li>Christof Maluck</li>
|
|
||||||
<li>Christoph Dette</li>
|
|
||||||
<li>Christoffer Lund</li>
|
|
||||||
<li>Christopher Bulla</li>
|
|
||||||
<li>Christopher Gelatt</li>
|
|
||||||
<li>Christopher Hearn</li>
|
|
||||||
<li>Christopher Mandlbaur</li>
|
|
||||||
<li>Christopher Mendoza</li>
|
|
||||||
<li>Christopher Simms</li>
|
|
||||||
<li>Chucktastic</li>
|
|
||||||
<li>Cihan VURAL</li>
|
|
||||||
<li>clauskj3r</li>
|
|
||||||
<li>Clifford Coleman</li>
|
|
||||||
<li>Clinton Lee Taylor</li>
|
|
||||||
<li>Cole Imhoff</li>
|
|
||||||
<li>Colin Goodman</li>
|
|
||||||
<li>Corey Layton</li>
|
|
||||||
<li>Corey Lista</li>
|
|
||||||
<li>Craig Keenan</li>
|
|
||||||
<li>Crossfactor</li>
|
|
||||||
<li>Cruzzer</li>
|
|
||||||
<li>ctag</li>
|
|
||||||
<li>Curt Sammer</li>
|
|
||||||
<li>CyB0rgg</li>
|
|
||||||
<li>DeMentor</li>
|
|
||||||
<li>Desmond Whitt</li>
|
|
||||||
<li>Daegara</li>
|
|
||||||
<li>DailyAneurism</li>
|
|
||||||
<li>Damon Meledones</li>
|
|
||||||
<li>Dan Berkowitz</li>
|
|
||||||
<li>Dan Brakeley</li>
|
|
||||||
<li>Daniel Bowder</li>
|
|
||||||
<li>Daniel Cabrera</li>
|
|
||||||
<li>Daniel Davila</li>
|
|
||||||
<li>Danilo Saft</li>
|
|
||||||
<li>Danne</li>
|
|
||||||
<li>Dariusz Techmański</li>
|
|
||||||
<li>David</li>
|
|
||||||
<li>David Brausewetter</li>
|
|
||||||
<li>David Davis</li>
|
|
||||||
<li>David Godibadze</li>
|
|
||||||
<li>David Howell</li>
|
|
||||||
<li>David Irvine</li>
|
|
||||||
<li>David Klinkman</li>
|
|
||||||
<li>David Niemann</li>
|
|
||||||
<li>David Shay</li>
|
|
||||||
<li>David Ye</li>
|
|
||||||
<li>David York</li>
|
|
||||||
<li>Denis</li>
|
|
||||||
<li>Denis Andreev</li>
|
|
||||||
<li>Denis Yatsenko</li>
|
|
||||||
<li>Dennis Becker</li>
|
|
||||||
<li>Dennis Joslin</li>
|
|
||||||
<li>Dennis Lomet</li>
|
|
||||||
<li>Derek Jarvis</li>
|
|
||||||
<li>Derek Yap</li>
|
|
||||||
<li>Didrik</li>
|
|
||||||
<li>digitalbaconbits</li>
|
|
||||||
<li>Dimitrij Jedich</li>
|
|
||||||
<li>dixon wong</li>
|
|
||||||
<li>dizztrukshin</li>
|
|
||||||
<li>Dmitry Shilov</li>
|
|
||||||
<li>DogeLabs</li>
|
|
||||||
<li>Dominic Phoon</li>
|
|
||||||
<li>Dominik Klonowski</li>
|
|
||||||
<li>Donald Hays</li>
|
|
||||||
<li>Edmon Abdul Nur</li>
|
|
||||||
<li>Edward Wang</li>
|
|
||||||
<li>Egan Ford</li>
|
|
||||||
<li>Elani Ferri</li>
|
|
||||||
<li>Elliot Woo</li>
|
|
||||||
<li>Entt</li>
|
|
||||||
<li>Eric Phenix</li>
|
|
||||||
<li>Ethan Shold</li>
|
|
||||||
<li>Eugene Sukhodolin</li>
|
|
||||||
<li>ewook</li>
|
|
||||||
<li>eye-catcher.com</li>
|
|
||||||
<li>Fabian Druschke</li>
|
|
||||||
<li>Fabiano Sidler</li>
|
|
||||||
<li>Far Pin Solutions, LLC</li>
|
|
||||||
<li>Felyx Gabryel</li>
|
|
||||||
<li>Fergus McKay</li>
|
|
||||||
<li>Finn Ebenritter</li>
|
|
||||||
<li>floppy</li>
|
|
||||||
<li>fo0bar</li>
|
|
||||||
<li>Foad Yousef</li>
|
|
||||||
<li>Foamy</li>
|
|
||||||
<li>Foli Ayivoh</li>
|
|
||||||
<li>Folkert Weistra</li>
|
|
||||||
<li>Francisco Pavon</li>
|
|
||||||
<li>Frank</li>
|
|
||||||
<li>Frank Sander</li>
|
|
||||||
<li>Frederick Czajka</li>
|
|
||||||
<li>Fredrik Idréus</li>
|
|
||||||
<li>Garrett Dangerfield</li>
|
|
||||||
<li>Ge Men</li>
|
|
||||||
<li>Geekworm</li>
|
|
||||||
<li>Genkinger Andreas</li>
|
|
||||||
<li>Geijer</li>
|
|
||||||
<li>Geoffrey Wright</li>
|
|
||||||
<li>George Becker</li>
|
|
||||||
<li>Georgy Brodsky</li>
|
|
||||||
<li>Gerald</li>
|
|
||||||
<li>Gerardus Vernimmen</li>
|
|
||||||
<li>Gernot Neuschröer</li>
|
|
||||||
<li>Giovanni Fulco</li>
|
|
||||||
<li>GK</li>
|
|
||||||
<li>Glen Dragon</li>
|
|
||||||
<li>Greg Winterstein</li>
|
|
||||||
<li>Gregory Smith</li>
|
|
||||||
<li>Gregory Treantos</li>
|
|
||||||
<li>grewil</li>
|
|
||||||
<li>Grey Cynic</li>
|
|
||||||
<li>Guenter Honisch</li>
|
|
||||||
<li>Guido Bernacchi</li>
|
|
||||||
<li>Gustin Johnson</li>
|
|
||||||
<li>György Tamás Vizi</li>
|
|
||||||
<li>Haiberg GmbH</li>
|
|
||||||
<li>Haven Zheng</li>
|
|
||||||
<li>Heibunny</li>
|
|
||||||
<li>Heikki Tiittanen</li>
|
|
||||||
<li>Helio Leonardo Pinheiro e Mota</li>
|
|
||||||
<li>Henrik Ählström</li>
|
|
||||||
<li>Henry Hood</li>
|
|
||||||
<li>HimKo</li>
|
|
||||||
<li>HouseFPV</li>
|
|
||||||
<li>Howard Simons</li>
|
|
||||||
<li>HyunohRyu</li>
|
|
||||||
<li>Icculus</li>
|
|
||||||
<li>iks</li>
|
|
||||||
<li>INFO TRX INC</li>
|
|
||||||
<li>Invader Monks</li>
|
|
||||||
<li>Ioannis Karageorgos</li>
|
|
||||||
<li>Isaac</li>
|
|
||||||
<li>IT Lifesaver</li>
|
|
||||||
<li>Ivan Ganev</li>
|
|
||||||
<li>Ivan Josiah Lapis</li>
|
|
||||||
<li>Ivan Shapovalov</li>
|
|
||||||
<li>iwbjhbweriuhf</li>
|
|
||||||
<li>J</li>
|
|
||||||
<li>J L</li>
|
|
||||||
<li>Jaanus</li>
|
|
||||||
<li>Jackson Wyatt</li>
|
|
||||||
<li>Jacob Karaffa</li>
|
|
||||||
<li>Jacob Morgan</li>
|
|
||||||
<li>James Cadd</li>
|
|
||||||
<li>James Cobb</li>
|
|
||||||
<li>James Edwards</li>
|
|
||||||
<li>James Kocher</li>
|
|
||||||
<li>James Mayhugh</li>
|
|
||||||
<li>James Noonan</li>
|
|
||||||
<li>James Ye</li>
|
|
||||||
<li>Jamie Murphy</li>
|
|
||||||
<li>Jamie Scott</li>
|
|
||||||
<li>Jan Niehusmann</li>
|
|
||||||
<li>Jannick Oursin</li>
|
|
||||||
<li>Jari Hiltunen</li>
|
|
||||||
<li>Jason Crossley</li>
|
|
||||||
<li>Jason Downey</li>
|
|
||||||
<li>Jason Toland</li>
|
|
||||||
<li>Jasper Backer</li>
|
|
||||||
<li>Jay Davis</li>
|
|
||||||
<li>Jay Isaacs</li>
|
|
||||||
<li>Jazereel Goh</li>
|
|
||||||
<li>Jean-Daniel Croteau</li>
|
|
||||||
<li>Jean-Philippe Guilbault</li>
|
|
||||||
<li>Jeff</li>
|
|
||||||
<li>Jeff Bowman</li>
|
|
||||||
<li>Jeff Urlwin</li>
|
|
||||||
<li>Jennifer Herting</li>
|
|
||||||
<li>Jennifer Rowlett</li>
|
|
||||||
<li>Jeremy Abel</li>
|
|
||||||
<li>Jeremy Combs</li>
|
|
||||||
<li>Jeremy Hines</li>
|
|
||||||
<li>Jerremy Holland</li>
|
|
||||||
<li>Jerry Nall</li>
|
|
||||||
<li>Jerry Y. Chen</li>
|
|
||||||
<li>Jim Bailey</li>
|
|
||||||
<li>Jim Harbin</li>
|
|
||||||
<li>Jimmy Burgett</li>
|
|
||||||
<li>Jimmy Stanley</li>
|
|
||||||
<li>Joachim Bruening</li>
|
|
||||||
<li>Joe Hanson</li>
|
|
||||||
<li>Joe Hinteregger</li>
|
|
||||||
<li>Joe Ventura</li>
|
|
||||||
<li>Joel Jacobs</li>
|
|
||||||
<li>Johannes Heigermose</li>
|
|
||||||
<li>John Andersen</li>
|
|
||||||
<li>John Copeland</li>
|
|
||||||
<li>John F Glenn</li>
|
|
||||||
<li>John Holmes</li>
|
|
||||||
<li>John Kelley</li>
|
|
||||||
<li>John McGovern</li>
|
|
||||||
<li>Johnny Henson</li>
|
|
||||||
<li>Jon Ferguy</li>
|
|
||||||
<li>Jon-Eric</li>
|
|
||||||
<li>Joni Ruuskanen</li>
|
|
||||||
<li>Jonas Fischer</li>
|
|
||||||
<li>Jonathan Slenders</li>
|
|
||||||
<li>Jonathan Vaughn</li>
|
|
||||||
<li>Joost Backer</li>
|
|
||||||
<li>Jordan Blake</li>
|
|
||||||
<li>Jordi Pakey-Rodriguez</li>
|
|
||||||
<li>Joris van Embden</li>
|
|
||||||
<li>Joseph Swift</li>
|
|
||||||
<li>Josh Nethery</li>
|
|
||||||
<li>Josh Ricker</li>
|
|
||||||
<li>Josh VanDeraa</li>
|
|
||||||
<li>Joshua Futterer</li>
|
|
||||||
<li>Jozef Riha</li>
|
|
||||||
<li>Jörgen Fredriksson</li>
|
|
||||||
<li>Julian Forero</li>
|
|
||||||
<li>Julian Schneider</li>
|
|
||||||
<li>Julien Angelier</li>
|
|
||||||
<li>Justin</li>
|
|
||||||
<li>Justin Waters</li>
|
|
||||||
<li>Kai Hadler</li>
|
|
||||||
<li>Kamil Chyba</li>
|
|
||||||
<li>Kari Matti Korpi</li>
|
|
||||||
<li>Karl Dunne</li>
|
|
||||||
<li>Karl Moos</li>
|
|
||||||
<li>Keith Muggleton</li>
|
|
||||||
<li>Ken Lee</li>
|
|
||||||
<li>Kenneth Younger III</li>
|
|
||||||
<li>Kenny Hui</li>
|
|
||||||
<li>KeonWoo PARK</li>
|
|
||||||
<li>Kevin Bajohr</li>
|
|
||||||
<li>Kevin Schwartz</li>
|
|
||||||
<li>Kevin Sherwood</li>
|
|
||||||
<li>Kiera Kujisawa</li>
|
|
||||||
<li>Kiran Schuler</li>
|
|
||||||
<li>Koloman</li>
|
|
||||||
<li>Konrad Neitzel</li>
|
|
||||||
<li>Krzysztof Żelaśkiewicz</li>
|
|
||||||
<li>Lance Ward</li>
|
|
||||||
<li>Larry Meaney</li>
|
|
||||||
<li>Lars</li>
|
|
||||||
<li>Lars Reinhardt</li>
|
|
||||||
<li>Lee Wilkinson</li>
|
|
||||||
<li>LeeNX</li>
|
|
||||||
<li>Leon Siegl</li>
|
|
||||||
<li>Leonard Feineis</li>
|
|
||||||
<li>Lewis Wild</li>
|
|
||||||
<li>Liran</li>
|
|
||||||
<li>Liviu Dimitriu</li>
|
|
||||||
<li>Lizardo Hernandez</li>
|
|
||||||
<li>LoCascio</li>
|
|
||||||
<li>Lordbob75</li>
|
|
||||||
<li>Lothar Schweikle-Droll</li>
|
|
||||||
<li>Louis Müller</li>
|
|
||||||
<li>LSDTripp</li>
|
|
||||||
<li>Ľubor Slušný</li>
|
|
||||||
<li>Luca Di Diomede</li>
|
|
||||||
<li>Lucio De Carli</li>
|
|
||||||
<li>Luiz Bizzio</li>
|
|
||||||
<li>Lukas Bischof</li>
|
|
||||||
<li>Lukas Kammerer</li>
|
|
||||||
<li>Lukas Söder</li>
|
|
||||||
<li>Maksim Terehin</li>
|
|
||||||
<li>Malcolm Cameron</li>
|
|
||||||
<li>Manfred Radeschnig</li>
|
|
||||||
<li>Marc Khouri</li>
|
|
||||||
<li>Marcin Wilk</li>
|
|
||||||
<li>Marcio Zimbres</li>
|
|
||||||
<li>Marco Rossi</li>
|
|
||||||
<li>Marcos Wolf</li>
|
|
||||||
<li>Marek Marczykowski-Górecki</li>
|
|
||||||
<li>Marius</li>
|
|
||||||
<li>Mar. Balske</li>
|
|
||||||
<li>Mark Farrell</li>
|
|
||||||
<li>Mark Gilbert</li>
|
|
||||||
<li>Mark Knam</li>
|
|
||||||
<li>Mark Robinson</li>
|
|
||||||
<li>Markrosoft</li>
|
|
||||||
<li>Markus Halm</li>
|
|
||||||
<li>Markus Schicker</li>
|
|
||||||
<li>Markus Sobczack</li>
|
|
||||||
<li>Marshall Bjerke</li>
|
|
||||||
<li>Marten Hermans</li>
|
|
||||||
<li>Martin Gasser</li>
|
|
||||||
<li>Martin Hofbauer</li>
|
|
||||||
<li>Martin Raine</li>
|
|
||||||
<li>Martin Suelmann</li>
|
|
||||||
<li>Martin Wilhelmi</li>
|
|
||||||
<li>Marvin Honderboom</li>
|
|
||||||
<li>Mateusz Grabowski</li>
|
|
||||||
<li>Mathias Uhl</li>
|
|
||||||
<li>Matt Kane</li>
|
|
||||||
<li>Matthew Cameron</li>
|
|
||||||
<li>Mauricio Allende</li>
|
|
||||||
<li>Max Evans</li>
|
|
||||||
<li>Mecky</li>
|
|
||||||
<li>Mehmet Aydoğdu</li>
|
|
||||||
<li>Michael Bartholomew</li>
|
|
||||||
<li>Michael Bell</li>
|
|
||||||
<li>Michael Bombe</li>
|
|
||||||
<li>Michael Collins</li>
|
|
||||||
<li>Michael Copeland</li>
|
|
||||||
<li>Michael Ho</li>
|
|
||||||
<li>Michael Kovacs</li>
|
|
||||||
<li>Michael Lynch</li>
|
|
||||||
<li>Michael Pennington</li>
|
|
||||||
<li>Michael Sage</li>
|
|
||||||
<li>Michael Stella</li>
|
|
||||||
<li>Michael Thalmann</li>
|
|
||||||
<li>Michael Wu</li>
|
|
||||||
<li>MichaelZ</li>
|
|
||||||
<li>Michel Bissonnette</li>
|
|
||||||
<li>Mikael Wikström</li>
|
|
||||||
<li>Mike Mason</li>
|
|
||||||
<li>Mikhael Mariano</li>
|
|
||||||
<li>Milan Burda</li>
|
|
||||||
<li>Milan Múčka</li>
|
|
||||||
<li>Miles Davis</li>
|
|
||||||
<li>Minh Tang</li>
|
|
||||||
<li>Moez Tharani</li>
|
|
||||||
<li>Morgan Helton</li>
|
|
||||||
<li>Myron Weber</li>
|
|
||||||
<li>Murad Khasawneh</li>
|
|
||||||
<li>N Patel</li>
|
|
||||||
<li>Nathaniel Griswold</li>
|
|
||||||
<li>Nelson Lee</li>
|
|
||||||
<li>nezu</li>
|
|
||||||
<li>Nicholas Jeppson</li>
|
|
||||||
<li>Nicholas Kopas</li>
|
|
||||||
<li>Nicholas Walczak</li>
|
|
||||||
<li>Nick Leffler</li>
|
|
||||||
<li>Nick Roethemeier</li>
|
|
||||||
<li>Nico Baumgartner</li>
|
|
||||||
<li>Nicolai Kragh-Hansen</li>
|
|
||||||
<li>Nicolas Christener</li>
|
|
||||||
<li>Nigel Smith</li>
|
|
||||||
<li>Nihal Fernando</li>
|
|
||||||
<li>Nils Orbat</li>
|
|
||||||
<li>Nis Wechselberg</li>
|
|
||||||
<li>Nithin Philips</li>
|
|
||||||
<li>Nod Swal</li>
|
|
||||||
<li>Nolan Haynes</li>
|
|
||||||
<li>Noxigen LLC</li>
|
|
||||||
<li>nubbn</li>
|
|
||||||
<li>nybble</li>
|
|
||||||
<li>Oh Be</li>
|
|
||||||
<li>Oliver Schwarz</li>
|
|
||||||
<li>Oliver Zimmer</li>
|
|
||||||
<li>Omar El-Domeiri</li>
|
|
||||||
<li>Omar Siam</li>
|
|
||||||
<li>Oscar</li>
|
|
||||||
<li>Patrick</li>
|
|
||||||
<li>Patrick Fortin-Ducharme</li>
|
|
||||||
<li>Patrick McDowell</li>
|
|
||||||
<li>Patrick Wagstrom</li>
|
|
||||||
<li>Paul Bishop</li>
|
|
||||||
<li>Paul De La Rosa</li>
|
|
||||||
<li>Paul Pietkiewicz</li>
|
|
||||||
<li>Paul Tan</li>
|
|
||||||
<li>Pawel Trofimiuk</li>
|
|
||||||
<li>Peder Madsen</li>
|
|
||||||
<li>Peter</li>
|
|
||||||
<li>Peter Drayton</li>
|
|
||||||
<li>Peter Farrelly</li>
|
|
||||||
<li>Peter Okelmann</li>
|
|
||||||
<li>Petra Lohmann</li>
|
|
||||||
<li>Petri Heiskanen</li>
|
|
||||||
<li>Phil Wu</li>
|
|
||||||
<li>Philip Edwards</li>
|
|
||||||
<li>Philip Merricks</li>
|
|
||||||
<li>Pierre Brassart</li>
|
|
||||||
<li>Pierre Peine</li>
|
|
||||||
<li>posicat</li>
|
|
||||||
<li>pozitron03</li>
|
|
||||||
<li>Przemysław Szypowicz</li>
|
|
||||||
<li>P_Dmitrij</li>
|
|
||||||
<li>Qteal</li>
|
|
||||||
<li>Quattro Uno</li>
|
|
||||||
<li>Quentin Peten</li>
|
|
||||||
<li>Ralph Borchers</li>
|
|
||||||
<li>Ranc1d</li>
|
|
||||||
<li>Randall D Bilbrey</li>
|
|
||||||
<li>RandomJerk</li>
|
|
||||||
<li>Raphael Schitz</li>
|
|
||||||
<li>Ref Chowdhury</li>
|
|
||||||
<li>René Rathenau</li>
|
|
||||||
<li>ReysDad</li>
|
|
||||||
<li>Ricardo Marques</li>
|
|
||||||
<li>Richard</li>
|
|
||||||
<li>Richard Bernarts</li>
|
|
||||||
<li>Richard Fancher</li>
|
|
||||||
<li>Richard Freemantle</li>
|
|
||||||
<li>Richard Michael</li>
|
|
||||||
<li>Rico Cantrell</li>
|
|
||||||
<li>Rob</li>
|
|
||||||
<li>Rob Holden</li>
|
|
||||||
<li>Rob Tongue</li>
|
|
||||||
<li>Robert Klauco</li>
|
|
||||||
<li>Robert Weemhoff</li>
|
|
||||||
<li>Robin Gfatter</li>
|
|
||||||
<li>Rodion DENISYUK</li>
|
|
||||||
<li>Rohit Priyadarshi</li>
|
|
||||||
<li>Rolfs 3D UG</li>
|
|
||||||
<li>Ronald LeBaron</li>
|
|
||||||
<li>Ronald Wells</li>
|
|
||||||
<li>Ronny Haldorsen</li>
|
|
||||||
<li>rotx</li>
|
|
||||||
<li>Rufo Sanchez</li>
|
|
||||||
<li>Russell Scott</li>
|
|
||||||
<li>Ryan</li>
|
|
||||||
<li>Ryan Peacock</li>
|
|
||||||
<li>Samed Ozoglu</li>
|
|
||||||
<li>Sameul Davies</li>
|
|
||||||
<li>Samuel Cote</li>
|
|
||||||
<li>Samuel Vetsch</li>
|
|
||||||
<li>Samuel Walker</li>
|
|
||||||
<li>Sarah Foster</li>
|
|
||||||
<li>Sarten X</li>
|
|
||||||
<li>Satish Alwani</li>
|
|
||||||
<li>Scott</li>
|
|
||||||
<li>Scott Gagon</li>
|
|
||||||
<li>Scott Spicola</li>
|
|
||||||
<li>Scott Tusing</li>
|
|
||||||
<li>Scott Worthington</li>
|
|
||||||
<li>Scuba</li>
|
|
||||||
<li>Sean</li>
|
|
||||||
<li>Sean Akers</li>
|
|
||||||
<li>Sean c Rickard</li>
|
|
||||||
<li>SEAT</li>
|
|
||||||
<li>Sebastian</li>
|
|
||||||
<li>Seonwoo Lee</li>
|
|
||||||
<li>Sergey Lukjanov</li>
|
|
||||||
<li>Seth Jennings</li>
|
|
||||||
<li>Shane Selling</li>
|
|
||||||
<li>Shawn Butts</li>
|
|
||||||
<li>Sheran Gunasekera</li>
|
|
||||||
<li>Shichun Chen</li>
|
|
||||||
<li>Shin Guey Wong</li>
|
|
||||||
<li>Simon Evans</li>
|
|
||||||
<li>Simon Sundgaard</li>
|
|
||||||
<li>Simplistic Realities</li>
|
|
||||||
<li>Sirmo</li>
|
|
||||||
<li>Snowy Maslov</li>
|
|
||||||
<li>Solve Technology</li>
|
|
||||||
<li>srepac</li>
|
|
||||||
<li>Stefan Bautz</li>
|
|
||||||
<li>Stefan Müller</li>
|
|
||||||
<li>Stefan Stemmer</li>
|
|
||||||
<li>Stefan Vaillant</li>
|
|
||||||
<li>Stephan Schmidt</li>
|
|
||||||
<li>Stephen</li>
|
|
||||||
<li>Stephen Hocking</li>
|
|
||||||
<li>Steve Jones</li>
|
|
||||||
<li>Steve Kerr</li>
|
|
||||||
<li>Steve Ovens</li>
|
|
||||||
<li>Steve Stringham</li>
|
|
||||||
<li>Steven Richter</li>
|
|
||||||
<li>Stratagem Solutions Ltd</li>
|
|
||||||
<li>Sven Breckler</li>
|
|
||||||
<li>sudo34</li>
|
|
||||||
<li>SuperHiTech</li>
|
|
||||||
<li>Tango_Echo_Alpha</li>
|
|
||||||
<li>Tarlak Desaydrone</li>
|
|
||||||
<li>TechBear</li>
|
|
||||||
<li>techlobo</li>
|
|
||||||
<li>Ted</li>
|
|
||||||
<li>Tejun Heo</li>
|
|
||||||
<li>TheSnowedOne</li>
|
|
||||||
<li>TheTechGiant</li>
|
|
||||||
<li>Thomas Charisoulis</li>
|
|
||||||
<li>Thomas Gitlin</li>
|
|
||||||
<li>Thomas Hagenmaier</li>
|
|
||||||
<li>Thomas Hedberg Jensen</li>
|
|
||||||
<li>Thomas Price</li>
|
|
||||||
<li>Thomas Søfteland</li>
|
|
||||||
<li>Tim Lenz</li>
|
|
||||||
<li>Tim Wilkinson</li>
|
|
||||||
<li>Timo Brinkmann</li>
|
|
||||||
<li>Timothee Besset</li>
|
|
||||||
<li>TitomusPrime</li>
|
|
||||||
<li>Tobias Schafferhans</li>
|
|
||||||
<li>Tom Lawson</li>
|
|
||||||
<li>Tom York</li>
|
|
||||||
<li>Tomas Kuchta</li>
|
|
||||||
<li>Tomáš hrubý</li>
|
|
||||||
<li>Torsten Droste</li>
|
|
||||||
<li>Torsten Knoll</li>
|
|
||||||
<li>Tracy Fitch</li>
|
|
||||||
<li>Tristan Schoening</li>
|
|
||||||
<li>Truman Kilen</li>
|
|
||||||
<li>turbochris</li>
|
|
||||||
<li>tutanak</li>
|
|
||||||
<li>Tyler</li>
|
|
||||||
<li>Udo Schroeter</li>
|
|
||||||
<li>Uli Fahrer</li>
|
|
||||||
<li>Vasily Lazarev</li>
|
|
||||||
<li>Venmo</li>
|
|
||||||
<li>Vidru Eduard</li>
|
|
||||||
<li>Vicente Salvador Cubedo</li>
|
|
||||||
<li>Viktor Aschenbrenner</li>
|
|
||||||
<li>Viktor Ekmark</li>
|
|
||||||
<li>Vincent Chov</li>
|
|
||||||
<li>Vlad Sterescu</li>
|
|
||||||
<li>Volker Gropp</li>
|
|
||||||
<li>Walli</li>
|
|
||||||
<li>Walter_Ego</li>
|
|
||||||
<li>William Wenzel</li>
|
|
||||||
<li>Will Froning</li>
|
|
||||||
<li>William Hooper</li>
|
|
||||||
<li>William Perrin</li>
|
|
||||||
<li>William Stearns</li>
|
|
||||||
<li>Woojin Son</li>
|
|
||||||
<li>xMdb</li>
|
|
||||||
<li>Yanko Kaneti</li>
|
|
||||||
<li>Yaroslav Kulikovskikh</li>
|
|
||||||
<li>Yethal</li>
|
|
||||||
<li>Yevgeniy Kuksenko</li>
|
|
||||||
<li>Yew Kay Yan</li>
|
|
||||||
<li>Yigal Dar</li>
|
|
||||||
<li>Yogi</li>
|
|
||||||
<li>YURI LEE</li>
|
|
||||||
<li>Yurii Ostapchuk</li>
|
|
||||||
<li>Zeljko</li>
|
|
||||||
<li>zgen</li>
|
|
||||||
<li>Zoltan Magyari</li>
|
|
||||||
<li>Zsombor Vari</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div><br>
|
</div><br>
|
||||||
<p class="text credits"><a target="_blank" href="https://pikvm.org" i18n="index_text_10">PiKVM Project</a> | <a target="_blank" href="https://docs.pikvm.org" i18n="index_text_11">Documentation</a> | <a target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12">One-KVM Project</a> | <a target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13">One-KVM Documentation</a></p>
|
<p class="text credits"><a target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12">One-KVM Project</a> | <a target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13">One-KVM Documentation</a> | <a target="_blank" href="https://pikvm.org" i18n="index_text_10">PiKVM Project</a> | <a target="_blank" href="https://docs.pikvm.org" i18n="index_text_11">Documentation</a></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="window window-resizable" id="webterm-window" style="width: 640px; height: 480px">
|
<div class="window window-resizable" id="webterm-window" style="width: 640px; height: 480px">
|
||||||
@ -3061,7 +2366,7 @@
|
|||||||
</ul>
|
</ul>
|
||||||
<ul class="footer">
|
<ul class="footer">
|
||||||
<li class="left"><span id="kvmd-meta-server-host" title="Server name (see System/About)"></span> | <span id="kvmd-version-kvmd" title="KVMD version"></span> | <span id="kvmd-version-streamer" title="Streamer version"></span></li>
|
<li class="left"><span id="kvmd-meta-server-host" title="Server name (see System/About)"></span> | <span id="kvmd-version-kvmd" title="KVMD version"></span> | <span id="kvmd-version-streamer" title="Streamer version"></span></li>
|
||||||
<li class="right"><a target="_blank" href="https://pikvm.org" i18n="index_text_10">PiKVM Project</a> | <a target="_blank" href="https://docs.pikvm.org" i18n="index_text_11">Documentation</a> | <a target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12">One-KVM Project</a> | <a target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13">One-KVM Documentation</a></li>
|
<li class="right"><a target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12">One-KVM Project</a> | <a target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13">One-KVM Documentation</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@ -25,10 +25,6 @@ block body
|
|||||||
| |
|
| |
|
||||||
span(id="kvmd-version-streamer" title="Streamer version")
|
span(id="kvmd-version-streamer" title="Streamer version")
|
||||||
li(class="right")
|
li(class="right")
|
||||||
a(target="_blank" href="https://pikvm.org" i18n="index_text_10") PiKVM Project
|
|
||||||
| |
|
|
||||||
a(target="_blank" href="https://docs.pikvm.org" i18n="index_text_11") Documentation
|
|
||||||
| |
|
|
||||||
a(target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12") One-KVM Project
|
a(target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12") One-KVM Project
|
||||||
| |
|
| |
|
||||||
a(target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13") One-KVM Documentation
|
a(target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13") One-KVM Documentation
|
||||||
|
|||||||
@ -2,7 +2,6 @@ li(id="system-dropdown" class="right")
|
|||||||
a(class="menu-button" href="#")
|
a(class="menu-button" href="#")
|
||||||
+navbar_led("link-led", "led-link")
|
+navbar_led("link-led", "led-link")
|
||||||
+navbar_led("stream-led", "led-video")
|
+navbar_led("stream-led", "led-video")
|
||||||
+navbar_led("stream-led", "led-video")
|
|
||||||
+navbar_led("hid-keyboard-led", "led-hid-keyboard")
|
+navbar_led("hid-keyboard-led", "led-hid-keyboard")
|
||||||
+navbar_led("hid-mouse-led", "led-hid-mouse")
|
+navbar_led("hid-mouse-led", "led-hid-mouse")
|
||||||
span(i18n="kvm_text3") System
|
span(i18n="kvm_text3") System
|
||||||
@ -50,12 +49,12 @@ li(id="system-dropdown" class="right")
|
|||||||
td(i18n="kvm_text14") Video #[a(target="_blank" href="https://docs.pikvm.org/webrtc") mode]:
|
td(i18n="kvm_text14") Video #[a(target="_blank" href="https://docs.pikvm.org/webrtc") mode]:
|
||||||
td
|
td
|
||||||
div(class="radio-box")
|
div(class="radio-box")
|
||||||
input(type="radio" id="stream-mode-radio-janus" name="stream-mode-radio" value="janus")
|
|
||||||
label(for="stream-mode-radio-janus") WebRTC
|
|
||||||
input(type="radio" id="stream-mode-radio-media" name="stream-mode-radio" value="media")
|
|
||||||
label(for="stream-mode-radio-media") H.264
|
|
||||||
input(checked type="radio" id="stream-mode-radio-mjpeg" name="stream-mode-radio" value="mjpeg")
|
input(checked type="radio" id="stream-mode-radio-mjpeg" name="stream-mode-radio" value="mjpeg")
|
||||||
label(for="stream-mode-radio-mjpeg") MJPEG
|
label(for="stream-mode-radio-mjpeg") Legacy<br>MJPEG
|
||||||
|
input(type="radio" id="stream-mode-radio-media" name="stream-mode-radio" value="media")
|
||||||
|
label(for="stream-mode-radio-media") Direct<br>H.264
|
||||||
|
input(type="radio" id="stream-mode-radio-janus" name="stream-mode-radio" value="janus")
|
||||||
|
label(for="stream-mode-radio-janus") WebRTC<br>H.264
|
||||||
tr(id="stream-orient" class="feature-disabled")
|
tr(id="stream-orient" class="feature-disabled")
|
||||||
td(i18n="kvm_text17") Orientation:
|
td(i18n="kvm_text17") Orientation:
|
||||||
td
|
td
|
||||||
@ -137,7 +136,7 @@ li(id="system-dropdown" class="right")
|
|||||||
+menu_switch_notable("page-full-tab-stream-switch", "Expand for the entire tab by default", true, false,"page-full-tab-stream-switch")
|
+menu_switch_notable("page-full-tab-stream-switch", "Expand for the entire tab by default", true, false,"page-full-tab-stream-switch")
|
||||||
table(class="kv")
|
table(class="kv")
|
||||||
tr
|
tr
|
||||||
+menu_switch_notable("hid-keyboard-bad-link-switch", "Bad link mode (release keys immediately)", true, false)
|
+menu_switch_notable("hid-keyboard-bad-link-switch", "Bad link mode (release keys immediately)", true, false,"hid-keyboard-bad-link-switch")
|
||||||
tr(id="hid-connect" class="feature-disabled")
|
tr(id="hid-connect" class="feature-disabled")
|
||||||
+menu_switch_notable("hid-connect-switch", "Connect HID to Server", true, true, "hid-connect-switch")
|
+menu_switch_notable("hid-connect-switch", "Connect HID to Server", true, true, "hid-connect-switch")
|
||||||
tr(id="hid-jiggler" class="feature-disabled")
|
tr(id="hid-jiggler" class="feature-disabled")
|
||||||
|
|||||||
@ -49,651 +49,12 @@ div(id="about-window" class="window")
|
|||||||
| // If you also want to support this project,#[br]
|
| // If you also want to support this project,#[br]
|
||||||
| // you can donate on #[a(target="_blank" href="https://www.patreon.com/pikvm") Patreon]
|
| // you can donate on #[a(target="_blank" href="https://www.patreon.com/pikvm") Patreon]
|
||||||
| or #[a(target="_blank" href="https://paypal.me/pikvm") Paypal].
|
| or #[a(target="_blank" href="https://paypal.me/pikvm") Paypal].
|
||||||
ul
|
|
||||||
li A. Isenring
|
|
||||||
li Aaron Graubert
|
|
||||||
li Aaron Heise
|
|
||||||
li Aaron Stein
|
|
||||||
li Accalia
|
|
||||||
li Adam Goodbar
|
|
||||||
li Adam S
|
|
||||||
li Adam Stuart
|
|
||||||
li AdamBomb
|
|
||||||
li adipisicing
|
|
||||||
li Adrian Basham
|
|
||||||
li Adrian Popescu
|
|
||||||
li Ahmed Syed
|
|
||||||
li Alberto Bassi
|
|
||||||
li alejandro
|
|
||||||
li Aleksei Brusianskii
|
|
||||||
li Alessio Curri
|
|
||||||
li Alex T
|
|
||||||
li Alex Z
|
|
||||||
li Alexander Karmanov
|
|
||||||
li Alexander Lahuerta
|
|
||||||
li Alexander Martin
|
|
||||||
li Alexander Pankov
|
|
||||||
li Alexandre Jablonski
|
|
||||||
li Alexey Kamenskiy
|
|
||||||
li alm0241
|
|
||||||
li Alok Anand
|
|
||||||
li Alucard
|
|
||||||
li Ananthaneshan Elampoornan
|
|
||||||
li Andreas Grundler
|
|
||||||
li Andreas Marufke
|
|
||||||
li Andreas Schmid
|
|
||||||
li Andrew Brant
|
|
||||||
li Andrew Melton
|
|
||||||
li Andrew Reusch
|
|
||||||
li Andrew Ruan
|
|
||||||
li Andrzej V
|
|
||||||
li Andy
|
|
||||||
li Andy Keys
|
|
||||||
li Anish Patel
|
|
||||||
li Anix
|
|
||||||
li Anonymous
|
|
||||||
li Anthony Junk
|
|
||||||
li Anton Kovalenko
|
|
||||||
li Armen
|
|
||||||
li Aron Green
|
|
||||||
li Aron Perelman
|
|
||||||
li Artem Simonov
|
|
||||||
li Arthur Mayer
|
|
||||||
li Arthur Woimbée
|
|
||||||
li Ashlesh Chaudhari
|
|
||||||
li Asim Shakour
|
|
||||||
li Augusto Becciu
|
|
||||||
li AVS Computer
|
|
||||||
li awkspace
|
|
||||||
li Badal Patel
|
|
||||||
li baddog
|
|
||||||
li Bao Tin Hoang
|
|
||||||
li Bean Co.
|
|
||||||
li Bela Bargel
|
|
||||||
li Belf Igor
|
|
||||||
li Ben Gordon
|
|
||||||
li Ben Scott
|
|
||||||
li Benedikt Heine
|
|
||||||
li Benedikt Meier
|
|
||||||
li Benjamin Frewert
|
|
||||||
li Benjamin Melancon
|
|
||||||
li Benjamin Schwartz
|
|
||||||
li Benjamin Stegmann
|
|
||||||
li Benni Stauder
|
|
||||||
li Bernhard Fitzke
|
|
||||||
li Beu
|
|
||||||
li bikmaek
|
|
||||||
li bitjoe
|
|
||||||
li Bits and Bytes Computers LLC
|
|
||||||
li Bjoern Petsch
|
|
||||||
li Blair Hasler
|
|
||||||
li Blindside
|
|
||||||
li Blue Frog LLC
|
|
||||||
li Bootstrapper - Programmierung erklärt
|
|
||||||
li Bosco
|
|
||||||
li Bradford King
|
|
||||||
li Brainspore Networks
|
|
||||||
li Branden Shaulis
|
|
||||||
li Brandon Daniels
|
|
||||||
li Brian
|
|
||||||
li Brian Moses
|
|
||||||
li Brian T Mulcahy
|
|
||||||
li Brian Vecchiarelli
|
|
||||||
li Brian White
|
|
||||||
li brodonalds
|
|
||||||
li Bruno Gomes
|
|
||||||
li Bryan Adams
|
|
||||||
li Bryan Montgomery
|
|
||||||
li Buzzer
|
|
||||||
li C P ELSE
|
|
||||||
li Calanish
|
|
||||||
li Cameron Hatcher
|
|
||||||
li Cameron Tacklind
|
|
||||||
li Carl Mercier
|
|
||||||
li Carl-Fredrik Johansson
|
|
||||||
li Carlos Eduardo Porter Herrera
|
|
||||||
li Carlos Garcia
|
|
||||||
li Carlos Manuel Torres
|
|
||||||
li cbad536
|
|
||||||
li César Nascimento
|
|
||||||
li CHINATERA LIMITED
|
|
||||||
li Chris Blackmon
|
|
||||||
li Chris Burton
|
|
||||||
li Chris Campbell
|
|
||||||
li Chris Jackson
|
|
||||||
li Chris Lewis
|
|
||||||
li Chris Rizio
|
|
||||||
li Christi King
|
|
||||||
li Christian Schlögl
|
|
||||||
li Christian Svensson
|
|
||||||
li Christof Maluck
|
|
||||||
li Christoph Dette
|
|
||||||
li Christoffer Lund
|
|
||||||
li Christopher Bulla
|
|
||||||
li Christopher Gelatt
|
|
||||||
li Christopher Hearn
|
|
||||||
li Christopher Mandlbaur
|
|
||||||
li Christopher Mendoza
|
|
||||||
li Christopher Simms
|
|
||||||
li Chucktastic
|
|
||||||
li Cihan VURAL
|
|
||||||
li clauskj3r
|
|
||||||
li Clifford Coleman
|
|
||||||
li Clinton Lee Taylor
|
|
||||||
li Cole Imhoff
|
|
||||||
li Colin Goodman
|
|
||||||
li Corey Layton
|
|
||||||
li Corey Lista
|
|
||||||
li Craig Keenan
|
|
||||||
li Crossfactor
|
|
||||||
li Cruzzer
|
|
||||||
li ctag
|
|
||||||
li Curt Sammer
|
|
||||||
li CyB0rgg
|
|
||||||
li DeMentor
|
|
||||||
li Desmond Whitt
|
|
||||||
li Daegara
|
|
||||||
li DailyAneurism
|
|
||||||
li Damon Meledones
|
|
||||||
li Dan Berkowitz
|
|
||||||
li Dan Brakeley
|
|
||||||
li Daniel Bowder
|
|
||||||
li Daniel Cabrera
|
|
||||||
li Daniel Davila
|
|
||||||
li Danilo Saft
|
|
||||||
li Danne
|
|
||||||
li Dariusz Techmański
|
|
||||||
li David
|
|
||||||
li David Brausewetter
|
|
||||||
li David Davis
|
|
||||||
li David Godibadze
|
|
||||||
li David Howell
|
|
||||||
li David Irvine
|
|
||||||
li David Klinkman
|
|
||||||
li David Niemann
|
|
||||||
li David Shay
|
|
||||||
li David Ye
|
|
||||||
li David York
|
|
||||||
li Denis
|
|
||||||
li Denis Andreev
|
|
||||||
li Denis Yatsenko
|
|
||||||
li Dennis Becker
|
|
||||||
li Dennis Joslin
|
|
||||||
li Dennis Lomet
|
|
||||||
li Derek Jarvis
|
|
||||||
li Derek Yap
|
|
||||||
li Didrik
|
|
||||||
li digitalbaconbits
|
|
||||||
li Dimitrij Jedich
|
|
||||||
li dixon wong
|
|
||||||
li dizztrukshin
|
|
||||||
li Dmitry Shilov
|
|
||||||
li DogeLabs
|
|
||||||
li Dominic Phoon
|
|
||||||
li Dominik Klonowski
|
|
||||||
li Donald Hays
|
|
||||||
li Edmon Abdul Nur
|
|
||||||
li Edward Wang
|
|
||||||
li Egan Ford
|
|
||||||
li Elani Ferri
|
|
||||||
li Elliot Woo
|
|
||||||
li Entt
|
|
||||||
li Eric Phenix
|
|
||||||
li Ethan Shold
|
|
||||||
li Eugene Sukhodolin
|
|
||||||
li ewook
|
|
||||||
li eye-catcher.com
|
|
||||||
li Fabian Druschke
|
|
||||||
li Fabiano Sidler
|
|
||||||
li Far Pin Solutions, LLC
|
|
||||||
li Felyx Gabryel
|
|
||||||
li Fergus McKay
|
|
||||||
li Finn Ebenritter
|
|
||||||
li floppy
|
|
||||||
li fo0bar
|
|
||||||
li Foad Yousef
|
|
||||||
li Foamy
|
|
||||||
li Foli Ayivoh
|
|
||||||
li Folkert Weistra
|
|
||||||
li Francisco Pavon
|
|
||||||
li Frank
|
|
||||||
li Frank Sander
|
|
||||||
li Frederick Czajka
|
|
||||||
li Fredrik Idréus
|
|
||||||
li Garrett Dangerfield
|
|
||||||
li Ge Men
|
|
||||||
li Geekworm
|
|
||||||
li Genkinger Andreas
|
|
||||||
li Geijer
|
|
||||||
li Geoffrey Wright
|
|
||||||
li George Becker
|
|
||||||
li Georgy Brodsky
|
|
||||||
li Gerald
|
|
||||||
li Gerardus Vernimmen
|
|
||||||
li Gernot Neuschröer
|
|
||||||
li Giovanni Fulco
|
|
||||||
li GK
|
|
||||||
li Glen Dragon
|
|
||||||
li Greg Winterstein
|
|
||||||
li Gregory Smith
|
|
||||||
li Gregory Treantos
|
|
||||||
li grewil
|
|
||||||
li Grey Cynic
|
|
||||||
li Guenter Honisch
|
|
||||||
li Guido Bernacchi
|
|
||||||
li Gustin Johnson
|
|
||||||
li György Tamás Vizi
|
|
||||||
li Haiberg GmbH
|
|
||||||
li Haven Zheng
|
|
||||||
li Heibunny
|
|
||||||
li Heikki Tiittanen
|
|
||||||
li Helio Leonardo Pinheiro e Mota
|
|
||||||
li Henrik Ählström
|
|
||||||
li Henry Hood
|
|
||||||
li HimKo
|
|
||||||
li HouseFPV
|
|
||||||
li Howard Simons
|
|
||||||
li HyunohRyu
|
|
||||||
li Icculus
|
|
||||||
li iks
|
|
||||||
li INFO TRX INC
|
|
||||||
li Invader Monks
|
|
||||||
li Ioannis Karageorgos
|
|
||||||
li Isaac
|
|
||||||
li IT Lifesaver
|
|
||||||
li Ivan Ganev
|
|
||||||
li Ivan Josiah Lapis
|
|
||||||
li Ivan Shapovalov
|
|
||||||
li iwbjhbweriuhf
|
|
||||||
li J
|
|
||||||
li J L
|
|
||||||
li Jaanus
|
|
||||||
li Jackson Wyatt
|
|
||||||
li Jacob Karaffa
|
|
||||||
li Jacob Morgan
|
|
||||||
li James Cadd
|
|
||||||
li James Cobb
|
|
||||||
li James Edwards
|
|
||||||
li James Kocher
|
|
||||||
li James Mayhugh
|
|
||||||
li James Noonan
|
|
||||||
li James Ye
|
|
||||||
li Jamie Murphy
|
|
||||||
li Jamie Scott
|
|
||||||
li Jan Niehusmann
|
|
||||||
li Jannick Oursin
|
|
||||||
li Jari Hiltunen
|
|
||||||
li Jason Crossley
|
|
||||||
li Jason Downey
|
|
||||||
li Jason Toland
|
|
||||||
li Jasper Backer
|
|
||||||
li Jay Davis
|
|
||||||
li Jay Isaacs
|
|
||||||
li Jazereel Goh
|
|
||||||
li Jean-Daniel Croteau
|
|
||||||
li Jean-Philippe Guilbault
|
|
||||||
li Jeff
|
|
||||||
li Jeff Bowman
|
|
||||||
li Jeff Urlwin
|
|
||||||
li Jennifer Herting
|
|
||||||
li Jennifer Rowlett
|
|
||||||
li Jeremy Abel
|
|
||||||
li Jeremy Combs
|
|
||||||
li Jeremy Hines
|
|
||||||
li Jerremy Holland
|
|
||||||
li Jerry Nall
|
|
||||||
li Jerry Y. Chen
|
|
||||||
li Jim Bailey
|
|
||||||
li Jim Harbin
|
|
||||||
li Jimmy Burgett
|
|
||||||
li Jimmy Stanley
|
|
||||||
li Joachim Bruening
|
|
||||||
li Joe Hanson
|
|
||||||
li Joe Hinteregger
|
|
||||||
li Joe Ventura
|
|
||||||
li Joel Jacobs
|
|
||||||
li Johannes Heigermose
|
|
||||||
li John Andersen
|
|
||||||
li John Copeland
|
|
||||||
li John F Glenn
|
|
||||||
li John Holmes
|
|
||||||
li John Kelley
|
|
||||||
li John McGovern
|
|
||||||
li Johnny Henson
|
|
||||||
li Jon Ferguy
|
|
||||||
li Jon-Eric
|
|
||||||
li Joni Ruuskanen
|
|
||||||
li Jonas Fischer
|
|
||||||
li Jonathan Slenders
|
|
||||||
li Jonathan Vaughn
|
|
||||||
li Joost Backer
|
|
||||||
li Jordan Blake
|
|
||||||
li Jordi Pakey-Rodriguez
|
|
||||||
li Joris van Embden
|
|
||||||
li Joseph Swift
|
|
||||||
li Josh Nethery
|
|
||||||
li Josh Ricker
|
|
||||||
li Josh VanDeraa
|
|
||||||
li Joshua Futterer
|
|
||||||
li Jozef Riha
|
|
||||||
li Jörgen Fredriksson
|
|
||||||
li Julian Forero
|
|
||||||
li Julian Schneider
|
|
||||||
li Julien Angelier
|
|
||||||
li Justin
|
|
||||||
li Justin Waters
|
|
||||||
li Kai Hadler
|
|
||||||
li Kamil Chyba
|
|
||||||
li Kari Matti Korpi
|
|
||||||
li Karl Dunne
|
|
||||||
li Karl Moos
|
|
||||||
li Keith Muggleton
|
|
||||||
li Ken Lee
|
|
||||||
li Kenneth Younger III
|
|
||||||
li Kenny Hui
|
|
||||||
li KeonWoo PARK
|
|
||||||
li Kevin Bajohr
|
|
||||||
li Kevin Schwartz
|
|
||||||
li Kevin Sherwood
|
|
||||||
li Kiera Kujisawa
|
|
||||||
li Kiran Schuler
|
|
||||||
li Koloman
|
|
||||||
li Konrad Neitzel
|
|
||||||
li Krzysztof Żelaśkiewicz
|
|
||||||
li Lance Ward
|
|
||||||
li Larry Meaney
|
|
||||||
li Lars
|
|
||||||
li Lars Reinhardt
|
|
||||||
li Lee Wilkinson
|
|
||||||
li LeeNX
|
|
||||||
li Leon Siegl
|
|
||||||
li Leonard Feineis
|
|
||||||
li Lewis Wild
|
|
||||||
li Liran
|
|
||||||
li Liviu Dimitriu
|
|
||||||
li Lizardo Hernandez
|
|
||||||
li LoCascio
|
|
||||||
li Lordbob75
|
|
||||||
li Lothar Schweikle-Droll
|
|
||||||
li Louis Müller
|
|
||||||
li LSDTripp
|
|
||||||
li Ľubor Slušný
|
|
||||||
li Luca Di Diomede
|
|
||||||
li Lucio De Carli
|
|
||||||
li Luiz Bizzio
|
|
||||||
li Lukas Bischof
|
|
||||||
li Lukas Kammerer
|
|
||||||
li Lukas Söder
|
|
||||||
li Maksim Terehin
|
|
||||||
li Malcolm Cameron
|
|
||||||
li Manfred Radeschnig
|
|
||||||
li Marc Khouri
|
|
||||||
li Marcin Wilk
|
|
||||||
li Marcio Zimbres
|
|
||||||
li Marco Rossi
|
|
||||||
li Marcos Wolf
|
|
||||||
li Marek Marczykowski-Górecki
|
|
||||||
li Marius
|
|
||||||
li Mar. Balske
|
|
||||||
li Mark Farrell
|
|
||||||
li Mark Gilbert
|
|
||||||
li Mark Knam
|
|
||||||
li Mark Robinson
|
|
||||||
li Markrosoft
|
|
||||||
li Markus Halm
|
|
||||||
li Markus Schicker
|
|
||||||
li Markus Sobczack
|
|
||||||
li Marshall Bjerke
|
|
||||||
li Marten Hermans
|
|
||||||
li Martin Gasser
|
|
||||||
li Martin Hofbauer
|
|
||||||
li Martin Raine
|
|
||||||
li Martin Suelmann
|
|
||||||
li Martin Wilhelmi
|
|
||||||
li Marvin Honderboom
|
|
||||||
li Mateusz Grabowski
|
|
||||||
li Mathias Uhl
|
|
||||||
li Matt Kane
|
|
||||||
li Matthew Cameron
|
|
||||||
li Mauricio Allende
|
|
||||||
li Max Evans
|
|
||||||
li Mecky
|
|
||||||
li Mehmet Aydoğdu
|
|
||||||
li Michael Bartholomew
|
|
||||||
li Michael Bell
|
|
||||||
li Michael Bombe
|
|
||||||
li Michael Collins
|
|
||||||
li Michael Copeland
|
|
||||||
li Michael Ho
|
|
||||||
li Michael Kovacs
|
|
||||||
li Michael Lynch
|
|
||||||
li Michael Pennington
|
|
||||||
li Michael Sage
|
|
||||||
li Michael Stella
|
|
||||||
li Michael Thalmann
|
|
||||||
li Michael Wu
|
|
||||||
li MichaelZ
|
|
||||||
li Michel Bissonnette
|
|
||||||
li Mikael Wikström
|
|
||||||
li Mike Mason
|
|
||||||
li Mikhael Mariano
|
|
||||||
li Milan Burda
|
|
||||||
li Milan Múčka
|
|
||||||
li Miles Davis
|
|
||||||
li Minh Tang
|
|
||||||
li Moez Tharani
|
|
||||||
li Morgan Helton
|
|
||||||
li Myron Weber
|
|
||||||
li Murad Khasawneh
|
|
||||||
li N Patel
|
|
||||||
li Nathaniel Griswold
|
|
||||||
li Nelson Lee
|
|
||||||
li nezu
|
|
||||||
li Nicholas Jeppson
|
|
||||||
li Nicholas Kopas
|
|
||||||
li Nicholas Walczak
|
|
||||||
li Nick Leffler
|
|
||||||
li Nick Roethemeier
|
|
||||||
li Nico Baumgartner
|
|
||||||
li Nicolai Kragh-Hansen
|
|
||||||
li Nicolas Christener
|
|
||||||
li Nigel Smith
|
|
||||||
li Nihal Fernando
|
|
||||||
li Nils Orbat
|
|
||||||
li Nis Wechselberg
|
|
||||||
li Nithin Philips
|
|
||||||
li Nod Swal
|
|
||||||
li Nolan Haynes
|
|
||||||
li Noxigen LLC
|
|
||||||
li nubbn
|
|
||||||
li nybble
|
|
||||||
li Oh Be
|
|
||||||
li Oliver Schwarz
|
|
||||||
li Oliver Zimmer
|
|
||||||
li Omar El-Domeiri
|
|
||||||
li Omar Siam
|
|
||||||
li Oscar
|
|
||||||
li Patrick
|
|
||||||
li Patrick Fortin-Ducharme
|
|
||||||
li Patrick McDowell
|
|
||||||
li Patrick Wagstrom
|
|
||||||
li Paul Bishop
|
|
||||||
li Paul De La Rosa
|
|
||||||
li Paul Pietkiewicz
|
|
||||||
li Paul Tan
|
|
||||||
li Pawel Trofimiuk
|
|
||||||
li Peder Madsen
|
|
||||||
li Peter
|
|
||||||
li Peter Drayton
|
|
||||||
li Peter Farrelly
|
|
||||||
li Peter Okelmann
|
|
||||||
li Petra Lohmann
|
|
||||||
li Petri Heiskanen
|
|
||||||
li Phil Wu
|
|
||||||
li Philip Edwards
|
|
||||||
li Philip Merricks
|
|
||||||
li Pierre Brassart
|
|
||||||
li Pierre Peine
|
|
||||||
li posicat
|
|
||||||
li pozitron03
|
|
||||||
li Przemysław Szypowicz
|
|
||||||
li P_Dmitrij
|
|
||||||
li Qteal
|
|
||||||
li Quattro Uno
|
|
||||||
li Quentin Peten
|
|
||||||
li Ralph Borchers
|
|
||||||
li Ranc1d
|
|
||||||
li Randall D Bilbrey
|
|
||||||
li RandomJerk
|
|
||||||
li Raphael Schitz
|
|
||||||
li Ref Chowdhury
|
|
||||||
li René Rathenau
|
|
||||||
li ReysDad
|
|
||||||
li Ricardo Marques
|
|
||||||
li Richard
|
|
||||||
li Richard Bernarts
|
|
||||||
li Richard Fancher
|
|
||||||
li Richard Freemantle
|
|
||||||
li Richard Michael
|
|
||||||
li Rico Cantrell
|
|
||||||
li Rob
|
|
||||||
li Rob Holden
|
|
||||||
li Rob Tongue
|
|
||||||
li Robert Klauco
|
|
||||||
li Robert Weemhoff
|
|
||||||
li Robin Gfatter
|
|
||||||
li Rodion DENISYUK
|
|
||||||
li Rohit Priyadarshi
|
|
||||||
li Rolfs 3D UG
|
|
||||||
li Ronald LeBaron
|
|
||||||
li Ronald Wells
|
|
||||||
li Ronny Haldorsen
|
|
||||||
li rotx
|
|
||||||
li Rufo Sanchez
|
|
||||||
li Russell Scott
|
|
||||||
li Ryan
|
|
||||||
li Ryan Peacock
|
|
||||||
li Samed Ozoglu
|
|
||||||
li Sameul Davies
|
|
||||||
li Samuel Cote
|
|
||||||
li Samuel Vetsch
|
|
||||||
li Samuel Walker
|
|
||||||
li Sarah Foster
|
|
||||||
li Sarten X
|
|
||||||
li Satish Alwani
|
|
||||||
li Scott
|
|
||||||
li Scott Gagon
|
|
||||||
li Scott Spicola
|
|
||||||
li Scott Tusing
|
|
||||||
li Scott Worthington
|
|
||||||
li Scuba
|
|
||||||
li Sean
|
|
||||||
li Sean Akers
|
|
||||||
li Sean c Rickard
|
|
||||||
li SEAT
|
|
||||||
li Sebastian
|
|
||||||
li Seonwoo Lee
|
|
||||||
li Sergey Lukjanov
|
|
||||||
li Seth Jennings
|
|
||||||
li Shane Selling
|
|
||||||
li Shawn Butts
|
|
||||||
li Sheran Gunasekera
|
|
||||||
li Shichun Chen
|
|
||||||
li Shin Guey Wong
|
|
||||||
li Simon Evans
|
|
||||||
li Simon Sundgaard
|
|
||||||
li Simplistic Realities
|
|
||||||
li Sirmo
|
|
||||||
li Snowy Maslov
|
|
||||||
li Solve Technology
|
|
||||||
li srepac
|
|
||||||
li Stefan Bautz
|
|
||||||
li Stefan Müller
|
|
||||||
li Stefan Stemmer
|
|
||||||
li Stefan Vaillant
|
|
||||||
li Stephan Schmidt
|
|
||||||
li Stephen
|
|
||||||
li Stephen Hocking
|
|
||||||
li Steve Jones
|
|
||||||
li Steve Kerr
|
|
||||||
li Steve Ovens
|
|
||||||
li Steve Stringham
|
|
||||||
li Steven Richter
|
|
||||||
li Stratagem Solutions Ltd
|
|
||||||
li Sven Breckler
|
|
||||||
li sudo34
|
|
||||||
li SuperHiTech
|
|
||||||
li Tango_Echo_Alpha
|
|
||||||
li Tarlak Desaydrone
|
|
||||||
li TechBear
|
|
||||||
li techlobo
|
|
||||||
li Ted
|
|
||||||
li Tejun Heo
|
|
||||||
li TheSnowedOne
|
|
||||||
li TheTechGiant
|
|
||||||
li Thomas Charisoulis
|
|
||||||
li Thomas Gitlin
|
|
||||||
li Thomas Hagenmaier
|
|
||||||
li Thomas Hedberg Jensen
|
|
||||||
li Thomas Price
|
|
||||||
li Thomas Søfteland
|
|
||||||
li Tim Lenz
|
|
||||||
li Tim Wilkinson
|
|
||||||
li Timo Brinkmann
|
|
||||||
li Timothee Besset
|
|
||||||
li TitomusPrime
|
|
||||||
li Tobias Schafferhans
|
|
||||||
li Tom Lawson
|
|
||||||
li Tom York
|
|
||||||
li Tomas Kuchta
|
|
||||||
li Tomáš hrubý
|
|
||||||
li Torsten Droste
|
|
||||||
li Torsten Knoll
|
|
||||||
li Tracy Fitch
|
|
||||||
li Tristan Schoening
|
|
||||||
li Truman Kilen
|
|
||||||
li turbochris
|
|
||||||
li tutanak
|
|
||||||
li Tyler
|
|
||||||
li Udo Schroeter
|
|
||||||
li Uli Fahrer
|
|
||||||
li Vasily Lazarev
|
|
||||||
li Venmo
|
|
||||||
li Vidru Eduard
|
|
||||||
li Vicente Salvador Cubedo
|
|
||||||
li Viktor Aschenbrenner
|
|
||||||
li Viktor Ekmark
|
|
||||||
li Vincent Chov
|
|
||||||
li Vlad Sterescu
|
|
||||||
li Volker Gropp
|
|
||||||
li Walli
|
|
||||||
li Walter_Ego
|
|
||||||
li William Wenzel
|
|
||||||
li Will Froning
|
|
||||||
li William Hooper
|
|
||||||
li William Perrin
|
|
||||||
li William Stearns
|
|
||||||
li Woojin Son
|
|
||||||
li xMdb
|
|
||||||
li Yanko Kaneti
|
|
||||||
li Yaroslav Kulikovskikh
|
|
||||||
li Yethal
|
|
||||||
li Yevgeniy Kuksenko
|
|
||||||
li Yew Kay Yan
|
|
||||||
li Yigal Dar
|
|
||||||
li Yogi
|
|
||||||
li YURI LEE
|
|
||||||
li Yurii Ostapchuk
|
|
||||||
li Zeljko
|
|
||||||
li zgen
|
|
||||||
li Zoltan Magyari
|
|
||||||
li Zsombor Vari
|
|
||||||
br
|
br
|
||||||
p(class="text credits")
|
p(class="text credits")
|
||||||
a(target="_blank" href="https://pikvm.org" i18n="index_text_10") PiKVM Project
|
|
||||||
| |
|
|
||||||
a(target="_blank" href="https://docs.pikvm.org" i18n="index_text_11") Documentation
|
|
||||||
| |
|
|
||||||
a(target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12") One-KVM Project
|
a(target="_blank" href="https://github.com/mofeng-git/One-KVM" i18n="index_text_12") One-KVM Project
|
||||||
| |
|
| |
|
||||||
a(target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13") One-KVM Documentation
|
a(target="_blank" href="https://one-kvm.mofeng.run" i18n="index_text_13") One-KVM Documentation
|
||||||
|
| |
|
||||||
|
a(target="_blank" href="https://pikvm.org" i18n="index_text_10") PiKVM Project
|
||||||
|
| |
|
||||||
|
a(target="_blank" href="https://docs.pikvm.org" i18n="index_text_11") Documentation
|
||||||
@ -5,6 +5,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
@ -77,7 +78,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td i18n="select_language">Select language: </td>
|
<td i18n="select_language">Select language: </td>
|
||||||
<td>
|
<td>
|
||||||
<select id="selectLanguage">
|
<select id="selectLanguage" style="width:100%">
|
||||||
<option id="zh" selected="selected" i18n="chinese">Simplified Chinese</option>
|
<option id="zh" selected="selected" i18n="chinese">Simplified Chinese</option>
|
||||||
<option id="en" i18n="english">English</option>
|
<option id="en" i18n="english">English</option>
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
@ -25,7 +25,7 @@ block body
|
|||||||
tr
|
tr
|
||||||
td(i18n="select_language") Select language:
|
td(i18n="select_language") Select language:
|
||||||
td
|
td
|
||||||
select(id="selectLanguage")
|
select(id="selectLanguage" style="width:100%")
|
||||||
option(id='zh', selected="selected" i18n="chinese") Simplified Chinese
|
option(id='zh', selected="selected" i18n="chinese") Simplified Chinese
|
||||||
option(id='en' i18n="english") English
|
option(id='en' i18n="english") English
|
||||||
tr
|
tr
|
||||||
|
|||||||
@ -150,5 +150,6 @@
|
|||||||
"msd-message-rw-enabled":"Read-write mode is enabled",
|
"msd-message-rw-enabled":"Read-write mode is enabled",
|
||||||
"msd-message-downloads":"The image is being downloaded from One-KVM",
|
"msd-message-downloads":"The image is being downloaded from One-KVM",
|
||||||
"msd-message-another-user-uploads":"Another user uploads an image",
|
"msd-message-another-user-uploads":"Another user uploads an image",
|
||||||
"page-full-tab-stream-switch":"Expand for the entire tab by default"
|
"page-full-tab-stream-switch":"Expand for the entire tab by default",
|
||||||
}
|
"hid-keyboard-bad-link-switch":"Bad link mode (release keys immediately)"
|
||||||
|
}
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
"username": "用户名: ",
|
"username": "用户名: ",
|
||||||
"password": "密码: ",
|
"password": "密码: ",
|
||||||
"2fa_code": "2FA 验证: ",
|
"2fa_code": "2FA 验证: ",
|
||||||
"if_enabled": "如果有",
|
"if_enabled": "如果没有请留空",
|
||||||
"login": "登录",
|
"login": "登录",
|
||||||
"select_language": "选择语言: ",
|
"select_language": "选择语言: ",
|
||||||
"chinese": "简体中文",
|
"chinese": "简体中文",
|
||||||
@ -29,7 +29,7 @@
|
|||||||
"ipmi_text3":"<b>不建议</b>为 KVMD 和 IPMI 用户使用相同的密码,或者直接关闭 IPMI。如有需要可以通过 curl 直接使用 KVMD API。下面是一些示例:",
|
"ipmi_text3":"<b>不建议</b>为 KVMD 和 IPMI 用户使用相同的密码,或者直接关闭 IPMI。如有需要可以通过 curl 直接使用 KVMD API。下面是一些示例:",
|
||||||
|
|
||||||
"kvm_text1":"关于",
|
"kvm_text1":"关于",
|
||||||
"kvm_text2":"//<a href=\"https://github.com/pikvm/pikvm?tab=readme-ov-file#special-thanks\">这些人</a>向 PiKVM 项目捐款并支持其工作,非常感谢他们的帮助。<br>//如果您也想支持 PiKVM ,可以在 <a target=\"_blank\" href=\"https://www.patreon.com/pikvm\"> Patreon</a> 或 <a target=\"_blank\" href=\"https://paypal.me/pikvm\"> PayPal 上捐款</a>。<br><br>//<a href=\"https://one-kvm.mofeng.run/thanks/#_2\">这些人</a>向 One-KVM 项目捐款并支持其工作,非常感谢他们的帮助。<br>//如果您也想支持 One-KVM ,可以在 <a target=\"_blank\" href=\"https://afdian.com/a/silentwind\"> 爱发电 </a>上捐款</a>。",
|
"kvm_text2":"//<a href=\"https://one-kvm.mofeng.run/thanks/#_2\">这些人</a>向 One-KVM 项目赞助并支持其工作,非常感谢他们的帮助。<br>//如果您也想支持 One-KVM ,可以在 <a target=\"_blank\" href=\"https://afdian.com/a/silentwind\"> 爱发电 </a>上捐款</a>。<br><br>//<a href=\"https://github.com/pikvm/pikvm?tab=readme-ov-file#special-thanks\">这些人</a>向 PiKVM 项目赞助并支持其工作,非常感谢他们的帮助。<br>//如果您也想支持 PiKVM ,可以在 <a target=\"_blank\" href=\"https://www.patreon.com/pikvm\"> Patreon</a> 或 <a target=\"_blank\" href=\"https://paypal.me/pikvm\"> PayPal 上捐款</a>。",
|
||||||
"kvm_text3":"系统",
|
"kvm_text3":"系统",
|
||||||
"kvm_text4":"运行设置 & 工具",
|
"kvm_text4":"运行设置 & 工具",
|
||||||
"kvm_text5":"终端",
|
"kvm_text5":"终端",
|
||||||
@ -152,5 +152,6 @@
|
|||||||
"msd-message-rw-enabled":"读写模式已启用",
|
"msd-message-rw-enabled":"读写模式已启用",
|
||||||
"msd-message-downloads":"正在从 One-KVM 下载镜像",
|
"msd-message-downloads":"正在从 One-KVM 下载镜像",
|
||||||
"msd-message-another-user-uploads":"另一个用户正在上传镜像",
|
"msd-message-another-user-uploads":"另一个用户正在上传镜像",
|
||||||
"page-full-tab-stream-switch":"自动全屏视频窗口"
|
"page-full-tab-stream-switch":"自动全屏视频窗口",
|
||||||
}
|
"hid-keyboard-bad-link-switch":"故障链接模式(立即释放按键)"
|
||||||
|
}
|
||||||
|
|||||||
@ -82,10 +82,10 @@ function __loadKvmdInfo() {
|
|||||||
|
|
||||||
if (info.meta !== null && info.meta.server && info.meta.server.host) {
|
if (info.meta !== null && info.meta.server && info.meta.server.host) {
|
||||||
$("kvmd-meta-server-host").innerHTML = info.meta.server.host;
|
$("kvmd-meta-server-host").innerHTML = info.meta.server.host;
|
||||||
document.title = `PiKVM Index: ${info.meta.server.host}`;
|
document.title = `One-KVM Index: ${info.meta.server.host}`;
|
||||||
} else {
|
} else {
|
||||||
$("kvmd-meta-server-host").innerHTML = "";
|
$("kvmd-meta-server-host").innerHTML = "";
|
||||||
document.title = "PiKVM Index";
|
document.title = "One-KVM Index";
|
||||||
}
|
}
|
||||||
} else if (http.status === 401 || http.status === 403) {
|
} else if (http.status === 401 || http.status === 403) {
|
||||||
document.location.href = "/login";
|
document.location.href = "/login";
|
||||||
|
|||||||
@ -3,6 +3,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
@ -35,7 +36,7 @@ export function main() {
|
|||||||
tools.storage.bindSimpleSwitch($("page-close-ask-switch"), "page.close.ask", true, function(value) {
|
tools.storage.bindSimpleSwitch($("page-close-ask-switch"), "page.close.ask", true, function(value) {
|
||||||
if (value) {
|
if (value) {
|
||||||
window.onbeforeunload = function(event) {
|
window.onbeforeunload = function(event) {
|
||||||
let text = "Are you sure you want to close PiKVM session?";
|
let text = "Are you sure you want to close One-KVM session?";
|
||||||
if (event) {
|
if (event) {
|
||||||
event.returnValue = text;
|
event.returnValue = text;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,6 +3,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
@ -84,10 +85,10 @@ export function Session() {
|
|||||||
|
|
||||||
if (state.server && state.server.host) {
|
if (state.server && state.server.host) {
|
||||||
$("kvmd-meta-server-host").innerText = `Server: ${state.server.host}`;
|
$("kvmd-meta-server-host").innerText = `Server: ${state.server.host}`;
|
||||||
document.title = `PiKVM Session: ${state.server.host}`;
|
document.title = `One-KVM Session: ${state.server.host}`;
|
||||||
} else {
|
} else {
|
||||||
$("kvmd-meta-server-host").innerText = "";
|
$("kvmd-meta-server-host").innerText = "";
|
||||||
document.title = "PiKVM Session";
|
document.title = "One-KVM Session";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state.tips && state.tips.left) {
|
if (state.tips && state.tips.left) {
|
||||||
|
|||||||
@ -117,6 +117,11 @@ export function Streamer() {
|
|||||||
|
|
||||||
//hidden stream-record-stop-button
|
//hidden stream-record-stop-button
|
||||||
document.getElementById('stream-record-stop-button').disabled = true;
|
document.getElementById('stream-record-stop-button').disabled = true;
|
||||||
|
|
||||||
|
// 修改这里:设置默认模式为 mjpeg
|
||||||
|
let defaultMode = "mjpeg";
|
||||||
|
let mode = tools.storage.get("stream.mode", defaultMode);
|
||||||
|
tools.radio.clickValue("stream-mode-radio", mode);
|
||||||
};
|
};
|
||||||
|
|
||||||
/************************************************************************/
|
/************************************************************************/
|
||||||
@ -225,7 +230,7 @@ export function Streamer() {
|
|||||||
tools.feature.setEnabled($("stream-mic"), false);
|
tools.feature.setEnabled($("stream-mic"), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
let mode = tools.storage.get("stream.mode", "janus");
|
let mode = tools.storage.get("stream.mode", "mjpeg"); // 这里也改为默认 mjpeg
|
||||||
if (mode === "janus" && !has_janus) {
|
if (mode === "janus" && !has_janus) {
|
||||||
mode = "media";
|
mode = "media";
|
||||||
}
|
}
|
||||||
@ -306,21 +311,25 @@ export function Streamer() {
|
|||||||
mode = __streamer.getMode();
|
mode = __streamer.getMode();
|
||||||
}
|
}
|
||||||
__streamer.stopStream();
|
__streamer.stopStream();
|
||||||
if (mode === "janus") {
|
if (mode === "mjpeg") {
|
||||||
|
// For mjpeg mode, create an instance of MjpegStreamer
|
||||||
|
__streamer = new MjpegStreamer(__setActive, __setInactive, __setInfo);
|
||||||
|
tools.feature.setEnabled($("stream-orient"), false);
|
||||||
|
tools.feature.setEnabled($("stream-audio"), false); // Enabling in stream_janus.js
|
||||||
|
tools.feature.setEnabled($("stream-mic"), false); // Ditto
|
||||||
|
} else if (mode === "media") {
|
||||||
|
// For media mode, create an instance of MediaStreamer
|
||||||
|
__streamer = new MediaStreamer(__setActive, __setInactive, __setInfo);
|
||||||
|
tools.feature.setEnabled($("stream-orient"), false);
|
||||||
|
tools.feature.setEnabled($("stream-audio"), false); // Assuming this should be disabled for MediaStreamer as well
|
||||||
|
tools.feature.setEnabled($("stream-mic"), false); // Ditto
|
||||||
|
} else { // janus
|
||||||
|
// For janus mode, create an instance of JanusStreamer with specific settings
|
||||||
__streamer = new JanusStreamer(__setActive, __setInactive, __setInfo,
|
__streamer = new JanusStreamer(__setActive, __setInactive, __setInfo,
|
||||||
tools.storage.getInt("stream.orient", 0), !$("stream-video").muted, $("stream-mic-switch").checked);
|
tools.storage.getInt("stream.orient", 0), !$("stream-video").muted, $("stream-mic-switch").checked);
|
||||||
// Firefox doesn't support RTP orientation:
|
// Firefox doesn't support RTP orientation:
|
||||||
// - https://bugzilla.mozilla.org/show_bug.cgi?id=1316448
|
// - https://bugzilla.mozilla.org/show_bug.cgi?id=1316448
|
||||||
tools.feature.setEnabled($("stream-orient"), !tools.browser.is_firefox);
|
tools.feature.setEnabled($("stream-orient"), !tools.browser.is_firefox);
|
||||||
} else {
|
|
||||||
if (mode === "media") {
|
|
||||||
__streamer = new MediaStreamer(__setActive, __setInactive, __setInfo);
|
|
||||||
} else { // mjpeg
|
|
||||||
__streamer = new MjpegStreamer(__setActive, __setInactive, __setInfo);
|
|
||||||
}
|
|
||||||
tools.feature.setEnabled($("stream-orient"), false);
|
|
||||||
tools.feature.setEnabled($("stream-audio"), false); // Enabling in stream_janus.js
|
|
||||||
tools.feature.setEnabled($("stream-mic"), false); // Ditto
|
|
||||||
}
|
}
|
||||||
if (wm.isWindowVisible($("stream-window"))) {
|
if (wm.isWindowVisible($("stream-window"))) {
|
||||||
__streamer.ensureStream((__state && __state.streamer !== undefined) ? __state.streamer : null);
|
__streamer.ensureStream((__state && __state.streamer !== undefined) ? __state.streamer : null);
|
||||||
@ -369,7 +378,7 @@ export function Streamer() {
|
|||||||
if (ok) {
|
if (ok) {
|
||||||
stream_now_fps = tools.slider.getValue($("stream-desired-fps-slider"));
|
stream_now_fps = tools.slider.getValue($("stream-desired-fps-slider"));
|
||||||
let recordedBlobs = [];
|
let recordedBlobs = [];
|
||||||
//"mjpeg" or "janus"
|
//"mjpeg" or "janus" or "media"
|
||||||
let stream_type = document.querySelector('input[name="stream-mode-radio"]:checked').value;
|
let stream_type = document.querySelector('input[name="stream-mode-radio"]:checked').value;
|
||||||
if ( stream_type == "mjpeg"){
|
if ( stream_type == "mjpeg"){
|
||||||
|
|
||||||
@ -378,9 +387,13 @@ export function Streamer() {
|
|||||||
var ctx = stream_mjpeg_canvas.getContext('2d');
|
var ctx = stream_mjpeg_canvas.getContext('2d');
|
||||||
stream_mjpeg_canvas.width = stream_mjpeg_img.width;
|
stream_mjpeg_canvas.width = stream_mjpeg_img.width;
|
||||||
stream_mjpeg_canvas.height = stream_mjpeg_img.height;
|
stream_mjpeg_canvas.height = stream_mjpeg_img.height;
|
||||||
const stream = stream_mjpeg_canvas.captureStream(stream_now_fps); // Capture FPS
|
const stream = stream_mjpeg_canvas.captureStream(stream_now_fps);
|
||||||
mediaRecorder = new MediaRecorder(stream);
|
mediaRecorder = new MediaRecorder(stream);
|
||||||
}else{
|
}else if(stream_type == "media"){
|
||||||
|
const stream_canvas = document.getElementById("stream-canvas")
|
||||||
|
stream_canvas.captureStream = stream_canvas.captureStream || stream_canvas.mozCaptureStream;
|
||||||
|
mediaRecorder = new MediaRecorder(stream_canvas.captureStream(stream_now_fps));
|
||||||
|
}else if(stream_type == "janus"){
|
||||||
const stream = document.getElementById("stream-video")
|
const stream = document.getElementById("stream-video")
|
||||||
stream.captureStream = stream.captureStream || stream.mozCaptureStream;
|
stream.captureStream = stream.captureStream || stream.mozCaptureStream;
|
||||||
mediaRecorder = new MediaRecorder(stream.captureStream());
|
mediaRecorder = new MediaRecorder(stream.captureStream());
|
||||||
|
|||||||
@ -5,6 +5,7 @@
|
|||||||
# KVMD - The main PiKVM daemon. #
|
# KVMD - The main PiKVM daemon. #
|
||||||
# #
|
# #
|
||||||
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
# Copyright (C) 2018-2024 Maxim Devaev <mdevaev@gmail.com> #
|
||||||
|
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||||
# #
|
# #
|
||||||
# This program is free software: you can redistribute it and/or modify #
|
# This program is free software: you can redistribute it and/or modify #
|
||||||
# it under the terms of the GNU General Public License as published by #
|
# it under the terms of the GNU General Public License as published by #
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user