diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index a7bd5b1e..69824f10 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -4,7 +4,7 @@ "name": "Go", "build": { "dockerfile": "Dockerfile", - "context": "../", + "context": "../server/", "args": { // Update the VARIANT arg to pick a version of Go: 1, 1.16, 1.15 "VARIANT": "1.20", diff --git a/.gitignore b/.gitignore index 3428a0df..6784a149 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,3 @@ -bin/ -.idea -.env.development - runtime/fonts/* !runtime/fonts/.gitkeep diff --git a/.vscode/launch.json b/.vscode/launch.json index 4973993a..5fc54c75 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -10,11 +10,11 @@ "debugAdapter": "dlv-dap", "request": "launch", "mode": "debug", - "program": "${workspaceFolder}/cmd/neko", - "output": "${workspaceFolder}/bin/debug/neko", - "cwd": "${workspaceFolder}/", + "program": "${workspaceFolder}/server/cmd/neko", + "output": "${workspaceFolder}/server/bin/debug/neko", + "cwd": "${workspaceFolder}/server/", "args": ["serve", "-d", "-c", "dev/runtime/config.yml"], - "envFile": "${workspaceFolder}/.env.development" + "envFile": "${workspaceFolder}/server/.env.development" } ] } diff --git a/LICENSE b/LICENSE index 012a8504..b9454a1f 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2020 Nurdism , 2020-2022 m1k1o & Demodesk GmbH + Copyright 2020 Nurdism , 2020- https://github.com/m1k1o Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/server/.gitignore b/server/.gitignore new file mode 100644 index 00000000..3428a0df --- /dev/null +++ b/server/.gitignore @@ -0,0 +1,12 @@ +bin/ +.idea +.env.development + +runtime/fonts/* +!runtime/fonts/.gitkeep + +runtime/icon-theme/* +!runtime/icon-theme/.gitkeep + +plugins/* +!plugins/.gitkeep diff --git a/Dockerfile b/server/Dockerfile similarity index 100% rename from Dockerfile rename to server/Dockerfile diff --git a/Dockerfile.bookworm b/server/Dockerfile.bookworm similarity index 100% rename from Dockerfile.bookworm rename to server/Dockerfile.bookworm diff --git a/Dockerfile.nvidia b/server/Dockerfile.nvidia similarity index 100% rename from Dockerfile.nvidia rename to server/Dockerfile.nvidia diff --git a/Dockerfile.nvidia.bookworm b/server/Dockerfile.nvidia.bookworm similarity index 100% rename from Dockerfile.nvidia.bookworm rename to server/Dockerfile.nvidia.bookworm diff --git a/build b/server/build similarity index 100% rename from build rename to server/build diff --git a/cmd/neko/main.go b/server/cmd/neko/main.go similarity index 100% rename from cmd/neko/main.go rename to server/cmd/neko/main.go diff --git a/cmd/plugins.go b/server/cmd/plugins.go similarity index 100% rename from cmd/plugins.go rename to server/cmd/plugins.go diff --git a/cmd/root.go b/server/cmd/root.go similarity index 100% rename from cmd/root.go rename to server/cmd/root.go diff --git a/cmd/serve.go b/server/cmd/serve.go similarity index 100% rename from cmd/serve.go rename to server/cmd/serve.go diff --git a/dev/build b/server/dev/build similarity index 100% rename from dev/build rename to server/dev/build diff --git a/dev/exec b/server/dev/exec similarity index 100% rename from dev/exec rename to server/dev/exec diff --git a/dev/fmt b/server/dev/fmt similarity index 100% rename from dev/fmt rename to server/dev/fmt diff --git a/dev/go b/server/dev/go similarity index 100% rename from dev/go rename to server/dev/go diff --git a/dev/lint b/server/dev/lint similarity index 100% rename from dev/lint rename to server/dev/lint diff --git a/dev/rebuild b/server/dev/rebuild similarity index 100% rename from dev/rebuild rename to server/dev/rebuild diff --git a/dev/rebuild.input b/server/dev/rebuild.input similarity index 100% rename from dev/rebuild.input rename to server/dev/rebuild.input diff --git a/dev/runtime/Dockerfile b/server/dev/runtime/Dockerfile similarity index 100% rename from dev/runtime/Dockerfile rename to server/dev/runtime/Dockerfile diff --git a/dev/runtime/config.nvidia.yml b/server/dev/runtime/config.nvidia.yml similarity index 100% rename from dev/runtime/config.nvidia.yml rename to server/dev/runtime/config.nvidia.yml diff --git a/dev/runtime/config.yml b/server/dev/runtime/config.yml similarity index 100% rename from dev/runtime/config.yml rename to server/dev/runtime/config.yml diff --git a/dev/runtime/supervisord.conf b/server/dev/runtime/supervisord.conf similarity index 100% rename from dev/runtime/supervisord.conf rename to server/dev/runtime/supervisord.conf diff --git a/dev/start b/server/dev/start similarity index 100% rename from dev/start rename to server/dev/start diff --git a/go.mod b/server/go.mod similarity index 100% rename from go.mod rename to server/go.mod diff --git a/go.sum b/server/go.sum similarity index 100% rename from go.sum rename to server/go.sum diff --git a/internal/api/members/bluk.go b/server/internal/api/members/bluk.go similarity index 100% rename from internal/api/members/bluk.go rename to server/internal/api/members/bluk.go diff --git a/internal/api/members/controler.go b/server/internal/api/members/controler.go similarity index 100% rename from internal/api/members/controler.go rename to server/internal/api/members/controler.go diff --git a/internal/api/members/handler.go b/server/internal/api/members/handler.go similarity index 100% rename from internal/api/members/handler.go rename to server/internal/api/members/handler.go diff --git a/internal/api/room/broadcast.go b/server/internal/api/room/broadcast.go similarity index 100% rename from internal/api/room/broadcast.go rename to server/internal/api/room/broadcast.go diff --git a/internal/api/room/clipboard.go b/server/internal/api/room/clipboard.go similarity index 100% rename from internal/api/room/clipboard.go rename to server/internal/api/room/clipboard.go diff --git a/internal/api/room/control.go b/server/internal/api/room/control.go similarity index 100% rename from internal/api/room/control.go rename to server/internal/api/room/control.go diff --git a/internal/api/room/handler.go b/server/internal/api/room/handler.go similarity index 100% rename from internal/api/room/handler.go rename to server/internal/api/room/handler.go diff --git a/internal/api/room/keyboard.go b/server/internal/api/room/keyboard.go similarity index 100% rename from internal/api/room/keyboard.go rename to server/internal/api/room/keyboard.go diff --git a/internal/api/room/screen.go b/server/internal/api/room/screen.go similarity index 100% rename from internal/api/room/screen.go rename to server/internal/api/room/screen.go diff --git a/internal/api/room/settings.go b/server/internal/api/room/settings.go similarity index 100% rename from internal/api/room/settings.go rename to server/internal/api/room/settings.go diff --git a/internal/api/room/upload.go b/server/internal/api/room/upload.go similarity index 100% rename from internal/api/room/upload.go rename to server/internal/api/room/upload.go diff --git a/internal/api/router.go b/server/internal/api/router.go similarity index 100% rename from internal/api/router.go rename to server/internal/api/router.go diff --git a/internal/api/session.go b/server/internal/api/session.go similarity index 100% rename from internal/api/session.go rename to server/internal/api/session.go diff --git a/internal/api/sessions/controller.go b/server/internal/api/sessions/controller.go similarity index 100% rename from internal/api/sessions/controller.go rename to server/internal/api/sessions/controller.go diff --git a/internal/api/sessions/handler.go b/server/internal/api/sessions/handler.go similarity index 100% rename from internal/api/sessions/handler.go rename to server/internal/api/sessions/handler.go diff --git a/internal/capture/broadcast.go b/server/internal/capture/broadcast.go similarity index 100% rename from internal/capture/broadcast.go rename to server/internal/capture/broadcast.go diff --git a/internal/capture/manager.go b/server/internal/capture/manager.go similarity index 100% rename from internal/capture/manager.go rename to server/internal/capture/manager.go diff --git a/internal/capture/screencast.go b/server/internal/capture/screencast.go similarity index 100% rename from internal/capture/screencast.go rename to server/internal/capture/screencast.go diff --git a/internal/capture/streamselector.go b/server/internal/capture/streamselector.go similarity index 100% rename from internal/capture/streamselector.go rename to server/internal/capture/streamselector.go diff --git a/internal/capture/streamsink.go b/server/internal/capture/streamsink.go similarity index 100% rename from internal/capture/streamsink.go rename to server/internal/capture/streamsink.go diff --git a/internal/capture/streamsrc.go b/server/internal/capture/streamsrc.go similarity index 100% rename from internal/capture/streamsrc.go rename to server/internal/capture/streamsrc.go diff --git a/internal/config/capture.go b/server/internal/config/capture.go similarity index 100% rename from internal/config/capture.go rename to server/internal/config/capture.go diff --git a/internal/config/config.go b/server/internal/config/config.go similarity index 100% rename from internal/config/config.go rename to server/internal/config/config.go diff --git a/internal/config/desktop.go b/server/internal/config/desktop.go similarity index 100% rename from internal/config/desktop.go rename to server/internal/config/desktop.go diff --git a/internal/config/member.go b/server/internal/config/member.go similarity index 100% rename from internal/config/member.go rename to server/internal/config/member.go diff --git a/internal/config/plugins.go b/server/internal/config/plugins.go similarity index 100% rename from internal/config/plugins.go rename to server/internal/config/plugins.go diff --git a/internal/config/root.go b/server/internal/config/root.go similarity index 100% rename from internal/config/root.go rename to server/internal/config/root.go diff --git a/internal/config/server.go b/server/internal/config/server.go similarity index 100% rename from internal/config/server.go rename to server/internal/config/server.go diff --git a/internal/config/session.go b/server/internal/config/session.go similarity index 100% rename from internal/config/session.go rename to server/internal/config/session.go diff --git a/internal/config/webrtc.go b/server/internal/config/webrtc.go similarity index 100% rename from internal/config/webrtc.go rename to server/internal/config/webrtc.go diff --git a/internal/desktop/clipboard.go b/server/internal/desktop/clipboard.go similarity index 100% rename from internal/desktop/clipboard.go rename to server/internal/desktop/clipboard.go diff --git a/internal/desktop/drop.go b/server/internal/desktop/drop.go similarity index 100% rename from internal/desktop/drop.go rename to server/internal/desktop/drop.go diff --git a/internal/desktop/filechooserdialog.go b/server/internal/desktop/filechooserdialog.go similarity index 100% rename from internal/desktop/filechooserdialog.go rename to server/internal/desktop/filechooserdialog.go diff --git a/internal/desktop/manager.go b/server/internal/desktop/manager.go similarity index 100% rename from internal/desktop/manager.go rename to server/internal/desktop/manager.go diff --git a/internal/desktop/xevent.go b/server/internal/desktop/xevent.go similarity index 100% rename from internal/desktop/xevent.go rename to server/internal/desktop/xevent.go diff --git a/internal/desktop/xinput.go b/server/internal/desktop/xinput.go similarity index 100% rename from internal/desktop/xinput.go rename to server/internal/desktop/xinput.go diff --git a/internal/desktop/xorg.go b/server/internal/desktop/xorg.go similarity index 100% rename from internal/desktop/xorg.go rename to server/internal/desktop/xorg.go diff --git a/internal/http/batch.go b/server/internal/http/batch.go similarity index 100% rename from internal/http/batch.go rename to server/internal/http/batch.go diff --git a/internal/http/debug.go b/server/internal/http/debug.go similarity index 100% rename from internal/http/debug.go rename to server/internal/http/debug.go diff --git a/internal/http/logger.go b/server/internal/http/logger.go similarity index 100% rename from internal/http/logger.go rename to server/internal/http/logger.go diff --git a/internal/http/manager.go b/server/internal/http/manager.go similarity index 100% rename from internal/http/manager.go rename to server/internal/http/manager.go diff --git a/internal/http/router.go b/server/internal/http/router.go similarity index 100% rename from internal/http/router.go rename to server/internal/http/router.go diff --git a/internal/member/file/provider.go b/server/internal/member/file/provider.go similarity index 100% rename from internal/member/file/provider.go rename to server/internal/member/file/provider.go diff --git a/internal/member/file/provider_test.go b/server/internal/member/file/provider_test.go similarity index 100% rename from internal/member/file/provider_test.go rename to server/internal/member/file/provider_test.go diff --git a/internal/member/file/types.go b/server/internal/member/file/types.go similarity index 100% rename from internal/member/file/types.go rename to server/internal/member/file/types.go diff --git a/internal/member/manager.go b/server/internal/member/manager.go similarity index 100% rename from internal/member/manager.go rename to server/internal/member/manager.go diff --git a/internal/member/multiuser/provider.go b/server/internal/member/multiuser/provider.go similarity index 100% rename from internal/member/multiuser/provider.go rename to server/internal/member/multiuser/provider.go diff --git a/internal/member/multiuser/types.go b/server/internal/member/multiuser/types.go similarity index 100% rename from internal/member/multiuser/types.go rename to server/internal/member/multiuser/types.go diff --git a/internal/member/noauth/provider.go b/server/internal/member/noauth/provider.go similarity index 100% rename from internal/member/noauth/provider.go rename to server/internal/member/noauth/provider.go diff --git a/internal/member/object/provider.go b/server/internal/member/object/provider.go similarity index 100% rename from internal/member/object/provider.go rename to server/internal/member/object/provider.go diff --git a/internal/member/object/types.go b/server/internal/member/object/types.go similarity index 100% rename from internal/member/object/types.go rename to server/internal/member/object/types.go diff --git a/internal/plugins/chat/config.go b/server/internal/plugins/chat/config.go similarity index 100% rename from internal/plugins/chat/config.go rename to server/internal/plugins/chat/config.go diff --git a/internal/plugins/chat/manager.go b/server/internal/plugins/chat/manager.go similarity index 100% rename from internal/plugins/chat/manager.go rename to server/internal/plugins/chat/manager.go diff --git a/internal/plugins/chat/plugin.go b/server/internal/plugins/chat/plugin.go similarity index 100% rename from internal/plugins/chat/plugin.go rename to server/internal/plugins/chat/plugin.go diff --git a/internal/plugins/chat/types.go b/server/internal/plugins/chat/types.go similarity index 100% rename from internal/plugins/chat/types.go rename to server/internal/plugins/chat/types.go diff --git a/internal/plugins/dependency.go b/server/internal/plugins/dependency.go similarity index 100% rename from internal/plugins/dependency.go rename to server/internal/plugins/dependency.go diff --git a/internal/plugins/dependency_test.go b/server/internal/plugins/dependency_test.go similarity index 100% rename from internal/plugins/dependency_test.go rename to server/internal/plugins/dependency_test.go diff --git a/internal/plugins/filetransfer/config.go b/server/internal/plugins/filetransfer/config.go similarity index 100% rename from internal/plugins/filetransfer/config.go rename to server/internal/plugins/filetransfer/config.go diff --git a/internal/plugins/filetransfer/manager.go b/server/internal/plugins/filetransfer/manager.go similarity index 100% rename from internal/plugins/filetransfer/manager.go rename to server/internal/plugins/filetransfer/manager.go diff --git a/internal/plugins/filetransfer/plugin.go b/server/internal/plugins/filetransfer/plugin.go similarity index 100% rename from internal/plugins/filetransfer/plugin.go rename to server/internal/plugins/filetransfer/plugin.go diff --git a/internal/plugins/filetransfer/types.go b/server/internal/plugins/filetransfer/types.go similarity index 100% rename from internal/plugins/filetransfer/types.go rename to server/internal/plugins/filetransfer/types.go diff --git a/internal/plugins/filetransfer/utils.go b/server/internal/plugins/filetransfer/utils.go similarity index 100% rename from internal/plugins/filetransfer/utils.go rename to server/internal/plugins/filetransfer/utils.go diff --git a/internal/plugins/manager.go b/server/internal/plugins/manager.go similarity index 100% rename from internal/plugins/manager.go rename to server/internal/plugins/manager.go diff --git a/internal/session/auth.go b/server/internal/session/auth.go similarity index 100% rename from internal/session/auth.go rename to server/internal/session/auth.go diff --git a/internal/session/manager.go b/server/internal/session/manager.go similarity index 100% rename from internal/session/manager.go rename to server/internal/session/manager.go diff --git a/internal/session/serialize.go b/server/internal/session/serialize.go similarity index 100% rename from internal/session/serialize.go rename to server/internal/session/serialize.go diff --git a/internal/session/session.go b/server/internal/session/session.go similarity index 100% rename from internal/session/session.go rename to server/internal/session/session.go diff --git a/internal/webrtc/cursor/image.go b/server/internal/webrtc/cursor/image.go similarity index 100% rename from internal/webrtc/cursor/image.go rename to server/internal/webrtc/cursor/image.go diff --git a/internal/webrtc/cursor/position.go b/server/internal/webrtc/cursor/position.go similarity index 100% rename from internal/webrtc/cursor/position.go rename to server/internal/webrtc/cursor/position.go diff --git a/internal/webrtc/handler.go b/server/internal/webrtc/handler.go similarity index 100% rename from internal/webrtc/handler.go rename to server/internal/webrtc/handler.go diff --git a/internal/webrtc/manager.go b/server/internal/webrtc/manager.go similarity index 100% rename from internal/webrtc/manager.go rename to server/internal/webrtc/manager.go diff --git a/internal/webrtc/metrics.go b/server/internal/webrtc/metrics.go similarity index 100% rename from internal/webrtc/metrics.go rename to server/internal/webrtc/metrics.go diff --git a/internal/webrtc/payload/receive.go b/server/internal/webrtc/payload/receive.go similarity index 100% rename from internal/webrtc/payload/receive.go rename to server/internal/webrtc/payload/receive.go diff --git a/internal/webrtc/payload/send.go b/server/internal/webrtc/payload/send.go similarity index 100% rename from internal/webrtc/payload/send.go rename to server/internal/webrtc/payload/send.go diff --git a/internal/webrtc/payload/types.go b/server/internal/webrtc/payload/types.go similarity index 100% rename from internal/webrtc/payload/types.go rename to server/internal/webrtc/payload/types.go diff --git a/internal/webrtc/peer.go b/server/internal/webrtc/peer.go similarity index 100% rename from internal/webrtc/peer.go rename to server/internal/webrtc/peer.go diff --git a/internal/webrtc/pionlog/factory.go b/server/internal/webrtc/pionlog/factory.go similarity index 100% rename from internal/webrtc/pionlog/factory.go rename to server/internal/webrtc/pionlog/factory.go diff --git a/internal/webrtc/pionlog/logger.go b/server/internal/webrtc/pionlog/logger.go similarity index 100% rename from internal/webrtc/pionlog/logger.go rename to server/internal/webrtc/pionlog/logger.go diff --git a/internal/webrtc/pionlog/nullog.go b/server/internal/webrtc/pionlog/nullog.go similarity index 100% rename from internal/webrtc/pionlog/nullog.go rename to server/internal/webrtc/pionlog/nullog.go diff --git a/internal/webrtc/track.go b/server/internal/webrtc/track.go similarity index 100% rename from internal/webrtc/track.go rename to server/internal/webrtc/track.go diff --git a/internal/websocket/filechooserdialog.go b/server/internal/websocket/filechooserdialog.go similarity index 100% rename from internal/websocket/filechooserdialog.go rename to server/internal/websocket/filechooserdialog.go diff --git a/internal/websocket/handler/clipboard.go b/server/internal/websocket/handler/clipboard.go similarity index 100% rename from internal/websocket/handler/clipboard.go rename to server/internal/websocket/handler/clipboard.go diff --git a/internal/websocket/handler/control.go b/server/internal/websocket/handler/control.go similarity index 100% rename from internal/websocket/handler/control.go rename to server/internal/websocket/handler/control.go diff --git a/internal/websocket/handler/handler.go b/server/internal/websocket/handler/handler.go similarity index 100% rename from internal/websocket/handler/handler.go rename to server/internal/websocket/handler/handler.go diff --git a/internal/websocket/handler/keyboard.go b/server/internal/websocket/handler/keyboard.go similarity index 100% rename from internal/websocket/handler/keyboard.go rename to server/internal/websocket/handler/keyboard.go diff --git a/internal/websocket/handler/screen.go b/server/internal/websocket/handler/screen.go similarity index 100% rename from internal/websocket/handler/screen.go rename to server/internal/websocket/handler/screen.go diff --git a/internal/websocket/handler/send.go b/server/internal/websocket/handler/send.go similarity index 100% rename from internal/websocket/handler/send.go rename to server/internal/websocket/handler/send.go diff --git a/internal/websocket/handler/session.go b/server/internal/websocket/handler/session.go similarity index 100% rename from internal/websocket/handler/session.go rename to server/internal/websocket/handler/session.go diff --git a/internal/websocket/handler/signal.go b/server/internal/websocket/handler/signal.go similarity index 100% rename from internal/websocket/handler/signal.go rename to server/internal/websocket/handler/signal.go diff --git a/internal/websocket/handler/system.go b/server/internal/websocket/handler/system.go similarity index 100% rename from internal/websocket/handler/system.go rename to server/internal/websocket/handler/system.go diff --git a/internal/websocket/manager.go b/server/internal/websocket/manager.go similarity index 100% rename from internal/websocket/manager.go rename to server/internal/websocket/manager.go diff --git a/internal/websocket/peer.go b/server/internal/websocket/peer.go similarity index 100% rename from internal/websocket/peer.go rename to server/internal/websocket/peer.go diff --git a/neko.go b/server/neko.go similarity index 100% rename from neko.go rename to server/neko.go diff --git a/openapi.yaml b/server/openapi.yaml similarity index 100% rename from openapi.yaml rename to server/openapi.yaml diff --git a/pkg/auth/auth.go b/server/pkg/auth/auth.go similarity index 100% rename from pkg/auth/auth.go rename to server/pkg/auth/auth.go diff --git a/pkg/auth/auth_test.go b/server/pkg/auth/auth_test.go similarity index 100% rename from pkg/auth/auth_test.go rename to server/pkg/auth/auth_test.go diff --git a/pkg/drop/drop.c b/server/pkg/drop/drop.c similarity index 100% rename from pkg/drop/drop.c rename to server/pkg/drop/drop.c diff --git a/pkg/drop/drop.go b/server/pkg/drop/drop.go similarity index 100% rename from pkg/drop/drop.go rename to server/pkg/drop/drop.go diff --git a/pkg/drop/drop.h b/server/pkg/drop/drop.h similarity index 100% rename from pkg/drop/drop.h rename to server/pkg/drop/drop.h diff --git a/pkg/gst/gst.c b/server/pkg/gst/gst.c similarity index 100% rename from pkg/gst/gst.c rename to server/pkg/gst/gst.c diff --git a/pkg/gst/gst.go b/server/pkg/gst/gst.go similarity index 100% rename from pkg/gst/gst.go rename to server/pkg/gst/gst.go diff --git a/pkg/gst/gst.h b/server/pkg/gst/gst.h similarity index 100% rename from pkg/gst/gst.h rename to server/pkg/gst/gst.h diff --git a/pkg/types/api.go b/server/pkg/types/api.go similarity index 100% rename from pkg/types/api.go rename to server/pkg/types/api.go diff --git a/pkg/types/capture.go b/server/pkg/types/capture.go similarity index 100% rename from pkg/types/capture.go rename to server/pkg/types/capture.go diff --git a/pkg/types/codec/codecs.go b/server/pkg/types/codec/codecs.go similarity index 100% rename from pkg/types/codec/codecs.go rename to server/pkg/types/codec/codecs.go diff --git a/pkg/types/desktop.go b/server/pkg/types/desktop.go similarity index 100% rename from pkg/types/desktop.go rename to server/pkg/types/desktop.go diff --git a/pkg/types/event/events.go b/server/pkg/types/event/events.go similarity index 100% rename from pkg/types/event/events.go rename to server/pkg/types/event/events.go diff --git a/pkg/types/http.go b/server/pkg/types/http.go similarity index 100% rename from pkg/types/http.go rename to server/pkg/types/http.go diff --git a/pkg/types/member.go b/server/pkg/types/member.go similarity index 100% rename from pkg/types/member.go rename to server/pkg/types/member.go diff --git a/pkg/types/message/messages.go b/server/pkg/types/message/messages.go similarity index 100% rename from pkg/types/message/messages.go rename to server/pkg/types/message/messages.go diff --git a/pkg/types/plugins.go b/server/pkg/types/plugins.go similarity index 100% rename from pkg/types/plugins.go rename to server/pkg/types/plugins.go diff --git a/pkg/types/session.go b/server/pkg/types/session.go similarity index 100% rename from pkg/types/session.go rename to server/pkg/types/session.go diff --git a/pkg/types/webrtc.go b/server/pkg/types/webrtc.go similarity index 100% rename from pkg/types/webrtc.go rename to server/pkg/types/webrtc.go diff --git a/pkg/types/websocket.go b/server/pkg/types/websocket.go similarity index 100% rename from pkg/types/websocket.go rename to server/pkg/types/websocket.go diff --git a/pkg/utils/array.go b/server/pkg/utils/array.go similarity index 100% rename from pkg/utils/array.go rename to server/pkg/utils/array.go diff --git a/pkg/utils/color.go b/server/pkg/utils/color.go similarity index 100% rename from pkg/utils/color.go rename to server/pkg/utils/color.go diff --git a/pkg/utils/deocde.go b/server/pkg/utils/deocde.go similarity index 100% rename from pkg/utils/deocde.go rename to server/pkg/utils/deocde.go diff --git a/pkg/utils/http.go b/server/pkg/utils/http.go similarity index 100% rename from pkg/utils/http.go rename to server/pkg/utils/http.go diff --git a/pkg/utils/image.go b/server/pkg/utils/image.go similarity index 100% rename from pkg/utils/image.go rename to server/pkg/utils/image.go diff --git a/pkg/utils/request.go b/server/pkg/utils/request.go similarity index 100% rename from pkg/utils/request.go rename to server/pkg/utils/request.go diff --git a/pkg/utils/trenddetector.go b/server/pkg/utils/trenddetector.go similarity index 100% rename from pkg/utils/trenddetector.go rename to server/pkg/utils/trenddetector.go diff --git a/pkg/utils/uid.go b/server/pkg/utils/uid.go similarity index 100% rename from pkg/utils/uid.go rename to server/pkg/utils/uid.go diff --git a/pkg/utils/zip.go b/server/pkg/utils/zip.go similarity index 100% rename from pkg/utils/zip.go rename to server/pkg/utils/zip.go diff --git a/pkg/xevent/xevent.c b/server/pkg/xevent/xevent.c similarity index 100% rename from pkg/xevent/xevent.c rename to server/pkg/xevent/xevent.c diff --git a/pkg/xevent/xevent.go b/server/pkg/xevent/xevent.go similarity index 100% rename from pkg/xevent/xevent.go rename to server/pkg/xevent/xevent.go diff --git a/pkg/xevent/xevent.h b/server/pkg/xevent/xevent.h similarity index 100% rename from pkg/xevent/xevent.h rename to server/pkg/xevent/xevent.h diff --git a/pkg/xinput/dummy.go b/server/pkg/xinput/dummy.go similarity index 100% rename from pkg/xinput/dummy.go rename to server/pkg/xinput/dummy.go diff --git a/pkg/xinput/types.go b/server/pkg/xinput/types.go similarity index 100% rename from pkg/xinput/types.go rename to server/pkg/xinput/types.go diff --git a/pkg/xinput/xinput.go b/server/pkg/xinput/xinput.go similarity index 100% rename from pkg/xinput/xinput.go rename to server/pkg/xinput/xinput.go diff --git a/pkg/xorg/keysymdef.go b/server/pkg/xorg/keysymdef.go similarity index 100% rename from pkg/xorg/keysymdef.go rename to server/pkg/xorg/keysymdef.go diff --git a/pkg/xorg/keysymdef.sh b/server/pkg/xorg/keysymdef.sh similarity index 100% rename from pkg/xorg/keysymdef.sh rename to server/pkg/xorg/keysymdef.sh diff --git a/pkg/xorg/xorg.c b/server/pkg/xorg/xorg.c similarity index 100% rename from pkg/xorg/xorg.c rename to server/pkg/xorg/xorg.c diff --git a/pkg/xorg/xorg.go b/server/pkg/xorg/xorg.go similarity index 100% rename from pkg/xorg/xorg.go rename to server/pkg/xorg/xorg.go diff --git a/pkg/xorg/xorg.h b/server/pkg/xorg/xorg.h similarity index 100% rename from pkg/xorg/xorg.h rename to server/pkg/xorg/xorg.h diff --git a/plugins/.gitkeep b/server/plugins/.gitkeep similarity index 100% rename from plugins/.gitkeep rename to server/plugins/.gitkeep diff --git a/runtime/.Xresources b/server/runtime/.Xresources similarity index 100% rename from runtime/.Xresources rename to server/runtime/.Xresources diff --git a/runtime/dbus b/server/runtime/dbus similarity index 100% rename from runtime/dbus rename to server/runtime/dbus diff --git a/runtime/default.pa b/server/runtime/default.pa similarity index 100% rename from runtime/default.pa rename to server/runtime/default.pa diff --git a/runtime/fontconfig/75-emoji.conf b/server/runtime/fontconfig/75-emoji.conf similarity index 100% rename from runtime/fontconfig/75-emoji.conf rename to server/runtime/fontconfig/75-emoji.conf diff --git a/runtime/fonts/.gitkeep b/server/runtime/fonts/.gitkeep similarity index 100% rename from runtime/fonts/.gitkeep rename to server/runtime/fonts/.gitkeep diff --git a/runtime/icon-theme/.gitkeep b/server/runtime/icon-theme/.gitkeep similarity index 100% rename from runtime/icon-theme/.gitkeep rename to server/runtime/icon-theme/.gitkeep diff --git a/runtime/supervisord.conf b/server/runtime/supervisord.conf similarity index 100% rename from runtime/supervisord.conf rename to server/runtime/supervisord.conf diff --git a/runtime/supervisord.dbus.conf b/server/runtime/supervisord.dbus.conf similarity index 100% rename from runtime/supervisord.dbus.conf rename to server/runtime/supervisord.dbus.conf diff --git a/runtime/xorg.conf b/server/runtime/xorg.conf similarity index 100% rename from runtime/xorg.conf rename to server/runtime/xorg.conf diff --git a/xorg/xf86-input-neko/.gitignore b/server/xorg/xf86-input-neko/.gitignore similarity index 100% rename from xorg/xf86-input-neko/.gitignore rename to server/xorg/xf86-input-neko/.gitignore diff --git a/xorg/xf86-input-neko/80-neko.conf b/server/xorg/xf86-input-neko/80-neko.conf similarity index 100% rename from xorg/xf86-input-neko/80-neko.conf rename to server/xorg/xf86-input-neko/80-neko.conf diff --git a/xorg/xf86-input-neko/COPYING b/server/xorg/xf86-input-neko/COPYING similarity index 100% rename from xorg/xf86-input-neko/COPYING rename to server/xorg/xf86-input-neko/COPYING diff --git a/xorg/xf86-input-neko/Dockerfile b/server/xorg/xf86-input-neko/Dockerfile similarity index 100% rename from xorg/xf86-input-neko/Dockerfile rename to server/xorg/xf86-input-neko/Dockerfile diff --git a/xorg/xf86-input-neko/Makefile.am b/server/xorg/xf86-input-neko/Makefile.am similarity index 100% rename from xorg/xf86-input-neko/Makefile.am rename to server/xorg/xf86-input-neko/Makefile.am diff --git a/xorg/xf86-input-neko/README.md b/server/xorg/xf86-input-neko/README.md similarity index 100% rename from xorg/xf86-input-neko/README.md rename to server/xorg/xf86-input-neko/README.md diff --git a/xorg/xf86-input-neko/autogen-clean.sh b/server/xorg/xf86-input-neko/autogen-clean.sh similarity index 100% rename from xorg/xf86-input-neko/autogen-clean.sh rename to server/xorg/xf86-input-neko/autogen-clean.sh diff --git a/xorg/xf86-input-neko/autogen.sh b/server/xorg/xf86-input-neko/autogen.sh similarity index 100% rename from xorg/xf86-input-neko/autogen.sh rename to server/xorg/xf86-input-neko/autogen.sh diff --git a/xorg/xf86-input-neko/configure.ac b/server/xorg/xf86-input-neko/configure.ac similarity index 100% rename from xorg/xf86-input-neko/configure.ac rename to server/xorg/xf86-input-neko/configure.ac diff --git a/xorg/xf86-input-neko/m4/.gitkeep b/server/xorg/xf86-input-neko/m4/.gitkeep similarity index 100% rename from xorg/xf86-input-neko/m4/.gitkeep rename to server/xorg/xf86-input-neko/m4/.gitkeep diff --git a/xorg/xf86-input-neko/release.sh b/server/xorg/xf86-input-neko/release.sh similarity index 100% rename from xorg/xf86-input-neko/release.sh rename to server/xorg/xf86-input-neko/release.sh diff --git a/xorg/xf86-input-neko/src/Makefile.am b/server/xorg/xf86-input-neko/src/Makefile.am similarity index 100% rename from xorg/xf86-input-neko/src/Makefile.am rename to server/xorg/xf86-input-neko/src/Makefile.am diff --git a/xorg/xf86-input-neko/src/neko.c b/server/xorg/xf86-input-neko/src/neko.c similarity index 100% rename from xorg/xf86-input-neko/src/neko.c rename to server/xorg/xf86-input-neko/src/neko.c diff --git a/xorg/xf86-input-neko/xorg-neko.pc.in b/server/xorg/xf86-input-neko/xorg-neko.pc.in similarity index 100% rename from xorg/xf86-input-neko/xorg-neko.pc.in rename to server/xorg/xf86-input-neko/xorg-neko.pc.in diff --git a/xorg/xf86-video-dummy/01_v0.3.8_xdummy-randr.patch b/server/xorg/xf86-video-dummy/01_v0.3.8_xdummy-randr.patch similarity index 100% rename from xorg/xf86-video-dummy/01_v0.3.8_xdummy-randr.patch rename to server/xorg/xf86-video-dummy/01_v0.3.8_xdummy-randr.patch diff --git a/xorg/xf86-video-dummy/README.md b/server/xorg/xf86-video-dummy/README.md similarity index 100% rename from xorg/xf86-video-dummy/README.md rename to server/xorg/xf86-video-dummy/README.md diff --git a/xorg/xf86-video-dummy/v0.3.8/COPYING b/server/xorg/xf86-video-dummy/v0.3.8/COPYING similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/COPYING rename to server/xorg/xf86-video-dummy/v0.3.8/COPYING diff --git a/xorg/xf86-video-dummy/v0.3.8/ChangeLog b/server/xorg/xf86-video-dummy/v0.3.8/ChangeLog similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/ChangeLog rename to server/xorg/xf86-video-dummy/v0.3.8/ChangeLog diff --git a/xorg/xf86-video-dummy/v0.3.8/Makefile.am b/server/xorg/xf86-video-dummy/v0.3.8/Makefile.am similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/Makefile.am rename to server/xorg/xf86-video-dummy/v0.3.8/Makefile.am diff --git a/xorg/xf86-video-dummy/v0.3.8/Makefile.in b/server/xorg/xf86-video-dummy/v0.3.8/Makefile.in similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/Makefile.in rename to server/xorg/xf86-video-dummy/v0.3.8/Makefile.in diff --git a/xorg/xf86-video-dummy/v0.3.8/README b/server/xorg/xf86-video-dummy/v0.3.8/README similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/README rename to server/xorg/xf86-video-dummy/v0.3.8/README diff --git a/xorg/xf86-video-dummy/v0.3.8/aclocal.m4 b/server/xorg/xf86-video-dummy/v0.3.8/aclocal.m4 similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/aclocal.m4 rename to server/xorg/xf86-video-dummy/v0.3.8/aclocal.m4 diff --git a/xorg/xf86-video-dummy/v0.3.8/compile b/server/xorg/xf86-video-dummy/v0.3.8/compile similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/compile rename to server/xorg/xf86-video-dummy/v0.3.8/compile diff --git a/xorg/xf86-video-dummy/v0.3.8/config.guess b/server/xorg/xf86-video-dummy/v0.3.8/config.guess similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/config.guess rename to server/xorg/xf86-video-dummy/v0.3.8/config.guess diff --git a/xorg/xf86-video-dummy/v0.3.8/config.h.in b/server/xorg/xf86-video-dummy/v0.3.8/config.h.in similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/config.h.in rename to server/xorg/xf86-video-dummy/v0.3.8/config.h.in diff --git a/xorg/xf86-video-dummy/v0.3.8/config.sub b/server/xorg/xf86-video-dummy/v0.3.8/config.sub similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/config.sub rename to server/xorg/xf86-video-dummy/v0.3.8/config.sub diff --git a/xorg/xf86-video-dummy/v0.3.8/configure b/server/xorg/xf86-video-dummy/v0.3.8/configure similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/configure rename to server/xorg/xf86-video-dummy/v0.3.8/configure diff --git a/xorg/xf86-video-dummy/v0.3.8/configure.ac b/server/xorg/xf86-video-dummy/v0.3.8/configure.ac similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/configure.ac rename to server/xorg/xf86-video-dummy/v0.3.8/configure.ac diff --git a/xorg/xf86-video-dummy/v0.3.8/depcomp b/server/xorg/xf86-video-dummy/v0.3.8/depcomp similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/depcomp rename to server/xorg/xf86-video-dummy/v0.3.8/depcomp diff --git a/xorg/xf86-video-dummy/v0.3.8/install-sh b/server/xorg/xf86-video-dummy/v0.3.8/install-sh similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/install-sh rename to server/xorg/xf86-video-dummy/v0.3.8/install-sh diff --git a/xorg/xf86-video-dummy/v0.3.8/ltmain.sh b/server/xorg/xf86-video-dummy/v0.3.8/ltmain.sh similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/ltmain.sh rename to server/xorg/xf86-video-dummy/v0.3.8/ltmain.sh diff --git a/xorg/xf86-video-dummy/v0.3.8/missing b/server/xorg/xf86-video-dummy/v0.3.8/missing similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/missing rename to server/xorg/xf86-video-dummy/v0.3.8/missing diff --git a/xorg/xf86-video-dummy/v0.3.8/src/Makefile.am b/server/xorg/xf86-video-dummy/v0.3.8/src/Makefile.am similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/src/Makefile.am rename to server/xorg/xf86-video-dummy/v0.3.8/src/Makefile.am diff --git a/xorg/xf86-video-dummy/v0.3.8/src/Makefile.in b/server/xorg/xf86-video-dummy/v0.3.8/src/Makefile.in similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/src/Makefile.in rename to server/xorg/xf86-video-dummy/v0.3.8/src/Makefile.in diff --git a/xorg/xf86-video-dummy/v0.3.8/src/compat-api.h b/server/xorg/xf86-video-dummy/v0.3.8/src/compat-api.h similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/src/compat-api.h rename to server/xorg/xf86-video-dummy/v0.3.8/src/compat-api.h diff --git a/xorg/xf86-video-dummy/v0.3.8/src/dummy.h b/server/xorg/xf86-video-dummy/v0.3.8/src/dummy.h similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/src/dummy.h rename to server/xorg/xf86-video-dummy/v0.3.8/src/dummy.h diff --git a/xorg/xf86-video-dummy/v0.3.8/src/dummy_cursor.c b/server/xorg/xf86-video-dummy/v0.3.8/src/dummy_cursor.c similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/src/dummy_cursor.c rename to server/xorg/xf86-video-dummy/v0.3.8/src/dummy_cursor.c diff --git a/xorg/xf86-video-dummy/v0.3.8/src/dummy_dga.c b/server/xorg/xf86-video-dummy/v0.3.8/src/dummy_dga.c similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/src/dummy_dga.c rename to server/xorg/xf86-video-dummy/v0.3.8/src/dummy_dga.c diff --git a/xorg/xf86-video-dummy/v0.3.8/src/dummy_driver.c b/server/xorg/xf86-video-dummy/v0.3.8/src/dummy_driver.c similarity index 100% rename from xorg/xf86-video-dummy/v0.3.8/src/dummy_driver.c rename to server/xorg/xf86-video-dummy/v0.3.8/src/dummy_driver.c