Merge pull request #86035 from zowoq/go-fixes

This commit is contained in:
Jörg Thalheim 2020-04-27 10:03:52 +01:00 committed by GitHub
commit a90356e08a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 65 additions and 60 deletions

View File

@ -1,5 +1,5 @@
# This file was generated by go2nix. # This file was generated by go2nix.
{ stdenv, buildGoPackage, fetchFromGitHub }: { stdenv, buildGoPackage, fetchFromGitHub, installShellFiles }:
buildGoPackage rec { buildGoPackage rec {
pname = "machine"; pname = "machine";
@ -14,13 +14,13 @@ buildGoPackage rec {
sha256 = "0xxzxi5v7ji9j2k7kxhi0ah91lfa7b9rg3nywgx0lkv8dlgp8kmy"; sha256 = "0xxzxi5v7ji9j2k7kxhi0ah91lfa7b9rg3nywgx0lkv8dlgp8kmy";
}; };
postInstall = '' nativeBuildInputs = [ installShellFiles ];
mkdir -p \
$bin/share/bash-completion/completions/ \
$bin/share/zsh/site-functions/
cp go/src/github.com/docker/machine/contrib/completion/bash/* $bin/share/bash-completion/completions/ postInstall = ''
cp go/src/github.com/docker/machine/contrib/completion/zsh/* $bin/share/zsh/site-functions/ pushd go/src/${goPackagePath}/contrib/completion
installShellCompletion --bash bash/*
installShellCompletion --zsh zsh/*
popd
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -15,9 +15,10 @@ buildGoPackage rec {
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];
postInstall = '' postInstall = ''
$bin/bin/kompose completion bash > kompose.bash for shell in bash zsh; do
$bin/bin/kompose completion zsh > kompose.zsh $bin/bin/kompose completion $shell > kompose.$shell
installShellCompletion kompose.{bash,zsh} installShellCompletion kompose.$shell
done
''; '';
meta = with lib; { meta = with lib; {

View File

@ -1,4 +1,4 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub, go-bindata }: { stdenv, lib, buildGoPackage, fetchFromGitHub, go-bindata, installShellFiles }:
let let
goPackagePath = "k8s.io/kops"; goPackagePath = "k8s.io/kops";
@ -18,7 +18,7 @@ let
inherit sha256; inherit sha256;
}; };
nativeBuildInputs = [ go-bindata ]; nativeBuildInputs = [ go-bindata installShellFiles ];
subPackages = [ "cmd/kops" ]; subPackages = [ "cmd/kops" ];
buildFlagsArray = '' buildFlagsArray = ''
@ -33,10 +33,10 @@ let
''; '';
postInstall = '' postInstall = ''
mkdir -p $bin/share/bash-completion/completions for shell in bash zsh; do
mkdir -p $bin/share/zsh/site-functions $bin/bin/kops completion $shell > kops.$shell
$bin/bin/kops completion bash > $bin/share/bash-completion/completions/kops installShellCompletion kops.$shell
$bin/bin/kops completion zsh > $bin/share/zsh/site-functions/_kops done
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,4 +1,4 @@
{ stdenv, lib, buildPackages, buildGoPackage, fetchFromGitHub }: { stdenv, lib, buildPackages, buildGoPackage, fetchFromGitHub, installShellFiles }:
let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; in let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; in
@ -17,13 +17,15 @@ buildGoPackage rec {
goDeps = ./deps.nix; goDeps = ./deps.nix;
nativeBuildInputs = [ installShellFiles ];
postInstall = postInstall =
let stern = if isCrossBuild then buildPackages.stern else "$bin"; in let stern = if isCrossBuild then buildPackages.stern else "$bin"; in
'' ''
mkdir -p $bin/share/bash-completion/completions for shell in bash zsh; do
${stern}/bin/stern --completion bash > $bin/share/bash-completion/completions/stern ${stern}/bin/stern --completion $shell > stern.$shell
mkdir -p $bin/share/zsh/site-functions installShellCompletion stern.$shell
${stern}/bin/stern --completion zsh > $bin/share/zsh/site-functions/_stern done
''; '';
meta = with lib; { meta = with lib; {

View File

@ -1,4 +1,4 @@
{ stdenv, buildGoPackage, fetchFromGitHub, buildPackages }: { stdenv, buildGoPackage, fetchFromGitHub, buildPackages, installShellFiles }:
buildGoPackage rec { buildGoPackage rec {
pname = "rclone"; pname = "rclone";
@ -17,6 +17,8 @@ buildGoPackage rec {
outputs = [ "bin" "out" "man" ]; outputs = [ "bin" "out" "man" ];
nativeBuildInputs = [ installShellFiles ];
postInstall = postInstall =
let let
rcloneBin = rcloneBin =
@ -25,10 +27,11 @@ buildGoPackage rec {
else stdenv.lib.getBin buildPackages.rclone; else stdenv.lib.getBin buildPackages.rclone;
in in
'' ''
install -D -m644 $src/rclone.1 $man/share/man/man1/rclone.1 installManPage $src/rclone.1
mkdir -p $bin/share/zsh/site-functions $bin/share/bash-completion/completions/ for shell in bash zsh; do
${rcloneBin}/bin/rclone genautocomplete zsh $bin/share/zsh/site-functions/_rclone ${rcloneBin}/bin/rclone genautocomplete $shell rclone.$shell
${rcloneBin}/bin/rclone genautocomplete bash $bin/share/bash-completion/completions/rclone.bash installShellCompletion rclone.$shell
done
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,4 +1,4 @@
{ stdenv, buildGoPackage, fetchFromGitHub, groff, utillinux }: { stdenv, buildGoPackage, fetchFromGitHub, groff, installShellFiles, utillinux }:
buildGoPackage rec { buildGoPackage rec {
pname = "hub"; pname = "hub";
@ -16,7 +16,7 @@ buildGoPackage rec {
sha256 = "1qjab3dpia1jdlszz3xxix76lqrm4zbmqzd9ymld7h06awzsg2vh"; sha256 = "1qjab3dpia1jdlszz3xxix76lqrm4zbmqzd9ymld7h06awzsg2vh";
}; };
nativeBuildInputs = [ groff utillinux ]; nativeBuildInputs = [ groff installShellFiles utillinux ];
postPatch = '' postPatch = ''
patchShebangs . patchShebangs .
@ -24,13 +24,13 @@ buildGoPackage rec {
postInstall = '' postInstall = ''
cd go/src/${goPackagePath} cd go/src/${goPackagePath}
install -D etc/hub.zsh_completion "$bin/share/zsh/site-functions/_hub" installShellCompletion --zsh --name _hub etc/hub.zsh_completion
install -D etc/hub.bash_completion.sh "$bin/share/bash-completion/completions/hub" installShellCompletion --bash --name hub etc/hub.bash_completion.sh
install -D etc/hub.fish_completion "$bin/share/fish/vendor_completions.d/hub.fish" installShellCompletion --fish --name hub.fish etc/hub.fish_completion
LC_ALL=C.UTF8 \ LC_ALL=C.UTF8 \
make man-pages make man-pages
cp -vr --parents share/man/man[1-9]/*.[1-9] $bin/ installManPage share/man/man[1-9]/*.[1-9]
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -242,11 +242,7 @@ let
# Add default meta information # Add default meta information
homepage = "https://${goPackagePath}"; homepage = "https://${goPackagePath}";
platforms = go.meta.platforms or lib.platforms.all; platforms = go.meta.platforms or lib.platforms.all;
} // meta // { } // meta;
# add an extra maintainer to every package
maintainers = (meta.maintainers or []) ++
[ lib.maintainers.lethalman ];
};
}); });
in if disabled then in if disabled then
throw "${package.name} not supported for go ${go.meta.branch}" throw "${package.name} not supported for go ${go.meta.branch}"

View File

@ -19,9 +19,10 @@ buildGoPackage rec {
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];
postInstall = '' postInstall = ''
$bin/bin/kind completion bash > kind.bash for shell in bash zsh; do
$bin/bin/kind completion zsh > kind.zsh $bin/bin/kind completion $shell > kind.$shell
installShellCompletion kind.{bash,zsh} installShellCompletion kind.$shell
done
''; '';
meta = { meta = {

View File

@ -1,4 +1,4 @@
{ stdenv, buildGoPackage, fetchFromGitHub }: { stdenv, buildGoPackage, fetchFromGitHub, installShellFiles }:
buildGoPackage { buildGoPackage {
pname = "mailexporter"; pname = "mailexporter";
@ -15,9 +15,11 @@ buildGoPackage {
goDeps = ./mail-exporter_deps.nix; goDeps = ./mail-exporter_deps.nix;
nativeBuildInputs = [ installShellFiles ];
postInstall = '' postInstall = ''
install -D -m 0444 -t $bin/share/man/man1 $src/man/mailexporter.1 installManPage $src/man/mailexporter.1
install -D -m 0444 -t $bin/share/man/man5 $src/man/mailexporter.conf.5 installManPage $src/man/mailexporter.conf.5
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,6 +1,7 @@
{ stdenv, buildGoPackage, fetchurl { stdenv, buildGoPackage, fetchurl
, cmake, xz, which, autoconf , cmake, xz, which, autoconf
, ncurses6, libedit, libunwind , ncurses6, libedit, libunwind
, installShellFiles
}: }:
let let
@ -8,7 +9,7 @@ let
linuxDeps = [ ncurses6 ]; linuxDeps = [ ncurses6 ];
buildInputs = if stdenv.isDarwin then darwinDeps else linuxDeps; buildInputs = if stdenv.isDarwin then darwinDeps else linuxDeps;
nativeBuildInputs = [ cmake xz which autoconf ]; nativeBuildInputs = [ installShellFiles cmake xz which autoconf ];
in in
buildGoPackage rec { buildGoPackage rec {
@ -42,7 +43,7 @@ buildGoPackage rec {
runHook preInstall runHook preInstall
install -D cockroachoss $bin/bin/cockroach install -D cockroachoss $bin/bin/cockroach
install -D cockroach.bash $bin/share/bash-completion/completions/cockroach.bash installShellCompletion cockroach.bash
mkdir -p $man/share/man mkdir -p $man/share/man
cp -r man $man/share/man cp -r man $man/share/man

View File

@ -5,6 +5,7 @@
, writeShellScriptBin, apparmor-profiles, apparmor-parser , writeShellScriptBin, apparmor-profiles, apparmor-parser
, criu , criu
, bash , bash
, installShellFiles
}: }:
buildGoPackage rec { buildGoPackage rec {
@ -39,11 +40,10 @@ buildGoPackage rec {
'') '')
]} ]}
mkdir -p "$bin/share/bash-completion/completions/" installShellCompletion --bash go/src/github.com/lxc/lxd/scripts/bash/lxd-client
cp -av go/src/github.com/lxc/lxd/scripts/bash/lxd-client "$bin/share/bash-completion/completions/lxc"
''; '';
nativeBuildInputs = [ pkgconfig makeWrapper ]; nativeBuildInputs = [ installShellFiles pkgconfig makeWrapper ];
buildInputs = [ lxc acl libcap libco-canonical.dev dqlite.dev buildInputs = [ lxc acl libcap libco-canonical.dev dqlite.dev
raft-canonical.dev sqlite-replication udev.dev ]; raft-canonical.dev sqlite-replication udev.dev ];

View File

@ -1,4 +1,4 @@
{ stdenv, buildGoPackage, fetchFromGitHub, git, gnupg, xclip, wl-clipboard, makeWrapper }: { stdenv, buildGoPackage, fetchFromGitHub, git, gnupg, xclip, wl-clipboard, installShellFiles, makeWrapper }:
buildGoPackage rec { buildGoPackage rec {
pname = "gopass"; pname = "gopass";
@ -6,7 +6,7 @@ buildGoPackage rec {
goPackagePath = "github.com/gopasspw/gopass"; goPackagePath = "github.com/gopasspw/gopass";
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ installShellFiles makeWrapper ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gopasspw"; owner = "gopasspw";
@ -22,13 +22,10 @@ buildGoPackage rec {
] ++ stdenv.lib.optional stdenv.isLinux wl-clipboard); ] ++ stdenv.lib.optional stdenv.isLinux wl-clipboard);
postInstall = '' postInstall = ''
mkdir -p \ for shell in bash fish zsh; do
$bin/share/bash-completion/completions \ $bin/bin/gopass completion $shell > gopass.$shell
$bin/share/zsh/site-functions \ installShellCompletion gopass.$shell
$bin/share/fish/vendor_completions.d done
$bin/bin/gopass completion bash > $bin/share/bash-completion/completions/_gopass
$bin/bin/gopass completion zsh > $bin/share/zsh/site-functions/_gopass
$bin/bin/gopass completion fish > $bin/share/fish/vendor_completions.d/gopass.fish
''; '';
postFixup = '' postFixup = ''

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, buildGoPackage }: { stdenv, fetchFromGitHub, buildGoPackage, installShellFiles }:
buildGoPackage rec { buildGoPackage rec {
pname = "vault"; pname = "vault";
@ -15,14 +15,16 @@ buildGoPackage rec {
subPackages = [ "." ]; subPackages = [ "." ];
nativeBuildInputs = [ installShellFiles ];
buildFlagsArray = [ buildFlagsArray = [
"-tags='vault'" "-tags='vault'"
"-ldflags=\"-X github.com/hashicorp/vault/sdk/version.GitCommit='v${version}'\"" "-ldflags=\"-X github.com/hashicorp/vault/sdk/version.GitCommit='v${version}'\""
]; ];
postInstall = '' postInstall = ''
mkdir -p $bin/share/bash-completion/completions echo "complete -C $bin/bin/vault vault" > vault.bash
echo "complete -C $bin/bin/vault vault" > $bin/share/bash-completion/completions/vault installShellCompletion vault.bash
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {