Tuesday, November 6, 2007

11 Things Ubuntu Needs To Improve On

Matt Hartley has posted 10 Things Ubuntu Needs To Improve On. He seems to know quite well about what he is writing, although I did not experience problems with (wireless) networking.

What surprises me is that he does not mention display resolution. As I have written earlier, changing the display resolution in Ubuntu can be quite a hassle. There are two options available through the Menu of the Desktop, and both must be set correctly in order to get the right resolution also after a restart of X Window System (Trick: to restart the X Window System in Ubuntu, just press Ctrl+Alt+Backspace).
Searching for a solution on the web only leads to some forums where people write how to modify /etc/X11/xorg.conf manually, which is a total imposition for newbies coming from the Windows world (and in my case, it even did not lead to success anyways!). So, I would like to add point 11) to the list of Matt Hartley:

11) Dummy-proof way of changing the Display Resolution through the Desktop! It is the first thing any novice from the Windows world will want to do, hence it is absolutely essential! Imho, the Windows way of changing things that affect the Desktop (right-click on Desktop, then select 'Properties') is excellent and should be copied 1:1 unless there are some copyrights or patents against it.

Friday, November 2, 2007

Share a single mouse and keyboard between multiple computers with different operating systems, each with its own display, without special hardware

I am currently testing Linux on a separate PC besides my main PC (which still runs Windows). For each PC, I have a separate monitor on my desk. Both PCs are connected over Ethernet.

I was looking for a possibility to use just one keyboard and mouse for both systems, preferably without additional hardware. The perfect solution is called synergy! There is a common description about how to setup, or you can use the following quick-guide which is most useful for a Ubuntu/Windows mix.

Step 1a: Download and install the latest version of synergy on the Windows PC (manually).

Step 1b: Download and install the latest version of synergy on the Linux PC. You won't find synergy in the package managers that are accessible through the default desktop menu. The easiest way to install it is to open a terminal (shell) and to execute the following command: 'sudo apt-get install synergy', which will locate synergy on the internet, download and install it on your local machine. (Note: this might not work for all Linux distributions, but it perfectly does for Ubuntu). If it works, you should get someting like that in the console:

josua@camelot-linux:~$ sudo apt-get install synergy
[sudo] password for josua:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
synergy
0 upgraded, 1 newly installed, 0 to remove and 11 not upgraded.
Need to get 628kB of archives.
After unpacking 1573kB of additional disk space will be used.
Get:1 http://ch.archive.ubuntu.com gutsy/universe synergy 1.3.1-2ubuntu2 [628kB]
Fetched 628kB in 2s (285kB/s)
Selecting previously deselected package synergy.
(Reading database ... 88932 files and directories currently installed.)
Unpacking synergy (from .../synergy_1.3.1-2ubuntu2_i386.deb) ...
Setting up synergy (1.3.1-2ubuntu2) ...

josua@camelot-linux:~$


Note: you don't necessarily need a Linux/Windows setup. You can as well just have 2 Windows PCs or 2 Linux PCs, or even Macs!

Step 2: Define one PC as Server, the other as Client. The PC that will be used more often should become the Server. For me, the Windows PC still has priority, so my Windows PC is the Server, the Linux PC is the Client.

Step 3: Configure the Server. The way synergy works is as follows: the monitor with the current mouse-cursor gets the the keyboard (and mouse) input. Therefore, we only need to define the physical setup of the monitors exactly as they are our (physical) desk. In windows, this is rather simple: Start Synergy, and in the GUI enable "share this computer's keyboard and mouse (server)", then click configure, add the screens (you MUST use your computer-names or IP as screen names!), and configure your setup (e.g. 'my-linux-screen is at the left of my-windows screen'...) with the options at the bottom of the dialog.
Configuring the server on a Linux PC means you have to edit the synergy.conf file in your home directory (just create it manually). The synergy homepage provides some useful examples.

Step 4: Let's autostart synergy on both systems on startup. In Windows, you can simply use the GUI again (just hit the AutoStart Button and configure). In Ubuntu Linux (using Gnome by default) we must add synergy to the sessions that are automatically started on login. This can be done through the top panel of the desktop: System/Preferences/Sessions. Click 'Add' and fill in the fields as follows: Name: synergy, Command: synergyc -f server-ip, Comment: start synergy.

That's it. Restart both your Server and Client and enjoy!

Oh and btw, synergy allows you to magically 'copy & paste' from one PC to the other! :-D