tvl-depot/ops/kontemplate/release.nix
Vincent Ambo aa122cbae7 style: format entire depot with nixpkgs-fmt
This CL can be used to compare the style of nixpkgs-fmt against other
formatters (nixpkgs, alejandra).

Change-Id: I87c6abff6bcb546b02ead15ad0405f81e01b6d9e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4397
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Reviewed-by: tazjin <tazjin@tvl.su>
Reviewed-by: cynthia <cynthia@tvl.fyi>
Reviewed-by: edef <edef@edef.eu>
Reviewed-by: eta <tvl@eta.st>
Reviewed-by: grfn <grfn@gws.fyi>
2022-01-31 16:11:53 +00:00

58 lines
1.7 KiB
Nix

# Copyright (C) 2016-2019 Vincent Ambo <mail@tazj.in>
#
# This file is part of Kontemplate.
#
# Kontemplate is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This file is the Nix derivation used to build release binaries for
# several different architectures and operating systems.
let
pkgs = import
((import <nixpkgs> { }).fetchFromGitHub {
owner = "NixOS";
repo = "nixpkgs-channels";
rev = "541d9cce8af7a490fb9085305939569567cb58e6";
sha256 = "0jgz72hhzkd5vyq5v69vpljjlnf0lqaz7fh327bvb3cvmwbfxrja";
})
{ };
in
with pkgs; buildGoPackage rec {
name = "kontemplate-${version}";
version = "canon";
src = ./.;
goPackagePath = "github.com/tazjin/kontemplate";
goDeps = ./deps.nix;
# This configuration enables the building of statically linked
# executables. For some reason, those will have multiple references
# to the Go compiler's installation path in them, which is the
# reason for setting the 'allowGoReference' flag.
dontStrip = true; # Linker configuration handles stripping
allowGoReference = true;
CGO_ENABLED = "0";
GOCACHE = "off";
# Configure release builds via the "build-matrix" script:
buildInputs = [ git ];
buildPhase = ''
cd go/src/${goPackagePath}
patchShebangs build-release.sh
./build-release.sh build
'';
outputs = [ "out" ];
installPhase = ''
mkdir $out
cp -r release/ $out
'';
meta = with lib; {
description = "A resource templating helper for Kubernetes";
homepage = "http://kontemplate.works/";
license = licenses.gpl3;
};
}