Repository navigation
audacity_4: init at 4.0.0 - #559623
audacity_4: init at 4.0.0#559623
Conversation
e8f5cc8 to
9a8b5b2
Compare
2f2c4c2 to
b9e4338
Compare
|
little question but why not making audacity 4 as |
It's a good question. I don't have a good reason other than that I'm the one introducing the change and I don't want to change things silently for people. If that's better/recommended then I'm happy to change the PR. |
|
Well personally as a user I'd expect the regular audacity package to be the latest one while still having |
Take a look at the recent changes, if you get the chance. Basically, |
|
Is there any particular reason why fetchurl is being used instead of sticking with fetchFromGitHub? |
❌
|
|
|
@OctoRocket No specific reason for using |
dde6cb5 to
a87b958
Compare
|
@wegank Could you trigger a fresh I added |
|
Sure, |
|
The Audacity 3 macOS deployment-target inconsistency seen in the review logs is addressed separately in #560876. That PR replaces the hard-coded minimums with The deployment-target smoke checks pass; native Darwin build/runtime verification is still outstanding. This Audacity 4 PR is unchanged. |
|
I think |
❌
|
a87b958 to
c85a904
Compare
|
@wegank, your layout and bundling recommendations are now implemented in The package retains bundled Qt dependencies, moves the bundle to The original automatic-wrapping recommendation applied to the store-backed variant. It is not suitable for the retained-bundling variant. The current approach and validation are described in #559623 (comment). |
I don't think disable bundling is a good idea, as most users wouldn't expect to open Audacity from the terminal, but rather from Spotlight. Could you check if it's possible to keep the bundling? |
2b5f1e3 to
1dcb32c
Compare
|
@wegank, replying to #559623 (comment): we will definitely investigate retaining Qt bundling, including the The current approach retains the application bundle and wraps its executable in We're turning on our M2 Macbook to confirm native bundling and Finder/Spotlight launch behavior. |
✅
|
✅
|
|
@wegank, native testing on the M2 MacBook confirms that retained Qt bundling can complete the build. The experiment sets the existing Nix Qt override The first bundled artifact then failed at runtime: the automatic Qt hook wrapped copied framework libraries as executables. The bundling changes are now promoted in commit |
|
Okay. So let's go back to bundling, do the |
1dcb32c to
8a1c09e
Compare
8a1c09e to
1de9554
Compare
@wegank Yeah, let's go back to bundling. But, I had to use Before merging/shipping: the derivation/ |
✅
|
✅
|
Make Audacity 4 the default, retain Audacity 3 as audacity_3, and provide audacity_4 as an alias. Use the official offline source archive and system libraries. Disable WebKit in wxWidgets, enable strict dependency checking, and declare Expat explicitly. Build for the configured Darwin architecture and minimum macOS version. Fetch commit-pinned upstream fixes for wxWidgets framework linking and deployment target overrides. Assisted-by: OpenAI Codex / GPT-5.6-sol Assisted-by: OpenAI Codex / GPT-6-astra
1de9554 to
685a484
Compare
|
Feel free to add yourself as a maintainer, if you are interested! |
|
The aarch64-linux to x86_64-linux cross-build and local execution checks now pass with two follow-up fixes: Qt Declarative host-tool discovery in #561181, and Audacity host-tool selection in #561198. The unmodified cross-build first failed on mixed native/target Qt setup hooks, then exposed missing Qt Quick in the cross-built dependency. Both causes are addressed separately. The resulting x86_64 executable ran locally: |
The prerequisite #557920 has merged. Verification of an aarch64-linux build producing an x86_64-linux executable is in progress.
Description of changes
Update
audacityto 4.0.0, retain 3.7.9 asaudacity_3, and provideaudacity_4as an alias. Use Qt 6, the official source archive, and pinned offline dependencies. Supported libraries come from nixpkgs. Declare Expat explicitly and disable WebKit in wxWidgets.On Darwin, build only the host architecture and use
stdenv.hostPlatform.darwinMinVersion. Retain Qt bundling. SupplyNIX_QMLIMPORTSCANNERand existing QML import directories. Pass-no-striptomacdeployqt; Nix performs final stripping.Install the bundle under
$out/Applicationsand provide$out/bin/audacity. Wrap only the application executable, not bundled framework libraries. Clear external Qt plugin/QML search paths to avoid loading a second Qt installation. Preserve FFmpeg/JACK runtime library paths. This incorporates @wegank’s bundling and layout recommendations.Vendor the upstream patches in-tree, with their PR links beside each entry in
patches:The unused bundling-disable patch from audacity/audacity#12026 is removed. No downstream CMake substitution is needed for deployment options.
Audacity 3 retains
strictDeps,__structuredAttrs, and native wxWidgets forwx-config, as explicitly requested. These are the only differences from the moved master packaging;rapidjson.patchis byte-identical. Its deployment-target correction remains separate in #560876.Verification
--long-versionand--plugin-registration-self-testpassed, including Nyquist resource lookup.Deployment warnings
The earlier bundled experiment logged macOS sandbox write denials during Qt deployment but exited successfully. The affected final frameworks were complete and matched a prior working bundled artifact. Repeated forced overwrites are a hypothesis, not a confirmed cause. Post-build file modes do not establish permissions at the time of failure. No security protections were disabled. Spotlight discovery remains unverified.
Automation disclosure
OpenAI Codex assisted with implementation, upstream patches, validation, and PR text. Human review is required before merging.
The in-tree patch files are byte-identical to the previous normalized
fetchpatch2outputs. All four apply to the release archive with zero fuzz. Linux and Darwin evaluation and the formatting check passed after vendoring.