Compare commits
39 Commits
67
flake.lock
67
flake.lock
|
@ -59,24 +59,23 @@
|
|||
"artiqpkgs": {
|
||||
"inputs": {
|
||||
"artiq-comtools": "artiq-comtools",
|
||||
"mozilla-overlay": "mozilla-overlay",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"rust-overlay": "rust-overlay",
|
||||
"sipyco": "sipyco",
|
||||
"src-migen": "src-migen",
|
||||
"src-misoc": "src-misoc",
|
||||
"src-pythonparser": "src-pythonparser"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1732185362,
|
||||
"narHash": "sha256-qXNmZfDWCuxke4jLRe5JpVoRr7FUi3FLV9D6y+BtAmM=",
|
||||
"ref": "release-8",
|
||||
"rev": "6ab5b845fd07650d9b3d2327f290474fddac282a",
|
||||
"revCount": 8979,
|
||||
"lastModified": 1731636768,
|
||||
"narHash": "sha256-Oqa7G8E9lFIFouYE2uP5ii4Bo6eKHmUUHwj4uievMdE=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "9aae89be69fa3ab1dd0a75f399ffc6cf208818d2",
|
||||
"revCount": 9048,
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/artiq.git"
|
||||
},
|
||||
"original": {
|
||||
"ref": "release-8",
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/artiq.git"
|
||||
}
|
||||
|
@ -99,11 +98,11 @@
|
|||
"trap-dac-utils": "trap-dac-utils"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731889724,
|
||||
"narHash": "sha256-fXNWY4mEwrUAjlu81U7KzXsWkRz76Dx/Ze8sSNMQLlA=",
|
||||
"lastModified": 1729547028,
|
||||
"narHash": "sha256-l7GGLjTrGtF23XYsdjQmLPgccDDUwjbGQQsQ3lhn/SI=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "32e88103835e73bfa7de6d86d425af0b48fa929e",
|
||||
"revCount": 1396,
|
||||
"rev": "dbe0e8f3902527c6254589303e020db08760dd85",
|
||||
"revCount": 1384,
|
||||
"type": "git",
|
||||
"url": "https://gitlab.com/duke-artiq/dax.git"
|
||||
},
|
||||
|
@ -188,34 +187,18 @@
|
|||
"url": "https://gitlab.com/duke-artiq/flake8-artiq.git"
|
||||
}
|
||||
},
|
||||
"mozilla-overlay": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1704373101,
|
||||
"narHash": "sha256-+gi59LRWRQmwROrmE1E2b3mtocwueCQqZ60CwLG+gbg=",
|
||||
"owner": "mozilla",
|
||||
"repo": "nixpkgs-mozilla",
|
||||
"rev": "9b11a87c0cc54e308fa83aac5b4ee1816d5418a2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "mozilla",
|
||||
"repo": "nixpkgs-mozilla",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1731755305,
|
||||
"narHash": "sha256-v5P3dk5JdiT+4x69ZaB18B8+Rcu3TIOrcdG4uEX7WZ8=",
|
||||
"lastModified": 1731319897,
|
||||
"narHash": "sha256-PbABj4tnbWFMfBp6OcUK5iGy1QY+/Z96ZcLpooIbuEI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "057f63b6dc1a2c67301286152eb5af20747a9cb4",
|
||||
"rev": "dc460ec76cbff0e66e269457d7b728432263166c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-24.11",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
|
@ -226,6 +209,28 @@
|
|||
"daxpkgs": "daxpkgs"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"artiqpkgs",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1719454714,
|
||||
"narHash": "sha256-MojqG0lyUINkEk0b3kM2drsU5vyaF8DFZe/FAlZVOGs=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "d1c527659cf076ecc4b96a91c702d080b213801e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"ref": "snapshot/2024-08-01",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"sipyco": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
54
flake.nix
54
flake.nix
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
description = "Additional packages for ARTIQ";
|
||||
|
||||
inputs.artiqpkgs.url = git+https://github.com/m-labs/artiq.git?ref=release-8;
|
||||
inputs.artiqpkgs.url = git+https://github.com/m-labs/artiq.git;
|
||||
|
||||
inputs.daxpkgs = {
|
||||
url = git+https://gitlab.com/duke-artiq/dax.git;
|
||||
|
@ -211,27 +211,9 @@
|
|||
# no unit tests without hardware so do a simple smoke test
|
||||
checkPhase = "python -m hut2.aqctl_hut2 -h";
|
||||
};
|
||||
wand = pkgs.python3Packages.buildPythonPackage {
|
||||
pname = "wand";
|
||||
version = "0.4.dev";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "OxfordIonTrapGroup";
|
||||
repo = "wand";
|
||||
rev = "c080ddab6b2d94bb673ed32a0cea2bf68e66c702";
|
||||
sha256 = "sha256-T27/mZepPrnheoVEKsP5cRDFc1JffTnuPvXq2r2GP4E=";
|
||||
};
|
||||
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
||||
dontWrapQtApps = true;
|
||||
postFixup = ''
|
||||
wrapQtApp "$out/bin/wand_gui"
|
||||
'';
|
||||
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 = daxpkgs.packages.x86_64-linux.flake8-artiq;
|
||||
dax = daxpkgs.packages.x86_64-linux.dax.overridePythonAttrs (oa: {
|
||||
nativeBuildInputs = (oa.nativeBuildInputs or []) ++ [ pkgs.qt5.wrapQtAppsHook ];
|
||||
nativeBuildInputs = (oa.nativeBuildInputs or []) ++ [ pkgs.qt6.wrapQtAppsHook ];
|
||||
doCheck = false;
|
||||
});
|
||||
trap-dac-utils = daxpkgs.packages.x86_64-linux.trap-dac-utils;
|
||||
|
@ -243,10 +225,10 @@
|
|||
rev = "0f0196b6941b0c44a33c85d8c02047ca65466463";
|
||||
sha256 = "0mx6yjvprhdnkdigwns8mg6v5daqxpgbv7mf63fa76i1iv2wvak4";
|
||||
};
|
||||
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
||||
nativeBuildInputs = [ pkgs.qt6.wrapQtAppsHook ];
|
||||
dontWrapQtApps = true;
|
||||
propagatedBuildInputs = [ artiqpkgs.packages.x86_64-linux.artiq ]
|
||||
++ (with pkgs.python3Packages; [ numpy pyqt5 pyqtgraph ]);
|
||||
++ (with pkgs.python3Packages; [ numpy pyqt6 pyqtgraph ]);
|
||||
doCheck = false;
|
||||
};
|
||||
linien-client = pkgs.python3Packages.buildPythonPackage rec {
|
||||
|
@ -352,6 +334,8 @@
|
|||
"tqdm"
|
||||
"python-lmdb"
|
||||
"artiq-comtools"
|
||||
"platformdirs"
|
||||
"jsonschema"
|
||||
];
|
||||
}
|
||||
|
||||
|
@ -391,12 +375,6 @@
|
|||
src = hut2.src;
|
||||
dependencies = [ "sipyco" ];
|
||||
}
|
||||
{
|
||||
name = "wand";
|
||||
version = wand.version;
|
||||
src = wand.src;
|
||||
dependencies = [ "artiq" "qasync" "numpy" "scipy" "influxdb" ];
|
||||
}
|
||||
{
|
||||
name = "flake8-artiq";
|
||||
version = flake8-artiq.version;
|
||||
|
@ -495,6 +473,12 @@
|
|||
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
|
||||
|
@ -504,6 +488,7 @@
|
|||
msys2-thorlabs_tcube
|
||||
msys2-newfocus8742
|
||||
msys2-hut2
|
||||
msys2-flake8-artiq
|
||||
];
|
||||
|
||||
msys2-offline-installer = pkgs.stdenv.mkDerivation {
|
||||
|
@ -528,6 +513,12 @@
|
|||
sha256 = "sha256-RiXJqvmFDaItr6KgoWTekUPHue4i/LM4uBqfVx9HKpc=";
|
||||
};
|
||||
|
||||
zadig-binary = pkgs.fetchurl {
|
||||
url = "https://github.com/pbatard/libwdi/releases/download/v1.5.1/zadig-2.9.exe";
|
||||
name = "zadig";
|
||||
sha256 = "sha256-TsqpXfPaNiFIagQ674swULi6/nyQFAKHHoFiKe+CA5s=";
|
||||
};
|
||||
|
||||
src = ./.;
|
||||
buildInputs = [ pkgs.gnutar pkgs.zstd pkgs.pacman pkgs.fakeroot ];
|
||||
phases = [ "installPhase" ];
|
||||
|
@ -536,12 +527,13 @@
|
|||
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\n" >> $out/etc/pacman.conf
|
||||
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
|
||||
cp ${zadig-binary} $out/zadig.exe
|
||||
mkdir -p $out/clang64/etc/ssl/certs
|
||||
cp -f $out/usr/ssl/certs/ca-bundle.crt $out/clang64/etc/ssl/certs/ca-bundle.crt
|
||||
cp -f $out/usr/ssl/cert.pem $out/clang64/etc/ssl/cert.pem
|
||||
|
@ -564,7 +556,7 @@
|
|||
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 \
|
||||
${pkgs.wineWowPackages.unstable}/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" \
|
||||
|
@ -594,7 +586,7 @@
|
|||
fakeroot
|
||||
p7zip
|
||||
msys2.wine-msys2
|
||||
wineWowPackages.stable
|
||||
wineWowPackages.unstable
|
||||
];
|
||||
};
|
||||
};
|
||||
|
|
|
@ -35,6 +35,7 @@ function createShortcuts()
|
|||
}
|
||||
|
||||
component.addOperation("CreateShortcut", "@TargetDir@/clang64.exe", "@StartMenuDir@/MSYS2 with ARTIQ.lnk", "iconPath=@TargetDir@/clang64.exe");
|
||||
component.addOperation("CreateShortcut", "@TargetDir@/zadig.exe", "@StartMenuDir@/Zadig Driver Installer.lnk", "iconPath=@TargetDir@/zadig.exe");
|
||||
|
||||
component.addOperation( "Execute",
|
||||
["@TargetDir@\\usr\\bin\\bash.exe", "--login", "-c", "exit"]);
|
||||
|
|
|
@ -10,23 +10,19 @@ build() {
|
|||
export PYTHONPATH=`pwd`/clang64/lib/python3.12/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 ..
|
||||
wine-msys2-build python -m build --wheel --skip-dependency-check --no-isolation
|
||||
}
|
||||
|
||||
# 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.12/site-packages/easy-install.pth
|
||||
package() {
|
||||
cd source
|
||||
wine-msys2-build python -m installer --destdir="${pkgdir}" --prefix="clang64/" dist/*.whl
|
||||
# patch broken shebangs (Z:/nix/store/...)
|
||||
for entrypoint in clang64/bin/*-script.py; do
|
||||
for entrypoint in ${pkgdir}/bin/*-script.py; do
|
||||
[ -f "$entrypoint" ] || continue
|
||||
sed -i "1s|#!.*|#!python|" $entrypoint
|
||||
done
|
||||
for entrypoint in clang64/bin/*-script.pyw; do
|
||||
for entrypoint in ${pkgdir}/bin/*-script.pyw; do
|
||||
[ -f "$entrypoint" ] || continue
|
||||
sed -i "1s|#!.*|#!pythonw|" $entrypoint
|
||||
done
|
||||
}
|
||||
|
||||
package() {
|
||||
cp -R clang64 ${pkgdir}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
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-pyqt6
|
||||
mingw-w64-clang-x86_64-qt6-svg
|
||||
mingw-w64-clang-x86_64-python-qasync
|
||||
mingw-w64-clang-x86_64-python-pyqtgraph
|
||||
mingw-w64-clang-x86_64-python-numpy
|
||||
|
@ -12,6 +12,7 @@ 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-python-platformdirs
|
||||
mingw-w64-clang-x86_64-lld
|
||||
mingw-w64-clang-x86_64-llvm
|
||||
mingw-w64-clang-x86_64-openocd
|
||||
|
|
|
@ -247,15 +247,9 @@
|
|||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-pyqt5-sip-12.15.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-pyqt5-sip";
|
||||
sha256 = "1k68xy5lapbi2s7zkxpzz5ps2l9b9yd3kp9w4lh47zk74al74fyj";
|
||||
})
|
||||
|
||||
(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";
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pyqt6-sip-13.8.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pyqt6-sip";
|
||||
sha256 = "1x948jsz5b0ispfsqbdpyskhvhf6ik8kam2wswar4i72j4vf4sda";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
|
@ -264,6 +258,12 @@
|
|||
sha256 = "1jd07myjvc0dzwkh84rk7c74wv96syyfb7v99694bbbv31jkqw4g";
|
||||
})
|
||||
|
||||
(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-libpng-1.6.44-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libpng";
|
||||
|
@ -312,18 +312,18 @@
|
|||
sha256 = "08jn0qqibkk2s4q005ff0a1kz0yklq0cp7w4wd1g4h2ykczii2zy";
|
||||
})
|
||||
|
||||
(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-75.1-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-icu";
|
||||
sha256 = "0dxskyhbqgiphlz95b7hp05kcryaspa045ad8763m903nnslq7ri";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libb2-0.98.1-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libb2";
|
||||
sha256 = "0555dvb2xs6695sz5ndrx6y0cz3qa5cg0m5v8q1md13ssg76vlh6";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libjpeg-turbo-3.0.4-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libjpeg-turbo";
|
||||
|
@ -343,21 +343,27 @@
|
|||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-qt5-base-5.15.15+kde+r127-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-qt5-base";
|
||||
sha256 = "0hhlr2a7g5h5xzb31jwxw0dfavxg434n33m9ir88vbkhgdq2ig36";
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-vulkan-headers-1.3.296.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-vulkan-headers";
|
||||
sha256 = "042xvrs3y138saih6inihwy82qycsbilvvmvm01rb6yib0r7wig3";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pyqt5-5.15.11-3-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pyqt5";
|
||||
sha256 = "1s20ami7anxja6lrlqaivg1xlcmk2qqzckhfy5r8k10mf25wwrz8";
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-qt6-base-6.8.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-qt6-base";
|
||||
sha256 = "0vz8595swk65dgj1nn8858rajjd2300xr5jz1b0bkln6n3gs4jbn";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-qt5-svg-5.15.15+kde+r5-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-qt5-svg";
|
||||
sha256 = "1cjdchwfbf62w695sa17walj771m4hw3k3mvq1bkx9drvgw51w0c";
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pyqt6-6.8.0dev2410211537-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pyqt6";
|
||||
sha256 = "1jjzbw4xflx750b6prph9fqf3lxdvad3yibg8h6mbdvkbhv44wrf";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-qt6-svg-6.8.0-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-qt6-svg";
|
||||
sha256 = "1l20hkm8kjs6d7gcqzznyxhj0c1x07ghs395sd6w41pl4vjb5amk";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
|
@ -474,6 +480,12 @@
|
|||
sha256 = "0gqgbr7qbhi2pbaxr78ysk3a0zip2jwdwdsdid9ql8sw1i7l572c";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-platformdirs-4.3.6-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-platformdirs";
|
||||
sha256 = "1qplr2qhji7s7dgcb8i6lfhm54lj5az2whh5sm02rkbg5sav6xlf";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libxml2-2.12.9-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-libxml2";
|
||||
|
|
|
@ -20,7 +20,7 @@ let
|
|||
''
|
||||
export WINEDEBUG=-all
|
||||
export WINEPATH=Z:${msys2-env}/clang64/bin
|
||||
exec ${pkgs.wineWowPackages.stable}/bin/wine64 cmd
|
||||
exec ${pkgs.wineWowPackages.unstable}/bin/wine64 cmd
|
||||
'';
|
||||
wine-msys2-build = pkgs.writeShellScriptBin "wine-msys2-build"
|
||||
''
|
||||
|
@ -28,7 +28,7 @@ let
|
|||
export WINEDEBUG=-all
|
||||
export WINEPATH=Z:${msys2-env}/clang64/bin
|
||||
${silenceFontconfig}
|
||||
exec ${pkgs.wineWowPackages.stable}/bin/wine64 $@
|
||||
exec ${pkgs.wineWowPackages.unstable}/bin/wine64 $@
|
||||
'';
|
||||
in {
|
||||
inherit wine-msys2;
|
||||
|
|
|
@ -14,7 +14,8 @@ 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-python-numpy mingw-w64-clang-x86_64-python-setuptools > $MSYS2DIR/packages.txt
|
||||
mingw-w64-clang-x86_64-python-numpy \
|
||||
mingw-w64-clang-x86_64-python-setuptools mingw-w64-clang-x86_64-python-build mingw-w64-clang-x86_64-python-installer > $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
|
||||
|
@ -23,7 +24,9 @@ pacman --root $MSYS2DIR --config $MSYS2DIR/etc/pacman.conf --cachedir $MSYS2DIR/
|
|||
--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
|
||||
local in=$1
|
||||
local out=$2
|
||||
echo "{ pkgs } : [" > $out
|
||||
while IFS= read -r line; do
|
||||
read -r url package <<< "$line"
|
||||
hash=$(nix-prefetch-url $url --name $package)
|
||||
|
@ -32,11 +35,11 @@ function generate_nix_packages_from_pacman() {
|
|||
url = \"$url\";
|
||||
name = \"$package\";
|
||||
sha256 = \"$hash\";
|
||||
})" >> $OUT
|
||||
done < $IN
|
||||
echo "]" >> $OUT
|
||||
})" >> $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
|
||||
generate_nix_packages_from_pacman $MSYS2DIR/packages.txt msys2_packages.nix
|
||||
generate_nix_packages_from_pacman $MSYS2DIR/qt_ifw_packages.txt msys2_qt_ifw_packages.nix
|
||||
generate_nix_packages_from_pacman $MSYS2DIR/artiq_dependency_packages.txt artiq_dependency_packages.nix
|
||||
|
|
|
@ -221,4 +221,28 @@
|
|||
name = "mingw-w64-clang-x86_64-python-setuptools";
|
||||
sha256 = "1cph081zr7m0qp66b9v2zq69a9inavbzvwgwx4mmzklnpbrly5yv";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-packaging-24.2-1-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-packaging";
|
||||
sha256 = "1m6pcrzpv80mvnsv770da7q71drc5nha636qlsjl5qvfzxi6hgfd";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pyproject-hooks-1.1.0-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-pyproject-hooks";
|
||||
sha256 = "02nqna5d9nxzy8xcbbjgsmrrp6nhaa8bp06107ngmn7yjwg75a5p";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-build-1.2.2-2-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-build";
|
||||
sha256 = "1fbkkahvfy6x6qrnxvp4qlvmwgziv5xnfy6dx6av31r7iv4q51fb";
|
||||
})
|
||||
|
||||
(pkgs.fetchurl {
|
||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-installer-0.7.0-4-any.pkg.tar.zst";
|
||||
name = "mingw-w64-clang-x86_64-python-installer";
|
||||
sha256 = "0fqq4wvxp72syax62b1inb5p3dsazp4jr2h5kd2gg9wi7x3nbx6n";
|
||||
})
|
||||
]
|
||||
|
|
Loading…
Reference in New Issue