From 9136910f1e95407c9763cb97ba122169d238a7d5 Mon Sep 17 00:00:00 2001 From: Alain Zscheile Date: Sun, 4 Sep 2022 02:37:27 +0200 Subject: [PATCH 1/3] libzbc: init at 5.12.0 --- pkgs/os-specific/linux/libzbc/default.nix | 40 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 42 insertions(+) create mode 100644 pkgs/os-specific/linux/libzbc/default.nix diff --git a/pkgs/os-specific/linux/libzbc/default.nix b/pkgs/os-specific/linux/libzbc/default.nix new file mode 100644 index 000000000000..5fa981a767f2 --- /dev/null +++ b/pkgs/os-specific/linux/libzbc/default.nix @@ -0,0 +1,40 @@ +{ lib +, stdenv +, autoconf-archive +, autoreconfHook +, fetchFromGitHub +, gtk3 +, libtool +, pkg-config +, guiSupport ? false +}: + +stdenv.mkDerivation rec { + pname = "libzbc"; + version = "5.12.0"; + + src = fetchFromGitHub { + owner = "westerndigitalcorporation"; + repo = "libzbc"; + rev = "v${version}"; + sha256 = "qI09dkMCwMym3j1ELrFDNbNB5hW/CzwmFmZhUNDXsfI="; + }; + + nativeBuildInputs = [ + autoconf-archive # this can be removed with the next release + autoreconfHook + libtool + ] ++ lib.optionals guiSupport [ pkg-config ]; + + buildInputs = lib.optionals guiSupport [ gtk3 ]; + + configureFlags = lib.optional guiSupport "--enable-gui"; + + meta = with lib; { + description = "ZBC device manipulation library"; + homepage = "https://github.com/westerndigitalcorporation/libzbc"; + maintainers = with maintainers; [ zseri ]; + license = with licenses; [ bsd2 lgpl3Plus ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8635bb41ce72..575467cdc783 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4206,6 +4206,8 @@ with pkgs; libxnd = callPackage ../development/libraries/libxnd { }; + libzbc = callPackage ../os-specific/linux/libzbc { }; + lifeograph = callPackage ../applications/editors/lifeograph { }; limitcpu = callPackage ../tools/misc/limitcpu { }; From 8a773bd46aa618bdd3552af9e973924f1c685789 Mon Sep 17 00:00:00 2001 From: Alain Zscheile Date: Sun, 4 Sep 2022 02:44:38 +0200 Subject: [PATCH 2/3] libzbd: init at 2.0.3 --- pkgs/os-specific/linux/libzbd/default.nix | 40 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 42 insertions(+) create mode 100644 pkgs/os-specific/linux/libzbd/default.nix diff --git a/pkgs/os-specific/linux/libzbd/default.nix b/pkgs/os-specific/linux/libzbd/default.nix new file mode 100644 index 000000000000..f058e09bbd2c --- /dev/null +++ b/pkgs/os-specific/linux/libzbd/default.nix @@ -0,0 +1,40 @@ +{ lib +, stdenv +, autoconf-archive +, autoreconfHook +, fetchFromGitHub +, gtk3 +, libtool +, pkg-config +, guiSupport ? false +}: + +stdenv.mkDerivation rec { + pname = "libzbd"; + version = "2.0.3"; + + src = fetchFromGitHub { + owner = "westerndigitalcorporation"; + repo = "libzbd"; + rev = "v${version}"; + sha256 = "GoCHwuR4ylyaN/FskIqKyAPe2A2O3iFVcI3UxPlqvtk="; + }; + + nativeBuildInputs = [ + autoconf-archive # this can be removed with the next release + autoreconfHook + libtool + ] ++ lib.optionals guiSupport [ pkg-config ]; + + buildInputs = lib.optionals guiSupport [ gtk3 ]; + + configureFlags = lib.optional guiSupport "--enable-gui"; + + meta = with lib; { + description = "Zoned block device manipulation library and tools"; + homepage = "https://github.com/westerndigitalcorporation/libzbd"; + maintainers = with maintainers; [ zseri ]; + license = with licenses; [ lgpl3Plus gpl3Plus ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 575467cdc783..caf25432d2f9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4208,6 +4208,8 @@ with pkgs; libzbc = callPackage ../os-specific/linux/libzbc { }; + libzbd = callPackage ../os-specific/linux/libzbd { }; + lifeograph = callPackage ../applications/editors/lifeograph { }; limitcpu = callPackage ../tools/misc/limitcpu { }; From fc653b0ad67839a2c267690f725af06c856052f2 Mon Sep 17 00:00:00 2001 From: Alain Zscheile Date: Sun, 4 Sep 2022 03:33:54 +0200 Subject: [PATCH 3/3] libnvme: init at 1.1 --- pkgs/os-specific/linux/libnvme/default.nix | 63 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 65 insertions(+) create mode 100644 pkgs/os-specific/linux/libnvme/default.nix diff --git a/pkgs/os-specific/linux/libnvme/default.nix b/pkgs/os-specific/linux/libnvme/default.nix new file mode 100644 index 000000000000..6c2ece4b8cb1 --- /dev/null +++ b/pkgs/os-specific/linux/libnvme/default.nix @@ -0,0 +1,63 @@ +{ fetchFromGitHub +, json_c +, lib +, libuuid +, meson +, ninja +, openssl +, perl +, pkg-config +, python3 +, stdenv +, systemd +}: + +stdenv.mkDerivation rec { + pname = "libnvme"; + version = "1.1"; + + outputs = [ "out" "man" ]; + + src = fetchFromGitHub { + owner = "linux-nvme"; + repo = "libnvme"; + rev = "v${version}"; + sha256 = "EPAPWY6/Bh8I1eLslKJAofLn0IAizmGn00Q5PJPtdRw="; + }; + + postPatch = '' + patchShebangs meson-vcs-tag.sh + chmod +x doc/kernel-doc-check + patchShebangs doc/kernel-doc doc/kernel-doc-check doc/list-man-pages.sh + ''; + + nativeBuildInputs = [ + meson + ninja + perl # for kernel-doc + pkg-config + ]; + + buildInputs = [ + json_c + libuuid + openssl + python3 + systemd + ]; + + mesonFlags = [ + "-Ddocs=man" + "-Ddocs-build=true" + ]; + + doCheck = true; + + meta = with lib; { + description = "C Library for NVM Express on Linux"; + homepage = "https://github.com/linux-nvme/libnvme"; + maintainers = with maintainers; [ zseri ]; + license = with licenses; [ lgpl21Plus ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index caf25432d2f9..2c0bd64aa1e0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4204,6 +4204,8 @@ with pkgs; libnss-mysql = callPackage ../os-specific/linux/libnss-mysql { }; + libnvme = callPackage ../os-specific/linux/libnvme { }; + libxnd = callPackage ../development/libraries/libxnd { }; libzbc = callPackage ../os-specific/linux/libzbc { };