Set Qt mouse pointer inside GNOME

You don’t have to install theme packages, engines or extra apps. All you need is already on your Debian system:

# update-alternatives --config x-cursor-theme There are 2 choices for the alternative x-cursor-theme (providing /usr/share/icons/default/index.theme).

Selection    Path                             Priority  Status
------------------------------------------------------------
* 0     /usr/share/icons/DMZ-White/cursor.theme   90    auto mode
  1     /usr/share/icons/DMZ-Black/cursor.theme   30    manual mode
  2     /usr/share/icons/DMZ-White/cursor.theme   90    manual mode
Press enter to keep the current choice[*], or type selection number: 1 update-alternatives: using /usr/share/icons/DMZ-Black/cursor.theme to provide /usr/share/icons/default/index.theme (x-cursor-theme) in manual mode.

If you’re not using Debian, it seems the way to go is to follow /usr/share/icons/default/index.theme with the following:

[Icon Theme]
Inherits=DMZ-Black

Either method sets the cursor theme systemwide through Xorg itself. To set it for a single user, add the following to ~/.Xdefaults:

Xcursor.theme: DMZ-Black
Xcursor.size: SIZE #optional

In my own case, I was using the the DMZ-Black theme on GTK applications, but Qt3/Qt4 applications (Amarok 1.4, Clementine, Skype, KeepassX) had the mouse pointer switch to DMZ-White when it entered their windows. Nothing that would cause trouble, but annoying if you want a consistent look across your environment.

As said before, this avoids unnecesary cruft on your system and works for all desktop environments you might have on your system.

Tips grabbed from here.

The no-bullshit Samba plus Nautilus network shares method.

Here is how to setup Samba and GNOME Nautilus to allow user directory sharing without having to allow root access. These commands are made with Debian in mind, so if you want to use them for your Linux distribution, you’ll have to adapt them.

  1. Install samba and nautilus-share.

  2. # aptitude install samba nautilus-share

  3. Rename your smb.conf to smb.conf.master

  4. # cd /etc/samba
    # mv smb.conf smb.conf.master

  5. Add the following to smb.conf.master somewhere under the [global] stanza using your favorite text editor.

  6. security = SHARE
    usershare allow guests = Yes
    usershare owner only = No

  7. Run the following command:

  8. # testparm -s smb.conf.master > smb.conf

    This tests the samba master configuration file, then outputs the results to the file samba itself will use for its configuration. If it finds errors, it will warn you about them.

    According to the Samba docs, a small smb.conf file improves performance. It also improves readability once you’re familiar with Samba options.

  9. Restart samba.

  10. # /etc/init.d/samba restart

  11. Add your user to the sambashare group. If more people use the system and they need to share files, make sure to add them as well.

  12. # useradd -G sambashare foo

  13. Log out of your user session, then log back in.

  14. On Nautilus, when you right-click directories you will now see a “Sharing options” item. Through this item you can:
    • Share the folder, assigning a share name.
    • Allow read/write access.
    • Enable Guest access, which allows people without a user account on the system to access the share.

This last option is the most useful as people can now get stuff through the network without having to deal with usernames or passwords. Does this make the Linux system behave like a Windows system? Yes, it does.

There is something to be said, however, about the convenience of creating shares without having to muck around the smb.conf.master file whenever you want to make a change.

(Source: missyours)

Cite Arrow reblogged from glimlaj
Cablemas DNS

So it seems cablemas decided to block DNS requests (port 53) going out of their network. I’m not sure if they’re doing this at the network level — which would be extremely stupid on their part — or by reconfiguring their modem. Either way this means:

  • Cannot use OpenDNS or Google Public DNS for domain resolution.
  • I’m forced to use Cablemas DNS servers. They are very, very slow. Most lookups are above 20s, with 30s-40s latency being common.

Since DNS queries take long to resolve, internet connectivity is slow as hell. Enter DNS caching (DNS proxy).

Most DNS servers can do caching on the side (BIND, djbdns, dnsmasq) without too much additional work. The problem is most of the time the cache disappears when the computer is rebooted. If your system is a server, you’re fine. But what if you’re on a laptop or a desktop? It’s no good having a cache if you have to rebuild it every day.

