Loading pkgs/applications/misc/freemind/default.nix +58 −25 Original line number Diff line number Diff line { lib, stdenv, fetchurl, jdk, jre, ant }: { lib, stdenv, fetchurl, ant, jdk, jre, makeWrapper, stripJavaArchivesHook, }: stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: { pname = "freemind"; version = "1.0.1"; src = fetchurl { url = "mirror://sourceforge/freemind/freemind-src-${version}.tar.gz"; sha256 = "06c6pm7hpwh9hbmyah3lj2wp1g957x8znfwc5cwygsi7dc98b0h1"; url = "mirror://sourceforge/freemind/freemind-src-${finalAttrs.version}.tar.gz"; hash = "sha256-AYKFEmsn6uc5K4w7+1E/Jb1wuZB0QOXrggnyC0+9hhk="; }; buildInputs = [ jdk ant ]; nativeBuildInputs = [ ant jdk makeWrapper stripJavaArchivesHook ]; preConfigure = '' chmod +x check_for_duplicate_resources.sh sed 's,/bin/bash,${stdenv.shell},' -i check_for_duplicate_resources.sh postPatch = '' # disable the <buildnumer> task because it would edit version.properties # and add a "last edited" header to it, which is non-deterministic sed -i '/<buildnumber/d' build.xml ## work around javac encoding errors export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8" # replace dependency on `which` substituteInPlace freemind.sh \ --replace-fail "which" "type -p" ''; buildPhase = "ant dist"; preConfigure = '' chmod +x *.sh patchShebangs *.sh ''; # Workaround for javac encoding errors # Note: not sure if this is still needed env.JAVA_TOOL_OPTIONS = "-Dfile.encoding=UTF8"; buildPhase = '' runHook preBuild ant build runHook postBuild ''; installPhase = '' mkdir -p $out/{bin,nix-support} cp -r ../bin/dist $out/nix-support sed -i 's/which/type -p/' $out/nix-support/dist/freemind.sh cat >$out/bin/freemind <<EOF #! ${stdenv.shell} JAVA_HOME=${jre} $out/nix-support/dist/freemind.sh EOF chmod +x $out/{bin/freemind,nix-support/dist/freemind.sh} runHook preInstall ant dist -Ddist=$out/share/freemind runHook postInstall ''; postFixup = '' makeWrapper $out/share/freemind/freemind.sh $out/bin/freemind \ --set JAVA_HOME ${jre} ''; meta = with lib; { meta = { description = "Mind-mapping software"; mainProgram = "freemind"; homepage = "https://freemind.sourceforge.net/wiki/index.php/Main_Page"; license = licenses.gpl2Plus; platforms = platforms.linux; mainProgram = "freemind"; maintainers = with lib.maintainers; [ tomasajt ]; license = lib.licenses.gpl2Plus; platforms = lib.platforms.linux; sourceProvenance = with lib.sourceTypes; [ fromSource binaryBytecode # source bundles dependencies as jars ]; }; } }) Loading
pkgs/applications/misc/freemind/default.nix +58 −25 Original line number Diff line number Diff line { lib, stdenv, fetchurl, jdk, jre, ant }: { lib, stdenv, fetchurl, ant, jdk, jre, makeWrapper, stripJavaArchivesHook, }: stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: { pname = "freemind"; version = "1.0.1"; src = fetchurl { url = "mirror://sourceforge/freemind/freemind-src-${version}.tar.gz"; sha256 = "06c6pm7hpwh9hbmyah3lj2wp1g957x8znfwc5cwygsi7dc98b0h1"; url = "mirror://sourceforge/freemind/freemind-src-${finalAttrs.version}.tar.gz"; hash = "sha256-AYKFEmsn6uc5K4w7+1E/Jb1wuZB0QOXrggnyC0+9hhk="; }; buildInputs = [ jdk ant ]; nativeBuildInputs = [ ant jdk makeWrapper stripJavaArchivesHook ]; preConfigure = '' chmod +x check_for_duplicate_resources.sh sed 's,/bin/bash,${stdenv.shell},' -i check_for_duplicate_resources.sh postPatch = '' # disable the <buildnumer> task because it would edit version.properties # and add a "last edited" header to it, which is non-deterministic sed -i '/<buildnumber/d' build.xml ## work around javac encoding errors export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8" # replace dependency on `which` substituteInPlace freemind.sh \ --replace-fail "which" "type -p" ''; buildPhase = "ant dist"; preConfigure = '' chmod +x *.sh patchShebangs *.sh ''; # Workaround for javac encoding errors # Note: not sure if this is still needed env.JAVA_TOOL_OPTIONS = "-Dfile.encoding=UTF8"; buildPhase = '' runHook preBuild ant build runHook postBuild ''; installPhase = '' mkdir -p $out/{bin,nix-support} cp -r ../bin/dist $out/nix-support sed -i 's/which/type -p/' $out/nix-support/dist/freemind.sh cat >$out/bin/freemind <<EOF #! ${stdenv.shell} JAVA_HOME=${jre} $out/nix-support/dist/freemind.sh EOF chmod +x $out/{bin/freemind,nix-support/dist/freemind.sh} runHook preInstall ant dist -Ddist=$out/share/freemind runHook postInstall ''; postFixup = '' makeWrapper $out/share/freemind/freemind.sh $out/bin/freemind \ --set JAVA_HOME ${jre} ''; meta = with lib; { meta = { description = "Mind-mapping software"; mainProgram = "freemind"; homepage = "https://freemind.sourceforge.net/wiki/index.php/Main_Page"; license = licenses.gpl2Plus; platforms = platforms.linux; mainProgram = "freemind"; maintainers = with lib.maintainers; [ tomasajt ]; license = lib.licenses.gpl2Plus; platforms = lib.platforms.linux; sourceProvenance = with lib.sourceTypes; [ fromSource binaryBytecode # source bundles dependencies as jars ]; }; } })