diff options
Diffstat (limited to 'pkgs/applications/virtualization')
12 files changed, 279 insertions, 56 deletions
diff --git a/pkgs/applications/virtualization/cntr/default.nix b/pkgs/applications/virtualization/cntr/default.nix index 0a20dee1e99b9..e95e404f82f83 100644 --- a/pkgs/applications/virtualization/cntr/default.nix +++ b/pkgs/applications/virtualization/cntr/default.nix @@ -13,9 +13,7 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "sha256-3e5wDne6Idu+kDinHPcAKHfH/d4DrGg90GkiMbyF280="; - passthru.tests = { - nixos = nixosTests.cntr; - }; + passthru.tests = nixosTests.cntr; meta = with lib; { description = "A container debugging tool based on FUSE"; diff --git a/pkgs/applications/virtualization/colima/default.nix b/pkgs/applications/virtualization/colima/default.nix index 6b6d1364f7533..cec54e0b2ed18 100644 --- a/pkgs/applications/virtualization/colima/default.nix +++ b/pkgs/applications/virtualization/colima/default.nix @@ -11,13 +11,13 @@ buildGoModule rec { pname = "colima"; - version = "0.4.4"; + version = "0.4.5"; src = fetchFromGitHub { owner = "abiosoft"; repo = pname; rev = "v${version}"; - sha256 = "bSBaSS+rVkFqTSdyegdE/F0X5u7yvF/nHslAO3xgD6I="; + sha256 = "sha256-hoxEf62EPD/WFXW6qbPCvEwViwmme3pSBfjeKOLsGjc="; # We need the git revision leaveDotGit = true; postFetch = '' @@ -28,7 +28,7 @@ buildGoModule rec { nativeBuildInputs = [ installShellFiles makeWrapper ]; - vendorSha256 = "sha256-jDzDwK7qA9lKP8CfkKzfooPDrHuHI4OpiLXmX9vOpOg="; + vendorSha256 = "sha256-tsMQMWEkTE1NhevcqBETGWiboqL6QTepgnIo4B5Y4wQ="; CGO_ENABLED = 1; diff --git a/pkgs/applications/virtualization/crun/default.nix b/pkgs/applications/virtualization/crun/default.nix index fdf60efbdd111..3bd766e7ae948 100644 --- a/pkgs/applications/virtualization/crun/default.nix +++ b/pkgs/applications/virtualization/crun/default.nix @@ -50,9 +50,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook go-md2man pkg-config python3 ]; - buildInputs = [ libcap libseccomp systemd yajl ] - # Criu currently only builds on x86_64-linux - ++ lib.optional (lib.elem stdenv.hostPlatform.system criu.meta.platforms) criu; + buildInputs = [ criu libcap libseccomp systemd yajl ]; enableParallelBuilding = true; strictDeps = true; diff --git a/pkgs/applications/virtualization/docker/compose.nix b/pkgs/applications/virtualization/docker/compose.nix index f79928f462913..ad6a02ec3b027 100644 --- a/pkgs/applications/virtualization/docker/compose.nix +++ b/pkgs/applications/virtualization/docker/compose.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "docker-compose"; - version = "2.11.0"; + version = "2.11.2"; src = fetchFromGitHub { owner = "docker"; repo = "compose"; rev = "v${version}"; - sha256 = "sha256-BMSLs12fPY8wat0rKys/7OI7F3GGNmQC+XRi6C4kYk4="; + sha256 = "sha256-L43BIkRaPAU0zgdVsf1a3OinbspiU0LfWZPssS91wTE="; }; - vendorSha256 = "sha256-aD0h7vSUkxaGBeN2S2GOEwKpXHKyvnwbOB7pABgBmCY="; + vendorSha256 = "sha256-PZumm//BV9iAkq1Kb9xNenqVrx73ZZUHTCUSVNqqEXA="; ldflags = [ "-X github.com/docker/compose/v2/internal.Version=${version}" "-s" "-w" ]; diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index edf7582dd9999..19c4445a843f3 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -21,33 +21,38 @@ rec { }: let docker-runc = runc.overrideAttrs (oldAttrs: { - name = "docker-runc-${version}"; + pname = "docker-runc"; inherit version; + src = fetchFromGitHub { owner = "opencontainers"; repo = "runc"; rev = runcRev; sha256 = runcSha256; }; + # docker/runc already include these patches / are not applicable patches = []; }); docker-containerd = containerd.overrideAttrs (oldAttrs: { - name = "docker-containerd-${version}"; + pname = "docker-containerd"; inherit version; + src = fetchFromGitHub { owner = "containerd"; repo = "containerd"; rev = containerdRev; sha256 = containerdSha256; }; + buildInputs = oldAttrs.buildInputs ++ [ libseccomp ]; }); - docker-tini = tini.overrideAttrs (oldAttrs: { - name = "docker-init-${version}"; + docker-tini = tini.overrideAttrs (oldAttrs: { + pname = "docker-init"; inherit version; + src = fetchFromGitHub { owner = "krallin"; repo = "tini"; @@ -63,10 +68,9 @@ rec { NIX_CFLAGS_COMPILE = "-DMINIMAL=ON"; }); - moby = buildGoPackage ((optionalAttrs (stdenv.isLinux)) rec { - name = "moby-${version}"; + moby = buildGoPackage (optionalAttrs stdenv.isLinux rec { + pname = "moby"; inherit version; - inherit docker-runc docker-containerd docker-proxy docker-tini; src = moby-src; @@ -75,7 +79,7 @@ rec { nativeBuildInputs = [ makeWrapper pkg-config go-md2man go libtool installShellFiles ]; buildInputs = [ sqlite lvm2 btrfs-progs systemd libseccomp ]; - extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute2 iptables e2fsprogs xz xfsprogs procps util-linux git ]); + extraPath = optionals stdenv.isLinux (makeBinPath [ iproute2 iptables e2fsprogs xz xfsprogs procps util-linux git ]); extraUserPath = optionals (stdenv.isLinux && !clientOnly) (makeBinPath [ rootlesskit slirp4netns fuse-overlayfs ]); @@ -128,25 +132,17 @@ rec { --prefix PATH : "$out/libexec/docker:$extraPath:$extraUserPath" ''; - DOCKER_BUILDTAGS = [] - ++ optional (systemd != null) [ "journald" ] - ++ optional (btrfs-progs == null) "exclude_graphdriver_btrfs" - ++ optional (lvm2 == null) "exclude_graphdriver_devicemapper" - ++ optional (libseccomp != null) "seccomp"; + DOCKER_BUILDTAGS = [ "journald" "seccomp" ]; }); plugins = optionals buildxSupport [ docker-buildx ] ++ optionals composeSupport [ docker-compose ]; pluginsRef = symlinkJoin { name = "docker-plugins"; paths = plugins; }; in - buildGoPackage ((optionalAttrs (!clientOnly) { - - inherit docker-runc docker-containerd docker-proxy docker-tini moby; - - }) // rec { - inherit version rev; - + buildGoPackage (optionalAttrs (!clientOnly) { + } // rec { pname = "docker"; + inherit version; src = fetchFromGitHub { owner = "docker"; @@ -233,7 +229,6 @@ rec { description = "An open source project to pack, ship and run any application as a lightweight container"; license = licenses.asl20; maintainers = with maintainers; [ offline tailhook vdemeester periklis mikroskeem maxeaubrey ]; - platforms = with platforms; linux ++ darwin; }; # Exposed for tarsum build on non-linux systems (build-support/docker/default.nix) diff --git a/pkgs/applications/virtualization/ecs-agent/default.nix b/pkgs/applications/virtualization/ecs-agent/default.nix index ec5ad0f0c0000..da77aaca0f256 100644 --- a/pkgs/applications/virtualization/ecs-agent/default.nix +++ b/pkgs/applications/virtualization/ecs-agent/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { pname = "amazon-ecs-agent"; - version = "1.63.0"; + version = "1.63.1"; goPackagePath = "github.com/aws/${pname}"; subPackages = [ "agent" ]; @@ -11,7 +11,7 @@ buildGoPackage rec { rev = "v${version}"; owner = "aws"; repo = pname; - sha256 = "sha256-SDDfwFnnoq2fCeg+wfJsczXb4dDChgyfsNrZkwGMHCc="; + sha256 = "sha256-wnDwLpCDeIC2D2X/pzC6ZsudJz58xLo1PQB+K6WNxBE="; }; meta = with lib; { diff --git a/pkgs/applications/virtualization/gvisor/default.nix b/pkgs/applications/virtualization/gvisor/default.nix index 2609c3e7bc73a..08e1b97355d31 100644 --- a/pkgs/applications/virtualization/gvisor/default.nix +++ b/pkgs/applications/virtualization/gvisor/default.nix @@ -9,19 +9,25 @@ buildGoModule rec { pname = "gvisor"; - version = "20220905.0"; + version = "20220919.0"; + + # gvisor provides a synthetic go branch (https://github.com/google/gvisor/tree/go) + # that can be used to build gvisor without bazel. + # For updates, you should stick to the commits labeled "Merge release-** (automated)" src = fetchFromGitHub { owner = "google"; repo = "gvisor"; - rev = "442a3cd44a0858ac2a8e773b6fbba67cf3bd3767"; - sha256 = "sha256-LKY7AKAHX29eGuXRrkCVCFl/bdHAVOC0QNZfzlpXqwc="; + rev = "4e7fd140e8d0056f8f031950fcace8ff4d48a526"; + sha256 = "sha256-II0lnthabkyCgPum7EBdyOYwB0rWjA2Jd9DVGLJQy6Q="; }; - vendorSha256 = "sha256-Fn8A8iwTv0lNI9ZBJkq3SlRelnAGIQY0GInTxaCzSAU="; + vendorSha256 = "sha256-iGLWxx/Kn1QaJTNOZcc+mwoF3ecEDOkaqmA0DH4pdgU="; nativeBuildInputs = [ makeWrapper ]; + CGO_ENABLED = 0; + ldflags = [ "-s" "-w" ]; subPackages = [ "runsc" "shim" ]; diff --git a/pkgs/applications/virtualization/lkl/default.nix b/pkgs/applications/virtualization/lkl/default.nix index 1a6d80220e211..4a1514cd97a1b 100644 --- a/pkgs/applications/virtualization/lkl/default.nix +++ b/pkgs/applications/virtualization/lkl/default.nix @@ -1,5 +1,8 @@ { lib, stdenv, fetchFromGitHub, bc, python3, bison, flex, fuse, libarchive -, buildPackages }: +, buildPackages + +, firewallSupport ? false +}: stdenv.mkDerivation rec { pname = "lkl"; @@ -26,6 +29,8 @@ stdenv.mkDerivation rec { # Fixup build with newer Linux headers: https://github.com/lkl/linux/pull/484 sed '1i#include <linux/sockios.h>' -i tools/lkl/lib/hijack/xlate.c + '' + lib.optionalString firewallSupport '' + cat ${./lkl-defconfig-enable-nftables} >> arch/lkl/configs/defconfig ''; installPhase = '' diff --git a/pkgs/applications/virtualization/lkl/lkl-defconfig-enable-nftables b/pkgs/applications/virtualization/lkl/lkl-defconfig-enable-nftables new file mode 100644 index 0000000000000..8f133938587f7 --- /dev/null +++ b/pkgs/applications/virtualization/lkl/lkl-defconfig-enable-nftables @@ -0,0 +1,155 @@ +CONFIG_NETFILTER=y +CONFIG_NF_CONNTRACK=y +CONFIG_NF_LOG_NETDEV=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_AMANDA=y +CONFIG_NF_CONNTRACK_FTP=y +CONFIG_NF_CONNTRACK_H323=y +CONFIG_NF_CONNTRACK_IRC=y +CONFIG_NF_CONNTRACK_NETBIOS_NS=y +CONFIG_NF_CONNTRACK_SNMP=y +CONFIG_NF_CONNTRACK_PPTP=y +CONFIG_NF_CONNTRACK_SANE=y +CONFIG_NF_CONNTRACK_SIP=y +CONFIG_NF_CONNTRACK_TFTP=y +CONFIG_NF_CT_NETLINK=y +CONFIG_NF_CT_NETLINK_TIMEOUT=y +CONFIG_NF_CT_NETLINK_HELPER=y +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NF_TABLES=y +CONFIG_NF_TABLES_INET=y +CONFIG_NF_TABLES_NETDEV=y +CONFIG_NFT_NUMGEN=y +CONFIG_NFT_CT=y +CONFIG_NFT_COUNTER=y +CONFIG_NFT_CONNLIMIT=y +CONFIG_NFT_LOG=y +CONFIG_NFT_LIMIT=y +CONFIG_NFT_MASQ=y +CONFIG_NFT_REDIR=y +CONFIG_NFT_NAT=y +CONFIG_NFT_TUNNEL=y +CONFIG_NFT_OBJREF=y +CONFIG_NFT_QUEUE=y +CONFIG_NFT_QUOTA=y +CONFIG_NFT_REJECT=y +CONFIG_NFT_COMPAT=y +CONFIG_NFT_HASH=y +CONFIG_NFT_FIB_INET=y +CONFIG_NFT_SOCKET=y +CONFIG_NFT_OSF=y +CONFIG_NFT_TPROXY=y +CONFIG_NFT_SYNPROXY=y +CONFIG_NFT_DUP_NETDEV=y +CONFIG_NFT_FWD_NETDEV=y +CONFIG_NFT_FIB_NETDEV=y +CONFIG_NF_FLOW_TABLE_INET=y +CONFIG_NF_FLOW_TABLE=y +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=y +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y +CONFIG_NETFILTER_XT_TARGET_CONNMARK=y +CONFIG_NETFILTER_XT_TARGET_DSCP=y +CONFIG_NETFILTER_XT_TARGET_HMARK=y +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=y +CONFIG_NETFILTER_XT_TARGET_LOG=y +CONFIG_NETFILTER_XT_TARGET_MARK=y +CONFIG_NETFILTER_XT_TARGET_NFLOG=y +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y +CONFIG_NETFILTER_XT_TARGET_NOTRACK=y +CONFIG_NETFILTER_XT_TARGET_TEE=y +CONFIG_NETFILTER_XT_TARGET_TPROXY=y +CONFIG_NETFILTER_XT_TARGET_TRACE=y +CONFIG_NETFILTER_XT_TARGET_TCPMSS=y +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=y +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y +CONFIG_NETFILTER_XT_MATCH_BPF=y +CONFIG_NETFILTER_XT_MATCH_CLUSTER=y +CONFIG_NETFILTER_XT_MATCH_COMMENT=y +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=y +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y +CONFIG_NETFILTER_XT_MATCH_CONNMARK=y +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y +CONFIG_NETFILTER_XT_MATCH_CPU=y +CONFIG_NETFILTER_XT_MATCH_DCCP=y +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=y +CONFIG_NETFILTER_XT_MATCH_DSCP=y +CONFIG_NETFILTER_XT_MATCH_ESP=y +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y +CONFIG_NETFILTER_XT_MATCH_HELPER=y +CONFIG_NETFILTER_XT_MATCH_IPCOMP=y +CONFIG_NETFILTER_XT_MATCH_IPRANGE=y +CONFIG_NETFILTER_XT_MATCH_L2TP=y +CONFIG_NETFILTER_XT_MATCH_LENGTH=y +CONFIG_NETFILTER_XT_MATCH_LIMIT=y +CONFIG_NETFILTER_XT_MATCH_MAC=y +CONFIG_NETFILTER_XT_MATCH_MARK=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y +CONFIG_NETFILTER_XT_MATCH_NFACCT=y +CONFIG_NETFILTER_XT_MATCH_OSF=y +CONFIG_NETFILTER_XT_MATCH_OWNER=y +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y +CONFIG_NETFILTER_XT_MATCH_QUOTA=y +CONFIG_NETFILTER_XT_MATCH_RATEEST=y +CONFIG_NETFILTER_XT_MATCH_REALM=y +CONFIG_NETFILTER_XT_MATCH_RECENT=y +CONFIG_NETFILTER_XT_MATCH_SCTP=y +CONFIG_NETFILTER_XT_MATCH_SOCKET=y +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NETFILTER_XT_MATCH_STATISTIC=y +CONFIG_NETFILTER_XT_MATCH_STRING=y +CONFIG_NETFILTER_XT_MATCH_TCPMSS=y +CONFIG_NETFILTER_XT_MATCH_TIME=y +CONFIG_NETFILTER_XT_MATCH_U32=y +CONFIG_NFT_DUP_IPV4=y +CONFIG_NFT_FIB_IPV4=y +CONFIG_NF_TABLES_ARP=y +CONFIG_NF_FLOW_TABLE_IPV4=y +CONFIG_NF_LOG_ARP=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_MATCH_AH=y +CONFIG_IP_NF_MATCH_ECN=y +CONFIG_IP_NF_MATCH_RPFILTER=y +CONFIG_IP_NF_MATCH_TTL=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_SYNPROXY=y +CONFIG_IP_NF_NAT=y +CONFIG_IP_NF_TARGET_MASQUERADE=y +CONFIG_IP_NF_TARGET_NETMAP=y +CONFIG_IP_NF_TARGET_REDIRECT=y +CONFIG_IP_NF_MANGLE=y +CONFIG_IP_NF_TARGET_CLUSTERIP=y +CONFIG_IP_NF_TARGET_ECN=y +CONFIG_IP_NF_TARGET_TTL=y +CONFIG_IP_NF_RAW=y +CONFIG_IP_NF_ARPTABLES=y +CONFIG_IP_NF_ARPFILTER=y +CONFIG_IP_NF_ARP_MANGLE=y +CONFIG_NFT_DUP_IPV6=y +CONFIG_NFT_FIB_IPV6=y +CONFIG_NF_FLOW_TABLE_IPV6=y +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_MATCH_AH=y +CONFIG_IP6_NF_MATCH_EUI64=y +CONFIG_IP6_NF_MATCH_FRAG=y +CONFIG_IP6_NF_MATCH_OPTS=y +CONFIG_IP6_NF_MATCH_HL=y +CONFIG_IP6_NF_MATCH_IPV6HEADER=y +CONFIG_IP6_NF_MATCH_MH=y +CONFIG_IP6_NF_MATCH_RPFILTER=y +CONFIG_IP6_NF_MATCH_RT=y +CONFIG_IP6_NF_MATCH_SRH=y +CONFIG_IP6_NF_TARGET_HL=y +CONFIG_IP6_NF_FILTER=y +CONFIG_IP6_NF_TARGET_REJECT=y +CONFIG_IP6_NF_TARGET_SYNPROXY=y +CONFIG_IP6_NF_MANGLE=y +CONFIG_IP6_NF_RAW=y +CONFIG_IP6_NF_NAT=y +CONFIG_IP6_NF_TARGET_MASQUERADE=y +CONFIG_IP6_NF_TARGET_NPT=y +CONFIG_NF_CONNTRACK_BRIDGE=y diff --git a/pkgs/applications/virtualization/nixpacks/default.nix b/pkgs/applications/virtualization/nixpacks/default.nix index 511e332c4f173..9e611bddc844c 100644 --- a/pkgs/applications/virtualization/nixpacks/default.nix +++ b/pkgs/applications/virtualization/nixpacks/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "nixpacks"; - version = "0.5.6"; + version = "0.8.0"; src = fetchFromGitHub { owner = "railwayapp"; repo = pname; rev = "v${version}"; - sha256 = "sha256-pYqaBLrGEZUhIqaoYhkXrf2OoaAfswQntSa8FnYMBLA="; + sha256 = "sha256-5ImGG3sovDFya1o6bbEu3JaS3xUaO9gfAnw28GZf2aU="; }; - cargoSha256 = "sha256-ud6bhyWePINiddSuWcpUkMjp3q6/Xd9TK3CaoFZFB20="; + cargoSha256 = "sha256-WAnFucDCG0h+tfy6wHyWjIU7HpJ4Qylxw2Q4sgZgp7I="; # skip test due FHS dependency doCheck = false; diff --git a/pkgs/applications/virtualization/pods/default.nix b/pkgs/applications/virtualization/pods/default.nix new file mode 100644 index 0000000000000..5d811b59066b0 --- /dev/null +++ b/pkgs/applications/virtualization/pods/default.nix @@ -0,0 +1,59 @@ +{ lib +, stdenv +, fetchFromGitHub +, desktop-file-utils +, glib +, gtk4 +, meson +, ninja +, pkg-config +, rustPlatform +, wrapGAppsHook +, gtksourceview5 +, libadwaita +}: + +stdenv.mkDerivation rec { + pname = "pods"; + version = "1.0.0-beta.4"; + + src = fetchFromGitHub { + owner = "marhkb"; + repo = pname; + rev = "v${version}"; + sha256 = "1j5rz43860n17qcxmc5dj8sll3y593jj9zz1sfvnx4g0694sp0cl"; + }; + + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + name = "${pname}-${version}"; + sha256 = "sha256-tj0ROO8HmFWyQLYDrdywOneHz6X43dRZJFTB+aw+m7o="; + }; + + nativeBuildInputs = [ + desktop-file-utils + glib + gtk4 + meson + ninja + pkg-config + rustPlatform.cargoSetupHook + rustPlatform.rust.cargo + rustPlatform.rust.rustc + wrapGAppsHook + ]; + + buildInputs = [ + gtk4 + gtksourceview5 + libadwaita + ]; + + meta = with lib; { + description = "A podman desktop application"; + homepage = "https://github.com/marhkb/pods"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ figsoda ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/virtualization/virt-top/default.nix b/pkgs/applications/virtualization/virt-top/default.nix index 54c0bea359224..1c648b25ddb02 100644 --- a/pkgs/applications/virtualization/virt-top/default.nix +++ b/pkgs/applications/virtualization/virt-top/default.nix @@ -1,32 +1,39 @@ -{ lib, stdenv, fetchgit, fetchpatch, ocamlPackages, autoreconfHook }: +{ lib, stdenv, fetchgit, ocamlPackages, autoreconfHook, libxml2, pkg-config, getopt }: stdenv.mkDerivation rec { pname = "virt-top"; - version = "1.0.9"; + version = "1.1.1"; src = fetchgit { url = "git://git.annexia.org/virt-top.git"; rev = "v${version}"; - sha256 = "0m7pm8lzlpngsj0vjv0hg8l9ck3gvwpva7r472f8f03xpjffwiga"; + hash = "sha256-IKIkqzx7YWki0L6D5WbwQiVWJfDFGdI2nsGgg212CcE="; }; - patches = [ - (fetchpatch { - name = "ocaml-libvirt-0.6.1.5-fix.patch"; - url = "http://git.annexia.org/?p=virt-top.git;a=patch;h=24a461715d5bce47f63cb0097606fc336230589f"; - sha256 = "15w7w9iggvlw8m9w8g4h08251wzb3m3zkb58glr7ifsgi3flbn61"; - }) + nativeBuildInputs = [ + autoreconfHook + pkg-config + getopt ]; - nativeBuildInputs = [ autoreconfHook ]; - buildInputs = with ocamlPackages; [ ocaml findlib ocaml_extlib ocaml_libvirt gettext-stub curses csv xml-light ]; + buildInputs = with ocamlPackages; [ + calendar + curses + findlib + gettext-stub + ocaml + ocaml_libvirt + ] ++ [ libxml2 ]; - buildPhase = "make opt"; + prePatch = '' + substituteInPlace ocaml-dep.sh.in --replace '#!/bin/bash' '#!${stdenv.shell}' + substituteInPlace ocaml-link.sh.in --replace '#!/bin/bash' '#!${stdenv.shell}' + ''; meta = with lib; { description = "A top-like utility for showing stats of virtualized domains"; homepage = "https://people.redhat.com/~rjones/virt-top/"; - license = licenses.gpl2; + license = licenses.gpl2Only; maintainers = [ ]; platforms = platforms.linux; }; |