Monday, 24 September 2007

So you've turned your classic Xbox into a full-blown media center (or you're thinking about it) and now you want to add the finishing touches—like games, album art and video—to your setup. The Xbox Media Center software has a bunch of configurable options, scripts and hooks into online services that can complete your XBMC experience. After the jump, find out how to upgrade to the latest version of XBMC, fill in the details like cover art, plot and reviews on your music and video files, stream video from CNN and Comedy Central, play Tetris and more with your XBMC.


Install XBMC's Latest Version

First and foremost, make sure you're running the latest build of XBMC. While version 2.0.1 is the last stable release, it's more than a year old and much newer builds are available on a frequent basis (the version I'm running was built last week). Either grab the latest build from here or use the T3CH downoader script on your XBMC itself to get the latest build. It wasn't until I upgraded to the latest "bleeding edge" release that scripts and other features worked for me. Thanks, Jared!

t3chdownloader-latestversio.png

To upgrade your existing XBMC installation without losing all your personalizations and customization, FTP into your Xbox and back up the /E/Apps/XBMC/UserData folder. Then, transfer the whole XBMC folder to /E/Apps/, overwriting what you've got there now. Finally, replace the new UserData folder with your backed-up copy to restore your customizations.


Get To Know Your Controller Buttons

Getting around XBMC doesn't have to be a "if I push this button, what happens?" adventure. Straight from the XBMC wiki, here's a quick map to your Xbox controller in XBMC:

controls.png


Remove the T3CH splash screen

splash.pngOnce you've updated to the latest version, you'll see a T3CH splash screen when you launch XBMC. To remove it, delete the splash.png file from the /E/Apps/XBMC/media/ folder. Likewise, to remove the startup sound, remove the start.wav file from the /E/Apps/XBMC/skin/Project Mayhem III/sounds/ folder.


Download Television and Movie DVD Covers and Art

XBMC supports both DVD cover art and wide television series graphics, as well as director, year, cast, plot, reviews and other metadata for your video files. It can scan your library of well-named files and automatically add this information to its database.

Here's what movies with DVD art look like:

dvd-cover-art-better.png

Drill down to see specific movie info:

dvd-movie-details.png

Here's what television episodes look like with wide art:

tvshow-wide-art.png

And individual TV series info:

tvshow-details.png

The XBMC wiki explains how to use scrapers to query services like IMDB and TV.com to automatically grab this data for you. Just use the context menu (access it by hitting your controller's white button) and choose "Set Content." Choose either movies or TV, and then select your source (I used IMDB and TV.com with great success.)


Add Album Art to Your Music Collection

Similarly, you can automatically grab CD album art for your music collection. In the Music area, switch to Library View. Sort by Albums, then using the context menu (hit the controller's white button to pop it up) choose "Scan entire album list for thumbnails." Depending on how big your collection is, this could take awhile.

album-art-automatically--01.png

Then you can view your album list in a way that very closely resembles iTunes Cover Flow:

music-coverflowlookalike.png

Here's what individual album info looks like:

albumdetail.png

Also, try the Party Mode random playback—highly recommended!


Add Scripts

Once you've upgraded your XBMC, head over to the Scripts menu item, and choose XBMC Script Installer. There you'll be able to download lots of XBMC add-ons, from games, to vidcast viewers to, ahem, pr0n downloaders.

xbmcinstallertorrent.png

So far my favorite scripts are the Tetris game (love to play while I listen to music), and the CNN/Comedy Central/Cranky Geeks/YouTube video browsers. There's also a handy BitTorrent frontend for downloading torrents directly down to your box.

xbmcscriptsprettyicons.png

To avoid having to navigate into the scripts area every time, select your favorite scripts, invoke the context menu (white button), and choose Add to Favorites. Anything you add to your Favorites list—from drives, to scripts, to individual files—are available from the Favorites menu on the home screen, as shown.

favorites.png


Linux Apps List

Accounting

Adaptive Planning Express - An open source solution enabling medium sized companies to automate budgeting and forecasting by moving beyond traditional applications like Excel.

Buddi - A simple budgeting program for users with no financial background.

CheckItOut - A Ruby on Rails application to manage personal money accounts.

FrontAccounting - A professional web-based accounting system for ERP chain; written in PHP with use of MySQL.

GFP - A free java based personal finance manager with the ability to run on any operating system.

GnuCash - Open source financial accounting software to manage personal and small business expenses and incomes.

Gnumeric - A free spreadsheet program for the GNOME desktop providing several customization features and import/export facility from other spreadsheet programs.

Grisbi - Grisbi is an open source personal finance manager developed to run on any platform and suit the needs of all users.

jGnash - jGnash is an open source personal finance manager that will help you monitor and keep track of your accounts, including investments.

KmyMoney - Easy to use, accurate open source personal finance manager built to suit the needs of non-technical users. It provides all the features available in a commercial application.

Librepos - A multi-user POS application designed for touch screens, customer displays and barcode scanners.

NOLA - An integrated, all-in-one package for an organization’s inventory, POS, accounting, contact management, billing etc.

TurboCASH - Flexible small business accounting software fulfilling the major needs of any business.

Content Management Systems

80 + Open Source Content Management Systems - A complete roundup of Open Source CMSs from Mashable.

CRM (Customer Relationship Management)

Anteil - Cost effective open source solution for managing and improving customer relationships.

CitrusDB - CitrusDB is a PHP & MySQL based open source customer database solution.

CiviCRM - The world’s first downloadable constituent relationship management system; fund raising software that allows users to manage information about donors, volunteers etc.

Compiere - Offers integrated ERP and CRM suite that enables users to automate the financial, distribution and other needs of their businesses.

Daffodil CRM - Organized and effective way of managing cost-effective customer relationships.

Hipergate - Serving developers, consultants and enterprises to assist them in project management, sales force automation and customer relationship management.

IGSuite - A web-based integrated CRM suite that includes solutions like mailing lists, calendar, contact management and task lists.

Keen CRM/ERP - An advanced, feature packed, comprehensive customer relationship management solution for small companies.

Ohioedge CRM - Ohioedge CRM is an enterprise level open source CRM solution.

OpenCRM - OpenCRM is an open source CRM solution for tracking clients and project management.

OpenCRX - A cross platform professional CRM solution with bug tracking and activity management features.

SellWinCRM - An open source CRM project giving a high level of customization for customers.

SourceTap CRM - SourceTap CRM is a flexible sales force automation solution developed to meet the requirements of sales managers and representatives.

SugarCRM - An open source CRM solution allowing users to track opportunities and manage existing customers while keeping a check on other activities.

Turquoise CRM - Lightweight CRM software built over LAMP with Business Intelligence functionality.

Tustena CRM - Tustena is an enterprise level open source CRM solution written in C#.

vtiger CRM - Built over LAMP/WAMP, Vtiger provides excellent business enhancement utilities and is compatible with multiple platforms.

XRMS CRM - XRMS is an advanced level open source CRM solution that includes a Business Intelligence suite and advanced plugin architecture.

Desktop Environments/ Shell replacements

bbLean - A new version of Blackbox for Windows.

BlackBox For Windows - An alternative shell for Windows that is based stylistically on the Blackbox window manager for the X Window system.

Blueberry 3D-Desktop - Made using Delphi; its main objective is a 3D OPENGL engine in replacement of the Windows desktop.

CyGNOME - A nice tool which ports GNOME desktop to Windows.

DM2 - Provides useful enhancements for Windows in daily work like minimizing windows to floating icons, freeing the taskbar etc.

Geoshell - A shell replacement for Windows that replaces the standard desktop interface items like start menu, taskbar, system tray etc.

KDE-Cygwin - KDE’s port in Windows desktop environment.

LiteStep - A powerful Windows shell replacement under GPL and inspired by AfterStep.

SharpEnvironment - A tool that enables users to personalize every pixel of visible space and customize a single theme in multiple ways with real-time wallpaper effects, icon sets etc.

Virtual Dimension - A fast and fully featured virtual desktop manager that acts as an enhancement to the Windows manager.

xoblite / Blackbox for Windows - An advanced level Blackbox for Windows that is integrated with a system bar.

Email Clients

Columba - A java based email client featuring a user friendly graphical interface.

Daffodil Organizer - Highly flexible way to organize emails; includes import facility from Microsoft Outlook.

Evolution - More popularly billed as the Outlook of Linux, its calendar, address book and other features make it a good option as an email client.

ICEMail - Open source java client with support for the latest email standards.

Mahogany - Cross platform email client supporting UNIX and Win32 platforms.

Mutt - A small and powerful text based email client for UNIX operating systems.

Penelope - The open source version of Eudora currently under beta and planned for full release by this year.

Phoenix Mail - One of the older open source email clients developed using Borland Delphi.

Sylpheed-Claws - An open source email client with an interface similar to Outlook Express; works as an RSS feed reader too.

Thunderbird - A secure email client with several customization options to fit the user’s needs.

Zimbra - Zimbra is currently one of the biggest names in open source, and is the future collaborating and messaging software. Now owned by Yahoo.

Encoding, Conversion & Ripping Tools

Alba Extractor - Alba Extractor is a useful utility for wrapping various mp3 files into one unit for ease of sharing on programs like NapShare etc.

Audacity - Audacity is an open source, cross platform audio editor and is a good solution for creating and editing podcasts.

Avidemux - A free video editor for tasks like cutting and filtering; has support for file types like AVI, DVD etc.

AviSynth - A powerful tool for editing and processing videos.

BonkEnc - A useful application for ripping CDs, encoding and converting audio files to various formats. Users can produce mp3, mp4, FLAC files to name a few.

CD-DA X-Tractor - An open-source CD ripper for 32-bit windows platforms that offers extremely high quality.

CDex - A popular open source digital audio CD extractor.

DivFix - DivFix is a utility for watching partially downloaded DivX movies.

DivXRepair - Based on the VirtualDub model, it cuts off the bad parts and re-assembles the AVI file.

Dr. DivX - The goal of Dr. DivX open source project is to create a portable application with the capability of transcoding many video formats.

DScaler - The DScaler project is an effort to receive top quality videos from Windows computers.

DVD2AVIdg/MPEG2DECdg Decoding Fix - An MPEG decoder suite used for decoding MPEG1 or MPEG2 streams from sources such as DVD VOBs.

DVDx - Popular DVD backup software that converts DVDx movies to high quality DVD movies.

FFmpeg - A complete recording, conversion and streaming solution for audio and video.

GiantDisc - GiantDisc is an open source software package designed to manage thousands of audio tracks.

GNUMP3d - Open source server for streaming mp3s and media.

Gordian Knot - Gordian Knot is an integrated Bit rate calculator package tool for Divx/XviD encoding.

GramoFile - A CD recording utility running on Linux and some other operating systems like UNIX. It enables users to put sounds from gramophone records on CD.

HGRip - A one click solution for converting DVD to XVID files.

JMAC - JMAC is an open source Java implementation library of Monkey’s Audio compression decoder.

LAME - LAME is an MP3 encoder.

Mixere - Mixere is a free, open-source application for mixing audio files. It runs on Windows NT/2000/XP, and supports WAV, AIFF, MP3, Ogg Vorbis, FLAC and Mod audio files.

MMConvert - A multimedia format converter useful for converting media files from one format like AVI/WMV to another format.

mpgtx - A command line MPEG audio/video toolbox useful for joining audio and video files which include MP3, MPEG1, MPEG2 etc.

Mp3splt - A terrific utility to split MP3 and Ogg files from anywhere without decoding.

Mp3Wrap - A useful alternative to wrap two or more mp3 files into a single large mp3 without the loss of file names and other information.

Musepack - A high quality audio compression format.

MusicBrainz Tagger - Provides a database to create a comprehensive music information site. It can be accessed via the client or the internet.

NanDub + BRC - NanDub+BRC includes a bitrate calculator and offers users several advantages as their need for opening separate pieces of software is eliminated.

Open Sound World - A scalable programming environment allowing musicians, researchers and sound engineers to process sound.

OptimFROG - OptimFROG is a zipping utility for audio compression programs; used to reduce the size of audio files.

ShrinkTo5 - A cross platform open source DVD copy engine; allows users to create copies.

SmartRipper - A useful utility for extracting DVD VOB files; loaded with nice features for splitting VOB files, angle processing etc.

Taksi - Taksi allows users to take screenshots and record videos of favorite games and 3D-graphics applications.

Virtual VCR - A compact video capture application designed to work with TV tuner and video capture cards.

WavPack - WavPack is a high quality audio compression format and provides lossless compression.

YAAI - One of the best tools to display information about AVI files; enables users to see data like framerate, used codes, author information etc.

ERP

ADempiere Bazaar - Adempiere is a community for open source developers contributing improvements of various applications like Compiere, Helpdesk and Supply Chain etc.

JERPA - JERPA is a Java based advanced level architecture model for ERP software.

JFire - An exchange platform including ERP, CRM and accounting written in Java.

Openbravo ERP - A web based ERP for small and medium enterprises; built on proven MVC architecture facilitating code maintenance and customization.

opentaps - An open source ERP and CRM suite including eCommerce, inventory, warehouse, ledger etc.

Postbooks - A fully integrated ERP solution for small and medium businesses; features a graphical client which runs on Linux, Mac and Windows.

Plazma - Plazma is a Java based ERP and CRM solution.

Sequoia Open Source ERP - The flexible ERP software from Sequoia brings advanced features and scalability for enterprise software along with low TCO.

Tiny ERP - Packed with features like GTK2 client, distributed server, dynamic GUI.

Value - Value is an open source ERP/CRM system and features modular capabilities along with seamless integration.

webERP - webERP is flexible integrated business management software that covers accounts receivable, accounts payable, inventory management and other accounting requirements.

Wyatt - Wyatt is a cross platform ERP package written in Java with J2EE compliance.

Filesharing & FTP

ABC - An enhanced client for the BitTorrent file sharing protocol.

Ares - A file sharing utility enabling users to share digital files like images, audio, video, software and documents.

Azureus - Java enabled BitTorrent protocol packed with special features for beginners and advanced users.

BT++ - An advanced version of the BitTorrent peer-to-peer file sharing protocol with cross-platform support; written in Python.

Cabos - Cabos has an intuitive user interface and is a Gnutella file sharing program based on Limewire.

CoreFTP - A FTP program that enables uploading/downloading/deletion of files and directories, integration with browser, file permission handling etc.

cURL - A command line utility allowing file transfer via FTP, LDAP etc. Users can also use the GET and PUT methods for file downloading and uploading.

Cyberduck - An open source FTP client with support for drag and drop, uploading and downloading, remote file transfer etc.

DC++ - Windows based open source client for unrestricted file sharing over the internet.

eMule-Project.net - A reliable and trusted peer-to-peer file sharing application allowing users to connect from different clients.

FileZilla - FileZilla is a free, fast and reliable open source FTP solution for Windows.

Freenet Project - A free and secure decentralized network of information publishers and consumers.

FrostWire - A completely open source peer to peer client; features community chat room and iTunes integration.

Fugu - An open source graphical front end for secure file transfer; provides support for Mac operating system.

G3 Torrent - A BitTorent client written in Python.

Gnucleus - One of the oldest Windows based open source peer to peer file sharing clients related to Gnutella.

HeavyMole - An advanced level peer to peer file sharing application with features like distributed chat, filtering of answers and advanced query language.

iFTP - i.FTP is a Windows FTP client that comes with source code. There is also an earlier version for BeOS that works with portable media like USB keys.

JFtp - JFtp is a graphical Java network and file transfer client.

KazaaSearch - Search for music, software, images & video with this powerful peer to peer file sharing client.

KCeasy - The windows version of giFT filesharing system that also offers support for other filesharing networks.

Krimpy - An IRC based (internet relay chat) open source file sharing client enabling users to share music, pictures, videos and other files.

Lime Wire - A multi-platform Gnutella file sharing client enabling users to share their files, download MP3s and other audio files.

MLdonkey - 100% open source cross-platform P2P client running on Linux, UNIX, Windows and Mac.

MUTE - A secure, peer to peer file sharing network with easy search and download functionality.

MyNapster - Comes with connection capability to Gnutella for file sharing, IRC for chatting and supports resumption & multithreading of downloads.

NetMess - Has the ability to detect clones and work through HTTP proxy and firewalls.

Prozilla- An open source Linux download accelerator that provides download support via HTTP and FTP protocols.

Shareaza - A flexible file sharing system consolidating features from four different networks: EDonkey2000, Gnutella, BitTorrent, Gnutella2.

TAC2 - Expanded as Tango & Catch 2 (TAC2), works as a search engine independent client for searching on Linux and Windows.

TorrentSpy - Gives BitTorrent power-users all the information in one place along with real time ability to monitor the number of live users.

Waste - Secure collaboration tool allowing idea & data sharing between users through a chat interface.

WinSCP - Another open source SFTP & FTP client for Windows; provides safe file copying between local and remote computers.

XNap - Written in Java, XNap provides a plug-in enabled framework and client for P2P applications.

Graphics-Design & Modeling Tools

Ajax Image Editor - Open source image editor using PHP.

ArgoUML - ArgoUML is a popular open source UML modeling tool compatible with any Java platform.

Avidemux - A simple video editor with support for DVD/DivX conversion and editing.

Blender - 3D animation and modeling suite with various tools for modeling.

Bluefish - A powerful editor for programmers and web designers enabling them to write websites, scripts and programming code.

BRL-CAD - An open source CAD system centered on constructive solid geometry (CSG) modelling.

Cinelerra - A professional open source video editing tool with features for capturing, editing and compositing.

CinePaint - Professional graphical editing application targeted towards the movie industry.

Cornice - Cross platform image viewer initially developed for Linux; similar in functionality to ACDSee.

Dia - Open source drawing tool for UML diagrams, similar in functionality to ‘Visio’.

Flowchart Studio - Allows the user to draw a flowchart through graphical editor.

F-Spot - A feature rich personal photo management application for GNOME desktops.

Gaphor - Simple modeling environment that enables users to create intuitive UML diagrams for documentation purposes.

Gimp - The oldest, and most famous, open source graphic application with over 100 plug-ins and powerful paint tools.

Gimpshop - Gimpshop changes menus and dialogs in a manner similar to its competitor, Photoshop.

GQview - A lightweight image viewer with easy navigation, zoom and thumbnail preview features.

i.Mage - i.Mage is a handy graphics editor featuring easy pixel & image editing.

ImageMagick - Allows for the creation, editing and composition of bitmap images.

imgSeek - imgSeek is a photo management and viewing application with search support.

Imgv - An open source, feature rich image viewer providing support for a variety of image formats.

Inkscape - An open source vector graphics editor similar in functionality to Illustrator. It provides support for all drawing features like any commercial product.

Inquisitor - A fast visual web picture ripper, downloader and offline browser.

Jahshaka - Powerful open source movie editor with real time media playback and visual effects.

Karbon - Part of the open source KOffice suite, makes a great choice as a vector drawing application.

Kino - An open source non-linear video editor that comes with easy importing of DV video and provides video and audio transition effects.

khtml2png - A command line utility for creating PNG and JPEG images out of web pages.

Krita - An open source image editing and painting program with advanced features.

KToon - 2D animation toolkit with focus towards animation industry.

NVU - A complete cross platform web authoring system which makes it very simple to create web pages and manage a website without any technical expertise.

OpenLaszlo - An excellent development environment for web applications as it can generate Macromedia and AJAX files for webpage use.

Paint.NET - .NET based open source bitmap application with an intuitive user interface for drawing and editing.

Page Scavenger - A simple Windows application useful for downloading images from free hosting services via webpage links.

Pixie - Open source RenderMan renderer.

Potrace - An open source project useful for converting bitmap images to raster or vector drawings.

QCad Community Edition - A simple, easy to use open source 2D CAD application.

Quanta Plus - A feature rich web development environment.

Seashore - A basic open source image editor with simple functionality and features.

Scribus - Open source cross-platform desktop publishing application.

Skencil - A flexible open source, interactive vector drawing application for illustrations, diagrams and other purposes.

Synfig - An open source 2d vector animation program for artists to assist them with making cartoons.

UFRaw - Unidentified Flying Raw is an open source photo converter that can be used as a standalone application or as a plug-in.

VirtualDub - An open source video capture and processing utility with basic features.

Violet - Violet is an easy to learn and use open source UML editor.

Xara Xtreme - Powerful, general purpose graphics application for Linux and other UNIX platforms.

Media Players

AlsaPlayer - AlsaPlayer is a new type of PCM player for Linux/Unix featuring fully pluggable framework for various media types.

Amarok - Audio player for Linux.

Cog - Quite often referred to as a potential iTunes alternative; an interesting open source audio player with support for various formats.

Coolplayer - A fast audio player for the Win32 environment.

Delphamp - Delphi based open source media player. Like a Winamp clone, also features support for Winamp skins.

DigitalDJ - DigitalDJ is a front-end MP3 player based on SQL. It can create playlists and manage CD databases in MP3 format.

Foobar2000 - Advanced level Windows based audio player with support for Unicode and popular audio formats.

Gamp - Gamp is a Gnome audio player written in C and includes support for MP3, Ogg, vorbis etc.

Grip - Grip is a CD-player and ripper for the Gnome desktop, and features an automated front end for MP3 encoders.

Guliverkli - Its interface is similar to Windows media player, however it also offers advanced features like switching of audio streams in mp4 files.

HelixPlayer - An open source media player for various operating systems like Linux, Solaris and Symbian.

Juice - Juice is a premier podcast receiver and allows users to capture and receive podcasts anytime.

Media Player Classic - An advanced version of Windows Media Player 6.4; offers features like real time zoom, support for AVI subtitles and support for QuickTime and Real video.

Mixxx - An open source DJ mixing tool, very useful for professional and amateur DJs.

Miro - The only video player which provides you with the option to download YouTube videos, play video files and play live Internet TV.

MPlayer - Written in Python; one of the best media players under the GNU-GPL license.

MP3Gain - MP3Gain assists users by normalizing the volume of mp3 files; it also does statistical analysis to determine the loudness of a file to the human ear.

musikCube - MP3 player based on embedded SQL database engine and packed with innovative features.

NotifyCD - NotifyCD is a small system tray based CDDB supporting CD player for Windows 9x/NT/2000.

OggPlay - OggPlay is an open source audio player for smart phones.

Plainamp - Plainamp is an open source media player for Microsoft Windows.

SnackAmp - A music player running on multiple platforms; features a web server and powerful playlist.

Songbird - Songbird is a multi-utility open source application; acts as a desktop web player, a jukebox, and a web browser.

SysTrayPlay - Also known as STP, ths is a small MP3 player program with a grey button in the taskbar that occupies very little memory.

VLC media player - Highly portable cross platform multimedia player & streaming server with support for variety of audio and video formats.

Vorbis.com - Open source professional audio encoding and streaming technology.

XboxMediaPlayer - XboxMediaPlayer is an open source multimedia player from Microsoft useful for viewing various video/audio/picture files like VOB, AVI, MP3 etc.

xine - Xine is an open source multimedia player for playing CDs, DVDs and streaming multimedia over the internet.

Zinf - Powerful and effective audio player for Linux and Windows. Supports various file formats such as MP3, Ogg and WAV and also features a download manager and a music browser.

Messengers & Communication Clients

Adium - Mac OS X open source instant messaging client that aggregates the popular IM networks.

aMSN - MSN Messenger’s open source clone for Linux users.

Ayttm - Ayttm is an instant messaging client with all-in-one chat functionality for major instant messaging services.

Coccinella - A Jabber client with integrated whiteboard features; includes features like file transfer, multi-user chat etc.

Kopete - Part of KDE desktop; a wonderful instant messaging application with voice and video capabilities.

Gaim - A very flexible instant messaging application compatible with Linux and Windows offering support for AIM, ICQ, MSN, Yahoo and others.

Ineen - Ineen is a feature loaded open source audio and video conferencing desktop tool.

IRSIM - Uses PHP and mySQL and provides interaction with multiple messaging clients.

Java Jabber Server - A nice open source Java implementation of Jabber instant messenger.

Kopete - Kopete is a flexible instant messenger and multi protocol system with support for AIM, Yahoo, IRC and MSN.

Licq - A C++ based multi-threaded ICQ clone; uses an extensive plug-in system.

MIMP - Mobile version of IMP; functionality includes mailbox viewing, message viewing, deletion or composition of new messages.

Miranda IM - Fast and handy multi-protocol messenger for Windows.

Openfire & Spark - Real time cross-platform IM client and server based on Jabber protocol.

Pidgin - Covers multiple protocols including AIM, ICQ, MSN, IRC, Jabber etc.

PlanetaMessenger.org - Java based open source instant messenger offering plug-in support for various IM networks.

Psi-im - An open source instant messaging client developed for Jabber. Has communication capabilities with AIM, MSN and ICQ etc.

SIM-IM (SIM Instant Messenger) - Free software package providing plug-in based messaging with support for various protocols.

Spark - Open source instant messenger with integrated support for group chat, telephony and security.

TjK - A portal based open source version of AOL Instant Messenger, originally developed for UNIX users.

Tkabber - Open source client for Jabber instant messaging and works on many platforms e.g. Linux, Windows and Mac etc.

WengoPhone - WengoPhone is a popular VOIP soft-phone client for making free PC-to-PC calls over the internet.

XChat - An IRC chat client for both Windows and Linux.

Yafumato Web Messenger - A web-based open source client allowing users to connect to AIM, Gtalk, MSN and Yahoo.

PDF drivers & Tools

CC PDF Converter - Enables users to convert Word, Excel, IE and any other file formats to PDF.

Evince - Evince is a document viewer with support for multiple document formats including PDF.

Jarnal - Jarnal is an open-source application enabling annotation of a document.

okular - A universal document viewer based on KPDF for KDE.

PDFCreator - Create PDF files from just about any Windows utility.

PDF Download - A Firefox extension for improving your surfing experience. A click on a PDF file link enables you to view it inside or outside Firefox.

Pdftk - Pdftk is a command line utility allowing users to merge PDF documents, split PDF documents and do many other things.

qvPDF - Windows based PDF creator implemented as a printer driver.

Sumatra PDF - A simple and fast application to view PDF files.

Xpdf - An open source PDF viewer for the UNIX operating system. Also works under Windows as a command line tool.

Personal Information & Task Managers

    Chandler

Aethera - Aethera is a PIM application with communication features like send/receive email, send/receive tasks and appointment requests etc.

Chandler - Turns your inbox into a task list.

KAddressBook - An address book application for the K Desktop environment.

Kontact - Supports news, email, calendars, to-do list; a personal information manager for KDE.

KOrganizer - A personal organizer of the KDE desktop environment; has the ability to manage calendars and to do list.

Nag - Nag is a task list manager for multiple users and allows them to create many task lists which can be shared between users and groups.

OneOrZero - Easy to customize cross platform, enterprise level task management and help desk solution.

OpenSync - Open source synchronization framework for managing PIM data such as contacts, calendar, tasks and notes.

PTM - An open source time tracking tool.

Task Blocks - A simple task scheduling application to ensure that user tasks do not overlap.

Task Coach - Task Coach is an open source personal task manager providing features to deal with complex tasks.

TaskFreak - Simple web-based task manager written in PHP.

Total Text Container - An open source information manager; stores notes, passwords, images, calendar events etc.

Project Management

Achievo - Easy to use and customize open source web-based project management application for business environments.

AgileTrack - Java based application for monitoring and tracking activities in a software development environment.

ASTS - A set of web based management tools for recording project activities and tasks.

Austin - A command line utility for manipulating project timelines in XML.

dotproject - Open source Project Management application developed and supported by a group of volunteers.

Double Choco Latte - A basic project management application used to track the history of work orders, projects, accounts etc.

eHour - User friendly web-based tool for keeping track of time based activities; ideal for consulting companies.

FreeMind - A mind mapping application useful for brainstorming sessions.

FUTURe - A time management application for individuals and groups.

Ganttproject - Written in Java, and using XML file format; enables project planning through a Gantt chart.

JIRA - JIRA is a project management & task achievement application for making team processes easy.

jxProject.com - Cross platform project management tool with sharing options.

IPM - A simple project management application built in PHP4 and requiring Apache 1.3x and MySQL.

Memoranda - For users handling multiple projects on a daily basis Memoranda is an ideal tool.

NetOffice - An online project management application for managing tasks, projects, team tracking and collaboration between teams.

Open Workbench - Excellent Windows-based application providing project scheduling functionality for enterprise users.

Planner - Project management tool for the Gnome desktop that is useful for project scheduling, planning and tracking.

phpCollab - An open-source internet-collaboration tool for project teams allowing them to share information amongst each other.

project-open - A web-based project management system for small consulting and service companies. Covers sales, project planning, collaboration and CRM.

Projectory - Projectory is an open source web based project management tool for tracking software projects through development phases.

Projman - A project management tool for reading project descriptions and their scheduled tasks.

Rapla - Highly configurable event and resource management application primarily targeted towards universities.

Taskjuggler - A powerful tool with redefined approach towards project planning activities, taking it far beyond the commonly available tools for Gantt charts.

Trac - Wiki and issue management system for software development projects.

TrackIt - An open source web based project tracking tool to maximize flexibility and customization.

TUTOS - Organization management tool for satisfying the requirements of small groups, teams and departments.

User Story .NET - A tool for extreme programming projects in user story tracking.

WebCollab - An easy to use collaborative project management system enabling users to work together.

WebPBC - Web-based project management tool for small businesses to do budget allocation of projects.

XPlanner - Another web-based project management tool for eXtreme programming (XP) software development practices.

Reporting Tools

BIRT Project - An Eclipse-based reporting system.

DataVision - A reporting tool that works with any database and generates customized reports.

Jasper Reports - A leading open source reporting engine delivering rich screen content and printer into various file formats: PDF, HTML and XLS etc.

JERT - JavaEye Reporting Tool is a web-based database reporting tool with sharing features. It enables users to create flexible reports without any programming knowledge.

iReport - iReport is an easy to use visual report builder designed and written purely in Java.

openi.org - Pronounced as “open eye”, this is a web-based open source OLAP reporting tool enabling organizations of different sizes to manage and organize their data.

OpenSMART - Similar to Tivoli, a monitoring and data reporting tool for servers.

Pentaho - Open source business intelligence tool enabling organizations to operate more effectively by providing reporting, analysis, workflow capabilities.

Rapid - I - Offers all types of data mining services (from analysis to customization) helping customers to improve their profitability and efficiency.

SpagoBI - Focused business intelligence solution for the enterprise providing complete set of analytics (e.g. reporting, data mining, dashboards etc.)

xTuple - Open source SQL report writer compatible with Windows, Linux and Mac.

RSS

Aggie - Aggie is a desktop based open-source news aggregator that downloads the latest news in a webpage.

AmphetaDesk - A cross platform, open source news aggregator that downloads news items on the user’s desktop.

BlogBridge - A powerful and flexible desktop based open source feed reader for Windows, Linux and Mac.

BottomFeeder - RSS news aggregator client written in Smalltalk and compatible with Linux, Windows, Mac and Solaris.

Gregarious - A web-based RSS/RDF/Atom feed reader designed for users to run on their own web server.

JRssReader - A fast, Java based RSS & RDF reader; offers compatibility with multiple platforms.

NewsFeed - Flexible RSS/RDF/Atom aggregator for different operating systems like Linux, MacOS and FreeBSD.

NRss - an “open source Microsoft .NET Framework / Mono class library for reading a RSS feed into a tree of objects mapped to elements in the RSS feed.”

RSSOwl - Java-based open source news reader.

Syndirella - Syndirella is an open source desktop information aggregator providing a user friendly environment for reading information from multiple sources or feeds.

ThinFeeder - Very powerful and tiny open source aggregator for RSS/Atom developed in Java language.

System Utilities

7-Zip - High-compression open source archive utility for Windows with support for 7z, ZIP, GZIP, TAR files etc.

Amanda - Network backup solution.

Bacula - Set of open source computer programs for managing network backup system for Linux/Unix, Mac and Windows clients.

BiGZip - Free compression utility based in Java.

Burn - An open-source CD and DVD burning application allowing users to create audio, data and video disks in different file formats.

CamStudio - Open screen casting application allowing users to capture audio and video and store it later for playback.

CDRDAO - Open-source tool with advanced features for recording audio or data CDs.

coLinux - Cooperative Linux allows users to run Linux parallel to Windows on any machine.

Cream - An open source text editor with interactive user interface, pull-down menus etc.

G4U - Open source cross-platform hard disk image cloning application.

GrenEye - A file slicing and compression utility.

GNU zip - A compression utility.

GParted - Fantastic open source partition manager with direct boot facility option from CD or USB.

Handbrake - A multiplatform DVD to MPEG-4 converter/ripper with ability to process unencrypted and whole DVD files.

InfraRecorder - A freeware CD/DVD burning application for Windows.

Info-ZIP - Provides high quality, portable versions of zip files compatible with DOS.

Inno Setup - Another open source installer for Windows applications with integrated Pascal scripting engine.

InstallJammer - Useful for creating self-contained cross platform installation packages.

jEdit - A cross platform open source text editor written in Java with consolidated features from major editors.

Emacs - An extensible, customizable, self-documenting open source text editor.

K3b - An open source application for creating/burning CDs and DVDs; packed with features like DVD encoding, copying and audio CD creation.

Launch4j - An open source wrapper for jar files that supports Mac, Linux and Solaris.

Nagios - An open source network monitoring service for hosts, networks and services which use plug-ins.

NeDi - Open source network discovery, inventory & management framework utilizing scheduled discovery for network examination.

Notepad++ - An open source alternative to Microsoft Notepad with features well suited to development and design.

NSIS - A flexible open source tool for developing Windows installers.

Open-source ARJ - A cross-platform open source implementation of the popular ARJ archiver.

OpenNMS - A network management platform for monitoring services and their hosts.

OpenVZ - A terrific alternative to any commercial visualization offering; offered only on Linux.

Pandora FMS - Complete network and node monitoring solution composed of three parts: agents, server and console.

Partition Image - Disk cloning Linux utility helping users to create an image of partitions. The image file can be compressed, split and it is compatible with Linux and Windows.

SciTE - An open source text editor enabling developers to edit code.

UPX - A high-performance packaging utility with a high compression ratio for different executable formats.

VirtualBox - A high performance, feature rich, open source visualisation product for enterprise as well as home use.

Wireshark - Top quality network protocol analyser enabling users to capture LAN packets.

Xen - A high performance open source enterprise visualisation solution.

Xming - X-Windows server for Windows; has all the features of a commercial product.

Xvidcap - Linux based screencast application allowing users to capture portions or the entire screen of a Linux desktop.

Zenoss - A top class network and system monitoring solution with all the features of a commercial monitoring system.

Zzip - A compression tool with the ability to compress files with a high compression ratio.

Office

AbiWord - Has an interface that is very similar to Microsoft Word for easy migration; also allows importing and exporting from Microsoft Word.

Agnubis - The PowerPoint of GNOME; comes with easy integration options with other packages in GNOME office suite.

Andrew User Interface System (Andrew) - A popular graphical user interface system integrated with word processor, an html editor and browser.

AxPoint - Presentation tools from the developers of Apache AxKit.

Bruce - Presentation tool for Python programmers allowing them to code and create interactive PowerPoint sessions.

Imposter - Imposter is a standalone viewer for viewing presentations created by Impress software.

Impress - Fantastic tool for creating multimedia presentations with 2D and 3D effects.

Kivio - A part of KOffice suite; helps users in flowcharting, network diagrams and other graphics needs.

KPresenter - The presentation package bundled with KDE project; powerful and fully featured.

KWord - A word processor with a frame-based layout capability; part of the open source office suite KOffice.

MagicPoint - A presentation tool based on X11; very useful for making simple presentations which can be easily edited by any text editor.

NeoOffice - A special version of OpenOffice for the Mac.

S5 - A simple slideshow system having easily accessible markup. It can easily adapt to user themes and enables you to create your own slideshow themes.

WebHuddle - An open-source web conferencing and presentation tool with support for VOIP, chat and PowerPoint.

Web Browsers

Browser3D - An interactive web browser enabling users to interact with a real 3D environment and add their own 3D environment.

Camino - The functionality and features of this powerful browser match the capabilities of Safari.

CxBrowser - A useful open source web browser implemented under Mozilla Activex control component and written entirely in C#.

Epiphany - Developed for the GNOME computer desktop; competes with KDE for Linux.

Galeon - The first web browser for GNOME computer desktop; now comes as an extension to Epiphany.

K-Meleon - Perfect web-browser for operating systems which are incompatible with Mozilla or Firefox suite of browsers.

Konqueror - Part of the K Desktop Environment (KDE); a great browser for Linux with similar features to Firefox.

Lynx - Cross platform browser compatible with UNIX, Windows and Mac.

Mozilla Firefox - Fast, powerful and secure web browser compatible with Linux and Windows.

Thursday, 20 September 2007

Install XBMC onto your Xbox using Soft-Mod

xbmc-header.jpg



Don't ditch your classic Xbox just because you can't play Halo 3 on it: nowadays it's easier than ever to transform that old neglected console into a Unix-based media command center. While early Xbox hackers had to pry open the black box to solder on a modchip, today a software exploit lets you replace Microsoft's crippled dashboard and run the incredible, open source Xbox Media Center (XBMC) software. You don't have to be a hardcore gamer or Unix hacker to get your XBMC on. On Tuesday Adam showed you how to reach media nirvana with Windows Media Center and the Xbox 360, but today we're kickin' it old school with a classic Xbox softmod.

Why do you want an Xbox Media Center? Because underneath your television there's a powerful little black computer gathering dust ever since you finished Halo 2, and it's got a sizable hard drive, fast processor, and most importantly, an ethernet port that can do a hell of a lot more than connect you to Xbox Live. Your modded Xbox running XBMC will be networked with the rest of the computers in your house and let you:

* Play videos, music and photo slideshows located on any shared drive in the house displayed on the television in your living room
* Watch Apple movie trailers, YouTube videos, Launch.com videos and see RSS newsfeeds dynamically loaded from the internets
* Transfer files to and from your Xbox's hard drive
* Rip DVDs to a shared network drive to play later or backup
* Watch DVDs sans "dongle" (no more DVD Playback Kit required!)

Plus all your games and saved games work as usual (EXCEPT for Xbox Live—see more below.) For more details on file formats and other capabilities, here's exactly what XBMC can do.

Warnings, disclaimers and the main catch: Once you've modded your Xbox you can no longer use Microsoft's Xbox Live online gaming service. Xbox mods are not endorsed or supported by Microsoft—in fact, they void your warranty—so you do risk bricking your box and winding up the creek without a paddle. That said, I've just softmodded my Xbox using these very instructions so I can vouch for 'em. Finally, this looks like a lot of work but in reality, once you've gathered your hardware and software, the actual modding is very quick. Plus it makes you feel like a freakin' ninja. These instructions don't require you be as smart as Cortana, but you should be comfortable with networking concepts like IP address assignments on your home network, FTP and IRC.

Let's get started.


Gather the materials

The softmod takes advantage of a game exploit using a saved game you'll download and move onto your Xbox, so it requires a few specific items.

xboxmod-materials.jpg

Here's what you'll need:

* A classic Xbox (duh)—Those of you without an Xbox but interested in building a media center on the cheap, you could easily score one on eBay for under $100.
* An original (not a copy) of Tom Clancy's Splinter Cell game.—(Not the Pandora's Tomorrow or Chaos Theory versions.) Other games work, like Mech Assault and 007: Agent Under Fire, but I used Splinter Cell (the Platinum Hits edition) so that's the only one I can vouch for. (I had the game already, but there are a ton for sale at Amazon, many for under 10 bucks.)
* The Action Replay kit—Action Replay is a USB interface to an Xbox memory card that lets you load pre-saved, unlocked games and cheats onto the card. You see where this is going. I snagged one on Amazon for about $40.
* A home network router with a free Ethernet port and a network cable. Chances are you've already got one of these. Plug one end of the cable into your router, and the other into your Xbox.


Install the softmod and Xbox Media Center

Once you've got the materials together, you're most of the way there. Onto the modding.

1. Determine the location of the softmod installer and XBMC downloads. Never in my online life have I had to go through such a rigamarole to get ahold of files. These Xbox hackers are careful people: in short, you have to log onto an IRC channel, issue a command to query the FTP server location, and get temporary login details in order to acquire the files (the equivalent of finding hidden door and using a secret knock). So, using your favorite IRC client (I went with the Chatzilla Firefox extension), type:

  1. /server irc.efnet.net

    Once connected to EFNet, type:
    /j #xbins

    Then:
    /msg xbins !list

    You will receive a private message with 2 sets of FTP login details. One is for the softmod installer, the other is for XBMC.
    xbinsircchat.png
  2. Download and extract the softmod installer and XBMC. Whether it's FileZilla, FireFTP, SmartFTP or Transmit, use your favorite FTP client to hit up the first file location you got from xbins and download the softmod archive, which is located at:
    /XBOX/Console Based Applications/exploits/Packages/Softmod Installer Deluxe/Softmod.Installer.Deluxe.v2.0.Xbox-Hq.rar
    Then, disconnect and login to the second FTP server to grab the XBMC archive, XBMC-2.0.1-FINAL-FAT-T3CH.rar. Using your favorite RAR extractor (I recommend 7-Zip), extract the files to your PC.
  3. Move the saved game exploit onto a memory card with Action Replay. Now, break out the Action Replay software that comes on CD in the package and install it on your PC. Plug in the USB cable and the 8MB memory card that came with it. From your Softmod.Installer.Deluxe.v2.0.Xbox-Hq folder, drag and drop two files into the "PC Database" column of the Action Replay software: the one named SID.Splinter.Cell.v2.0.NTSC.Xbox-Hq.zip, and the one named SID.Splinter.Cell.v2.0.Xbox-Hq.zip. (Note: If you're in the US, you'll need the NTSC version of the first file; UK folks, go with the PAL version.) That will add a "LINUX_Profile" saved game to the Splinter Cell folder, as well as a "Linux Installer" folder. Drag and drop the Linux Installer to the Memory Card column, as shown (click to enlarge):
    http://lifehacker.com/assets/resources/2007/09/dragsplintercelllinuxgame-thumb.png
  4. Transfer the Linux Installer to your Xbox hard drive. Pop the memory card out of the Action Replay kit and plug it into one of your Xbox's controllers. Make sure the disc tray is empty and start up the 'box. Go into the Memory area and drill down to the controller's memory card. When you see the Linux installer saved game, hit the right button pad once to select the game, then select "Copy" from the menu to copy it to the Xbox's hard drive, as shown.

    copyexploittoxbox.jpg

    Shut down your Xbox and head back to your computer. Repeat the same process with the Splinter Cell LINUX_Profile: copy it to your Memory Card (you'll have to delete the Linux Installer first, the card isn't big enough to accommodate both), then plug the card into the Xbox controller, boot up the 'box and copy the saved game to your Xbox's hard drive. Turn off the Xbox. Now the magic happens.

  5. Use the Splinter Cell exploit. Insert the Splinter Cell game disk into your Xbox, and start the game. When it comes time to choose the profile, underneath your regular aliases, you'll see a new one named "Linux":

    loadsplintercelllinuxprofile.jpg

    Select Linux and then select "Check points" (not "Levels"). After a few seconds, Your Xbox will display an UnleashX intro screen and control panel. This is the Linux-based Xbox dashboard, which will look like this:

    xboxsoftmod-header.jpg

    Before we hit that magical menu item—Install Softmod—do two things first. Hit up the "Create MS Backup" item first, and when that's complete, hit the "Create Mod Backup." (Better safe than sorry.)

    Finally, the moment you've been waiting for: select the "Install Softmod" menu item. Don't turn off your Xbox during the process, and when the status bar completes and disappears, you're all good.

    Now choose "Install UnleashX" from the menu to replace the standard Microsoft dashboard with UnleashX permanently. Restart your Xbox and pat yourself on the back. UnleashX will boot up instead of the Microsoft dashboard, and it's got all sorts of goodies in store for you:

    unleashxbetter.jpg

    Using only the UnleashX dashboard and its default apps, you can watch DVDs using your controller, and under Applications, you can rip DVDs to your Xbox's hard drive. But what we're really interested in is its FTP server.

  6. Configure the Xbox's network settings and start the FTP server. The first order of business is to get your Xbox talking to your PC so you can start transferring files. First make sure your Xbox is plugged into your working, online home network router. Then, using the soft pad to navigate UnleashX menus and the green A button to select items, go to System > Settings > Network. There make sure Enable is set to Yes, Type set to DHCP and FTP Server is set to Yes, as shown:

    unleashxnetworksettings.jpg

    Note: These are the most common network settings, but yours may differ depending on your home network.

    Restart your Xbox to save your settings. When you boot back up into UnleashX, you should see your Xbox's new IP address appear on the lower right hand corner of the screen. Take note of it.

  7. Install XBMC on your Xbox. Back at your PC, fire up your favorite FTP client and log into your Xbox. The server location will be the IP address shown on the UnleashX screen, and your username and password will be in the Xbox's network Settings (xbox/xbox, by default.) Navigate to /E/Apps/ folder. Back on your local machine, extract the XBMC archive you downloaded, and from the XBMC-2.0.1-FINAL-FAT-T3CH folder you unrar'ed, grab the entire XBMC subfolder and FTP it to the Xbox's /E/Apps/.

    copyxboxmediacenter.png

    Restart your Xbox. When it's up, navigate to the Applications section, and you'll see Xbox Media Center listed. Select it to launch.

    unleashxappsxbmc.jpg


Revel in how much you rule


From here you get treated to XBMC's beautiful and (mostly) intuitive interface for navigating your Videos, Music, and Pictures.

xbmc-header.jpg

To access your media library, you can either move files onto the Xbox hard drive itself (which has its size limits), or browse and play media on a shared drive on your network. Using Windows built-in sharing (or Mac OS X's Windows Sharing), you can use XBMC's SMB (Samba) support to play videos that you record with your PC's capture card in the den or download via BitTorrent from the Mac in the bedroom. As you'll see, XBMC is very configurable and full of useful features.

Sunday, 9 September 2007

Featured Linux Download - Tilda

Tilda-Config.png

Linux only: Free open-source app Tilda creates customizable terminal sessions in Linux.

Tilda provides the same functionality as many other popular Linux terminal applications such as Gnome Terminal, Eterm, xterm, konsole, etc. However, Tilda offers customizable options not typically seen in terminal applications. Tilda can be configured to be displayed on all workspaces, hidden from the taskbar, always appear on top, start hidden, be called with a keyboard shortcut, and much more. Personally, I have Tilda set to always be on top, and hidden from the taskbar. Tilda sits in the top right corner of my desktop on top of workstation 4, and makes it very easy to quickly install packages.

According to the Tilda homepage:

"Tilda is a Linux terminal taking after the likeness of many classic terminals from first person shooter games, Quake, Doom and Half-Life (to name a few), where the terminal has no border and is hidden from the desktop until a key is pressed."

Users can install Tilda using the following command:

sudo apt-get install tilda (Ubuntu)
sudo yum install tilda (fedora / Redhat)
Download Tilda from the project homepage.

Unfreeze System with the Magic SysRq Keys

If you Linux system has ever frozen up and CTRL, ALT + BACKSPACE does nothing and you feel tempted to hit the power button (which isn't advisable as the Linux kernal could still be written to). Do the following instead:

  1. Hold down the Alt and SysRq (Print Screen) keys.
  2. While holding those down, type the following in order. Nothing will appear to happen until the last letter is pressed: REISUB
  3. Watch your computer reboot magically.

Tuesday, 28 August 2007

Change the Gnome Menu Icon

1)open the terminal and type: gconf-editor

2)go to "apps" -> "panel" -> "objects"

3)Find the right object. Under "object type" it should say "menu-object"

4)Once you have found the right object, check the box that says "use-custom-icon"

