Drush, Drush Make, other Drupal packages, and development setup for openSUSE

I have recently added drush and drush make packages to my openSUSE repository. For more information or to report bugs on the packages please visit their respective project pages: drush and drush_make.

To install the packages you can use the one-click installers provided by the build service or manually add my repository and install the packages as shown bellow.

zypper ar[2 or 3]/ home:boombatower
zypper in drush drush_make

Also note my existing Drupal packages: drupal-dev and drupal-vhosts, as well as the LAMP Drupal one-click pattern. The latter package (drupal-vhosts) is very useful in setting up a multi-drupal version, multi-subdomain work environment.

To use simply install and run the command to point the virtual hosts to the directory containing your Drupal code.

zypper in drupal-vhosts
drupal-vhost /path/to/main/software/directory

Either edit the hosts file directory or use YaST -> Network Services -> Hostnames to add an entry for every Drupal version you wish to run (package currently supports 6, 7, and 8). The relevant lines from my /etc/hosts file are as follows.       d7x.loc       d6x.loc 

For my setup I use /home/boombatower/software for all my code with Drupal cores in drupal-7 and drupal-6 directories respectively. If you want to have subdomains for your sites just add more entries to /etc/hosts and use the respective Drupal sites directories.

Personally, I then create symbolic links to all my modules so that the code resides in the root of the software directory, but can be used by any respective site. This makes the paths to modules and what not much shorter and easier to reference from multiple specific sub-sites and what not. For example to link pathauto to the all modules directory for Drupal 7 I would execute the following.

ln -s ~/software/pathauto ~/software/drupal-7/sites/all/modules

Or from within the sites/all/modules directory as I tend to do.

ln -s ~/software/pathauto .

Also note, to enable mod_rewrite and get clean URLs to work simply go to YaST -> System -> /etc/sysconfig Editor then Network -> WWW -> Apache 2 -> APACHE_MODULES and add rewrite to the end of the line. You can do so manually of course as well.

In order for the virtual host changes and apache module addition to take effect you will need to restart apache and for the /etc/hosts changes you need to restart the network which you can do with the following commands run as root.

rcapache2 restart
rcnetwork restart

The end result of all this work is beautiful URLs like: http://d7x.loc/node/1, http://foo.d7x.loc/user, and http://d6x.loc/.

I also create a similar structure within MySQL. First, I set an easy to remember MySQL root password since there really no reason for it not to be easy to remember and it is helpful when having to enter it a lot.

mysqladmin -u root password EASY_TO_REMEMBER_PASSWORD

Next setup a drupal user in MySQL and give the user all permissions to d7x* and d6x* named databases which allows us to use a single user for all our drupal sites (much easier to remember login info) without having to update privileges all the time. I name my databases the same as virtual hosts, so for d7x.loc I would have d7x as the database name and for foo.d7x.loc I would have d7x-foo.

GRANT ALL PRIVILEGES ON  `d7x%` . * TO  'drupal'@'localhost';
GRANT ALL PRIVILEGES ON  `d6x%` . * TO  'drupal'@'localhost';

Anytime you want to add a database for a new site simply run the following.


Enjoy your fancy development environment!

openSUSE one-click for LAMP and Drupal

I decided to play around and see if I could create an YaST Meta Package for:

  • LAMP stack
  • Drupal/SimpleTest required PHP extensions
  • phpMyAdmin

