gitextract_7wv1b94k/ ├── .editorconfig ├── .gitattributes ├── .github/ │ ├── FUNDING.yml │ └── workflows/ │ ├── client_build.yml │ ├── client_test.yml │ ├── dockerhub.yml │ ├── ghcr.yml │ ├── ghcr_intel.yml │ ├── ghcr_nvidia.yml │ ├── image_app.yml │ ├── image_base.yml │ ├── server_test.yml │ ├── webpage_build.yml │ ├── webpage_deploy.yml │ └── webpage_test.yml ├── .gitignore ├── .vscode/ │ ├── launch.json │ └── settings.json ├── Dockerfile.tmpl ├── LICENSE ├── README.md ├── SECURITY.md ├── apps/ │ ├── brave/ │ │ ├── Dockerfile │ │ ├── Dockerfile.nvidia │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── preferences.json │ │ ├── supervisord.conf │ │ └── supervisord.nvidia.conf │ ├── chromium/ │ │ ├── Dockerfile │ │ ├── Dockerfile.nvidia │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── preferences.json │ │ ├── supervisord.conf │ │ ├── supervisord.nvidia.conf │ │ └── widevinecdm.sh │ ├── firefox/ │ │ ├── Dockerfile │ │ ├── Dockerfile.nvidia │ │ ├── autoconfig.js │ │ ├── neko.js │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── profiles.ini │ │ ├── supervisord.conf │ │ └── supervisord.nvidia.conf │ ├── google-chrome/ │ │ ├── Dockerfile │ │ ├── Dockerfile.nvidia │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── preferences.json │ │ ├── supervisord.conf │ │ └── supervisord.nvidia.conf │ ├── kde/ │ │ ├── Dockerfile │ │ └── supervisord.conf │ ├── microsoft-edge/ │ │ ├── Dockerfile │ │ ├── Dockerfile.nvidia │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── preferences.json │ │ ├── supervisord.conf │ │ └── supervisord.nvidia.conf │ ├── opera/ │ │ ├── Dockerfile │ │ ├── fix-ffmpeg-widevine.sh │ │ ├── openbox.xml │ │ └── supervisord.conf │ ├── remmina/ │ │ ├── Dockerfile │ │ ├── rdp.remmina │ │ ├── remmina.pref │ │ ├── run-remmina.sh │ │ ├── spice.remmina │ │ ├── supervisord.conf │ │ └── vnc.remmina │ ├── tor-browser/ │ │ ├── Dockerfile │ │ ├── openbox.xml │ │ └── supervisord.conf │ ├── ungoogled-chromium/ │ │ ├── Dockerfile │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── preferences.json │ │ ├── supervisord.conf │ │ └── widevinecdm.sh │ ├── vivaldi/ │ │ ├── Dockerfile │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── preferences.json │ │ └── supervisord.conf │ ├── vlc/ │ │ ├── Dockerfile │ │ ├── openbox.xml │ │ └── supervisord.conf │ ├── waterfox/ │ │ ├── Dockerfile │ │ ├── autoconfig.js │ │ ├── neko.js │ │ ├── openbox.xml │ │ ├── policies.json │ │ ├── profiles.ini │ │ └── supervisord.conf │ └── xfce/ │ ├── Dockerfile │ └── supervisord.conf ├── build ├── client/ │ ├── .babelrc │ ├── .browserslistrc │ ├── .editorconfig │ ├── .eslintrc │ ├── .prettierrc │ ├── .vscode/ │ │ └── settings.json │ ├── Dockerfile │ ├── dev/ │ │ ├── build │ │ ├── exec │ │ ├── npm │ │ └── serve │ ├── package.json │ ├── public/ │ │ ├── browserconfig.xml │ │ ├── emoji.json │ │ ├── index.html │ │ ├── keyboard_layouts.json │ │ └── site.webmanifest │ ├── src/ │ │ ├── app.vue │ │ ├── assets/ │ │ │ └── styles/ │ │ │ ├── _reset.scss │ │ │ ├── _variables.scss │ │ │ ├── main.scss │ │ │ └── vendor/ │ │ │ ├── _emoji.scss │ │ │ ├── _emote.scss │ │ │ ├── _font-awesome.scss │ │ │ ├── _font-whitney.scss │ │ │ ├── _github.scss │ │ │ ├── _swal.scss │ │ │ └── _tooltip.scss │ │ ├── components/ │ │ │ ├── about.vue │ │ │ ├── avatar.vue │ │ │ ├── chat.vue │ │ │ ├── clipboard.vue │ │ │ ├── connect.vue │ │ │ ├── context.vue │ │ │ ├── controls.vue │ │ │ ├── emoji.vue │ │ │ ├── emote.vue │ │ │ ├── emotes.vue │ │ │ ├── files.vue │ │ │ ├── header.vue │ │ │ ├── markdown.ts │ │ │ ├── members.vue │ │ │ ├── menu.vue │ │ │ ├── resolution.vue │ │ │ ├── settings.vue │ │ │ ├── side.vue │ │ │ ├── unsupported.vue │ │ │ └── video.vue │ │ ├── lib.ts │ │ ├── locale/ │ │ │ ├── de-de.ts │ │ │ ├── en-us.ts │ │ │ ├── es-sp.ts │ │ │ ├── fi-fi.ts │ │ │ ├── fr-fr.ts │ │ │ ├── id-id.ts │ │ │ ├── index.ts │ │ │ ├── ja-jp.ts │ │ │ ├── ko-kr.ts │ │ │ ├── nb-no.ts │ │ │ ├── pl-pl.ts │ │ │ ├── ru-ru.ts │ │ │ ├── sk-sk.ts │ │ │ ├── sv-se.ts │ │ │ ├── zh-cn.ts │ │ │ └── zh-tw.ts │ │ ├── main.ts │ │ ├── neko/ │ │ │ ├── base.ts │ │ │ ├── data.ts │ │ │ ├── events.ts │ │ │ ├── index.ts │ │ │ ├── messages.ts │ │ │ └── types.ts │ │ ├── plugins/ │ │ │ ├── anime.ts │ │ │ ├── axios.ts │ │ │ ├── i18n.ts │ │ │ ├── log.ts │ │ │ ├── neko.ts │ │ │ └── swal.ts │ │ ├── store/ │ │ │ ├── chat.ts │ │ │ ├── client.ts │ │ │ ├── emoji.ts │ │ │ ├── files.ts │ │ │ ├── index.ts │ │ │ ├── remote.ts │ │ │ ├── settings.ts │ │ │ ├── user.ts │ │ │ └── video.ts │ │ ├── types/ │ │ │ ├── eventemitter3.d.ts │ │ │ ├── navigator.keyboard.d.ts │ │ │ ├── shims-scss.d.ts │ │ │ ├── shims-tsx.d.ts │ │ │ └── shims-vue.d.ts │ │ └── utils/ │ │ ├── guacamole-keyboard.js │ │ ├── guacamole-keyboard.ts │ │ ├── index.ts │ │ └── localstorage.ts │ ├── tools/ │ │ ├── emoji.ts │ │ ├── emoji_custom.ts │ │ └── tsconfig.json │ ├── tsconfig.json │ └── vue.config.js ├── config.yml ├── docker-compose.yaml ├── neko.code-workspace ├── runtime/ │ ├── .Xresources │ ├── Dockerfile │ ├── Dockerfile.bookworm │ ├── Dockerfile.intel │ ├── Dockerfile.intel.bookworm │ ├── Dockerfile.nvidia │ ├── Dockerfile.nvidia.bookworm │ ├── dbus │ ├── default.pa │ ├── fontconfig/ │ │ └── 75-emoji.conf │ ├── fonts/ │ │ └── .gitkeep │ ├── icon-theme/ │ │ └── .gitkeep │ ├── intel/ │ │ ├── add-render-group.sh │ │ └── supervisord.rendergroup.conf │ ├── nvidia/ │ │ └── entrypoint.sh │ ├── supervisord.conf │ ├── supervisord.dbus.conf │ └── xorg.conf ├── server/ │ ├── .gitignore │ ├── Dockerfile │ ├── Dockerfile.bookworm │ ├── build │ ├── cmd/ │ │ ├── neko/ │ │ │ └── main.go │ │ ├── plugins.go │ │ ├── root.go │ │ └── serve.go │ ├── dev/ │ │ ├── build │ │ ├── exec │ │ ├── fmt │ │ ├── go │ │ ├── lint │ │ ├── rebuild │ │ ├── rebuild.input │ │ ├── runtime/ │ │ │ ├── Dockerfile │ │ │ ├── config.nvidia.yml │ │ │ ├── config.yml │ │ │ └── supervisord.conf │ │ └── start │ ├── go.mod │ ├── go.sum │ ├── internal/ │ │ ├── api/ │ │ │ ├── members/ │ │ │ │ ├── bluk.go │ │ │ │ ├── controler.go │ │ │ │ └── handler.go │ │ │ ├── room/ │ │ │ │ ├── broadcast.go │ │ │ │ ├── clipboard.go │ │ │ │ ├── control.go │ │ │ │ ├── handler.go │ │ │ │ ├── keyboard.go │ │ │ │ ├── screen.go │ │ │ │ ├── settings.go │ │ │ │ └── upload.go │ │ │ ├── router.go │ │ │ ├── session.go │ │ │ └── sessions/ │ │ │ ├── controller.go │ │ │ └── handler.go │ │ ├── capture/ │ │ │ ├── broadcast.go │ │ │ ├── manager.go │ │ │ ├── screencast.go │ │ │ ├── streamselector.go │ │ │ ├── streamsink.go │ │ │ └── streamsrc.go │ │ ├── config/ │ │ │ ├── capture.go │ │ │ ├── capture_pipeline.go │ │ │ ├── config.go │ │ │ ├── desktop.go │ │ │ ├── member.go │ │ │ ├── plugins.go │ │ │ ├── root.go │ │ │ ├── server.go │ │ │ ├── session.go │ │ │ └── webrtc.go │ │ ├── desktop/ │ │ │ ├── clipboard.go │ │ │ ├── drop.go │ │ │ ├── filechooserdialog.go │ │ │ ├── manager.go │ │ │ ├── xevent.go │ │ │ ├── xinput.go │ │ │ └── xorg.go │ │ ├── http/ │ │ │ ├── batch.go │ │ │ ├── debug.go │ │ │ ├── legacy/ │ │ │ │ ├── event/ │ │ │ │ │ └── events.go │ │ │ │ ├── handler.go │ │ │ │ ├── message/ │ │ │ │ │ └── messages.go │ │ │ │ ├── session.go │ │ │ │ ├── types/ │ │ │ │ │ └── types.go │ │ │ │ ├── wstobackend.go │ │ │ │ └── wstoclient.go │ │ │ ├── logger.go │ │ │ ├── manager.go │ │ │ └── router.go │ │ ├── member/ │ │ │ ├── file/ │ │ │ │ ├── provider.go │ │ │ │ ├── provider_test.go │ │ │ │ └── types.go │ │ │ ├── manager.go │ │ │ ├── multiuser/ │ │ │ │ ├── provider.go │ │ │ │ └── types.go │ │ │ ├── noauth/ │ │ │ │ └── provider.go │ │ │ └── object/ │ │ │ ├── provider.go │ │ │ └── types.go │ │ ├── plugins/ │ │ │ ├── chat/ │ │ │ │ ├── config.go │ │ │ │ ├── manager.go │ │ │ │ ├── plugin.go │ │ │ │ └── types.go │ │ │ ├── dependency.go │ │ │ ├── dependency_test.go │ │ │ ├── filetransfer/ │ │ │ │ ├── config.go │ │ │ │ ├── manager.go │ │ │ │ ├── plugin.go │ │ │ │ ├── types.go │ │ │ │ └── utils.go │ │ │ └── manager.go │ │ ├── session/ │ │ │ ├── auth.go │ │ │ ├── manager.go │ │ │ ├── serialize.go │ │ │ └── session.go │ │ ├── webrtc/ │ │ │ ├── cursor/ │ │ │ │ ├── image.go │ │ │ │ └── position.go │ │ │ ├── handler.go │ │ │ ├── legacyhandler.go │ │ │ ├── manager.go │ │ │ ├── metrics.go │ │ │ ├── payload/ │ │ │ │ ├── receive.go │ │ │ │ ├── send.go │ │ │ │ └── types.go │ │ │ ├── peer.go │ │ │ ├── pionlog/ │ │ │ │ ├── factory.go │ │ │ │ ├── logger.go │ │ │ │ └── nullog.go │ │ │ └── track.go │ │ └── websocket/ │ │ ├── filechooserdialog.go │ │ ├── handler/ │ │ │ ├── clipboard.go │ │ │ ├── control.go │ │ │ ├── handler.go │ │ │ ├── keyboard.go │ │ │ ├── screen.go │ │ │ ├── send.go │ │ │ ├── session.go │ │ │ ├── signal.go │ │ │ └── system.go │ │ ├── manager.go │ │ └── peer.go │ ├── neko.go │ ├── openapi.yaml │ ├── pkg/ │ │ ├── auth/ │ │ │ ├── auth.go │ │ │ └── auth_test.go │ │ ├── drop/ │ │ │ ├── drop.c │ │ │ ├── drop.go │ │ │ └── drop.h │ │ ├── gst/ │ │ │ ├── gst.c │ │ │ ├── gst.go │ │ │ └── gst.h │ │ ├── types/ │ │ │ ├── api.go │ │ │ ├── capture.go │ │ │ ├── codec/ │ │ │ │ └── codecs.go │ │ │ ├── desktop.go │ │ │ ├── event/ │ │ │ │ └── events.go │ │ │ ├── http.go │ │ │ ├── member.go │ │ │ ├── message/ │ │ │ │ └── messages.go │ │ │ ├── plugins.go │ │ │ ├── session.go │ │ │ ├── webrtc.go │ │ │ └── websocket.go │ │ ├── utils/ │ │ │ ├── array.go │ │ │ ├── color.go │ │ │ ├── deocde.go │ │ │ ├── http.go │ │ │ ├── image.go │ │ │ ├── request.go │ │ │ ├── trenddetector.go │ │ │ ├── uid.go │ │ │ └── zip.go │ │ ├── xevent/ │ │ │ ├── xevent.c │ │ │ ├── xevent.go │ │ │ └── xevent.h │ │ ├── xinput/ │ │ │ ├── dummy.go │ │ │ ├── types.go │ │ │ └── xinput.go │ │ └── xorg/ │ │ ├── keysymdef.go │ │ ├── keysymdef.sh │ │ ├── xorg.c │ │ ├── xorg.go │ │ └── xorg.h │ └── plugins/ │ └── .gitkeep ├── tsconfig.json ├── utils/ │ ├── docker/ │ │ ├── go.mod │ │ └── main.go │ └── xorg-deps/ │ ├── Dockerfile │ ├── xf86-input-neko/ │ │ ├── .gitignore │ │ ├── 80-neko.conf │ │ ├── COPYING │ │ ├── Dockerfile │ │ ├── Makefile.am │ │ ├── README.md │ │ ├── autogen-clean.sh │ │ ├── autogen.sh │ │ ├── configure.ac │ │ ├── m4/ │ │ │ └── .gitkeep │ │ ├── release.sh │ │ ├── src/ │ │ │ ├── Makefile.am │ │ │ └── neko.c │ │ └── xorg-neko.pc.in │ └── xf86-video-dummy/ │ ├── 01_v0.3.8_xdummy-randr.patch │ ├── README.md │ └── v0.3.8/ │ ├── COPYING │ ├── ChangeLog │ ├── Makefile.am │ ├── Makefile.in │ ├── README │ ├── aclocal.m4 │ ├── compile │ ├── config.guess │ ├── config.h.in │ ├── config.sub │ ├── configure │ ├── configure.ac │ ├── depcomp │ ├── install-sh │ ├── ltmain.sh │ ├── missing │ └── src/ │ ├── Makefile.am │ ├── Makefile.in │ ├── compat-api.h │ ├── dummy.h │ ├── dummy_cursor.c │ ├── dummy_dga.c │ └── dummy_driver.c └── webpage/ ├── .gitignore ├── README.md ├── docs/ │ ├── api/ │ │ ├── README.mdx │ │ ├── batch.api.mdx │ │ ├── broadcast-start.api.mdx │ │ ├── broadcast-status.api.mdx │ │ ├── broadcast-stop.api.mdx │ │ ├── clipboard-get-image.api.mdx │ │ ├── clipboard-get-text.api.mdx │ │ ├── clipboard-set-text.api.mdx │ │ ├── control-give.api.mdx │ │ ├── control-release.api.mdx │ │ ├── control-request.api.mdx │ │ ├── control-reset.api.mdx │ │ ├── control-status.api.mdx │ │ ├── control-take.api.mdx │ │ ├── current-session.tag.mdx │ │ ├── general.tag.mdx │ │ ├── healthcheck.api.mdx │ │ ├── keyboard-map-get.api.mdx │ │ ├── keyboard-map-set.api.mdx │ │ ├── keyboard-modifiers-get.api.mdx │ │ ├── keyboard-modifiers-set.api.mdx │ │ ├── login.api.mdx │ │ ├── logout.api.mdx │ │ ├── members-bulk-delete.api.mdx │ │ ├── members-bulk-update.api.mdx │ │ ├── members-create.api.mdx │ │ ├── members-get-profile.api.mdx │ │ ├── members-list.api.mdx │ │ ├── members-remove.api.mdx │ │ ├── members-update-password.api.mdx │ │ ├── members-update-profile.api.mdx │ │ ├── members.tag.mdx │ │ ├── metrics.api.mdx │ │ ├── profile.api.mdx │ │ ├── room-broadcast.tag.mdx │ │ ├── room-clipboard.tag.mdx │ │ ├── room-control.tag.mdx │ │ ├── room-keyboard.tag.mdx │ │ ├── room-screen.tag.mdx │ │ ├── room-settings.tag.mdx │ │ ├── room-upload.tag.mdx │ │ ├── schemas/ │ │ │ └── memberprofile.schema.mdx │ │ ├── screen-cast-image.api.mdx │ │ ├── screen-configuration-change.api.mdx │ │ ├── screen-configuration.api.mdx │ │ ├── screen-configurations-list.api.mdx │ │ ├── screen-shot-image.api.mdx │ │ ├── session-disconnect.api.mdx │ │ ├── session-get.api.mdx │ │ ├── session-remove.api.mdx │ │ ├── sessions-get.api.mdx │ │ ├── sessions.tag.mdx │ │ ├── settings-get.api.mdx │ │ ├── settings-set.api.mdx │ │ ├── sidebar.ts │ │ ├── stats.api.mdx │ │ ├── upload-dialog-close.api.mdx │ │ ├── upload-dialog.api.mdx │ │ ├── upload-drop.api.mdx │ │ └── whoami.api.mdx │ ├── configuration/ │ │ ├── README.md │ │ ├── authentication.md │ │ ├── capture.md │ │ ├── desktop.md │ │ ├── help.json │ │ ├── help.txt │ │ ├── plugins.md │ │ └── webrtc.md │ ├── customization/ │ │ ├── README.md │ │ ├── browsers.json │ │ ├── browsers.md │ │ ├── browsers.tsx │ │ ├── networking.md │ │ ├── projects.md │ │ └── ui.md │ ├── developer-guide/ │ │ ├── README.md │ │ ├── build.md │ │ └── repository-structure.md │ ├── faq.md │ ├── hardware-acceleration/ │ │ ├── amd-gpu-support.md │ │ ├── gpu-acceleration-overview.md │ │ ├── intel-qsv.md │ │ ├── nvidia-gpu-support.md │ │ └── raspberry-pi.md │ ├── installation/ │ │ ├── README.md │ │ ├── docker-images.md │ │ └── examples.md │ ├── introduction.md │ ├── migration-from-v2/ │ │ ├── README.md │ │ ├── help.json │ │ └── help.txt │ ├── quick-start.md │ ├── release-notes.md │ ├── reverse-proxy-setup.md │ ├── roadmap.md │ └── troubleshooting.md ├── docusaurus.config.ts ├── package.json ├── scripts/ │ ├── gen-api-docs.sh │ └── gen-config.sh ├── sidebars.ts ├── src/ │ ├── components/ │ │ ├── Anchor.tsx │ │ ├── AppIcon.tsx │ │ ├── Configuration/ │ │ │ ├── generate.js │ │ │ └── index.tsx │ │ ├── HomepageFeatures/ │ │ │ ├── index.tsx │ │ │ └── styles.module.css │ │ ├── HomepageShowcase/ │ │ │ ├── index.tsx │ │ │ └── styles.module.css │ │ └── HomepageUseCases/ │ │ ├── index.tsx │ │ └── styles.module.css │ ├── css/ │ │ └── custom.css │ └── pages/ │ ├── contact.md │ ├── contributing.md │ ├── index.module.css │ ├── index.tsx │ └── non-goals.md ├── static/ │ ├── .nojekyll │ ├── .well-known/ │ │ └── security.txt │ └── CNAME ├── tsconfig.json ├── versioned_docs/ │ └── version-v2/ │ ├── README.md │ ├── configuration.md │ ├── examples.md │ ├── faq.md │ ├── quick-start.md │ ├── reverse-proxy.md │ └── troubleshooting.md ├── versioned_sidebars/ │ └── version-v2-sidebars.json └── versions.json