Loading pkgs/by-name/co/cowsql/package.nix +1 −1 Original line number Diff line number Diff line Loading @@ -51,6 +51,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/cowsql/cowsql"; license = licenses.lgpl3Only; maintainers = with maintainers; [ adamcstephens ]; platforms = platforms.linux; platforms = platforms.unix; }; } pkgs/by-name/in/incus-unwrapped/package.nix 0 → 100644 +97 −0 Original line number Diff line number Diff line { lib , buildGoModule , fetchFromGitHub , acl , cowsql , hwdata , libcap , lxc , pkg-config , sqlite , udev , installShellFiles , gitUpdater }: buildGoModule rec { pname = "incus-unwrapped"; version = "0.1"; src = fetchFromGitHub { owner = "lxc"; repo = "incus"; rev = "refs/tags/incus-${version}"; hash = "sha256-DCNMhfSzIpu5Pdg2TiFQ7GgLEScqt/Xqm2X+VSdeaME="; }; vendorHash = "sha256-Pk0/SfGCqXdXvNHbokSV8ajFHeOv0+Et0JytRCoBLU4="; postPatch = '' substituteInPlace internal/usbid/load.go \ --replace "/usr/share/misc/usb.ids" "${hwdata}/share/hwdata/usb.ids" ''; excludedPackages = [ "cmd/incus-agent" "cmd/incus-migrate" "cmd/lxd-to-incus" ]; nativeBuildInputs = [ installShellFiles pkg-config ]; buildInputs = [ lxc acl libcap cowsql.dev sqlite udev.dev ]; ldflags = [ "-s" "-w" ]; tags = [ "libsqlite3" ]; preBuild = '' # required for go-cowsql. export CGO_LDFLAGS_ALLOW="(-Wl,-wrap,pthread_create)|(-Wl,-z,now)" ''; postBuild = '' make incus-agent incus-migrate ''; preCheck = let skippedTests = [ "TestValidateConfig" "TestConvertNetworkConfig" "TestConvertStorageConfig" "TestSnapshotCommon" "TestContainerTestSuite" ]; in '' # Disable tests requiring local operations buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]") ''; postInstall = '' installShellCompletion --bash --name incus ./scripts/bash/incus ''; passthru = { updateScript = gitUpdater { rev-prefix = "incus-"; }; }; meta = { description = "Powerful system container and virtual machine manager"; homepage = "https://linuxcontainers.org/incus"; changelog = "https://github.com/lxc/incus/releases/tag/incus-${version}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ adamcstephens ]; platforms = lib.platforms.linux; }; } pkgs/by-name/in/incus/package.nix 0 → 100644 +115 −0 Original line number Diff line number Diff line { lib , incus-unwrapped , linkFarm , makeWrapper , stdenv , symlinkJoin , writeShellScriptBin , acl , apparmor-parser , apparmor-profiles , attr , bash , btrfs-progs , criu , dnsmasq , gnutar , gptfdisk , gzip , iproute2 , iptables , OVMF , qemu_kvm , qemu-utils , rsync , spice-gtk , squashfsTools , virtiofsd , xz }: let binPath = lib.makeBinPath [ acl attr bash btrfs-progs criu dnsmasq gnutar gptfdisk gzip iproute2 iptables qemu_kvm qemu-utils rsync squashfsTools virtiofsd xz (writeShellScriptBin "apparmor_parser" '' exec '${apparmor-parser}/bin/apparmor_parser' -I '${apparmor-profiles}/etc/apparmor.d' "$@" '') ]; clientBinPath = [ spice-gtk ]; ovmf-2mb = OVMF.override { secureBoot = true; csmSupport = false; fdSize2MB = true; }; ovmf-4mb = OVMF.override { secureBoot = true; csmSupport = false; fdSize4MB = true; }; ovmf-4mb-csm = OVMF.override { secureBoot = true; csmSupport = false; fdSize2MB = false; fdSize4MB = true; }; ovmf-prefix = if stdenv.hostPlatform.isAarch64 then "AAVMF" else "OVMF"; # mimic ovmf from https://github.com/canonical/incus-pkg-snap/blob/3abebe1dfeb20f9b7729556960c7e9fe6ad5e17c/snapcraft.yaml#L378 # also found in /snap/incus/current/share/qemu/ on a snap install ovmf = linkFarm "incus-ovmf" [ { name = "OVMF_CODE.2MB.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_CODE.4MB.CSM.fd"; path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_CODE.4MB.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_CODE.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_VARS.2MB.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.2MB.ms.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.4MB.CSM.fd"; path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.4MB.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.4MB.ms.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.ms.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } ]; in symlinkJoin { name = "incus-${incus-unwrapped.version}"; paths = [ incus-unwrapped ]; nativeBuildInputs = [ makeWrapper ]; postBuild = '' wrapProgram $out/bin/incusd --prefix PATH : ${lib.escapeShellArg binPath}:${qemu_kvm}/libexec:$out/bin --set INCUS_OVMF_PATH ${ovmf} wrapProgram $out/bin/incus --prefix PATH : ${lib.makeBinPath clientBinPath} ''; passthru = { inherit (incus-unwrapped) tests; }; inherit (incus-unwrapped) meta pname version; } pkgs/top-level/all-packages.nix +1 −0 Original line number Diff line number Diff line Loading @@ -10645,6 +10645,7 @@ with pkgs; autoreconfHook = buildPackages.autoreconfHook269; }; lxcfs = callPackage ../os-specific/linux/lxcfs { }; lxd = callPackage ../tools/admin/lxd/wrapper.nix { }; lxd-unwrapped = callPackage ../tools/admin/lxd { }; Loading
pkgs/by-name/co/cowsql/package.nix +1 −1 Original line number Diff line number Diff line Loading @@ -51,6 +51,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/cowsql/cowsql"; license = licenses.lgpl3Only; maintainers = with maintainers; [ adamcstephens ]; platforms = platforms.linux; platforms = platforms.unix; }; }
pkgs/by-name/in/incus-unwrapped/package.nix 0 → 100644 +97 −0 Original line number Diff line number Diff line { lib , buildGoModule , fetchFromGitHub , acl , cowsql , hwdata , libcap , lxc , pkg-config , sqlite , udev , installShellFiles , gitUpdater }: buildGoModule rec { pname = "incus-unwrapped"; version = "0.1"; src = fetchFromGitHub { owner = "lxc"; repo = "incus"; rev = "refs/tags/incus-${version}"; hash = "sha256-DCNMhfSzIpu5Pdg2TiFQ7GgLEScqt/Xqm2X+VSdeaME="; }; vendorHash = "sha256-Pk0/SfGCqXdXvNHbokSV8ajFHeOv0+Et0JytRCoBLU4="; postPatch = '' substituteInPlace internal/usbid/load.go \ --replace "/usr/share/misc/usb.ids" "${hwdata}/share/hwdata/usb.ids" ''; excludedPackages = [ "cmd/incus-agent" "cmd/incus-migrate" "cmd/lxd-to-incus" ]; nativeBuildInputs = [ installShellFiles pkg-config ]; buildInputs = [ lxc acl libcap cowsql.dev sqlite udev.dev ]; ldflags = [ "-s" "-w" ]; tags = [ "libsqlite3" ]; preBuild = '' # required for go-cowsql. export CGO_LDFLAGS_ALLOW="(-Wl,-wrap,pthread_create)|(-Wl,-z,now)" ''; postBuild = '' make incus-agent incus-migrate ''; preCheck = let skippedTests = [ "TestValidateConfig" "TestConvertNetworkConfig" "TestConvertStorageConfig" "TestSnapshotCommon" "TestContainerTestSuite" ]; in '' # Disable tests requiring local operations buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]") ''; postInstall = '' installShellCompletion --bash --name incus ./scripts/bash/incus ''; passthru = { updateScript = gitUpdater { rev-prefix = "incus-"; }; }; meta = { description = "Powerful system container and virtual machine manager"; homepage = "https://linuxcontainers.org/incus"; changelog = "https://github.com/lxc/incus/releases/tag/incus-${version}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ adamcstephens ]; platforms = lib.platforms.linux; }; }
pkgs/by-name/in/incus/package.nix 0 → 100644 +115 −0 Original line number Diff line number Diff line { lib , incus-unwrapped , linkFarm , makeWrapper , stdenv , symlinkJoin , writeShellScriptBin , acl , apparmor-parser , apparmor-profiles , attr , bash , btrfs-progs , criu , dnsmasq , gnutar , gptfdisk , gzip , iproute2 , iptables , OVMF , qemu_kvm , qemu-utils , rsync , spice-gtk , squashfsTools , virtiofsd , xz }: let binPath = lib.makeBinPath [ acl attr bash btrfs-progs criu dnsmasq gnutar gptfdisk gzip iproute2 iptables qemu_kvm qemu-utils rsync squashfsTools virtiofsd xz (writeShellScriptBin "apparmor_parser" '' exec '${apparmor-parser}/bin/apparmor_parser' -I '${apparmor-profiles}/etc/apparmor.d' "$@" '') ]; clientBinPath = [ spice-gtk ]; ovmf-2mb = OVMF.override { secureBoot = true; csmSupport = false; fdSize2MB = true; }; ovmf-4mb = OVMF.override { secureBoot = true; csmSupport = false; fdSize4MB = true; }; ovmf-4mb-csm = OVMF.override { secureBoot = true; csmSupport = false; fdSize2MB = false; fdSize4MB = true; }; ovmf-prefix = if stdenv.hostPlatform.isAarch64 then "AAVMF" else "OVMF"; # mimic ovmf from https://github.com/canonical/incus-pkg-snap/blob/3abebe1dfeb20f9b7729556960c7e9fe6ad5e17c/snapcraft.yaml#L378 # also found in /snap/incus/current/share/qemu/ on a snap install ovmf = linkFarm "incus-ovmf" [ { name = "OVMF_CODE.2MB.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_CODE.4MB.CSM.fd"; path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_CODE.4MB.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_CODE.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd"; } { name = "OVMF_VARS.2MB.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.2MB.ms.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.4MB.CSM.fd"; path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.4MB.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.4MB.ms.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } { name = "OVMF_VARS.ms.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; } ]; in symlinkJoin { name = "incus-${incus-unwrapped.version}"; paths = [ incus-unwrapped ]; nativeBuildInputs = [ makeWrapper ]; postBuild = '' wrapProgram $out/bin/incusd --prefix PATH : ${lib.escapeShellArg binPath}:${qemu_kvm}/libexec:$out/bin --set INCUS_OVMF_PATH ${ovmf} wrapProgram $out/bin/incus --prefix PATH : ${lib.makeBinPath clientBinPath} ''; passthru = { inherit (incus-unwrapped) tests; }; inherit (incus-unwrapped) meta pname version; }
pkgs/top-level/all-packages.nix +1 −0 Original line number Diff line number Diff line Loading @@ -10645,6 +10645,7 @@ with pkgs; autoreconfHook = buildPackages.autoreconfHook269; }; lxcfs = callPackage ../os-specific/linux/lxcfs { }; lxd = callPackage ../tools/admin/lxd/wrapper.nix { }; lxd-unwrapped = callPackage ../tools/admin/lxd { };