From 483e5d94e4175dab5fdaf54fb49e1aec302df26c Mon Sep 17 00:00:00 2001 From: Simon Bruder Date: Thu, 13 May 2021 08:56:01 +0200 Subject: [PATCH] VisiCut: init at 1.9-94-g8b1c96b7 --- VisiCut/default.nix | 34 ++++++++++++++++++++++++++++++++++ flake.nix | 4 +++- 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 VisiCut/default.nix diff --git a/VisiCut/default.nix b/VisiCut/default.nix new file mode 100644 index 0000000..4ff5a4a --- /dev/null +++ b/VisiCut/default.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchzip, makeWrapper, jdk11, gsettings-desktop-schemas, gtk3 }: + +stdenv.mkDerivation rec { + pname = "VisiCut"; + version = "1.9-94-g8b1c96b7"; + + src = fetchzip { + url = "https://download.visicut.org/files/master/All/${pname}-${version}.zip"; + sha256 = "12xkysh66vcv17dffn9ybqk85lzxy4rqswxv4jwr0b1fwajfvd96"; + }; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ jdk11 ]; + + # FIXME: Use proper way of wrapping a gnome application + installPhase = '' + rm ${pname}.{exe,Linux,MacOS} + mkdir -p $out/share + cp -r . $out/share/${pname} + makeWrapper \ + ${jdk11}/bin/java \ + $out/bin/${pname} \ + --add-flags "-Xms256m -Xmx2048m -jar $out/share/${pname}/Visicut.jar" \ + --set "XDG_DATA_DIRS" "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS" + ''; + + meta = with lib; { + description = "A userfriendly tool to prepare, save and send Jobs to Lasercutters"; + homepage = "https://visicut.org/"; + license = licenses.lgpl3Plus; + maintainers = with maintainers; [ sbruder ]; + platforms = platforms.all; + }; +} diff --git a/flake.nix b/flake.nix index 06b4590..6617b75 100644 --- a/flake.nix +++ b/flake.nix @@ -16,6 +16,7 @@ callPythonPackage = prev.python3Packages.callPackage; in { + VisiCut = callPackage ./VisiCut { }; }; } // flake-utils.lib.eachDefaultSystem (system: let @@ -39,7 +40,8 @@ packages = lib.filterAttrs (n: v: lib.elem system v.meta.platforms) { - inherit (pkgs); + inherit (pkgs) + VisiCut; }; # My hydra only has x86_64-linux builders