| 5 Dec 2023 |
Artturin | In reply to @raitobezarius:matrix.org does the stdenv people knows why checkMeta might have missed those: https://github.com/NixOS/nixpkgs/pull/272199 ? https://github.com/NixOS/nixpkgs/blob/70475eb9dd8e0a3b7138cf829f96cb404fa1d94b/pkgs/stdenv/generic/check-meta.nix#L310 | 15:47:26 |
raitobezarius | I see | 15:50:23 |
raitobezarius | Thank you! | 15:50:25 |
Artturin | https://github.com/NixOS/nixpkgs/issues/272290 | 15:52:55 |
Artturin | created an issue | 15:53:04 |
| 15 Dec 2023 |
| nbp | 19:41:08 |
| 18 Dec 2023 |
| patryk4815 joined the room. | 23:22:01 |
| 19 Dec 2023 |
fgaz | lovesegfault: stdenv is currently broken for riscv64-linux in staging due to the 5-year-old assembler in the bootstrap tarball not supporting the vector extension. I built a new one (freshBootstrapTools.build on 5a09cb4b393d58f9ed0d9ca1555016a8543c2ac8) and verified that it fixes the issue. I was told by raitobezarius to ping you for upload on tarballs.nixos.org | 13:13:07 |
Alyssa Ross | see also https://github.com/NixOS/nixpkgs/issues/253713 | 13:13:29 |
| 23 Dec 2023 |
| raitobezarius changed their display name from raitobezarius to raitobezarius (DECT 2128). | 22:22:21 |
| 28 Dec 2023 |
| piegames changed their display name from piegames to piegames [☎ 9712]. | 01:34:09 |
trofi | https://github.com/NixOS/nixpkgs/pull/277355 : minor fix to improve evaluation get rid of abort calls. | 15:33:17 |
| 30 Dec 2023 |
| raitobezarius changed their display name from raitobezarius (DECT 2128) to raitobezarius. | 19:52:54 |
| 31 Dec 2023 |
| piegames changed their display name from piegames [☎ 9712] to piegames. | 12:41:09 |
| Philip Taron (UTC-8) changed their display name from Philip Taron to Philip Taron (UTC-8). | 18:10:52 |
| 11 Jan 2024 |
| SomeoneSerge (hash-versioned python modules when) joined the room. | 00:37:33 |
SomeoneSerge (hash-versioned python modules when) | Hi! We've been using something relatively ugly in cudaPackages because the "cuda compiler driver" usually needs an old gcc, but the libraries it produces need to co-exist with the normal nixpks shared libraries in the same process, and so they need to link against the same c++ standard library. It's like with clang using libstdc++, only the old gcc in place of clang.
I now consider using this uglyness outside cudaPackages because e.g. tensorflow also has some ideas about which compilers it's compatible with. I was suggested that instead of introducing new attributes or changing the meaning of attributes like gccXXStdenv I write a "stdenv adapter".
The hack is (ab)using wrapCCWith with gccForLibs. One bit I'm unsure of is whether I should pass wrapCC the target stdenv's wrapped cc, or the unwrapped one: https://github.com/NixOS/nixpkgs/pull/275947/commits/30016f9c4622fca0145e9904f471079e9393eff1#diff-cea9c91ed8344102b5d5fbf28eae400b8182d3b51d718f88345de8c7a187165fR243
We've been using the unwrapped one so far (because it didn't matter), but I wonder if discarding the old wrappers flags&c is the right thing to do in the general case? This suggests the 2nd question, do wrapCCs compose? | 00:45:00 |
| connor (he/him) (UTC-5) joined the room. | 04:11:57 |
| Théophane joined the room. | 06:10:15 |
| Théophane left the room. | 06:11:19 |
| layus joined the room. | 08:26:49 |
| Toma joined the room. | 11:42:12 |
| 12 Jan 2024 |
| Sean Link joined the room. | 23:06:36 |
| eryngion joined the room. | 23:07:01 |
Sean Link | Hey everyone.
Have been working on getting qtbase and qtmultimedia cross compiling for windows. See https://github.com/NixOS/nixpkgs/issues/274274 https://github.com/NixOS/nixpkgs/issues/272538 https://github.com/seanybaggins/qt-package-overalys
I got an example application cross compiling to windows. You can reproduce my results by doing the following
git clone https://github.com/seanybaggins/qt-package-overalys
nix build '.#pkgs.pkgsCross.qtapp-example
nix copy ../releases/qtapp-example '.#pkgs.pkgsCross.mingw32.qtapp-example' --no-check-sigs
cd ../releases/qtapp-example
mkdir staging
cp -r --dereference ./nix/store/<hash>-qtapp-example-i686-w64-mingw32-6.5.1/bin/* staging
# run inno setup. I used bottes to run it on linux. This is the iss file that I made to do the build
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
#define MyAppName "My Program"
#define MyAppVersion "1.5"
#define MyAppPublisher "My Company, Inc."
#define MyAppURL "https://www.example.com/"
#define MyAppExeName "untitled.exe"
[Setup]
; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{89681292-40F7-4D19-952B-8D51D68A6FC8}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={autopf}\{#MyAppName}
DisableDirPage=yes
DisableProgramGroupPage=yes
; Uncomment the following line to run in non administrative install mode (install for current user only.)
;PrivilegesRequired=lowest
OutputBaseFilename=mysetup
Compression=lzma
SolidCompression=yes
WizardStyle=modern
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "Z:\<your-path>\releases\qtapp-example\staging\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion
Source: "Z:\<your-path>\releases\qtapp-example\staging\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons]
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
As you can see, there were some lingering steps that I needed to run so I could get rid of symlinks and then run inno setup. Was wondering if some changes could be made within stdenv so I have an option to deference symbolic links within my derivation.
| 23:13:49 |
| 16 Jan 2024 |
SomeoneSerge (hash-versioned python modules when) | In reply to @ss:someonex.net
Hi! We've been using something relatively ugly in cudaPackages because the "cuda compiler driver" usually needs an old gcc, but the libraries it produces need to co-exist with the normal nixpks shared libraries in the same process, and so they need to link against the same c++ standard library. It's like with clang using libstdc++, only the old gcc in place of clang.
I now consider using this uglyness outside cudaPackages because e.g. tensorflow also has some ideas about which compilers it's compatible with. I was suggested that instead of introducing new attributes or changing the meaning of attributes like gccXXStdenv I write a "stdenv adapter".
The hack is (ab)using wrapCCWith with gccForLibs. One bit I'm unsure of is whether I should pass wrapCC the target stdenv's wrapped cc, or the unwrapped one: https://github.com/NixOS/nixpkgs/pull/275947/commits/30016f9c4622fca0145e9904f471079e9393eff1#diff-cea9c91ed8344102b5d5fbf28eae400b8182d3b51d718f88345de8c7a187165fR243
We've been using the unwrapped one so far (because it didn't matter), but I wonder if discarding the old wrappers flags&c is the right thing to do in the general case? This suggests the 2nd question, do wrapCCs compose? Heeey a new question: wrapCCWith takes a coreutils, and now should one manually pass buildPackages.coreutils to wrapCCWith, or should one call buildPackages.wrapCCWith or does this look like I made a terrible mistake early on and this question should never have arisen?
Context: https://github.com/NixOS/nixpkgs/pull/281371 | 19:17:48 |
connor (he/him) (UTC-5) | Nah, this is unrelated to the work you did the last few weeks | 19:24:51 |
connor (he/him) (UTC-5) | I never thought to try buildPackages.wrapCCWith -- interesting | 19:25:15 |
SomeoneSerge (hash-versioned python modules when) | (currently pondering at the scary thought of whether the package set we should be taking coreutils from depends on targetStdenv, my brain so slow) | 19:25:49 |
connor (he/him) (UTC-5) | I mean, stdenv.cc.coreutils_bin seems to always be correct, so you could just take it from there | 19:28:49 |