sábado, 8 de septiembre de 2018

Establecer permisos a la carpeta HTDOCS en XAMPP Linux


Al instalar XAMPP en Fedora, viene con permisos preestablecidos, dichos permisos son para el correcto funcionamiento, y sólo se asigna el permiso que corresponde, ya que los demonios lanzados para el servidor apache, requiere de acceso a algunas funciones del SO, por lo tanto no es recomendable asignarle permisos más de los que necesita.


Sin embargo, si en el usuario en el que se esté modificando un desarrollo web, no tiene los permisos correctos, no es posible guardar los cambios, crear directorios, etc., en pocas palabras, es necesario asignarle ciertos permisos al directorio htdocs.

El directorio htdocs almacena los desarrollos que creados por uno mismo, y es en esta carpeta donde se deben colocar dichos archivos.

En mi caso particular, me gusta crear un enlace de la carpeta htdocs, que se instala en /opt/lampp/htdocs/ y en mi carpeta personal con el nombre de www 

Con el siguiente comando se realiza lo siguiente:

sudo ln -s /opt/lampp/htdocs /home/linuxitos/www

Listo, ahora ya se tiene un enlace al directorio htdocs, ésto facilita porque no es necesario ir /opt/lamp/htdocs, para realizar alguna modificación.

1.- Es recomendable asignar los permisos requeridos por cada proyecto desarrollado, y no asignar los permisos directamente sobre todo el directorio de www (recordar que www es un enlace a htdocs).

2.- Los permisos deben asignarse por defecto al grupo y al usuario, para que sea posible crear directorios desde el desarrollo, en caso de ser necesario, o si se requiere subir archivos.

Por default, el grupo y usuario de xampp al instalarlo es daemon, por lo tanto, se asignaría de la siguiente manera:

Entrar a www

cd ~/www
Asignar el grupo y usuario que puedan modificar el directorio del proyecto.

sudo chown -R daemon:linuxitos developer_dir

Asignar los permisos al directorio del desarrollo:

sudo chmod -R 775 developer_dir

Con esos permisos se podrá modificar los archivos, crear directorios, y sub directorios que sean necesarios.

De éste modo, es posible editar los archivos desde algún editor de texto el contenido del desarrollo, sin ningún problema.

En caso de que no se le asignen éstos permisos, u algún otro permiso, al querer guardar los cambios realizados sobre algún archivo del proyecto, siempre pedirá la contraseña del usuario para guardar los cambios (ver imagen de abajo):




Alguno podrán decir que es más fácil asignar permisos 777 y ya, pero las buenas prácticas siempre son bienvenidas.

Además, no quiero imaginar lo que pasaría si al servidor en producción se suben archivos con permisos de ejecución o cosas por el estilo.


Cualquier comentario o corrección son bienvenidos, como siempre he dicho, "en gustos se rompen géneros".

Algunas fuentes revisadas:

miércoles, 5 de septiembre de 2018

Usar fuentes desde archivo otf en LaTeX


Usar otro tipo de fuente en los documentos elaborados con LaTeX,es una necesidad bastante usual. Aquí una manera fácil de hacerlo.

Agregar tipos de fuentes al documento agregando el archivo otf al proyecto, tiene como mayor ventaja que en cualquier equipo en el que se abra, las fuentes se visualizarán correctamente. Incluso aunque no estén instaladas en el equipo.

Pasó 1:
Descargar el siguiente archivo de ejemplo:


Paso 2:
Para poder compilar un archivo con una tipografía diferente a la que viene por defecto, es necesario utilizar el paquete fontspec.
Ver el siguiente gif para configurar el editor TexStudio, el cual es el que utilizo yo para mis documentos en LaTeX.

Gif elaborado con peek.
Paso 3:
Compilar el proyecto como se visualiza en el gif de abajo.



Espero que sea de utilidad. Gracias por visitar.

sábado, 1 de septiembre de 2018

Configurar dos cuentas de Gitlab en un mismo equipo: Fedora



Hace unos días en el trabajo estaba actualizando los repositorios de código en gitlab en mi laptop, y al llegar a casa y revisar mis códigos de proyectos personales, intenté actualizarlos, pero no funcionó. Resulta que por la configuración del correo de gitlab del trabajo, no era posible actualizar los repositorios, por lo tanto me fue necesario configurar ambas cuentas.

Ésta configuración la realicé en Fedora 28 x86_64 y utilizando zsh como interprete de comandos linux.

Paso 1:

Primero se deben generar las dos claves para los correos y obviamente darlas de alta en gitlab.com.

Para generar las claves, se utilizan el siguiente comando:

 ssh-keygen -t rsa -C "correo@personal.com" -b 4096
ssh-keygen -t rsa -C "correo@trabajo.com" -b 4096
Al generar las claves se crean dos archivos uno con la llave pública  (.pub)y otro con la llave privadas (rsa)

Para dar de alta una clave en gitlab, se accede al link https://gitlab.com/profile/keys

Paso 2:


Crear un archivo de config dentro la carpeta .ssh que está en la carpeta personal. Con la siguiente configuración:

En el archivo se agregan los dos correos que se utilizarán para la conexión.

Host gitlab.com-personal
 HostName gitlab.com
 User git
 IdentityFile ~/.ssh/rsa@cuenta.personal
 
Host gitlab.com-trabajo
    HostName gitlab.com
    User git
    IdentityFile ~/.ssh/rsa@cuenta.trabajo

Una vez agregado el archivo de configuración, se procede a realizar un prueba de conexión con el siguiente comando:

ssh -T git@gitlab.com-personal
ssh -T git@gitlab.com-trabajo

El mensaje que debe mostrar en caso de ser correcto, es el siguiente por cada cuenta configurada:

