Can log into website, but not via Picard

So it’s been a few months since I used Picard, and after a reinstall I can no longer log into my MusicBrainz account via the program. I can log in fine via the website, but Picard just keeps giving me “the server at musicbrainz.org [or beta.musicbrainz.org] requires you to enter your username and password” box.

This was a previously-working config from my laptop copied to my desktop. I’ve also tried with a completely fresh config and still get the same problem.

I’ve tried googling around and browsing the forums, but I haven’t seen any topics related to this; apologies if I’ve somehow missed them.

EDIT: Picard also isn’t respecting if I clear the “save username and password” box. It continues to push it to the config file, password lazily “encrypted” with ROT13 (!) no less. :frowning:

Picard switched to oauth, please login via the options menu. That password dialog should be fixed, I think there is a ticket about it.

2 Likes

I tried logging in via the options as well, to no avail. As soon as I close the options box I get the popup again.

What version was it fixed in? I’m running 1.3.2-5 from the Ubuntu repositories, perhaps that’s too old?
EDIT: So 1.3.2 is from Jan 6, 2015… but why is the official PPA still so far behind when the Windows version is on 1.4.2? Has Ubuntu become a second-class citizen or something?

Okay, so I managed to screw something up. I tried to install the latest version from Github, ran through all the installation BS (install pip, install pyqt5, etc etc) and finally got it compiled, but the new QT theme looks godawful against my GTK theme (why, devs why?) and I can’t get it to match.

So I fumble around trying to uninstall this like 150mb of packages that got pulled down to compile the damn thing because there’s no simple uninstall command and it doesn’t respect the package manager obviously. Finally get it all gone (so I think) and re-installed the old 1.3.2 version from the repository. Hey, it worked before, right?

WRONG.

Now not even the old version works. I’m getting the following error:

$ picard
Traceback (most recent call last):
  File "/usr/local/bin/picard", line 2, in <module>
    from picard.tagger import main; main('/usr/share/locale', True)
ImportError: No module named 'picard'

I imagine this has to do with some kind of screwed dependency, but I don’t even know where to begin and the only google result for this particular error is something from 2009.

Help?

Ubuntu, like pretty much all other Linux distributions, rely on volunteers to keep its packages updated. I don’t think there’s an active Picard packager for Ubuntu right now, and I have no idea how to approach Ubuntu about that. I think there’s a Picard PPA repository somewhere, but I’m not an Ubuntu user myself, so I can’t remember where it is (and last I looked, its builds were also somewhat outdated due to some infrastructure changes).

https://wiki.archlinux.org/index.php/Uniform_look_for_Qt_and_GTK_applications
That may or may not work for Ubuntu as well. If it doesn’t, I’m sure there’s a similar Ubuntu page somewhere.

pip uninstall didn’t work for you? Did you pip install as user or as root (using sudo)? (Hint: never sudo pip install…) If you installed as user (and pip uninstall doesn’t work), you should be able to remove everything in $HOME/.local/lib/python*/site-packages/ (unless you’ve pip installed some things you want to keep).

Picard isn’t installed properly, or your system is looking for it in the wrong location. What does which picard give you?

2 Likes

So I got this back:

$ which picard
/usr/local/bin/picard

I’ve removed every trace of the pip install I could find (which was part of my complaint because I ended up uninstalling pip before I realized I needed it to remove the compiled picard). The picard that’s installed now is the outdated one from my repo, which worked before I tried to compile the latest version. It’s still giving that error:

$ picard
Traceback (most recent call last):
  File "/usr/local/bin/picard", line 2, in <module>
    from picard.tagger import main; main('/usr/share/locale', True)
ImportError: No module named 'picard'

So it’s related to something that happened during the compilation, but it’s affecting the original version still. I’ve confirmed the executable is located in /usr/local/bin as expected.

I have the sneaking suspicion that maybe a reboot will fix things, but I can’t do that until tomorrow because I’m copying a bunch of old backups to a cloud NAS and it’s set to take another 13 hours.

/usr/local/bin/picard is something you’ve installed (probably from the failed install of the newer version), not from the Ubuntu package. The packaged one ought to be at /usr/bin/picard.

(In general, stuff you’ve installed w/o packages should be in /usr/local and nothing from packages, except empty directories, should be there.)

As @derobert says, this is a remnant of your pip install, which you 1) did not install as user, and 2) did not uninstall using pip. I honestly don’t know how to best recover from this. Maybe reinstall pip and reinstall the picard PyPI package, and then pip uninstall it.

I had previously reinstalled pip and did pip uninstall, but I guess something got messed up because it didn’t fix the problem. I ended up checking /usr/bin and found picard there, so I simply deleted the one in /usr/bin/local/ and that seems to have fixed the superficial issue; I can now start the old version of Picard normally.

There may be some cruft lying around still, but at this point I’m just satisfied that the old version works. I fired off an email to the repo maintainers, hopefully someone will pick up the torch on the Linux PPA. Until then I guess I’ll stick with 1.3.2 and not worry about logging in from the program.

The Ubuntu PPA was finally updated, so you can easily get the 1.4 version now:

2 Likes