5)Then right click where it says "custom-icon" and click "Edit Key"

6)type in the location of the icon and click ok.

7)Reset the tool bar. Type killall gnome-panel in the terminal.

Friday, 3 August 2007

Unix / Linux folder layout

The files on a UNIX machine are organized in a hierarchy. The very top of the hierarchy is / —commonly referred to as "slash" or "the root directory."

If you change your working directory to / and run ls, you'll see several subdirectories with cryptic names like etc, bin, var, home, and tmp. Although UNIX now supports long file names, most of the monikers of these top-level directories hark back some 30 years to the origin of UNIX. Similarly, by the same long-standing conventions, each directory contained in / serves a special purpose:

  • /bin is but one of many directories that contain applications and utilities. However, /bin typically contains utilities that are essential to system operation. Hence, the shells, file-manipulation commands such as cp and chmod, compression and decompression, and diagnostics reside in /bin.

    /sbin also contains utilities crucial to system operation and maintenance. However, the programs found in /sbin can be executed only by superusers—hence, "superuser-bin" or /sbin.

  • /dev incorporates all the hardware installed on your system, including terminals and USB devices (and other peripherals that are physically connected to the computer), pseudo-terminals (used to interact with X terminal windows), and hard disk drives, among others.
  • /etc (often pronounced "etsee") is dedicated to system configuration. The /etc directory contains configuration files for the system daemons, startup scripts, system parameters, and more.
  • /home contains a user's home directories. For instance, if your login name is joe, the directory /home/joe acts as your personal file repository.
  • /lib is the coffer for essential system libraries. In modern UNIX, system libraries are typically shared, meaning that the libraries are not linked and included in each binary (which would waste space, at the least), but are loaded on demand when needed and shared by many applications at once. Hence, core applications and utilities installed with UNIX require the libraries in /lib to run, and you need at least a small handful of the libraries to create new executables from source code. All files here are vital, and the corruption or removal (whether intentional or accidental) of even one file can render a system useless.
  • /mnt, short for "mount," is the standard location to mount hard disk drive partitions and other devices. If you want to see which devices are currently mounted and accessible, simply run the mount command.
  • /tmp, or "temporary," is the system-wide scratch pad. Your Web server might stash session data files here, and other utilities use the space in /tmp for caching intermediate results. Files in /tmp are considered disposable. Indeed, your systems administrator probably deletes all files older than a certain expiry every evening.
  • /usr is the umbrella for a great number of files. End-user applications—from editors, games, and interfaces, to system features—are here, as is the library of man pages along with much more. Chances are that if the file is useful but not mandatory for system operation, you'll find it in /usr.
  • /var —short for "variable"—is the repository for files that typically grow in size over time. Mailboxes, log files, printer queues, and databases can be found in /var. It's commonplace also for Web sites to be kept in /var because a Web site tends to amass data preternaturally over time.

Tuesday, 31 July 2007

Mount NTFS Partition on Fedora Core 6

If you have a ntfs partition on your computer system and want to read & write to that drive, you can now do so with NTFS-3G. Installation was a breeze.

su -
yum install ntfs-3g

In the /etc/udev/rules.d/50-udev.rules replace this line:

SUBSYSTEM=="block", GROUP="disk", MODE="0640"

with the following line:

SUBSYSTEM=="block", GROUP="disk", MODE="0660"

Add the user to the disk and fuse group:
usermod -a -G disk,fuse change_this_to_your_username

Change permissions of the directory (example is hda1) where you want to mount the NTFS partition to 777:
chmod 777 /media/hda1
*If your not sure which drive is your NTFS partition as root type in “fdisk -l” to see a list of all your drives*

Add this line to /etc/fstab (change hda1 to your ntfs drive):
/dev/hda1 /media/hda1 ntfs-3g dmask=022,fmask=133,noauto,locale=hu_HU.UTF-8,user 0 0

To automatically mount your NTFS partition in GNOME, run this command:
rm -f /usr/share/hal/fdi/policy/10osvendor/
99-redhat-storage-policy-fixed-drives.fdi

Wednesday, 25 July 2007

Editing basics for the xorg.conf file

Editing basics for the xorg.conf file

For many users, the xorg.conf file, which configures the system resources, graphics card, keyboard, pointing device, and monitor for a computer running the X Window System, is an exception to GNU/Linux's do-it-yourself credo. Users who think nothing of editing /etc/fstab or /etc/hosts.allow will shy away from xorg.conf for fear of breaking their systems, relying instead on tools such as the KDE Control Center or Debian's dpkg-reconfigure xserver-xorg instead. But learning your way around xorg.conf not only teaches you a lot about how your system operates -- it can also come in handy when the graphical display fails and you either can't remember the handy command that does the work for you, or you're working with a distribution that isn't blessed with it.

It's easy to understand users' caution. Not only does xorg.conf contain a lot that can go wrong, but it is only fitfully documented in man and Web pages. Moreover, because the file's settings are specific to each system, borrowing an example of the file off the Internet is unlikely to give you more than basic ideas of how to get its settings correct. However, so long as you remember to make a backup copy of the file and keep within the settings defined by the documentation that comes with the hardware, the danger is actually minimal.

The xorg.conf file is divided into a minimum of eight sections. The start of each section is marked by the word Section followed by the section's name, and its end by EndSection. Sections can be placed in any order, and you can have more than one section that cover a certain purpose -- for example, if you are using multiple monitors. As in most configuration files, you may also see lines that start with a number sign (#) that provide comments for human readers. These lines are ignored by the operating system, and you can add more for your own purposes.

Within each section, you can quickly observe the structure that additional entries should follow. For instance, most sections indent once for a field and again for its value, which is placed in double quotation marks. Similarly, hardware has an Identifier field, which can be anything so long as it is unique. The indentations are not needed by your computer, but they do ensure that the file is kept in human-readable form. Once you understand this basic structure, you are ready to edit xorg.conf.

Setting resources and improving font display

Resources for the X server are listed in the Files section. Some distributions include the path to the database used for the RGB color palettes used for the display (/usr/share/X11/rgb), as well as the path to the server modules (/usr/lib/xorg/modules or /usr/lib/modules), but these paths should be unnecessary unless your system has resources stored in unusual places. Recent versions of Debian, for instance, omit these entries entirely.

Most of the system resources are devoted to the paths used for fonts. Users must add all new fonts via a font server, the easiest one to use being the one built into the KDE Control Center, which stores fonts in /usr/local/share/fonts (nothing comparable exists for GNOME). Fonts that were added during system installation are usually stored in /usr/share/fonts/ or /usr/share/fonts/X11, which has subdirectories for TrueType, Type 1 or PostScript, and bitmapped fonts. You can add new font paths by following the format of existing entries:

FontPath ""

If an application needs to display a particular font, then the X server uses the first instance of the font located. For this reason, you can sometimes improve font display on the system by changing the order in which fontpaths are listed. The "XFree86 Font Deuglification Mini HOWTO," an old but still useful source, suggests that you place any directory for 100dpi bitmap fonts before those for 75dpi bitmap fonts, and add :unscaled to the end of all the paths for bitmapped fonts. These changes help to ensure that a higher quality font will be the one used by the X server.

Editing X server modules

xorg.conf's Modules and DRI sections refer to modules loaded by the X server for such purposes as 3-D acceleration (glx, dri) and font support (freetype, type1, speedo). For the most part, you should not edit these sections. They are dependent on resources compiled in the kernel and supplied by various libraries added during installation, so simply editing xorg.conf may not have any effect on your system. Unfortunately, too, they are by far the least documented sections of the file, so if you're not an expert, leave them alone.

However, if you are having display problems, as a last resort, you can try the hacker's solution of commenting out all of the modules and adding them back one by one with each reboot. In particular, if you're using the freetype module, other font modules may be redundant, such as type1, as well as the xtt module, which provides TrueType support conflicts with freetype according to some reports.

Defining the keyboard

The keyboard is defined in a separate Input Device section in xorg.conf that starts with an Identifier. The Identifier is followed by a Driver -- usually just kbd in a 2.6 kernel -- and, for the main keyboard in a configuration, the CoreKeyboard option.

Most users will also want to use the XkbRules options to define the general behavior of the keyboard, since the alternative is to define all aspects of the keyboard layout separately. This option should usually be defined as xorg, which indicates that the X server should use the standard settings for xorg.

However, even with the shortcut provided by XkbRules, you still need to define the XkbModel for the keyboard, using one of the options listed in /usr/share/X11/xkb/rules/base.lst, or else a generic one such as pc104 or pc102. You also need the XkbLayout option, which takes one of the standard two-digit locale codes that are also listed in base.lst in order to define the symbols associated with other keys.

