Skip to content

Instantly share code, notes, and snippets.

@raku-cat
Last active March 6, 2026 22:40
Show Gist options
  • Select an option

  • Save raku-cat/10647578a0d4951fd2cb74589551f97c to your computer and use it in GitHub Desktop.

Select an option

Save raku-cat/10647578a0d4951fd2cb74589551f97c to your computer and use it in GitHub Desktop.
[Unit]
Description=Neko
PartOf=neko.pod
[Container]
Pod=neko-host.pod
Image=ghcr.io/m1k1o/neko/nvidia-firefox:latest
ShmSize=2g
#AddDevice=nvidia.com/gpu=all
EnvironmentFile=/etc/containers/systemd/neko-app.env
[Service]
Restart=always
[Install]
WantedBy=default.target
#NEKO_CAPTURE_VIDEO_PIPELINE=ximagesrc display-name={display} show-pointer=true use-damage=false ! cudaupload ! cudaconvert ! queue ! video/x-raw(memory:CUDAMemory),format=NV12 ! nvh264enc name=encoder preset=default gop-size=25 spatial-aq=true temporal-aq=true bitrate=4096 vbv-buffer-size=4096 rc-mode=cbr ! h264parse config-interval=-1 ! video/x-h264,stream-format=byte-stream ! appsink name=appsink
#NEKO_CAPTURE_VIDEO_PIPELINE=ximagesrc display-name={display} show-pointer=true use-damage=false ! videoconvert ! queue ! x264enc name=encoder threads=4 bitrate=4096 key-int-max=15 byte-stream=true tune=zerolatency speed-preset=veryfast ! video/x-h264,stream-format=byte-stream ! appsink name=appsink
NEKO_CAPTURE_VIDEO_CODEC=h264
NEKO_CAPTURE_BROADCAST_PIPELINE=flvmux name=mux ! rtmpsink location={url} pulsesrc device={device} ! audio/x-raw,channels=2 ! audioconvert ! voaacenc ! mux. ximagesrc display-name={display} show-pointer=false use-damage=false ! video/x-raw,framerate=30/1 ! videoconvert ! queue ! video/x-raw,format=NV12 ! nvh264enc name=encoder preset=low-latency-hq gop-size=25 spatial-aq=true temporal-aq=true bitrate=2800 vbv-buffer-size=2800 rc-mode=cbr ! h264parse config-interval=-1 ! video/x-h264,stream-format=byte-stream,profile=high ! h264parse ! mux.
NEKO_DESKTOP_SCREEN=1600x900@60
NEKO_MEMBER_PROVIDER=multiuser
NEKO_MEMBER_MULTIUSER_USER_PASSWORD=gamingtime
NEKO_MEMBER_MULTIUSER_ADMIN_PASSWORD=eveandrakusecret
NEKO_SESSION_CONTROL_PROTECTION=true
#NEKO_SESSION_IMPLICIT_HOSTING=true
#NEKO_WEBRTC_EPR=52000-52010
NEKO_WEBRTC_TCPMUX=59000
NEKO_WEBRTC_UDPMUX=59000
NEKO_WEBRTC_ICELITE=false
NEKO_SERVER_PROXY=true
#NEKO_WEBRTC_ICETRICKLE=true
#NEKO_WEBRTC_NAT1TO1=192.168.1.10
NEKO_WEBRTC_ICESERVERS_FRONTEND=[{"urls": ["turn:192.168.1.31:3468"], "username": "neko", "credential": "neko"},{"urls": ["stun:stun.moonlight-stream.org:3478"]}]
NEKO_WEBRTC_ICESERVERS_BACKEND=[{"urls": ["stun:stun.moonlight-stream.org:3478"]}]
TZ=America/Chicago
#NEKO_DEBUG=1
#GST_DEBUG=3
[Unit]
Description=Coturn TURN/STUN server
PartOf=neko.pod
[Container]
Pod=neko-host.pod
Network=host
Image=ghcr.io/coturn/coturn:latest
Exec=-n --realm=localhost --fingerprint --listening-ip=0.0.0.0 --external-ip=192.168.1.31 --listening-port=3468 --min-port=49160 --max-port=49200 --log-file=stdout --user=neko:neko --lt-cred-mech
[Service]
Restart=always
[Install]
WantedBy=default.target
[Unit] Description=Neko Pod [Pod] PublishPort=8085:8080 #PublishPort=52000-52010:52000-52010/udp PublishPort=59000:59000/udp PublishPort=59000:59000/tcp # Use HostNet=true instead if you want host network for entire pod #Network=host [Install] WantedBy=default.target
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment