Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

audacity: 2.4.1 -> 2.4.2 #97370

Merged
merged 1 commit into from Jan 16, 2021
Merged

audacity: 2.4.1 -> 2.4.2 #97370

merged 1 commit into from Jan 16, 2021

Conversation

peterhoeg
Copy link
Member

Motivation for this change

A few other things:

  • use cmake instead of (the super slow) autotools
  • we drop the runtime linking with lame as audacity is picking it up on
    its own
  • on linux, add a number of missing dependencies.

Cc: @lheckemann

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@akamaus
Copy link
Contributor

akamaus commented Sep 7, 2020

UI looks a bit weird compared to version from from nixos-20.30. It's quite hard to switch devices now.
image

@peterhoeg
Copy link
Member Author

It's different sure, but what exactly is weird? Please note that gtk2 is dead and everything that supports gtk3 will be moved over.

@lheckemann
Copy link
Member

@peterhoeg the dropdowns in the toolbar line beginning with "ALSA" seem to be truncated.

@peterhoeg
Copy link
Member Author

Ah, that's an upstream issue: audacity/audacity#638

@akamaus
Copy link
Contributor

akamaus commented Sep 9, 2020

It's different sure, but what exactly is weird? Please note that gtk2 is dead and everything that supports gtk3 will be moved over.
@peterhoeg the dropdowns in the toolbar line beginning with "ALSA" seem to be truncated.

Not only truncated. Widgets and corresponding areas reacting on mouse clicks seem to be misaligned. That's not fatal, but feels very confusing.

@peterhoeg
Copy link
Member Author

Too many problems with the move to gtk3 (works OK here under KDE), so revert to gtk2 as recommended by upstream:

https://www.audacityteam.org/download/source/

@voidIess
Copy link
Contributor

building this and running it would cause a segfault for me:

$ nix-shell -I nixpkgs=/home/voidless/Files/nixpgks_alt/nixpkgs -p audacity --run audacity
Attempting to connect to Audacity failed...retrying
Fontconfig warning: "/etc/fonts/fonts.conf", line 86: unknown element "blank"
ALSA lib pcm_dsnoop.c:642:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1090:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_dmix.c:1090:(snd_pcm_dmix_open) unable to open slave
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
Expression 'ret' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 1736
Expression 'AlsaOpen( &alsaApi->baseHostApiRep, params, streamDir, &self->pcm )' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 1904
Expression 'PaAlsaStreamComponent_Initialize( &self->capture, alsaApi, inParams, StreamDirection_In, NULL != callback )' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 2171
Expression 'PaAlsaStream_Initialize( stream, alsaHostApi, inputParameters, outputParameters, sampleRate, framesPerBuffer, callback, streamFlags, userData )' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 2839
Expression 'stream->playback.pcm' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 4628
Expression '*idev = open( idevName, flags )' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/oss/pa_unix_oss.c', line: 832
Expression 'OpenDevices( idevName, odevName, &idev, &odev )' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/oss/pa_unix_oss.c', line: 878
Expression 'PaOssStream_Initialize( stream, inputParameters, outputParameters, streamCallback, userData, streamFlags, ossHostApi )' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/oss/pa_unix_oss.c', line: 1249
/tmp/nix-shell-13155-0/rc: line 1: 13173 Segmentation fault      (core dumped) audacity

The Program build localy. Maybe im holding it wrong.

@voidIess
Copy link
Contributor

oh nvm it destroys my users fontconfig I guess. after running audacity I have to delete ~/.cache in order to use my window system again. I think this is something which was allready discussed in another issue?

@voidIess
Copy link
Contributor

#97418

@vcunat vcunat changed the title audacity: gtk2 -> gtk3 audacity: 2.4.1 -> 2.4.2 Sep 26, 2020
@vcunat
Copy link
Member

vcunat commented Sep 26, 2020

When I start it, I'm getting

Fontconfig warning: "/etc/fonts/fonts.conf", line 86: unknown element "blank"
ALSA lib pcm_dsnoop.c:642:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1090:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_dmix.c:1090:(snd_pcm_dmix_open) unable to open slave
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
Expression 'stream->playback.pcm' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 4628
Expression 'stream->playback.pcm' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 4628
Expression 'stream->playback.pcm' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 4628

