Installing Mono on SuSE Linux with Red Carpet

by Kevin Shockey

In most of the articles and forum entries everyone always mentions that installing Mono is greatly simplified by using Red Carpet. Now that I've done it, I'd have to agree. Getting there was, however, not as easy as I would have liked.

In this article I'll provide the step by step instructions for installing Mono on SuSE Linux Professional 9.1 using Red Carpet 2.2.3. After reading, you should have a clear idea of how to get through the installation, and hopefully avoid some of the snags I ran into. In the end, with this article, setting up Red Carpet will be as easy as using it to install Mono.

This article will not provide any explanation about Mono itself. It assumes that the reader knows what Mono is, otherwise, why would you be interested in completing the installation?

Step One - Obtaining Red Carpet Enterprise


Well the first thing to understand is that since Novell's purchase of Ximian, Red Carpet is no longer available as a separate download. As mentioned on the Mono Project download project, it is now available as the ZENWorks Suite 6.5.

Once you get to the ZENWorks download page from Novell, the file required is ZEN65_LinuxMgmt.iso. This provides management for Linux desktops and servers, but it is essentially Red Carpet Enterprise. Be forewarned, the only way to get the necessary installation RPMs are from a 474.2 MB iso image. In addition, according to the Novell web site, this is a 90-day evaluation license of Red Carpet.

I believe that Novell is well positioned to benefit from the growth of LInux and open source software. However, I question their restrictive licensing of a technology that is necessary to download and install what may become the predominant open source software development platform. I'm really not sure if this license will apply to Red Carpet, so I'll let you know in 88 days. In addition, why not break up the iso image into the individual components? Why should I have to download 474 MB when I only need 3 files that are less than 2 MB?

Step Two - Installing Red Carpet Enterprise


Once you have downloaded the iso image and have burned it onto a CD, then mount the CD and look for the redcarpet2 directory. For SuSE Linux Professional 9.1, the RPMs necessary were found in the suse-91-i586 subdirectory. The critical files are:

  • rcd-2.2.0-0.ximian.9.5.i586.rpm

  • This is the Red Carpet Daemon. It is absolutely necessary for getting Red Carpet to work correctly as I'll explain later.

  • red-carpet-2.2.3-0.ximian.9.0.i586.rpm

  • This package contains the graphical user interface for Red Carpet.

  • rug-2.2.0-0.ximian.9.0.i586.rpm.

  • This package contains the command graphical user interface for Red Carpet.

Install these packages and we are almost done. First, the GUI application should appear in the KMenu in the System -> Configuration folder as Red Carpet. You can further verify the successful installation by using YaST. Check in the Install and Remove Software -> Package Groups -> System Environment where you will find the newly installed software in the the Applications and Deamons groups.

With the software installed, the next step requires starting the Red Carpet Deamon. To start the deamon from the graphical user interface, you need to return to YaST. Select System -> Runlevel Editor, and then click on the rcd service. Click on the Enable button and the service should change status and show Enabled is now equal to Yes.

To start the Red Carpet Deamon from the command line, use the following quick command. Enter:

sudo /etc/init.d/rcd start

You will need the root password, in order to complete this transaction. Once complete, you should receive the prompt "Starting Red Carpet Daemon." Now that the deamon is running you are ready to begin the Mono installation.

Step Three - Installing Mono Graphically


I'll assume that you are not currently using the root account, so the first thing to do is be sure and start the Red Carpet GUI application using the root account. Enter:

sudo /usr/bin/red-carpet

If the connect to deamon dialog appears as illustrated in Figure 1, then the red carpet deamon is not currently enable. Return to the previous step and start the rcd deamon. Click on the Available Software tab, then click on the Channel drop down list selection button. This should produce a list of available channels. Select the mono-1.1 channel and then all available packages from the channel should appear. Slect Edit -> Select All or press Ctrl A to select all of the available packages. Select Actions -> Mark for Installation or right click the selected packages and select Mark for Installation. Click on the Run Now icon from the tool bar, select Actions -> Run Now, or press Ctrl X. This will start the installation process.

Figure 1 - The Connect to deamon Dialog


image

Step Three - Installing Mono From The Command Line (Alternate)


Issue the following commands as root:

rug refresh

This will download the most current channel information. Next in order to confirm connectivity with the redcarpet servers run:

rug channels

This should present a list of available channels. The list will also present whether you are currently subscribed to them. The output should resemble the following listing:

subd? | Alias | Name
------+------------------------------+---------------------------------------
| evolution-devel-snapshot | Evolution Development Snapshot
| evolution-snapshot | Evolution Snapshot
| redcarpet2 | Red Carpet 2
| ximian-connector | Ximian Connector
| ximian-connector-devel-snaps | Ximian Connector Development Snapshots
| beagle-snaps | beagle-snaps
| mono | mono
| mono-1.1 | mono-1.1
| rcd-snaps | rcd snapshots
| suse-91-i586 | suse-91-i586
| suse-91-i586-kernel | suse-91-i586-kernel
| ximian-connector-snapshot | ximian-connector-snapshot


