You are here

Google Chrome Portable "Tweaks, Bug Fixes, New Features" Edition

18 posts / 0 new
Last post
The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Google Chrome Portable "Tweaks, Bug Fixes, New Features" Edition

Application: Google Chrome
Category: Internet
Description: "Google Chrome runs web pages and applications with lightning speed."

Download Google Chrome Portable Stable Branch 3.0.193.33 Development Test 1 [1MB download / 34MB installed]
(MD5: 09FB9FB446DD7EADE2446725FD987A9B)

Download Google Chrome Portable Beta Branch 4.0.223.16 Revision 2 Development Test 2 [1MB download / 34MB installed]
(MD5: 09FB9FB446DD7EADE2446725FD987A9B)

Download Google Chrome Portable Dev Branch 4.0.245.0 Development Test 1 [1MB download / 34MB installed]
(MD5: A0F5570676E966B5AD52373F15B7E4D3)

I updated the Stable and Dev versions but other than that this is just tweaks to the launcher source to get it ready for another official release. Since it was such a small update I've just edited this thread instead of making a new one.

Known Bugs:

Note that these bugs ARE present in the latest official release. "Next release" in this list refers to the next Development Test release as well as of course any official releases which use that as a base.

  • Saved passwords will not be preserved between user accounts/computers. This is due to how Chrome encrypts passwords using data unique to the local user account. I am considering how to fix this. For now, you can try an unofficial Chrome extension such as LastPass which implements similar password storage, or use an external solution such as KeePass Portable.
  • If you use an NTFS junction to store your local Chrome profile on a different drive, read on. Otherwise, or if you don't know what I'm talking about, this bug will not affect you. If you have such a junction set up on the "User Data" directory of a local Google Chrome, be aware that NSIS' "RMDir" does not recognize or support junctions and will perceive them as empty directories. GCP's launcher will remove an empty "User Data" directory, as it assumes the portable Google Chrome created it. However if "User Data" is a junction this results in the junction being deleted, causing the local Google Chrome to create a new profile. Your data has not been lost, you will simply need to recreate the junction to restore your local profile.
  • After closing Google Chrome, an error may appear saying rlz.reg could not be imported. This error is harmless, does not affect the operation of GCP, and only occurs if there is no locally installed version of Chrome. It will be fixed with the next release.
  • If you run GCP from a network share (not supported by PA.com), GCP will lose theming, extensions, and preferences between runs. This is due to a bug in the Preferences rewriting code and should be fixed by next release. To work around it, map the share to a drive letter and run GCP from there.
  • Extension support may not be present in the Beta branch of Chrome, even though my documentation indicates that it is. If you cannot get it to work, use the Dev branch if you wish to try extensions.

Release Notes:

2.0.1.0

  • Updated Stable to 3.0.195.33 and Dev to 4.0.245.0
  • Fixed launcher compile warnings.
  • Splash screen can now be removed from the launcher by commenting out an !define.
  • It was possible that, if a problem occurred restoring the local RLZ registry key, the portable RLZ data would not be wiped. The portable RLZ data is now always wiped.
  • Updated docs to reflect that the 4.0 beta does not have extensions enabled by default and needs the command line switch.

2.0.0.0

  • Updated Stable to 3.0.195.32, Beta to 4.0.223.16, Dev to 4.0.237.0
  • Using new versions based on launcher versions rather than Google Chrome versions.
  • Default locations for Beta and Dev builds changed to "GoogleChromePortableTest" and "GoogleChromePortableDev" to fit with PAF.
  • Fixed bug where themes would stop working when GCP's path or drive letter changed.
  • Added support for PortableApps.com Menu language selection. Set UsePAMLanguage to false in the INI to use the user-selected language in Chrome instead.
  • On request of PA community, did more agressive cleanup of registry keys and directories left behind after quitting.
  • Backup and restore local Chrome's unique identifier information used for collecting usage data.
  • Updated launcher crash cleanup guide.

digitxp
digitxp's picture
Offline
Last seen: 13 years 2 weeks ago
Joined: 2007-11-03 18:33
Unique Identifier

Backup and restore local Chrome's unique identifier information used for collecting usage data.

Uh... is that a good thing? Wink
Anyway, I'm testing it out... I forgot to run Regshot... and I picked the beta one up... but it runs... Smile

Insert original signature here with Greasemonkey Script.

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Well SRWare's Iron removes

Well SRWare's Iron is a custom build that removes that stuff from Chrome for the privacy concerns. Basically Chrome sends some usage data to Google with a unique ID. It can't be linked to any specific individual (IE you) though.

But it looks like the ID data for the local Chrome and Google Chrome Portable running on that same local machine may end up being the same anyway. Oh well, it's backed up and restored anyway, just in case.

John suggested I backup and restore it, which was based off of a report made by a PA community member about registry keys I was missing (I first suggested nuking the local usage data/id but John suggested otherwise).

And by the way, it's only the local Chrome data that is preserved. Google Chrome Portable wipes the usage data/id that is generated by the portable Chrome, since it's just regenerated anyway and not critical to Chrome's functioning.

Signature automatically removed for being too awesome.

John T. Haller
John T. Haller's picture
Offline
Last seen: 8 hours 14 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Couple Launcher Bugs

I checked it and there are some issues with the launcher. The main issue is that you get two warnings of non-existent labels. These are auto-generated LogicLib labels which means you have Ifs, Elses and/or Ends mismatched, which is an issue. It's best to make sure you watch all warnings in compilation in NSIS and eliminate them all.

Secondly, remove all the logic for the splash screen as we're not gonna be using one for Google Chrome.

