ruby - run - ¿Cómo puedo instalar Jekyll en OSX 10.11?
jekyll with bundle (9)
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/jekyll
Recibo un error de permiso al intentar instalar Jekyll. Actualmente estoy ejecutando OSX 10.11 (El Capitan). También tengo Xcode 7 y he instalado las herramientas de desarrollador. ¿Hay alguna solución alternativa o es un problema específico del sistema operativo?
Tratar :
sudo su
Ingrese su contraseña, intente nuevamente como root gem install jekyll
Me encontré con el mismo mensaje de error.
Resuelto para mí instalando ruby de brew.
sudo nvram boot-args="rootless=0"; sudo reboot
reboot
sudo gem install jekyll -V
cd into directory
jekyll serve --watch
Apple ha agregado la Protección de Integridad del Sistema (SIP) para aumentar la seguridad. Esto significa que Jekyll se ha visto afectado ya que usa la instalación predeterminada de Ruby. Más detalles sobre SIP .
Para evitar esto, otros usuarios han estado instalando la versión de Homebrew. También es probable que Jekyll v3.0 empiece a usar esta versión también.
Instale las utilidades de la línea de comando de Xcode:
xcode-select --install
Instalar Homebrew (instrucciones en http://brew.sh )
Modifique
$PATH
para usar Homebrew:export PATH=/usr/local/bin:$PATH
Modifique
$PATH
para aplicaciones GUI:launchctl setenv PATH "/usr/local/bin:$PATH"
Instala el último Ruby:
brew install ruby
Instale el último Jekyll:
gem install jekyll
Este es un efecto secundario de la nueva característica sin raíz de Apple (también conocido como Protección de Integridad del Sistema o SIP) en OS X El Capitán, pero no afecta a / usr / local / bin .
Puede intentar lo siguiente:
sudo gem install -n /usr/local/bin/ jekyll
Esto le dice a joya que instale Jekyll en una carpeta que no está protegida por SIP, en lugar de la ubicación protegida predeterminada en /Library/Ruby/Gems
.
Esta es la solución sugerida por los desarrolladores de Jekyll .
No instale Jekyll con Homebrew, se desconoce la seguridad de Homebrew: https://security.stackexchange.com/questions/105088/osx-homebrew-security-risks
Así es como lo instala sin homeBrew: con un vanip OSX el cap: http://digitalshore.io/how-to-install-jekyll-mac-os-x-el-capitan/
Actualización 1:
El único inconveniente es que debe escribir su contraseña cada vez que usa sudo, lo que no es un gran problema. Prefiero hacerlo que instalar más dependencias. Deberías alojar tu configuración de Jekyll en Github de todos modos, de esa forma no tendrás que lidiar con la línea de comando. Aquí está mi artículo sobre cómo configurar Jekyll con github: http://stylekit.org/blog/2016/01/06/The-Jekyll-Setup/
Actualización 2:
Desde entonces hice un video tutorial de 30 segundos sobre cómo configurar un blog jekyll en github: https://vimeo.com/154566844
La nueva versión de El Capitán de OS X tiene una nueva tecnología llamada SIP que no permitirá a los usuarios (incluso cuando usan sudo
) escribir en la carpeta /usr/bin
. Esto rompe el proceso de instalación. Puede desactivar SIP , pero preferiría mantenerlo puesto ya que proporciona protección contra cosas malas.
SIP permite escribir en la carpeta /usr/local
así que lo que hice fue instalar Ruby manualmente usando brew y luego instalar jekyll. Eso funcionó bien.
sudo brew install ruby
Parece que esto era un problema específico del sistema operativo. Encontré un problema similar aquí, y la respuesta que encontré aquí ayudó a resolver el problema: no se pueden instalar los módulos de cacao después de la desinstalación, lo que da como resultado un error
Si no puede hacer que funcione, siempre puede probar Cloud9.
Cloud9 ofrece un entorno de desarrollo completo en la nube (ejecutando Linux). Su IDE también es bastante bueno y sus entornos también son muy útiles para la colaboración. Configurar Git es realmente simple (usando el comando ''git clone''). Con Cloud9 podrá trabajar desde cualquier computadora con un navegador, sin instalar nada.
- crea una cuenta gratuita en Cloud9 ( https://c9.io )
- crea un proyecto vacío (Ubuntu) y sigue estos pasos:
- escriba en la línea de comando: gem install jekyll
- crea un archivo _config.yml vacío en la raíz
- crea un archivo index.md en la raíz
- escriba en la línea de comando: servicio de jekyll --host $ IP --port $ PORT --baseurl ''''
- su sitio web ahora se está ejecutando ''localmente'' en Cloud9
El contenido de su archivo index.md:
---
title: Home
---
Hello world!
Con Cloud9 puedes desarrollar en Linux y sentirte como un profesional. ¡Intentalo! Lo amarás.