code-server
code-server を知ってからあまりたたないうちに VS Code の remote development 機能が発表されて、こちらも段階になったので、code-server を使うことは今後ない.. かも。 ビルドに必要そうなもの
README の Contribution の節が「comming soon」になっていてまともなドキュメントがなさそうなので、Dockerfile を見ながら適当にビルドしてみる。 yarn && NODE_ENV=production yarn task build:server:binary でバイナリが生えてきそう🌱
code:plain
16:25:00mozamimy@ip-10-33-182-196:code-server (1.939-vsc1.33.1) (-'x'-).oO( (cmd)> yarn && NODE_ENV=production yarn task build:server:binary
yarn install v1.15.2
1/4 Resolving packages... info fsevents@1.2.4: The platform "linux" is incompatible with this module.
info "fsevents@1.2.4" is an optional dependency and failed compatibility check. Excluding it from installation.
3/4 Linking dependencies... 4/4 Building fresh packages... $ npm-run-all --parallel packages:install build:rules
yarn run v1.15.2
yarn run v1.15.2
$ cd ./packages && yarn
$ cd ./rules && tsc -p .
warning package.json: No license field
warning No license field
1/4 Resolving packages... info fsevents@1.2.4: The platform "linux" is incompatible with this module.
info "fsevents@1.2.4" is an optional dependency and failed compatibility check. Excluding it from installation.
3/4 Linking dependencies... Done in 4.86s.
4/4 Building fresh packages... $ ../node_modules/.bin/ts-node ../scripts/install-packages.ts
INFO Installing "disposable" dependencies...
INFO Successfully grabbed "disposable" dependencies!
INFO Installing "dns" dependencies...
INFO Successfully grabbed "dns" dependencies!
INFO Installing "events" dependencies...
INFO Successfully grabbed "events" dependencies!
INFO Installing "ide" dependencies...
INFO Successfully grabbed "ide" dependencies!
INFO Installing "ide-api" dependencies...
INFO Successfully grabbed "ide-api" dependencies!
INFO Installing "logger" dependencies...
ERROR Failed to install "logger" dependencies {"error":{"killed":false,"code":127,"signal":null,"cmd":"yarn --network-concurrency 1"},"stdout":"1/4 Resolving packages...\n2/4 Fetching packages...\n3/4 Linking dependencies...\n4/4 Building fresh packages...\n$ if ! -d out ;then npm run build; fi\ninfo Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.\n","stderr":"warning ../package.json: No license field\n/bin/sh: npm: command not found\nerror Command failed with exit code 127.\n"} error Command failed with exit code 1.
error Command failed with exit code 1.
ERROR: "packages:install" exited with 1.
error Command failed with exit code 1.
ビルドはできて起動したものの、どうやら以下のようなエラーがログに出ていて、拡張が機能しない。
code:plain
WARN stderr {"data":"Error: The module '/home/mozamimy/var/repo/private/code-server/node_modules/spdlog/build/Release/spdlog.node'\nwas compiled against a different Node.js version using\nNODE_MODULE_VERSION 67. This version of Node.js requires\nNODE_MODULE_VERSION 64. Please try re-compiling or re-installing\nthe module (for instance, using npm rebuild or npm install).\n at Object.Module._extensions..node (internal/modules/cjs/loader.js:754:18)\n at Module.load (internal/modules/cjs/loader.js:611:32)\n at tryModuleLoad (internal/modules/cjs/loader.js:550:12)\n at Function.Module._load (internal/modules/cjs/loader.js:542:3)\n at Module.require (internal/modules/cjs/loader.js:649:17)\n at require (internal/modules/cjs/helpers.js:22:18)\n at bindings (/home/mozamimy/var/repo/private/code-server/node_modules/bindings/bindings.js:81:44)\n at Object.<anonymous> (/home/mozamimy/var/repo/private/code-server/node_modules/spdlog/index.js:3:35)\n at Module._compile (internal/modules/cjs/loader.js:701:30)\n at Object.Module._extensions..js (internal/modules/cjs/loader.js:717:10)\n at Module.load (internal/modules/cjs/loader.js:611:32)\n at tryModuleLoad (internal/modules/cjs/loader.js:550:12)\n at Function.Module._load (internal/modules/cjs/loader.js:542:3)\n at Module.require (internal/modules/cjs/loader.js:649:17)\n at require (internal/modules/cjs/helpers.js:22:18)\n at Object.spdlog (/home/mozamimy/var/repo/private/code-server/packages/server/build/bootstrap-fork.js.gz:283462:18)\n at __webpack_require__ (/home/mozamimy/var/repo/private/code-server/packages/server/build/bootstrap-fork.js.gz:26:30)\n at Object.createSpdLogService (/home/mozamimy/var/repo/private/code-server/packages/server/build/bootstrap-fork.js.gz:149841:29)\n at main (/home/mozamimy/var/repo/private/code-server/packages/server/build/bootstrap-fork.js.gz:68886:92)\n at /home/mozamimy/var/repo/private/code-server/packages/server/build/bootstrap-fork.js.gz:68989:13\n at Generator.next (<anonymous>)\n at fulfilled (/home/mozamimy/var/repo/private/code-server/packages/server/build/bootstrap-fork.js.gz:68842:58)\n at process._tickCallback (internal/process/next_tick.js:68:7)\n"}
と、ここまでやって、最近 preview で出た VS Code の remote development でやるのが一番楽そうだと気づいたので、いったん保留。