AhIoRoS  jmflores  nibblesmx  Adlair Cerecedo  Gunnar  demrit  eric  MaoP  pcero  visor 

Main

contact

Projects/Proyectos

Papers/textos

Resume / Curriculum

 Use OpenOffice.org

OpenSolaris: Innovation Matters

twitter

    Categories

    Tiras


    Tira Ecol
    Tira Ecol


    Tira LinuxHispano.net
    La Legión del Espacio
    La Legión del Espacio
    En el Sitio de Ciencia-ficción

    Recent Comments

    GNU

    El Open Day es un día (próximo 16 de Noviembre del 2007) en el cual se dará a conocer a los alumnos de Licenciatura en Informática e Ingeniería en Sistemas Computacionales de la Universidad San Ángel del Sur y a la Comunidad Estudiantil de la localidad las Nuevas Tecnologías en Sistemas Informáticos.

    Específicamente se pretende difundir el uso e implementación del Software Libre como alternativa emergente a productos comerciales.

    Todo lo anterior mediante un ciclo de ponencias sobre las principales áreas de aplicación del Software Libre y complementando dichas ponencias con un Install Fest.

    Mas info: http://usasod.globalyti.com/

    markuz | general, personal, GNU, linux, FLOSS | Friday 19 October 2007 9:39pm | 1 comments

    El proximo 15 de Septiembre el Grupo Linuxero del Bajio celebrara el Software Freedom Day 07. Se llevara a cabo en:

    Lopez Velarde #121 Col. Jardines de San Pedro (a media cuadra del seguro social)
    Salamanca, Gto.

    • Charlas
    • Instalaciones
    • Mucho Software Libre
    • Muy buen ambiente

    Mas info

    markuz | general, GNU, FLOSS | Tuesday 11 September 2007 5:51pm | Comment on this

    Como han de saber soy un "Fans" numero 1 de GTK. Me gusta mucho su apariencia y me gusta mucho programar usando este conjunto de bibliotecas, aunque sea en Python, Bien, Hoy para variarle, me he puesto a trabajar con WindowMaker, WIndowMaker esta bien, me encanta porque

    1. Es muy ligero
    2. Me da la sensacion de que trabajo con otro manejador de ventanas (XFCE me hace sentir que ando en una version rebajada de GNOME, disculpen, asi lo siento, no es malo, claro que no, pero asi lo siento)
    3. Se ve chingon y te consigues viejas de a monton usando WindowMaker tongue.png

    En fin. esta chidin el WindowMaker, de acuerdo a mis gustos no para usarlo siempre, pero si eventualmente cuando no quieres cargar todo el entorno de GNOME, lo malo es que las aplicaciones GTK se ven feisimas!!, simplemente porque no tienen ningun theme aplicado, funcionan igual, pero se ven fellonas.

    Solucion: gtk+ 2.0 Change Theme. El chunchecito este les deja cambiar el theme de GTK sin tener que arrancar el demonio de configuracion de Gnome, probé otro por ahi, pero como nomas no peló ya se me olvido su nombre, ha si, gtk-theme-switcher o algo asi. En fin, si usan algun manejador de ventanas que no les pone el theme en GTK, usen este, esta muy bueno, y no me dio broncas en compilada. es mas, no necesitas instalarlo, solo compila y desde ahi corres el gtk-chtheme y listones.

    markuz | general, Humor, stuff, personal, GNU, gnome, linux, slackware, gtk, FLOSS | Sunday 29 July 2007 2:44pm | Comment on this

    Lo digo porque Por ahi dicen que si. Yo, no creo, muchos no trabajamos para una empresa de que se dedique a crear software libre, pero lo usamos y lo difundimos. Muchos, trabajan sobre el software libre y lo mejoran, aun sin trabajar para una empresa que desarrolle software libre.

    Lo que si siento, espero estar equivocado, es que las empresas son ahora las que determinan el curso que el software libre/OpenSource Software ha de llevar porque a fin de cuentas, las empresas son ahora, las que mas impulsan al SL Ejemplo: Sun Microsystems, que ha aportado con el 26% del codigo de Debian (codigo que tambien esta en otras distribuciones). y espero estar equivocado, porque estas mismas empresas en la busqueda de la supervicencia o un mayor control, podrian poner al software libre en riesgo face-smile.png

    markuz | general, personal, GNU, FLOSS | Wednesday 23 May 2007 10:16am | 1 comments

    Pues desde el dia 10 de Marzo hemos estado realizando reuniones semanales en el Instituto de Estudios superiores de Poza Rica, la primera como GULPR, y las demas bajo el nombre de GNUPR. ¿Por que el cambio de nombre?, Porque somos un grupo nuevo, con nuevas ideas y con muchas ganas de hacer las cosas. El Grupo como lo conociamos "Grupo de Usuarios GNU/Linux Poza Rica" silenciosamente fué muriendo, gracias a la falta de interés de las personas y en gran parte a la falta de interes de los fundadores y directivos (admito entonces que parte de la culpa fue mia).

    Pero ahora no soy solo yo el que jala/empuja, esta Adlair, Christian, Roberto, Mario y varios compañeros mas del TEC de Poza Rica. Todos con interés de aprender y de hacer las cosas bien aunque la mayoria no saben gran cosa sobre GNU/Linux, claro, que lo importante no es que tanto sabes, sino que tanto quieres aprender. A todos los nuevos integrantes de GNUPR (que cada reunion que hemos hecho veo mas) Bienvenidos.

    Actualmente estamos trabajando en la realizacion del FLISOL en Poza Rica Nos faltan ciertos detallitos por pulir, pero ya vamos por menos face-smile.png .

    markuz | general, personal, GNU, linux, FLOSS | Sunday 01 April 2007 5:24pm | Comment on this

    Una muy buena noticia y que a pesar de que ha estado estallando en todos los blogs y sitios informaticos que conozco, y pese a que a mi no me gusta andar replicando tanto las noticias de otros lados, pues no hay de otra, me parece perfecto que Sun Microsystems haya abierto el codigo de Java, para bien mas que para mal.

    Me parece perfecto que Sun haya elegido la GPL v.2 para su lenguaje face-smile.png

    markuz | general, Software_Development, GNU, FLOSS | Monday 13 November 2006 4:24pm | Comment on this

    Bien, en los ultimos dias he estado corrigiendo unos cuantos bugcitos y medio limpiando el codigo, mejorandolo un poquito y en gran medida probando christine.

    Christine poco a poco, a paso lento (a veces muy lento) esta alcanzando su madurez. Aunque a veces no tengo tiempo suficiente como para dedicarle, me gusta el proyecto y en realidad quiero que crezca. Y una de las cosas que mas me intereza es que sea usado por los demas, tiene sentido que lo use, porque a fin de cuentas el proyecto comenzó por que queria que el reproductor hiciera lo que yo quiero que haga, en fin, y como no tengo todo el tiempo del mundo y aparentemente no hay mucha gente interezada en el proyecto, pues he decidido hacer unas pequeñas tareas, para quien tenga ganas de programar un poco, para quien quiera probar sus habilidades con Python o para quien simplemente quiera jugar.

    Las tareas son sencillas, y son las siguientes:

    Salvo de la primera tarea, será necesario obtener el codigo fuente, que facilmente lo podrán cachar del CVS, información sobre como obtener el codigo se encuentra en esta pagina: http://sourceforge.net/cvs/?group_id=167966

    Hay un bugcito reportado en el bug tracker, quien quiera echarse un clavado y ayudarme a corregirlos aqui se los pongo.

    Si no sabes programar, pero quieres probarlo, adelante face-smile.png , por favor hazlo y reporta todos los bugs que encuentres en el tracker: http://sourceforge.net/tracker/?group_id=167966&atid=845044.

    markuz | general, Software_Development, stuff, music, personal, Python, GNU, linux, gtk, christine, FLOSS | Monday 06 November 2006 8:52pm | 2 comments

    Leyendo OS News veo que Peter Howkins ha lanzado la peticion para que el famoso ambiente de escritorio CDE y las bibliotecas Motif sean libres.

    Probablemente no utilices CDE, mas bien creo que usas GNOME o KDE o algun otro DE, pero si lo usas y te gustaria ver CDE como Software de código abierto por favor firma la peticion:

    Sitio de la peticion Firma de peticion

    markuz | general, stuff, personal, GNU, FLOSS | Friday 13 October 2006 11:10am | 1 comments

    Via OSNews I read This Article about Why Ubuntu got it all wrong. According with what the author says, Linux distributors like Red Hat, SuSE and in the article Ubuntu are doing all wrong in the way to rule the common user desktop.

    I guess in some way this guy is right, and in some he isn't. I like the way it reflects that Ubuntu and other GNOME/KDE based Linux distribution are taking away the __speed feature in linux, the problem is not linux, is that GNOME/KDE based linux distributions eats a lot of resources, and makes new computers work like my old one with BlackBox. Why is my "new" linux requiring 256 Mb of RAM?. Well, that's something that developers should take care, and something that I can fix with some magic tongue.png .

    Now, the other fact is the way to switch a "common user" from Windows to Linux, It isn't and I think will never be easy to change a well "used to use" Windows user to Linux or anything else, not if they don't have the same tools. But there is an easy way to make the ammount of people using Linux (and other Free OS): Teach them when they don't know nothing. Yes, I know how to use windows because nobody tells me that there where other competent options, and the few where too complicated for me. But by know it should be by far more easy.

    So. Desktop (KDE/Gnome based) Linux distributions should be: Faster and easier for most people (woot, something new? naa), but at the same time the should be simple and provide all the tools required by the user (That's why use Slackware face-smile.png )

    markuz | general, stuff, personal, GNU, linux, slackware, FLOSS | Saturday 02 September 2006 10:34pm | Comment on this
    markuz | general, stuff, GNU, gnome, linux, slackware, FLOSS | Thursday 13 July 2006 3:03pm | Comment on this

    Some days ago, when I sid tha Christine will support video playback again I note that some videos didn't play and cause some errors most of them are from http://video.google.com/. I think it is a gstreamer plugin problem, anyway, it doesn't let me watch my videos and I have to launch Xine to see them.

    Searching I found PyXine and "old" project that lets you use Xine as backend. The project seem to be sleeping since 2003, and I guess it will never awake again. but the code works and I will try to implement a player with pyxine for christine, then users can choose between gstreamer and xine.

    But, Why Xine?, isn't gstreamer enough?, NO, Gstreamer is not enough, Xine is older, and is more stable, Gstreamer is growing and things will change, and xine plays most known audio an video format face-smile.png

    markuz | general, Software_Development, stuff, music, personal, GNU, linux, gtk, christine, FLOSS | Wednesday 28 June 2006 3:30pm | Comment on this

    With the new pieces for the new computers my brother finally upgrades his computer motherboard, now it is supposed to do more things in the less time, he also upgrade the Video card, we used a Nvidia GeForce4MX, a reduced version of the origina GeForce4 (Why MX'? is it for MeXico?,mmmm), anyway, we use now a GeForce6200 wich is not the best from nvidia but it is better than the GeForce4MX.

    Then my brother bought the Need For Speed Most Wanted and we have to say it.. What a good game., I have spend my time on my bussines playing XD. I haven't even write anythin nor visited any of my common sites because I was playing!!!! (I'm writing this from my house where I have no NFS MW face-sad.png ). Just Imagine, good graphics and a good control (because I bought one the other day) whoo, at almost no cost because the upgrade was with "capital angel" given to buy the new computers face-devil-grin.png .

    Well.. I have to say it, some day GNU/Linux will have such games (outside from the PlayStation), but in the meantime...

    markuz | general, stuff, personal, GNU, linux | Friday 23 June 2006 9:06pm | Comment on this

    Ok, i had not work on the last week, first, I dont want to work, and second, I have to do my paper for my school, but today I feel inspired and the Python God comes to me and fix some things about christine.

    First, the Import to Queue works, this is to import a file to the queue (next audio or video to be played) without importing it to the main playlist.

    And second, Play video works again, I haven't work with this since christine was upgraded from gstreamer 0.8 to 0.10, and now it plays video again, but some issues will happen since I had just work on it today and some videos downloaded from video.google.com seems to doesn't work, I wonder that it is because gstreamer or the discoverer class wrote by me.

    So this is a screenshot, and there is a video on video.google, but it still is unavailable for some google reasons.

    Just imagine a video playing in the black square tongue.png . And click on the image to see it bigger

    markuz | general, Software_Development, stuff, music, personal, Python, GNU, google, linux, gtk, christine, FLOSS | Thursday 22 June 2006 3:01pm | Comment on this

    alo en su post GNOME desktop wiki.. or Pushing way too hard for Mono da al clavo con uno de los puntos debiles de Gnome y de sus componentes:

    By the way, what scares me most is that, each day we are moving closer towards a "Frankenstein" desktop: a single desktop depending on its own libraries, the Mono ones, the STL, the Python interpreter, the Java virtual machine, and eventually something more exotic like the Ada95 runtime. If we are thinking of conquering the desktop with something like that, I'd better boot Windows and play StarCraft. face-sad.png

    Y no es mas que una realidad, Gnome esta escrito en C, y la mayor parte de sus componentes igual, pero se estan desarrollando aplicaciones para el que estan escritas en muchos lenguajes, y soy culpable de usar Python en lugar de C face-sad.png . Pero lo que mas pega para los desarrolladores de Mono es esto:

    Another reason to use Mono inside GNOME is the ability to bring Windows developers to the free desktop development field. It sounds nice. I mean, the more we are the better, but actually to me it doesn't sound like a credible reason. What would be the motivation of a .NET programmer to use GTK#? At the end of the day, the WinForms is the standard for him.. and Mono is meant to support it.

    Quien canijo windowsero que ha escrito en Windows.Forms va a dejar de usar Windows.Forms para usar GTK#??, Lo que sea de cada quien, GTK (en cualquier lenguaje [supongo]) es bonito, pero para cualquiera es tedioso aprender algo nuevo, y si actualmente Mono soporta Windows.Forms lo unico que generará sera un Gnome con cara de windows.. Wakala, que asco. Y e que lo malo no es que usen Windows.Forms, sino que Windows.Forms no se integran con GTK, por el contrario GTK si se integra con el ambiente de Windows face-wink.png .

    Apoyo a alo en su "lucha" contra Mono en Gnome.

    markuz | general, Angry, Software_Development, Stupid things, stuff, Python, GNU, gnome, gtk | Wednesday 31 May 2006 9:58pm | 2 comments

    En un post anterior mencionaba sobre las canas verdes que me estaba sacando Christine porque se me colgaba cuando utilizaba el discoverer para obtener los tags de los archivos a reproducir.... mmmm, ni modos, lo tuve que quitar y hacer mi propio discoverer:

    class discoverer:
            def __init__(self):
                    print "discoverer: new instance"
                    self.discoverer = gst.element_factory_make("playbin")
                    self.discoverer.set_property("audio-sink",gst.element_factory_make("esdsink"))
                    self.discoverer.set_property("video-sink",gst.element_factory_make("xvimagesink"))
                    self.discoverer.set_property("volume",0.0)
                    self.bus = self.discoverer.get_bus()
           
            def set_location(self,file):
                    self.tags = {}
                    self.discoverer.set_property("uri","file://%s"%file)
                    self.discoverer.set_state(gst.STATE_READY)
                    self.discoverer.set_state(gst.STATE_PAUSED)
                    self.discoverer.set_state(gst.STATE_PLAYING)
                    self.discoverer.set_state(gst.STATE_PAUSED)

            def found_tags_cb(self,tags):
                    if len(tags.keys()) > 0:
                            for i in tags.keys():
                                    self.tags[i] = tags[i]
                    #print self.tags
                   
            def get_location(self):
                    path = self.discoverer.get_property("uri")
                    if path != None:
                            path = path[7:]
                    return path

           
            def get_tag(self,key):
                    try:
                            return self.tags[key]
                    except:
                            return ""

     

    Apenas lo hice hoy y aun me faltan algunas cosas como el determinar si el archivo es de audio o video, pero me funciona bien, y ya hoy pude importar mi colección de musica colocando los tags correctos en la lista:

    Cabe mencionar que en esta clase, es necesario conectar el bus (self.discoverer.bus) con un manejador para que cuando se envie el mensaje gst.MESSAGE_TAG utilice el metodo parse_tag propio del mensaje y que estos tags sean enviados a discoverer.found_tags_cb.

    def message_handler(self,a,b):
                    d = self.discoverer
                    t = b.type
                    if t == gst.MESSAGE_TAG:
                        self.discoverer.found_tags_cb(b.parse_tag())
     
    markuz | general, Software_Development, music, personal, Python, GNU, linux, christine | Friday 26 May 2006 2:24pm | Comment on this

    Por fin me actualicé a Jaws 0.6.1, lo hice hasta ahora por decidia, la actualización no fue nada dolorosa y todo parece ir bien face-smile.png . Aun asi tuve que hacerle los pequeños cambios al gadget RssReader para que mostrara las fotos de flickr, bueno, para ser mas exactos, para que mostrara el contenido del feed.

    Si crees que te es util, llegale: rssreader.tar.bz2, descompacta en jaws_path/gadgets/RssReader/ y listo

    markuz | general, Internet, stuff, personal, GNU | Sunday 30 April 2006 9:26pm | Comment on this

    Por fin, depues de 4 meses de trabajo se me da el poder liberar gpkg en su version 0.4. gpkg incluye nuevas chucherias y ha mejorado algunas otras, a continuacion una lista de lo que hace.

    • Listar los paquetes instalado y los que han sido removidos.
    • Busquedas entre los paquetes
    • Mostrar/Ocultar paquetes en las listas durante la busqueda
    • Instalar/Actualizar/Remover sin congelarse mientras pkgtools esta trabajando.
    • Instalación/Actualización/Desinstalación multiple de paquetes
    • La busqueda de archivos entre paquetes es mas rapida
    • La busqueda de archivos permite escojer en que paquetes se va a realizar la busqueda.
    • Instalación via Drag and Drop desde Nautilus
    • Instalación por via de comandos (gpkg -i paquete1 paquete2 ..)
    • Visor de logs.
    • Preferencias
    • La ayuda se muestra con Yelp (o el visor de ayuda preferido en Gnome)
    • Busqueda e Intalación de paquetes con swaret y slapt-get.

    Update: Se han hecho unas correcciones, unos bugs que se me habian barrido y que fueron detectados por Paco Revilla Gpkg ya esta disponible para descarga en Sourceforge.net. Se encuentra en codigo fuente y empaquetado para Slackware Linux.

    markuz | general, Software_Development, stuff, personal, gpkg, Python, GNU, linux, slackware | Saturday 01 April 2006 12:52pm | Comment on this

    Pues yo creo que lo que se necesitaba hacer para gpkg 0.4 ya esta casi todo hecho. En estos ultimos dias he estado trabajando en la documentación, que ahora se verá por medio de yelp. He corregido algunos pequeños bugs y he terminado de traducir algunas lineas de es_ES.

    Espero dentro de la proxima semana liberar gpkg 0.4 por fin.

    markuz | general, Software_Development, personal, gpkg, Python, GNU, gnome, linux, slackware | Thursday 30 March 2006 9:16pm | Comment on this

    Gpkg Cuenta ahora con un soporte para slapt-get. De momento no es nada comparable con lo que puede hacer GSlapt (de los mismos desarrolladores de Slapt-get).

    Dado que Gpkg debe ser pequeño, solo he agregado una opcion mas a la busqueda de paquetes, ahora, al hacer una busqueda de paquetes tambien se muestra la opcion de "buscar en:" y de ahi escogemos slapt-get y pulsamos el boton de busqueda.

    De ahi nos parseará la salida de la busqueda como una lista, donde podremos seleccionar los paquetes que queremos instalar, y entonces le damos "install" y el paquete se ha de instalar usando slapt-get.

    Ahora, por hay que seleccionar un menu la opcion "slapt-get" ??, facil, porque tambien quiero darle soporte a swaret. Me he dado cuenta de que gpkg no podrá adentrarse un poco mas si no hace esas labores de instalación tambien, y como no pienso reinventar la rueda, pues es mejor utilizar algo que ya existe, no creen?.

    markuz | general, Software_Development, general, gpkg, Python, GNU, gnome, linux, slackware | Thursday 16 February 2006 6:25pm | Comment on this

    Yer!!!! Finally!!!, absolute!!!!!, por fin pude acomodar gpkg con las autotools face-smile.png . Ahora instalar gpkg no es de un simple:

    markuz:$ python setup.py install

    a un (mas largo pero personalizable):

    markuz:$ sh configure --prefix=/usr --sysconfdir=/etc
    markuz:$ make
    markuz:$ make install

    Y que es lo que se logra con esto?. Algunos archivos en python son configurados, sobre todo los que definen donde se van a localizar ciertos archivos (imagenes, *.glade, logs, locales, etc...).

    Ademas que de esta manera la instalación de gpkg es mas amigable, mas común.

    He creado un paquete de a como lo tengo ahorita, que si bien no me ha fallado en mis pruebas me reservo a que esta en "pruebas", aun es código en trabajo y puede tener errores. Sin embargo puedes por favor probarlo y si encuentras bugs, podrias notificame?

    Codigo fuente: gpkg-0.3.2.tar.gz Paquete para Slackware 10.2 : gpkg-0.3.2-noarch-2mkz.tgz

    markuz | general, Software_Development, general, gpkg, Python, GNU, gnome, linux, slackware | Sunday 12 February 2006 7:44pm | Comment on this

    Cuando escribimos algun script en Python y pensamos en distribuirlo por lo general utilizamos el modulo "DistUtils" de Python que nos permite instalar los modulos y algunas cosas extra. Pero distutils no nos da la flexibilidad de un script como el "configure", para poder definir donde se han de instalar nuestros archivos de interface gráfica, o las imagenes, cual será el directorio en donde se guardara la configuracion (en caso de no usar Gconf) o donde se guardaran los logs, etc..

    Para esto tenemos entonces las fenomenales Autotools face-wink.png . Ahora, todo mundo ha de pensar, no mames.... si los scripts en Python no son algo compilado!!!. No importa si es compilado o no, el chiste es que el script se pueda configurar al gusto del cliente. Supongamos que en nuestra clase "pixmaps" definimos donde vamos a guardar las imagenes. Lo mas obvio seria ponerlo directamente:

    class pixmaps:
        __init__(self):
            '''Ejemplo'''
            programname = "miprograma"
            version = "0.1"
            pixmapsdir = "/usr/share/pixmaps/miprograma/"
         .
         .
         .
         .
     

    Que si bien __Deberia__ de ser la path correcta, puesto que un programa deberia ser instalado en "/usr" no en "/usr/local", no todos quieren que sea así., habrá alguien que lo quiera instalar en su $HOME.

    Utilizando Autotools podemos definir estas cosas utilizando el configure y los Makefile. He aqui la cosa, primero analicemos el script configure.ac con el que despues elaboraremos el dichoso script "configure":

    AC_INIT(mipaquete,0_dot_1,markuz_at_islascruz_dot_org)
    AM_INIT_AUTOMAKE(miprograma, 0.1)

    AM_MAINTAINER_MODE

    AM_PATH_PYTHON

    PROGRAM_NAME="paquete"
    VERSION="0.1"
    AC_SUBST(PROGRAM_NAME)
    AC_SUBST(VERSION)

    AC_CONFIG_FILES([
    Makefile
    paquete/Makefile
    ])

    AC_OUTPUT

    Lo primero es iniciar nuestro escript, lo interezante es que aqui mismo definimos variables como "PROGRAM_NAME" y "VERSION" que despues mandamos a los makefile con "AC_SUBST()". Lo que sigue es declarar los scripts que se han de crear (usando AC_CONFIG_FILES), como el mismo Makefile y el de nuestro paquete que se encuentra en el directorio "paquete", para poder hacer esto necesitamos que exista un archivo con el mismo nombre pero con un ".in" al final, es decir, en vez de tener "Makefile", tendriamos "Makefile.in"

    Para poder crear los makefile, debemos tener un Makefile.am en nuestro directorio base, y uno en cada subdirectorio, nuestro Makefile.am en nuestro directorio base deberia ser algo asi (muuuy, pero muy basicamente):

    SUBDIRS = paquete

    Hay muchas cosas que estoy omitiendo aqui, pero que podremos ver en el siguiente Makefile. Si nos damos cuenta tenemos una variable llamada SUBDIRS, que define los directorios en los que "make" y "automake" van a entrar y hacer lo suyo.

    Ahora, el Makefile.am que debe estar en el subdirectorio "paquete" deberia contener esto:

    scripts_files=pixmaps.py
    scriptsdir=($pkgpythondir)/paquete

    pkgdatadir=${datadir}
    pkgsysconfdir=${sysconfdir}

    edit = sed \
    -e 's,_at_datadir\_at_,$(pkgdatadir),g' \
    -e 's,_at_prefix\_at_,$(prefix),g' \
    -e 's,_at_sysconfdir\_at_,$(pkgsysconfdir),g'

    all: all-am

    pixmaps.py: Makefile $(srcdir)/pixmaps.py.in
    $(edit) $(srcdir)/pixmaps.py.in > pixmaps.py

    clean:
    rm -f gtk_misc.py

    A la hora de que se ejecute "make" Make va a ejecutar las reglas especificadas para all-am (crear los nuevos archivos a partir de templates), dentro de esto encontramos que se manda a llamar la variable "edit", que en realidad ejecuta sed y sustituye las variables por la version ya "expandida".

    Entonces para poder generar el script "configurado" tenemos que crear un template del mismo archivo con un ".in", si nos damos cuenta seria pixmaps.py.in, que deberia ser asi:

    class pixmaps:
        __init__(self):
            '''Ejemplo'''
            programname = "miprograma"
            version = "0.1"
            pixmapsdir = "_at_datadir_at_/pixmaps/miprograma/"
         .
         .
         .
     

    A la hora de ejecutar "make" este de acuerdo al template creará el nuevo script sustituyendo las variable sencontradas, las cuales estan encerradas entre arrobas "@". asi el usuario puede decidir donde el programa ha de buscar los pixmaps. face-smile.png .

    Un error seria pedir que "configure" haga esto, pues se pude hacer que configure nos genere los nuevos archivos solo sustituyendo las variables, pero no expande las variables como "sysconfdir","datadir", e incluso, si "prefix" esta vacio lo marcara como NONE. Lo cual no es muy bueno que digamos, podemos utilizarlo para sustituir pequeñas variables que definimos ahi mismo como PROGRAM_NAME y VERSION.

    Nota: las _at_ son en realidad arrobas, la cosa esta me parsea y me quita las arrobas tongue.png

    markuz | Software_Development, gpkg, Python, GNU | Wednesday 08 February 2006 1:30pm | Comment on this
    Online Visitors:3 Today Visitors:91 Total Visitors:66083

    Technorati