vscode: fix source name

This commit fixes various long standing issues with the handling of
executable names in the source archive. Depending on whether you install
code or codium the executables are named differently. This commit let's
us customize the source exe name in the generic VSCode derivation, but
keeps the generated executableName intact.
This commit is contained in:
Florian Beeres 2021-06-24 08:45:06 +02:00
parent 955df801e8
commit 92f9f2fe11
2 changed files with 6 additions and 2 deletions

View File

@ -10,6 +10,9 @@
# Attributes inherit from specific versions
, version, src, meta, sourceRoot
, executableName, longName, shortName, pname, updateScript
# sourceExecutableName is the name of the binary in the source archive, over
# which we have no control
, sourceExecutableName ? executableName
}:
let
@ -77,12 +80,12 @@ let
'' + (if system == "x86_64-darwin" then ''
mkdir -p "$out/Applications/${longName}.app" $out/bin
cp -r ./* "$out/Applications/${longName}.app"
ln -s "$out/Applications/${longName}.app/Contents/Resources/app/bin/${executableName}" $out/bin/${executableName}
ln -s "$out/Applications/${longName}.app/Contents/Resources/app/bin/${sourceExecutableName}" $out/bin/${executableName}
'' else ''
mkdir -p $out/lib/vscode $out/bin
cp -r ./* $out/lib/vscode
ln -s $out/lib/vscode/bin/${executableName} $out/bin
ln -s $out/lib/vscode/bin/${sourceExecutableName} $out/bin/${executableName}
mkdir -p $out/share/applications
ln -s $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop

View File

@ -25,6 +25,7 @@ in
version = "1.57.1";
pname = "vscode";
sourceExecutableName = "code";
executableName = "code" + lib.optionalString isInsiders "-insiders";
longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders";
shortName = "Code" + lib.optionalString isInsiders " - Insiders";