Skip navigation

Props to this guide on Lifehacker and this one on the XBMC forums, for walking me through most of this process.

Ingredients

  • Acer AspireRevo — This is a $250 nettop with an Intel Atom 230 processor, 1GB of RAM, 160GB SATA hard drive, and an Nvidia ION LE graphics chip. The Nvidia ION is the important part here, as it’s powerful enough to handle HD playback.
  • XBMC Live ISO — I used the XBMCFreak LiveCD, an optimized version of XBMC Live for NVIDIA users.
  • Unetbootin — To create a bootable USB flash drive with the XBMC ISO.
  • a USB flash drive with at least 2GB of space
  • HDTV with HDMI input, of course

Download XBMC Live

XBMC Live is the XBMC Media Center with an embedded operating system (Linux distro). As mentioned above, I went with the XBMCFreak LiveCD but the official release is here. Download the file, unzip it to get at the iso file.

Install XBMC Live to USB flash drive

The Revo does not have a disc drive, so we’ll need to create an installer that uses a USB flash drive. Get Unetbootin and give it the XBMC iso, it will extract the files onto the flash drive and make it bootable.

Prep the Revo

Allocate more memory to the GPU to maximize video playback performance. In the system BIOS, go to the Advanced Chipset Features menu and set the frame buffer size to 256MB. Save and exit the BIOS.

Install XBMC to hard drive

  1. Plug in the flash drive and reboot the computer
  2. Press F12 during boot and select to boot from the flash drive
  3. Select “Install XBMC Live to disk”
  4. Choose “Guided – entire disk”
  5. Let the install finish, the rest of it should be pretty straightforward
  6. The machine will turn itself off after the install is complete

Tweaking XBMC

XBMC should boot up directly from the hard drive now. We’ll need to tweak XBMC to take advantage of the graphics processor via VDPAU — this allows XBMC to offload video processing to the graphics processor so you regular processor isn’t tied up. Enable this in Settings > Video > Playback, find the “Render Method” option and set it to VDPAU.

We’ll also need to adjust the audio output to use HDMI and, in my case, tell it that the receiver is not AC3-capable. Head over to Settings > Audio, and set the “Audio output device” to to hdmi, the “Passthrough output device” to hdmi, enable “Downmix multichannel audio to stereo,” and disable “Dolby Digital (AC3) capable receiver.”

Finished

That’s it, the Revo is finished, though you might have to play around with the video resolution or the zoom settings on the skin, depending on your TV. In my case, video playback was fine but the XBMC menus overlapped the edges of the screen, so I had to set the skin to zoom out about 8%.

My next step will be to prep my media collection in order to get XBMC to correctly identify everything. By default, XBMC can scan your library and scrape the internet to pull info (and DVD art, album art, fan art, etc) about your media. But it’s better practice to use a media manager to write nfo files into the individual folders that the media is stored in, so if your XBMC installation gets corrupted you can quickly rebuild your database. I’ll be looking at different media management apps in the next little while.

The Forgotten Dialect of the Heart
Jack Gilbert

How astonishing it is that language can almost mean,
and frightening that it does not quite. Love, we say,
God, we say, Rome and Michiko, we write, and the words
get it all wrong. We say bread and it means according
to which nation. French has no word for home,
and we have no word for strict pleasure. A people
in northern India is dying out because their ancient
tongue has no words for endearment. I dream of lost
vocabularies that might express some of what
we no longer can. Maybe the Etruscan texts would
finally explain why the couples on their tombs
are smiling. And maybe not. When the thousands
of mysterious Sumerian tablets were translated,
they seemed to be business records. But what if they
are poems or psalms? My joy is the same as twelve
Ethiopian goats standing silent in the morning light.
O Lord, thou art slabs of salt and ingots of copper,
as grand as ripe barley lithe under the wind’s labor.
Her breasts are six white oxen loaded with bolts
of long-fibered Egyptian cotton. My love is a hundred
pitchers of honey. Shiploads of thuya are what
my body wants to say to your body. Giraffes are this
desire in the dark. Perhaps the spiral Minoan script
is not language but a map. What we feel most has
no name but amber, archers, cinnamon, horses, and birds.

Summary