If you want to use multiple layouts you can use XkbLayout to list multiple keyboard layouts in a comma-separated list, and use XkbOption to define a key or key combination that cycles through each layout. For example, to use Alt-Shift to move through the defined layouts, you would enter the line Option "XkbOptions" "grp:Alt_shift_toggle".

Similarly, if you want to define a Compose and an AltGraph key -- two keys that are used to enable the typing of international characters, such as accents or currency symbols -- you can use XkbOptions to define them. For instance, defining them as "compose:rwin, grp:lwin" would give those useless right and left Windows key a purpose at last.

Configuring the pointing device

A mouse or other pointing device is defined in a separate Input Device section. After the Identifier, the next three lines in the section will generally be:

Driver "mouse"

Option "CorePointer"

Option "Device" "/dev/input/mice"

As you can probably guess, the CorePointer option defines the primary input device, and the Device gives the path to the device.

After that, an entry for a pointer device will have an option defining the Protocol, which describes the manufacturer and model of the device. The Auto option for the protocol is reported as broken in recent versions of xorg, so you should specify the exact protocol, such as Microsoft or Logitech, or the general type of mouse, such as ImPS/2 or USB.

If you have a two-button mouse, you should add the "Emulate 2 buttons" option. For devices that have more than three buttons, you can use the "Buttons" option to specify the exact number if you have more than three. More esoterically, you can use the "XAxisMapping" and "YAxisMapping" options to give a space-separated list of buttons to use when a scroll wheel is emulated, or "ZAxisMapping" to map the scroll wheel motion to another axis or button, either because you are using a device that lacks a scroll wheel but has extra buttons, or for simple convenience.

