From a2f450b37432ce43ebde75f2ea611085118e457c Mon Sep 17 00:00:00 2001 From: Elijah R Date: Tue, 25 Jun 2024 21:24:08 -0400 Subject: [PATCH] move binprotocol to submodule (server) --- .gitmodules | 3 +++ Justfile | 1 + collab-vm-1.2-binary-protocol | 1 + cvmts/src/CollabVMServer.ts | 2 +- cvmts/src/User.ts | 2 +- cvmts/src/protocol/CollabVMCapabilities.ts | 8 -------- cvmts/src/protocol/CollabVMProtocolMessage.ts | 11 ----------- cvmts/src/protocol/CollabVMRectMessage.ts | 5 ----- package.json | 3 ++- yarn.lock | 11 +++++++++++ 10 files changed, 20 insertions(+), 27 deletions(-) create mode 160000 collab-vm-1.2-binary-protocol delete mode 100644 cvmts/src/protocol/CollabVMCapabilities.ts delete mode 100644 cvmts/src/protocol/CollabVMProtocolMessage.ts delete mode 100644 cvmts/src/protocol/CollabVMRectMessage.ts diff --git a/.gitmodules b/.gitmodules index 24e582d..08a9b15 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "nodejs-rfb"] path = nodejs-rfb url = https://github.com/computernewb/nodejs-rfb +[submodule "collab-vm-1.2-binary-protocol"] + path = collab-vm-1.2-binary-protocol + url = https://github.com/computernewb/collab-vm-1.2-binary-protocol diff --git a/Justfile b/Justfile index 53bef25..fe019e4 100644 --- a/Justfile +++ b/Justfile @@ -3,6 +3,7 @@ all: yarn workspace @computernewb/nodejs-rfb run build yarn workspace @cvmts/shared run build yarn workspace @cvmts/qemu run build + yarn workspace @cvmts/collab-vm-1.2-binary-protocol run build yarn workspace @cvmts/cvmts run build pkg: diff --git a/collab-vm-1.2-binary-protocol b/collab-vm-1.2-binary-protocol new file mode 160000 index 0000000..cfe9acc --- /dev/null +++ b/collab-vm-1.2-binary-protocol @@ -0,0 +1 @@ +Subproject commit cfe9acc60b87ab26cf8612398c734c8caad426b8 diff --git a/cvmts/src/CollabVMServer.ts b/cvmts/src/CollabVMServer.ts index b9f832e..4e5f21f 100644 --- a/cvmts/src/CollabVMServer.ts +++ b/cvmts/src/CollabVMServer.ts @@ -16,7 +16,7 @@ import { JPEGEncoder } from './JPEGEncoder.js'; import VM from './VM.js'; import { ReaderModel } from '@maxmind/geoip2-node'; import * as msgpack from 'msgpackr'; -import { CollabVMProtocolMessage, CollabVMProtocolMessageType } from './protocol/CollabVMProtocolMessage.js'; +import { CollabVMProtocolMessage, CollabVMProtocolMessageType } from '@cvmts/collab-vm-1.2-binary-protocol'; // Instead of strange hacks we can just use nodejs provided // import.meta properties, which have existed since LTS if not before diff --git a/cvmts/src/User.ts b/cvmts/src/User.ts index 1590f2e..040d74e 100644 --- a/cvmts/src/User.ts +++ b/cvmts/src/User.ts @@ -6,7 +6,7 @@ import RateLimiter from './RateLimiter.js'; import { execa, execaCommand, ExecaSyncError } from 'execa'; import { Logger } from '@cvmts/shared'; import NetworkClient from './NetworkClient.js'; -import CollabVMCapabilities from './protocol/CollabVMCapabilities.js'; +import { CollabVMCapabilities } from '@cvmts/collab-vm-1.2-binary-protocol'; export class User { socket: NetworkClient; diff --git a/cvmts/src/protocol/CollabVMCapabilities.ts b/cvmts/src/protocol/CollabVMCapabilities.ts deleted file mode 100644 index c94106f..0000000 --- a/cvmts/src/protocol/CollabVMCapabilities.ts +++ /dev/null @@ -1,8 +0,0 @@ -export default class CollabVMCapabilities { - // Support for JPEG screen rects in binary msgpack format - bin: boolean; - - constructor() { - this.bin = false; - } -} \ No newline at end of file diff --git a/cvmts/src/protocol/CollabVMProtocolMessage.ts b/cvmts/src/protocol/CollabVMProtocolMessage.ts deleted file mode 100644 index 544a7e7..0000000 --- a/cvmts/src/protocol/CollabVMProtocolMessage.ts +++ /dev/null @@ -1,11 +0,0 @@ -import CollabVMRectMessage from "./CollabVMRectMessage.js"; - -export interface CollabVMProtocolMessage { - type: CollabVMProtocolMessageType; - rect?: CollabVMRectMessage | undefined; -} - -export enum CollabVMProtocolMessageType { - // JPEG Dirty Rectangle - rect = 0, -} \ No newline at end of file diff --git a/cvmts/src/protocol/CollabVMRectMessage.ts b/cvmts/src/protocol/CollabVMRectMessage.ts deleted file mode 100644 index f2a8668..0000000 --- a/cvmts/src/protocol/CollabVMRectMessage.ts +++ /dev/null @@ -1,5 +0,0 @@ -export default interface CollabVMRectMessage { - x: number; - y: number; - data: Uint8Array; -} \ No newline at end of file diff --git a/package.json b/package.json index 63a02be..2d2e53e 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "cvm-rs", "nodejs-rfb", "qemu", - "cvmts" + "cvmts", + "collab-vm-1.2-binary-protocol" ], "devDependencies": { "@parcel/packager-ts": "2.12.0", diff --git a/yarn.lock b/yarn.lock index 6df216a..63d43bd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -47,6 +47,17 @@ __metadata: languageName: unknown linkType: soft +"@cvmts/collab-vm-1.2-binary-protocol@workspace:collab-vm-1.2-binary-protocol": + version: 0.0.0-use.local + resolution: "@cvmts/collab-vm-1.2-binary-protocol@workspace:collab-vm-1.2-binary-protocol" + dependencies: + "@parcel/packager-ts": "npm:2.12.0" + "@parcel/transformer-typescript-types": "npm:2.12.0" + parcel: "npm:^2.12.0" + typescript: "npm:>=3.0.0" + languageName: unknown + linkType: soft + "@cvmts/cvm-rs@npm:*, @cvmts/cvm-rs@workspace:cvm-rs": version: 0.0.0-use.local resolution: "@cvmts/cvm-rs@workspace:cvm-rs"