Compare commits
39 Commits
67
flake.lock
67
flake.lock
|
@ -59,24 +59,23 @@
|
||||||
"artiqpkgs": {
|
"artiqpkgs": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"artiq-comtools": "artiq-comtools",
|
"artiq-comtools": "artiq-comtools",
|
||||||
"mozilla-overlay": "mozilla-overlay",
|
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"rust-overlay": "rust-overlay",
|
||||||
"sipyco": "sipyco",
|
"sipyco": "sipyco",
|
||||||
"src-migen": "src-migen",
|
"src-migen": "src-migen",
|
||||||
"src-misoc": "src-misoc",
|
"src-misoc": "src-misoc",
|
||||||
"src-pythonparser": "src-pythonparser"
|
"src-pythonparser": "src-pythonparser"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1732185362,
|
"lastModified": 1731636768,
|
||||||
"narHash": "sha256-qXNmZfDWCuxke4jLRe5JpVoRr7FUi3FLV9D6y+BtAmM=",
|
"narHash": "sha256-Oqa7G8E9lFIFouYE2uP5ii4Bo6eKHmUUHwj4uievMdE=",
|
||||||
"ref": "release-8",
|
"ref": "refs/heads/master",
|
||||||
"rev": "6ab5b845fd07650d9b3d2327f290474fddac282a",
|
"rev": "9aae89be69fa3ab1dd0a75f399ffc6cf208818d2",
|
||||||
"revCount": 8979,
|
"revCount": 9048,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/m-labs/artiq.git"
|
"url": "https://github.com/m-labs/artiq.git"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"ref": "release-8",
|
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/m-labs/artiq.git"
|
"url": "https://github.com/m-labs/artiq.git"
|
||||||
}
|
}
|
||||||
|
@ -99,11 +98,11 @@
|
||||||
"trap-dac-utils": "trap-dac-utils"
|
"trap-dac-utils": "trap-dac-utils"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731889724,
|
"lastModified": 1729547028,
|
||||||
"narHash": "sha256-fXNWY4mEwrUAjlu81U7KzXsWkRz76Dx/Ze8sSNMQLlA=",
|
"narHash": "sha256-l7GGLjTrGtF23XYsdjQmLPgccDDUwjbGQQsQ3lhn/SI=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "32e88103835e73bfa7de6d86d425af0b48fa929e",
|
"rev": "dbe0e8f3902527c6254589303e020db08760dd85",
|
||||||
"revCount": 1396,
|
"revCount": 1384,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://gitlab.com/duke-artiq/dax.git"
|
"url": "https://gitlab.com/duke-artiq/dax.git"
|
||||||
},
|
},
|
||||||
|
@ -188,34 +187,18 @@
|
||||||
"url": "https://gitlab.com/duke-artiq/flake8-artiq.git"
|
"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": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731755305,
|
"lastModified": 1731319897,
|
||||||
"narHash": "sha256-v5P3dk5JdiT+4x69ZaB18B8+Rcu3TIOrcdG4uEX7WZ8=",
|
"narHash": "sha256-PbABj4tnbWFMfBp6OcUK5iGy1QY+/Z96ZcLpooIbuEI=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "057f63b6dc1a2c67301286152eb5af20747a9cb4",
|
"rev": "dc460ec76cbff0e66e269457d7b728432263166c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-24.11",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -226,6 +209,28 @@
|
||||||
"daxpkgs": "daxpkgs"
|
"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": {
|
"sipyco": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
56
flake.nix
56
flake.nix
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
description = "Additional packages for ARTIQ";
|
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 = {
|
inputs.daxpkgs = {
|
||||||
url = git+https://gitlab.com/duke-artiq/dax.git;
|
url = git+https://gitlab.com/duke-artiq/dax.git;
|
||||||
|
@ -211,27 +211,9 @@
|
||||||
# no unit tests without hardware so do a simple smoke test
|
# no unit tests without hardware so do a simple smoke test
|
||||||
checkPhase = "python -m hut2.aqctl_hut2 -h";
|
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;
|
flake8-artiq = daxpkgs.packages.x86_64-linux.flake8-artiq;
|
||||||
dax = daxpkgs.packages.x86_64-linux.dax.overridePythonAttrs (oa: {
|
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;
|
doCheck = false;
|
||||||
});
|
});
|
||||||
trap-dac-utils = daxpkgs.packages.x86_64-linux.trap-dac-utils;
|
trap-dac-utils = daxpkgs.packages.x86_64-linux.trap-dac-utils;
|
||||||
|
@ -243,10 +225,10 @@
|
||||||
rev = "0f0196b6941b0c44a33c85d8c02047ca65466463";
|
rev = "0f0196b6941b0c44a33c85d8c02047ca65466463";
|
||||||
sha256 = "0mx6yjvprhdnkdigwns8mg6v5daqxpgbv7mf63fa76i1iv2wvak4";
|
sha256 = "0mx6yjvprhdnkdigwns8mg6v5daqxpgbv7mf63fa76i1iv2wvak4";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
nativeBuildInputs = [ pkgs.qt6.wrapQtAppsHook ];
|
||||||
dontWrapQtApps = true;
|
dontWrapQtApps = true;
|
||||||
propagatedBuildInputs = [ artiqpkgs.packages.x86_64-linux.artiq ]
|
propagatedBuildInputs = [ artiqpkgs.packages.x86_64-linux.artiq ]
|
||||||
++ (with pkgs.python3Packages; [ numpy pyqt5 pyqtgraph ]);
|
++ (with pkgs.python3Packages; [ numpy pyqt6 pyqtgraph ]);
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
};
|
};
|
||||||
linien-client = pkgs.python3Packages.buildPythonPackage rec {
|
linien-client = pkgs.python3Packages.buildPythonPackage rec {
|
||||||
|
@ -352,6 +334,8 @@
|
||||||
"tqdm"
|
"tqdm"
|
||||||
"python-lmdb"
|
"python-lmdb"
|
||||||
"artiq-comtools"
|
"artiq-comtools"
|
||||||
|
"platformdirs"
|
||||||
|
"jsonschema"
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -391,12 +375,6 @@
|
||||||
src = hut2.src;
|
src = hut2.src;
|
||||||
dependencies = [ "sipyco" ];
|
dependencies = [ "sipyco" ];
|
||||||
}
|
}
|
||||||
{
|
|
||||||
name = "wand";
|
|
||||||
version = wand.version;
|
|
||||||
src = wand.src;
|
|
||||||
dependencies = [ "artiq" "qasync" "numpy" "scipy" "influxdb" ];
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
name = "flake8-artiq";
|
name = "flake8-artiq";
|
||||||
version = flake8-artiq.version;
|
version = flake8-artiq.version;
|
||||||
|
@ -495,6 +473,12 @@
|
||||||
src = hut2.src;
|
src = hut2.src;
|
||||||
depends = [ "mingw-w64-clang-x86_64-python-sipyco" ];
|
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-repos = msys2.makeMsys2Repos [
|
||||||
msys2-pythonparser msys2-sipyco msys2-artiq-comtools msys2-artiq
|
msys2-pythonparser msys2-sipyco msys2-artiq-comtools msys2-artiq
|
||||||
msys2-asyncserial
|
msys2-asyncserial
|
||||||
|
@ -504,6 +488,7 @@
|
||||||
msys2-thorlabs_tcube
|
msys2-thorlabs_tcube
|
||||||
msys2-newfocus8742
|
msys2-newfocus8742
|
||||||
msys2-hut2
|
msys2-hut2
|
||||||
|
msys2-flake8-artiq
|
||||||
];
|
];
|
||||||
|
|
||||||
msys2-offline-installer = pkgs.stdenv.mkDerivation {
|
msys2-offline-installer = pkgs.stdenv.mkDerivation {
|
||||||
|
@ -528,6 +513,12 @@
|
||||||
sha256 = "sha256-RiXJqvmFDaItr6KgoWTekUPHue4i/LM4uBqfVx9HKpc=";
|
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 = ./.;
|
src = ./.;
|
||||||
buildInputs = [ pkgs.gnutar pkgs.zstd pkgs.pacman pkgs.fakeroot ];
|
buildInputs = [ pkgs.gnutar pkgs.zstd pkgs.pacman pkgs.fakeroot ];
|
||||||
phases = [ "installPhase" ];
|
phases = [ "installPhase" ];
|
||||||
|
@ -536,14 +527,15 @@
|
||||||
mkdir $out
|
mkdir $out
|
||||||
mkdir -p tmp/cache
|
mkdir -p tmp/cache
|
||||||
tar -xvf ${msys2-base} --strip-components=1 -C $out/ msys64
|
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
|
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
|
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}") 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 --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
|
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
|
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/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
|
cp -f $out/usr/ssl/cert.pem $out/clang64/etc/ssl/cert.pem
|
||||||
cp -f $out/usr/ssl/certs/ca-bundle.trust.crt $out/clang64/etc/ssl/certs/ca-bundle.trust.crt
|
cp -f $out/usr/ssl/certs/ca-bundle.trust.crt $out/clang64/etc/ssl/certs/ca-bundle.trust.crt
|
||||||
rm -rf $out/mingw64* $out/clang32* $out/clangarm64* $out/mingw32* $out/ucrt64* \
|
rm -rf $out/mingw64* $out/clang32* $out/clangarm64* $out/mingw32* $out/ucrt64* \
|
||||||
|
@ -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 ;
|
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/"*
|
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" \
|
-t "$msys2_qt_ifw/clang64/bin/installerbase.exe" \
|
||||||
-p "qt-ifw/packages" \
|
-p "qt-ifw/packages" \
|
||||||
-c "qt-ifw/config/config.xml" \
|
-c "qt-ifw/config/config.xml" \
|
||||||
|
@ -594,7 +586,7 @@
|
||||||
fakeroot
|
fakeroot
|
||||||
p7zip
|
p7zip
|
||||||
msys2.wine-msys2
|
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@/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",
|
component.addOperation( "Execute",
|
||||||
["@TargetDir@\\usr\\bin\\bash.exe", "--login", "-c", "exit"]);
|
["@TargetDir@\\usr\\bin\\bash.exe", "--login", "-c", "exit"]);
|
||||||
|
|
|
@ -10,23 +10,19 @@ build() {
|
||||||
export PYTHONPATH=`pwd`/clang64/lib/python3.12/site-packages
|
export PYTHONPATH=`pwd`/clang64/lib/python3.12/site-packages
|
||||||
chmod +w -R source
|
chmod +w -R source
|
||||||
cd source
|
cd source
|
||||||
wine-msys2-build python setup.py install --single-version-externally-managed --prefix=../clang64 --record=setuptools-sucks.txt
|
wine-msys2-build python -m build --wheel --skip-dependency-check --no-isolation
|
||||||
cd ..
|
}
|
||||||
|
|
||||||
# setuptools creates this file if it doesn't already exist, which causes conflicts between pacman packages
|
package() {
|
||||||
# see: https://corte.si/posts/code/setuptoolssucks/
|
cd source
|
||||||
rm -f clang64/lib/python3.12/site-packages/easy-install.pth
|
wine-msys2-build python -m installer --destdir="${pkgdir}" --prefix="clang64/" dist/*.whl
|
||||||
# patch broken shebangs (Z:/nix/store/...)
|
# 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
|
[ -f "$entrypoint" ] || continue
|
||||||
sed -i "1s|#!.*|#!python|" $entrypoint
|
sed -i "1s|#!.*|#!python|" $entrypoint
|
||||||
done
|
done
|
||||||
for entrypoint in clang64/bin/*-script.pyw; do
|
for entrypoint in ${pkgdir}/bin/*-script.pyw; do
|
||||||
[ -f "$entrypoint" ] || continue
|
[ -f "$entrypoint" ] || continue
|
||||||
sed -i "1s|#!.*|#!pythonw|" $entrypoint
|
sed -i "1s|#!.*|#!pythonw|" $entrypoint
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
package() {
|
|
||||||
cp -R clang64 ${pkgdir}
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
mingw-w64-clang-x86_64-python-h5py
|
mingw-w64-clang-x86_64-python-h5py
|
||||||
mingw-w64-clang-x86_64-python-pyqt5
|
mingw-w64-clang-x86_64-python-pyqt6
|
||||||
mingw-w64-clang-x86_64-qt5-svg
|
mingw-w64-clang-x86_64-qt6-svg
|
||||||
mingw-w64-clang-x86_64-python-qasync
|
mingw-w64-clang-x86_64-python-qasync
|
||||||
mingw-w64-clang-x86_64-python-pyqtgraph
|
mingw-w64-clang-x86_64-python-pyqtgraph
|
||||||
mingw-w64-clang-x86_64-python-numpy
|
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-llvmlite
|
||||||
mingw-w64-clang-x86_64-python-levenshtein
|
mingw-w64-clang-x86_64-python-levenshtein
|
||||||
mingw-w64-clang-x86_64-python-lmdb
|
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-lld
|
||||||
mingw-w64-clang-x86_64-llvm
|
mingw-w64-clang-x86_64-llvm
|
||||||
mingw-w64-clang-x86_64-openocd
|
mingw-w64-clang-x86_64-openocd
|
||||||
|
|
|
@ -247,15 +247,9 @@
|
||||||
})
|
})
|
||||||
|
|
||||||
(pkgs.fetchurl {
|
(pkgs.fetchurl {
|
||||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-pyqt5-sip-12.15.0-2-any.pkg.tar.zst";
|
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-pyqt5-sip";
|
name = "mingw-w64-clang-x86_64-python-pyqt6-sip";
|
||||||
sha256 = "1k68xy5lapbi2s7zkxpzz5ps2l9b9yd3kp9w4lh47zk74al74fyj";
|
sha256 = "1x948jsz5b0ispfsqbdpyskhvhf6ik8kam2wswar4i72j4vf4sda";
|
||||||
})
|
|
||||||
|
|
||||||
(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 {
|
(pkgs.fetchurl {
|
||||||
|
@ -264,6 +258,12 @@
|
||||||
sha256 = "1jd07myjvc0dzwkh84rk7c74wv96syyfb7v99694bbbv31jkqw4g";
|
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 {
|
(pkgs.fetchurl {
|
||||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libpng-1.6.44-1-any.pkg.tar.zst";
|
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";
|
name = "mingw-w64-clang-x86_64-libpng";
|
||||||
|
@ -312,18 +312,18 @@
|
||||||
sha256 = "08jn0qqibkk2s4q005ff0a1kz0yklq0cp7w4wd1g4h2ykczii2zy";
|
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 {
|
(pkgs.fetchurl {
|
||||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-icu-75.1-2-any.pkg.tar.zst";
|
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";
|
name = "mingw-w64-clang-x86_64-icu";
|
||||||
sha256 = "0dxskyhbqgiphlz95b7hp05kcryaspa045ad8763m903nnslq7ri";
|
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 {
|
(pkgs.fetchurl {
|
||||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libjpeg-turbo-3.0.4-2-any.pkg.tar.zst";
|
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";
|
name = "mingw-w64-clang-x86_64-libjpeg-turbo";
|
||||||
|
@ -343,21 +343,27 @@
|
||||||
})
|
})
|
||||||
|
|
||||||
(pkgs.fetchurl {
|
(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";
|
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-qt5-base";
|
name = "mingw-w64-clang-x86_64-vulkan-headers";
|
||||||
sha256 = "0hhlr2a7g5h5xzb31jwxw0dfavxg434n33m9ir88vbkhgdq2ig36";
|
sha256 = "042xvrs3y138saih6inihwy82qycsbilvvmvm01rb6yib0r7wig3";
|
||||||
})
|
})
|
||||||
|
|
||||||
(pkgs.fetchurl {
|
(pkgs.fetchurl {
|
||||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-python-pyqt5-5.15.11-3-any.pkg.tar.zst";
|
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-python-pyqt5";
|
name = "mingw-w64-clang-x86_64-qt6-base";
|
||||||
sha256 = "1s20ami7anxja6lrlqaivg1xlcmk2qqzckhfy5r8k10mf25wwrz8";
|
sha256 = "0vz8595swk65dgj1nn8858rajjd2300xr5jz1b0bkln6n3gs4jbn";
|
||||||
})
|
})
|
||||||
|
|
||||||
(pkgs.fetchurl {
|
(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";
|
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-qt5-svg";
|
name = "mingw-w64-clang-x86_64-python-pyqt6";
|
||||||
sha256 = "1cjdchwfbf62w695sa17walj771m4hw3k3mvq1bkx9drvgw51w0c";
|
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 {
|
(pkgs.fetchurl {
|
||||||
|
@ -474,6 +480,12 @@
|
||||||
sha256 = "0gqgbr7qbhi2pbaxr78ysk3a0zip2jwdwdsdid9ql8sw1i7l572c";
|
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 {
|
(pkgs.fetchurl {
|
||||||
url = "https://mirror.msys2.org/mingw/clang64/mingw-w64-clang-x86_64-libxml2-2.12.9-2-any.pkg.tar.zst";
|
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";
|
name = "mingw-w64-clang-x86_64-libxml2";
|
||||||
|
|
|
@ -20,7 +20,7 @@ let
|
||||||
''
|
''
|
||||||
export WINEDEBUG=-all
|
export WINEDEBUG=-all
|
||||||
export WINEPATH=Z:${msys2-env}/clang64/bin
|
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"
|
wine-msys2-build = pkgs.writeShellScriptBin "wine-msys2-build"
|
||||||
''
|
''
|
||||||
|
@ -28,7 +28,7 @@ let
|
||||||
export WINEDEBUG=-all
|
export WINEDEBUG=-all
|
||||||
export WINEPATH=Z:${msys2-env}/clang64/bin
|
export WINEPATH=Z:${msys2-env}/clang64/bin
|
||||||
${silenceFontconfig}
|
${silenceFontconfig}
|
||||||
exec ${pkgs.wineWowPackages.stable}/bin/wine64 $@
|
exec ${pkgs.wineWowPackages.unstable}/bin/wine64 $@
|
||||||
'';
|
'';
|
||||||
in {
|
in {
|
||||||
inherit wine-msys2;
|
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 \
|
pacman --root $MSYS2DIR --config $MSYS2DIR/etc/pacman.conf \
|
||||||
--cachedir $MSYS2DIR/msys/cache --sync --print-format "%l %n" \
|
--cachedir $MSYS2DIR/msys/cache --sync --print-format "%l %n" \
|
||||||
mingw-w64-clang-x86_64-cc \
|
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 \
|
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
|
--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
|
--sync --print-format "%l %n" mingw-w64-clang-x86_64-qt-installer-framework > $MSYS2DIR/qt_ifw_packages.txt
|
||||||
|
|
||||||
function generate_nix_packages_from_pacman() {
|
function generate_nix_packages_from_pacman() {
|
||||||
echo "{ pkgs } : [" > $OUT
|
local in=$1
|
||||||
|
local out=$2
|
||||||
|
echo "{ pkgs } : [" > $out
|
||||||
while IFS= read -r line; do
|
while IFS= read -r line; do
|
||||||
read -r url package <<< "$line"
|
read -r url package <<< "$line"
|
||||||
hash=$(nix-prefetch-url $url --name $package)
|
hash=$(nix-prefetch-url $url --name $package)
|
||||||
|
@ -32,11 +35,11 @@ function generate_nix_packages_from_pacman() {
|
||||||
url = \"$url\";
|
url = \"$url\";
|
||||||
name = \"$package\";
|
name = \"$package\";
|
||||||
sha256 = \"$hash\";
|
sha256 = \"$hash\";
|
||||||
})" >> $OUT
|
})" >> $out
|
||||||
done < $IN
|
done < $in
|
||||||
echo "]" >> $OUT
|
echo "]" >> $out
|
||||||
}
|
}
|
||||||
|
|
||||||
IN=$MSYS2DIR/packages.txt OUT=msys2_packages.nix generate_nix_packages_from_pacman
|
generate_nix_packages_from_pacman $MSYS2DIR/packages.txt msys2_packages.nix
|
||||||
IN=$MSYS2DIR/qt_ifw_packages.txt OUT=msys2_qt_ifw_packages.nix generate_nix_packages_from_pacman
|
generate_nix_packages_from_pacman $MSYS2DIR/qt_ifw_packages.txt msys2_qt_ifw_packages.nix
|
||||||
IN=$MSYS2DIR/artiq_dependency_packages.txt OUT=artiq_dependency_packages.nix generate_nix_packages_from_pacman
|
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";
|
name = "mingw-w64-clang-x86_64-python-setuptools";
|
||||||
sha256 = "1cph081zr7m0qp66b9v2zq69a9inavbzvwgwx4mmzklnpbrly5yv";
|
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