Welcome to GitLab, @Nombre-del-usuario-de-gitlab!

Paso 3:

Configurar cada repositorio para cada cuenta, los proyectos se pueden clonar de manera normal, pero para realizar una actualización, es necesario ir al proyecto, y buscar la carpeta .git y editar el archivo config de la siguiente manera:

Por ejemplo, el siguiente código es configuración para que se conecte con la cuenta de trabajo:

[core]
 repositoryformatversion = 0
 filemode = true
 bare = false
 logallrefupdates = true
[remote "origin"]
 url = git@gitlab.com-trabajo:nom_repo/nom_deb_v3.0.git
 fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
 remote = origin
 merge = refs/heads/master
[user]
 name = Nombre de Usuario
 email = cuenta@trabajo.com

Por ejemplo, el siguiente código es configuración para que se conecte con la cuenta de personal:

[core]
 repositoryformatversion = 0
 filemode = true
 bare = false
 logallrefupdates = true
[remote "origin"]
 url = git@gitlab.com-personal:nom_repo/nom_deb_v3.0.git
 fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
 remote = origin
 merge = refs/heads/master
[user]
 name = Nombre de Usuario
 email = cuenta@personal.com

Y con eso, se pueden hacer las actualizaciones de manera independiente de cada repositorio.

Si por ejemplo, se quiere clonar un proyecto con una cuenta en específica, se puede utilizar de la siguiente manera:

git@gitlab.com-personal:username1/test-project.git


Fuentes:

miércoles, 8 de agosto de 2018

Solucionar: Error al reproducir videos en YouTube desde el nevageador Yandex


Es completamente correcto decir o pensar que Yo uso Chrome, pero para los que no lo usamos preferimos utilizar otras alternativas a dicho navegador, pues es necesario enfrentarnos a ciertos problemas entre los videos de html5 o flash por ejemplo.

En fin, como sea, aquí algunas sugerencias del cómo solucioné el problema con Yandex. (Yandex, Navegador ruso)


En la última actualización de éste navegador, el cual es mi preferido, dejó de reproducir los vídeos en YouTube, y Facebook, en todas partes donde los vídeos estuvieran codificados en algún formato no soportado por el mismo.

Me dí a la tarea de reportar el bug con equipo de Yandex, y amablemente me respondieron a mis dudas, e incluso aunque se trata de un SO GNU/Linux, y eso es más que perfecto.

Bueno, lo primero que me recomendaron fue instalar los codecs de crhomium, lo cual ya había hecho, si uds tienen el mismo problema, recomiendo que inicien con ello.

1.- Instalación de codecs para vídeos con html5
Link de descarga del archivo para rpm, para fedora:

Instalación:
sudo rpm -ivh nombre-paquete.rpm

2.- Instalación de flash-plugin suponiendo que no lo tuvieran instalado previamente.
Descargar el paquete flash_player_ppapi_linux.x86_64.tar.gz, ojo, tiene que ser el .tar.gz de acuerdo a la arquitectura del OS.

Descomprimirlo en  Descargas.
Crear los siguientes directorios:
/usr/lib/PepperFlash/
/usr/lib/pepperflashplugin-nonfree/
/usr/lib/adobe-flashplugin/

sudo mkdir /usr/lib/PepperFlash/
sudo mkdir /usr/lib/pepperflashplugin-nonfree/
sudo mkdir /usr/lib/adobe-flashplugin/

Y ahora mover la librería de libpepflashplayer.so a cada uno de los directorios.

sudo cp libpepflashplayer.so /usr/lib/PepperFlash/
sudo cp libpepflashplayer.so /usr/lib/pepperflashplugin-nonfree/
sudo cp libpepflashplayer.so /usr/lib/adobe-flashplugin/
En mi caso con esas configuraciones funcionó parcialmente, y digo parcialmente, porque algunos videos de youtube sí los reproducía, pero otros no.

Notifiqué al equipo de Yandex, y me enviaron un msg en el que debía descargar la última versión de ffmpeg de ubuntu, y descomprimirla en las siguientes rutas:

/usr/lib/chromium-browser/      =====> Si no existe, crearlo.
/opt/yandex/browser-beta/lib/
/opt/yandex/browser-beta/

Descargué el archivo http://packages.ubuntu.com/xenial-updates/chromium-codecs-ffmpeg-extra que corresponde a amd64 descomprimí los archivos y los copié a la respectivas carpetas.

sudo cp libffmpeg.so /usr/lib/chromium-browser/
sudo cp libffmpeg.so /opt/yandex/browser-beta/lib
sudo cp libffmpeg.so /opt/yandex/browser-beta/

Y con eso se solucionó mi problema.




Fuente:

viernes, 13 de julio de 2018

Instalar Skype en Fedora 28


¿Qué es Skype?

Skype es un software que permite que todo el mundo se comunique. Millones de personas y empresas ya usan Skype para hacer llamadas y videollamadas gratis individuales y grupales, enviar mensajes instantáneos y compartir archivos con otras personas que usan Skype. Puedes usar Skype en lo que mejor se adapte a tus necesidades: en tu teléfono móvil, PC o tableta.

Instalación del repositorio:

Abrir la terminal y escribir ejecutar el siguiente comando:

sudo gedit /etc/yum.repos.d/skype-stable.repo
Y escribir el siguiente contenido el archivo de texto que se generó:

[skype-stable]
name=skype (stable)
baseurl=https://repo.skype.com/rpm/stable/
enabled=1
gpgcheck=1
gpgkey=https://repo.skype.com/data/SKYPE-GPG-KEY

Instalar Skype:

sudo dnf install skypeforlinux

La terminal mostrará la siguiente salida:



Y ejecutando