@@ -49,21 +49,14 @@ let
49 (self: super: let
49 (self: super: let
50 pkgs = self.callPackage ({ pkgs }: pkgs) {};
50 pkgs = self.callPackage ({ pkgs }: pkgs) {};
52+ obelisk-executable-config = pkgs.obeliskExecutableConfig.haskellPackage self;
53+ obelisk-executable-config-inject = pkgs.obeliskExecutableConfig.platforms.web.inject self;
52 obelisk-asset-manifest = self.callCabal2nix "obelisk-asset-manifest" (hackGet ./lib/asset + "/manifest") {};
55 obelisk-asset-manifest = self.callCabal2nix "obelisk-asset-manifest" (hackGet ./lib/asset + "/manifest") {};
53 obelisk-asset-serve-snap = self.callCabal2nix "obelisk-asset-serve-snap" (hackGet ./lib/asset + "/serve-snap") {};
56 obelisk-asset-serve-snap = self.callCabal2nix "obelisk-asset-serve-snap" (hackGet ./lib/asset + "/serve-snap") {};
54 obelisk-backend = self.callCabal2nix "obelisk-backend" (cleanSource ./lib/backend) {};
57 obelisk-backend = self.callCabal2nix "obelisk-backend" (cleanSource ./lib/backend) {};
55 obelisk-cliapp = self.callCabal2nix "obelisk-cliapp" (cleanSource ./lib/cliapp) {};
58 obelisk-cliapp = self.callCabal2nix "obelisk-cliapp" (cleanSource ./lib/cliapp) {};
56− obelisk-command = (self.callCabal2nix "obelisk-command" (cleanSource ./lib/command) {}).overrideAttrs
59+ obelisk-command = self.callCabal2nix "obelisk-command" (cleanSource ./lib/command) {};
58− buildInputs = drv.buildInputs ++ [ pkgs.makeWrapper ];
60− ${drv.postFixup or ""}
61− # Make `ob` reference its runtime dependencies.
62− wrapProgram "$out"/bin/ob --prefix PATH : ${pkgs.lib.makeBinPath (commandRuntimeDeps pkgs)}
65− obelisk-executable-config = pkgs.obeliskExecutableConfig.haskellPackage self;
66− obelisk-executable-config-inject = pkgs.obeliskExecutableConfig.platforms.web.inject self;
67 obelisk-frontend = self.callCabal2nix "obelisk-frontend" (cleanSource ./lib/frontend) {};
60 obelisk-frontend = self.callCabal2nix "obelisk-frontend" (cleanSource ./lib/frontend) {};
68 obelisk-run = self.callCabal2nix "obelisk-run" (cleanSource ./lib/run) {};
61 obelisk-run = self.callCabal2nix "obelisk-run" (cleanSource ./lib/run) {};
69 obelisk-route = self.callCabal2nix "obelisk-route" (cleanSource ./lib/route) {};
62 obelisk-route = self.callCabal2nix "obelisk-route" (cleanSource ./lib/route) {};
@@ -72,7 +65,6 @@ let
72 obelisk-snap-extras = self.callCabal2nix "obelisk-snap-extras" (cleanSource ./lib/snap-extras) {};
65 obelisk-snap-extras = self.callCabal2nix "obelisk-snap-extras" (cleanSource ./lib/snap-extras) {};
75− # Dynamic linking with split objects dramatically increases startup time (about 0.5 seconds on a decent machine with SSD)
76 (self: super: let
68 (self: super: let
77 pkgs = self.callPackage ({ pkgs }: pkgs) {};
69 pkgs = self.callPackage ({ pkgs }: pkgs) {};
78 haskellLib = pkgs.haskell.lib;
70 haskellLib = pkgs.haskell.lib;
@@ -97,7 +89,17 @@ let
92+ # Dynamic linking with split objects dramatically increases startup time (about
93+ # 0.5 seconds on a decent machine with SSD), so we do `justStaticExecutables`.
100− obelisk-command = addOptparseApplicativeCompletionScripts "ob" (haskellLib.justStaticExecutables super.obelisk-command);
94+ obelisk-command = (addOptparseApplicativeCompletionScripts "ob"
95+ (haskellLib.justStaticExecutables super.obelisk-command)).overrideAttrs (drv: {
96+ buildInputs = drv.buildInputs ++ [ pkgs.makeWrapper ];
98+ ${drv.postFixup or ""}
99+ # Make `ob` reference its runtime dependencies.
100+ wrapProgram "$out"/bin/ob --prefix PATH : ${pkgs.lib.makeBinPath (commandRuntimeDeps pkgs)}
101 obelisk-selftest = haskellLib.justStaticExecutables super.obelisk-selftest;
103 obelisk-selftest = haskellLib.justStaticExecutables super.obelisk-selftest;