audacity 2.0.3 - can't create tmp files

Gentoo AMD64 no-multilib profile
portage installed

checking its config status
~/.audacity-data/audacity.cfg

shows that as a normal user it’s trying to use /root/.audacity-data instead of the /home/username

Problem has occured starting with the stable 2.0.0 and ~amd64 (testing branch 2.0.1 and 2.0.3) upgraded in hopes it was an issue with an earlier version.

I’m also using ALSA as the sound system (stable with an intel-hd/Realtek chip)
build flags set are ALSA libsamplerate soxr mp3
Kernel is 3.4.35-LTS (kernel org) not the gentoo patched versions.

When attempting to start audacity - it pops up the message and segfaults as a normal user. Root can load it but it still doesn’t solve the issue with normal users. Daily user is in the audio group if that helps

Try deleting the audacity.cfg file and then start Audacity.
The audacity.cfg file will be recreated when Audacity successfully launches.

The default temp directory should be:
TempDir=/var/tmp/audacity-
(this should be set automatically unless an entry already exists in the audacity.cfg file)

That’s the problem - it’s popping the error message and then segfaulting - No Config file being created so I’m not sure what’s going on.

What is the exact error message?

How exactly are you launching Audacity?


Gale

Possible workaround: Make /var/tmp writeable for current user

If that is not an option: Copy /root/.audacity-data/audacity.cfg to /home/YOURUSERNAME/.audacity-data/audacity.cfg
and change the line TempDir=/var/tmp/audacity-root to TempDir=/tmp/audacity-YOURUSERNAME

/tmp should be writeable by you, if not you can point TmpDir= to somewhere that you have got privilegies.


To me this looks like a design flaw in audacity preference setup - it should check for permissions and select a safe bet when /var/tmp is not useable. However, I mjust may have messed up when building it…

On Ubuntu I consistently see a problem with trying to execute audacity as root, irrespective where the executable file is (“could not find a place to store temporary files”). I don’t have /root/.audacity-data/ and creating it does not prevent the problem.

I have never seen fastturtle’s issue. Does it occur if you compile Audacity with default ./configure?


Gale

Good question, I used ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib (old/bad habit)

I will do a clean ./configure make and get back to you. BTW, this is on a 64 bit Debian 6/Dreamlinux install - unlike Ubuntu, it has /root :slight_smile:

And yes, the message is “could not find a place to store temporary files”

Ubuntu has /root, but I don’t know how to access it in a terminal unless I do sudo bash first (I am not a power Linux user).


Gale

Same message after a clean build"

Audacity could not find a place to store temporary files.
Please enter an appropriate directory in the preferences dialog.

Then Segmentation fault.

Bottom line it is down to permissions. On my box regular users have read/write 1777 permissions on /tmp but only read 0755 permissions on /var/tmp
I have no idea if that is default for all the distros out there.

On Ubuntu /tmp/ and /var/tmp/ seem to both be 755 by default.

Launching Audacity as the user does not create the message about there being nowhere to store temp files, as long as /var/tmp/audacity-gale/ already exists. If it exists, I have to set 754 on /var/tmp/ (denying user execute permissions) to create the message. The folder properties in “Nautilus” calls permission 4 “list files only” whereas it calls 5 “access files”.

If /var/tmp/audacity-gale/ does not exist (as would be the case on a new installation of Audacity) and /var/tmp/ is 755, I see the message. But I don’t recall seeing that message on a new Audacity installation whenever I have fresh-installed Ubuntu.

Can you check if 755 on /var/tmp/ lets the user launch Audacity if /var/tmp/.audacity- exists?

The problem I have with launching Audacity as root is still there even if var/tmp/ is 777.

On Windows if you deny all access to the Audacity temp folder there is no warning on launch of Audacity. You receive a warning if you OK preferences, otherwise the only visible indication (without looking in the log) is that your audio keeps being silenced. :smiling_imp:


Gale

Yes, 755 on /var/tmp lets me launch Audacity as user bjornebe when /var/tmp/audacity-bjornebe already exists
Which makes sense - as long as user permission for /var/tmp is no lower than 5 then any already installed tmp-files should be accessible by the applications that put them there.

If memory serves me correct, Ubuntu has root setup in a special way to increase security - there is no root password available to the user, the system takes care of all root interaction via sudo - as a result there is no way to log in to root and consequently root will not act as a user and store files under /root. At least I have never seen anything stored in /root in Ubuntu - have not used it that much though.

If I run Audacity as sudo, the temp data is stored in /var/tmp/audacity-root/

On my Ubuntu 12.04 machine /root has its own Desktop (separate from my username’s Desktop) and hidden files and folders including a separate .profile.

Is this on Ubuntu or Debian?

I will check if I can run Audacity as root on my 12.10 Ubuntu install and report back.


Gale

So what should happen when the /var/tmp/audacity- does not exist? Should Audacity install that folder, which is done under root?

In any case, since Audacity throws that message after not finding anywhere to store temp files, it should open and not segfault, letting the user open Preferences as the message says.

Or it could create a temp folder in the user’s folder for Audacity data (~/.audacity-data/ on Linux) and throw a message to that effect. Perhaps it would offend Linux protocol, I don’t know.

So is this another, different issue in itself? Are username and root both you (fastturtle)?

And as I asked, how are you launching Audacity, from where?

And even if /root/.audacity-data was being used, is the temp dir still /var/tmp/audacity-root/ or something else?

If I understand it, NEKRO running as user is using /home/username/.audacity-data.



Gale

No. If I run my self-compiled build installed in /usr/local/bin as root, the message appears and Audacity quits.

The same happens if I run the Ubuntu “Daily Build” of Audacity installed in /usr/bin/ as root.


Gale

Debian.