I remember that when I started making Debian packages, one of the things I found more difficult was to get information about how multiple binary packages should be done. It’s quite an important topic when packaging games, as most of games often consist of a small arch-dependent binary executable and a big bunch of arch-independent data that includes images, maps, models, textures, sound, music, fonts and so on.
I order to make it Debian-mirror-friendly, there’s no sense in multiplying all this arch-independent data by the number of architectures in Debian, and thus, most of the games shall be packaged as a small arch-dependent (any) package that includes the game itself, and a bigger arch-independent (all) one with all the data.
I’ve made a small hello-world example to ilustrate how to achieve that. The example uses autotools (1, 2, 3) for building, and consists of a small program that reads an arch-independent text file and prints it to the screen. Small enough to be a nice example, and with all the features needed to show what i mean to.
I won’t comment it in detail right now, but what rules do is to build the program with the default building system (./configure && make), install it in debian/tmp (make install DESTDIR=`pwd`/debian/tmp), and afterwards installing the files in their proper binary package directory. The resulting packages are described in debian/control. The example also includes menu and desktop descriptions and how to install an icon.
We should still find a way to avoid having to release a newer version of the data (usually much bigger in size than the code) when only a change in the code is done, but I doubt if there’s a global solution for that, or if it should be done in an individual per-package way.
Files:
A mail from strk to Gnash development mailing lists announces what many of us were waiting for. I’ve put some newer packages available, built against Etch, in case someone wants to try them. I’ve changed the renderer to AGG instead of OpenGL, which is preferable, and the media player to GStreamer instead of FFmpeg, because FFmpeg is still giving some problems. It seems that we’re closer to the next release!
Solo es un número, it’s just a number.
Links:
When I first saw UltraStar (a PC conversion of the famous karaoke game Singstar), I decided I wanted it in Debian, but I found it quite difficult to port it (even being GPL), as it was programmed in Kylix/Delphi. There are lots of songs around there for UltraStar, and it is also possible to import them from SingStar.
UltraStar-NG (the NG stand for Next Generation) is based on UltraStar, but it’s being recoded in C++. It allows you to add your own songs in the forms of mp3s along with a song text and a music video file. The game allows a computer to evaluate how good you are when you sing by analyzing your voice pitch.
We‘ve already finished packaging UltraStar-NG for Debian yesterday, and it is now waiting in the NEW queue for the FTP-Masters approval. Lets hope it’ll be available soon
SingStar is a karaoke video game for the PlayStation 2, published by Sony Computer Entertainment Europe and developed by SCEE and London Studio. It is popular karaoke game in which players sing to music videos in order to score points. Players interface with their PS2 via SingStar USB microphones while a music video plays on screen. Lyrics are shown at the bottom of the screen. SingStar matches a player’s song voice to the original track, with players scoring points according to how accurate their singing is. Usually, two players compete simultaneously.
An article published by the Washington Post titled “Sexual Threats Stifle Some Female Bloggers” and written by Ellen Nakashima has made me worry about what’s happening in the blogosphere.
Here go some extracts:
A 2006 University of Maryland study on chat rooms found that female participants received 25 times as many sexually explicit and malicious messages as males. A 2005 study by the Pew Internet & American Life Project found that the proportion of Internet users who took part in chats and discussion groups plunged from 28 percent in 2000 to 17 percent in 2005, entirely because of the exodus of women. The study attributed the trend to “sensitivity to worrisome behavior in chat rooms.”
Sierra, whose recent case has attracted international attention, has suspended blogging. Other women have censored themselves, turned to private forums or closed comments on blogs. Many use gender-neutral pseudonyms. Some just gut it out. But the effect of repeated harassment, bloggers and experts interviewed said, is to make women reluctant to participate online — undercutting the promise of the Internet as an egalitarian forum.
The same way that, throught history, women have been thrown out of the public life and shut in domestic life due to the violence associated to patriarchy, and that being still exacly what happens in many countries all across the world, it seems that some people are trying to make that also a reality in cyberspace, making us go away from the public spaces and hiding in some safe refuges, kind of locking us up in domestic life again. Thankfully the harassers are no more than a bunch of mentally disturbed ones, and most of the people I know, male and female, are strongly against this, but as long as we are responsive to these threats and hide ourselves out of the public life to be safe, we’re gonna have a problem.
Ren’Py is an engine that supports the creation of visual novels and storytelling. I fell in love with it since I first saw it, almost two years ago, and some of my friends know how much work I’ve devoted to that package so that it’s finally in Debian in a proper state, including submitting many patches to upstream. Lots of thanks go to Ana for all her help and support with this package.
Ren’Py is designed to make writing complete visual novels as easy as possible. The engine supports, of course, conversations between the two characters, but also images, different transitions between pictures, music and sound, so playing a game can be a complete multimedia experience. The engine itself is based in Python and SDL (in fact, it is based in python-pygame). Anyway, ccording to the manual, you don’t need to know any programming, or be able to program, to use Ren’Py.
Even though right now there are a lot of games made with Ren’Py available for downloading, most of them are released pre-compiled (for a certain version of python, including the whole interpreter and libraries in the release), and usually targeted towards Windows (even though Ren’Py is supported on Windows, Mac OS X, and Linux, and can be made to run on other platforms). Of course all the authors of the games are welcome if they want to publish them as Free Software, anyway my plans go towards using the engine for developing educative applications.
My only problem is that I need to draw the characters I’ll use throughout the tutorias, which is something I’m not especially good at. I’ve got myself a book on how to draw manga and anime characters, but it’s probably taking a while until I’m proficient enough at that. I’ll try to find someone to help me with that. In fact, it would be great to release a free set of characters that newbie creators of stories could use as a starting point. Lets see if I can find an artist for that.
The main drawback I see is that the dependencies might be too much to put the engine in a small embedded portable gadget to be able to play a visual novel anywhere. Who knows, maybe in the future.
Evolution, then, is a theory, one of the most influential, farreaching and important theories ever devised. In this context, it’s worth pointing out that the word `theory’ is often used in a quite different sense, to mean an idea that is proposed in order to be tested. Strictly speaking, the word that should be used here is `hypothesis’, but that’s such a fussy, pedantic-sounding word that people tend to avoid it. Even scientists, who should know better. `I have a theory,’ they say. No, you have a hypothesis. It will take years, possibly centuries, of stringent tests, to turn it into a theory.
The theory of evolution was once a hypothesis. Now it is a theory. Detractors seize on the word and forget its dual use. `Only a theory,’ they say dismissively. But a true theory cannot be so easily dismissed, because it has survived so much rigorous testing. In this respect there is far more reason to take the theory of evolution seriously than any explanation of life that depends on, say, religious faith, because falsification is not high on the religious agenda. Theories, in that sense, are the best established, most credible parts of science. They are, by and large, considerably more credible than most other products of the human mind. So what these people are thinking of when they chant their dismissive slogan should actually be `only a hypothesis’.
That was a defensible position in the early days of the theory of evolution, but today it is merely ignorant. If anything can be a fact, evolution is. It may have to be inferred from clues deposited in the rocks, and more recently by comparing the DNA codes of different creatures, rather than being seen directly with the naked eye in real time, but you don’t need an eyewitness account to make logical deductions from evidence. The evidence, from several independent sources (such as fossils and DNA), is overwhelming. Evolution has been established so firmly that our planet makes no sense at all without it. Living creatures can, and do, change over time. The fossil record shows that they have changed substantially over long periods of time, to the extent that entirely new species have arisen. Smaller changes can be observed today, over periods as short as a year, or mere days in bacteria.
Evolution happens.
What remains open to dispute, especially among scientists, is how evolution happens. Scientific theories themselves evolve, adapting to fit new observations, new discoveries, and new interpretations of old discoveries. Theories are not carved in tablets of stone. The greatest strength of science is that when faced with sufficient evidence, scientists change their minds. Not all of them, for scientists are human and have the same failings as the rest of us, but enough of them to allow science to improve.
The Science of Discworld III: Darwin’s Watch
by Terry Pratchett, Ian Stewart and Jack Cohen
Muchos reproductores de MP3 basados en memorias flash no permiten organizar los archivos en el orden en el que te gustaría escucharlos, sino que van siendo reproducidos en el orden en el que el dispositivo los encuentra en su sistema de archivos, normalmente VFAT. En los tiempos del DOS, había un programa de las Norton Utilities llamado DS que permitía reordenar los archivos en una estructura de directorio de tipo FAT (File Allocation Table). No soy la única que se ha encontrado con este mismo problema, al parecer.
Normalmente, el orden en el que los archivos aparecen en el directorio es el mismo en el que se han copiado, y en el que serán reproducidos, así que la solución más sencilla que he encontrado para reordenarlos, es ejecutar algo del estilo, para un solo nivel de profundidad de directorios:
$ mkdir t
$ mv * t
$ cd t
$ for i in *; do echo $i; mkdir "../$i"; done
$ for i in */*; do echo $i; mv "$i" "../$i"; done;
$ cd ..
$ rmdir t/* t
Al menos a mí parece funcionarme bien.
Some days ago I wrote a small example of creating multiple binary packages from a source where the program was built and installed with autotools. Now I’ve remade the example, starting from a system built directly using a make script, and which doesn’t provide an install target. Even more, it is supposed to get the data from a directory relative to the working directory. This is, in fact, a scheme often found when packaging games. The debian/rules script uses quilt to apply the necessary patches, so that absolute directories are used for the data file.
Frets on Fire is, according to the Wikipedia, a music video game, a clone of the Guitar Hero video games, in which the player emulates playing a guitar with the keyboard of their computer. The keyboard is also meant to be picked up like a guitar in order to play, with one hand pressing the fret buttons and another pressing the pick buttons. There is support for joysticks however, meaning that the Guitar Hero controllers can be used as well. The game also includes a tutorial and a built-in song editor. The source code written for the game is written in Python, and released under the GNU General Public License.
The game included some non-DFSG-free song files and some internal fonts which needed to be replaced in order for the game to enter Debian repositories. There’s a pack of new songs made by Carlos Viola Iborra and released under a free license. Thanks Carlos! This package of songs has entered the repositories too and is called fretsonfire-songs-sectoid. The original songs that were included in the game, made by Tommi Inkilä, will probably be included in the non-free repositories soon, as a package called fretsonfire-songs-inkila.
I’d like to thank the developers of FoF, Sami Kyöstilä, Joonas Kerttula and Tommi Inkilä, for their full cooperation during all this process. You’re great, guys!