There isalso the fact the electric system in Mexico isn’t the best, so often computers go down hard when the electricity fails. UPS units are expensive to put them on a single desktop computer.

So that’s when I discovered pdnsd. It’s a light DNS proxy that can act as a caching system, working on localhost to speed up queries.

Being on Debian Sid, all I had to do to install it was

# aptitude install pdnsd

When asked which mode to use, I chose ‘manual’. When it was done I added my ISP’s DNS servers like so to /etc/pdnsd.conf

server {
        label=cablemas;
        ip=200.95.144.3;
        ip=10.147.0.43;
        ip=10.147.0.15;
        timeout=30;
        uptest=ping;
        ping_timeout= 300;
}

You’re free to use other DNS resolvers like OpenDNS or Google Public DNS obviously. The caching will work regardless of what upstream server does the actual resolving.

Then set it up so it runs on boot by editing /etc/default/pdnsd

This sets up the daemon to work; you still have to set up your network interfaces to make use of the cache. In my own case my system is getting an IP address from the cablemodem itself dynamically, so I had to edit /etc/dhcp3/dhclient.conf and enable the prepend domain-name-servers directive:

prepend domain-name-servers 127.0.0.1

If you’re setting manually via /etc/network/interfaces, you’ll have to manually edit /etc/resolv.conf so your local DNS is queried first.

Once everything is done, bring down the interface (eth0 in my case):

# ifdown eth0

Then bring it back up:

# ifup eth0

I’m pretty sure it’d be same for wlan interfaces. This should be more useful on laptops or systems that connect to networks of unknown quality.

This all goes to show Cablemas is one of the worst ISPs around and you should avoid it like the plague.

Sources:

Debian

Lenny is good. Rock solid, just like the name ‘Stable’ promises.

But it wasn’t enough. So I updated to Squeeze.

That wasn’t enough. Went up to Sid. These guides helped.

So now I’m running the latest and would-be-greatest. Going to run a server with it.

Yes, I’m insane.

Songbird

Used version 1.2.0, which is the one currently being offered as stable. The application itself takes some extra work to get it going since it’s a XUL application. There are pre-built Ubuntu packages which you don’t get from the developers themselves, but rather from third parties who offer them. This means you have to trust these packagers when performing the installation.

The program doesn’t integrate into the desktop environment at all either. Sure, you can install “feathers” (skins) on it, but if you like a unified look across all your applications you’re out of luck. It can’t be that hard to use system bindings, surely.

Any playlists imported into it need to be coded in ANSI (ISO-8859-15). If you try to import anything in UTF-8 you will get lots and lots of ghost songs in the database. In my case I ended up with 4K ghost songs in a library of 13.4K songs. All these songs would have to be rated again. Screw that.

Now, here’s the kicker. It likes to eat RAM like a legislator takes money out of the public treasury, often going into the hundreds of megabytes of RAM usage.

Gotta keep looking for a decent music player. There’s gotta be something comparable to Winamp at the very least.

Exaile

After my update to Karmic Koala I found myself in need of a new music player, specially after using the godsforsaken mess that is Amarok 2. In my search for a new music player for Linux I happened to find Exaile. It describes itself thusly:

Exaile is a music manager and player for GTK+ written in Python. It incorporates automatic fetching of album art, lyrics fetching, artist/album information via Wikipedia, Last.fm scrobbling, support for many portable media players including iPods, internet radio such as shoutcast, and tabbed playlists.

It takes a lot of inspiration from Amarok 1.4 in its layout and design choices and since it’s written in GTK you don’t have to install any KDE dependencies.

Even though it’s up to version 3.0.2 at the time of this writing, it should be considered alpha software. Beta at the most:

  • Playlist import/export doesn’t really work. You can import only from M3U playlists and export to XSPF playlists. The other choices don’t work.
  • Overuse of playlist tabs.
  • Most plugins don’t work the way they’re supposed to.

On the plus side, the developers offer a repository for it, so you don’t have to jump through hoops like you do when you want to use SongBird.

After attempting to use it for a couple of days, I’ve decided it’s not for me. Hopefully I’ll get SongBird working without too many problems.