neko mirror
Go to file
tt2468 00c7e6dfb2
Move X11 error handler registration to before screen sets (#62)
If X11 throws an error during screen config get/set, the default error
handler at the time will be one which causes a program exit. This
splits the error handler registration in xevent into its own call,
allowing us to register our error handler earlier on. This results in
the safe error handling logic actually being called instead of a full
program exit.
2024-03-27 21:38:33 +01:00
.devcontainer Bullseye alongside Bookworm (#61) 2024-01-26 18:47:40 +01:00
.github/workflows Bullseye alongside Bookworm (#61) 2024-01-26 18:47:40 +01:00
.vscode fix vscode settings. 2024-01-26 19:34:09 +01:00
cmd Add plugins required flag (#40) 2023-03-31 12:02:33 +02:00
dev members: add multiuser profile. 2023-09-25 18:28:05 +02:00
internal Move X11 error handler registration to before screen sets (#62) 2024-03-27 21:38:33 +01:00
pkg Move X11 error handler registration to before screen sets (#62) 2024-03-27 21:38:33 +01:00
plugins add plugins folder. 2022-07-14 22:10:41 +02:00
runtime Bullseye alongside Bookworm (#61) 2024-01-26 18:47:40 +01:00
xorg Bullseye alongside Bookworm (#61) 2024-01-26 18:47:40 +01:00
.editorconfig clean up repository. 2021-02-21 00:40:52 +01:00
.gitattributes add gitattributes. 2020-11-27 22:25:27 +01:00
.gitignore add plugins folder. 2022-07-14 22:10:41 +02:00
build fix build pipe redirection. 2022-10-24 22:54:28 +02:00
Dockerfile Bullseye alongside Bookworm (#61) 2024-01-26 18:47:40 +01:00
Dockerfile.bookworm Bullseye alongside Bookworm (#61) 2024-01-26 18:47:40 +01:00
Dockerfile.nvidia fix docker nvidia. 2024-01-26 19:33:52 +01:00
Dockerfile.nvidia.bookworm Bullseye alongside Bookworm (#61) 2024-01-26 18:47:40 +01:00
go.mod upgrade go deps. 2024-01-26 18:54:40 +01:00
go.sum upgrade go deps. 2024-01-26 18:54:40 +01:00
LICENSE add LICENSE. 2022-07-18 22:08:47 +02:00
neko.go set version from git tag. 2022-07-04 19:14:52 +02:00
openapi.yaml members bulk delete. (#59) 2023-11-19 15:19:47 +01:00
README.md update README.md. 2023-05-21 13:19:23 +02:00

neko

This app uses WebRTC to stream a desktop inside of a docker container. Client can be found here: demodesk/neko-client.

For community edition neko with GUI and plug & play deployment visit m1k1o/neko.

m1k1o/neko vs demodesk/neko, why do we have two of them?

This project started as a fork of m1k1o/neko. But over time, development went way ahead of the original one in terms of features, updates and refactoring. The goal is to rebase m1k1o/neko repository onto this one and move all extra features (such as chat and emotes) to a standalone plugin.

  • This project is aimed to be the engine providing foundation for all applications that are streaming desktop environment using WebRTC to the browser.
  • m1k1o/neko is meant to be self-hosted replacement for rabb.it: Community edition with well-known GUI, all the social functions (such as chat and emotes) and easy deployment.

Notable differences to the m1k1o/neko are:

  • Go plugin support.
  • Multiple encoding qualities simulcast.
    • Bandwidth estimation and adaptive quality.
  • Custom screen size (with automatic sync).
  • Single cursor for host - cursor image proxying.
  • Custom cursor style/badge for participants.
  • Inactive cursors (participants that are not hosting).
  • Fallback mode and reconnection improvements:
    • Watching using screencasting.
    • Controlling using websockets.
  • Members handling:
    • Access control (view, interactivity, clipboard).
    • Posibility to add external members providers.
    • Persistent login (using cookies).
  • Drag and drop passthrough.
  • File upload passthrough (experimental).
  • Microphone passthrough.
  • Webcam passthrough (experimental).
  • Bi-directional text/html clipboard.
  • Keyboard layouts/variants.
  • Metrics and REST API.

Docs

TBD.