Nueva dirección del blog

El blog se ha mudado a https://lewatoto.github.io/ las publicaciones en este sitio se mantendrán como un archivo, aunque algunas se han mudado al nuevo sitio.

Publicidad

26 noviembre 2013

Compilando krita en Linux para gatos

Revisando las nuevas publicaciones de los sitios que sigo me encontré con una publicación de David Revoy la cual ha sido la mejor guía de instalación que he visto en mi vida, por lo que decidí traducirla al español para que más usuarios se animen a usar Krita.

Este articulo es una traducción, mi dominio del inglés es intermedio así que si he cometido algún error o tienen alguna sugerencia, agradecería que me lo comuniquen en los comentarios.

[Actualizaciones]
[24 abril 2016] Krita 3.0, compatible con Ubuntu 16.04
[7 de mayo 2015] Utilizando el nuevo repositorio de krita separado de calligra.
[18 noviembre 2013] Primera publicación, durante el desarrollo de krita 2.7.


Introducción:
Luego de haber lanzado mi Compilscrips en GitHub me dí cuenta que cometí un error. En la raíz del proyecto, Compilscript aparentemente esta roto por defecto. Entonces, decidí detener el desarrollo.

¿Qué era Compilscript?
Compilscript era un set de scripts que ayudaban al usuario a compilar e instalar Krita (la versión de desarrollo más reciente) y darle mantenimiento automáticamente. Los scrips fueron un pequeño logro. Todavía me siento orgulloso acerca de todas las cosas que aprendí mientras lo desarrollaba.

¿Qué está mal?
Cuando sucedía algo irregular, Compilescripts fallaba y dejaba de funcionar... y las irregularidades son algo común en Linux. El usuario es dependiente de un sistema que no entiende y cuando este se rompe, el usuario pierde su trabajo sin saber como repararlo, aunque el hecho de que sepa como, no es una solución.

Un nuevo enfoque
Es por eso que pienso que el mejor nuevo enfoque es el camino Arch no brindando una herramienta automática, pero crear la documentación necesaria y de fácil comprensión para que el artista sea independiente y en el proceso entienda lo que está haciendo.

Los artistas deben ser capaces de instalar, actualizar, regresar en el historial del código si algo no les funciona; todo esto con una documentación mínima y fácil de implementar.

Totalmente ilustrado
También ofreceré un set de ilustraciones sobre la compilación (todas liberadas bajo CC-By). Espero que estas ilustraciones ayuden a otros proyectos para que su documentación sea mas amigable con el usuario y parezca más simple de entender usando una simple analogía: un gato construyendo una casa.

¿Por qué un gato?
Porque es bien conocido en Internet: no puedes ir mal con gatos.


Este artículo, las ilustraciones y la traducción están bajo licencia

Configurando los directorios


El primer paso obligatorio: preparar el lugar, al rededor de 5GB de espacio en disco serán necesarios en tu carpeta de usuario. La estructura sugerida por los desarrolladores es:
  • /home/tu-nombre-de-usuario/krita/scr para el código fuente.
  • /home/tu-nombre-de-usuario/krita/build es dónde Krita será compilado.
  • /home/tu-nombre-de-usuario/krita/inst es donde Krita será instalado.
Nota: "tu-nombre-de-usuario" hace referencia a tú nombre de usuario (ejemplo: /home/deevad/kde4/scr ).

Para realizar esto, abre una terminal, copia lo siguiente (Ctrl+C) para pegarlo en la terminal (Ctrl+Shift+V):

mkdir -p ~/krita/src ~/krita/build ~/krita/inst

También debes revisar en el gestor de paquetes de tu sistema que no estén instalados previamente paquetes de caligra y  krita, de existir estos, debes desinstalarlos.

Obteniendo el código fuente


Navega por las carpetas usando el comando cd ( cambiar directorio ) y utiliza la tecla tabulación para auto completar los nombres.

cd ~/krita

Instala git desde el gestor de paquetes de tu distribución. Luego pide a git que obtenga el código fuente y lo coloque en el folder src, pegando este comando en la terminal, en la carpeta ~/krita:

git clone git://anongit.kde.org/krita.git src

Luego ingresa a la carpeta src para ver si  todo ha sido actualizado correctamente:
cd src
git pull


Obteniendo las librería y dependencias



Este paso puede ser algo confusa: cada distribución tiene una manera de manejar paquetes e instalar las librerías necesarias.

Krita necesita una gran cantidad de librerías, y no existe siempre un solo comando para obtenerlas.
 
El mejor lugar para encontrar las instrucciones de instalación de las dependencias es la wiki oficial enlazada aquí.

( Nota : este enlace es una wiki, así que no duden en editar, corregir, para ayudar a otros usuarios en el proceso de instalación. )

Si su distribución no se encuentra en la lista, pasemos al plan B y búscalas una a una en tu gestor de paquetes, puede sonar doloroso, pero no toma mucho tiempo. En la carpeta fuente, el archivo ~/krita/src/krita/3rdparty/README.md te puede ayudar a obtener información más completa, también puedes leer la versión en línea aquí.

Como yo uso Ubuntu 16.04, el siguiente comando instalará todas las librerías necesarias:
sudo apt install build-essential libcurl4-gnutls-dev libtiff5-dev libjpeg-turbo8-dev libpng12-dev gettext gettext-kde cmake git extra-cmake-modules libkf5archive-dev libkf5completion-dev libkf5config-dev libkf5coreaddons-dev libkf5guiaddons-dev libkf5i18n-dev libkf5itemmodels-dev  libkf5itemviews-dev libkf5widgetsaddons-dev libkf5windowsystem-dev libkf5kiocore5 qtbase5-dev libqt5svg5-dev qtdeclarative5-dev libqt5x11extras5-dev libqt5opengl5-dev libeigen3-dev libxi-dev libboost-all-dev libopenexr-dev libexiv2-dev  libgsl0-dev liblcms2-dev libpoppler-qt5-dev shared-mime-info libraw-dev libfftw3-dev libopencolorio-dev libopenjpeg-dev vc-dev