To complete the installation, then run the following commands:


sudo rug sub mono-1.1
sudo rug update -y


The -y option will permit all actions without confirmations. Since there are approximately 50 different packages required for Mono, including all of the dependencies, this option should prove helpful.

Step Four - Testing your installation


After installing Mono, confirm the installation with a simple test. Using a text editor, enter the simple C# program shown in Lilsting 1.

Listing 1: Save this simple program as hellopr.


using System;

namespace HelloNameSpace
{
public class Hello
{
static void Main()
{
Console.WriteLine("Hello, from Gurabo, Puerto Rico");
}
}
}


To compile the program, enter:

mcs hellopr

This should produce a response of "Compilation succeeded." If the compilation fails, then check whether the system class starts with a capital "S", the console class starts with a capital "C", and the write line method uses a capital letter for both write and line. Remember, that in C#, classes and all methods and properties are case sensitive.

Successfully compiling the hellopr program should produce a hellopr.exe executable. To run the program, enter

mono hellopr.exe

This should produce the output "Hello, from Gurabo, Puerto Rico".

Summary


In this article you have seen how to install and verify Mono. This process includes obtaining Red Carpet Enterprise, installing Mono, and finally creating, compiling and running a simple test program. I hope this provides a simple to follow procedure and eases your way on the road to developing Mono applications.







Do any of your development plans include Mono in 2005?


6 Comments

dan_young
2004-12-27 13:42:10
Red Carpet w/o ISO
Ximian's FTP server has red carpet RPMs available:


ftp://ftp.ximian.com/pub/redcarpet2/

edmanbogota
2005-01-03 10:32:03
Which are the rpms needed please?
I try to install mono and ok, but when try
to install monodevelop or gtk* they require
others rpms like pango-sharp, gnome-sharp,
n+1-sharp.


Could you tell me which are the rpm needed for
monodevelop that are in this public FTP.


I try all of the folder mono for suse 9.2 and the
gnome-ximmian for suse 9.2.


Tks.

ShockeyK
2005-01-04 10:10:04
Which are the rpms needed please?
Well the really lame answer is all of them. To be clear, I installed all of the packages that were available in the Mono channel.


However, your comment leads me to believe that you are not using Red Carpet. If you were using Red Carpet, there wouldn't be any "folders" to try.


You might be able to see the channels available from Red Carpet, where mono would be one of the options.


I don't know if this will help, but this is a list of the packages in the mono-1.1 channel:


rug pa mono-1.1


S | Name | Version
--+----------------------+-------------------
v | bytefx-data-mysql | 1.1.3-1.novell.9.3
v | ibm-data-db2 | 1.1.3-1.novell.9.3
v | libgdiplus | 1.1.3-1.novell.9.1
v | mono-basic | 1.1.3-1.novell.9.3
v | mono-complete | 1.1.3-1.novell.9.3
v | mono-core | 1.1.3-1.novell.9.3
v | mono-data | 1.1.3-1.novell.9.3
v | mono-data-oracle | 1.1.3-1.novell.9.3
v | mono-data-postgresql | 1.1.3-1.novell.9.3
v | mono-data-sqlite | 1.1.3-1.novell.9.3
v | mono-data-sybase | 1.1.3-1.novell.9.3
v | mono-devel | 1.1.3-1.novell.9.3
v | mono-extras | 1.1.3-1.novell.9.3
v | mono-ikvm | 1.1.3-1.novell.9.3
v | mono-locale-extras | 1.1.3-1.novell.9.3
| mono-preview | 1.1.3-1.novell.9.3
v | mono-web | 1.1.3-1.novell.9.3
v | mono-winforms | 1.1.3-1.novell.9.3


sshnug.si
2005-01-06 05:09:13
Red Carpet w/o ISO
Thanks Dan! Made life a lot easier.


Kevin, I agree 100% re: the Novel linux iso, 400+MB for 2MB of files, silly. Anyway, a little feedback regarding your article, it all made sense, however I ran into a problem with the `rug update -y` command, which reported that no updates were available, however this worked `rug install mono-complete` after subscribing to the mono-1.1 channel. I'm using SuSE 9,1 Pro.


Hope that helps.

md.x2x2x
2005-01-11 09:15:13
Theres an even easier way...
http://www.bitrock.com/products_bss.html This link takes you to the bitrock installer that includes Apache, Mono, and mod_mono as one download package in which you simply change the permissions, double click, and walk through Windows like GUI install.
Will
2006-06-05 08:33:01
I got as far as:
sudo /usr/bin/red-carpet
But then it said:
Error: Couldn't import gtk.


According to YAST I have all possible gtk and glib packages installed.
Can anyone help?
mono at siteaboutnothing dot com