btrbk: add mainProgram (#356350)
[NixPkgs.git] / pkgs / by-name / ge / geoserver / extensions.nix
blob1cc81f0f137c1cb0518dffe4c1e9dc234949d589
1 # DO *NOT* MODIFY THE LINES CONTAINING "hash = ..." OR "version = ...".
2 # THEY ARE GENERATED. SEE ./update.sh.
3 { fetchzip, libjpeg, netcdf, pkgs, stdenv }:
5 let
6   mkGeoserverExtension = { name, version, hash, buildInputs ? [ ] }: stdenv.mkDerivation {
7     pname = "geoserver-${name}-extension";
8     inherit buildInputs version;
10     src = fetchzip {
11       url = "mirror://sourceforge/geoserver/GeoServer/${version}/extensions/geoserver-${version}-${name}-plugin.zip";
12       inherit hash;
13       # We expect several files.
14       stripRoot = false;
15     };
17     installPhase = ''
18       runHook preInstall
20       DIR=$out/share/geoserver/webapps/geoserver/WEB-INF/lib
21       mkdir -p $DIR
22       cp -r $src/* $DIR
24       runHook postInstall
25     '';
26   };
30   app-schema = mkGeoserverExtension {
31     name = "app-schema";
32     version = "2.26.0"; # app-schema
33     hash = "sha256-HOjhM9WI7lsqUNrozLB2oI6szqm+Cb7VqC0Hy9NlNMU="; # app-schema
34   };
36   authkey = mkGeoserverExtension {
37     name = "authkey";
38     version = "2.26.0"; # authkey
39     hash = "sha256-34U3zq/SKm21fZV80+04N/0ygqShdYVMeQNuqtMSXgQ="; # authkey
40   };
42   cas = mkGeoserverExtension {
43     name = "cas";
44     version = "2.26.0"; # cas
45     hash = "sha256-mosawsZkCKOm03CFg9poJ+XwbbGhvNt8AsxnegW59H4="; # cas
46   };
48   charts = mkGeoserverExtension {
49     name = "charts";
50     version = "2.26.0"; # charts
51     hash = "sha256-rPnY9zYgdRoud2I2hcxnODDE/2gsBTMgTPrGAwDdrbM="; # charts
52   };
54   control-flow = mkGeoserverExtension {
55     name = "control-flow";
56     version = "2.26.0"; # control-flow
57     hash = "sha256-4Kl0SgKW8MifMVY1+Aa9Ve0WufjHFQejobhQfnwGwbw="; # control-flow
58   };
60   css = mkGeoserverExtension {
61     name = "css";
62     version = "2.26.0"; # css
63     hash = "sha256-CUG5cBxW/PyP/M2I5/1wC1UndzWSIg8aKeETtUnrH5A="; # css
64   };
66   csw = mkGeoserverExtension {
67     name = "csw";
68     version = "2.26.0"; # csw
69     hash = "sha256-ABNFf6grpU97nd81H/s8Gfd1G9mxMwVdUduubLWrsRE="; # csw
70   };
72   csw-iso = mkGeoserverExtension {
73     name = "csw-iso";
74     version = "2.26.0"; # csw-iso
75     hash = "sha256-dKyVP5FuJ0Tl2z4veMeIJO66dBucfZo6qH+WvSBQ1Es="; # csw-iso
76   };
78   db2 = mkGeoserverExtension {
79     name = "db2";
80     version = "2.26.0"; # db2
81     hash = "sha256-L0Xrc0MuSiezKk7l4P4lm3phRou79neQds4Yu2VG5DY="; # db2
82   };
84   # Needs wps extension.
85   dxf = mkGeoserverExtension {
86     name = "dxf";
87     version = "2.26.0"; # dxf
88     hash = "sha256-OtpYej/MxqeoMBw17Ltr9l5iOGUa91L30hgBz6ZbD+Y="; # dxf
89   };
91   excel = mkGeoserverExtension {
92     name = "excel";
93     version = "2.26.0"; # excel
94     hash = "sha256-UHIVJnUJnzPDJWsrQw9YasUedpLujKr9s3VJtSgESHY="; # excel
95   };
97   feature-pregeneralized = mkGeoserverExtension {
98     name = "feature-pregeneralized";
99     version = "2.26.0"; # feature-pregeneralized
100     hash = "sha256-WT1TsHcYoxJK0LWsF4h8VdUGxIecx9SuIqWoA9JjZfA="; # feature-pregeneralized
101   };
103   # Note: The extension name ("gdal") clashes with pkgs.gdal.
104   gdal = mkGeoserverExtension {
105     name = "gdal";
106     version = "2.26.0"; # gdal
107     buildInputs = [ pkgs.gdal ];
108     hash = "sha256-lGyBxRCz5DvDQUNQmsk1+DfArwx3kcMoSgQq+O/DqZc="; # gdal
109   };
111   # Throws "java.io.FileNotFoundException: URL [jar:file:/nix/store/.../WEB-INF/lib/gs-geofence-server-2.24.1.jar!/geofence-default-override.properties] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/nix/store/.../WEB-INF/lib/gs-geofence-server-2.24.1.jar!/geofence-default-override.properties" but seems to work out of the box.
112   #geofence = mkGeoserverExtension {
113   #  name = "geofence";
114   #  version = "2.26.0"; # geofence
115   #  hash = "sha256-Io71mNpUu15klMWFHCaFfRmxPUGGTASZE7MZWyv2TDQ="; # geofence
116   #};
118   #geofence-server = mkGeoserverExtension {
119   #  name = "geofence-server";
120   #  version = "2.26.0"; # geofence-server
121   #  hash = "sha256-UPRupgj9La/JWAneGeM+UdCvnkcW3ZTe7c1bYZRURGI="; # geofence-server
122   #};
124   #geofence-wps = mkGeoserverExtension {
125   #  name = "geofence-wps";
126   #  version = "2.26.0"; # geofence-wps
127   #  hash = "sha256-SA7nWTyawzDZVsOATRLW/MQQfyXWhHQif3/4MdVogBM="; # geofence-wps
128   #};
130   geopkg-output = mkGeoserverExtension {
131     name = "geopkg-output";
132     version = "2.26.0"; # geopkg-output
133     hash = "sha256-SKIInEC9TI2FBtduGHi3apZip5ubA4/ip58+w0O1a38="; # geopkg-output
134   };
136   grib = mkGeoserverExtension {
137     name = "grib";
138     version = "2.26.0"; # grib
139     hash = "sha256-5Hn6LUxsCP5YvVsMgh6m/oMBJuIo2Y9XdbSRQAJm+vI="; # grib
140     buildInputs = [ netcdf ];
141   };
143   gwc-s3 = mkGeoserverExtension {
144     name = "gwc-s3";
145     version = "2.26.0"; # gwc-s3
146     hash = "sha256-www+MTFlkmJ6GeGd3v8uGTYV7PYVg5pIS9/2s1D6YeU="; # gwc-s3
147   };
149   h2 = mkGeoserverExtension {
150     name = "h2";
151     version = "2.26.0"; # h2
152     hash = "sha256-+Y7pILmnz51c5eO+OdqHGLD05fEqaM3vkFU7s0UiA2g="; # h2
153   };
155   iau = mkGeoserverExtension {
156     name = "iau";
157     version = "2.26.0"; # iau
158     hash = "sha256-5oM3JxD6HKVhq1/IxXWck1MtQ8KwsLtf+LQACpvdKMA="; # iau
159   };
161   importer = mkGeoserverExtension {
162     name = "importer";
163     version = "2.26.0"; # importer
164     hash = "sha256-HFBIEB8pgVaCMF34Z0Clp3+nk2h4Va0xV2ptSZUSx9I="; # importer
165   };
167   inspire = mkGeoserverExtension {
168     name = "inspire";
169     version = "2.26.0"; # inspire
170     hash = "sha256-uIryr4WQbWdAMjqATGf0txp1sZWWABSMv8o2xiKaWiI="; # inspire
171   };
173   # Needs Kakadu plugin from
174   # https://github.com/geosolutions-it/imageio-ext
175   #jp2k = mkGeoserverExtension {
176   #  name = "jp2k";
177   #  version = "2.26.0"; # jp2k
178   #  hash = "sha256-gPipm6hnkIyEU3a8NbSCm5QUSF+IKNHgt5DNFsvC++c="; # jp2k
179   #};
181   libjpeg-turbo = mkGeoserverExtension {
182     name = "libjpeg-turbo";
183     version = "2.26.0"; # libjpeg-turbo
184     hash = "sha256-I1Ojsgd+gRjSJJkx9wSfzJfVq5z3vgxA4zynZvVd4jU="; # libjpeg-turbo
185     buildInputs = [ libjpeg.out ];
186   };
188   mapml = mkGeoserverExtension {
189     name = "mapml";
190     version = "2.26.0"; # mapml
191     hash = "sha256-VGg/3cB+KUwZtbKQUoU4NURDjcANzQpPv4ZWeCzwkq0="; # mapml
192   };
194   mbstyle = mkGeoserverExtension {
195     name = "mbstyle";
196     version = "2.26.0"; # mbstyle
197     hash = "sha256-Z5CNKP2fqMcw6prP/b84tOAPYwlLiFsbV26VdVnqFns="; # mbstyle
198   };
200   metadata = mkGeoserverExtension {
201     name = "metadata";
202     version = "2.26.0"; # metadata
203     hash = "sha256-6E9Z6WqCQxlDL3w1FiI+gOzjQ4ZyS5oucj1/02W4k4Y="; # metadata
204   };
206   mongodb = mkGeoserverExtension {
207     name = "mongodb";
208     version = "2.26.0"; # mongodb
209     hash = "sha256-thfgMeDrDb2rPh9h9R2AgYYWPBHcEG/sI4UhNBb/DfQ="; # mongodb
210   };
212   monitor = mkGeoserverExtension {
213     name = "monitor";
214     version = "2.26.0"; # monitor
215     hash = "sha256-vgeqZXzb8nz7daAeur1JMLS0Rospgyx+v9n687000EE="; # monitor
216   };
218   mysql = mkGeoserverExtension {
219     name = "mysql";
220     version = "2.26.0"; # mysql
221     hash = "sha256-PCNCyqJwOK6P6sDWVMdV6gGXgHJOPw97cqkjaixZxwQ="; # mysql
222   };
224   netcdf = mkGeoserverExtension {
225     name = "netcdf";
226     version = "2.26.0"; # netcdf
227     hash = "sha256-0i/zmiIE+xjec6dOd237MdIBrCspZEL+8h1c/g0h7oU="; # netcdf
228     buildInputs = [ netcdf ];
229   };
231   netcdf-out = mkGeoserverExtension {
232     name = "netcdf-out";
233     version = "2.26.0"; # netcdf-out
234     hash = "sha256-xl2mY9QYSVeC2k43H2GFz2D56rajCT9FlpP47Q8aOe8="; # netcdf-out
235     buildInputs = [ netcdf ];
236   };
238   ogr-wfs = mkGeoserverExtension {
239     name = "ogr-wfs";
240     version = "2.26.0"; # ogr-wfs
241     buildInputs = [ pkgs.gdal ];
242     hash = "sha256-LiB+BE2Q3a2US7HJkBWT0Z9AMZ3A3M584qbEV1uhhEM="; # ogr-wfs
243   };
245   # Needs ogr-wfs extension.
246   ogr-wps = mkGeoserverExtension {
247     name = "ogr-wps";
248     version = "2.26.0"; # ogr-wps
249     # buildInputs = [ pkgs.gdal ];
250     hash = "sha256-0o4cD8wv1Km5pljxAlokVRVEfMbklXgkYhxFZqPdROk="; # ogr-wps
251   };
253   oracle = mkGeoserverExtension {
254     name = "oracle";
255     version = "2.26.0"; # oracle
256     hash = "sha256-mxc46ctIh7imjQgTI2zZ9gwtgDF6GkE/b5IogUktF9Y="; # oracle
257   };
259   params-extractor = mkGeoserverExtension {
260     name = "params-extractor";
261     version = "2.26.0"; # params-extractor
262     hash = "sha256-dLzEdnNy+Nrxkc4aBCGTESuReW6mkgXEpXDo9rDzsBU="; # params-extractor
263   };
265   printing = mkGeoserverExtension {
266     name = "printing";
267     version = "2.26.0"; # printing
268     hash = "sha256-31T/tizxkmzYbxR1eLiY3DanwlFVdeZvFOESgBnuG1A="; # printing
269   };
271   pyramid = mkGeoserverExtension {
272     name = "pyramid";
273     version = "2.26.0"; # pyramid
274     hash = "sha256-lpDexw5nd1jm9cDFsQ/qXdwbX5vTD0RXKIAOg6dKQqE="; # pyramid
275   };
277   querylayer = mkGeoserverExtension {
278     name = "querylayer";
279     version = "2.26.0"; # querylayer
280     hash = "sha256-ajrNJ0eG0pp+v/f4N5kxcUzYOyXuLhMRzvdfdiJh0Vk="; # querylayer
281   };
283   sldservice = mkGeoserverExtension {
284     name = "sldservice";
285     version = "2.26.0"; # sldservice
286     hash = "sha256-xxpKSDghK+Xz8buPU5lzEa7eiG5A0rPgzCaIO9GKCMY="; # sldservice
287   };
289   sqlserver = mkGeoserverExtension {
290     name = "sqlserver";
291     version = "2.26.0"; # sqlserver
292     hash = "sha256-UwZ4ho+HG+ocwri+N4ebTATGcT4tukAxwvx84rP0VWk="; # sqlserver
293   };
295   vectortiles = mkGeoserverExtension {
296     name = "vectortiles";
297     version = "2.26.0"; # vectortiles
298     hash = "sha256-rlQcWLEPvaKDT6JZ0RuZtaHz1bgtsblFOybKOVqDSVM="; # vectortiles
299   };
301   wcs2_0-eo = mkGeoserverExtension {
302     name = "wcs2_0-eo";
303     version = "2.26.0"; # wcs2_0-eo
304     hash = "sha256-Ky+unKH+WBMvo/rlNPv2Uca3X610yXZvCy0/5KEN6wk="; # wcs2_0-eo
305   };
307   web-resource = mkGeoserverExtension {
308     name = "web-resource";
309     version = "2.26.0"; # web-resource
310     hash = "sha256-S7Wu4wGo2j8PcBC8VS7EECBlr7NN1hALC1VOM5b6Wk0="; # web-resource
311   };
313   wmts-multi-dimensional = mkGeoserverExtension {
314     name = "wmts-multi-dimensional";
315     version = "2.26.0"; # wmts-multi-dimensional
316     hash = "sha256-BNigZB16d1BKRTl/UJs1oWYFKn/cFk5WX1fBwvC046I="; # wmts-multi-dimensional
317   };
319   wps = mkGeoserverExtension {
320     name = "wps";
321     version = "2.26.0"; # wps
322     hash = "sha256-HVTDMqG23Ign7qottKRo1PtQNr6606nV34SRopAMO1Q="; # wps
323   };
325   # Needs hazelcast (https://github.com/hazelcast/hazelcast (?)) which is not
326   # available in nixpgs as of 2024/01.
327   #wps-cluster-hazelcast = mkGeoserverExtension {
328   #  name = "wps-cluster-hazelcast";
329   #  version = "2.26.0"; # wps-cluster-hazelcast
330   #  hash = "sha256-R0Btbf6BNwGKC2TQ6BmSte612Sel7NspOX9KU+zsHBc="; # wps-cluster-hazelcast
331   #};
333   wps-download = mkGeoserverExtension {
334     name = "wps-download";
335     version = "2.26.0"; # wps-download
336     hash = "sha256-sVbAi0y8n2shox6TX0Y4Hg5GhYakv5+tgloMix6Wbfg="; # wps-download
337   };
339   # Needs Postrgres configuration or similar.
340   # See https://docs.geoserver.org/main/en/user/extensions/wps-jdbc/index.html
341   wps-jdbc = mkGeoserverExtension {
342     name = "wps-jdbc";
343     version = "2.26.0"; # wps-jdbc
344     hash = "sha256-iJk24m4UDwK1PrU0PiCDPGj0eK7EEQajUFyl+9aIGpE="; # wps-jdbc
345   };
347   ysld = mkGeoserverExtension {
348     name = "ysld";
349     version = "2.26.0"; # ysld
350     hash = "sha256-/qbtfaIE/4haGeS6U+FML1JI/AyXWFyKOd8tGaYFCmw="; # ysld
351   };