Skip to content

bambootracker: 0.6.0 -> 0.6.1#214913

Merged
wegank merged 2 commits intoNixOS:masterfrom
OPNA2608:update/bambootracker
Feb 7, 2023
Merged

bambootracker: 0.6.0 -> 0.6.1#214913
wegank merged 2 commits intoNixOS:masterfrom
OPNA2608:update/bambootracker

Conversation

@OPNA2608
Copy link
Contributor

@OPNA2608 OPNA2608 commented Feb 6, 2023

Description of changes

Struggling with Darwin:

  1. All Qt5 applications are currently failing to launch on my system.
qt.qpa.plugin: Could not load the Qt platform plugin "cocoa" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: cocoa, minimal, offscreen.

Abort trap: 6
  1. I tried to migrate this to stdenv.mkDerivation which would also allow a Qt6 variant, but that causes the build to fail:
In file included from audio/audio_stream_rtaudio.cpp:29:
In file included from /nix/store/b1d9agnhl0p5fp298yz0hkxx9s75rnlf-rtaudio-5.2.0/include/rtaudio/RtAudio.h:877:
In file included from /nix/store/nzg19z5bqikz64k8z6wy16yia0wc7p0l-apple-framework-CoreAudio-11.0.0/Library/Frameworks/CoreAudio.framework/Headers/AudioHardware.h:86:
In file included from /nix/store/57giqsy5k5gcrz7gvyaik91izgj0n3z1-apple-framework-CoreFoundation-11.0.0/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:60:
In file included from /nix/store/57giqsy5k5gcrz7gvyaik91izgj0n3z1-apple-framework-CoreFoundation-11.0.0/Library/Frameworks/CoreFoundation.framework/Headers/CFPropertyList.h:17:
In file included from /nix/store/57giqsy5k5gcrz7gvyaik91izgj0n3z1-apple-framework-CoreFoundation-11.0.0/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:16:
/nix/store/57giqsy5k5gcrz7gvyaik91izgj0n3z1-apple-framework-CoreFoundation-11.0.0/Library/Frameworks/CoreFoundation.framework/Headers/CFURL.h:1189:83: error: expected ','
    kCFURLBookmarkCreationWithSecurityScope API_AVAILABLE(macos(10.7), macCatalyst(13.0))  API_UNAVAILABLE(ios, watchos, tvos) = ( 1UL << 11 ), // Mac OS X 10.7.3 and later, include information in the bookmark data which allows the same sandboxed process to access the resource after being relaunched
                                                                                  ^
/nix/store/57giqsy5k5gcrz7gvyaik91izgj0n3z1-apple-framework-CoreFoundation-11.0.0/Library/Frameworks/CoreFoundation.framework/Headers/CFURL.h:1190:98: error: expected ','
    kCFURLBookmarkCreationSecurityScopeAllowOnlyReadAccess API_AVAILABLE(macos(10.7), macCatalyst(13.0)) API_UNAVAILABLE(ios, watchos, tvos) = ( 1UL << 12 ), // Mac OS X 10.7.3 and later, if used with kCFURLBookmarkCreationWithSecurityScope, at resolution time only read access to the resource will be granted
                                                                                                 ^
/nix/store/57giqsy5k5gcrz7gvyaik91izgj0n3z1-apple-framework-CoreFoundation-11.0.0/Library/Frameworks/CoreFoundation.framework/Headers/CFURL.h:1200:85: error: expected ','
    kCFURLBookmarkResolutionWithSecurityScope API_AVAILABLE(macos(10.7), macCatalyst(13.0)) API_UNAVAILABLE(ios, watchos, tvos) = ( 1UL << 10 ), // Mac OS X 10.7.3 and later, use the secure information included at creation time to provide the ability to access the resource in a sandboxed process.
                                                                                    ^