Sometimes, the impossible can become possible, if you're awesome!

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Gah, I thought those warnings

Gah, I thought those warnings might have just been a byproduct of LogicLib. Guess not. :X

[Edit: Seems like they WERE (possibly a bug in LogicLib). having a ${Select} without a ${CaseElse} causes them, the code was working fine. I've added a ${CaseElse} to both ${Select}s anyway to suppress the warnings.]

Splash screen logic is just for the dev tests which SHOULD have splash screens... right? At least, your "Apps Ready For Official Release, Post Here" thread* says they should. I'll add a !define and some !ifdefs to make it easier to switch the splash screen on and off when building. Unless GCP should have an exception due to its fast start up time or something and I can just ditch the splash entirely.

Oh yeah I bumped the launcher version to "2.0", since I figured there were enough changes in the launcher to warrant it. Or is there some numbering system I'm not aware of that you were following by assigning "1.6.1.0" in the first place?

* - In searching for this thread, I found another thread that lays out how to properly post a Development Test thread. Oops. I also discovered that the thread with the splash screen was also the one that I was supposed to post in if I had an app ready for official release. Oops x2.

Signature automatically removed for being too awesome.

John T. Haller
John T. Haller's picture
Offline
Last seen: 8 hours 14 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Ok

Add in the splashscreen ifdefs and repost it and I'll push the release out once you're happy with it, too.

Sometimes, the impossible can become possible, if you're awesome!

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Reposted. I am happy with

Reposted. Smile I am happy with it. Smile

Signature automatically removed for being too awesome.

OliverK
OliverK's picture
Offline
Last seen: 3 years 3 months ago
Developer
Joined: 2007-03-27 15:21
I hate to burst the bubble

I hate to burst the bubble but I still seem to be having a problem with passwords being remembered

I know, I never actually posted that. Themes are working now, and passwords seem to be remembered.

Too many lonely hearts in the real world
Too many bridges you can burn
Too many tables you can't turn
Don't wanna live my life in the real world

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Passwords will be forgotten

Passwords will be forgotten between local user accounts/computers. Chrome uses a Windows API to encrypt/decrypt passwords that uses the local user account. Passwords will thus not decrypt successfully when you move to a different computer or user account. Sad

Fixing this would require major SQLite hax (and there is no SQLite library for NSIS that I can find) and probably keeping passwords stored in plaintext (or close to it).

A workaround would be to use a Chrome extension such as LastPass which implements the same behavior but doesn't suffer from the same bug. Or you can use an external tool such as KeePass Portable.

Signature automatically removed for being too awesome.

OliverK
OliverK's picture
Offline
Last seen: 3 years 3 months ago
Developer
Joined: 2007-03-27 15:21
That is major fail. Okay,

Shock
That is major fail. Okay, well, yeah. One password didn't, and the other did.
So, uh, carry on?

I think there's some in songbird.(SQL tthat is)

Too many lonely hearts in the real world
Too many bridges you can burn
Too many tables you can't turn
Don't wanna live my life in the real world

John T. Haller
John T. Haller's picture
Offline
Last seen: 8 hours 14 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Correct

Songbird contains a SQLite updating implementation we came up with to update the Songbird database for drive letter changes. I saw the logins stored in the Web Data SQLite DB within Chrome, but I didn't see the passwords anywhere (even encoded).

Sometimes, the impossible can become possible, if you're awesome!

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Hmm I'll have to look at that

Hmm I'll have to look at that then, for a future release of GCP. The passwords are encrypted with a single API call so it wouldn't be hard to decrypt them after Chrome exits, and re-encrypt them when starting up Chrome again.

[Edit: Whoops, I forgot it's AutoIt that can do C DLL calls real easy. I'll need to look into how to make that API call I guess. Maybe there's an NSIS plugin that implements it.]

Signature automatically removed for being too awesome.

John T. Haller
John T. Haller's picture
Offline
Last seen: 8 hours 14 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
NSIS

NSIS can do WINAPI calls easily as well. We use them in a few launchers.

Sometimes, the impossible can become possible, if you're awesome!

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
SQLite support is part of

SQLite support is part of XULRunner AFAIK (or at least, it's part of Firefox) so products based on it (Firefox, Thunderbird, Songbird) can (and do!) use SQLite databases. Smile

Signature automatically removed for being too awesome.

Chris Morgan
Chris Morgan's picture
Offline
Last seen: 9 years 3 months ago
Joined: 2007-04-15 21:08
Correct

xulrunner\sqlite3.dll. Currently Songbird uses App\SQLite\sqlite3.exe, but I've proposed that we switch it from using nsExec::Exec to System::Call on xulrunner\sqlite3.dll some time... I've just got to work out how to do it Blum

I am a Christian and a developer and moderator here.

“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Ah so you're "cheating".

Ah so you're "cheating". Wink I'll look at the DLL too then when I go to write my own SQLite stuff.

[Edit: Oops, I forgot, Chrome STATICALLY LINKS SQLite. So I'll need an extra file either way.]

Signature automatically removed for being too awesome.

somora2
Offline
Last seen: 14 years 10 months ago
Joined: 2009-11-20 11:12
doesn't work at all. "cannot

doesn't work at all.
"cannot import ...\rlz.reg" error.
same with all versions

The MAZZTer
The MAZZTer's picture
Offline
Last seen: 1 year 8 months ago
Developer
Joined: 2006-11-17 15:31
Oops, I think I know why

Oops, I think I know why that's happening. It is because I am an idiot! Biggrin

The error is harmless and will only occur on systems without a locally installed Chrome. It doesn't affect anything.

I've already fixed it for the next release.

Signature automatically removed for being too awesome.

Log in or register to post comments