As the title implies, Yvonne Johnsons life was just that, Stolen. Born into a cruel and unforgiving world this is Yvonne’s story of her journey through her life as she remembers it. Writing her first letter to Rudy Wiebe, a co-author of the novel, on the 18th of November 1992, Yvonne began the process of revealing her dark secret life that lead her to commit murder and become the first Native women in Canada serving a life sentence for first degree.

Born in the town of Kalispell, Montana, Yvonne emerged into the world with numerous disadvantages that plagued her throughout life. First of all she was what she often referred to as a “half-blood”, a mix of race between her Norwegian Father, Clarence Johnson and her Cree mother, Cecilia Bear. The most obvious ailment to Yvonne was her double cleft lip, which probably had the most detrimental effect on her development in life. This condition caused her major difficulties in early childhood with speech development. Which in turn silenced Yvonne for a large part of her life, making her a prime target for the abuse she received. Although she has some fond memories of childhood, they are overshadowed with the overwhelming sexual abuse she received from various family and friends. However, it was the death of her brother, Earl, that really tipped the ice berg in Yvonne’s life. Following his death Yvonne’s parents split up and she spent the rest of her life meandering between Canada and the States between parents. With a stint in Manitoba’s skid row Yvonne’s life really started to go off the tracks. Consumed by alcohol and constant fights Yvonne lost herself. After three kids, a failed relationship, and an alcoholic boyfriend it’s a wonder that Yvonne even survived.

Criminal Data

The murder of Leonard Charles Skwarok took place on September 15th 1989. The individuals charged with his murder, where originally accused of second degree murder. They included Yvonne Johnson, Dwayne Wenger, Ernest Jensen and Shirley Anne Salmon. However their convictions differed dramatically. Shirley Anne was charged under section 268 (aggravated assault) in the criminal code of Canada. Dwayne Wenger and Ernest Jensen were charged under section 235 of the criminal code (murder in the second degree). Lastly Yvonne was charged under section 235 of the criminal code (murder in the first degree). The penalties were as follows: Everyone who commits an aggravated assault is guilty of an indictable offence and liable to imprisonment for a term not exceeding fourteen years. In Shirley Anne’s case she only got one year in prison and five years probation. For second degree murder the sentencing is dependent on the judge who by recommendation of the jury can sentence the accused to anywhere from ten to twenty five years without parole. Both Dwayne and Ernest received the sentence of life up for parole in ten years. The first degree sentencing is an automatic twenty five years in prison without the possibility of parole. This was Yvonne’s sentence life without parole. Although she did appeal this conviction she was denied by unanimous decision of the judges. The sentencing and sections of the criminal code have not significantly changed since this case.

Theoretical Underpinnings

Only four percent of the Canadian population is aboriginal, so why is it that this ethnic group makes up eighteen percent of the adults admitted into federal custody? (Statistics Canada 2006/07). Sociological theories can help us to determine why this is the case. For instance, Control theorists would argue that some answers to this gross over representation of Aboriginal people in prisons lie in the eminent fact that their bonds to society are weak or broken. By looking at the social bond of attachment and how it pertains to the commission of deviant acts in the aboriginal population, and by using Labelling theory to identify what happens in conviction of those apprehended once they are labelled deviant, we can attempt to see why this problem in prisons exists.

Social bond theorists talk about various other bonds of attachment, commitment, involvement and belief, and state that weakness in any or all of the bonds can potentially result in deviant behaviour. For our purposes I think that analysing the bond of attachment is most useful when looking at deviant behaviour among Natives. Attachment itself refers to how strongly an individual feels attached to others and becoming “alienated from others [leads to] socially derived hostility sufficient to account for the aggressiveness of those whose attachments to others have been weakened.” (Hirschi, 2008). That is the basis of our social bond argument; the socially derived hostility from non-ethnic groups towards natives entices them to commit deviant behaviour. One does not have to look far to find a negative stereotype about aboriginal people; for example, “in the last decade, record numbers of Aboriginal persons have graduated from institutions of higher learning… however, in the past three to four years, attitudes toward Aboriginals have deteriorated.” (Facing the Future: Relations Between Aboriginal and Non-Aboriginal Canadians) This creates a huge problem in Canada, because it emphasizes the idea that despite scholastic achievements of first nation’s people, we as a Canadian society are still attaching a negative stigma to that ethnic minority. This in turn is creating a feeling of alienation among aboriginals, for how can one feel attached to a society that looks down upon them regardless of the achievements they make? Reinforcing this idea, we turn our gaze onto the non-fiction novel A Stolen Life: Journey of A Cree Woman. Yvonne, the main character, often talks of the numerous bar fights she got into as a fight between, “Indians against the world” (Wiebe & Johnson, 1998). It is surprising that something as simple as a bar fight is being characterized in this fashion, as a fight against the world, or more specifically against Canadian society. Looking at life in this manner creates a huge feeling of alienation within Yvonne, who ultimately feels isolated from conventional Canadian society. She expresses this feeling through her consistent references of feeling alone, “to depend only on [herself]. There [is] no one else.”(Wiebe & Johnson, 1998). This could help us to understand why she commits murder which is due to this lack of attachment. Within this context is the idea that Aboriginal’s are more likely to commit crime due to their feeling of alienation caused by the negative stereotypes Canadian society places on them, ultimately leaving them feeling detached from society.

Looking at committing crime is only half the problem. Once someone commits a crime there is a legal process and conviction that follows. This might lead us to question what really is going on in our justice system and if fair trials are actually occurring with regards to trials involving ethnic minorities. Using labelling theories, we can see that this is far from the case. First, in dealing with conviction of offences, studies in rural areas revealed that, “[p]robation officers…sentence Indian and Métis offenders severely, without the justification of correlated legal variables”( Cattarinich, 1996). The study shows that due to the label Indians receive in regards to possible convictions, they are more severely punished; expressing the notion that there is a more than obvious problem when it comes to the conviction of Aboriginals. With regards to court decisions studies have shown that, “based on an analysis of Edmonton courtroom data, found that race acts as an intervening variable under certain conditions and affects the accused chance of successfully negotiating a plea.” (Cattarinich, 1996). This example exemplifies just how detrimental the effect of a negative or criminal label is on someone of ethnic background, and more specifically of Native decent. We can see that once labelled a deviant, natives face harsher consequences and sentencing, because without being able to negotiate a plea leaves them at the mercy of the courts. This has a lot to do with the idea that “ the degree to which an act will be treated deviant depends on who commits the act and who feels he has been harmed by it.” (Becker, 2008). In the case of first nation’s people, when they face the courts, the judges and jury generally feel more threatened then if someone of Caucasian decent was to appear on the stand. Again looking back to our non-fiction novel Yvonne has similar experiences regarding apprehension and conviction of her offense. Similar to the example from before once Yvonne was identified as a possible suspect in a minor complaint the RCMP who, “sure as hell [had] no warrent” (Wiebe & Johnson, 1998), proceeded to assume the worst and attempted to break into her household. Yvonne tried to convince them that nothing was wrong, but because she had already been labelled deviant by a complaint there was no convincing them. This was before a body or further evidence of wrongful doing was present. It shows how native people once labelled deviant have a difficult time convincing anyone otherwise. Later after being convicted of first degree murder Yvonne files for an appeal, which was, “disallowed…on all counts. Unanimous negative ruling by all three judges.” (Wiebe & Johnson, 1998). This again emphasizes the problem that once receiving a deviant label, it is immensely difficult for those of Native American heritage to break out of that association with the label. In Yvonne’s case the judges of her appeal request seemed in full agreement that once a killer always a killer and therefore denied her an appeal. This could be helpful in looking back at our prison populations, for it could offer another possible explanation. Perhaps the reason that aboriginals are over represented lies in the fact that once they are labelled deviant it is hard to persuade anyone otherwise, and therefore it is more difficult for them to get out of the criminal justice system.

So looking back we see that there are many possible reasons for why this dilemma is occurring in our Canadian prisons. It could potentially be a lack of attachment to conventional Canadian society leading Aboriginals to commit deviant acts. It could lie in our justice system that acts harshly towards Native Americans once labelled deviant, making for more severe punishments and roadblocks when trying to exit our federal justice system. By analysing these possible accounts, we can try to come up with some solutions to this prison problem, making Canada a more equal place for anyone to reside in.

