How to apply a fix to an installed chrome extension? - google-chrome

I am using a popup blocker named JavaScript Popup Blocker.
Sometimes this extension becomes broken, I have to reinstall it (e.g. it breaks when I add a website with a URL like http://xxxx:6666/).
Today, it happen again and I decided to fix the error (last update is in 2013, it seems that author would not fix this error in future). I found the extension folder by chrome extension ID, and made some changes to the source code.
But Chrome says this extension is broken and needs fixing after I restart Chrome. I even repacked the extension and installed again, it still doesn't work.

Ok, I found the answer myself.
Remove key in manifest.json, remove the _metadata folder as well(as Xan suggest), then repack the extension.
Then Chrome would not say this extension is broken after installing.

Related

google-chrome: making the start page be an extension (not an app)?

Is there any way to start up the google-chrome browser so that an extension (not an app) gets launched as its start page?
I know I can do the following, but it only works if app-id refers to an installed app, not an installed extension ...
chrome --app-id=XXXXXXXXXXXXXXXXXXXXX
If the specified app-id is the ID of an installed extension (not an app), then chrome doesn't launch it.
Is it even possible to launch an extension as chrome's start page?
Thank you in advance.
CORRECTION: I am referring to the start page, and I have clarified the wording of this question accordingly.
I figured out how to do it, with the help of wOxxOm ...
chrome chome-extension://XXXXXXXXXXXXXXXXXXXXX/index.html
This works for all extensions that have some sort of HTML page for their startup. For the extension I'm dealing with, this is index.html, but different extensions might have different HTML startup pages.
I see now that the URL with the reference to the HTML file is simply the extension ID followed by a slash, followied by the HTML file name. I was previously trying it incorrectly with the extension's version number as part of the path.
And to be clear, some extensions do not have HTML startup pages, and they therefore cannot be invoked in this manner.

Chrome extension uninstall URL not working in all cases

I track my extension uninstalls using the method chrome.runtime.setUninstallURL
It has been working fine for months but recently I noticed that if I remove the extension from the Chrome Webstore page (e.g. https://chrome.google.com/webstore/detail/{ext_name}/{ext_id}), then the uninstall URL is not opened.
Has something changed in the runtime API? Is this now expected behaviour?
The bug was reported by the original question author and is tracked at issue 900554.
Judging from the fact that it required a bisect, it's a bug in Chrome's integration with Web Store (since Chrome 67), not Web Store itself.

Links in Google searches and Inbox mails get rewritten to lnkr.us

I have switched off every extension except uBlock Origin (edit: now I tried disabling that too) and this still happens: links in Google searches and Inbox mails get rewritten to lnkr.us. I have checked with developer tools and this is not in the HTML source. This happens on click. Then uBlock Origin brings up the "document blocked" tab, I close it and if I click again, it goes straight to where it should. I am quite clueless as to what can cause this. I have seen others complaining and pinning it on this extension or that but as I said: I have disabled all my extensions. I am on Linux and hopefully malware free.
Looks like this:
https://lnkr.us/get?sourceId=5&uid=50639x1413x&format=go&host=icontent.us&out=http%3A%2F%2Flink.freedompopaccount.com%2Fu.d%3FZ4GuEv3xXUytsV84j81iW%3D3361&ref=https%3A%2F%2Finbox.google.com%2Fu%2F0%2F
A most curious example of this is:
http://mail-archives.apache.org/mod_mbox/httpd-users/201601.mbox/%3CCA+gyi+0DXFUBw5NYoyKFsvn-zxJ_65KJS_S8UxSHgHzSqsfNUQ#mail.gmail.com%3E
where the mangled URLs got into the mailing list archive.
Another is:
https://www.reddit.com/r/urbanplanning/comments/471v0k/the_distorted_dna_of_your_community/
The real question is: how can I debug what happens. I can read C, I have used gdb but I am no master of it to say the least.
Edit: nothing unusal on chrome://plugins either.
Edit2: sometimes it's icontent.us ; apparently that has been there for a year now, check https://twitter.com/baio1980/status/557236850486960128 the link there.
Edit3: I think this doesn't happen in Incognito mode so it might be an extension still but how can an extension stay alive after ticking it off on the Extensions screen?
Edit4: I have created a new ~/.config/google-chrome directory , disabled syncing extensions, reinstalled all my extensions and this doesn't happen now. My apps and plugins are the same.
I have created a new ~/.config/google-chrome directory , disabled syncing extensions, reinstalled all my extensions and this doesn't happen now. My apps and plugins are the same.

Is it possible to have a customizable Chrome (or Chromium) installation file?

I added two extensions to my google chrome that I want to send to some extern users, which are not "technical" people (I mean that they don't have IT skills). Instead of showing them how they can download and add an extension to their google chrome, I want to simplify this task by sending them an installation file of chrome (or chromium) which already contains these two extensions. So, in this case, the only thing that they have to do is just to do a normal installation (with the .exe file since they use only windows) like there are installing a normal google chrome! After that, they will have a chrome which already includes these two extensions.
Can you tall me how can I do that? because I have no idea of it..
Thank you!!
Chrome has instruction for doing this here: https://developer.chrome.com/extensions/external_extensions. You should be able to do it via a registry addition.
Note, as of Chrome 33, you will need to publish the extension to the store, and you just add update urls. Chrome does not allow installation otherwise for security reasons.

How to make Google Chrome recognize this extension as a new extension

I had a chrome extension built for me and it helps me publish to my wordpress with ease. The problem is that I have a few websites that I would like to use the same extension for which involves nothing more than changing the URL in the extension's settings.
The real question
Assuming I made 3 copies of the same extension, what changes must be implemented in each one to make Google Chrome recognize it as a different extension? Right now, if I change certain attributes in the manifest, Chrome will still recognize it as the original extension and will want to replace the extension I already have installed.
I hope this makes sense. Apparently someone didn't understand what I was talking about so I broke it down. Hope someone can help me out.
I'm only guessing, but I would think that it would be the name field found in the manifest.json file. In theory, if you are managing your own .crx file (for packaged extensions), I guess Chrome could use the name of that file as well. And finally, if you are signing your extension and making it available through the market, the cryptographic signature could be used as well (the .pem being created when you package your extension).
So no real answer, but I believe it must be one of these three (name in manifest, name of crx file or cryptographic signature). If you test it and figure out, be sure to share!