bingshui.org

the Life of Zim

2nd October
2012
written by dzimney

So I think this is my third post on setting display resolutions under Ubuntu. I’ve got this Dell P2311H 23″ monitor, which has really been great for what it cost me (around $200, I believe). However, the monitor resolutions don’t get picked up by Ubuntu and after a few restarts of my computer, I end up with 640×480 display, which is really a pain in the ass. The odd part is, that usually during installation and for a few restarts, everything runs fine. Eventually it always gets jacked. It has something to do with the monitor not putting out a EDID. I write a little about it here. Anyhow, I recently updated to Xubunut 12.04 (not a fan of Unity at all). And so of course, here I am dealing with the same issue. Things have changed since 10.10 however.

In Xubuntu 12.04 (which for the record is simply Ubuntu running Xfce rather than Unity), the xorg.conf files are handled a bit differently. Firstly, they’ve moved out of the /etc/X11 directory and into the /usr/share/X11 directory. Additionally, they have become they. In 12.04, and I believe since 11.04, the xorg.conf is now a directory called xorg.conf.d and contains various *.conf files. This is a very welcome change as it allows for the config files to be more organized. In the /usr/share/X11/xorg.conf.d directory, there should already be a number of files. One thing to not here is the that naming convention is to start with a two digit number then dash then the config file name, such as 10-monitor.conf, which is what we will be using. From what I understand the number at the beginning is used to sort which file gets loaded first. I believe there are also some conventions for the number ranges, such as numbers in the 40s are all for some type of config. I really don’t know, but in case you care, there is a rhyme or reason to it, which you can of course choose to ignore if you wish.


Step 1

Before we begin, there are a few pieces of information we need. Firstly, we need to know how to write our modeline. What’s a modeline? I don’t really know, but we’ll be generating one with the gtf command which takes three parameters, Horizontal Resolution, Vertical Resolution and Refresh Rate. In my case, I will be entering the command like this:

gtf 1920 1080 60.

This will provide a modeline for a screen resolution of 1920px width 1080px high and a refresh rate of 60hz. If you don’t know your refresh rate, you probably want to go with 60, especially if you’re using an LCD screen. Entering the command should output something like this:

# 1920×1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz
Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync

We want the “Modeline” which is including and everything after the word “Modeline”.

Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync

We also need the Mode Name. This is the first part in quotes: "1920x1080_60.00", including quotes.


Step 2

Next, we need to know the name of our display device. To retrieve this, enter xrandr into the terminal. This should output something similar to the following:

Screen 0: minimum 320 x 240, current 1920 x 1080, maximum 1920 x 1080
default connected 1020x1080+0+0 0mm x 0mm

What we’re looking for here is the name of the device. This should be whatever appears before the word “connected”. In my case the device name is “default”.


Step 3

Now it’s time to write the configuration file. As I mentioned earlier, we are going to create a 10-monitor.conf file. To do so sudo an editor of your choosing such as pico or leafpad. If you don’t like the terminal try the command sudo leafpad /usr/share/X11/xorg.conf.d/10-monitor.conf. Personally, I enjoy myself a little pico and will be entering sudo pico /usr/share/X11/xorg.conf.d/10-monitor.conf. Either will do.

Type up your config file to look like the following, where <MODELINE> and <MODENAME> are replaced with the modeline and modename you found in the Step 1 and <DEVICENAME> with the device name found in Step 2.

Section "Monitor"
Identifier "Monitor0"
<MODELINE>
EndSection
Section "Screen"
Identifier "Screen0"
Device "<DEVICENAME>"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes <MODENAME>
EndSubSection
EndSection

In my case, the final file looks like this:

Section "Monitor"
Identifier "Monitor0"
Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
EndSection
Section "Screen"
Identifier "Screen0"
Device "default"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1920x1080_60.00"
EndSubSection
EndSection

IMPORTANT! READ THE FULL NEXT PARAGRAPH
For the changes to take you’ll need to save the file and restart your computer. If everything was done correctly, your resolution should be set at 1920×1080 (or whatever resolution you’re using) and you shouldn’t need to touch this stuff again. HOWEVER, if you have a typo or anything wrong with the config file you’ve just created, it is possible for you to lose your display entirely. If this happens, wait for the computer to fully boot and press Ctrl+Alt+F1. This should bring up a terminal and allow you to remove the config file you’ve just created. Do so by running the following:

