Open walmartshopper opened 8 years ago
I have the same problem on windows 7 and my snes roms. I run the master branch, too.
2016-01-09 13:14:05,956 [DEBUG][steam_shortcut_synchronizer.py][sync_roms_for_user:99]: Saving shortcuts 2016-01-09 13:14:05,957 [ERROR][ice_engine.py][run:155]: An exception occurred while running Ice Traceback (most recent call last): File "ice\runners\ice_engine.py", line 153, in run self.main(dry_run=dry_run) File "ice\runners\ice_engine.py", line 133, in main self.run_for_user(user_context, dry_run=dry_run) File "ice\runners\ice_engine.py", line 148, in run_for_user self.shortcut_synchronizer.sync_roms_for_user(user, roms, self.config, dry_run=dry_run) File "ice\steam_shortcut_synchronizer.py", line 100, in sync_roms_for_user shortcuts.set_shortcuts(user, updated_shortcuts) File "C:\Python27\lib\site-packages\pysteam-1.0.0b2-py2.7.egg\pysteam\shortcuts.py", line 41, in set_shortcuts write_shortcuts(paths.shortcuts_path(user_context), shortcuts) File "C:\Python27\lib\site-packages\pysteam-1.0.0b2-py2.7.egg\pysteam\shortcuts.py", line 30, in write_shortcuts vdf_contents = ShortcutGenerator().to_string(shortcuts) File "C:\Python27\lib\site-packages\pysteam-1.0.0b2-py2.7.egg\pysteam_shortcut_generator.py", line 20, in to_string string = x00 + 'shortcuts' + x00 + self.generate_array_string(shortcuts) + x08 + x08 + x0a File "C:\Python27\lib\site-packages\pysteam-1.0.0b2-py2.7.egg\pysteam_shortcut_generator.py", line 29, in generate_array_string string += x00 + str(i) + x00 + self.generate_shortcut_string(shortcut) File "C:\Python27\lib\site-packages\pysteam-1.0.0b2-py2.7.egg\pysteam_shortcut_generator.py", line 35, in generate_shortcut_string string += self.generate_keyvalue_pair("Exe",shortcut.exe) File "C:\Python27\lib\site-packages\pysteam-1.0.0b2-py2.7.egg\pysteam_shortcut_generator.py", line 52, in generate_keyvalue_pair return x01 + key + x00 + value + (x00 if more else x08) UnicodeDecodeError: 'ascii' codec can't decode byte 0xfc in position 92: ordinal not in range(128)
Same issue here on Debian/SteamOS. Glad to know it's not the Debian package I made specifically.
My error:
[ERROR] An exception occurred while running Ice
Traceback (most recent call last):
File "ice/decorators.py", line 9, in wrapped
func(*args, **kwargs)
File "ice/runners/ice_engine.py", line 131, in run
self.create_backup(user, dry_run=dry_run)
File "ice/runners/ice_engine.py", line 104, in create_backup
backups.create_backup_of_shortcuts(self.config, user)
File "ice/backups.py", line 67, in create_backup_of_shortcuts
shortcuts.write_shortcuts(backup_path, shortcuts.get_shortcuts(user))
File "/usr/lib/python2.7/dist-packages/pysteam/shortcuts.py", line 30, in write_shortcuts
vdf_contents = ShortcutGenerator().to_string(shortcuts)
File "/usr/lib/python2.7/dist-packages/pysteam/_shortcut_generator.py", line 20, in to_string
string = x00 + 'shortcuts' + x00 + self.generate_array_string(shortcuts) + x08 + x08 + x0a
File "/usr/lib/python2.7/dist-packages/pysteam/_shortcut_generator.py", line 29, in generate_array_string
string += x00 + str(i) + x00 + self.generate_shortcut_string(shortcut)
File "/usr/lib/python2.7/dist-packages/pysteam/_shortcut_generator.py", line 37, in generate_shortcut_string
string += self.generate_keyvalue_pair("icon",shortcut.icon)
File "/usr/lib/python2.7/dist-packages/pysteam/_shortcut_generator.py", line 52, in generate_keyvalue_pair
return x01 + key + x00 + value + (x00 if more else x08)
UnicodeDecodeError: 'ascii' codec can't decode byte 0x90 in position 60: ordinal not in range(128)
This is an issue with pysteam. I encountered this problem as well and made an issue about it. One thing to mention right away is that, since Ice has to re-create the shortcuts.vdf file, this problem could occur due to a non-Steam app shortcut that you have created; your ROMs might not be causing the problem. The problem for me was due to a custom non-Steam app shortcut for the game Star Wars: Dark Forces. In my case, a Registered Sign symbol (U+00AE) is used in the game name (STAR WARS®: Dark Forces).
https://github.com/scottrice/pysteam/pull/7
Unicode Character 'REGISTERED SIGN' (U+00AE)
Thank you very much @Ryochan7. This explains why I didn't get this before as it was likely a clean install still needs fixed, but I'll do a clean install soon to confirm. I'll susbcribe to the issue you linked. I had thought my pysteam packaging was wrong, as it worked before. I actually debianized all the pypi packages per the required versuons, using py2dsc.
I'll test this PR you made with my fork.
@Ryochan7 @scottrice , the fix Ryochan proposed was actually kind of implemented in an old commit (b1b1f08), when the structure of Ice was a bit different. Looks like the change never migrated, or was deemed not necessary.
Update:
PR fix by @Ryochan7 does indeed work. Just tested this now against my SteamOS package. I patched it into my fork.
I am trying to run the master branch on Arch Linux. When I run python2.7 -m ice I get the following output:
=========== Starting Ice =========== Detected Emulator: Dolphin Detected Console: Nintendo Wii => Dolphin =========== User: 37281274 =========== [ERROR] An exception occurred while running Ice Traceback (most recent call last): File "ice/runners/ice_engine.py", line 153, in run self.main(dry_run=dry_run) File "ice/runners/ice_engine.py", line 133, in main self.run_for_user(user_context, dry_run=dry_run) File "ice/runners/ice_engine.py", line 145, in run_for_user self._create_backup(user, dry_run=dry_run) File "ice/runners/ice_engine.py", line 167, in _create_backup shortcuts.write_shortcuts(backup_path, shortcuts.get_shortcuts(user)) File "/usr/lib/python2.7/site-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/shortcuts.py", line 30, in write_shortcuts vdf_contents = ShortcutGenerator().to_string(shortcuts) File "/usr/lib/python2.7/site-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 20, in to_string string = x00 + 'shortcuts' + x00 + self.generate_array_string(shortcuts) + x08 + x08 + x0a File "/usr/lib/python2.7/site-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 29, in generate_array_string string += x00 + str(i) + x00 + self.generate_shortcut_string(shortcut) File "/usr/lib/python2.7/site-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 37, in generate_shortcut_string string += self.generate_keyvalue_pair("icon",shortcut.icon) File "/usr/lib/python2.7/site-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 52, in generate_keyvalue_pair return x01 + key + x00 + value + (x00 if more else x08) UnicodeDecodeError: 'ascii' codec can't decode byte 0x84 in position 109: ordinal not in range(128)
Close the window, or hit enter to exit...
These are all my rom file names, nothing non-ascii in them:
/s/games/wii/roms/Skyward Sword.iso /s/games/wii/roms/DKCR.iso /s/games/wii/roms/Mario Galaxy.iso /s/games/wii/roms/Metroid Prime 3 Corruption.iso /s/games/wii/roms/Goldeneye 007.iso /s/games/wii/roms/Mario Galaxy 2.iso /s/games/wii/roms/Twilight Princess.iso