3 errors generated.
make[1]: *** [Makefile:4186: audio_stream_rtaudio.o] Error 1
Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.05 Release Notes (or backporting 22.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@wegank
Copy link
Member

wegank commented Feb 6, 2023

All of the above for the first issue. For the second, while qt6Packages.callPackage doesn't have this issue, for Qt 5, you should override stdenv with darwin.apple_sdk_11_0.stdenv, since Qt 5.15.8+ is built with macOS 11 SDK in nixpkgs.

@OPNA2608
Copy link
Contributor Author

OPNA2608 commented Feb 6, 2023

darwin.apple_sdk_11_0.stdenv hint helps, code suggestions do not: wrapQtApp is called manually in postInstall on Darwin to wrap the binary inside the app bundle instead of the symlink to it in bin. That way both open -a BambooTracker.app and BambooTracker work. The binary that gets launched is definitely wrapped the same way wrapQtAppsHook would do it:

Screenshot_macOS_2023-02-06_17:20:49

I also cannot launch ptcollab or neovim-qt on master (0406afa) anymore, same error. My channel is at 293a28d and all 3 applications work there.

@wegank
Copy link
Member

wegank commented Feb 6, 2023

I also cannot launch ptcollab or neovim-qt on master (0406afa) anymore, same error. My channel is at 293a28d and all 3 applications work there.

The regression came from #210062, which was fairly recent. I'm also having build failures in other packages, and I once thought of overriding stdenv globally in Qt 5, as was done for Qt 6, but I'm not able to rebuild everything on my own machine.

@OPNA2608 OPNA2608 force-pushed the update/bambootracker branch from c3be4de to f1db792 Compare February 6, 2023 16:48
@OPNA2608
Copy link
Contributor Author

OPNA2608 commented Feb 6, 2023

We'll assume that issue 1 will get fixed treewide in the future then.

Also pushed a Qt6 variant now, works on x86_64-linux but I'm unable to test it on Darwin because my macOS version is too old to run any Qt6 binaries. Gonna have to leave that one to either ofborg or a reviewer ¯\_(ツ)_/¯

configuring
QMAKEPATH=/nix/store/xbsjv054li93p6gzn0f8kpyzcryriznl-qtbase-6.4.2-dev:/nix/store/mx8b39jf0rgxnnwrcyc2hiyqzyqlb88r-qttools-6.4.2-dev:/nix/store/a0zyddp0g8bb895kxic38mxq54avaa97-qtdeclarative-6.4.2-dev:/nix/store/lm6c0ffvkbn1q5xps1i0ksxl0s2qvkpf-qtshadertools-6.4.2-dev:/nix/store/6zkmf6j37q6xn23gz3gcaw895048z52p-qt5compat-6.4.2-dev
qmake PREFIX=/nix/store/3nmzqbx9gpy7baw562agy4475iplwq4n-bambootracker-0.6.1 NIX_OUTPUT_OUT=/nix/store/3nmzqbx9gpy7baw562agy4475iplwq4n-bambootracker-0.6.1 NIX_OUTPUT_DEV=/nix/store/3nmzqbx9gpy7baw562agy4475iplwq4n-bambootracker-0.6.1 NIX_OUTPUT_BIN=/nix/store/3nmzqbx9gpy7baw562agy4475iplwq4n-bambootracker-0.6.1 NIX_OUTPUT_QML=/nix/store/3nmzqbx9gpy7baw562agy4475iplwq4n-bambootracker-0.6.1/lib/qt-6/qml NIX_OUTPUT_PLUGIN=/nix/store/3nmzqbx9gpy7baw562agy4475iplwq4n-bambootracker-0.6.1/lib/qt-6/plugins CONFIG+=release CONFIG+=system_rtaudio CONFIG+=system_rtmidi
dyld: Symbol not found: _NSAppearanceNameDarkAqua
  Referenced from: /nix/store/z154sm1m3g2pfrbfxavwm03a6anadl2f-qtbase-6.4.2/lib/libQt6Core.6.dylib (which was built for Mac OS X 10.14)
  Expected in: /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
 in /nix/store/z154sm1m3g2pfrbfxavwm03a6anadl2f-qtbase-6.4.2/lib/libQt6Core.6.dylib
/nix/store/hkyidc6gli1s55vhs7xhhdhq29igq8zf-qmake6-hook/nix-support/setup-hook: line 31:  2139 Abort trap: 6           qmake "${qmakeFlags[@]}"

@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Feb 6, 2023
@wegank
Copy link
Member

wegank commented Feb 6, 2023

I have several commits on master overwritten by the last staging-next merge, so qmake is currently broken again on Qt 6. I'll try to fix that now, and I'll come back to you soon.

@wegank wegank mentioned this pull request Feb 6, 2023
13 tasks
@wegank
Copy link
Member

wegank commented Feb 6, 2023

@ofborg build bambootracker bambootracker-qt6 bambootracker-qt6.passthru.tests bambootracker.passthru.tests

@wegank
Copy link
Member

wegank commented Feb 7, 2023

Result of nixpkgs-review pr 214913 run on aarch64-darwin 1

2 packages built:
  • bambootracker
  • bambootracker-qt6

@wegank
Copy link
Member

wegank commented Feb 7, 2023

$ open results/bambootracker-qt6/Applications/BambooTracker.app

Capture d’écran 2023-02-07 à 07 10 44

@wegank wegank merged commit cad065d into NixOS:master Feb 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants