@@ -238,136 +238,40 @@ divert 258 DIVERT # Divert pseudo-protocol
238238 '';
239239 };
240240
241− overrideCabal = drv: f: (drv.override (args: args // {
242− mkDerivation = drv: (args.mkDerivation drv).override f;
243− })) // {
244− overrideScope = scope: overrideCabal (drv.overrideScope scope) f;
245− };
246−
247− static-project-m36-server = drv: overrideCabal drv (drv: {
248− postFixup = "rm -rf $out/lib $out/nix-support $out/share/doc $out/bin/Example* $out/bin/tutd $out/bin/bigrel $out/bin/handles $out/bin/project-m36-websocket-server";
249− });
250−
251− static-project-m36-websocket-server = drv: overrideCabal drv (drv: {
252− postFixup = "rm -rf $out/lib $out/nix-support $out/share/doc $out/bin/Example* $out/bin/tutd $out/bin/bigrel $out/bin/handles $out/bin/project-m36-server";
253− });
254−
255− static-project-m36-tutd = drv: overrideCabal drv (drv: {
256− postFixup = "rm -rf $out/lib $out/nix-support $out/share/doc $out/bin/Example* $out/bin/project-m36-server $out/bin/bigrel $out/bin/handles $out/bin/project-m36-websocket-server";
257− });
258−
259− static-project-m36-example = drv: overrideCabal drv (drv: {
260− postFixup = "rm -fr $out/lib $out/nix-support $out/share/doc $out/bin/tutd $out/bin/bigrel $out/bin/handles $out/bin/project-m36-server $out/bin/project-m36-websocket-server";
261− });
262−
263− project-m36-server-docker = pkgs.dockerTools.buildImage {
264− name = "project-m36-server";
265− tag = project-m36.version;
266−
267− contents = [ (static-project-m36-server static-project-m36)
268− project-m36-env ];
269− config = {
270− Env = [
271− "PARA1="
272− "PARA2="
273− ];
274− User = "project-m36";
275− Cmd = [ "${static-project-m36}/bin/project-m36-server" ];
276− ExposedPorts = {
277− "5432/tcp" = {};
278− };
279− WorkingDir = "/data";
280− Volumes = {
281− "/data" = {};
282− };
283− };
284−};
285−
286− project-m36-websocket-server-docker = pkgs.dockerTools.buildImage {
287− name = "project-m36-websocket";
288− tag = project-m36.version;
289−
290− contents = [ (static-project-m36-websocket-server static-project-m36)
291− project-m36-env ];
292− config = {
293− Env = [
294− "PARA1="
295− "PARA2="
296− ];
297− User = "project-m36";
298− Cmd = [ "${static-project-m36}/bin/project-m36-websocket-server" ];
299− ExposedPorts = {
300− "5432/tcp" = {};
301− };
302− WorkingDir = "/data";
303− Volumes = {
304− "/data" = {};
305− };
306− };
307−};
308− project-m36-tutd-docker = pkgs.dockerTools.buildImage {
309− name = "project-m36-tutd";
310− tag = project-m36.version;
311−
312− contents = [ (static-project-m36-tutd static-project-m36)
313− project-m36-env ];
314− config = {
315− Env = [
316− "PARA1="
317− "PARA2="
318− ];
319− User = "project-m36";
320− Cmd = [ "${static-project-m36}/bin/tutd" ];
321− ExposedPorts = {
322− "5432/tcp" = {};
323− };
324− WorkingDir = "/data";
325− Volumes = {
326− "/data" = {};
327− };
328− };
329−};
330− project-m36-example-docker = pkgs.dockerTools.buildImage {
331− name = "project-m36-example";
332− tag = project-m36.version;
333−
334− contents = [ (static-project-m36-example static-project-m36)
335− project-m36-env ];
336− config = {
337− Env = [
338− "PARA1="
339− "PARA2="
340− ];
341− User = "project-m36";
342− Cmd = [ "${static-project-m36}/bin/Example-SimpleClient" ];
343− ExposedPorts = {
344− "5432/tcp" = {};
345− };
346− WorkingDir = "/data";
347− Volumes = {
348− "/data" = {};
349− };
350− };
351−};
352241 project-m36-docker = pkgs.dockerTools.buildImage {
353242 name = "project-m36";
354243 tag = project-m36.version;
355−
244+ created = "now";
245+ # This is a quick and dirty hack to fix the hard-coding architecture
246+ extraCommands = ''
247+ myar=$(uname -m)
248+ case $myar in
249+ aarch64)
250+ cat $out/json | sed 's/"amd64"/"arm64"/g' > $out/json1
251+ cp $out/json1 $out/json
252+ ;;
253+ *) ;;
254+ esac
255+ '';
256+
356257 contents = [ static-project-m36
357258 project-m36-env ];
358259 config = {
359− Env = [
360− "PARA1="
361− "PARA2="
260+ Env = [
261+ "PATH=${static-project-m36}/bin:$PATH"
262+ "DATABASE=mytestdb"
263+ "DATABASE_DIRECTORY=/var/project-m36/data"
264+ "HOSTNAME=localhost"
265+ "PORT=54321"
362266 ];
363267 User = "project-m36";
364− Cmd = [ "${static-project-m36}/bin/project-m36-server" ];
268+ Cmd = [ "project-m36-server" ];
365269 ExposedPorts = {
366− "5432/tcp" = {};
270+ "54321/tcp" = {};
367271 };
368− WorkingDir = "/data";
272+ WorkingDir = "/var/project-m36/data";
369273 Volumes = {
370− "/data" = {};
274+ "/var/project-m36/data" = {};
371275 };
372276 };
373277};
@@ -375,8 +279,4 @@ in {
375279 inherit project-m36;
376280 inherit static-project-m36;
377281 inherit project-m36-docker;
378− inherit project-m36-server-docker;
379− inherit project-m36-websocket-server-docker;
380− inherit project-m36-tutd-docker;
381− inherit project-m36-example-docker;
382282}