diff options
author | Michael Lingelbach <m.j.lbach@gmail.com> | 2021-01-21 14:05:01 -0800 |
---|---|---|
committer | Colin Arnott <colin@urandom.co.uk> | 2022-12-13 21:36:49 +0000 |
commit | d8c8e9abb733b57d8534c6765d308b37eae39c39 (patch) | |
tree | f0ed828b6e946fe57418f510a785abe2f3b2fbe3 /pkgs/applications/virtualization/toolbox | |
parent | 71154fe2170e9930250a9178b12d07723674a527 (diff) |
toolbox: init at 0.0.99.3
Fixes #96115
Diffstat (limited to 'pkgs/applications/virtualization/toolbox')
-rw-r--r-- | pkgs/applications/virtualization/toolbox/default.nix | 51 | ||||
-rw-r--r-- | pkgs/applications/virtualization/toolbox/glibc.patch | 12 |
2 files changed, 63 insertions, 0 deletions
diff --git a/pkgs/applications/virtualization/toolbox/default.nix b/pkgs/applications/virtualization/toolbox/default.nix new file mode 100644 index 0000000000000..94928ff357339 --- /dev/null +++ b/pkgs/applications/virtualization/toolbox/default.nix @@ -0,0 +1,51 @@ +{ lib, buildGoModule, fetchFromGitHub, glibc, go-md2man, installShellFiles }: + +buildGoModule rec { + pname = "toolbox"; + version = "0.0.99.3"; + + src = fetchFromGitHub { + owner = "containers"; + repo = pname; + rev = version; + hash = "sha256-9HiWgEtaMypLOwXJ6Xg3grLSZOQ4NInZtcvLPV51YO8="; + }; + + patches = [ ./glibc.patch ]; + + vendorHash = "sha256-k79TcC9voQROpJnyZ0RsqxJnBT83W5Z+D+D3HnuQGsI="; + + postPatch = '' + substituteInPlace src/cmd/create.go --subst-var-by glibc ${glibc} + ''; + + modRoot = "src"; + + nativeBuildInputs = [ go-md2man installShellFiles ]; + + ldflags = [ + "-s" + "-w" + "-X github.com/containers/toolbox/pkg/version.currentVersion=${version}" + ]; + + preCheck = "export PATH=$GOPATH/bin:$PATH"; + + postInstall = '' + cd .. + for d in doc/*.md; do + go-md2man -in $d -out ''${d%.md} + done + installManPage doc/*.[1-9] + installShellCompletion --bash completion/bash/toolbox + install profile.d/toolbox.sh -Dt $out/share/profile.d + ''; + + meta = with lib; { + homepage = "https://containertoolbx.org"; + changelog = "https://github.com/containers/toolbox/releases/tag/${version}"; + description = "Tool for containerized command line environments on Linux"; + license = licenses.asl20; + maintainers = with maintainers; [ urandom ]; + }; +} diff --git a/pkgs/applications/virtualization/toolbox/glibc.patch b/pkgs/applications/virtualization/toolbox/glibc.patch new file mode 100644 index 0000000000000..1055dc965a0bf --- /dev/null +++ b/pkgs/applications/virtualization/toolbox/glibc.patch @@ -0,0 +1,12 @@ +diff --git a/src/cmd/create.go b/src/cmd/create.go +index 74e90b1..113ef80 100644 +--- a/src/cmd/create.go ++++ b/src/cmd/create.go +@@ -423,6 +425,7 @@ func createContainer(container, image, release string, showCommandToEnter bool) + "--volume", toolboxPathMountArg, + "--volume", usrMountArg, + "--volume", runtimeDirectoryMountArg, ++ "--volume", "@glibc@:@glibc@:ro", + }...) + + createArgs = append(createArgs, avahiSocketMount...) |