Answers two things: how to install these without a marketplace, and how to keep settings in sync when VS Code's Settings Sync cannot be pointed at Gitea. - build.ps1 packages each extension into dist/ - publish.ps1 creates a release and uploads them, replacing same-named assets so a rolling "latest" tag stays clean - install.ps1 downloads a release's assets and installs them, or -Local from dist/ - settings.ps1 copies User/ between the repo and the machine, and installs the marketplace extensions recorded in extensions.txt - dev-link.ps1 junctions the sources into ~/.vscode/extensions for development - ci-release.sh plus a Gitea Actions workflow do the build and publish on a tag push Settings are copied, not symlinked: an atomic save replaces a symlink with a regular file and the sync stops without looking broken. vsce/ pins vsce and undici so packaging works on Node 18, which current vsce does not support. test/run.ps1 drives the real scripts against a stub of the Gitea release API. It caught the multipart Content-Disposition being unquoted on .NET Framework, and Invoke-WebRequest dropping the Authorization header across a redirect.
13 lines
276 B
JSON
13 lines
276 B
JSON
{
|
|
"name": "vsce-host",
|
|
"private": true,
|
|
"version": "1.0.0",
|
|
"description": "Pins vsce to a version that runs on Node 18. See ../README.md.",
|
|
"devDependencies": {
|
|
"@vscode/vsce": "2.32.0"
|
|
},
|
|
"overrides": {
|
|
"undici": "6.21.3"
|
|
}
|
|
}
|