freerouting: 2.1.0 -> 2.2.1 (#514956)

This commit is contained in:
Peder Bergebakken Sundt
2026-04-30 23:46:28 +00:00
committed by GitHub
3 changed files with 1423 additions and 559 deletions
+1 -1
View File
@@ -18062,7 +18062,7 @@
keys = [ { fingerprint = "C3E7 F8C4 9CBC 9320 D360 B117 8516 D0FA 7D8F 58FC"; } ];
};
Misaka13514 = {
name = "Misaka13514";
name = "Rine Amakawa";
email = "Misaka13514@gmail.com";
matrix = "@misaka13514:matrix.org";
github = "Misaka13514";
+1376 -549
View File
File diff suppressed because it is too large Load Diff
+46 -9
View File
@@ -4,27 +4,48 @@
fetchFromGitHub,
makeBinaryWrapper,
makeDesktopItem,
jdk,
jdk25,
gradle,
copyDesktopItems,
jre,
jre25_minimal,
}:
let
jre = jre25_minimal.override {
modules = [
"java.base"
"java.compiler"
"java.desktop"
"java.instrument"
"java.naming"
"java.net.http"
"java.rmi"
"java.scripting"
"java.security.jgss"
"java.sql"
"jdk.attach"
"jdk.jdi"
"jdk.management"
"jdk.unsupported"
];
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "freerouting";
version = "2.1.0";
version = "2.2.1";
src = fetchFromGitHub {
owner = "freerouting";
repo = "freerouting";
tag = "v${finalAttrs.version}";
hash = "sha256-K4fwbvSPuKAAnIcTDBSAI1/6HuCB7c9rCGTJcyAj5dQ=";
hash = "sha256-bIts0ORxw9GDKRP78k0YnrfUqBliyf8v3gK/WtfNRgw=";
};
gradleBuildTask = "executableJar";
gradleBuildTask = "dist";
nativeBuildInputs = [
makeBinaryWrapper
jdk
jdk25
gradle
copyDesktopItems
];
@@ -36,16 +57,29 @@ stdenv.mkDerivation (finalAttrs: {
__darwinAllowLocalNetworking = true;
gradleFlags = [ "--no-configuration-cache" ];
postPatch = ''
# The rewrite-gradle plugin breaks the nixDownloadDeps task injected by fetchDeps
substituteInPlace build.gradle \
--replace-fail "rewrite 'org.openrewrite.recipe:rewrite-gradle:2.3.0'" ""
# Disable telemetry and contact options by default
substituteInPlace src/main/java/app/freerouting/settings/UserProfileSettings.java \
--replace-fail 'public Boolean isTelemetryAllowed = true;' 'public Boolean isTelemetryAllowed = false;'
substituteInPlace src/main/java/app/freerouting/settings/UserProfileSettings.java \
--replace-fail 'public Boolean isContactAllowed = true;' 'public Boolean isContactAllowed = false;'
'';
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,share/freerouting}
cp build/libs/freerouting-executable.jar $out/share/freerouting
cp build/dist/freerouting-executable.jar $out/share/freerouting
makeWrapper ${lib.getExe jre} $out/bin/freerouting \
--add-flags "-jar $out/share/freerouting/freerouting-executable.jar"
install -Dm644 ${finalAttrs.src}/design/icon/freerouting_icon_256x256_v1.png \
install -Dm644 ${finalAttrs.src}/assets/icon/freerouting_icon_256x256_v3.png \
$out/share/icons/hicolor/256x256/apps/freerouting.png
runHook postInstall
@@ -74,7 +108,10 @@ stdenv.mkDerivation (finalAttrs: {
Freerouting is an advanced autorouter for all PCB programs that support
the standard Specctra or Electra DSN interface. '';
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ srounce ];
maintainers = with lib.maintainers; [
srounce
Misaka13514
];
platforms = with lib.platforms; linux ++ darwin;
mainProgram = "freerouting";
};