Critical Analysis

Focussing our attention more towards the novel, A Stolen Life: The Journey Of A Cree Woman, we now look at the role that race/ascribed status, the victim, and the offenders played in the commission of the deviant act.

Being born into a world as a Métis with a physical disability had immense effects on Yvonne. Not only did society make her feel out of place because of her ethnicity, as explored earlier with the theoretical analysis, but on top of this she faced another challenge with her double cleft lip. Yvonne often mentioned that, “there are lots of reasons I don’t want people close to me. My lip is only one.” (Wiebe & Johnson, 1998). By isolating herself from others due to the shame and unattractiveness Yvonne felt about her lip, she created an easy target for sexual abuse. And because of this apparent weakness she portrayed she received endless abuse throughout her life. This, blatantly had a negative effect on Yvonne, causing her low self esteem, a more aggressive nature and various other extremely complex psychological issues.

This ties in nicely with the role of our victim Leonard Skwarok, who, unbeknown to Yvonne had been previously accused for child molestation. Being a victim of sexual abuse herself at a young age caused Yvonne a predisposed anger associated with the idea of it. Talking about the night of the murder Yvonne states, “I was angry at the possibility that this man could be a child molester, sitting in my home,”(Wiebe & Johnson, 1998). The fact that the victim was potentially a child molester plays a key role in his murder, for if this had not been the case Yvonne, or the others involved may not have attacked him. And Yvonne would not have had the wounded memories of her childhood ripped open causing her immense pain and aggression towards Leonard.

Lastly we look at the role of the offenders in this murder case, all of which are socially tied to Yvonne as either family or friends. Shirley Anne, Yvonne’s cousin, Dwayne Wenger, Yvonne’s husband, and Ernest Jensen, a family friend, were all offenders in this murder. By looking at various aspects of the accused lives we see some common trends that may explain why they took part in this brutal assault that ended Leonard’s life. First of all, all of the accused were heavy alcoholics and, “just got drunk.” (Wiebe & Johnson, 1998), at the time of the crime. This may have contributed to their lack of judgement, in stopping to beat the victim before it was too late. When Dwayne was questioned about how many times he kicked the victim he responded, “when drunk, once, twice, three times, can seem like once when you sober up.” (Wiebe & Johnson, 1998). Dwayne reveals how clouded his judgement was that night, due to his intoxication. Another key fact was that all of the offenders were of lower socioeconomic status which put them at a higher risk of committing violent crimes. For example, “Deprived areas marked with poverty and inequality spawn social exclusion, alienation, and violence” (Tepperman, 2006). This expresses the idea that because the role of those involved was such that they all were members of lower socioeconomic status they were at high risk to become offenders in the first place.

References

Becker, Howard. (2008). Labelling Theory. In Alex Thio, Thomas Calhoun & Addrain Conyers, Readings in Deviant Behaviour (pp.51-53). Boston.Pearson Education, Inc.

Cattarinich, Xavier. (1996). Alternative Perspectives on the overrepresentation of Native Peoples in Canadian Correctional Institutions: The Case Study of Alberta. The Canadian Journal of Native Studies, XVI, 15-36. Retreived March 27, 2009 from the World Wide Web:

http://www.brandonu.ca/Library/cjns/16.1/Cattarinich.pdf

Frederickson, Kris. (2004). Cultural and Historical Understanding is the Key. Facing the Future: Relations Between Aboriginal and Non-Aboriginal Canadians. Centre for Research and Information on Canada. Retrieved March 27, 2009 from the World Wide Web:

http://site.ebrary.com/lib/calgarypubpolicy/Doc?id=10079808&ppg=16

Hirschi, Travis. (2008). Control Theory. In Alex Thio, Thomas Calhoun & Addrain Conyers, Readings in Deviant Behaviour (pp.42-44). Boston.Pearson Education, Inc.

Statistics Canada. n.d. ‘The changing profile of adults in custody 2006/2007.’ Retreived March 27, 2009 from the World Wide Web:

http://www.statcan.gc.ca/pub/85-002-x/2008010/article/10732-eng.htm#a4

Tepperman, Lorne. (2006). Deviance, Crime, and Control Beyond the Straight and Narrow. Canada. Oxford University Press.

Wiebe, R., & Johnson, Y. (1998). Stolen Life: The Journey of a Cree Woman. Toronto. Random House.

“All right,” said Susan, “I’m not stupid. You’re saying humans need … fantasies to make life bearable.”

NO. HUMANS NEED FANTASY TO BE HUMAN. TO BE THE PLACE WHERE THE FALLING ANGEL MEETS THE RISING APE.

“Tooth fairies? Hogfathers?”

YES. AS PRACTICE. YOU HAVE TO START OUT LEARNING TO BELIEVE THE LITTLE LIES.

“So we can believe the big ones?”

YES. JUSTICE. MERCY. DUTY. THAT SORT OF THING.

“They’re not the same at all!”

TAKE THE UNIVERSE AND GRIND IT DOWN TO THE FINEST POWDER AND SIEVE IT THROUGH WITH THE FINEST SIEVE AND THEN SHOW ME ONE ATOM OF JUSTICE, ONE MOLECULE OF MERCY. AND YET YOU ACT AS IF THERE WERE SOME SORT OF RIGHTNESS IN THE UNIVERSE BY WHICH IT MAY BE JUDGED.

“Yes. But people have got to believe that or what’s the point — “

MY POINT EXACTLY.

-Terry Pratchett

This was a class assignment in shell scripting — to implement the function of tripwire using the find command as part of it. Tripwire is a program that builds a database of pathnames and checksums in an attempt to discover changes to a system, by comparing the results of a new run against the results of an original run.

The script itself: http://aimee.pastebin.com/fn4p0SBn
And its conf file: http://aimee.pastebin.com/J6bJX6qD

Nothing too special here. Directories to search and location of log files to are specified in the conf file. Interesting parts of the script are the

find $dir -type f >> $logdir/savedstate.txt

which walks through the directory $dir and writes the pathnames of every file to savedstate.txt and the

find $dir -type f -print0 | xargs -0 md5sum >> $logdir/savedstatemd5.txt

which walks through the directory $dir and calculates the md5sum of every file, writing it to savedstatemd5.txt. These files are effectively the current state of the specified search directories. Then there’s a couple of comm commands to compare the current state to the original state and output any deleted or added files. Modified files are dealt with like so

md5sum -c $logdir/savedstatemd5.txt.bak 2>&1 | grep -v ‘OK$’ &> $logdir/md5changes.txt

which basically runs an md5sum check on every file listed in the savedstatemd5 of the original run, and greps out those files that fail the check. At the end of the run, “current” state becomes “previous” state in preparation for the next run.

Ideally, this is run in –init mode when the system is first set up, before it’s connected to the network. Then it’s run in –scan mode very regularly to catch anything nefarious that is happening.

It’s a credit to my parents and grandparents, and aunts and uncles, that I was raised with little to no awareness of the question of a woman’s intelligence or capability as compared to a man’s. Growing up, I was never made to feel like any of my interests were not suitable for a girl, or like I needed to place limitations on my goals or lower my expectations because of my gender. So while I’m aware that there have been many women whose achievements in science and technology changed the course of history and paved the way for the current generation of women, I am embarrassingly ignorant of most of them. Thus, in honor of Ada Lovelace Day, a little learning on one of those women who helped create the world in which I was able to grow up believing I could do anything.

Grace Hopper (1906 – 1992) was the third programmer on the world’s first computer, and challenged multiple gender barriers as a woman in the 1940s. She graduated from Vassar with a degree in mathematics in 1928, earned a PhD from Yale in 1934, and was an associate professor teaching mathematics at Vassar by 1941. She was the first woman to earn a doctorate in mathematics at Yale. Hopper enlisted in the United States Navy Reserve in 1943, and was assigned to the Bureau of Ordnance Computation Project at Harvard University as a lieutenant in 1944. She was the third person to join the research team headed by Howard H Aiken, working on the Mark I computing machine. This work led her to joining the Eckert-Mauchly Computer Corporation in 1949, with which she remained associated until 1971. During this period she is credited with creating the first compiler for a computer programming language — from her originates the concept that programs could be written in languages that were closer to English than to machine code. This was her best-known contribution to computing, the invention of the tools that allow humans to communicate with computers with ordinary language instructions.

Hopper served in the Naval Reserve for most of her working life; she was retired briefly and recalled to active duty twice, in the ’60s and ’70s, finally retiring for good in 1986 with the rank of Rear Admiral, Lower Half. She died in 1992, aged 85, and was buried with full Naval honours in Arlington National Cemetery. The list of her medals and honours is long, and her accomplishments were many. That science and technology has come so far in terms of women’s participation on an equal basis is due in large part to the pioneering work of women like Grace Hopper.

So thank you, Rear Admiral Grace Hopper, and Ada Lovelace, for leading the way. And thank you, Suw Charman-Anderson, for organizing this day to remember the women on whose shoulders we stand.

More on Grace Hopper
More on Ada Lovelace
More on Ada Lovelace Day

The following was taken from The UNIX and Linux Forums. All credit goes to them.

Unix keeps 3 timestamps for each file: mtime, ctime, and atime. Most people seem to understand atime (access time), it is when the file was last read. There does seem to be some confusion between mtime and ctime though. ctime is the inode change time while mtime is the file modification time. “Change” and “modification” are pretty much synonymous. There is no clue to be had by pondering those words. Instead you need to focus on what is being changed. mtime changes when you write to the file. It is the age of the data in the file. Whenever mtime changes, so does ctime. But ctime changes a few extra times. For example, it will change if you change the owner or the permissions on the file.

Let’s look at a concrete example. We run a package called Samba that lets PC’s access files. To change the Samba configuration, I just edit a file called smb.conf. (This changes mtime and ctime.) I don’t need to take any other action to tell Samba that I changed that file. Every now and then Samba looks at the mtime on the file. If the mtime has changed, Samba rereads the file. Later that night our backup system runs. It uses ctime, which also changed so it backs up the file. But let’s say that a couple of days later I notice that the permissions on smb.conf are 666. That’s not good..anyone can edit the file. So I do a “chmod 644 smb.conf”. This changes only ctime. Samba will not reread the file. But later that night, our backup program notices that ctime has changes, so it backs up the file. That way, if we lose the system and need to reload our backups, we get the new improved permission setting.

Here is a second example. Let’s say that you have a data file called employees.txt which is a list of employees. And you have a program to print it out. The program not only prints the data, but it obtains the mtime and prints that too. Now someone has requested an employee list from the end of the year 2000 and you found a backup tape that has that file. Many restore programs will restore the mtime as well. When you run that program it will print an mtime from the end of the year 2000. But the ctime is today. So again, our backup program will see the file as needing to be backed up.

Suppose your restore program did not restore the mtime. You don’t want your program to print today’s date. Well no problem. mtime is under your control. You can set it to what ever you want. So just do:

$ touch -t 200012311800 employees.txt

This will set mtime back to the date you want and it sets ctime to now. You have complete control over mtime, but the system stays in control of ctime. So mtime is a little bit like the date on a letter while ctime is like the postmark on the envelope.

find command -mtime -ctime -atime

The find command uses arguments like:
-mtime -2
-mtime +2
-mtime 2

There are -ctime and -atime options as well. Since we now understand the differences among mtime, ctime, and atime, by understanding how find uses the -mtime option, the other two become understood as well. So I will describe find’s use of the -mtime option.

As you probably know, the find command can run for minutes or hours depending on the size of the filesystem being searched. The find command makes a note of its own start time. It then looks at a file’s mtime and computes how many seconds ago the file was modified. By dividing the seconds by 86,400 (and discarding any remainder), it can calculate the file’s age in days:

0 days in seconds: 0 – 86399
1 day in seconds: 86400 – 172799
2 days in seconds: 172800 – 259159

So now that we know how many days ago a file was modified, we can use stuff like “-mtime 2″ which specifies files that are 172800 to 259159 seconds older than the instant that the find command was started.

“-mtime -2″ means files that are less than 2 days old, such as a file that is 0 or 1 days old.

“-mtime +2″ means files that are more than 2 days old… {3, 4, 5, …}

It may seem odd, but +0 is supposed to work and would mean files more than 0 days old. It is very important to recognize that find’s concept of a “day” has nothing to do with midnight.