Configuring the graphics card

xorg.conf's Device section controls the graphics card configuration. This name is obscure, but understandable when you consider that the graphics card drives the entire display. The basic configuration consists of the Identifier, followed by the Driver field. If you are having trouble with the display, you can try one of the drivers in the /usr/lib/xorg/modules/drivers directory, using the first element of the file name before the underscore as the entry for the driver in xorg.conf. For example, if the s3virge_drv.so file is in the directory, you would enter the driver name as "s3virge". If all else fails you can get basic video support by entering "vesa" or "vga" for the driver. Most of these drivers have a man page that you can consult for more information.

Increasingly, the BusID field, which defines the slot the video card is placed in, is also being used in this section. Usually, the first video card's bus ID will be PCI:1:0:0, but you can find it for sure by running the lspci command and looking for the video card in the results. Depending on the card in your system, you may also need to add the VendorName and BoardName fields, using information that came with your video card.

Defining the monitor

At a minimum, the modern Monitor section of xorg.conf consists of a unique Identifier and the option DPMS, which enables Display Power Management Signaling in order to conserve the power used by the monitor. However, you can also set the horizontal and vertical refresh rates in the HorizSync and VertRefresh fields, or the monitor's Gamma setting, using information supplied with the monitor.

Another option is DisplaySize, which is measured in millimeters and specifies the dots per inch to use at a particular resolution. To get the resolution in millimeters, multiply both the height and the width by 25.4, and divide each result by the desired DPI. For example, if your resolution is 1024 x768, the results rounded down would be 270 and 203, and the entire entry for the option would read:Option "DisplaySize" "270 203 # 96 DPI @ 1024x768".Alternatively, with some Nvidia cards, you may need to suppress the automatic setting of the DPI by including the option "USEdidDPI" set to "false" and following by the option "DPI" with a value for the desired DPI, such as "96 x 96".

Setting resolution and color depth

The Screen section begins with a unique identifier, followed by a summary of the display options, listing the video card ("Device") and monitor by the Identifiers they were given in early sections of the file, followed by the default color depth ("DefaultDepth").

The rest of the section is devoted to the Display subsection. For each color depth ("Depth"), the subsection lists each resolution ("Mode") that the system supports. When the X Window System starts, it will try to use the default color depth at the maximum resolution listed for it. However, if X is unable to do so for any reason, then it will try each resolution for the default color depth, then repeat the process for the next highest color depth until it manages to load.

You can use this behavior to force your display to use a particular color depth and resolution, either because your system refuses to use the settings you want -- possibly due to a flaw in the driver -- or because you want settings lower than the maximum. All you need to do is change the default color depth, then, under the listing of resolutions for that depth, place your preferred resolution first.

You may also choose to delete the resolution listings for other color depths, as well as other resolutions. As long as you have a backup of the original xorg.conf file, the worst this practice can do is force you to restore the backup and reboot.

Final steps and final words

If you have added hardware to your system, your last step in editing xorg.conf must be to make sure that the xorg.conf references it. That means adding the Identifier for a new monitor or video card to the Screen section, and the Identifier for a new pointing device or keyboard to the ServerLayout section. When you have done that, either reboot your system or restart X using Ctrl-Alt-Backspace to test the new configuration. Should X fail to start, you can still edit xorg.conf from the command line, or, when either all options or all patience is exhausted, restore your system using the backup copy you made of xorg.conf. You can find log files for Xorg in /var/log, although, since the problem is bound to be in your recent changes, you may not need the log to figure out what is wrong.

These are only the most basic options for editing xorg.conf. Depending on which manufacturer you buy your hardware from and whether you are using multiple pieces of the same type of hardware, you can significantly complicate the contents of the file. However, the information here is enough for a basic orientation. You may never have to edit xorg.conf manually, but if you do, knowing what to expect can only help.