about summary refs log tree commit diff
path: root/tools/nixery/prepare-image/default.nix
diff options
context:
space:
mode:
authorVincent Ambo <tazjin@google.com>2019-11-11T21·07+0000
committerVincent Ambo <github@tazj.in>2019-11-27T14·12+0000
commit2b82f1b71a50b8b1473421cce0eec1a0d7ddc360 (patch)
treed42dcfd823f63ac77d3517b3c3154619f87f2cd2 /tools/nixery/prepare-image/default.nix
parentdf88da126a5c0dc97aa0fadaf1baf069b80ce251 (diff)
refactor: Reshuffle file structure for better code layout
This gets rid of the package called "server" and instead moves
everything into the project root, such that Go actually builds us a
binary called `nixery`.

This is the first step towards factoring out CLI-based functionality
for Nixery.
Diffstat (limited to 'tools/nixery/prepare-image/default.nix')
-rw-r--r--tools/nixery/prepare-image/default.nix29
1 files changed, 29 insertions, 0 deletions
diff --git a/tools/nixery/prepare-image/default.nix b/tools/nixery/prepare-image/default.nix
new file mode 100644
index 000000000000..60b208f522d5
--- /dev/null
+++ b/tools/nixery/prepare-image/default.nix
@@ -0,0 +1,29 @@
+# Copyright 2019 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# This file builds a wrapper script called by Nixery to ask for the
+# content information for a given image.
+#
+# The purpose of using a wrapper script is to ensure that the paths to
+# all required Nix files are set correctly at runtime.
+
+{ pkgs ? import <nixpkgs> {} }:
+
+pkgs.writeShellScriptBin "nixery-prepare-image" ''
+  exec ${pkgs.nix}/bin/nix-build \
+    --show-trace \
+    --no-out-link "$@" \
+    --argstr loadPkgs ${./load-pkgs.nix} \
+    ${./prepare-image.nix}
+''