(audacity:13315): Pango-CRITICAL **: 10:09:25.200: pango_font_map_load_fontset: assertion 'fontmap != NULL' failed

(audacity:13315): GLib-GObject-CRITICAL **: 10:09:25.200: g_object_get_qdata: assertion 'G_IS_OBJECT (object)' failed

(audacity:13315): GLib-GObject-CRITICAL **: 10:09:25.200: g_object_replace_qdata: assertion 'G_IS_OBJECT (object)' failed

with the last pair of errors repeating very fast. The UI doesn't react. On one start it got further (shown a dialog) and segfaulted immediately.

EDIT: that's with log

Attempting to connect to Audacity failed...retrying
Fontconfig warning: "/etc/fonts/fonts.conf", line 86: unknown element "blank"
ALSA lib pcm_dsnoop.c:642:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1090:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2731:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_dmix.c:1090:(snd_pcm_dmix_open) unable to open slave
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
Expression 'stream->playback.pcm' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 4628
Expression 'stream->playback.pcm' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 4628
Expression 'stream->playback.pcm' failed in '/build/source/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c', line: 4628

(audacity:14333): Pango-CRITICAL **: 10:15:19.472: pango_attr_iterator_get_font: assertion 'desc != NULL' failed

(audacity:14333): Pango-CRITICAL **: 10:15:19.472: pango_font_description_get_set_fields: assertion 'desc != NULL' failed

(audacity:14333): Pango-CRITICAL **: 10:15:19.623: pango_attr_iterator_get_font: assertion 'desc != NULL' failed

(audacity:14333): Pango-CRITICAL **: 10:15:19.623: pango_font_description_get_set_fields: assertion 'desc != NULL' failed

@peterhoeg
Copy link
Member Author

So we're in a bit of a pickle here it seems.

  1. upstream recommends gtk2 as there are some cosmetic issues with gtk3
  2. upstream recommends wxgtk 3.1.x
  3. wxgtk 3.1.x recommends gtk3

I was running audacity with gtk3 and it was fine (apart from a few cosmetic glitches) - I'm guessing you were using the default gtk2 version @vcunat ?

@vcunat
Copy link
Member

vcunat commented Oct 2, 2020

Yes, I just used the plain audacity attribute.

@peterhoeg
Copy link
Member Author

peterhoeg commented Oct 2, 2020 via email

@vcunat
Copy link
Member

vcunat commented Oct 18, 2020

Appears to work OK for me. (though I almost don't use audacity)

@SuperSandro2000
Copy link
Member

@peterhoeg did you get around to do more testing? I'll mark the PR WIP until I hear back from you.

@peterhoeg
Copy link
Member Author

Now we have both a gtk2 and a gtk3 variant. Still default to gtk2 until upstream gives the go-ahead.

@vcunat
Copy link
Member

vcunat commented Jan 15, 2021

Note that changes in pname break nix-env quite a bit due to "audacity" and "audacity-gtk2" not being considered the same package, so I think it's better to minimize them. (Perhaps the default variant shouldn't have the suffix?) Based on your usage, you'll either miss the update or try to have both at once (which usually results into collision).

A few other things:
 - prep for transition to gtk3 when audacity recommends it
 - we drop the runtime linking with lame as audacity is picking it up on
   its own
 - on linux, add a number of missing dependencies.
 - use a newer (recommended) wxwidgets
 - add a patch (merged upstream) that makes audacity follow XDG for file locations
@peterhoeg
Copy link
Member Author

peterhoeg commented Jan 15, 2021 via email

@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.

Result of nixpkgs-review pr 97370 run on x86_64-linux 1

2 packages built:
  • audacity (audacity-gtk2)
  • audacity-gtk3

@peterhoeg peterhoeg merged commit 249db9f into NixOS:master Jan 16, 2021
@peterhoeg peterhoeg deleted the f/audacity branch January 16, 2021 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants