VS Code is a type of tool that combines the simplicity of a code
editor with what developers need for their core edit-build-debug
cycle. It provides comprehensive editing and debugging support, an
extensibility model, and lightweight integration with existing tools.
Remote development over ssh:
If you want to use remote development over ssh, install "Open Remote -
SSH" extension.
It can be installed from the Extensions view in code-oss[1].
Alternatively, you can download the extension from the Open VSX
Registry[2].
After installation of the extension, restart code-oss and it should
work out of the box. Please note that the remote extension host will
be downloaded from the following URL[3] to the remote host upon first
connection from the local host.
Supported combination of local and remote hosts is as follows:
Local Remote
--------------- ---------------
FreeBSD amd64 FreeBSD amd64
FreeBSD aarch64 FreeBSD aarch64
Linux x86_64
Linux arm64
The remote extension host is actually a Node.js-based server and make
it sure that you have dependency packages installed when the remote
host is FreeBSD.
You can check which packages are necessary on the remote host at
FreshPorts[4]. (Install library and runtime dependencies) In addition,
you have to install misc/compat14x package if the remote host is
FreeBSD 15 or later. The remote extension host has been built on
FreeBSD 14 for compatibility reasons.
[1] https://code.visualstudio.com/docs/getstarted/extensions#_install-a-vs-code-extension
[2] https://open-vsx.org/extension/jeanp413/open-remote-ssh
[3] https://github.com/tagattie/FreeBSD-VSCode/releases
[4] https://www.freshports.org/www/node24/
editors/vscode: Update to 1.142.0 and attempt to add support for aarch64
Support for aarch64, both VSCode editor (client) and remote extension
host (server), are added with this commit.
While here, make the following additional changes:
- update product.json for popular extensions [1]
- respect MAKE_JOBS_NUMBER when rebuilding native node modules
- return to use minified build for remote extension host
Acknowledgments: I utilized a reference instance (ref15-aarch64)
extensively while I prepared to add support for aarch64. I would like
to thank clusteradm@ for keeping reference instances in good shape.
Changelog: https://code.visualstudio.com/updates/v1_142
Reported by: GitHub (watch releases)
Obtained
from: https://github.com/VSCodium/vscodium/blob/1.140.06880/product.json [1]
editors/vscode: Add one missing patch to fix build error with clang 21
This should have been included in 3666da5f42ad.
PR: 296164
Reported by: Robert Cina <transitive@gmail.com>
Tested by: Robert Cina <transitive@gmail.com>
Fixes: 3666da5f42ad (editors/vscode: Add patches to fix build error of
keytar node module with clang 21)
editors/vscode: Update to 1.124.2
While here, remove obsolete target for building remote extension
host. Those who want to build remote extension host can now use
`make -f Makefile.reh build` instead.
Changelog: https://code.visualstudio.com/updates/v1_124
Reported by: GitHub (watch releases)
editors/vscode: Add patches to fix build error of keytar node module with clang
21
The error in question was:
CXX(target) Release/obj.target/keytar/src/async.o
In file included from ../src/async.cc:4:
../node_modules/node-addon-api/napi.h:1147:39: error: in-class initializer for
static data member is not a constant expression
1147 | static const napi_typedarray_type unknown_array_type =
static_cast<napi_typedarray_type>(-1);
| ^
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/node-addon-api/napi.h:1147:60: note: integer value -1 is outside
the valid range of values [0, 15] for the enumeration type
'napi_typedarray_type'
1147 | static const napi_typedarray_type unknown_array_type =
static_cast<napi_typedarray_type>(-1);
| ^
1 error generated.
PR: 295862
Reported by: Alexey Shuvaev <bugsbeastie@gmail.com>
editors/vscode: Update to 1.121.0
While here, update pkg-message for better describing the latest status
of remote development over ssh extension.
Changelog: https://code.visualstudio.com/updates/v1_121
Reported by: GitHub (watch releases)
editors/vscode: Fix pkg-plist
The string "311" has been inadvertently substituted with
%%PYTHON_SUFFIX%% by `make makeplist`.
That has caused an error in the package phase for users using
non-default python versions (e.g. 3.12).
PR: 294660
Reported by: Dean E. Weimer <dweimer@dweimer.net>
Tested by: Dean E. Weimer <dweimer@dweimer.net>
editors/vscode: Update to 1.108.0
While here, convert to use USES=electron and adjust Makefiles
accordingly.
Changelog: https://code.visualstudio.com/updates/v1_108
Reported by: GitHub (watch releases)
editors/vscode: Update to 1.107.0
This update features hassle-free remote development over ssh.
Prior to this update, users who want to use remote development over
ssh needs to take some manual steps for setting up environment. From
now on, just installing "Open Remote - SSH" extension should be
enough. For more details, follow the instruction shown upon package
installation.
Additional changes to the port include:
- split out target for building remote extension host to Makefile.reh
to avoid excessive dependencies
- populate product.json with useful information mainly for making
popular extensions work out of the box[1]
Changelog: https://code.visualstudio.com/updates/v1_107
Reported by: GitHub (watch releases)
Obtained from: https://github.com/VSCodium/vscodium [1]
editors/vscode: update to 1.105.0
While here, add USES=display:test for launching and stopping Xvfb for
test.
Changelog: https://code.visualstudio.com/updates/v1_105
Reported by: GitHub (watch releases)