And that’s how it works. Good to know if you’re doing backups, or just looking for changed files in general.

I’m only using my desktop and PS3 to test server and client functionality, respectively, but here’s what I’m thinking in terms of hardware…

An inexpensive nettop- or mini- PC for the client, something like the Acer AspireRevo (reviews here). It’s got good reviews as an HTPC or media center — small, inexpensive, quiet, comes with an HDMI port and plenty of USB ports and a card reader. Only cons for me are the lack of built-in WiFi and optical drive, which aren’t too big a deal.

Server hardware is a little harder to pin down. Really, any old PC will do as long as its got a reasonable amount of processing power and plenty of memory slots. Primary requirements are probably a good power supply unit, an optical drive, a minimum of 2GB RAM, a 2.4GHz processor or more (but not that much more), and a hard drives or two. Plenty of refurbished or barebones systems meet these requirements, so I’ll probably pick up whatever fits my budget.

I just published a post on installing and configuring FUPPES, then realized I should probably flesh out the software requirements for this little project. I’ll probably come back and edit this post if I come up with anything else, but these are the basics.

On the server side:

  • the ability to store and share media (pictures/videos/music) using UPnP protocols

On the client side:

  • function as a digital audio/video player, play the popular audio/video formats
  • can auto-detect UPnP servers on the local network to browse/stream media

Nice to have’s:

  • the ability to go online to automatically retrieve information and artwork (thumbnails/poster/cover/fanart) from websites for music, movies and TV shows — commonly known as a media info scraper or web scraper
    • I think this can be done on either the server or client side — more research required
  • the ability to control the client via an IR remote control

So I’m testing media server apps on my desktop, which is running Ubuntu 9.10. Right now I’ve got FUPPES installed. The wiki is pretty good for getting started and there’s plenty of other resources on the interwebs. These were the instructions I used — I’m repeating them here, for the sake of completeness.

In the terminal,

$ sudo apt-get remove autoconf automake gettext

to clean your system of old programs fuppes uses, and delete your /home/username/fuppes/ directory, if it exists. Now, with a clean slate, in the terminal:

$ sudo apt-get update

Install your codecs:

$ sudo apt-get install ffmpeg build-essential \
libavutil-dev libavformat-dev libavcodec-dev \
subversion libtool \
libsqlite3-dev libpcre3-dev libxml2-dev libpcre3-dev pkg-config

Reinstall autoconf, automake and gettext:

$ sudo apt-get install autoconf automake gettext

Get the latest release of fuppes:

$ svn co https://fuppes.svn.sourceforge.net/svnroot/fuppes/trunk fuppes
$ cd fuppes
$ autoreconf -vfi
$ ./configure --prefix=/usr
$ sudo make
$ sudo make install
$ ldconfig

Now run fuppes once:

$ fuppes

and then quit. This will create the config file for you: ~/.fuppes/fuppes.cfg. Modify this file according to your needs, following the instructions in the wiki. Re-fun fuppes as root in the terminal. Then hit r and enter — this will tell it to look through the directories you specified in the config file and build the database.

There’s also a good article on switching to using fuppesd in the wiki: startup with init.d.

It’s working out fairly well so far, and it includes basic DLNA support so I can test with my PS3. One issue I’m having with this setup: rebuilding/updating the database. I changed the shared directories configured in the fuppes.cfg file but neither an update nor a rebuild of the database had any effect — I’m still seeing the old shared directory when I test. But I haven’t had a chance to really play around with it yet, so more on this later.

I’m currently attempting to build a home digital media network, and I’ll be using this blog to keep track of it. Here’s the rough idea:

There will be a media server, ideally located in a spot where noise won’t matter. This computer will host all my movies (roughly ~500 GB worth and growing), all my music (about 10-15 GB), and my digital photos.

There will also be at least one client computer, which will stream media from the server. The primary requirement for this machine is that it be small and quiet. But it would be nice if it also had no moving parts (for increased reliability) and was cheap (because I have limited disposable income).

I also own a PS3, so the server will need to be DLNA compliant in order for the PS3 to recognize it.

Follow

Get every new post delivered to your Inbox.