Configurando


Al configurar con cmake, revisará si tu sistema está listo y si tiene instaladas las librerías correctas, así que, si algún problema de configuración aparece, serás capaz de leer que librería es la que falta. Por eso es importante leer si todo está bien.

También le informaremos a cmake nuestra estructura de carpetas:
cd ~/krita/build
cmake -DCMAKE_INSTALL_PREFIX=$HOME/krita/inst $HOME/krita/src -DWITH_GMIC=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPRODUCTSET=ALL -DPACKAGERS_BUILD=ON -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF

Compilando


Luego de leer que durante la configuración todo salió bien, es tiempo de compilar nuestro krita, estando todavía en la carpeta /krita/build, ejecuta make con -j[número], donde [número] debe ser reemplazado por la cantidad de trabajos en paralelo que es capaz de realizar tu procesador ( algunas veces es recomendable sumarle 1 a esa cantidad), el mío es de 8 núcleos, usemos -j9
make -j9

Consejo: si no sabes la cantidad de núcleos que tiene tu procesador, este pequeño comando te lo dirá:
cat /proc/cpuinfo | grep processor | wc -l

Instalando


Si make compiló krita correctamente, puedes pedirle a make que lo instale en tú carpeta de instalación.
make install -j9

Directorio y variables de entorno


La instalación está terminada, pero tu sistema no considerará tu carpeta de instalación como parte de las aplicaciones del sistema, para mostrarle al sistema cual es el directorio correcto, en una terminal ejecutamos, copiando lo siguiente línea por línea:
export KDEDIRS=$HOME/krita/inst:$KDEDIRS
export PATH=$HOME/krita/inst/bin:$PATH

Desafortunadamente estas variables de entorno no son persistentes y se perderán luego de apagar o reiniciar tu sistema y con esto nuestro puente colapsará.

Para configurarlas en cada inicio de sesión, se deben escribir con tu editor de textos favoritos al final del tu archivo ~/.profile (en algunas distribuciones, el archivo profile es llamado xprofile, revisa los archivos ocultos en tu carpeta de usuario).

Primer uso


¡Felicitaciones! Puede ejecutar “la versión más reciente de krita” escribiendo krita en la terminal o a través del menú principal de tu escritorio, si este no muestra kritra, revisa la documentación de tu entorno de escritorio sobre “como crear un lanzador de aplicaciones personalizado”.

Actualizando


Haz oído de una nueva característica en desarrollo o leíste acerca de un error solucionado y, ¿quieres actualizar?, bien, llama a git otra vez pero en esta ocasión solo se actualizarán ciertas partes del código fuente, no descargará todo el código fuente.


cd  en la carpeta en dónde está el código fuente, luego pídele a git con pull que actualize tu código fuente.
cd ~/krita/src/
git pull


Pero actualizando el código fuente no será suficiente, para experimentar la nueva versión de krita debemos repetir el proceso de configuración, compilación e instalación:
cd ~/krita/build
cmake -DCMAKE_INSTALL_PREFIX=$HOME/krita/inst $HOME/krita/src -DWITH_GMIC=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPRODUCTSET=ALL -DPACKAGERS_BUILD=ON -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF make -j8
make install -j8

Si actualizas todos los días, tal vez te gustaría automatizar el proceso realizando tu propio script para ello.

Rescatando


Las versiones recientes pueden fallar y a veces puede ser inutilizables, cambios experimentales se realizan diariamente.

Puede afectar tu productividad si no sabes como “regresar en el tiempo” (ejemplo: tu brocha favorita ya no funciona).

Pero si sabes como hacerlo, ningún contratiempo puede afectarte, por que tu sabes como regresar a un estado previo.


Para viajar por el código fuente a través del tiempo necesitamos leer el historial de la linea del tiempo, la herramienta en la terminal para esto es git log.

cd ~/krita/src/
git log

Con git log, puedes consultar los últimos cambios del código fuente, llamado “commit”, lo que nos interesa es el largo número de identificación (ejemplo: 15c1749105a7e7cc56b646a66919c29646f8653a), puedes navegar por el git log, copiar el número de identificación (ID) luego salir (letra Q en el teclado), luego navega por el tiempo en el directorio del código fuente:

git checkout 15c1749105a7e7cc56b646a66919c29646f8653a

Ahora, configura, compila, instala y estarás otra vez en un lugar seguro. Ten en cuenta que existen los paquetes gitg o gitk para tener una interfaz gráfica para visualizar el historial de git, así como una versión en línea aquí.

Para actualizar nuevamente a la versión más reciente llamada master, es simple, solo pide a git que vuelva a verificarlo con git checkout y luego con pull para actualizar:

git checkout master
git pull

Conclusión
Espero que esta documentación ayude a muchos usuarios a tener momentos agradables utilizando la versión en desarrollo de krita. Utilicen los comentarios para brindar sus comentario o realizar preguntas. Haré lo posible para mantener actualizada la información de esta página.

Enlaces útiles (en inglés)
- Actividades e historial del git de Krita.
- Lista de los errores recientes reportados de Krita.
- Canal IRC de Krita (la respuesta puede tardar de 1 a 2 horas, se paciente).

Agradecimientos especiales
Boudewijn Rempt, Aurélien Gâteau, M.Beast, Yu Asakusa, Matthieu Harel por los comentarios y ayuda brindada con las correcciones.


Autor

Versión original (inglés)

Traducción español

No hay comentarios.:

Publicar un comentario

Publicidad

Publicidad