Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib, stdenv, fetchurl, fetchzip, unzip }: 2 3rec { 4 5 # A primitive builder of Eclipse plugins. This function is intended 6 # to be used when building more advanced builders. 7 buildEclipsePluginBase = { name 8 , buildInputs ? [] 9 , passthru ? {} 10 , ... } @ attrs: 11 stdenv.mkDerivation (attrs // { 12 name = "eclipse-plugin-" + name; 13 14 buildInputs = buildInputs ++ [ unzip ]; 15 16 passthru = { 17 isEclipsePlugin = true; 18 } // passthru; 19 }); 20 21 # Helper for the common case where we have separate feature and 22 # plugin JARs. 23 buildEclipsePlugin = 24 { name, srcFeature, srcPlugin ? null, srcPlugins ? [], ... } @ attrs: 25 assert srcPlugin == null -> srcPlugins != []; 26 assert srcPlugin != null -> srcPlugins == []; 27 28 let 29 30 pSrcs = if (srcPlugin != null) then [ srcPlugin ] else srcPlugins; 31 32 in 33 34 buildEclipsePluginBase (attrs // { 35 srcs = [ srcFeature ] ++ pSrcs; 36 37 buildCommand = '' 38 dropinDir="$out/eclipse/dropins/${name}" 39 40 mkdir -p $dropinDir/features 41 unzip ${srcFeature} -d $dropinDir/features/ 42 43 mkdir -p $dropinDir/plugins 44 for plugin in ${toString pSrcs}; do 45 cp -v $plugin $dropinDir/plugins/$(stripHash $plugin) 46 done 47 ''; 48 }); 49 50 # Helper for the case where the build directory has the layout of an 51 # Eclipse update site, that is, it contains the directories 52 # `features` and `plugins`. All features and plugins inside these 53 # directories will be installed. 54 buildEclipseUpdateSite = { name, ... } @ attrs: 55 buildEclipsePluginBase (attrs // { 56 dontBuild = true; 57 doCheck = false; 58 59 installPhase = '' 60 dropinDir="$out/eclipse/dropins/${name}" 61 62 # Install features. 63 cd features 64 for feature in *.jar; do 65 featureName=''${feature%.jar} 66 mkdir -p $dropinDir/features/$featureName 67 unzip $feature -d $dropinDir/features/$featureName 68 done 69 cd .. 70 71 # Install plugins. 72 mkdir -p $dropinDir/plugins 73 74 # A bundle should be unpacked if the manifest matches this 75 # pattern. 76 unpackPat="Eclipse-BundleShape:\\s*dir" 77 78 cd plugins 79 for plugin in *.jar ; do 80 pluginName=''${plugin%.jar} 81 manifest=$(unzip -p $plugin META-INF/MANIFEST.MF) 82 83 if [[ $manifest =~ $unpackPat ]] ; then 84 mkdir $dropinDir/plugins/$pluginName 85 unzip $plugin -d $dropinDir/plugins/$pluginName 86 else 87 cp -v $plugin $dropinDir/plugins/ 88 fi 89 done 90 cd .. 91 ''; 92 }); 93 94 acejump = buildEclipsePlugin rec { 95 name = "acejump-${version}"; 96 version = "1.0.0.201610261941"; 97 98 srcFeature = fetchurl { 99 url = "https://tobiasmelcher.github.io/acejumpeclipse/features/acejump.feature_${version}.jar"; 100 sha256 = "1szswjxp9g70ibfbv3p8dlq1bngq7nc22kp657z9i9kp8309md2d"; 101 }; 102 103 srcPlugin = fetchurl { 104 url = "https://tobiasmelcher.github.io/acejumpeclipse/plugins/acejump_${version}.jar"; 105 sha256 = "1cn64xj2bm69vnn9db2xxh6kq148v83w5nx3183mrqb59ym3v9kf"; 106 }; 107 108 meta = with lib; { 109 homepage = "https://github.com/tobiasmelcher/EclipseAceJump"; 110 description = "Provides fast jumps to text based on initial letter"; 111 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 112 license = licenses.mit; 113 platforms = platforms.all; 114 }; 115 }; 116 117 ansi-econsole = buildEclipsePlugin rec { 118 name = "ansi-econsole-${version}"; 119 version = "1.3.5.201612301822"; 120 121 srcFeature = fetchurl { 122 url = "https://mihnita.github.io/ansi-econsole/install/features/net.mihai-nita.ansicon_${version}.jar"; 123 sha256 = "086ylxpsrlpbvwv5mw7v6b44j63cwzgi8apg2mq058ydr5ak6hxs"; 124 }; 125 126 srcPlugin = fetchurl { 127 url = "https://mihnita.github.io/ansi-econsole/install/plugins/net.mihai-nita.ansicon.plugin_${version}.jar"; 128 sha256 = "1j42l0xxzs89shqkyn91lb0gia10mifzy0i73c3n7gj7sv2ddbjq"; 129 }; 130 131 meta = with lib; { 132 homepage = "https://mihai-nita.net/java/#ePluginAEC"; 133 description = "Adds support for ANSI escape sequences in the Eclipse console"; 134 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 135 license = licenses.asl20; 136 platforms = platforms.all; 137 }; 138 }; 139 140 antlr-runtime_4_5 = buildEclipsePluginBase rec { 141 name = "antlr-runtime-4.5.3"; 142 143 src = fetchurl { 144 url = "https://www.antlr.org/download/${name}.jar"; 145 sha256 = "0lm78i2annlczlc2cg5xvby0g1dyl0sh1y5xc2pymjlmr67a1g4k"; 146 }; 147 148 buildCommand = '' 149 dropinDir="$out/eclipse/dropins/" 150 mkdir -p $dropinDir 151 cp -v $src $dropinDir/${name}.jar 152 ''; 153 154 meta = with lib; { 155 description = "A powerful parser generator for processing structured text or binary files"; 156 homepage = "https://www.antlr.org/"; 157 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 158 license = licenses.bsd3; 159 platforms = platforms.all; 160 }; 161 }; 162 163 antlr-runtime_4_7 = buildEclipsePluginBase rec { 164 name = "antlr-runtime-4.7.1"; 165 166 src = fetchurl { 167 url = "https://www.antlr.org/download/${name}.jar"; 168 sha256 = "07f91mjclacrvkl8a307w2abq5wcqp0gcsnh0jg90ddfpqcnsla3"; 169 }; 170 171 buildCommand = '' 172 dropinDir="$out/eclipse/dropins/" 173 mkdir -p $dropinDir 174 cp -v $src $dropinDir/${name}.jar 175 ''; 176 177 meta = with lib; { 178 description = "A powerful parser generator for processing structured text or binary files"; 179 homepage = "https://www.antlr.org/"; 180 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 181 license = licenses.bsd3; 182 platforms = platforms.all; 183 }; 184 }; 185 186 anyedittools = buildEclipsePlugin rec { 187 name = "anyedit-${version}"; 188 version = "2.7.2.202006062100"; 189 190 srcFeature = fetchurl { 191 url = "https://github.com/iloveeclipse/plugins/blob/latest/features/AnyEditTools_${version}.jar"; 192 sha256 = "0dwwwvz8by10f5gnws1ahmg02g6v4xbaqcwc0cydvv1h52cyb40g"; 193 }; 194 195 srcPlugin = fetchurl { 196 url = "https://github.com/iloveeclipse/plugins/blob/latest/plugins/de.loskutov.anyedit.AnyEditTools_${version}.jar"; 197 sha256 = "1ip8dk92ka7bczw1bkbs3zkclmwr28ds5q1wrzh525wb70x8v6fi"; 198 }; 199 200 meta = with lib; { 201 homepage = "https://github.com/iloveeclipse/plugins"; 202 description = "Adds new tools to the context menu of text-based editors"; 203 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 204 license = licenses.epl10; 205 platforms = platforms.all; 206 }; 207 }; 208 209 autodetect-encoding = buildEclipsePlugin rec { 210 name = "autodetect-encoding-${version}"; 211 version = "1.8.5.201801191359"; 212 213 srcFeature = fetchurl { 214 url = "https://github.com/cypher256/eclipse-encoding-plugin/raw/master/eclipse.encoding.updatesite.snapshot/features/eclipse.encoding.plugin.feature_${version}.jar"; 215 sha256 = "1m8ypsc1dwz0y6yhjgxsdi9813d38jllv7javgwvcd30g042a3kx"; 216 }; 217 218 srcPlugin = fetchurl { 219 url = "https://github.com/cypher256/eclipse-encoding-plugin/raw/master/eclipse.encoding.updatesite.snapshot/plugins/mergedoc.encoding_${version}.jar"; 220 sha256 = "1n2rzybfcwp3ss2qi0fhd8vm38vdwav8j837lqiqlfcnvzwsk86m"; 221 }; 222 223 meta = with lib; { 224 homepage = "https://github.com/cypher256/eclipse-encoding-plugin"; 225 description = "Show file encoding and line ending for the active editor in the eclipse status bar"; 226 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 227 license = licenses.epl10; 228 platforms = platforms.all; 229 }; 230 }; 231 232 bytecode-outline = buildEclipsePlugin rec { 233 name = "bytecode-outline-${version}"; 234 version = "1.0.1.202006062100"; 235 236 srcFeature = fetchurl { 237 url = "https://github.com/iloveeclipse/plugins/blob/latest/features/org.eclipse.jdt.bcoview.feature_${version}.jar"; 238 sha256 = "0zbcph72lgv8cb5n4phcl3qsybc5q5yviwbv8yjv4v12m4l15wpk"; 239 }; 240 241 srcPlugin = fetchurl { 242 url = "https://github.com/iloveeclipse/plugins/blob/latest/plugins/org.eclipse.jdt.bcoview_${version}.jar"; 243 sha256 = "1bx860k4haqcnhy8825kn4df0pyzd680qbnvjmxfrlxrqhr66fbb"; 244 }; 245 246 meta = with lib; { 247 homepage = "https://github.com/iloveeclipse/plugins"; 248 description = "Shows disassembled bytecode of current java editor or class file"; 249 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 250 license = licenses.bsd2; 251 platforms = platforms.all; 252 }; 253 }; 254 255 cdt = buildEclipseUpdateSite rec { 256 name = "cdt-${version}"; 257 # find current version at https://github.com/eclipse-cdt/cdt/releases 258 version = "11.1.1"; 259 260 src = fetchzip { 261 stripRoot = false; 262 url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/${lib.versions.majorMinor version}/${name}/${name}.zip"; 263 hash = "sha256-k78QKPIb3Lr0Wcg2tTlX1abdpcvxspjaxJiP2Hrgb4A="; 264 }; 265 266 meta = with lib; { 267 homepage = "https://eclipse.org/cdt/"; 268 description = "C/C++ development tooling"; 269 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 270 license = licenses.epl10; 271 platforms = platforms.all; 272 maintainers = [ maintainers.bjornfor ]; 273 }; 274 }; 275 276 checkstyle = buildEclipseUpdateSite rec { 277 name = "checkstyle-${version}"; 278 version = "8.7.0.201801131309"; 279 280 src = fetchzip { 281 stripRoot = false; 282 url = "mirror://sourceforge/project/eclipse-cs/Eclipse%20Checkstyle%20Plug-in/8.7.0/net.sf.eclipsecs-updatesite_${version}.zip"; 283 sha256 = "07fymk705x4mwq7vh2i6frsf67jql4bzrkdzhb4n74zb0g1dib60"; 284 }; 285 286 meta = with lib; { 287 homepage = "https://eclipse-cs.sourceforge.net/"; 288 description = "Checkstyle integration into the Eclipse IDE"; 289 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 290 license = licenses.lgpl21; 291 platforms = platforms.all; 292 }; 293 294 }; 295 296 color-theme = buildEclipsePlugin rec { 297 name = "color-theme-${version}"; 298 version = "1.0.0.201410260308"; 299 300 srcFeature = fetchurl { 301 url = "https://eclipse-color-theme.github.io/update/features/com.github.eclipsecolortheme.feature_${version}.jar"; 302 sha256 = "128b9b1cib5ff0w1114ns5mrbrhj2kcm358l4dpnma1s8gklm8g2"; 303 }; 304 305 srcPlugin = fetchurl { 306 url = "https://eclipse-color-theme.github.io/update/plugins/com.github.eclipsecolortheme_${version}.jar"; 307 sha256 = "0wz61909bhqwzpqwll27ia0cn3anyp81haqx3rj1iq42cbl42h0y"; 308 }; 309 310 meta = with lib; { 311 homepage = "http://eclipsecolorthemes.org/"; 312 description = "Plugin to switch color themes conveniently and without side effects"; 313 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 314 license = licenses.epl10; 315 platforms = platforms.all; 316 }; 317 }; 318 319 cup = buildEclipsePlugin rec { 320 name = "cup-${version}"; 321 version = "1.1.0.201604221613"; 322 version_ = "1.0.0.201604221613"; 323 324 srcFeature = fetchurl { 325 url = "http://www2.in.tum.de/projects/cup/eclipse/features/CupEclipsePluginFeature_${version}.jar"; 326 sha256 = "13nnsf0cqg02z3af6xg45rhcgiffsibxbx6h1zahjv7igvqgkyna"; 327 }; 328 329 srcPlugins = [ 330 (fetchurl { 331 url = "http://www2.in.tum.de/projects/cup/eclipse/plugins/CupReferencedLibraries_${version_}.jar"; 332 sha256 = "0kif8kivrysprva1pxzajm88gi967qf7idhb6ga2xpvsdcris91j"; 333 }) 334 335 (fetchurl { 336 url = "http://www2.in.tum.de/projects/cup/eclipse/plugins/de.tum.in.www2.CupPlugin_${version}.jar"; 337 sha256 = "022phbrsny3gb8npb6sxyqqxacx138q5bd7dq3gqxh3kprx5chbl"; 338 }) 339 ]; 340 341 propagatedBuildInputs = [ zest ]; 342 343 meta = with lib; { 344 homepage = "http://www2.cs.tum.edu/projects/cup/eclipse.php"; 345 description = "IDE for developing CUP based parsers"; 346 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 347 platforms = platforms.all; 348 maintainers = [ maintainers.romildo ]; 349 }; 350 }; 351 352 drools = buildEclipseUpdateSite rec { 353 name = "drools-${version}"; 354 version = "7.17.0.Final"; 355 356 src = fetchzip { 357 url = "https://download.jboss.org/drools/release/${version}/droolsjbpm-tools-distribution-${version}.zip"; 358 sha512 = "2qzc1iszqfrfnw8xip78n3kp6hlwrvrr708vlmdk7nv525xhs0ssjaxriqdhcr0s6jripmmazxivv3763rnk2bfkh31hmbnckpx4r3m"; 359 postFetch = '' 360 # update site is a couple levels deep, alongside some other irrelevant stuff 361 cd $out; 362 find . -type f -not -path ./binaries/org.drools.updatesite/\* -exec rm {} \; 363 rmdir sources; 364 mv binaries/org.drools.updatesite/* .; 365 rmdir binaries/org.drools.updatesite binaries; 366 ''; 367 }; 368 369 meta = with lib; { 370 homepage = "https://www.drools.org/"; 371 description = "Drools is a Business Rules Management System (BRMS) solution"; 372 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 373 license = licenses.asl20; 374 }; 375 }; 376 377 eclemma = buildEclipseUpdateSite rec { 378 name = "eclemma-${version}"; 379 version = "2.3.2.201409141915"; 380 381 src = fetchzip { 382 stripRoot = false; 383 url = "mirror://sourceforge/project/eclemma/01_EclEmma_Releases/2.3.2/eclemma-2.3.2.zip"; 384 sha256 = "0w1kwcjh45p7msv5vpc8i6dsqwrnfmjama6vavpnxlji56jd3c43"; 385 }; 386 387 meta = with lib; { 388 homepage = "https://www.eclemma.org/"; 389 description = "EclEmma is a free Java code coverage tool for Eclipse"; 390 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 391 license = licenses.epl10; 392 platforms = platforms.all; 393 }; 394 }; 395 396 findbugs = buildEclipsePlugin rec { 397 name = "findbugs-${version}"; 398 version = "3.0.1.20150306-5afe4d1"; 399 400 srcFeature = fetchurl { 401 url = "http://findbugs.cs.umd.edu/eclipse/features/edu.umd.cs.findbugs.plugin.eclipse_${version}.jar"; 402 sha256 = "1m9fav2xlb9wrx2d00lpnh2sy0w5yzawynxm6xhhbfdzd0vpfr9v"; 403 }; 404 405 srcPlugin = fetchurl { 406 url = "http://findbugs.cs.umd.edu/eclipse/plugins/edu.umd.cs.findbugs.plugin.eclipse_${version}.jar"; 407 sha256 = "10p3mrbp9wi6jhlmmc23qv7frh605a23pqsc7w96569bsfb5wa8q"; 408 }; 409 410 meta = with lib; { 411 homepage = "http://findbugs.sourceforge.net/"; 412 description = "Plugin that uses static analysis to look for bugs in Java code"; 413 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 414 license = licenses.epl10; 415 platforms = platforms.all; 416 }; 417 }; 418 419 freemarker = buildEclipseUpdateSite rec { 420 name = "freemarker-${version}"; 421 version = "1.5.305"; 422 423 src = fetchzip { 424 url = "https://github.com/ddekany/jbosstools-freemarker/releases/download/v${version}/freemarker.site-${version}.zip"; 425 sha256 = "1qrhi300vk07gi14r445wvy0bvghbjd6c4k7q09pqpaxv6raiczn"; 426 stripRoot = false; 427 }; 428 429 meta = with lib; { 430 homepage = "https://github.com/ddekany/jbosstools-freemarker"; 431 description = "Plugin that provides an editor for Apache FreeMarker files"; 432 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 433 }; 434 }; 435 436 embed-cdt = buildEclipseUpdateSite rec { 437 name = "embed-cdt-${version}"; 438 version = "6.3.1"; 439 440 src = fetchzip { 441 stripRoot = true; 442 url = "https://github.com/eclipse-embed-cdt/eclipse-plugins/archive/v${version}.zip"; 443 sha256 = "sha256-0wHRIls48NGDQzD+wuX79Thgiax+VVYVPJw2Z6NEzsg="; 444 }; 445 446 meta = with lib; { 447 homepage = "https://github.com/eclipse-embed-cdt/eclipse-plugins"; 448 description = "Embedded C/C++ Development Tools (formerly GNU MCU/ARM Eclipse)"; 449 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 450 license = licenses.epl20; 451 platforms = platforms.all; 452 maintainers = [ maintainers.bjornfor ]; 453 }; 454 }; 455 gnuarmeclipse = embed-cdt; # backward compat alias, added 2022-11-04 456 457 jsonedit = buildEclipsePlugin rec { 458 name = "jsonedit-${version}"; 459 version = "1.1.1"; 460 461 srcFeature = fetchurl { 462 url = "https://boothen.github.io/Json-Eclipse-Plugin/features/jsonedit-feature_${version}.jar"; 463 sha256 = "0zkg8d8x3l5jpfxi0mz9dn62wmy4fjgpwdikj280fvsklmcw5b86"; 464 }; 465 466 srcPlugins = 467 let 468 fetch = { n, h }: 469 fetchurl { 470 url = "https://boothen.github.io/Json-Eclipse-Plugin/plugins/jsonedit-${n}_${version}.jar"; 471 sha256 = h; 472 }; 473 in 474 map fetch [ 475 { n = "core"; h = "0svs0aswnhl26cqw6bmw30cisx4cr50kc5njg272sy5c1dqjm1zq"; } 476 { n = "editor"; h = "1q62dinrbb18aywbvii4mlr7rxa20rdsxxd6grix9y8h9776q4l5"; } 477 { n = "folding"; h = "1qh4ijfb1gl9xza5ydi87v1kyima3a9sh7lncwdy1way3pdhln1y"; } 478 { n = "model"; h = "1pr6k2pdfdwx8jqs7gx7wzn3gxsql3sk6lnjha8m15lv4al6d4kj"; } 479 { n = "outline"; h = "1jgr2g16j3id8v367jbgd6kx6g2w636fbzmd8jvkvkh7y1jgjqxm"; } 480 { n = "preferences"; h = "027fhaqa5xbil6dmhvkbpha3pgw6dpmc2im3nlliyds57mdmdb1h"; } 481 { n = "text"; h = "0clywylyidrxlqs0n816nhgjmk1c3xl7sn904ki4q050amfy0wb2"; } 482 ]; 483 484 propagatedBuildInputs = [ antlr-runtime_4_7 ]; 485 486 meta = with lib; { 487 description = "Adds support for JSON files to Eclipse"; 488 homepage = "https://github.com/boothen/Json-Eclipse-Plugin"; 489 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 490 license = licenses.epl10; 491 platforms = platforms.all; 492 }; 493 }; 494 495 jdt-codemining = buildEclipsePlugin rec { 496 name = "jdt-codemining-${version}"; 497 version = "1.0.0.201806221018"; 498 499 srcFeature = fetchurl { 500 url = "http://oss.opensagres.fr/jdt-codemining/snapshot/features/jdt-codemining-feature_${version}.jar"; 501 sha256 = "1vy30rsb9xifn4r1r2n84d48g6riadzli1xvhfs1mf5pkm5ljwl6"; 502 }; 503 504 srcPlugin = fetchurl { 505 url = "http://oss.opensagres.fr/jdt-codemining/snapshot/plugins/org.eclipse.jdt.codemining_${version}.jar"; 506 sha256 = "0qdzlqcjcm2i4mwhmcdml0am83z1dayrcmf37ji7vmw6iwdk1xmp"; 507 }; 508 509 meta = with lib; { 510 homepage = "https://github.com/angelozerr/jdt-codemining"; 511 description = "Provides JDT Java CodeMining"; 512 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 513 license = licenses.epl10; 514 platforms = platforms.all; 515 }; 516 }; 517 518 rustdt = buildEclipseUpdateSite rec { 519 name = "rustdt-${version}"; 520 version = "0.6.2"; 521 owner = "RustDT"; 522 repo = "rustdt.github.io"; 523 rev = "5cbe753008c40555c493092a6f4ae1ffbff0b3ce"; 524 525 src = fetchzip { 526 stripRoot = false; 527 url = "https://github.com/${owner}/${repo}/archive/${rev}.zip"; 528 sha256 = "1xfj4j27d1h4bdf2v7f78zi8lz4zkkj7s9kskmsqx5jcs2d459yp"; 529 postFetch = 530 '' 531 mv "$out/${repo}-${rev}/releases/local-repo/"* "$out/" 532 ''; 533 }; 534 535 meta = with lib; { 536 homepage = "https://github.com/RustDT"; 537 description = "Rust development tooling"; 538 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 539 license = licenses.epl10; 540 platforms = platforms.all; 541 }; 542 }; 543 544 scala = buildEclipseUpdateSite rec { 545 name = "scala-${version}"; 546 version = "4.4.1.201605041056"; 547 548 src = fetchzip { 549 url = "http://download.scala-ide.org/sdk/lithium/e44/scala211/stable/base-20160504-1321.zip"; 550 sha256 = "13xgx2rwlll0l4bs0g6gyvrx5gcc0125vzn501fdj0wv2fqxn5lw"; 551 }; 552 553 meta = with lib; { 554 homepage = "http://scala-ide.org/"; 555 description = "The Scala IDE for Eclipse"; 556 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 557 license = licenses.bsd3; 558 platforms = platforms.all; 559 }; 560 }; 561 562 spotbugs = buildEclipseUpdateSite rec { 563 name = "spotbugs-${version}"; 564 version = "3.1.11"; 565 566 src = fetchzip { 567 stripRoot = false; 568 url = "https://github.com/spotbugs/spotbugs/releases/download/${version}/eclipsePlugin.zip"; 569 sha256 = "0aanqwx3gy1arpbkqd846381hiy6272lzwhfjl94x8jhfykpqqbj"; 570 }; 571 572 meta = with lib; { 573 homepage = "https://spotbugs.github.io/"; 574 description = "Plugin that uses static analysis to look for bugs in Java code"; 575 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 576 license = licenses.lgpl21; 577 platforms = platforms.all; 578 }; 579 }; 580 581 testng = buildEclipsePlugin rec { 582 name = "testng-${version}"; 583 version = "6.9.13.201609291640"; 584 585 srcFeature = fetchurl { 586 url = "http://beust.com/eclipse-old/eclipse_${version}/features/org.testng.eclipse_${version}.jar"; 587 sha256 = "02wzcysl7ga3wnvnwp6asl8d77wgc547c5qqawixw94lw6fn1a15"; 588 }; 589 590 srcPlugin = fetchurl { 591 url = "http://beust.com/eclipse-old/eclipse_${version}/plugins/org.testng.eclipse_${version}.jar"; 592 sha256 = "1j4zw6392q3q6z3pcy803k3g0p220gk1x19fs99p0rmmdz83lc8d"; 593 }; 594 595 meta = with lib; { 596 homepage = "https://testng.org/doc/"; 597 description = "Eclipse plugin for the TestNG testing framework"; 598 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 599 license = licenses.asl20; 600 platforms = platforms.all; 601 }; 602 }; 603 604 vrapper = buildEclipseUpdateSite rec { 605 name = "vrapper-${version}"; 606 version = "0.72.0"; 607 owner = "vrapper"; 608 repo = "vrapper"; 609 date = "20170311"; 610 611 src = fetchzip { 612 stripRoot = false; 613 url = "https://github.com/${owner}/${repo}/releases/download/${version}/vrapper_${version}_${date}.zip"; 614 sha256 = "0nyirf6km97q211cxfy01kidxac20m8ba3kk9xj73ykrhsk3cxjp"; 615 }; 616 617 meta = with lib; { 618 homepage = "https://github.com/vrapper/vrapper"; 619 description = "A wrapper to provide a Vim-like input scheme for moving around and editing text"; 620 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 621 license = licenses.gpl3; 622 platforms = platforms.all; 623 maintainers = [ maintainers.stumoss ]; 624 }; 625 }; 626 627 yedit = buildEclipsePlugin rec { 628 name = "yedit-${version}"; 629 version = "1.0.20.201509041456"; 630 631 srcFeature = fetchurl { 632 url = "http://dadacoalition.org/yedit/features/org.dadacoalition.yedit.feature_${version}-RELEASE.jar"; 633 sha256 = "0rps73y19gwlrdr8jjrg3rhcaaagghnmri8297inxc5q2dvg0mlk"; 634 }; 635 636 srcPlugin = fetchurl { 637 url = "http://dadacoalition.org/yedit/plugins/org.dadacoalition.yedit_${version}-RELEASE.jar"; 638 sha256 = "1wpyw4z28ka60z36f8m71kz1giajcm26wb9bpv18sjiqwdgx9v0z"; 639 }; 640 641 meta = with lib; { 642 homepage = "https://github.com/oyse/yedit"; 643 description = "A YAML editor plugin for Eclipse"; 644 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 645 license = licenses.epl10; 646 platforms = platforms.all; 647 }; 648 }; 649 650 zest = buildEclipseUpdateSite rec { 651 name = "zest-${version}"; 652 version = "3.9.101"; 653 654 src = fetchurl { 655 url = "http://archive.eclipse.org/tools/gef/downloads/drops/${version}/R201408150207/GEF-${name}.zip"; 656 sha256 = "01scn7cmcrjcp387spjm8ifgwrwwi77ypildandbisfvhj3qqs7m"; 657 }; 658 659 meta = with lib; { 660 homepage = "https://www.eclipse.org/gef/zest/"; 661 description = "The Eclipse Visualization Toolkit"; 662 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 663 platforms = platforms.all; 664 maintainers = [ maintainers.romildo ]; 665 }; 666 }; 667 668 ivyde = buildEclipsePlugin rec { 669 name = "ivyde-${version}"; 670 version = "2.2.0.final-201311091524-RELEASE"; 671 672 srcFeature = fetchurl { 673 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivyde-${version}/features/org.apache.ivyde.feature_${version}.jar"; 674 sha1 = "c8fb6c4aab32db13db0bd81c1a148032667fff31"; 675 }; 676 677 srcPlugin = fetchurl { 678 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivyde-${version}/plugins/org.apache.ivyde.eclipse_${version}.jar"; 679 sha1 = "0c80c2e228a07f18efab1c56ea026448eda70c06"; 680 }; 681 682 meta = with lib; { 683 homepage = "https://ant.apache.org/ivy/ivyde/index.html"; 684 description = "A plugin which integrates Apache Ivy's dependency management"; 685 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 686 license = licenses.asl20; 687 platforms = platforms.all; 688 maintainers = [ maintainers.r3dl3g ]; 689 }; 690 }; 691 692 ivyderv = buildEclipsePlugin rec { 693 name = "ivyderv-${version}"; 694 version = "2.2.0.final-201311091524-RELEASE"; 695 696 srcFeature = fetchurl { 697 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivyde-${version}/features/org.apache.ivyde.eclipse.resolvevisualizer.feature_${version}.jar"; 698 sha1 = "fb1941eaa2c0de54259de01b0da6d5a6b4a2cab1"; 699 }; 700 701 srcPlugin = fetchurl { 702 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivyde-${version}/plugins/org.apache.ivyde.eclipse.resolvevisualizer_${version}.jar"; 703 sha1 = "225e0c8ccb010d622c159560638578c2fc51a67e"; 704 }; 705 706 meta = with lib; { 707 homepage = "https://ant.apache.org/ivy/ivyde/index.html"; 708 description = "A graph viewer of the resolved dependencies."; 709 longDescription = '' 710 Apache IvyDE Resolve Visualizer is an optional dependency of Apache IvyDE since 711 it requires additional plugins to be installed (Zest). 712 ''; 713 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 714 license = licenses.asl20; 715 platforms = platforms.all; 716 maintainers = [ maintainers.r3dl3g ]; 717 }; 718 }; 719 720 ivy = buildEclipsePlugin rec { 721 name = "ivy-${version}"; 722 version = "2.5.0.final_20191020104435"; 723 724 srcFeature = fetchurl { 725 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivy-${version}/features/org.apache.ivy.eclipse.ant.feature_${version}.jar"; 726 sha256 = "de6134171a0edf569bb9b4c3a91639d469f196e86804d218adfdd60a5d7fa133"; 727 }; 728 729 srcPlugin = fetchurl { 730 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivy-${version}/plugins/org.apache.ivy.eclipse.ant_${version}.jar"; 731 sha256 = "9e8ea20480cf73d0f0f3fb032d263c7536b24fd2eef71beb7d62af4e065f9ab5"; 732 }; 733 734 meta = with lib; { 735 homepage = "https://ant.apache.org/ivy/index.html"; 736 description = "A popular dependency manager focusing on flexibility and simplicity"; 737 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 738 license = licenses.asl20; 739 platforms = platforms.all; 740 maintainers = [ maintainers.r3dl3g ]; 741 }; 742 }; 743 744 ivyant = buildEclipsePlugin rec { 745 name = "ivyant-${version}"; 746 version = "2.5.0.final_20191020104435"; 747 748 srcFeature = fetchurl { 749 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivy-${version}/features/org.apache.ivy.eclipse.ant.feature_${version}.jar"; 750 sha256 = "de6134171a0edf569bb9b4c3a91639d469f196e86804d218adfdd60a5d7fa133"; 751 }; 752 753 srcPlugin = fetchurl { 754 url = "https://downloads.apache.org/ant/ivyde/updatesite/ivy-${version}/plugins/org.apache.ivy.eclipse.ant_${version}.jar"; 755 sha256 = "9e8ea20480cf73d0f0f3fb032d263c7536b24fd2eef71beb7d62af4e065f9ab5"; 756 }; 757 758 meta = with lib; { 759 homepage = "https://ant.apache.org/ivy/ivyde/index.html"; 760 description = "Ant Tasks integrated into Eclipse's Ant runtime"; 761 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 762 license = licenses.asl20; 763 platforms = platforms.all; 764 maintainers = [ maintainers.r3dl3g ]; 765 }; 766 }; 767}