Environment
- Version: Kali 2024.4 with code-oss (1.101.1+ds+really1.99.3-0kali1) installed
- Desktop: XFCE
- Host OS: Windows 11
- Hypervisor: VMware Workstation Pro 25H2
Summary
Launchers
Code-OSS launchers are missing after install in:
- /usr/share/applications/code.desktop
- /usr/share/applications/code-url-handler.desktop
- /usr/share/kali-menu/applications/code.desktop
- /usr/share/kali-menu/applications/code-url-handler.desktop
Panel Icon
Code-OSS missing icon in XFCE's panel:
- /usr/lib/code-oss/resources/app/resources/linux/code.png
Libnode Errors
Code-OSS seems working, but Kali Rolling uses libnode127 (/usr/lib/x86_64-linux-gnu/libnode.so.127), also multiple errors on 'code-oss' command output related to missing libnode.so.115 shared library:
[main 2026-01-11T15:36:04.638Z] [uncaught exception in main]: Error: libnode.so.115: cannot open shared object file: No such file or directory
[main 2026-01-11T15:36:04.638Z] Error: libnode.so.115: cannot open shared object file: No such file or directory
at process.func [as dlopen] (node:electron/js2c/node_init:2:2559)
at Module._extensions..node (node:internal/modules/cjs/loader:1602:18)
at Object.func [as .node] (node:electron/js2c/node_init:2:2559)
at Module.load (node:internal/modules/cjs/loader:1295:32)
at Module._load (node:internal/modules/cjs/loader:1111:12)
at c._load (node:electron/js2c/node_init:2:16955)
at Module.require (node:internal/modules/cjs/loader:1318:19)
at require (node:internal/modules/helpers:179:18)
at Object.<anonymous> (/usr/lib/code-oss/resources/app/node_modules/@vscode/sqlite3/lib/sqlite3-binding.js:4:17)
at Module._compile (node:internal/modules/cjs/loader:1484:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1564:10)
at Module.load (node:internal/modules/cjs/loader:1295:32)
at Module._load (node:internal/modules/cjs/loader:1111:12)
at c._load (node:electron/js2c/node_init:2:16955)
at Module.require (node:internal/modules/cjs/loader:1318:19)
at require (node:internal/modules/helpers:179:18)
at Object.<anonymous> (/usr/lib/code-oss/resources/app/node_modules/@vscode/sqlite3/lib/sqlite3.js:2:17)
at Module._compile (node:internal/modules/cjs/loader:1484:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1564:10)
at Module.load (node:internal/modules/cjs/loader:1295:32)
at Module._load (node:internal/modules/cjs/loader:1111:12)
at c._load (node:electron/js2c/node_init:2:16955)
at cjsLoader (node:internal/modules/esm/translators:350:17)
at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:286:7)
at ModuleJob.run (node:internal/modules/esm/module_job:234:25)
at async ModuleLoader.import (node:internal/modules/esm/loader:473:24)
-> Maybe the 'code-oss' sources needs an update to uses the correct shared library.
Workaround
Partial workaround based on https://gitlab.com/kalilinux/packages/code-oss source code repository.
Launchers
Create 'code.desktop' launcher
As 'root' create the '/usr/share/applications/code.desktop':
cat << EOF > /usr/share/applications/code.desktop
[Desktop Entry]
Name=Code - OSS
Comment=Code Editing. Redefined.
GenericName=Text Editor
Exec=/usr/lib/code-oss/code-oss %F
Icon=code-oss
Type=Application
StartupNotify=false
StartupWMClass=Code - OSS
Categories=TextEditor;Development;IDE;
X-Kali-Package=code-oss
MimeType=application/x-code-oss-workspace;
Actions=new-empty-window;
Keywords=vscode;
[Desktop Action new-empty-window]
Name=New Empty Window
Name[cs]=Nové prázdné okno
Name[de]=Neues leeres Fenster
Name[es]=Nueva ventana vacía
Name[fr]=Nouvelle fenêtre vide
Name[it]=Nuova finestra vuota
Name[ja]=新しい空のウィンドウ
Name[ko]=새 빈 창
Name[ru]=Новое пустое окно
Name[zh_CN]=新建空窗口
Name[zh_TW]=開新空視窗
Exec=/usr/lib/code-oss/code-oss --new-window %F
Icon=code-oss
EOF
Create 'code-url-handler.desktop' launcher
As 'root' create the '/usr/share/applications/code-url-handler.desktop':
cat << EOF > /usr/share/applications/code-url-handler.desktop
[Desktop Entry]
Name=Code - OSS - URL Handler
Comment=Code Editing. Redefined.
GenericName=Text Editor
Exec=/usr/lib/code-oss/code-oss --open-url %U
Icon=code-oss
Type=Application
NoDisplay=true
StartupNotify=true
Categories=Utility;TextEditor;Development;IDE;
X-Kali-Package=code-oss
MimeType=x-scheme-handler/http;x-scheme-handler/https;
Keywords=vscode;
EOF
Copy new launchers to 'update-kali-menu' directory
cp /usr/share/applications/code.desktop /usr/share/kali-menu/applications
cp /usr/share/applications/code-url-handler.desktop /usr/share/kali-menu/applications
Panel Icon
Create the missing directory structure, and download 'code.png' file from VSCode repository:
mkdir -p /usr/lib/code-oss/resources/app/resources/linux
wget -O /usr/lib/code-oss/resources/app/resources/linux/code.png https://raw.githubusercontent.com/microsoft/vscode/refs/heads/main/resources/linux/code.png |