¿Cómo instalar un script de usuario privado en Chrome 21+?


60

En Chrome 20 y versiones anteriores, simplemente puede abrir cualquier .user.jsarchivo en Chrome y le solicitará que instale el script de usuario.

Sin embargo, en Chrome 21 y versiones posteriores, descarga el archivo en su lugar y muestra una advertencia en la parte superior que dice "Las extensiones, las aplicaciones y los scripts de usuario solo se pueden agregar desde Chrome Web Store".

Captura de pantalla

El enlace "Más información" apunta a http://support.google.com/chrome_webstore/bin/answer.py?hl=es&answer=2664769 , pero esa página no dice nada sobre los scripts de usuario, solo sobre las extensiones en .crxformato, aplicaciones y temas.

Esta parte sonaba interesante:

Administradores empresariales: puede especificar las URL que pueden instalar extensiones, aplicaciones y temas directamente a través de la ExtensionInstallSourcespolítica .

Entonces, ejecuté los siguientes comandos, luego reinicié Chrome y Chrome Canary:

defaults write com.google.Chrome ExtensionInstallSources -array "https://gist.github.com/*"
defaults write com.google.Chrome.canary ExtensionInstallSources -array "https://gist.github.com/*"

Lamentablemente, esta configuración solo parece afectar extensiones, aplicaciones y temas (como se dice en el texto), no los scripts de usuario. (He presentado un error pidiendo que esta configuración afecte también a los scripts de usuario).

¿Alguna idea sobre cómo instalar un script de usuario privado (que no quiero agregar a Chrome Web Store) en Chrome 21+?


¿Has intentado habilitar el modo desarrollador en Configuración -> Extensiones? No estoy seguro de si va a funcionar, pero puedes intentarlo.
Rhyuk

@Rhyuk Gracias por la sugerencia. Sin embargo, tenía habilitado el modo de desarrollador, no parece hacer la diferencia.
Mathias Bynens

Respuestas:


37

El problema era que gist.github.comlas URL sin formato redirigían a un dominio diferente. Entonces, tenemos que usar estos comandos en su lugar:

# Allow installing user scripts via GitHub or Userscripts.org
defaults write com.google.Chrome ExtensionInstallSources -array "https://*.github.com/*" "http://userscripts.org/*"
defaults write com.google.Chrome.canary ExtensionInstallSources -array "https://*.github.com/*" "http://userscripts.org/*"

¡Esto funciona!


De todos modos, esto parece ser una solución (gracias a Paul Horn por la pista):

  1. Descargue el script del usuario.
  2. Abierto chrome://chrome/extensions/.
  3. Arrastre y suelte el archivo de script de usuario en la página que abrió en el paso 2.

Esto parece mejor que tener que editar el comando utilizado para abrir Chromium. ¡Gracias!
btleffler

@btleffler Excepto que tendrás que saltar ese aro cada vez, en lugar de hacer el cambio una vez.
Eugene Beresovsky

NÓTESE BIEN. Al arrastrar y soltar, debe soltar el archivo exactamente en el mensaje. Cualquier otro lugar en la página no funcionará.
Coronel Panic

¿sigue funcionando la forma de arrastrar y soltar para agregar extensiones? No parece así en Chrome 24 en OSX.
Viktor

Vale la pena mencionar que github permite el alojamiento de contenido generado por el usuario en <nombre de usuario> .github.com (a través de "Páginas Github" - pages.github.com ). Solo un aviso para cualquiera para quien esto sea un problema de seguridad.
mh.

36

Inicie Chrome con el --enable-easy-off-store-extension-installinterruptor .

Para usar un interruptor de línea de comando ( de Chromium.org ):

En Windows:

  • Haga clic derecho en su icono de "Chrome".
  • Elige propiedades
  • Al final de su línea objetivo, coloque estos parámetros: --enable-easy-off-store-extension-install
  • Debería verse así: chrome.exe --enable-easy-off-store-extension-install

En OS X:

  • /Applications/Chromium.app/Contents/MacOS/Chromium --enable-easy-off-store-extension-install

  • Para Google Chrome, necesitarás escapar de espacios como este: /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --enable-easy-off-store-extension-install

En Linux:

  • chromium-browser --enable-easy-off-store-extension-install

1
Debe salir de Chrome por completo, no solo abrir una nueva ventana desde el icono. (Esto es basura de Google por cierto)
Jonathan.

1
Sí, esto está invadiendo el territorio "malvado" de la OMI.
jnylen

Esto funcionó ... :) La respuesta de @MathiasBynens no funcionó en MacOS / Chrome25
Lipis


1
Estoy bastante seguro de que esto dejó de funcionar en algún momento después de agosto de 2014. Parece que ahora no funciona en absoluto.
Brock Adams

10

Bueno, esto tomó un par de horas de mi vida para darse cuenta. Supongo que los ingenieros de Google piensan que solo merecemos instalar extensiones no confiables si podemos descubrir cómo hacer trucos y saltar a través de sus aros.

Las instrucciones en la respuesta de Mathias parecen ser perfectas para Mac OS X, pero yo uso Linux. Esto es lo que hice en Linux para permitir una instalación más sencilla (estilo anterior a Chrome-21) de todas las extensiones de terceros, aplicaciones y scripts de usuario desde cualquier sitio web :

  1. Cree el directorio de políticas (si aún no existe):

    sudo mkdir -p /etc/opt/chrome/policies/recommended/
    
  2. Cree el archivo de política:

    cd /etc/opt/chrome/policies/recommended/
    
    sudo tee easy_install_extensions.json <<EOF
    {
        "ExtensionInstallSources": ["<all_urls>"]
    }
    EOF
    
  3. Reinicia Chrome. Salga completamente del programa a través de menu -> Exit; no solo cierre su ventana actual.


Fuentes:

Notas:

  • <all_urls>(utilizado anteriormente) es un patrón especial de acuerdo con los documentos de coincidencia de URL . Es bueno saberlo.
  • Según los documentos de política de Linux , los directorios /etc/opt/chrome/policies/{managed,recommended}/contienen archivos de política JSON. Si las entradas entran en conflicto, se managedanulan recommended.

2
No lo sabía <all_urls>, muy útil. ¡Gracias!
Mathias Bynens el

Confirmado para trabajar en Fedora 18. ¡Publicación impresionante, extremadamente útil!
Ehime

¡Increíble! Arrastrar y soltar no funcionaba antes, ¡y ahora funciona!
billyswong
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.