sudo rm /usr/share/X11/xorg.conf.d/10-monitor.conf

Once you’ve removed the file, restart the computer (this can also be done in the terminal by running sudo reboot). You can also edit the file the same as we did before, although leafpad won’t be an option any more, and attempt to decipher what is causing the problem. It is entirely possible that this solution simply won’t work for your configuration and monitor.

Good luck. And thanks to Samuel Martin for the original post on this.

19th February
2011
written by dzimney

I’ve been using the Android Notifier with my MacBook for some time. If you haven’t checked it out, please do. The application sends notifications to your desktop for everything from incoming texts to a low battery warning to third party notifications. It’s a great little app if you’re into that sort of thing. So when I made my switch to Ubuntu, naturally I wanted to get the Android Notifier working with my new machine.

I won’t get into how the application works or how to pair your phone with Ubuntu. There’s plenty of info on those out there. The issue that I was running into, was with my Nexus S paired and being able to send files to and from Ubuntu, I could not get Android Notifier to pick up on any of my test notifications. When setting up Bluetooth on my computer to allow for file transfers I’d discovered that Android uses OBEX to push and receive file transfers over Bluetooth. So, with this in mind, I decided to investigate how Android Notifier listens for notifications. After checking out the wiki on the project page for Notifier, I found this article regarding the protocols used by Android Notifier (thank you to the Notifier team for posting the documentation on this). Turns out for the Bluetooth connection, Notifier uses a UUID (Universally Unique Identifier) when sending notifications.

QUICK ANSWER:
While this may vary between distributions of Linux, on my Ubuntu 10.10 setup, I had to install the UUID command-line tool in order to get Android Notifier working. To do this, run the following command:


$ sudo apt-get install uuid

I hope this helps someone solve their issue using Android Notifier. I’d hate for someone to miss out such a sweet app.

9th February
2011
written by dzimney

Playing around with setting up my Linux box as a VNC client, I ran into an unexpected dilemma. Basically, when running Ubuntu 10.10 and connected through VNC using a Mac as a client, whenever you press the ‘D’ key, all windows collapse. Think it’s not a big deal? Start counting how often you press the ‘D’ key in normal typing. In fact, I initially tried running a Google search on the issue and couldn’t type the search without pressing the ‘D’ key. Anyway, really annoying problem with a really easy fix (assuming you have access to the server computer).

What’s going on.
In Ubuntu 10.10 there is a default Keyboard Shortcut for “Hide all normal windows and set focus to the desktop”. Seems like a useful shortcut. Unfortunately the default (as displayed by the Keyboard Shortcuts dialog) is set to Mod4+D. Now, I have no idea what Mod4 is. Presumably a modifier key like ‘control’ or ‘alt’. The interesting piece to this is that when logged in through VNC (using Chicken of the VNC as a client on my MacBook Pro) the modifier key must not be recognized and so is simply dropped off from the keyboard shortcut. Thus, every time you press the ‘D’ key, all of your windows collapse.

The solution.
Easy. Just open up the Keyboard Shortcuts dialog on the server machine by going to System -> Preferences -> Keyboard Shortcuts, toggle the Window Management group and disable the shortcut by selecting it and pressing ‘delete’. Or change it to whatever shortcut you’d like to use.

Hope this solution helps someone some headache.

Tags: , , ,
31st January
2011
written by dzimney

This is more of a future note to myself so when updating I have a record of which drive is which, but I suppose it’s possible that someone might find this info useful for their own partitioning. However, I am admittedly a novice at this. I’ve done my research and am confident in my partitions and sizes, but as everything is arguable, this may not be the best approach.

Please feel free to comment with criticism and/or praise.


For my install of Ubuntu 10.10 on a 250 Gb drive with 4 gigs of ram (expandable to 8gb)

sda1 — /boot at 500 mb (primary)
sda2 — / at 8 gb (primary)
sda3 — swap at 8 gb (swap)
sda5 — /var at 4 gb (logical)
sda6 — /usr at 16 gb (logical)
sda7 — /home at 196 gb (logical)
sda8 — /opt at 4 gb (logical)
sda9 — /tmp at 4 gb (logical)

Leaving around 8 gb left of unformatted disk space.