| 27 Apr 2025 |
Andrew Bruce | I mean obviously I'd love for this to work, but rn I want my new printer to spring into life :) | 13:47:38 |
Andrew Bruce | It looks like maybe that upstream project wants to do on-the-fly compilation or something which could mean trouble | 13:48:29 |
K900 | Uhh OK | 13:48:36 |
Andrew Bruce | It's this if you're interested: https://github.com/Klipper3d/klipper/blob/master/klippy/chelper/__init__.py | 13:48:41 |
K900 | Yeah klipper cross is going to be a huge pain | 13:48:44 |
K900 | Yes I just found that | 13:48:49 |
Andrew Bruce | feels like the same sort of issue I deal with in a 2nix I've written where some packages want to get clever | 13:50:11 |
| 28 Apr 2025 |
rhelmot | trying to build pkgsCross.mingwW64.buildPackages.at-spi2-core on an aarch64-linux machine tries to pull in wine64 for some reason and refuses to eval - seems to be splicing related? | 00:09:36 |
rhelmot | I could be wrong. gobject-introspection has gotten me with its labrynthine tendrils before | 00:14:20 |
rhelmot | oh my god, WHY does gobject-introspection-wrapper use targetPackages. this isn't accounted for by the standard guard about whether to enable introspection for a given project??? | 00:22:39 |
rhelmot | okay this seems to be the actual minimal issue: pkgsCross.mingwW64.stdenv.targetPlatform.emulatorAvailable pkgs throws instead of returning false. is this intended? | 00:51:56 |
Artturin | In reply to @rhelmot:matrix.org I could be wrong. gobject-introspection has gotten me with its labrynthine tendrils before Yeah its weird, and I wrote it lol, luckily buildroot had it working before us so I could copy some of their stuff | 05:10:01 |
Artturin | In reply to @rhelmot:matrix.org okay this seems to be the actual minimal issue: pkgsCross.mingwW64.stdenv.targetPlatform.emulatorAvailable pkgs throws instead of returning false. is this intended? The issue should be that emulatorAvailable doesn't check for the actual availability of the package | 06:02:55 |
rhelmot | I ended up adding an additional clause that checked if the host was x86_64 linux before returning wine, and that seems to have worked | 06:12:08 |
Artturin | index ce257d5307b6..57cc5189fa3e 100644
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -380,7 +380,7 @@ let
# arguments, a wrapper should be used.
if pkgs.stdenv.hostPlatform.canExecute final then
lib.getExe (pkgs.writeShellScriptBin "exec" ''exec "$@"'')
- else if final.isWindows then
+ else if final.isWindows && wine.meta.available then
"${wine}/bin/wine${optionalString (final.parsed.cpu.bits == 64) "64"}"
else if final.isLinux && pkgs.stdenv.hostPlatform.isLinux && final.qemuArch != null then
"${pkgs.qemu-user}/bin/qemu-${final.qemuArch}"
| 06:15:15 |
rhelmot | 👀 | 06:15:45 |
Artturin | * --- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -380,7 +380,7 @@ let
# arguments, a wrapper should be used.
if pkgs.stdenv.hostPlatform.canExecute final then
lib.getExe (pkgs.writeShellScriptBin "exec" ''exec "$@"'')
- else if final.isWindows then
+ else if final.isWindows && wine.meta.available then
"${wine}/bin/wine${optionalString (final.parsed.cpu.bits == 64) "64"}"
else if final.isLinux && pkgs.stdenv.hostPlatform.isLinux && final.qemuArch != null then
"${pkgs.qemu-user}/bin/qemu-${final.qemuArch}"
| 06:15:52 |
Artturin | * ```
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -380,7 +380,7 @@ let
# arguments, a wrapper should be used.
if pkgs.stdenv.hostPlatform.canExecute final then
lib.getExe (pkgs.writeShellScriptBin "exec" ''exec "$@"'')
else if final.isWindows then
else if final.isWindows && wine.meta.available then
"${wine}/bin/wine${optionalString (final.parsed.cpu.bits == 64) "64"}"
else if final.isLinux && pkgs.stdenv.hostPlatform.isLinux && final.qemuArch != null then
"${pkgs.qemu-user}/bin/qemu-${final.qemuArch}"
``` | 06:16:14 |
Artturin | * ```
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -380,7 +380,7 @@ let
# arguments, a wrapper should be used.
if pkgs.stdenv.hostPlatform.canExecute final then
lib.getExe (pkgs.writeShellScriptBin "exec" ''exec "$@"'')
- else if final.isWindows then
+ else if final.isWindows && wine.meta.available then
"${wine}/bin/wine${optionalString (final.parsed.cpu.bits == 64) "64"}"
else if final.isLinux && pkgs.stdenv.hostPlatform.isLinux && final.qemuArch != null then
"${pkgs.qemu-user}/bin/qemu-${final.qemuArch}"
leo@nixos ~/nixpkgs (git)-[master] % | 06:16:56 |
Artturin | * ```
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -380,7 +380,7 @@ let
# arguments, a wrapper should be used.
if pkgs.stdenv.hostPlatform.canExecute final then
lib.getExe (pkgs.writeShellScriptBin "exec" ''exec "$@"'')
- else if final.isWindows then
+ else if final.isWindows && wine.meta.available then
"${wine}/bin/wine${optionalString (final.parsed.cpu.bits == 64) "64"}"
else if final.isLinux && pkgs.stdenv.hostPlatform.isLinux && final.qemuArch != null then
"${pkgs.qemu-user}/bin/qemu-${final.qemuArch}" | 06:17:22 |
rhelmot | if you submit a patch I'll test it | 06:18:25 |
Alyssa Ross | lib.meta.availableOn pls | 06:43:48 |
Artturin | Maybe like this availableOn pkgs.stdenv.buildPlatform wine | 06:47:09 |
Artturin | Or wine.stdenv.buildPlatform | 06:48:39 |
FliegendeWurst | funny error message I just got: checking bits per byte... configure: error: failed to compile test program Interestingly enough it does use the detected value in a sensible way, in exactly two places.. but I'd bet it assumes 8 bits/byte in at least one other place. | 22:09:11 |
| 29 Apr 2025 |
Grimmauld (any/all) | when will we have cross-compilation for WITCH, the computer that does 9 bits per byte (sign + 8 actual bits) | 06:44:23 |
rosssmyth | Or the Apollo Guidance Computer, which was 15 bits per word (which is for all intents and purposes a byte) | 16:28:46 |
K900 | /me laughs in Setun | 16:29:30 |
K900 | 18 trit per word | 16:29:41 |
K900 | Yes, trit | 16:29:44 |