After a quick read of the Build Service/Tutorial and a talk with cyberorg in IRC (#suse/#opensuse-buildservice) I was able to upload my pattern to the openSUSE build service.

It was quite simple as I expected since openSUSE's build service and such seem to be quite nice. I have plans to fix up some of my other Drupal packages, add more, and work on personal projects. If you use openSUSE and give it a try, let me know if it works or you have any feedback.

My repository is available at:

openSUSE 11.0 Released!

The latests and greatest version of openSUSE has been released. I have been waiting for SUSE 11.0 for some time and will be upgrading immediately. I have already backed up my system and have begun downloading the 64 bit DVD via torrent.

This release has been praised as the Mercedes-Benz of Linux. The release has lots of updated programs, new features, and performance upgrades.

A good article can be found at one of my favorite blogs.


Kopete for Google Talk

Due to Google Talk's lack of support for Linux or Mac users are forced to use the gmail AJAX interface or the flash gadget. Personally I don't like having them open in my browser and neither of them have the capabilities of an application.

So I decided to see if it was possible to setup Kopete, a common Linux chat program, to work with Google Talk. As I found out it was very simple.

This article describes how to set it up.


SUSE Build Search

SUSE now offers a web search that allows you to find programs and their respective repositories. The one-click install will be implemented in SUSE 10.3, although there are ways to make it work in SUSE 10.2.

I use the search tool to find the repositories that I need for the specific programs I want. Once you find what you are looking for simple on the link in the upper right of each search result. This will take you to the address of that repository.

For example if you search for eclipse the link in the upper right is Java:addon/openSUSE_10.2. After you click the link it will take you to the following url:

You can then use the url to add a source to YaST. For instruction please see Adding YaST Installation Sources.


Internet Radio

I enjoy Internet radio through Amarok. Instead of picking songs off the web, cds, etc. a playlist will be sent to you and the music streamed to your computer.

To use Amarok to listen to Internet radio simply open Ameriok. Alt+F2 then type amarok. (or in the menus under Multimedia->Audio Player->Amarok or just Multimedia->Amarok) After Amarok loads select Playlists from the left tabs, then drop down Radio Streams.

You can add your own or look at the Cool-Streams that come with Amarok. Simply select one of the streams by double clicking it. The playlist will download and then you can choose one of the streams to listen to.

SUSE Installation Thoughts


It is a good idea to partition your drive into a main partition for applications and system stuff, home driver, and swap partition. By doing this you will be able to re-install SUSE without touching your personal files.

A swap partition is used when your computer runs our of memory then it can use the hard driver space for extra memory. I usually do a gig swap partition.

Turn off ZMD

I have found that there is really no way to remove ZMD after installing SUSE. You can disable ZMD, but there isn't any real way to un-install it.

My recommendation is to never install it. When installing SUSE simple click the software link when that screen is available and set Enterprise Software Management (ZENworks Linux Management) to Taboo by right clicking and selecting Taboo.

If you have already installed SUSE and just want to disable it please try Improving Yast Software Management.


Installing KDevelop

Recently I have begun work in C++ and decided I wanted the most up to date version of KDevelop. So I looked in YAST but it wasn't the newest. The easiest way to get and maintain up to date version is to add a source containing KDevelop to YAST.

Add the following source to YaST. If you are new to adding installation sources please refer to Adding YaST Installation Sources.

Then goto Software Management and install KDevelope. YAST will then maintain your version by alerting you to updates and allowing you to install them with a single click.

A good tutorial I used is:


Desktop Notes in SUSE 10.2 KDE

Windows Vista has a new feature that allows you to place notes on your desktop. This feature has existed for some time in SUSE, and there have been various Windows Gadgets that sought to emulate the functionality. I will explain how to use notes in SUSE 10.2.

Start by loading KNotes via Menu->Desktop->KNotes.

KNotes will load itself in the system tray (icons in the bottom right of screen by default). To make a new note simply right click on the KNotes icon and click new note.

A new note will appear on your desktop that you can drag around, hide, and change note settings.

The note title can by modified by double clicking on the window title area.

You can add other options to your note such as an alarm that will remind you of the note.

You can hide notes by clicking the X on them, but to delete notes you must right click and select delete.

Hidden notes can be reopened by left clicking on the KNotes icon and selected the note you wish to reopen. If you only have one note than it will automatically open it.

Custom Key Mapping in SUSE 10.2

I like mapping keys to tasks/applications that I use often. This can be done very easily in SUSE 10.2 as I will explain. For this example I will show you how to emulate the Windows plus E key functionality in SUSE.

Open up Input Actions window. Menu->Settings->Regional & Accessibility->Input Actions.

Then add a new group for your custom actions. I added Windows Key since I choose to map some Windows key combinations.

I added the WIN+E that opens up home folder similar to Windows behavior. To do this add new action under your recently added group. Set the information to what is shown in the screenshot below.

Next set the keyboard shortcut by clicking on the icon of a keyboard button as in the screen below.

You should see the following.

You can now press down the key combination that you wish to map. So for this example press and hold the Windows key and the E key. Now enter the location of your home folder. Your home folder should be /home/[username]/ where [username] is replaced by your computer username. For example user john would be /home/john/.

This is just the beginning of what can be accomplished through the Input Actions dialog. You can setup conditions on when to run certain commands and when they apply. You can even setup mouse gestures.


Subscribe to RSS - suse