forked from M-Labs/artiq-extrapkg
Compare commits
79 Commits
|
@ -2,6 +2,7 @@ ARTIQ extrapkg
|
|||
==============
|
||||
|
||||
This contains additional packages and infrastructure for ARTIQ:
|
||||
* Conda packages
|
||||
* MSYS2 and Conda packages
|
||||
* MSYS2 offline installer
|
||||
* Controllers/NDSPs
|
||||
* Windows tests
|
||||
|
|
279
flake.lock
279
flake.lock
|
@ -1,6 +1,61 @@
|
|||
{
|
||||
"nodes": {
|
||||
"artiq": {
|
||||
"artiq-comtools": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": [
|
||||
"artiqpkgs",
|
||||
"nixpkgs"
|
||||
],
|
||||
"sipyco": [
|
||||
"artiqpkgs",
|
||||
"sipyco"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707216368,
|
||||
"narHash": "sha256-ZXoqzG2QsVsybALLYXs473avXcyKSZNh2kIgcPo60XQ=",
|
||||
"owner": "m-labs",
|
||||
"repo": "artiq-comtools",
|
||||
"rev": "e5d0204490bccc07ef9141b0d7c405ab01cb8273",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "m-labs",
|
||||
"repo": "artiq-comtools",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"artiq-stubs": {
|
||||
"inputs": {
|
||||
"artiqpkgs": [
|
||||
"daxpkgs",
|
||||
"artiqpkgs"
|
||||
],
|
||||
"flake8-artiq": [
|
||||
"daxpkgs",
|
||||
"flake8-artiq"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"daxpkgs",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706553333,
|
||||
"narHash": "sha256-woCaWllU5vKn0aXxt2VajlK7hseQe7LrJY5LAKF9LZ8=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "86df3ceb606a50708f812ce8c3c8a4e7cfc3db8f",
|
||||
"revCount": 35,
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/artiq-stubs.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/artiq-stubs.git"
|
||||
}
|
||||
},
|
||||
"artiqpkgs": {
|
||||
"inputs": {
|
||||
"artiq-comtools": "artiq-comtools",
|
||||
"mozilla-overlay": "mozilla-overlay",
|
||||
|
@ -11,11 +66,11 @@
|
|||
"src-pythonparser": "src-pythonparser"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1654087576,
|
||||
"narHash": "sha256-d+LCvCXikhhEjsf4qBZakx3Sda85p+4vVZVwE1YuS90=",
|
||||
"ref": "master",
|
||||
"rev": "68ef0073ea66fe9c7f7c178979ecb8c681c47caa",
|
||||
"revCount": 8068,
|
||||
"lastModified": 1714970685,
|
||||
"narHash": "sha256-0SGeBa1AwPojsoxkLl53e0afh40/oN/hARAnz9FCQR8=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "193962f31e1e4fc942f0248e0baf160cec4c8da7",
|
||||
"revCount": 8779,
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/artiq.git"
|
||||
},
|
||||
|
@ -24,39 +79,121 @@
|
|||
"url": "https://github.com/m-labs/artiq.git"
|
||||
}
|
||||
},
|
||||
"artiq-comtools": {
|
||||
"daxpkgs": {
|
||||
"inputs": {
|
||||
"artiq-stubs": "artiq-stubs",
|
||||
"artiqpkgs": [
|
||||
"artiqpkgs"
|
||||
],
|
||||
"flake8-artiq": "flake8-artiq",
|
||||
"nixpkgs": [
|
||||
"artiq",
|
||||
"artiqpkgs",
|
||||
"nixpkgs"
|
||||
],
|
||||
"sipyco": [
|
||||
"artiq",
|
||||
"artiqpkgs",
|
||||
"sipyco"
|
||||
]
|
||||
],
|
||||
"trap-dac-utils": "trap-dac-utils"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1654007592,
|
||||
"narHash": "sha256-vaDFhE1ItjqtIcinC/6RAJGbj44pxxMUEeQUa3FtgEE=",
|
||||
"owner": "m-labs",
|
||||
"repo": "artiq-comtools",
|
||||
"rev": "cb73281154656ee8f74db1866859e31bf42755cd",
|
||||
"lastModified": 1714063276,
|
||||
"narHash": "sha256-MxQbJ2XvwF7PL+arb6GF2VG4Ax41sD2x/uQwRG7kPn8=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "db0472abb5d25f112d325bebb71707cdae507f0b",
|
||||
"revCount": 1319,
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/dax.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/dax.git"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "m-labs",
|
||||
"repo": "artiq-comtools",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705309234,
|
||||
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705309234,
|
||||
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake8-artiq": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": [
|
||||
"daxpkgs",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706553329,
|
||||
"narHash": "sha256-ke6ISofCM6+tWEx9Xpgm34zgL4xSo/SmXTEJ66+r/fo=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "720d57d3559eeda8a8acb0a1ee0eb22f7d6473eb",
|
||||
"revCount": 102,
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/flake8-artiq.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/flake8-artiq.git"
|
||||
}
|
||||
},
|
||||
"mozilla-overlay": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1650459918,
|
||||
"narHash": "sha256-sroCK+QJTmoXtcRkwZyKOP9iAYOPID2Bwdxn4GkG16w=",
|
||||
"lastModified": 1704373101,
|
||||
"narHash": "sha256-+gi59LRWRQmwROrmE1E2b3mtocwueCQqZ60CwLG+gbg=",
|
||||
"owner": "mozilla",
|
||||
"repo": "nixpkgs-mozilla",
|
||||
"rev": "e1f7540fc0a8b989fb8cf701dc4fd7fc76bcf168",
|
||||
"rev": "9b11a87c0cc54e308fa83aac5b4ee1816d5418a2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -67,38 +204,39 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1653920503,
|
||||
"narHash": "sha256-BBeCZwZImtjP3oYy4WogkQYy5OxNyfNciVSc1AfZgLQ=",
|
||||
"lastModified": 1714906307,
|
||||
"narHash": "sha256-UlRZtrCnhPFSJlDQE7M0eyhgvuuHBTe1eJ9N9AQlJQ0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a634c8f6c1fbf9b9730e01764999666f3436f10a",
|
||||
"rev": "25865a40d14b3f9cf19f19b924e2ab4069b09588",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-22.05",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"artiq": "artiq"
|
||||
"artiqpkgs": "artiqpkgs",
|
||||
"daxpkgs": "daxpkgs"
|
||||
}
|
||||
},
|
||||
"sipyco": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"artiq",
|
||||
"artiqpkgs",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1654006751,
|
||||
"narHash": "sha256-OWAnoTCutvTQcYdtdtLQuL6uRtG+7Jz7sbRhcScv8bo=",
|
||||
"lastModified": 1708937641,
|
||||
"narHash": "sha256-Hkb9VYFzFgkYxfbh4kYcDSn7DbMUYehoQDeTALrxo2Q=",
|
||||
"owner": "m-labs",
|
||||
"repo": "sipyco",
|
||||
"rev": "b3d03a94c751a24769c54a61a0dbe9d6af52dade",
|
||||
"rev": "4a28b311ce0069454b4e8fe1e6049db11b9f1296",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -110,11 +248,11 @@
|
|||
"src-migen": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1650337393,
|
||||
"narHash": "sha256-rm1SlFmF2ASz0vIy2nDEzGlyRw2oYNeJRr8Kh8Mg2Qc=",
|
||||
"lastModified": 1702942348,
|
||||
"narHash": "sha256-gKIfHZxsv+jcgDFRW9mPqmwqbZXuRvXefkZcSFjOGHw=",
|
||||
"owner": "m-labs",
|
||||
"repo": "migen",
|
||||
"rev": "d4e3f34177c32f09904397179e6ed9c83175e528",
|
||||
"rev": "50934ad10a87ade47219b796535978b9bdf24023",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -126,11 +264,11 @@
|
|||
"src-misoc": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1649324486,
|
||||
"narHash": "sha256-Mw/fQS3lHFvCm7L1k63joRkz5uyijQfywcOq+X2+o2s=",
|
||||
"ref": "master",
|
||||
"rev": "f1dc58d2b8c222ba41c25cee4301626625f46e43",
|
||||
"revCount": 2420,
|
||||
"lastModified": 1699352904,
|
||||
"narHash": "sha256-SglyTmXOPv8jJOjwAjJrj/WhAkItQfUbvKfUqrynwRg=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "a53859f2167c31ab5225b6c09f30cf05527b94f4",
|
||||
"revCount": 2452,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/misoc.git"
|
||||
|
@ -156,6 +294,73 @@
|
|||
"repo": "pythonparser",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"trap-dac-utils": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": [
|
||||
"daxpkgs",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707011424,
|
||||
"narHash": "sha256-T259JDDdDq/i8WswldstQ4bBShfL/DG5cP09jPwSaRY=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "2c399c12b207e9edb8e55323a8fd0ee925dad778",
|
||||
"revCount": 294,
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/trap-dac-utils.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/trap-dac-utils.git"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
357
flake.nix
357
flake.nix
|
@ -1,21 +1,39 @@
|
|||
{
|
||||
description = "Additional packages for ARTIQ";
|
||||
|
||||
inputs.artiq.url = git+https://github.com/m-labs/artiq.git;
|
||||
inputs.artiqpkgs.url = git+https://github.com/m-labs/artiq.git;
|
||||
|
||||
outputs = { self, artiq }:
|
||||
inputs.daxpkgs = {
|
||||
url = git+https://gitlab.com/duke-artiq/dax.git;
|
||||
inputs = {
|
||||
artiqpkgs.follows = "artiqpkgs";
|
||||
nixpkgs.follows = "artiqpkgs/nixpkgs";
|
||||
sipyco.follows = "artiqpkgs/sipyco";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, artiqpkgs, daxpkgs }:
|
||||
let
|
||||
pkgs = import artiq.inputs.nixpkgs { system = "x86_64-linux"; };
|
||||
pkgs = import artiqpkgs.inputs.nixpkgs { system = "x86_64-linux"; };
|
||||
msys2 = import ./msys2 { inherit pkgs; };
|
||||
sipycoDependenciesFile = ./msys2/sipyco_dependencies.txt;
|
||||
artiqDependenciesFile = ./msys2/artiq_dependencies.txt;
|
||||
comtoolsDependenciesFile = ./msys2/comtools_dependencies.txt;
|
||||
pythonparserDependenciesFile = ./msys2/pythonparser_dependencies.txt;
|
||||
# reads filename and return list of non-empty lines from it
|
||||
readStringListFromFile = (filename: builtins.filter (x: builtins.lessThan 0 (builtins.length (pkgs.lib.strings.stringToCharacters x)))
|
||||
(builtins.filter builtins.isString (builtins.split "\n| |\t" (builtins.readFile filename))));
|
||||
|
||||
condaDeps = with pkgs; [ zlib xorg.libSM xorg.libICE xorg.libX11 xorg.libXau xorg.libXi xorg.libXrender libselinux libGL ];
|
||||
# Use the full Anaconda distribution, which already contains conda-build and its many dependencies.
|
||||
condaInstaller = pkgs.fetchurl {
|
||||
url = "https://repo.anaconda.com/archive/Anaconda3-2021.11-Linux-x86_64.sh";
|
||||
sha256 = "sha256-/t+eNAA5VX97XoqKhq/6nSmfXpggFEvXuSrp9+4IrGA=";
|
||||
url = "https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh";
|
||||
sha256 = "sha256-xTbdt7S6c4vdvU5YGykwjLMy+hKuP6LNZoFL1zXf8jE=";
|
||||
};
|
||||
condaInstallerEnv = pkgs.buildFHSUserEnv {
|
||||
condaInstallerEnv = pkgs.buildFHSEnv {
|
||||
name = "conda-installer-env";
|
||||
targetPkgs = pkgs: condaDeps;
|
||||
extraBwrapArgs = [ "--bind" "/nix" "/nix" ];
|
||||
};
|
||||
condaInstalled = pkgs.stdenvNoCC.mkDerivation {
|
||||
name = "conda-installed";
|
||||
|
@ -32,13 +50,14 @@
|
|||
installPhase =
|
||||
''
|
||||
conda-installer-env -c "./conda-installer.sh -p $out -b"
|
||||
substituteInPlace $out/lib/python3.9/site-packages/conda/gateways/disk/__init__.py \
|
||||
substituteInPlace $out/lib/python3.11/site-packages/conda/gateways/disk/__init__.py \
|
||||
--replace "os.chmod(path, 0o2775)" "pass"
|
||||
'';
|
||||
};
|
||||
condaBuilderEnv = pkgs.buildFHSUserEnv {
|
||||
condaBuilderEnv = pkgs.buildFHSEnv {
|
||||
name = "conda-builder-env";
|
||||
targetPkgs = pkgs: condaDeps ++ [ condaInstalled ];
|
||||
extraBwrapArgs = [ "--bind" "/nix" "/nix" ];
|
||||
};
|
||||
makeCondaRecipe = (constituent:
|
||||
''
|
||||
|
@ -112,7 +131,11 @@
|
|||
};
|
||||
|
||||
in rec {
|
||||
inherit pkgs;
|
||||
inherit makeCondaChannel;
|
||||
inherit (msys2) makeMsys2Package makeMsys2Repos;
|
||||
packages.x86_64-linux = rec {
|
||||
inherit (artiqpkgs.packages.x86_64-linux) artiq openocd-bscanspi;
|
||||
korad_ka3005p = pkgs.python3Packages.buildPythonPackage {
|
||||
pname = "korad_ka3005p";
|
||||
version = "1.1";
|
||||
|
@ -122,7 +145,7 @@
|
|||
rev = "a1898409cb188b388ed1cf84e76ca69e9c8a74eb";
|
||||
sha256 = "0h20qss70nssqiagc2fx75mravq1pji7rizhag3nq8xrcz2w20nc";
|
||||
};
|
||||
propagatedBuildInputs = [ artiq.inputs.sipyco.packages.x86_64-linux.sipyco artiq.packages.x86_64-linux.asyncserial ];
|
||||
propagatedBuildInputs = [ artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco artiqpkgs.packages.x86_64-linux.asyncserial ];
|
||||
};
|
||||
novatech409b = pkgs.python3Packages.buildPythonPackage {
|
||||
pname = "novatech409b";
|
||||
|
@ -133,7 +156,7 @@
|
|||
rev = "3bd559753972f07d881df66b7c6819afc5436053";
|
||||
sha256 = "1g9qv6fn5h7d393mb1v7w8sg6fimqg34blqdj22qnayb4agw1wyg";
|
||||
};
|
||||
propagatedBuildInputs = [ artiq.inputs.sipyco.packages.x86_64-linux.sipyco artiq.packages.x86_64-linux.asyncserial ];
|
||||
propagatedBuildInputs = [ artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco artiqpkgs.packages.x86_64-linux.asyncserial ];
|
||||
};
|
||||
lda = pkgs.python3Packages.buildPythonPackage {
|
||||
name = "lda";
|
||||
|
@ -141,10 +164,10 @@
|
|||
src = pkgs.fetchFromGitHub {
|
||||
owner = "m-labs";
|
||||
repo = "lda";
|
||||
rev = "e6bf828b6dfd7fbf59b61b691712736c98c95970";
|
||||
sha256 = "1w4ykzsl3386bz4ggpd6i60b6a3k7rnc6qjw59xm3hk0vs3w2vyn";
|
||||
rev = "2d8af1e9080a4c1ab4a32370b3f926bfba8c00b2";
|
||||
sha256 = "sha256-bImAsQiGmMauasltUrlkCRU3+p40d41DTlJvOjCfrP0=";
|
||||
};
|
||||
propagatedBuildInputs = [ artiq.inputs.sipyco.packages.x86_64-linux.sipyco ];
|
||||
propagatedBuildInputs = [ artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco ];
|
||||
postPatch = ''
|
||||
substituteInPlace lda/hidapi.py \
|
||||
--replace "hidapi_lib_path = None"\
|
||||
|
@ -160,7 +183,7 @@
|
|||
rev = "0cb0c15fc7e660a150e193245f5338d48f8b97db";
|
||||
sha256 = "1n4zmjcj2kpd97217y602pq6x8s80w39fgyi6qjmal92aicqdg07";
|
||||
};
|
||||
propagatedBuildInputs = [ artiq.inputs.sipyco.packages.x86_64-linux.sipyco artiq.packages.x86_64-linux.asyncserial ];
|
||||
propagatedBuildInputs = [ artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco artiqpkgs.packages.x86_64-linux.asyncserial ];
|
||||
};
|
||||
newfocus8742 = pkgs.python3Packages.buildPythonPackage {
|
||||
pname = "newfocus8742";
|
||||
|
@ -171,7 +194,7 @@
|
|||
rev = "9f6092b724b33b934aa4d3a1d6a20c295cd1d02d";
|
||||
sha256 = "0qf05ghylnqf3l5vjx5dc748wi84xn6p6lb6f9r8p6f1z7z67fb8";
|
||||
};
|
||||
propagatedBuildInputs = [ artiq.inputs.sipyco.packages.x86_64-linux.sipyco pkgs.python3Packages.pyusb ];
|
||||
propagatedBuildInputs = [ artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco pkgs.python3Packages.pyusb ];
|
||||
# no unit tests so do a simple smoke test
|
||||
checkPhase = "python -m newfocus8742.aqctl_newfocus8742 -h";
|
||||
};
|
||||
|
@ -184,7 +207,7 @@
|
|||
rev = "68369d5d63d233827840a9a752d90454a4e03baa";
|
||||
sha256 = "0r832c0icz8v3w27ci13024bqfslj1gx6dwhjv11ksw229xdcghd";
|
||||
};
|
||||
propagatedBuildInputs = [ artiq.inputs.sipyco.packages.x86_64-linux.sipyco ];
|
||||
propagatedBuildInputs = [ artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco ];
|
||||
# no unit tests without hardware so do a simple smoke test
|
||||
checkPhase = "python -m hut2.aqctl_hut2 -h";
|
||||
};
|
||||
|
@ -202,36 +225,16 @@
|
|||
postFixup = ''
|
||||
wrapQtApp "$out/bin/wand_gui"
|
||||
'';
|
||||
propagatedBuildInputs = [ artiq.packages.x86_64-linux.artiq artiq.packages.x86_64-linux.qasync ]
|
||||
++ [ artiq.inputs.sipyco.packages.x86_64-linux.sipyco ]
|
||||
propagatedBuildInputs = [ artiqpkgs.packages.x86_64-linux.artiq artiqpkgs.packages.x86_64-linux.qasync ]
|
||||
++ [ artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco ]
|
||||
++ (with pkgs.python3Packages; [ numpy scipy influxdb pyqtgraph setuptools ]);
|
||||
};
|
||||
flake8-artiq = pkgs.python3Packages.buildPythonPackage {
|
||||
pname = "flake8-artiq";
|
||||
version = "0.1.0";
|
||||
src = pkgs.fetchgit {
|
||||
url = "https://gitlab.com/duke-artiq/flake8-artiq.git";
|
||||
rev = "1216092974140a561850905734fc22fdacdc2cde";
|
||||
sha256 = "0rkab2qdwyzms6nxc44jzb5grvkkbpjwwmfv2zj96cm6cm8d9pdr";
|
||||
};
|
||||
propagatedBuildInputs = [ pkgs.python3Packages.flake8 ];
|
||||
checkInputs = [ pkgs.python3Packages.pytestCheckHook ];
|
||||
};
|
||||
dax = pkgs.python3Packages.buildPythonPackage rec {
|
||||
pname = "dax";
|
||||
version = "6.7";
|
||||
src = pkgs.fetchgit {
|
||||
url = "https://gitlab.com/duke-artiq/dax.git";
|
||||
rev = "v${version}";
|
||||
sha256 = "0rgvqqiypqvxjzrsixn3h7dn93isqw5vc2wrmpkxhzvw9lh5ihm7";
|
||||
};
|
||||
VERSIONEER_OVERRIDE = version;
|
||||
inherit (pkgs.python3Packages.pygit2) SSL_CERT_FILE;
|
||||
doCheck = false; # tests only pass for the latest stable ARTIQ version
|
||||
propagatedBuildInputs = [ artiq.packages.x86_64-linux.artiq artiq.inputs.sipyco.packages.x86_64-linux.sipyco ]
|
||||
++ (with pkgs.python3Packages; [ numpy scipy pyvcd natsort pygit2 matplotlib graphviz h5py networkx sortedcontainers ]);
|
||||
checkInputs = [ pkgs.python3Packages.pytestCheckHook ];
|
||||
};
|
||||
flake8-artiq = daxpkgs.packages.x86_64-linux.flake8-artiq;
|
||||
dax = daxpkgs.packages.x86_64-linux.dax.overridePythonAttrs (oa: {
|
||||
nativeBuildInputs = (oa.nativeBuildInputs or []) ++ [ pkgs.qt5.wrapQtAppsHook ];
|
||||
doCheck = false;
|
||||
});
|
||||
trap-dac-utils = daxpkgs.packages.x86_64-linux.trap-dac-utils;
|
||||
dax-applets = pkgs.python3Packages.buildPythonPackage rec {
|
||||
pname = "dax-applets";
|
||||
version = "0.0.0";
|
||||
|
@ -240,37 +243,95 @@
|
|||
rev = "0f0196b6941b0c44a33c85d8c02047ca65466463";
|
||||
sha256 = "0mx6yjvprhdnkdigwns8mg6v5daqxpgbv7mf63fa76i1iv2wvak4";
|
||||
};
|
||||
propagatedBuildInputs = [ artiq.packages.x86_64-linux.artiq ]
|
||||
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
||||
dontWrapQtApps = true;
|
||||
propagatedBuildInputs = [ artiqpkgs.packages.x86_64-linux.artiq ]
|
||||
++ (with pkgs.python3Packages; [ numpy pyqt5 pyqtgraph ]);
|
||||
doCheck = false;
|
||||
};
|
||||
linien-client = pkgs.python3Packages.buildPythonPackage rec {
|
||||
pname = "linien-client";
|
||||
version = "0.5.3";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "linien-org";
|
||||
repo = "linien";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-VOT/mw4o9dbkrtMxL0Ar5UcnxsZ7CYcoTj+VVrWADR4=";
|
||||
};
|
||||
propagatedBuildInputs = (with pkgs.python3Packages; [ numpy paramiko plumbum rpyc scipy ]);
|
||||
doCheck = false; # tests ask for pyqt, migen, etc.
|
||||
patchPhase =
|
||||
''
|
||||
echo ${version} > linien/VERSION
|
||||
substituteInPlace setup_client.py --replace "\"uuid>=1.30\"," ""
|
||||
substituteInPlace setup_client.py --replace "rpyc>=4.0,<5.0" "rpyc>=4.0"
|
||||
ln -s setup_client.py setup.py
|
||||
'';
|
||||
};
|
||||
linien-gui-internal = pkgs.python3Packages.buildPythonPackage rec {
|
||||
pname = "linien-gui-internal";
|
||||
inherit (linien-client) version src;
|
||||
propagatedBuildInputs = (with pkgs.python3Packages; [ click numpy paramiko plumbum pyqtgraph pyqt5 rpyc scipy superqt appdirs ]) ++ [ linien-client ];
|
||||
doCheck = false;
|
||||
patchPhase =
|
||||
''
|
||||
echo ${version} > linien/VERSION
|
||||
substituteInPlace setup_gui.py --replace "rpyc>=4.0,<5.0" "rpyc>=4.0"
|
||||
ln -s setup_gui.py setup.py
|
||||
'';
|
||||
postInstall =
|
||||
''
|
||||
# conflicts with linien-client
|
||||
rm -rf $out/lib/python3.11/site-packages/linien/__pycache__
|
||||
'';
|
||||
};
|
||||
# replace broken (as usual) setuptools launcher
|
||||
linien-gui = pkgs.stdenvNoCC.mkDerivation {
|
||||
name = "linien-gui";
|
||||
phases = [ "installPhase" "fixupPhase" ];
|
||||
installPhase =
|
||||
''
|
||||
mkdir -p $out/bin
|
||||
cat > $out/bin/linien << EOF
|
||||
#!${pkgs.python3.withPackages(ps: [ linien-gui-internal ])}/bin/python
|
||||
import linien.gui.app
|
||||
linien.gui.app.run_application()
|
||||
EOF
|
||||
chmod 755 $out/bin/linien
|
||||
'';
|
||||
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
||||
dontWrapQtApps = true;
|
||||
postFixup = ''
|
||||
wrapQtApp "$out/bin/linien"
|
||||
'';
|
||||
};
|
||||
conda-channel = makeCondaChannel [
|
||||
{
|
||||
name = "sipyco";
|
||||
version = artiq.inputs.sipyco.packages.x86_64-linux.sipyco.version;
|
||||
src = artiq.inputs.sipyco.packages.x86_64-linux.sipyco.src;
|
||||
version = artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco.version;
|
||||
src = artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco.src;
|
||||
dependencies = [ "numpy" "pybase64" ];
|
||||
}
|
||||
{
|
||||
name = "pythonparser";
|
||||
version = artiq.packages.x86_64-linux.pythonparser.version;
|
||||
src = artiq.packages.x86_64-linux.pythonparser.src;
|
||||
version = artiqpkgs.packages.x86_64-linux.pythonparser.version;
|
||||
src = artiqpkgs.packages.x86_64-linux.pythonparser.src;
|
||||
dependencies = [ "regex" ];
|
||||
}
|
||||
{
|
||||
name = "artiq-comtools";
|
||||
version = artiq.inputs.artiq-comtools.packages.x86_64-linux.artiq-comtools.version;
|
||||
src = artiq.inputs.artiq-comtools.packages.x86_64-linux.artiq-comtools.src;
|
||||
version = artiqpkgs.inputs.artiq-comtools.packages.x86_64-linux.artiq-comtools.version;
|
||||
src = artiqpkgs.inputs.artiq-comtools.packages.x86_64-linux.artiq-comtools.src;
|
||||
dependencies = [ "numpy" "aiohttp" "sipyco" ];
|
||||
}
|
||||
{
|
||||
name = "artiq";
|
||||
version = artiq.packages.x86_64-linux.artiq.version;
|
||||
src = artiq.packages.x86_64-linux.artiq.src;
|
||||
version = artiqpkgs.packages.x86_64-linux.artiq.version;
|
||||
src = artiqpkgs.packages.x86_64-linux.artiq.src;
|
||||
preSetup =
|
||||
''
|
||||
export VERSIONEER_OVERRIDE=${artiq.packages.x86_64-linux.artiq.version}
|
||||
export VERSIONEER_REV=${artiq.sourceInfo.rev}
|
||||
export VERSIONEER_OVERRIDE=${artiqpkgs.packages.x86_64-linux.artiq.version}
|
||||
export VERSIONEER_REV=${artiqpkgs.sourceInfo.rev}
|
||||
'';
|
||||
dependencies = [
|
||||
"pythonparser"
|
||||
|
@ -288,6 +349,8 @@
|
|||
"llvmlite"
|
||||
"llvm-tools"
|
||||
"lld"
|
||||
"tqdm"
|
||||
"python-lmdb"
|
||||
"artiq-comtools"
|
||||
];
|
||||
}
|
||||
|
@ -340,11 +403,17 @@
|
|||
src = flake8-artiq.src;
|
||||
dependencies = [ "flake8" ];
|
||||
}
|
||||
{
|
||||
name = "trap-dac-utils";
|
||||
version = trap-dac-utils.version;
|
||||
src = trap-dac-utils.src;
|
||||
dependencies = trap-dac-utils.condaDependencies;
|
||||
}
|
||||
{
|
||||
name = "dax";
|
||||
version = dax.version;
|
||||
src = dax.src;
|
||||
dependencies = [ "python>=3.7" "artiq" "sipyco" "numpy" "scipy" "pyvcd" "natsort" "pygit2" "matplotlib" "python-graphviz" "h5py" "networkx" "sortedcontainers" ];
|
||||
dependencies = dax.condaDependencies;
|
||||
}
|
||||
{
|
||||
name = "dax-applets";
|
||||
|
@ -353,8 +422,184 @@
|
|||
dependencies = [ "python>=3.5" "artiq" "numpy" "pyqt" "pyqtgraph" ];
|
||||
}
|
||||
];
|
||||
|
||||
msys2-pythonparser = msys2.makeMsys2Package rec {
|
||||
name = "python-pythonparser";
|
||||
version = artiqpkgs.packages.x86_64-linux.pythonparser.version;
|
||||
src = artiqpkgs.packages.x86_64-linux.pythonparser.src;
|
||||
depends = readStringListFromFile pythonparserDependenciesFile;
|
||||
};
|
||||
msys2-sipyco = msys2.makeMsys2Package {
|
||||
name = "python-sipyco";
|
||||
src = artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco.src;
|
||||
inherit (artiqpkgs.inputs.sipyco.packages.x86_64-linux.sipyco) version;
|
||||
depends = readStringListFromFile sipycoDependenciesFile;
|
||||
};
|
||||
msys2-artiq-comtools = msys2.makeMsys2Package {
|
||||
name = "artiq-comtools";
|
||||
src = artiqpkgs.inputs.artiq-comtools.packages.x86_64-linux.artiq-comtools.src;
|
||||
inherit (artiqpkgs.inputs.artiq-comtools.packages.x86_64-linux.artiq-comtools) version;
|
||||
depends = (readStringListFromFile comtoolsDependenciesFile) ++ [ "mingw-w64-clang-x86_64-python-sipyco" ];
|
||||
};
|
||||
msys2-artiq = msys2.makeMsys2Package {
|
||||
name = "artiq";
|
||||
inherit (artiqpkgs.packages.x86_64-linux.artiq) version src;
|
||||
prepare =
|
||||
''
|
||||
export VERSIONEER_OVERRIDE=${artiqpkgs.packages.x86_64-linux.artiq.version}
|
||||
export VERSIONEER_REV=${artiqpkgs.sourceInfo.rev}
|
||||
'';
|
||||
depends = (readStringListFromFile artiqDependenciesFile)
|
||||
++ [ "mingw-w64-clang-x86_64-python-sipyco" "mingw-w64-clang-x86_64-python-pythonparser" "mingw-w64-clang-x86_64-artiq-comtools" ];
|
||||
|
||||
};
|
||||
msys2-asyncserial = msys2.makeMsys2Package {
|
||||
name = "python-asyncserial";
|
||||
version = artiqpkgs.packages.x86_64-linux.asyncserial.version;
|
||||
src = artiqpkgs.packages.x86_64-linux.asyncserial.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python" ];
|
||||
};
|
||||
msys2-korad_ka3005p = msys2.makeMsys2Package {
|
||||
name = "korad_ka3005p";
|
||||
version = korad_ka3005p.version;
|
||||
src = korad_ka3005p.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python-sipyco" "mingw-w64-clang-x86_64-python-asyncserial" ];
|
||||
};
|
||||
msys2-novatech409b = msys2.makeMsys2Package {
|
||||
name = "novatech409b";
|
||||
version = novatech409b.version;
|
||||
src = novatech409b.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python-sipyco" "mingw-w64-clang-x86_64-python-asyncserial" ];
|
||||
};
|
||||
msys2-lda = msys2.makeMsys2Package {
|
||||
name = "lda";
|
||||
version = lda.version;
|
||||
src = lda.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python-sipyco" ];
|
||||
};
|
||||
msys2-thorlabs_tcube = msys2.makeMsys2Package {
|
||||
name = "thorlabs_tcube";
|
||||
version = thorlabs_tcube.version;
|
||||
src = thorlabs_tcube.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python-sipyco" "mingw-w64-clang-x86_64-python-asyncserial" ];
|
||||
};
|
||||
msys2-newfocus8742 = msys2.makeMsys2Package {
|
||||
name = "newfocus8742";
|
||||
version = newfocus8742.version;
|
||||
src = newfocus8742.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python-sipyco" ];
|
||||
};
|
||||
msys2-hut2 = msys2.makeMsys2Package {
|
||||
name = "hut2";
|
||||
version = hut2.version;
|
||||
src = hut2.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python-sipyco" ];
|
||||
};
|
||||
msys2-flake8-artiq = msys2.makeMsys2Package {
|
||||
name = "flake8-artiq";
|
||||
version = flake8-artiq.version;
|
||||
src = flake8-artiq.src;
|
||||
depends = [ "mingw-w64-clang-x86_64-python-flake8" ];
|
||||
};
|
||||
msys2-repos = msys2.makeMsys2Repos [
|
||||
msys2-pythonparser msys2-sipyco msys2-artiq-comtools msys2-artiq
|
||||
msys2-asyncserial
|
||||
msys2-korad_ka3005p
|
||||
msys2-novatech409b
|
||||
msys2-lda
|
||||
msys2-thorlabs_tcube
|
||||
msys2-newfocus8742
|
||||
msys2-hut2
|
||||
msys2-flake8-artiq
|
||||
];
|
||||
|
||||
msys2-offline-installer = pkgs.stdenv.mkDerivation {
|
||||
name = "msys2-offline-installer";
|
||||
buildInputs = with pkgs; [ p7zip ];
|
||||
src = ./.;
|
||||
msys2_qt_ifw = pkgs.stdenvNoCC.mkDerivation rec {
|
||||
name = "msys2_qt_ifw";
|
||||
srcs = import ./msys2/msys2_qt_ifw_packages.nix { inherit pkgs; };
|
||||
buildInputs = [ pkgs.gnutar pkgs.zstd ];
|
||||
phases = [ "installPhase" ];
|
||||
installPhase = (pkgs.lib.strings.concatStringsSep "\n" (["mkdir $out"] ++ (map (p: "tar xvf ${p} -C $out") srcs)));
|
||||
};
|
||||
|
||||
msys2_artiq_root = pkgs.stdenvNoCC.mkDerivation rec {
|
||||
name = "msys2_artiq_root";
|
||||
artiq-deps-pkgs = import ./msys2/artiq_dependency_packages.nix { inherit pkgs; };
|
||||
msys2-pkgs = import ./msys2/msys2_packages.nix { inherit pkgs; };
|
||||
msys2-base = pkgs.fetchurl {
|
||||
url = "https://github.com/msys2/msys2-installer/releases/download/2024-05-07/msys2-base-x86_64-20240507.tar.xz";
|
||||
name = "base";
|
||||
sha256 = "sha256-RiXJqvmFDaItr6KgoWTekUPHue4i/LM4uBqfVx9HKpc=";
|
||||
};
|
||||
|
||||
src = ./.;
|
||||
buildInputs = [ pkgs.gnutar pkgs.zstd pkgs.pacman pkgs.fakeroot ];
|
||||
phases = [ "installPhase" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir $out
|
||||
mkdir -p tmp/cache
|
||||
tar -xvf ${msys2-base} --strip-components=1 -C $out/ msys64
|
||||
printf "\n[artiq]\nSigLevel = Optional TrustAll\nServer = https://msys2.m-labs.hk/artiq-beta\n" >> $out/etc/pacman.conf
|
||||
cat $out/etc/pacman.conf | sed -e "s|/etc/pacman.d|$out/etc/pacman.d|g" -e "s|SigLevel = Required|SigLevel = Never|g" -e "s|CheckSpace||g" > tmp/pacman.conf
|
||||
sed -i '/\[mingw32\]/,/^$/d; /\[clang32\]/,/^$/d; /\[mingw64\]/,/^$/d; /\[ucrt64\]/,/^$/d; /\[clangarm64\]/,/^$/d;' $out/etc/pacman.conf
|
||||
fakeroot pacman -U --asdeps --noconfirm --cachedir tmp/cache --config tmp/pacman.conf --root $out ${pkgs.lib.concatStringsSep " " (map (p: "${p}") msys2-pkgs)}
|
||||
fakeroot pacman -U --asdeps --noconfirm --cachedir tmp/cache --config tmp/pacman.conf --root $out ${pkgs.lib.concatStringsSep " " (map (p: "${p}") artiq-deps-pkgs)}
|
||||
fakeroot pacman -U --noconfirm --cachedir tmp/cache --config tmp/pacman.conf --root $out ${msys2-artiq}/*.pkg.tar.zst ${msys2-artiq-comtools}/*.pkg.tar.zst ${msys2-pythonparser}/*.pkg.tar.zst ${msys2-sipyco}/*.pkg.tar.zst
|
||||
rm -rf $out/mingw64* $out/clang32* $out/clangarm64* $out/mingw32* $out/ucrt64* \
|
||||
$out/var/lib/pacman/sync/mingw64* $out/var/lib/pacman/sync/clang32* $out/var/lib/pacman/sync/clangarm64* \
|
||||
$out/var/lib/pacman/sync/mingw32* $out/var/lib/pacman/sync/ucrt64* \
|
||||
$out/etc/pacman.d/mirrorlist.mingw64 $out/etc/pacman.d/mirrorlist.clang32 $out/etc/pacman.d/mirrorlist.clangarm64 \
|
||||
$out/etc/pacman.d/mirrorlist.mingw32 $out/etc/pacman.d/mirrorlist.ucrt64
|
||||
'';
|
||||
};
|
||||
|
||||
phases = [ "buildPhase" "installPhase" ];
|
||||
buildPhase = ''
|
||||
export HOME=`mktemp -d`
|
||||
cp -r $src/installer/qt-ifw qt-ifw
|
||||
# needed for sed and 7z
|
||||
chmod -R 700 qt-ifw
|
||||
sed -i "s|@DATE@|$(date +'%Y-%m-%d')|g" qt-ifw/config/config.xml qt-ifw/packages/com.msys2.root/meta/package.xml ;
|
||||
sed -i "s|@VERSION@|${artiqpkgs.packages.x86_64-linux.artiq.version}|g" qt-ifw/config/config.xml qt-ifw/packages/com.msys2.root/meta/package.xml ;
|
||||
|
||||
7z a -mx9 -md128m "qt-ifw/packages/com.msys2.root/data/msys64.7z" "$msys2_artiq_root/"*
|
||||
${pkgs.wineWowPackages.stable}/bin/wine64 $msys2_qt_ifw/clang64/bin/binarycreator.exe \
|
||||
-t "$msys2_qt_ifw/clang64/bin/installerbase.exe" \
|
||||
-p "qt-ifw/packages" \
|
||||
-c "qt-ifw/config/config.xml" \
|
||||
--offline-only \
|
||||
"artiq-msys2-x86_64.exe" \
|
||||
-v
|
||||
'';
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp artiq-msys2-x86_64.exe $out/artiq-msys2-x86_64-${artiqpkgs.packages.x86_64-linux.artiq.version}.exe
|
||||
mkdir -p $out/nix-support/
|
||||
for i in $out/*.*; do
|
||||
echo file binary-dist $i >> $out/nix-support/hydra-build-products
|
||||
done
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
hydraJobs = packages.x86_64-linux;
|
||||
|
||||
devShells.x86_64-linux = {
|
||||
msys2 = pkgs.mkShell {
|
||||
name = "dev-shell-msys2";
|
||||
buildInputs = with pkgs; [
|
||||
curl
|
||||
pacman
|
||||
fakeroot
|
||||
p7zip
|
||||
msys2.wine-msys2
|
||||
wineWowPackages.stable
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 131 KiB |
|
@ -0,0 +1,18 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Installer>
|
||||
<Name>MSYS2 with ARTIQ</Name>
|
||||
<Version>@VERSION@</Version>
|
||||
<Title>MSYS2 with ARTIQ</Title>
|
||||
<Publisher>M-Labs Ltd.</Publisher>
|
||||
<ControlScript>control.js</ControlScript>
|
||||
<StartMenuDir>MSYS2 with ARTIQ</StartMenuDir>
|
||||
<RunProgram>@TargetDir@/clang64.exe</RunProgram>
|
||||
<RunProgramArguments></RunProgramArguments>
|
||||
<InstallerApplicationIcon>artiq</InstallerApplicationIcon>
|
||||
<InstallerWindowIcon>artiq.ico</InstallerWindowIcon>
|
||||
<InstallActionColumnVisible>false</InstallActionColumnVisible>
|
||||
<MaintenanceToolName>uninstall</MaintenanceToolName>
|
||||
<SupportsModify>false</SupportsModify>
|
||||
<RepositorySettingsPageVisible>false</RepositorySettingsPageVisible>
|
||||
<SaveDefaultRepositories>false</SaveDefaultRepositories>
|
||||
</Installer>
|
|
@ -0,0 +1,20 @@
|
|||
function Controller()
|
||||
{
|
||||
installer.setDefaultPageVisible(QInstaller.LicenseCheck, false);
|
||||
if (installer.isInstaller()) {
|
||||
installer.setDefaultPageVisible(QInstaller.ComponentSelection, false);
|
||||
installer.setDefaultPageVisible(QInstaller.ReadyForInstallation, false);
|
||||
}
|
||||
}
|
||||
|
||||
Controller.prototype.IntroductionPageCallback = function()
|
||||
{
|
||||
const widget = gui.currentPageWidget();
|
||||
const radioNames = ["PackageManagerRadioButton", "UpdaterRadioButton"];
|
||||
for (const name of radioNames) {
|
||||
const el = gui.findChild(widget, name);
|
||||
if (el != null) {
|
||||
el.hide();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
function cancelInstaller(message)
|
||||
{
|
||||
installer.setDefaultPageVisible(QInstaller.Introduction, false);
|
||||
installer.setDefaultPageVisible(QInstaller.TargetDirectory, false);
|
||||
installer.setDefaultPageVisible(QInstaller.ComponentSelection, false);
|
||||
installer.setDefaultPageVisible(QInstaller.ReadyForInstallation, false);
|
||||
installer.setDefaultPageVisible(QInstaller.StartMenuSelection, false);
|
||||
installer.setDefaultPageVisible(QInstaller.PerformInstallation, false);
|
||||
installer.setDefaultPageVisible(QInstaller.LicenseCheck, false);
|
||||
|
||||
var abortText = "<font color='red'>" + message +"</font>";
|
||||
installer.setValue("FinishedText", abortText);
|
||||
installer.setValue("RunProgram", null);
|
||||
}
|
||||
|
||||
function isSupported()
|
||||
{
|
||||
if (systemInfo.kernelType === "winnt") {
|
||||
var major = parseInt(systemInfo.kernelVersion.split(".", 1));
|
||||
var minor = parseInt(systemInfo.kernelVersion.split(".", 2)[1]);
|
||||
// Windows >= 8.1
|
||||
if (major > 6 || (major == 6 && minor >= 3)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function createShortcuts()
|
||||
{
|
||||
var windir = installer.environmentVariable("WINDIR");
|
||||
if (windir === "") {
|
||||
QMessageBox["warning"]( "Error" , "Error", "Could not find windows installation directory");
|
||||
return;
|
||||
}
|
||||
|
||||
component.addOperation("CreateShortcut", "@TargetDir@/clang64.exe", "@StartMenuDir@/MSYS2 with ARTIQ.lnk", "iconPath=@TargetDir@/clang64.exe");
|
||||
|
||||
component.addOperation( "Execute",
|
||||
["@TargetDir@\\usr\\bin\\bash.exe", "--login", "-c", "exit"]);
|
||||
}
|
||||
|
||||
function Component() {
|
||||
|
||||
if (!isSupported()) {
|
||||
cancelInstaller("Installation on " + systemInfo.prettyProductName + " is not supported");
|
||||
return;
|
||||
}
|
||||
|
||||
var systemDrive = installer.environmentVariable("SystemDrive");
|
||||
// Use C: as a default for messed up systems.
|
||||
if (systemDrive === "") {
|
||||
systemDrive = "C:";
|
||||
}
|
||||
var targetDir = installer.value("TargetDir", systemDrive+"\\msys64")
|
||||
|
||||
installer.setValue("TargetDir", targetDir);
|
||||
}
|
||||
|
||||
Component.prototype.createOperations = function()
|
||||
{
|
||||
component.createOperations();
|
||||
createShortcuts();
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0"?>
|
||||
<Package>
|
||||
<DisplayName>MSYS2 with ARTIQ</DisplayName>
|
||||
<Description>Cygwin-derived Posix-like env. for Windows with Arch Linux's Pacman and pre-installed ARTIQ software</Description>
|
||||
<Version>@VERSION@</Version>
|
||||
<ReleaseDate>@DATE@</ReleaseDate>
|
||||
<Default>true</Default>
|
||||
<Script>installscript.js</Script>
|
||||
</Package>
|
|
@ -0,0 +1,32 @@
|
|||
arch=("any")
|
||||
mingw_arch=("clang64")
|
||||
pkgver=${DRV_VERSION}
|
||||
url="https://m-labs.hk"
|
||||
source=("source.tar")
|
||||
sha256sums=("SKIP")
|
||||
|
||||
build() {
|
||||
mkdir clang64
|
||||
export PYTHONPATH=`pwd`/clang64/lib/python3.11/site-packages
|
||||
chmod +w -R source
|
||||
cd source
|
||||
wine-msys2-build python setup.py install --single-version-externally-managed --prefix=../clang64 --record=setuptools-sucks.txt
|
||||
cd ..
|
||||
|
||||
# setuptools creates this file if it doesn't already exist, which causes conflicts between pacman packages
|
||||
# see: https://corte.si/posts/code/setuptoolssucks/
|
||||
rm -f clang64/lib/python3.11/site-packages/easy-install.pth
|
||||
# patch broken shebangs (Z:/nix/store/...)
|
||||
for entrypoint in clang64/bin/*-script.py; do
|
||||
[ -f "$entrypoint" ] || continue
|
||||
sed -i "1s|#!.*|#!python|" $entrypoint
|
||||
done
|
||||
for entrypoint in clang64/bin/*-script.pyw; do
|
||||
[ -f "$entrypoint" ] || continue
|
||||
sed -i "1s|#!.*|#!pythonw|" $entrypoint
|
||||
done
|
||||
}
|
||||
|
||||
package() {
|
||||
cp -R clang64 ${pkgdir}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
mingw-w64-clang-x86_64-python3.11
|
||||
mingw-w64-clang-x86_64-python-h5py
|
||||
mingw-w64-clang-x86_64-python-pyqt5
|
||||
mingw-w64-clang-x86_64-qt5-svg
|
||||
mingw-w64-clang-x86_64-python-qasync
|
||||
mingw-w64-clang-x86_64-python-pyqtgraph
|
||||
mingw-w64-clang-x86_64-python-numpy
|
||||
mingw-w64-clang-x86_64-python-scipy
|
||||
mingw-w64-clang-x86_64-python-dateutil
|
||||
mingw-w64-clang-x86_64-python-prettytable
|
||||
mingw-w64-clang-x86_64-python-tqdm
|
||||
mingw-w64-clang-x86_64-python-pygit2
|
||||
mingw-w64-clang-x86_64-python-llvmlite
|
||||
mingw-w64-clang-x86_64-python-levenshtein
|
||||
mingw-w64-clang-x86_64-python-lmdb
|
||||
mingw-w64-clang-x86_64-lld
|
||||
mingw-w64-clang-x86_64-llvm
|
||||
mingw-w64-clang-x86_64-openocd
|
||||
mingw-w64-clang-x86_64-bscan-spi-bitstreams
|
|
@ -0,0 +1,608 @@
|
|||
{ pkgs } : [
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libunwind-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libunwind";
|
||||
sha256 = "16k6kng1z1cxlw6al5g17zwm1dd1myildzk9n30qr2ljygrc5ncl";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libc++-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libc++";
|
||||
sha256 = "0zdgdzck0qyyc5vqg3i5d1rpsbzf0fl15bvwqzs3wqr01z7q35dm";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-expat-2.6.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-expat";
|
||||
sha256 = "0kj1vzjh3qh7d2g47avlgk7a6j4nc62111hy1m63jwq0alc01k38";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-bzip2-1.0.8-3-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-bzip2";
|
||||
sha256 = "1n8zf2kk1xj7wiszp6mjchy1yzpalddbj0cj17qm625ags2vzflm";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libffi-3.4.6-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libffi";
|
||||
sha256 = "1q6gms980985bp087rnnpvz2fwfakgm5266izfk3b1mbp620s1yv";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-mpdecimal-4.0.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-mpdecimal";
|
||||
sha256 = "0hrhbjgi0g3jqpw8himshqw6vazm5sxhsfmyg386nbrxwnfgl1gb";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libiconv-1.17-4-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libiconv";
|
||||
sha256 = "1g2bkhgf60dywccxw911ydyigf3m25yqfh81m5099swr7mjsmzyf";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-gettext-runtime";
|
||||
sha256 = "0ll6ci6d3mc7g04q0xixjc209bh8r874dqbczgns69jsad3wg6mi";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libtre-git-r177.07e66d0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libtre-git";
|
||||
sha256 = "0fc9hxsdks1xy5fv0rcna433hlzf6jhs77hg0hfzkzhn06f9alp4";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libsystre-1.0.1-5-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libsystre";
|
||||
sha256 = "05qsn8fkks4f93jkas43s47axqqgx5m64b45p462si3nlb8cjirq";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-ncurses-6.4.20231217-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-ncurses";
|
||||
sha256 = "00046d52zsr8zjifl7h22jfihhh53h20ipvbqmvf9myssw2fwjza";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-openssl-3.3.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-openssl";
|
||||
sha256 = "0r9hvrvs1mywa1ilw2jd8z6dp7n7rgqc5qixcgagpn37b1vmvl4s";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-termcap-1.3.1-7-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-termcap";
|
||||
sha256 = "17ha468qavwin800cc3b7c3xdggwk2gakasfxg7jdx7616d99l0n";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-readline-8.2.010-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-readline";
|
||||
sha256 = "1s47pd5iz8y3hspsxn4pnp0v3m05ccia40v5nfvx0rmwgvcaz82v";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-zlib-1.3.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-zlib";
|
||||
sha256 = "06i9xjsskf4ddb2ph4h31md5c7imj9mzjhd4lc4q44j8dmpc1w5p";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-tcl-8.6.13-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-tcl";
|
||||
sha256 = "0paaqwk0sfy2zxwlxkmxf2bqq46lyg0sx7cqgzknvazwx8xa2z4x";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-sqlite3-3.45.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-sqlite3";
|
||||
sha256 = "1icvw3f08cgi94p0177i46v72wgpsxw95p6kd0sm2w3vj0qlqbcw";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-tk-8.6.13-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-tk";
|
||||
sha256 = "12f6lqx1sglczcnz2ns6sxw9cxwm1klxajqzcrbnfwln1nllz2nd";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-xz-5.6.1-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-xz";
|
||||
sha256 = "12wj7015dy3gafvnf95bww60nkk35lwzzg9p6114qv1jr6q6hbdh";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-tzdata-2024a-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-tzdata";
|
||||
sha256 = "1lsfn3759cyf56zlmfvgy6ihs4iks6zhlnrbfmnq5wml02k936ji";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-3.11.9-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python";
|
||||
sha256 = "0ah1idjqxg7jc07a1gz9z766rjjd0f0c6ri4hpcsimsrbj1zjd3c";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libwinpthread-git-11.0.0.r744.ge5ac8c550-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libwinpthread-git";
|
||||
sha256 = "1r320i80r7ga00j4kvq39gf9xpyylyhdfaspjgjsnan3hjlr6d2w";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-llvm-openmp-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-llvm-openmp";
|
||||
sha256 = "1jkvghfra2gm973sk5m407f3lp55gp7c1ss97g52qsj144vpgf0i";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-openblas-0.3.27-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-openblas";
|
||||
sha256 = "06ygz1wa488wqvmxbn74b0fyan4wf3lb6kbwfampgikd1gijww2k";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-numpy-1.26.4-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-numpy";
|
||||
sha256 = "00h0ap954cjwlsc3p01fjwy7s3nlzs90v0kmnrzxm0rljmvn4jkf";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libaec-1.1.3-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libaec";
|
||||
sha256 = "1x0w1mr000j08hqh9l7fwwm0vwlb9jpjr1jkfw67w3c3lixxl6pg";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-c-ares-1.28.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-c-ares";
|
||||
sha256 = "1w61khmpx2wky1hqg9xhlywafjy51i8x6wvgyin6n011sby0pwgz";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-brotli-1.1.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-brotli";
|
||||
sha256 = "113mha41q53cx0hw13cq1xdf7zbsd58sh8cl1cd7xzg1q69n60w2";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libunistring-1.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libunistring";
|
||||
sha256 = "13nz49li39z1zgfx1q9jg4vrmyrmqb6qdq0nqshidaqc6zr16k3g";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libidn2-2.3.7-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libidn2";
|
||||
sha256 = "07k8zh5nb2s82md7lz22r8gim8214rhlg586lywck3zcla98jv1w";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libpsl-0.21.5-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libpsl";
|
||||
sha256 = "1mpx77q5g8pj45s8wgc52c4ww2r93080p6d559p56f558a3cl317";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-zstd-1.5.6-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-zstd";
|
||||
sha256 = "02cp5ci8w50k7xn38mpkwnr8sn898v18wcc07y8f9sfla7vcyfix";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libtasn1-4.19.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libtasn1";
|
||||
sha256 = "19m59mjxww26ah2gk9c0i512fmqpyaj6r5na564kmg6wpwvkihcj";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-p11-kit-0.25.3-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-p11-kit";
|
||||
sha256 = "1jrwkc4lvw5hm5rqmi5gqh7mfkbqfa5gi81zjij0krnl0gaxw3c8";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-ca-certificates-20240203-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-ca-certificates";
|
||||
sha256 = "1q5nxhsk04gidz66ai5wgd4dr04lfyakkfja9p0r5hrgg4ppqqjg";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libssh2-1.11.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libssh2";
|
||||
sha256 = "0l2m823gm1rvnjmqm5ads17mxz1bhpzai5ixyhnkpzrsjxd1ygy5";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-nghttp2-1.61.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-nghttp2";
|
||||
sha256 = "08gpir608d9sapczsmjhy5nlbg7sy24db3znvp6rmmpk6m8g79k1";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-curl-8.7.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-curl";
|
||||
sha256 = "10ck89ik7hf1nlzlh70gmqs23n5qqzfy8g4dxwm274mww95fqzjd";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-hdf5-1.14.3-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-hdf5";
|
||||
sha256 = "0pdx082m87j26cz4c2l3kr3yiv360p28qcbw9lz05l8p91jhdvfz";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-h5py-3.10.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-h5py";
|
||||
sha256 = "0mnwd2zps19zx5raihnyv9qz9p884x2h87cwv801l90862242f11";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-pyqt5-sip-12.13.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-pyqt5-sip";
|
||||
sha256 = "1100zd3xz7g7pf3z11pqj9cvzpap7yz4q58gnq5yaky51s1246h7";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-dbus-1.14.10-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-dbus";
|
||||
sha256 = "0qrp1bsidhq4yabwz6wgz88s3d15w1aiamvpd3hwsjg0wy49mq0g";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-double-conversion-3.3.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-double-conversion";
|
||||
sha256 = "1jd07myjvc0dzwkh84rk7c74wv96syyfb7v99694bbbv31jkqw4g";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libpng-1.6.43-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libpng";
|
||||
sha256 = "0djnvabj3zpswga0i2k496cgs9m1xy9axc8nb0ag6w647szy77b0";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-wineditline-2.206-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-wineditline";
|
||||
sha256 = "0z9kn9mnh3ffl8dmsw3l1hys8k7sn6a2qys08k4cn225jr9nrmzs";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-pcre2-10.43-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-pcre2";
|
||||
sha256 = "0jrgk5afqg6czjp64a74mylfghsfrx1vrbb85ibs7qssks7h6x7k";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-packaging-23.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-packaging";
|
||||
sha256 = "0zr7i0pmj0a8m41kvr973i6hc3yjv2jxxbwp4hzwml6ynjfpb1c8";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-glib2-2.80.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-glib2";
|
||||
sha256 = "0v5gxyayn24zss68p615p1pbdxs0fh6viah0i25rzd3854pmmcfp";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-graphite2-1.3.14-3-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-graphite2";
|
||||
sha256 = "01lgbxaanzvqmikvwqyyfvnsc71rx1vl28ixmdd112m5l4qnswnr";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-harfbuzz-8.4.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-harfbuzz";
|
||||
sha256 = "1jqdphj2x9v212khzv08fmbbzy5gb3mxp9gfv7g8dhv7ia6cq20b";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-freetype-2.13.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-freetype";
|
||||
sha256 = "07kdykdz73jjqajarn1b1wv5mkwnwj7xw09x4iy11gpj6yz0sb8h";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-fontconfig-2.15.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-fontconfig";
|
||||
sha256 = "19jmphak4szjln6d3s6qpi872abc01dmzhkz4q0ws80mr8h7q78i";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-icu-74.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-icu";
|
||||
sha256 = "1axzykmw3fyld9bs0xb090wsjbpdpywhdr0sm9gfallznl3c2k56";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libjpeg-turbo-3.0.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libjpeg-turbo";
|
||||
sha256 = "0zks8yqkcij5krgdb6kgfq0vnhmj10sxq8zvmc9jrkwl9hbz4lc9";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-md4c-0.5.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-md4c";
|
||||
sha256 = "1ikssajqdak1chhr84d8dzkq9ygkvmdqkrqqqv745wwwrkcmmars";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-vulkan-loader-1.3.280.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-vulkan-loader";
|
||||
sha256 = "0ij9dpxgd75b8vwalqwk2a6pfs2xp1f8ap2lcsywn080xllmnwxr";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-qt5-base-5.15.13+kde+r138-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-qt5-base";
|
||||
sha256 = "0zfg0a6m4wyn9l5wsisqcx3ic9fn70ans8bsfl90s7z2vsc7rp2q";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pyqt5-5.15.10-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pyqt5";
|
||||
sha256 = "07pccsnbsfaa3zdkc7xbd7nklphdfkqdsi1yd84dxdsxprmp808a";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-qt5-svg-5.15.13+kde+r6-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-qt5-svg";
|
||||
sha256 = "0camszb46c097vs7xf4kvk9zydkbpjcm0sqm62fa4n5wlvr1zg8n";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-qasync-0.27.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-qasync";
|
||||
sha256 = "075i935vgpdaw59w29w73x6k7bwpdn22bw53pjlia5xkznqmg987";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pyqtgraph-0.13.3-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pyqtgraph";
|
||||
sha256 = "0kai3cpi7pbfkxp7npmz28s78jqcf1aslgz4hfara9698xg6kny6";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-scipy-1.12.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-scipy";
|
||||
sha256 = "1ifd4kml73cnza2rpfc4vfd996dj46ahcs1l9r8wfa9kpk6a80ff";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-six-1.16.0-4-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-six";
|
||||
sha256 = "1f4f1jk9mrgd0a1xpjxahasbwd2x2kah53jkjfkimif120ynqqdg";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-dateutil-2.9.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-dateutil";
|
||||
sha256 = "15zbs5jxh2id2hdskprf0p85nh4y1bgngwgbq482hc31nq5gsls1";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-wcwidth-0.2.13-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-wcwidth";
|
||||
sha256 = "0c1k6kqfgirlm0xqigajbx6fv51v0lm95y1g39w1klij2dq4jk5q";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-prettytable-3.10.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-prettytable";
|
||||
sha256 = "1d0xx49bacqz1b55q8yp13pkfj8yhfsazibk6zlmld5ac7blk6cw";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-colorama-0.4.6-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-colorama";
|
||||
sha256 = "10mw2pirqrw3gk28alnk6l29v4b3z3w45xlr8fvzdbpvzhfrwgkn";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-tqdm-4.66.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-tqdm";
|
||||
sha256 = "1ag9wr3xpq63naa2c45lz3csvwkkq8plxf0ajxfbb2chh67jspwq";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-http-parser-2.9.4-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-http-parser";
|
||||
sha256 = "0bmnpq7cqihspyma4xxg3rsz4z8wqc294pi7wfy2vxn26m82rfy5";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libgit2-1.7.2-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libgit2";
|
||||
sha256 = "1kb4krbr9as9la9s56s52ybgwzwnjkkbkfvcv32jb0wvj4yjwczx";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-ply-3.11-4-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-ply";
|
||||
sha256 = "01shxamb2sm761nmy0zqakv57zn93kmck2sk9phvcjnlc6h776jr";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pycparser-2.21-3-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pycparser";
|
||||
sha256 = "0qnjqlqz1qbklhyl65whxfm2l6p1imrjqc7kpqc1rx92fm59pbp8";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-cffi-1.16.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-cffi";
|
||||
sha256 = "0ymgaaynxsdra8cr10gvym5wgk5c4vjsnwlq4pzy7g55v4gn0piz";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pygit2-1.14.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pygit2";
|
||||
sha256 = "0wbzlbfcyl4i55xf3chfjpwhwj5jqg4pqv3m5qcslmm573xfyki5";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-llvmlite-0.42.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-llvmlite";
|
||||
sha256 = "0qw88ickp41jvgxvf1dfhn5yz7zsn9q51ra3m522hx1lbqixgn8z";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-rapidfuzz-3.6.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-rapidfuzz";
|
||||
sha256 = "10mc1h0hcd0mmf9hj0ynl9mfjihliaj0a61q2d087v5fbwf8v0kn";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-levenshtein-0.25.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-levenshtein";
|
||||
sha256 = "0bwx8q9lv8i2ax8y5yw7pn5gzp804rqc55ijdkw83my33l1758wa";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-lmdb-0.9.31-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-lmdb";
|
||||
sha256 = "1gz4b261klr37xb56kj5ybymrsh6q237wkssmkjg32dy511asbiw";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-lmdb-1.4.1-3-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-lmdb";
|
||||
sha256 = "08b8pja1vhh7z0nrccr01qyfpkjqq8400ra0nvhpincwlaw5rcwn";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libxml2-2.12.7-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libxml2";
|
||||
sha256 = "1clsdi9c12q964xm8gsb3imff7wvcr8pvpvwp2mhkl4g7mi67qxh";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-llvm-libs-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-llvm-libs";
|
||||
sha256 = "0ivab5znxbpdi289pcasxjbkfw6wamcjbblhkcbhfiacvbbhf8pq";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-lld-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-lld";
|
||||
sha256 = "160mfkxird6l17kvqapk58ljy07ql1blsxmrgxbf16hic39mfl0g";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-llvm-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-llvm";
|
||||
sha256 = "0yirvz2zqgw9hpj0lrx50h1rnpg30632zdbqacq9p7rwviwkwkmn";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-hidapi-0.14.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-hidapi";
|
||||
sha256 = "1nq7pw80l4awl7pz7qm5bfffv661fxraxh2kgd78m9y0dknvglxa";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libusb-1.0.27-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libusb";
|
||||
sha256 = "1g5fib7a7sjwm1gv8a1y0r2cigfz2d9hp4sszakqcrpxsr4652im";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libusb-compat-git-r76.b5db9d0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libusb-compat-git";
|
||||
sha256 = "0fls0kah3dq2fw4fay4ihb4ym9nscswldijif77vyim6awvf24kv";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-confuse-3.3-3-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-confuse";
|
||||
sha256 = "0dyzriph24pin5n8qzsahvvjvyi95ndxpvyqyhai0spmc28lmw9z";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libftdi-1.5-7-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libftdi";
|
||||
sha256 = "1il49b4mqhywgl49h27227xbw96af1wz7kpaawhh4qkym3rxqkzd";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libjaylink-git-r175.cfccbc9-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libjaylink-git";
|
||||
sha256 = "1ckc04xc06cv2z7bls878m274g2paqar7nb36zza2gxc78paz9sc";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-capstone-5.0.1-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-capstone";
|
||||
sha256 = "0xdg50a43jjqqy63x69ns25blk6vz93lylj27cd78f6fcda75hpg";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-openocd-0.12.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-openocd";
|
||||
sha256 = "1f6ynv7czk9g848322847dj8xqhdsy9hjkz3flg6p1znf41cxdmc";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-bscan-spi-bitstreams-1.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-bscan-spi-bitstreams";
|
||||
sha256 = "05yfr0xaqdfyl315x2sls26nx0ifqbpghya3ixvpmcks4zjcgkrw";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-attrs-23.2.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-attrs";
|
||||
sha256 = "0bcmz0b0s18s0pwpkvv6g7hph7bvr9mgyips409kkazw168iikab";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-multidict-6.0.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-multidict";
|
||||
sha256 = "1dx4cxznbih3ijnlmki6x0g8a3q1qg71wmsw7jrd82kwrh31x67i";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-idna-3.6-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-idna";
|
||||
sha256 = "11wyiz1iad9q5smd42dprymw2670c5swqbigpj2v30zs6nhkabnm";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-yarl-1.9.4-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-yarl";
|
||||
sha256 = "1n8b0460q526q9w7i53a1jydma81c1sdg9h4ayy030fxx7zsn4id";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-frozenlist-1.4.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-frozenlist";
|
||||
sha256 = "1dny1z3d7ddb01im45fjppvkvxqkpah5dmy8w74y6b21afza4q2a";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-aiosignal-1.3.1-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-aiosignal";
|
||||
sha256 = "0s4lj5sfal2rd2naab1j1qc1wh7qxc4d7blg3z1gxhx2g2lyqln2";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-aiohttp-3.9.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-aiohttp";
|
||||
sha256 = "1ykf2djwnsdaxw0lkq8wivrwfwg3h72kdxfkb96n76nim9gcffim";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-regex-2023.12.25-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-regex";
|
||||
sha256 = "1wy6hicjnawh4265wkjpw95l1ji2ggx2z7f6a7wl3flm74fn47nw";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pybase64-1.3.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pybase64";
|
||||
sha256 = "0cj217d6xcagxismbwncdfy4px1l2axpn6h9zy3bwkh3bwywssk9";
|
||||
})
|
||||
]
|
|
@ -0,0 +1,3 @@
|
|||
mingw-w64-clang-x86_64-python3.11
|
||||
mingw-w64-clang-x86_64-python-numpy
|
||||
mingw-w64-clang-x86_64-python-aiohttp
|
|
@ -0,0 +1,83 @@
|
|||
{ pkgs }:
|
||||
let
|
||||
msys2-env = pkgs.stdenvNoCC.mkDerivation rec {
|
||||
name = "msys2-env";
|
||||
srcs = import ./msys2_packages.nix { inherit pkgs; };
|
||||
buildInputs = [ pkgs.gnutar pkgs.zstd ];
|
||||
phases = [ "installPhase" ];
|
||||
installPhase = (pkgs.lib.strings.concatStringsSep "\n" (["mkdir $out"] ++ (map (p: "tar xvf ${p} -C $out") srcs)));
|
||||
};
|
||||
silenceFontconfig = # silence flood of "Fontconfig error: Cannot load default config file: No such file: (null)"
|
||||
''
|
||||
export FONTCONFIG_PATH=$HOME/fonts
|
||||
mkdir $FONTCONFIG_PATH
|
||||
cat > $FONTCONFIG_PATH/fonts.conf << EOF
|
||||
<fontconfig>
|
||||
</fontconfig>
|
||||
EOF
|
||||
'';
|
||||
wine-msys2 = pkgs.writeShellScriptBin "wine-msys2"
|
||||
''
|
||||
export WINEDEBUG=-all
|
||||
export WINEPATH=Z:${msys2-env}/clang64/bin
|
||||
exec ${pkgs.wineWowPackages.stable}/bin/wine64 cmd
|
||||
'';
|
||||
wine-msys2-build = pkgs.writeShellScriptBin "wine-msys2-build"
|
||||
''
|
||||
export HOME=`mktemp -d`
|
||||
export WINEDEBUG=-all
|
||||
export WINEPATH=Z:${msys2-env}/clang64/bin
|
||||
${silenceFontconfig}
|
||||
exec ${pkgs.wineWowPackages.stable}/bin/wine64 $@
|
||||
'';
|
||||
in {
|
||||
inherit wine-msys2;
|
||||
makeMsys2Package = { name, version, src, depends, prepare ? "" }: pkgs.stdenvNoCC.mkDerivation {
|
||||
pname = "${name}-msys2-pkg";
|
||||
inherit version;
|
||||
nativeBuildInputs = [
|
||||
pkgs.pacman pkgs.fakeroot pkgs.libarchive pkgs.zstd pkgs.file
|
||||
wine-msys2-build
|
||||
];
|
||||
inherit src;
|
||||
phases = [ "buildPhase" "installPhase" ];
|
||||
buildPhase =
|
||||
''
|
||||
export DRV_VERSION=${version}
|
||||
${prepare}
|
||||
cat > PKGBUILD << HEREDOC
|
||||
pkgbase="mingw-w64-clang-${name}"
|
||||
pkgname="mingw-w64-clang-x86_64-${name}"
|
||||
pkgrel=1
|
||||
depends=(
|
||||
${pkgs.lib.concatStringsSep "\n" (map (depend: "\"${depend}\"") depends)}
|
||||
)
|
||||
source PKGBUILD.common
|
||||
HEREDOC
|
||||
ln -s ${./PKGBUILD.common} PKGBUILD.common
|
||||
ln -s $src source
|
||||
tar cfh source.tar source
|
||||
rm source
|
||||
makepkg --config ${./makepkg.conf} --nodeps
|
||||
'';
|
||||
installPhase =
|
||||
''
|
||||
mkdir $out $out/nix-support
|
||||
cp *.pkg.tar.zst $out
|
||||
echo file msys2 $out/*.pkg.tar.zst >> $out/nix-support/hydra-build-products
|
||||
'';
|
||||
};
|
||||
makeMsys2Repos = constituents: pkgs.stdenvNoCC.mkDerivation {
|
||||
name = "msys2-repos";
|
||||
nativeBuildInputs = [ pkgs.pacman ];
|
||||
phases = [ "buildPhase" ];
|
||||
buildPhase =
|
||||
''
|
||||
mkdir $out
|
||||
cd $out
|
||||
${pkgs.lib.concatStringsSep "\n"
|
||||
(map (constituent: "ln -s ${constituent}/*.pkg.tar.zst .") constituents)}
|
||||
repo-add artiq.db.tar.gz *.pkg.tar.zst
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
cd $(dirname $0)
|
||||
MSYS2DIR=`pwd`/msys2
|
||||
mkdir -p $MSYS2DIR/var/lib/pacman $MSYS2DIR/msys/etc
|
||||
|
||||
curl -L https://repo.msys2.org/msys/x86_64/pacman-mirrors-20240210-1-any.pkg.tar.zst | tar xvf - -C $MSYS2DIR --zstd
|
||||
curl -L https://raw.githubusercontent.com/msys2/MSYS2-packages/master/pacman/pacman.conf | \
|
||||
sed -e "s|/etc/pacman.d|$MSYS2DIR/etc/pacman.d|g" -e "s|SigLevel = Required|SigLevel = Never|g" > $MSYS2DIR/etc/pacman.conf
|
||||
|
||||
fakeroot pacman --root $MSYS2DIR --config $MSYS2DIR/etc/pacman.conf -Syy
|
||||
pacman --root $MSYS2DIR --config $MSYS2DIR/etc/pacman.conf \
|
||||
--cachedir $MSYS2DIR/msys/cache --sync --print-format "%l %n" \
|
||||
mingw-w64-clang-x86_64-cc mingw-w64-clang-x86_64-python3.11 \
|
||||
mingw-w64-clang-x86_64-python-numpy mingw-w64-clang-x86_64-python-setuptools > $MSYS2DIR/packages.txt
|
||||
|
||||
cat artiq_dependencies.txt comtools_dependencies.txt pythonparser_dependencies.txt sipyco_dependencies.txt | pacman --root $MSYS2DIR --config $MSYS2DIR/etc/pacman.conf \
|
||||
--cachedir $MSYS2DIR/msys/cache --sync --print-format "%l %n" - > $MSYS2DIR/artiq_dependency_packages.txt
|
||||
|
||||
pacman --root $MSYS2DIR --config $MSYS2DIR/etc/pacman.conf --cachedir $MSYS2DIR/msys/cache \
|
||||
--sync --print-format "%l %n" mingw-w64-clang-x86_64-qt-installer-framework > $MSYS2DIR/qt_ifw_packages.txt
|
||||
|
||||
function generate_nix_packages_from_pacman() {
|
||||
echo "{ pkgs } : [" > $OUT
|
||||
while IFS= read -r line; do
|
||||
read -r url package <<< "$line"
|
||||
hash=$(nix-prefetch-url $url --name $package)
|
||||
echo "
|
||||
(pkgs.fetchurl {
|
||||
url = \"$url\";
|
||||
name = \"$package\";
|
||||
sha256 = \"$hash\";
|
||||
})" >> $OUT
|
||||
done < $IN
|
||||
echo "]" >> $OUT
|
||||
}
|
||||
|
||||
IN=$MSYS2DIR/packages.txt OUT=msys2_packages.nix generate_nix_packages_from_pacman
|
||||
IN=$MSYS2DIR/qt_ifw_packages.txt OUT=msys2_qt_ifw_packages.nix generate_nix_packages_from_pacman
|
||||
IN=$MSYS2DIR/artiq_dependency_packages.txt OUT=artiq_dependency_packages.nix generate_nix_packages_from_pacman
|
|
@ -0,0 +1,2 @@
|
|||
PKGEXT='.pkg.tar.zst'
|
||||
SRCEXT='.src.tar.gz'
|
|
@ -0,0 +1,224 @@
|
|||
{ pkgs } : [
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libunwind-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libunwind";
|
||||
sha256 = "16k6kng1z1cxlw6al5g17zwm1dd1myildzk9n30qr2ljygrc5ncl";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libc++-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libc++";
|
||||
sha256 = "0zdgdzck0qyyc5vqg3i5d1rpsbzf0fl15bvwqzs3wqr01z7q35dm";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libffi-3.4.6-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libffi";
|
||||
sha256 = "1q6gms980985bp087rnnpvz2fwfakgm5266izfk3b1mbp620s1yv";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libiconv-1.17-4-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libiconv";
|
||||
sha256 = "1g2bkhgf60dywccxw911ydyigf3m25yqfh81m5099swr7mjsmzyf";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-gettext-runtime";
|
||||
sha256 = "0ll6ci6d3mc7g04q0xixjc209bh8r874dqbczgns69jsad3wg6mi";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-xz-5.6.1-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-xz";
|
||||
sha256 = "12wj7015dy3gafvnf95bww60nkk35lwzzg9p6114qv1jr6q6hbdh";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-zlib-1.3.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-zlib";
|
||||
sha256 = "06i9xjsskf4ddb2ph4h31md5c7imj9mzjhd4lc4q44j8dmpc1w5p";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libxml2-2.12.7-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libxml2";
|
||||
sha256 = "1clsdi9c12q964xm8gsb3imff7wvcr8pvpvwp2mhkl4g7mi67qxh";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-zstd-1.5.6-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-zstd";
|
||||
sha256 = "02cp5ci8w50k7xn38mpkwnr8sn898v18wcc07y8f9sfla7vcyfix";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-llvm-libs-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-llvm-libs";
|
||||
sha256 = "0ivab5znxbpdi289pcasxjbkfw6wamcjbblhkcbhfiacvbbhf8pq";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-llvm-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-llvm";
|
||||
sha256 = "0yirvz2zqgw9hpj0lrx50h1rnpg30632zdbqacq9p7rwviwkwkmn";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-clang-libs-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-clang-libs";
|
||||
sha256 = "0x4hfvcdjvjzdn0j2w5xnacfjhsz05v04lap65pnydsgvlj4sj49";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-compiler-rt-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-compiler-rt";
|
||||
sha256 = "0xxlj18mrhxjiz7hl4jk1jr0i5isw7mlrgkdnpkc307k680i1knz";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-headers-git-11.0.0.r744.ge5ac8c550-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-headers-git";
|
||||
sha256 = "19c88b1bfa73ima00s15271pvxxz1a79b0cpvqg9vwnzk0ydy3v7";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-crt-git-11.0.0.r744.ge5ac8c550-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-crt-git";
|
||||
sha256 = "17rfl7d1ya8mg51a07x84q4dj0wvnjsss9r655ywd36qa2h7g9an";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-lld-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-lld";
|
||||
sha256 = "160mfkxird6l17kvqapk58ljy07ql1blsxmrgxbf16hic39mfl0g";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libwinpthread-git-11.0.0.r744.ge5ac8c550-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libwinpthread-git";
|
||||
sha256 = "1r320i80r7ga00j4kvq39gf9xpyylyhdfaspjgjsnan3hjlr6d2w";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-winpthreads-git-11.0.0.r744.ge5ac8c550-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-winpthreads-git";
|
||||
sha256 = "0vx3l0za258q2msklcwxi7bsyh064vfddav277sscrsdj80prf2x";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-clang-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-clang";
|
||||
sha256 = "07zzfdckxib9nlpmnwxbbxbhrnmq93yqm9w2h3iij27w0jdzz3r2";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-expat-2.6.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-expat";
|
||||
sha256 = "0kj1vzjh3qh7d2g47avlgk7a6j4nc62111hy1m63jwq0alc01k38";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-bzip2-1.0.8-3-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-bzip2";
|
||||
sha256 = "1n8zf2kk1xj7wiszp6mjchy1yzpalddbj0cj17qm625ags2vzflm";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-mpdecimal-4.0.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-mpdecimal";
|
||||
sha256 = "0hrhbjgi0g3jqpw8himshqw6vazm5sxhsfmyg386nbrxwnfgl1gb";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libtre-git-r177.07e66d0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libtre-git";
|
||||
sha256 = "0fc9hxsdks1xy5fv0rcna433hlzf6jhs77hg0hfzkzhn06f9alp4";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libsystre-1.0.1-5-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libsystre";
|
||||
sha256 = "05qsn8fkks4f93jkas43s47axqqgx5m64b45p462si3nlb8cjirq";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-ncurses-6.4.20231217-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-ncurses";
|
||||
sha256 = "00046d52zsr8zjifl7h22jfihhh53h20ipvbqmvf9myssw2fwjza";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-openssl-3.3.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-openssl";
|
||||
sha256 = "0r9hvrvs1mywa1ilw2jd8z6dp7n7rgqc5qixcgagpn37b1vmvl4s";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-termcap-1.3.1-7-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-termcap";
|
||||
sha256 = "17ha468qavwin800cc3b7c3xdggwk2gakasfxg7jdx7616d99l0n";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-readline-8.2.010-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-readline";
|
||||
sha256 = "1s47pd5iz8y3hspsxn4pnp0v3m05ccia40v5nfvx0rmwgvcaz82v";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-tcl-8.6.13-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-tcl";
|
||||
sha256 = "0paaqwk0sfy2zxwlxkmxf2bqq46lyg0sx7cqgzknvazwx8xa2z4x";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-sqlite3-3.45.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-sqlite3";
|
||||
sha256 = "1icvw3f08cgi94p0177i46v72wgpsxw95p6kd0sm2w3vj0qlqbcw";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-tk-8.6.13-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-tk";
|
||||
sha256 = "12f6lqx1sglczcnz2ns6sxw9cxwm1klxajqzcrbnfwln1nllz2nd";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-tzdata-2024a-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-tzdata";
|
||||
sha256 = "1lsfn3759cyf56zlmfvgy6ihs4iks6zhlnrbfmnq5wml02k936ji";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-3.11.9-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python";
|
||||
sha256 = "0ah1idjqxg7jc07a1gz9z766rjjd0f0c6ri4hpcsimsrbj1zjd3c";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-llvm-openmp-18.1.5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-llvm-openmp";
|
||||
sha256 = "1jkvghfra2gm973sk5m407f3lp55gp7c1ss97g52qsj144vpgf0i";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-openblas-0.3.27-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-openblas";
|
||||
sha256 = "06ygz1wa488wqvmxbn74b0fyan4wf3lb6kbwfampgikd1gijww2k";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-numpy-1.26.4-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-numpy";
|
||||
sha256 = "00h0ap954cjwlsc3p01fjwy7s3nlzs90v0kmnrzxm0rljmvn4jkf";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-setuptools-69.1.1-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-setuptools";
|
||||
sha256 = "1mc56anasj0v92nlg84m3pa7dbqgjakxw0b4ibqlrr9cq0xzsg4b";
|
||||
})
|
||||
]
|
|
@ -0,0 +1,8 @@
|
|||
{ pkgs } : [
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-qt-installer-framework-4.7.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-qt-installer-framework";
|
||||
sha256 = "02a9sx7l8gkq800kg88vlakpxqz2ka7mjfrvkmnpw20vwmai8cmb";
|
||||
})
|
||||
]
|
|
@ -0,0 +1 @@
|
|||
mingw-w64-clang-x86_64-python-regex
|
|
@ -0,0 +1,3 @@
|
|||
mingw-w64-clang-x86_64-python3.11
|
||||
mingw-w64-clang-x86_64-python-numpy
|
||||
mingw-w64-clang-x86_64-python-pybase64
|
Loading…
Reference in New Issue