chilicuil | buenos dias =), ha llegado el ultima dia de la semana del desarrollador de Ubuntu, comenzaremos hablando sobre la clasificacion de bugs en el escritorio de Ubuntu | 15:38 |
---|---|---|
chilicuil | om26er nos hablara un poco al respecto, comenzare la interpretacion ahora | 15:39 |
chilicuil | Ubuntu es la distribucion mas popular del mercado, su cantidad de usuarios supera por mucho a otras distribuciones, hay un dicho que dice que entre mayor cantidad de ojos, los errores son mas evidentes | 15:40 |
chilicuil | esto se refleja en Ubuntu, en la cantidad de reportes que sus usuarios generan | 15:40 |
chilicuil | en la siguiente media hr les mostrare como colaborar con Ubuntu, respondiendo a esos reportes | 15:40 |
chilicuil | nos centraremos en los bugs que se reportan hacia el escritorio | 15:41 |
chilicuil | como primer ejemplo tomaremos el siguiente: https://bugs.launchpad.net/ubuntu/+source/unity/+bug/904348 | 15:41 |
chilicuil | en este ejemplo, la persona creo que reporte, pero no se molesto en mencionar, realmente cual era su problema | 15:41 |
chilicuil | esta clase de reportes, son la clase de reportes en las que nos pueden ayudar, podria ser pidiendo mayor cantidad de datos | 15:42 |
chilicuil | para ser mas especifico, el reporte en este caso no se relaciona en absoluto con Unity, de hecho se tiene que asignar a otro paqeute | 15:43 |
chilicuil | algunas personas usan el bugtracker para hacer preguntas, en esos casos se pueden reenviar a la seccion de launchpad correspondiente 'answers' | 15:43 |
chilicuil | otras veces las personas comentan muchos problemas en un solo reporte, y eso puede hacer mas dificil corregirlos, lo ideal es que se cree un reporte por bug | 15:44 |
chilicuil | ahora mismo pueden pensar que clasificar bugs es muy aburrido, pero si lo hacen, se daran cuenta que es una tarea mucho mas interesenta de lo que esperaban | 15:45 |
chilicuil | se aprende mucho, sobre muchas tecnologias, hablas con gente, y reduces la carga de los desarrolladores =) | 15:45 |
chilicuil | una vez que comiences a clasificar bugs, podras entrar al equipo de Bug Triaging, esto te permitira modifar el estatus de los bugs a 'Triaged', una palabra que significa que esta listo para ser abordado por un desarrollador | 15:46 |
chilicuil | la mayoria de los bugs en Ubuntu se encuentran en Upstream, es decir en Debian, o en los proyectos mismos de los que Ubuntu se beneficia | 15:47 |
chilicuil | recordemos que upstream significa para nosotros las comunidades o personas que desarrollan el software que usamos en Ubuntu | 15:47 |
chilicuil | siendo que la distribucion esta hecha de esa manera, la mayoria de bugs en Ubuntu, en un caso ideal, debieran ser canalizados a los respectivos proyectos | 15:48 |
chilicuil | por poner un ejemplo, tenemos a Empathy, el software de mensajeria que viene por defecto en Ubuntu | 15:48 |
chilicuil | Empathy tiene una buena cantidad de desarrolladores amables, y en general atentos a responder a los problemas de su programa | 15:49 |
chilicuil | los bugs reportados en launchpad para el paquete Empathy, deberian ser canalizados al bugtracker de empathy bugzilla.gnome.org | 15:50 |
chilicuil | pero no podemos canalizar bugs que no contienen los suficientes datos para ser solucionados | 15:50 |
chilicuil | ahi es donde ustedes entran | 15:50 |
chilicuil | completar un bug y canalizar hacia el bugtracker correspondiente es una gran manera de comenzar a involucrarse con el desarrollo de Ubuntu | 15:51 |
chilicuil | otra forma, es habilitando el repositorio -proposed, ahi es donde las proximas actualizaciones se ponen, antes de convertirse en verdaderas actualizaciones, tenemos este filtro para evitar usar actualizaciones incorrectas en las versiones estables de ubuntu | 15:52 |
chilicuil | para habilitarlo, pueden ir a 'fuentes de software' | 15:52 |
chilicuil | pueden leer esta guia para tener una idea mas especifica de como funciona todo esto: https://wiki.ubuntu.com/Bugs/HowToTriage/ | 15:53 |
chilicuil | la lei muchas veces antes de poder entrar al equipo 'Bug control' | 15:53 |
chilicuil | y hablando de el, aprovechare para decir que es y que hace | 15:53 |
chilicuil | una vez que obtienes permisos para cambiar el estatus de los bugs, es decir, que eres parte del 'bugsquad' | 15:54 |
chilicuil | se pasan los bugs a este equipo, para que les asigne desarrolladores, y se nomine para varias versiones de Ubuntu | 15:54 |
chilicuil | para muchos reportes tenemos respuestas predeterminadas, esto nos ayuda a mantener un ambiente de colaboracion y a atender la mayor cantidad de bugs posibles, https://wiki.ubuntu.com/Bugs/Responses | 15:55 |
chilicuil | asi que, regresando al primer ejemplo | 15:55 |
chilicuil | lo que podriamos hacer es responder, en Ingles: | 15:56 |
chilicuil | Thank you for taking the time to report this bug and helping to make Ubuntu better. Please answer these questions: | 15:56 |
chilicuil | * Is this reproducible? | 15:56 |
chilicuil | * If so, what specific steps should we take to recreate this bug? | 15:56 |
chilicuil | una vez que tengamos mas detalles sobre el problema, sera mas facil que lo solucionemos | 15:56 |
chilicuil | en el caso de que el problema se encontrara en upstream, podriamos responder de la siguiente manera: | 15:57 |
chilicuil | Thank you for taking the time to report this bug and helping to make Ubuntu better. The issue you are reporting is an upstream one | 15:57 |
chilicuil | and it would be nice if somebody having it could send the bug to the developers of the software by following the instructions at | 15:58 |
chilicuil | https://wiki.ubuntu.com/Bugs/Upstream/GNOME. If you have done so, please tell us the number of the upstream bug (or the link), so we can add a | 15:58 |
chilicuil | bugwatch that will inform us about its st | 15:58 |
chilicuil | es importante agradecer el tiempo que los usuarios ponen en reportar el error =) | 15:58 |
chilicuil | la primera vez que mande un reporte a Ubuntu, eso fue algo que realmente me agrado, es decir no estamos hablando con maquinas, sino con otras personas | 15:59 |
chilicuil | en resumen | 15:59 |
chilicuil | un buen reporte, es un reporte donde el error puede repetirse muchas veces siguiendo una determinada cantidad de pasos | 15:59 |
chilicuil | adicionalmente podria tener una imagen o un video donde se pudiera mostrar el problema | 16:00 |
chilicuil | algunas veces esto es mas dificil de conseguir que otras | 16:00 |
chilicuil | asi que hay que tener paciencia y tratar de ser amables | 16:01 |
chilicuil | creo que eso es todo | 16:01 |
chilicuil | gracias a om26er por esta rapida introduccion a la clasificacion de bugs! | 16:01 |
chilicuil | hola SurfaX, bienvenido, en este canal intentamo s hacer la interpretacion de lo que esta pasando en #ubuntu-classroom =) | 16:02 |
SurfaX | =) | 16:02 |
chilicuil | tambien, intentamos ayudar a plantear preguntas hacia las personas que estan dando las charlas, asi que si en algun momento tienes alguna, puedes escribirla y trataremos de traducirla para que la puedan responder | 16:03 |
chilicuil | el siguiente ponente sera mhall119 y nos hablara un poco mas sobre lo que son los Lenses de Unity | 16:03 |
chilicuil | btw, tenemos los logs de los dias anteriores en https://wiki.ubuntu.com/SemanaDesarrollador ;) | 16:04 |
chilicuil | y los originales estan en: https://wiki.ubuntu.com/UbuntuDeveloperWeek | 16:04 |
chilicuil | comenzare la interpretacion ahora | 16:04 |
chilicuil | en esta charla hablaremos un poco sobre como crear nuevos lenses con Singlet | 16:04 |
chilicuil | un lense es la forma en la que Unity muestra los datos en la interfaz | 16:05 |
chilicuil | por ejemplo en el campo de busqueda, el resultado se ve gracias a uno de estos lenses | 16:05 |
chilicuil | bien, empezare describiendo que es un singlet | 16:05 |
chilicuil | singlet es una libreria escrita en python diseñada para programar lenses de unity =) | 16:05 |
chilicuil | esto podria sonar extraño, para que necesitamos una libreria, si los lenses de unity son objetos GObjects + Dbus? | 16:06 |
chilicuil | de hecho tenemos varios lenses que estas programados sin usar singlet | 16:06 |
chilicuil | asi que por que alguien querria usarlo? | 16:07 |
chilicuil | bueno, personalmente, pasa que odio los dbus y esos objetos, asi que prefiero usar python para desarrollador todo | 16:07 |
chilicuil | hice mis 2 primeros lenses de esta manera, y singlet fue el resultado de ello | 16:08 |
chilicuil | asi que basicamente singlet es una capa que te permite deshacerte de todo ese codigo que no esta escrito en python ;) | 16:08 |
chilicuil | lo hace combinando ciertos aspectos de la programacion orientada a objetos y algunas meta-clases | 16:09 |
chilicuil | pueden ver este link para conocer mas sobre ello: http://mhall119.com/2012/01/simplified-unity-lens-development-with-singlet/ | 16:09 |
chilicuil | si alguien por aqui ha programado en djando, no deberia tener muchos problemas para agarrarle soltura | 16:09 |
chilicuil | tome muchas cosas de django para construir singlet | 16:10 |
chilicuil | para usar Singlet, primero le das un poco de meta-datos para describir tus lens | 16:10 |
chilicuil | luego puedes definir algunas categorias e implementar algunos metodos, como el metodo search() | 16:10 |
chilicuil | y singlet creara los objetos GObjets necesarios para interactuar con Dbus por ti | 16:11 |
chilicuil | singlet tambien incluye programas auxiliares para hacer que tus lens corran como demonios y genera automaticamente lso archivos .lens y .service, todo a partir de los meta-datos que insertes | 16:12 |
chilicuil | ok, pondremos un ejemplo para mostrar como crear un lens usando singlet: http://mhall119.com/2012/01/simplified-unity-lens-development-with-singlet/ | 16:14 |
chilicuil | si estuvieron en la charla que impartieron davidcalle y mhr3 sabran que los lens pueden escribirse a partir de un archivo, o dividido | 16:15 |
chilicuil | singlet 0.2 esta disponible en Precise | 16:16 |
chilicuil | pueden usarlo para escribir tanto lens como scopes | 16:16 |
chilicuil | singlet no solo te ayuda a programar mas rapido tus lens | 16:17 |
chilicuil | tambien define una api que te protege si las especificaciones de los lens cambian | 16:17 |
chilicuil | esto no es una fantasia, por poner un ejemplo la api de los lens cambio de Unity 4 (oneiric) a Unity 5 (precise) | 16:18 |
chilicuil | asi que si hubieran escrito un len en singlet 0.1 en oneiric, podrian usarlo sin problemas con singlet 0.2 en precise | 16:18 |
chilicuil | pronto agregaremos crearemos una plantilla para poder empaquetar lens y scopes escritos con singlet para quickly | 16:19 |
chilicuil | para los que no esten familiarizados con quickly, es una herramienta creada por los chicos de Ubuntu para desarrollar aplicaciones de forma mas rapida | 16:20 |
chilicuil | cuando se usa, crea por ti los archivos necesarios ya sea para escribir una aplicacion de linea de comandos o con interfaz de usuario, tambien permite empaquetar tu programa facilmente | 16:21 |
chilicuil | la idea es que las personas usen Singlet + Quickly para desarrollar rapidamente lens que ayuden a poner los datos que quieran en la interfaz de Unity | 16:21 |
chilicuil | creo que los lens son una caracteristica unica de Unity, y que mucha gente querra crear algunos | 16:22 |
chilicuil | espero que la mayoria usen Singlet para hacerlo | 16:22 |
chilicuil | alguna pregunta hasta aqui? | 16:22 |
jujuju | bien eso es todo por hoy, gracias por los que asistieron | 16:24 |
jujuju | #nosotros seguiremos interpretando =) | 16:24 |
jujuju | las personas que deseen modificar el codigo de singlet pueden obtenerlo de aqui: https://launchpad.net/singlet | 16:24 |
jujuju | no olviden entrar a #ubuntu-classroom-chat, muchas veces ahi se van complementando lo que dice el ponente | 16:25 |
chilicuil | a continuacion tendremos a tumbleweed, un desarrollador de Debian y miembro de MOTU ;) | 16:29 |
chilicuil | que nos estara hablando sobre crear paquetes localmente usando pbuilder | 16:29 |
chilicuil | si estuvieron en la charla que dholbach dio ayer, probablemente tendran instalado pbuilder https://wiki.ubuntu.com/MeetingLogs/devweek1201/DevEnvironmentSetup | 16:30 |
chilicuil | si no han usado pbuilder con anterioridad, tal vez se pregunten que sentido tiene | 16:31 |
chilicuil | despues de todo pueden hacerlo con debuild | 16:32 |
chilicuil | sin embargo pbuilder, lo hara en un intorno minimalista, y aqui es donde esta la principal diferencia | 16:33 |
chilicuil | ademas con pbuilder pueden emular otros sistemas | 16:33 |
chilicuil | Ubuntu usa buildds para crear los paquetes que son introducidos en ubuntu | 16:33 |
chilicuil | estas maquinas usan sbuild para crear los paquetes | 16:34 |
chilicuil | adicionalmente con los ppas que ofrece launchpad pueden crear sus paquetes | 16:35 |
chilicuil | https://launchpad.net/builders | 16:35 |
chilicuil | sin embargo y aunque no lo crean, la mayoria de sus computadoras podrian crear un paquete mas rapido de lo que lo hacen las maquinas que Ubuntu pone a disposicion | 16:36 |
chilicuil | personalmente prefiero usar sbuild en lugar pbuilder | 16:37 |
chilicuil | sin embargo es solo una cuestion personal, esta bien usar pbuilder | 16:37 |
chilicuil | de lo contrario no estaria hablando sobre el ;) | 16:38 |
chilicuil | vayamos a los detalles, que hace pbuilder? | 16:38 |
chilicuil | - crea un chroot | 16:38 |
chilicuil | - corre debootstrap para crear un entorno minimalista (debootstrap es una herramienta que corre a muy bajo nivel | 16:38 |
chilicuil | - finalmente crea un archivo .tar y lo pone en algun lugar de tu computadora | 16:39 |
chilicuil | despues de eso, cada vez que se utilice, descomprimira ese archivo .tar | 16:39 |
chilicuil | en este entorno compilara el paquete y si lo crea correctamente lo pondra en otro lugar de tu computadora, para que puedas instalarlo | 16:40 |
chilicuil | en Ubuntu tenemos pbuilder-dist un programa que usa pbuilder para crear varios entornos | 16:41 |
chilicuil | podrian compilar sus programas contra varias versiones de Ubuntu y de Debian | 16:42 |
chilicuil | ok, compilemos algo | 16:42 |
chilicuil | en una terminal escriban: $ pull-lp-source -d beautifulsoup | 16:42 |
chilicuil | esto descargara el archivo fuente que utilizan los .debs para crearse, un archivo .dsc | 16:43 |
chilicuil | ahora, utilicen $ pbuilder-dist precise beautifulsoup_3.2.0-2build1.dsc | 16:43 |
chilicuil | para crear el .deb | 16:43 |
chilicuil | coolbhavi pregunta donde guarda pbuilder los logs | 16:43 |
chilicuil | tumbleweed responde que se guardan al lado de los paquetes .deb | 16:44 |
chilicuil | los entornos manejados con pbuilder deben ser actualizados, tienen que serlo para poder probar que los paquetes mas recientes compilen contra la version en desarrollo de Ubuntu | 16:46 |
chilicuil | pbuilder soporta una caracteristica llamada 'hooks', son scripts que reaccionan a eventos | 16:49 |
chilicuil | pueden leer todos los detalles sobre ello y mas en $ man pbuilder | 16:50 |
chilicuil | y tienen algunos ejemplos en /usr/share/doc/pbuilder/examples/ | 16:50 |
chilicuil | en mi caso uso un script llamado D90update para actualizar el sistema antes de compilar culquier paquete | 16:51 |
chilicuil | otro que no puedo dejar de mencionar es C10shell | 16:53 |
chilicuil | cuando un paquete falla, te abre una linea de comando dentro del entorno para corregirlo | 16:54 |
chilicuil | como usar hooks? | 16:54 |
chilicuil | se pueden dejar en ~/.pbuilder-hooks | 16:55 |
chilicuil | y luego definir en el archivo .pbuilderrc HOOKDIR=$HOME/.pbuilder-hooks | 16:55 |
chilicuil | creo que media hr no ha sido suficiente para hablar sobre todos los aspectos de pbuilder | 16:58 |
chilicuil | sin embargo, tenemos mucha gente en #ubuntu-motu que saben muy bien como usar pbuilder, cowbuilder y sbuild | 16:59 |
chilicuil | asi que no duden en darse una vuelta por ahi, si tienen algun problema =) | 16:59 |
chilicuil | eso es todo | 17:01 |
chilicuil | la siguiente platica sera sobre como crear archivos /debian/changelog que ruleen | 17:01 |
chilicuil | y aun hay varias platicas interesantes | 17:01 |
chilicuil | por mi, ha sido todo por hoy, espero encontrar logs adicionales, ya tenemos a ubuntulog que subira los logs a la wiki | 17:02 |
chilicuil | bonita tarde n_n/))) | 17:02 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!