All checks were successful
Build packages / Build derivations (push) Successful in 1m38s
74 lines
1.8 KiB
Nix
74 lines
1.8 KiB
Nix
{
|
|
stdenv,
|
|
fetchurl,
|
|
makeWrapper,
|
|
makeDesktopItem,
|
|
copyDesktopItems,
|
|
dpkg,
|
|
openjdk8,
|
|
}:
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "OpenWebStart";
|
|
version = "1.5.2";
|
|
|
|
src = fetchurl {
|
|
url = with finalAttrs; "https://github.com/karakun/OpenWebStart/releases/download/v${version}/OpenWebStart_linux_${builtins.replaceStrings ["."] ["_"] version}.deb";
|
|
hash = "sha256-thB/JWbF/Xk/PLurwXvWwzQTyCeV1hU7Zm8BjrG6lS0=";
|
|
};
|
|
|
|
nativeBuildInputs = [dpkg makeWrapper copyDesktopItems];
|
|
|
|
sourceRoot = "opt/OpenWebStart";
|
|
|
|
unpackPhase = ''
|
|
runHook preUnpack
|
|
|
|
dpkg-deb -x $src .
|
|
|
|
runHook postUnpack
|
|
'';
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/lib
|
|
cp openwebstart.jar $out/lib/
|
|
|
|
makeWrapper ${openjdk8}/bin/java $out/bin/openwebstart \
|
|
--add-flags "-cp $out/lib/openwebstart.jar com.openwebstart.launcher.OpenWebStartLauncher"
|
|
|
|
makeWrapper ${openjdk8}/bin/java $out/bin/openwebstart-settings \
|
|
--add-flags "-cp $out/lib/openwebstart.jar com.openwebstart.launcher.ControlPanelLauncher"
|
|
|
|
mkdir -p $out/share/pixmaps
|
|
cp App-Icon-512.png $out/share/pixmaps/openwebstart-settings.png
|
|
cp Icon-512.png $out/share/pixmaps/openwebstart.png
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
dontBuild = true;
|
|
dontCheck = true;
|
|
|
|
desktopItems = [
|
|
(makeDesktopItem {
|
|
name = "OpenWebStart Settings";
|
|
type = "Application";
|
|
desktopName = "OpenWebStart Settings";
|
|
exec = "openwebstart-settings %U";
|
|
icon = "openwebstart-settings";
|
|
})
|
|
|
|
(makeDesktopItem {
|
|
name = "OpenWebStart";
|
|
type = "Application";
|
|
desktopName = "OpenWebStart";
|
|
noDisplay = true;
|
|
exec = "openwebstart %f";
|
|
icon = "openwebstart-settings";
|
|
mimeTypes = ["application/x-java-jnlp-file"];
|
|
})
|
|
];
|
|
|
|
meta.mainProgram = "openwebstart-settings";
|
|
})
|