summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--flake.lock61
-rw-r--r--flake.nix50
-rw-r--r--pkgs/default.nix7
-rw-r--r--pkgs/ibm-platform-services/default.nix45
-rw-r--r--pkgs/qiskit-ibm-provider/default.nix64
-rw-r--r--pkgs/qiskit-ibm-runtime/default.nix66
6 files changed, 293 insertions, 0 deletions
diff --git a/flake.lock b/flake.lock
new file mode 100644
index 0000000..6d0ac08
--- /dev/null
+++ b/flake.lock
@@ -0,0 +1,61 @@
+{
+ "nodes": {
+ "flake-utils": {
+ "inputs": {
+ "systems": "systems"
+ },
+ "locked": {
+ "lastModified": 1731533236,
+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 1767892417,
+ "narHash": "sha256-dhhvQY67aboBk8b0/u0XB6vwHdgbROZT3fJAjyNh5Ww=",
+ "owner": "nixos",
+ "repo": "nixpkgs",
+ "rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "root": {
+ "inputs": {
+ "flake-utils": "flake-utils",
+ "nixpkgs": "nixpkgs"
+ }
+ },
+ "systems": {
+ "locked": {
+ "lastModified": 1681028828,
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+ "owner": "nix-systems",
+ "repo": "default",
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-systems",
+ "repo": "default",
+ "type": "github"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/flake.nix b/flake.nix
new file mode 100644
index 0000000..c12d3f7
--- /dev/null
+++ b/flake.nix
@@ -0,0 +1,50 @@
+{
+ description = "python packagessssssss";
+
+ inputs = {
+ nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
+ flake-utils.url = "github:numtide/flake-utils";
+ };
+
+ outputs = {
+ nixpkgs,
+ flake-utils,
+ ...
+ }: let
+ supportedSystems = let
+ inherit (flake-utils.lib) system;
+ in [
+ system.aarch64-linux
+ system.x86_64-linux
+ ];
+ in
+ flake-utils.lib.eachSystem supportedSystems (system: let
+ pkgs = import nixpkgs {inherit system;};
+ in rec {
+ packages = import ./pkgs {
+ inherit pkgs;
+ };
+
+ devShell = let
+ in
+ pkgs.mkShell
+ {
+ packages = with pkgs.python3Packages;
+ with packages; [
+ numpy
+ scipy
+ pandas
+ matplotlib
+ qiskit
+ qiskit-ibm-runtime
+ qiskit-ibm-provider
+ seaborn
+ pylatexenc
+ qiskit-aer
+ python
+ ];
+ };
+
+ formatter = pkgs.alejandra;
+ });
+}
diff --git a/pkgs/default.nix b/pkgs/default.nix
new file mode 100644
index 0000000..58c22a1
--- /dev/null
+++ b/pkgs/default.nix
@@ -0,0 +1,7 @@
+{pkgs}: let
+ inherit (pkgs.python3Packages) callPackage;
+in rec {
+ ibm-platform-services = callPackage ./ibm-platform-services {};
+ qiskit-ibm-provider = callPackage ./qiskit-ibm-provider {};
+ qiskit-ibm-runtime = callPackage ./qiskit-ibm-runtime {inherit ibm-platform-services;};
+}
diff --git a/pkgs/ibm-platform-services/default.nix b/pkgs/ibm-platform-services/default.nix
new file mode 100644
index 0000000..60d7736
--- /dev/null
+++ b/pkgs/ibm-platform-services/default.nix
@@ -0,0 +1,45 @@
+{
+ lib,
+ buildPythonPackage,
+ fetchFromGitHub,
+ pybind11,
+ scikit-build,
+ ibm-cloud-sdk-core,
+}:
+buildPythonPackage rec {
+ pname = "ibm-platform-services";
+ version = "0.72.0";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "IBM";
+ repo = "platform-services-python-sdk";
+ tag = "v${version}";
+ hash = "sha256-QxoyRH82Q7bxBK26XwS4oE7mJG2qh8/cpByKcS6rmQc=";
+ };
+
+ dontUseCmakeConfigure = true;
+
+ nativeBuildInputs = [
+ #cmake
+ #ninja
+ ];
+
+ build-system = [
+ pybind11
+ scikit-build
+ ];
+
+ dependencies = [
+ ibm-cloud-sdk-core
+ ];
+
+ doCheck = false;
+
+ meta = {
+ description = "Python client library for IBM Cloud Platform Services";
+ homepage = "https://github.com/IBM/platform-services-python-sdk";
+ license = lib.licenses.asl20;
+ maintainers = [];
+ };
+}
diff --git a/pkgs/qiskit-ibm-provider/default.nix b/pkgs/qiskit-ibm-provider/default.nix
new file mode 100644
index 0000000..8adc785
--- /dev/null
+++ b/pkgs/qiskit-ibm-provider/default.nix
@@ -0,0 +1,64 @@
+{
+ lib,
+ buildPythonPackage,
+ fetchFromGitHub,
+ pybind11,
+ scikit-build,
+ qiskit,
+ python-dateutil,
+ requests,
+ requests-ntlm,
+ websockets,
+ websocket-client,
+}:
+buildPythonPackage rec {
+ pname = "qiskit-ibm-provider";
+ version = "0.11.0";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "Qiskit";
+ repo = "qiskit-ibm-provider";
+ tag = version;
+ hash = "sha256-voIyx57airfbi9TTMqWAgnQ3IkvvtKkDMir7J22Cis8=";
+ };
+
+ dontUseCmakeConfigure = true;
+
+ # build fails even if setting DISABLE_CONAN flag
+ postPatch = ''
+ sed -i -e '/conan/d' pyproject.toml
+ '';
+
+ nativeBuildInputs = [
+ #cmake
+ #ninja
+ ];
+
+ build-system = [
+ pybind11
+ scikit-build
+ ];
+
+ dependencies = [
+ qiskit
+ requests
+ requests-ntlm
+ python-dateutil
+ websockets
+ websocket-client
+ ];
+
+ preBuild = ''
+ export DISABLE_CONAN=ON
+ '';
+
+ doCheck = false;
+
+ meta = {
+ description = "Qiskit Provider for accessing the IBM Quantum Services: Online Systems and Simulators ";
+ homepage = "https://github.com/Qiskit/qiskit-ibm-provider";
+ license = lib.licenses.asl20;
+ maintainers = [];
+ };
+}
diff --git a/pkgs/qiskit-ibm-runtime/default.nix b/pkgs/qiskit-ibm-runtime/default.nix
new file mode 100644
index 0000000..51f7f7d
--- /dev/null
+++ b/pkgs/qiskit-ibm-runtime/default.nix
@@ -0,0 +1,66 @@
+{
+ lib,
+ buildPythonPackage,
+ fetchFromGitHub,
+ pybind11,
+ scikit-build,
+ setuptools-scm,
+ qiskit,
+ python-dateutil,
+ requests,
+ requests-ntlm,
+ pydantic,
+ ibm-platform-services,
+}:
+buildPythonPackage rec {
+ pname = "qiskit-ibm-runtime";
+ version = "0.45.0";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "Qiskit";
+ repo = "qiskit-ibm-runtime";
+ tag = version;
+ hash = "sha256-JnQH8IWaUemer9c6aaaTtCkQXW3x4Pe32aLXxHhiRTg=";
+ };
+
+ dontUseCmakeConfigure = true;
+
+ # build fails even if setting DISABLE_CONAN flag
+ postPatch = ''
+ sed -i -e '/conan/d' pyproject.toml
+ '';
+
+ nativeBuildInputs = [
+ #cmake
+ #ninja
+ ];
+
+ build-system = [
+ pybind11
+ scikit-build
+ setuptools-scm
+ ];
+
+ dependencies = [
+ qiskit
+ requests
+ requests-ntlm
+ python-dateutil
+ pydantic
+ ibm-platform-services
+ ];
+
+ preBuild = ''
+ export DISABLE_CONAN=ON
+ '';
+
+ doCheck = false;
+
+ meta = {
+ description = "IBM Client for Qiskit Runtime ";
+ homepage = "https://github.com/Qiskit/qiskit-ibm-runtime";
+ license = lib.licenses.asl20;
+ maintainers = [];
+ };
+}