best practices: got rid of rec

This commit is contained in:
2024-11-09 14:53:58 -06:00
parent 0bebf3e366
commit be0e4d7109
8 changed files with 283 additions and 243 deletions

View File

@@ -16,58 +16,62 @@ let
filepicker = callPackage ./filepicker.nix { };
in
buildNpmPackage rec {
pname = "vdhcoapp";
version = "2.0.19";
buildNpmPackage (
let
version = "2.0.19";
pname = "vdhcoapp";
src = fetchFromGitHub {
owner = "aclap-dev";
repo = "${pname}";
rev = "v${version}";
hash = "sha256-8xeZvqpRq71aShVogiwlVD3gQoPGseNOmz5E3KbsZxU=";
};
in
{
inherit pname version src;
src = fetchFromGitHub {
owner = "aclap-dev";
repo = "vdhcoapp";
rev = "v${version}";
hash = "sha256-8xeZvqpRq71aShVogiwlVD3gQoPGseNOmz5E3KbsZxU=";
};
sourceRoot = "${src.name}/app";
npmDepsHash = "sha256-E032U2XZdyTER6ROkBosOTn7bweDXHl8voC3BQEz8Wg=";
dontNpmBuild = true;
sourceRoot = "${src.name}/app";
npmDepsHash = "sha256-E032U2XZdyTER6ROkBosOTn7bweDXHl8voC3BQEz8Wg=";
dontNpmBuild = true;
nativeBuildInputs = [
toml2json
makeWrapper
];
nativeBuildInputs = [
toml2json
makeWrapper
];
patches = [
(substituteAll {
src = ./code.patch;
inherit ffmpeg;
filepicker = lib.getExe filepicker;
})
];
patches = [
(substituteAll {
src = ./code.patch;
inherit ffmpeg;
filepicker = lib.getExe filepicker;
})
];
postPatch = ''
# Cannot use patch, setting placeholder here
substituteInPlace src/native-autoinstall.js \
--replace process.execPath "\"${placeholder "out"}/bin/vdhcoapp\""
'';
postPatch = ''
# Cannot use patch, setting placeholder here
substituteInPlace src/native-autoinstall.js \
--replace process.execPath "\"${placeholder "out"}/bin/vdhcoapp\""
'';
preBuild = ''
toml2json --pretty ../config.toml > src/config.json
'';
preBuild = ''
toml2json --pretty ../config.toml > src/config.json
'';
installPhase = ''
mkdir -p $out/opt/vdhcoapp
installPhase = ''
mkdir -p $out/opt/vdhcoapp
cp -r . "$out/opt/vdhcoapp"
cp -r . "$out/opt/vdhcoapp"
makeWrapper ${nodejs}/bin/node $out/bin/vdhcoapp \
--add-flags $out/opt/vdhcoapp/src/main.js
'';
makeWrapper ${nodejs}/bin/node $out/bin/vdhcoapp \
--add-flags $out/opt/vdhcoapp/src/main.js
'';
meta = with lib; {
description = "Companion application for the Video DownloadHelper browser add-on";
homepage = "https://www.downloadhelper.net/";
license = licenses.gpl2;
maintainers = with maintainers; [ wolfangaukang ];
mainProgram = "vdhcoapp";
};
}
meta = with lib; {
description = "Companion application for the Video DownloadHelper browser add-on";
homepage = "https://www.downloadhelper.net/";
license = licenses.gpl2;
maintainers = with maintainers; [ wolfangaukang ];
mainProgram = "vdhcoapp";
};
}
)