Posts tagged linux
There is a new Humble Bundle (#5) of games out now. It includes up to 8 games, which are cross platform for Linux, Android, Mac and Windows. This is a fantastic way of distributing games, and allows indie developers to get their product out into the marketplace. It is also a clear indication to developers that Linux is a viable market for game development – if you scroll down to the bottom of the page, you will see that there are more Linux downloads than Mac, and that Linux downloaders pay the most for the games. Did I mention that you have to pay for the games? but you get to choose how much you pay. Go forth and game!
This will not be the usual list of apps that every ubuntu wannabe thinks are cool after they’ve been dabbling in linux from a dualboot windows box for a couple of months. These are applications that provide me with the reasons that I’ve been using linux for the last 11 years. These are my killer apps – the reason I use linux on the desktop both at home and at work.
mplayer is a light weight, full featured media player. In fact it’s so light weight, it doesn’t even bother with a gui. Just run it from a terminal, and up pops a simple window showing the video and the video only. Manipulating the video (fast forward, pause, toggling subtitles, volume controls etc) is done through keyboard commands, which quickly become second nature. Mplayer plays any video or audio codec/container you can name and supports a number of display drivers, including displaying video on a terminal using ascii.
I have a number of video players on various machines of different types, including Windows and OSX, which have a number of different video playing apps on them, including VLC, quicktime, WMP, but my preference is always to move the video file to my linux box and play it in mplayer. It just feels right. Check out this article with some useful tips and tricks for getting the most out of mplayer.
The humble window manager is an often overlooked part of a desktop software stack. However, if like me, you swap between the mainstream desktop OSes – Windows, OSX – and linux, you certainly notice it when it’s not up to scratch. Even more importantly, with the mainstream desktops (Windows 8, OSX Lion, iOS and Linux with Unity/Gnome3) moving towards forcing desktop users into an interface more suited to “single-tasking” devices, a good quality window manager that is optimised for multi-tasking, is going to become harder to find.
kwin is abundant with features. With the 4.x series, it has built on top of an extremely robust base to add eyecandy and some great usability features. The things I miss from kwin when using OSX or Windows 7 are:
- Working focus stealing prevention. There is nothing more annoying in Windows when you’re working on something and Windows decides it has something more important for you to deal with, forcing you to have to click on what you were working on to get back to the task at hand;
- “keep window on top of others”. Great for keeping reference material visible while you switch between other windows;
- The option to switch to a tiling window manager. Very useful for tasks that require several windows to be visible all at once – works best with a large screen;
- Glow around the focussed window;
- Per application/window configuration. Allows you to specify window management attributes for specific applications;
- Alt+Left Click to drag a window or just click on a blank part of the window. You don’t have to aim the mouse at the title bar to drag it;
- Cover flow style Alt+Tab switching. Gives you a nice live view of windows as you switch between them. Makes them easier to find;
- Eye candy galore. Adds visual interest, as well as usability enhancements;
- Configurable button position. Left or right or both – you choose;
- Tabbed windows.
Conky is a highly configurable “canvas” for displaying all sorts of information, including system information about your computer, as well as other information from around the internets, including weather, rss feeds and twitter feeds. It is extremely light weight and with a bit of tweaking, will fit in seamlessly to any linux desktop. Having all this information in a compact and elegant format on your desktop is incredibly useful.
Wget is one of those classic unix programs. It does one thing very well, and as such can be used for all sorts of things either on its own, or in combination with other tools. Wget is a terminal program for downloading files from the internet – be it recursively downloading a tree of links, or a single file.
Wget is built for robustness, so if a download does not complete due to network issues, it will keep trying until the file is downloaded. Very useful for slow or dodgy connections, which graphical web browsers often choke on.
kio is KDE framework which allows all sorts of protocols and resources to be used as if they were a local file system. This means that these resources can be used from within applications through the open/save file dialog. kio slaves give access to network resources such as ftp, sftp, webdav, fish, smb and nfs. This means you can open a remote file in your text editor, edit and save it, all without downloading it to the local file system. Likewise, you can copy files between two remote systems as if they were on your local machine.
There are other things you can do, for example if you put an audio cd in the disk drive, and go to audocd:/ in dolphin, you’ll be presented with a number of folders of the audiocd in several formats, including .mp3, .wav, .flac and .ogg. Open up the folder, and the CD will be ripped in the desired format.
mediatomb is a fantastic dlna server for serving media on your network to a number of devices. Mediatomb is incredibly robust and supports transcoding and auto-detection of new media. It can be configured via a nice clean web interface and is very robust – it’s been running happily on my home server with an uptime of 272 days.
avidemux is a video editor. It is not a full featured non-linear video editor for making home movies, although it will allow you to do rudimentary editing, such as cutting a section of video out. It is not a video ripper, although it will allow you to transcode video. avidemux is basically the swiss army knife of video utilities.
It can be used to fix videos that have defects, such as bad A/V sync, or other artifacts from poor encoding. It can be used for transcoding and resizing videos to suit different formats and devices – particularly where there is something funky with the audio track. Always useful to have around if you are a heavy consumer/creator of video.
If you’re a terminal junky, screen is indispensable. Screen was designed as a kind of “window manager” for terminals. It allows you to have several different terminal sessions running in a single terminal. Now that we have “actual” window managers, and can run several terminals at once, and indeed have several terminals in each window in different tabs, this is not why it’s in my list.
It’s in my list because it allows you to have persistent sessions on remote machines that are not vulnerable to unstable connections, or the termination of a connection. This means you can have a program such as rtorrent or wget running on a remote machine and just leave it running – checking on it when you need to. This is how I use rtorrent. I have it running on my home server (which acts as a NAS among other things) in a screen session. When I need to download something, I drop the torrent file in a directory that rtorrent watches for new torrents and away it goes. If I need to check on anything, I log into the NAS and resume the screen session and there is rtorrent working away in the background.
rtorrent is a terminal based bittorrent client. It is fully featured, despite not being “flashy”. One of its killer features is that it will watch a directory, and will start downloading any torrent that gets dropped into that directory. But the best thing about it from my perspective is that it can run on a NAS box (which is usually headless), so that you don’t need to transfer the files from a desktop machine to the NAS box once they’re downloaded. This feature also makes it very easy to automate grabbing torrent files from the internets for download – for example via RSS feed – for unattended downloads.
krename is a powerful file renaming application. If you’ve ever needed to rename thousands of photos or music files, you’ll know the value of having a powerful renaming application. krename has a myriad of amazing features, including adding prefixes and suffixes to filenames, using regular expressions to rename, using file metadata, or other attributes (such as modification/creation time) to generate file names. It will preview image files and can be used via a wizard interface if you prefer a linear workflow.
Having a standalone colour choosing application is invaluable for a number of applications. I often find, when doing web based work, that I need to know what the HTML or RGB code is for a particular color. Or I want to select a colour I see on my screen. kcolorchooser allows me to do this very simply, without having to open another application – it’s built into the desktop.
Spam is the scourge of modern communication. spamassassin is an incredibly robust anti-spam program. Its filters are frequently updated and can be “trained” to more accurately detect spam. It runs independently of the email client. One of my great frustrations with using a spam filter inside the client, is that downloading email was just so slow, and resulted in my machine slowing down while it churned its way through each email testing its spamminess. So I moved the spam filtering functionality onto a server. Using fetchmail to download the mail, procmail to sort it, spamassassin to filter it, and dovecot imap server to store it, email at the client side is so simple. What’s more, I can read email from anywhere in the world by just connecting to my home imap server. Once set up, the system is incredibly robust, and almost maintenance free.
Being a long time linux user, I occasionally find myself as a stranger in a strange land using MacOSX on my wife’s macbook. The lack of certain specific keys for common text navigation (for example PageUp/PageDown keys, Home/End keys and Backspace key) makes keyboard navigation of text documents very cumbersome and slow. I hate having to take my fingers away from the keyboard to use the mouse to navigate around a text document. Furthermore, it’s not that easy to find lists of key combinations just for text navigation on MacOSX, so I’ve compiled my own.
So for linux refugees who find themselves on MacOSX, here are the keyboard shortcuts you will need to navigate your way around a text file:
|Move to end of line||cmd-right arrow||End|
|Move to start of line||cmd-left arrow||Home|
|Move to end of file||cmd-down arrow||ctrl-End|
|Move to beginning of file||cmd-up arrow||ctrl-Home|
|Move to end of the current/next word||option-right arrow||ctrl-right arrow|
|Move to beginning of the current/previous word||option-left arrow||ctrl-left arrow|
|Select one character to the right||shift-right arrow||shift-right arrow|
|Select one character to the left||shift-left arrow||shift-left arrow|
|Select text to the end of the line||shift-cmd-right arrow||shift-End|
|Select text to the beginning of the line||shift-cmd-left arrow||shift-Home|
|Select text to the end of the file||shift-cmd-down arrow||ctrl-shift-End|
|Select text to the beginning of the file||shift-cmd-up arrow||ctrl-shift-Home|
|Select text to the end of the current/next word||shift-option-right arrow||ctrl-shift-right arrow|
|Select text to the beginning of the current/previous word||shift-option-left arrow||ctrl-shift-left arrow|
|Delete next character||fn-delete||Delete|
|Delete to end of current word||fn-option-delete||ctrl-Delete|
|Delete to end of current line||fn-cmd-Delete||shift-End then Delete|
|Move cursor down one page||ctrl-V||PageDown|
|Scroll down one page||fn-down arrow||-|
|Scroll up one page||fn-up arrow||-|
Then there’s the terminal. Having just set out all the text navigation equivalents for MacOSX above, the terminal on MacOSX doesn’t seem to follow any of these rules. For example, want to get to the beginning of the current command? You press ctrl-a. To get to the end of the command, press ctrl-e. This can be quite frustrating that the keyboard shortcuts are not consistent across all apps. Luckily, fn-delete still works. Also, other functions, such as ctrl-r and using the ‘!’ character to call up specific commands from history still work.
So there you have it Linux refugees – hopefully this will make any excursions you make into MacOSX slightly more bearable.
Following from an article about desktop virtualisation, everydaylht.com has published a new article on how to launch virtualised Windows apps directly from the Linux desktop using vmware and unity. This basically means you can use Windows apps on a Linux desktop as if the “belong” there. Very cool.
2011 is the 20th anniversary of the first release of the Linux kernel by Linus Torvalds. Since that time, the linux kernel, together with the GNU tools and a whole host of software has been developed by enthusiasts and professional programmers into an operating system that runs on tiny embedded systems right up to the world’s fastest supercomputers.
Whilst hard numbers are hard to find and trust in relation to the deployment of linux. However, in a recent interview with NetworkWorld, the executive director of the Linux Foundation said Linux had a “humble start as a project for a college student in Helsinki, to something today that runs 70% of global equity trading, something that powers, really, the majority of Internet traffic, whether it’s Facebook, Google or Amazon.” The executive director did concede that Linux certainly doesn’t own the Desktop, but said Linux’s failure to capture desktop share is “disappointing to many,”. However, “the good news is the traditional PC desktop is becoming less important, and areas where Linux is very strong in terms of client computing are becoming more important.”
As a desktop Linux user since about 1999, I’d put myself in the “disappointed” category. However, having said that I have, and have had for some time, a desktop operating system in Linux that is at least the equal of Windows in many areas, and far in excess of it in many more. Whilst Linux on the desktop has had miniscule market share, that hasn’t stopped developers putting together a polished desktop with polished applications that meet all my needs of a desktop computer – which are many and varied.
Even if you are a died in the wool Windows or Mac user, you would have to acknowledge the achievement of thousands of developers – a large majority of whom give of their time and expertise without monetary reward – in creating such a powerful and diverse collection of software. Competition breeds innovation, and without Linux pushing from behind and now from in front, I doubt that Windows or Mac would be where they are today.
And to prove that this is the year of Linux NOT on the desktop, check out where linux is lurking: