I receive the below error when running layman-updater per the migration guide (https://wiki.gentoo.org/wiki/Project:Portage/Sync#Migration): Traceback (most recent call last): File "/usr/lib/python-exec/python2.7/layman-updater", line 30, in <module> main() File "/usr/lib64/python2.7/site-packages/layman/updater.py", line 88, in __call__ elif not self.check_is_new(): File "/usr/lib64/python2.7/site-packages/layman/updater.py", line 99, in check_is_new if not os.access(self.config[conf], os.F_OK): TypeError: coercing to Unicode: need string or buffer, NoneType found
Please post your `emerge --info app-portage/layman' output in a comment.
Can you please attach a copy of your layman.cfg please. It is easy enough to test for conf to not be None, but it should not have been None to begin with.
Actually, no need for more info. I've traced the problem. In the wiki I didn't put a space between them, the code was looking to split on ', ', not just ','. No worries we're changing that to split on the ',' only and trim any spaces.
... I am having a number of problems with this migration process pertaining to layman-updater. The first major issue is described by this bug. After that, however, are the following: layman-updater will crash with system default python at version 3.x instead of 2.x (forcing layman-updater to use 2.x would be superior); layman-updater will crash if the "/etc/portage/repos.conf" directory doesn't exist; if repos.conf directory DOES exist, layman-updater will crash after creating an empty repos.conf/layman.conf, and running layman-updater a second time after that will still leave an empty layman.conf, but with the apparently non-crashy output: * Automatic db rename: db already updated: /var/lib/layman/installed.xml Additionally there are a number of typos in the wiki migration guide, and not much explanation as to why we need to migrate anything at all beyond an apparently new Portage plug-in system. Shall I create a multitude of new bugs for all these things, or can we just rename this one to "Horribly Broken layman-updater Makes Apparently Necessary Migration as Per News Item Extraordinarily Difficult and/or Painful"? Either that or my Python is so broken as to provide proof of the existence of the Devil himself or something stupid like that.
(In reply to Michael Rowell from comment #4) > ... I am having a number of problems with this migration process pertaining > to layman-updater. The first major issue is described by this bug. After > that, however, are the following: > > layman-updater will crash with system default python at version 3.x instead > of 2.x (forcing layman-updater to use 2.x would be superior); layman-updater > will crash if the "/etc/portage/repos.conf" directory doesn't exist; if > repos.conf directory DOES exist, layman-updater will crash after creating an > empty repos.conf/layman.conf, and running layman-updater a second time after > that will still leave an empty layman.conf, but with the apparently > non-crashy output: > > * Automatic db rename: db already updated: /var/lib/layman/installed.xml > > Additionally there are a number of typos in the wiki migration guide, and > not much explanation as to why we need to migrate anything at all beyond an > apparently new Portage plug-in system. Shall I create a multitude of new > bugs for all these things, or can we just rename this one to "Horribly > Broken layman-updater Makes Apparently Necessary Migration as Per News Item > Extraordinarily Difficult and/or Painful"? > > Either that or my Python is so broken as to provide proof of the existence > of the Devil himself or something stupid like that. Which version of layman are you using? If it's not the -9999 version then I suggest you stave off the migration until the next official release as the previous version still had some bugs in it with handling repos.conf (my own fault). If you ARE using the -9999 version, I suggest you re-emerge it as we've been pushing some fixes to the branch within these past few hours.
(In reply to Devan Franchini from comment #5) > (In reply to Michael Rowell from comment #4) ... > > Which version of layman are you using? If it's not the -9999 version then I > suggest you stave off the migration until the next official release as the > previous version still had some bugs in it with handling repos.conf (my own > fault). If you ARE using the -9999 version, I suggest you re-emerge it as > we've been pushing some fixes to the branch within these past few hours. 2.2.0-r7. Guess I'll hold off for now. Someone pushed a news item a little early, eh? I see the wiki is getting updated with additional information, at least. Thanks for all your hard work.
Expect to see a new release soon. It's mostly ready, we're just ironing out a few wrinkles haha
No, I don't think I pushed it out too soon. It stopped getting feedback on the gentoo-dev mail list, the wiki had been reported as being nearly there. But the only way to get all the wrinkles out is to give it more exposure, so more people can expose the weak spots. When you know how it is suppose to be done, it is much harder to figure out how people that don't will screw up/misinterpret, ... ;) So, I sent out the news item. The first people that would work on it would be the ~arch users with a little more experience and daring. That will get more wrinkles exposed and fixed, just like it has in this bug. That is also one of main the reasons ~arch exists. If I had released the package bumps today as well, THAT would have been premature and caused more grief. Once things have settled down at this stage, I will release the actual versions of portage and layman that required the changes. In the meantime, existing portage may just complain a bit about some extra settings in the repos.conf files.
Trying this again with the updated guide (app-portage/layman-2.3.0 and sys-apps/portage-2.2.16), and I'm receiving a different error. ~ layman-updater -R layman-updater -R usage: layman-updater [-h] [-H] [-c CONFIG] [--version] layman-updater: error: unrecognized arguments: -R
Scratch that. I misread my log file. I'm not on layman-2.3.0 yet. I'm having a compiling issue at the moment. I'll report back after I get that figured out.
2.4.1 is out which resolves this issue, therefore, I'm resolving the bug.