<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
<?xml-stylesheet type="text/css" href="http://canmore.annwfn.net/blog/styles/feed.css"?>


<title type="html">Canmore's Blog</title>
<subtitle type="html">Giving the voices in my head the opportunity to communicate with the outer world</subtitle>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog"/>
<link rel="self" type="application/atom+xml" href="http://canmore.annwfn.net/blog/atom.xml"/>
<updated>2010-04-18T22:03:25+02:00</updated>
<author>
<name>Canmore</name>
<uri>http://canmore.annwfn.net/blog</uri>
</author>
<id>http://canmore.annwfn.net/blog/</id>
<generator uri="http://nanoblogger.sourceforge.net" version="3.4">
NanoBlogger
</generator>

<entry>
<title type="html">Wine + CUPS</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2010/04/18/wine__cups/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2010/04/18/wine__cups/index.html</id>
<published>2010-04-18T21:41:07+02:00</published>
<updated>2010-04-18T21:41:07+02:00</updated>
<category term="FreeBSD" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
Yesterday, I stumbled over an interesting problem with <a
href="http://www.winehq.org">Wine</a>: If a <code>ServerName</code> directive
exists in <code>/usr/local/etc/cups/client.conf</code>, i.e., if you are
connecting to a shared server for printing services, programs started with Wine
seem to hang.
</p>

<p>
This problem is caused by non-reachable servers. It might occur when you
change your network or when the shared server is unavailable. In this case,
Wine will <em>seem</em> to hang. More precisely: If you wait long enough,
the application will run eventually. But nobody likes waiting very much.
</p>

<p>
So, if you have a similar problem, abort the &quot;hanging&quot; application
and check the console output. My output contained the line
</p>

<pre>
module:attach_process_dlls &quot;winspool.drv&quot; failed to initialize, aborting
</pre>

<p>
and to solve the problem, I simply changed <code>client.conf</code> by adding
</p>

<pre>
ServerName localhost
</pre>

<p>
in the first line and restarting CUPS via <code>/usr/local/etc/rc.d/cupsd
restart</code>.
</p>
</div>
</content>

</entry>
<entry>
<title type="html">Using the Microsoft Windows 7 Boot Manager to boot FreeBSD</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/10/01/using_the_microsoft_windows_7_boot_manager_to_boot_freebsd/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/10/01/using_the_microsoft_windows_7_boot_manager_to_boot_freebsd/index.html</id>
<published>2009-10-01T20:45:18+02:00</published>
<updated>2009-10-01T20:45:18+02:00</updated>
<category term="FreeBSD" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
	Since the blog seems to be the entry point for most of my
	visitors, it makes sense to announce new content. Be it hereby
	known that there is a new HOWTO online. <a
	href="/freebsd/windows_boot_manager.html">It
	explains how to use the Microsoft Windows 7 boot manager to boot
	FreeBSD</a>.
</p>

<p>
	Enjoy.
</p>
</div>
</content>

</entry>
<entry>
<title type="html">Zooming, panning, rotating with GLUT</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/08/26/zooming_panning_rotating_with_glut/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/08/26/zooming_panning_rotating_with_glut/index.html</id>
<published>2009-08-26T20:23:45+02:00</published>
<updated>2009-08-26T20:23:45+02:00</updated>
<category term="Programming" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">

<p>
	By pure chance, I stumbled over a true gem for all programming
	related to computer graphics: <a
	href="http://www.nigels.com/glt/gltzpr">GLT ZPR, a mouse
	manipulation module for C or C++ GLUT/OpenGL programs</a>
	(verbatim quote).
</p>

<p>
	The module is very easy to use: Simply <code>#include
	&quot;zpr.h&quot;</code> and call <code>zprInit();</code>
	<em>after</em> you called <code>glutCreateWindow</code> and have
	made your local initializations (i.e. special setup for the
	window etc.). Now you are able to use the left, right, and
	middle mouse buttons to rotate, pan, and zoom&mdash;just make
	sure that your <code>GL_MODELVIEW</code> matrix is not reset.
</p>

<p>
	You can download the program from <a
	href="http://www.nigels.com/glt/gltzpr">Nigel Stewart's
	homepage</a> (I am not linking directly to the sources because I
	do not want to be impolite). By the way: It is also possible to
	specify selection and pick functions, but I have not tried this
	functionality yet.
</p>
</div>
</content>

</entry>
<entry>
<title type="html">SSH tunneling for web surfing</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/07/29/ssh_tunneling_for_web_surfing/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/07/29/ssh_tunneling_for_web_surfing/index.html</id>
<published>2009-07-29T15:37:40+02:00</published>
<updated>2009-07-29T15:37:40+02:00</updated>
<category term="FreeBSD" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
	If you cannot trust your local network for some reason, SSH
	tunneling can help you. All you need is:
</p>

<ul>
	<li>
		A machine <em>outside</em> your current local network,
		for example a server with a static IP address in some
		data centre.
	</li>	

	<li>
		<strong>ssh</strong> (on your local machine)
	</li>
	
	<li>
		A <strong>proxy server</strong> (on the remote machine)
	</li>
</ul>

<p>
	My remote machine runs Debian, and I decided to install
	<code>tinyproxy</code>, a tiny HTTP proxy server. Configuration
	is done quickly by adding the following lines to
	<code>/etc/tinyproxy/tinyproxy.conf</code>:
</p>

<pre>
	Port 	8888
	Listen  127.0.0.1
</pre>

<p>
	I would recommend commenting out any other <code>Listen</code>
	lines. Assuming you do not want to run an open proxy, you only
	want <code>tinyproxy</code> to listen locally. After editing the
	configuration file, restart the proxy via
	<code>/etc/init.d/tinyproxy restart</code>.
</p>

<p>
	On your local machine, execute the following command:
</p>

<pre>
	ssh user@server.example.net -L 1234:localhost:8888 -N
</pre>

<p>
	This forwards all traffic from your local port 1234 to the
	remote machine's port 8888 (<code>localhost</code> is needed
	because we configured the server to listen only to the loopback
	interface), which is where <code>tinyproxy</code> waits for
	inputs.
</p>

<p>
	You may now tell <a href="http://www.opera.com">your cool
	browser</a> to use <code>localhost:1234</code> as a proxy
	server&mdash;congratulations, your web traffic is now securely
	tunnelled to your remote machine.
</p>

<p>
	Addendum: In the command string from above, you can also use
	<code>-f</code> to request ssh to go into the background.
</p>
</div>
</content>

</entry>
<entry>
<title type="html">SAP NCC-1701D Support</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/07/15/sap_ncc-1701d_support/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/07/15/sap_ncc-1701d_support/index.html</id>
<published>2009-07-15T21:08:53+02:00</published>
<updated>2009-07-15T21:08:53+02:00</updated>
<category term="Musings" />
<category term="Work" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
	The search phrases <q>sap platin-gui freezes</q> and <q>use
	sapgui for java</q> frequently appear in my server log files.
	However, as I used these in a different context, people will be
	disappointed once they discover that there are no articles
	concerning SAP GUI for Java except an installation guide for
	FreeBSD. This is obviously a matter of some importance, judging
	from the page hits, so I decided to do my part in the great
	struggle for bug-free software.
</p>

<p>
	<strong>Using SAP GUI for Java</strong>
</p>

<p>
	Let me answer the second search string first: <em>Yes</em>, you
	should use SAP GUI for Java. It is stable, secure and fast. SAP
	only lists a fraction of all Linux distributions in their <a
	href="https://www.sdn.sap.com/irj/sdn/sap-gui?rid=/library/uuid/208be3bf-ebf4-2a10-3aa1-c42e9bb5beed">Lifetime
	and Support Matrix for SAP GUI for Java</a>. This is to ensure
	the highest standards of quality (in translation: SAP does not
	want to get sued into oblivion and must check that it really,
	really works at least with some operating systems. It not easy,
	given the myriad of system environments out there in the wild).
</p>


<p>
	However, in almost all cases, SAP GUI for Java should run just
	fine under <em>your</em> personal Linux distribution of choice.
	So, on to the installation:
</p>

<ol>
	<li>
		Download a recent <a href="http://java.sun.com">Java
		Runtime Environment from Sun</a>.
	</li>

	<li>
		Download a recent version of <a
		href="ftp://ftp.sap.com/pub/sapgui/java">SAP GUI for
		Java</a>. Pick the jar-file that fits your operating
		system best.
	</li>

	<li>
		Start the installation via
		<code>java -jar PlatinGUI-Linux-710r9.jar</code> (or
		execute the jar-file using another method of your
		choice).
	</li>
</ol>

<p>
	You are done.
</p>

<p>
	<strong>Solving problems with SAP GUI for Java</strong>
</p>

<p>
	There are several things to do when the GUI freezes or hangs.
</p>

<ul>
	<li>
		<em>Execute SAP GUI for Java from a terminal emulator</em>. Use
		<code>xterm</code> or the likes. This allows you to view
		any error messages that might help to pinpoint problems
		within the source code.
	</li>

	<li>
		<em>Try a different Java Runtime Environment</em>.
		Install an older JRE (there is no need to remove the
		current one). Set the <code>PLATIN_JAVA</code>
		environment variable to the installation directory of
		the older JRE, for example by executing <code>export
		PLATIN_JAVA=/usr/local/Java/jre1.6.0_11/bin/java</code>
		and
		<code>/opt/SAPClients/SAPGUI710rev9/bin/guilogon</code>
		from a terminal.
	</li>

	<li>
		<em>Try a different version of SAP GUI for Java</em>.
		It is possible to install different versions in
		parallel. I would recommend this option especially if
		you are testing a new version for deployment.
	</li>

	<li>
		<em>Check with a supported operating system</em>. Take a
		look at the <a
		href="https://www.sdn.sap.com/irj/sdn/sap-gui?rid=/library/uuid/208be3bf-ebf4-2a10-3aa1-c42e9bb5beed">Lifetime
		and Support Matrix for SAP GUI for Java</a> and set up a
		test environment. This should be your <strong>last
		resort</strong>, because in most cases, the problem does
		not depend on your operating system.
	</li>

	<li>
		<em>Take a stack trace</em>. If the GUI
		hangs, <a
		href="http://java.sun.com/developer/technicalArticles/Programming/Stacktrace">follow
		this very helpful article</a> and create a stack trace.
		This diagnostical information is very helpful for SAP's
		support teams.
	</li>
</ul>

<p>
	<strong>Reporting problems</strong>
</p>

<p>
	In any case: You should <strong>always</strong> report your
	problems. SAP is very grateful for any feedback, even if it is
	in the form of debug information. You can use one of the
	following means of communication: 
</p>

<ul>
	<li>
		Use the <a href="https://forums.sdn.sap.com">SDN Expert
		Forums</a> (free registration required, section
		&quot;Application Server&mdash;SAP GUI&quot;, for lesser
		problems, general questions or if you do not have an
		account for the <a href="http://service.sap.com">SAP
		Service Marketplace</a>.
	</li>

	<li>
		<a href="http://service.sap.com/message">Create a bug
		report at SAP</a>. Use <code>BC-FES-JAV</code> as the
		component.
	</li>
</ul>

<p>
	Whatever you do, <strong>try to describe the problem as
	precisely as possible</strong>: Attach all debug information
	(stack traces, error messages etc.) and create a step-by-step
	reproduction scenario. The more information you provide, the
	less time your request will take.
</p>

<p>
	This is, for example, a bad bug report:
</p>

<blockquote>
	<p>
		hello, i get error in gui. please advise!
	</p>
</blockquote>

<p>
	Whereas this is definitely better (of course, a step-by-step
	description would be best. System information is also not
	included, but at least, one could try to reproduce the problem
	now):
</p>

<blockquote>
	<p>
		When I click the &quot;delete world&quot; button in
		transaction <code>GOD</code>, SAP GUI for Java throws a
		<code>java.lang.NullPointerException</code>. The
		operation will then be aborted.
	</p>
</blockquote>

<p>
	Small disclaimer (thereby fulfilling SAP's guidelines for
	blogging): While I work at SAP, these opinions are <em>my
	own</em>. Especially the policy regarding unsupported operating
	systems.
</p>
</div>
</content>

</entry>
<entry>
<title type="html">Jabber is the new ICQ</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/07/07/jabber_is_the_new_icq/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/07/07/jabber_is_the_new_icq/index.html</id>
<published>2009-07-07T23:38:02+02:00</published>
<updated>2009-07-07T23:38:02+02:00</updated>
<category term="Musings" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
	Almost every person I know has an IM account. Most of them are
	still regular users of ICQ, despite of all its <a
	href="http://en.wikipedia.org/wiki/ICQ#Criticism">shortcomings</a>.
	I do not want to make any boring, technical comparisons between
	the two protocols. Jabber/XMPP is <em>clearly</em> superior to
	ICQ for a many reasons. However, game theory shows us that
	&quot;superior product&quot; does not imply &quot;market
	dominance&quot;. Let me try to convince <strong>you</strong> to
	create a Jabber account. Here are some questions you might have.
</p>

<p>
	<strong>Where can I get a suitable client?</strong>
</p>

<p>
	<a
	href="http://en.wikipedia.org/wiki/List_of_XMPP_client_software">Wikipedia
	to the rescue!</a> My short suggestions: Use <a
	href="http://www.pidgin.im">Pidgin</a> (Windows, Linux, BSD) or
	<a href="http://www.adium.im">Adium</a> (MacOS X). 
	
</p>

<p>
	<strong>Why should I want to use another protocol?</strong>
</p>

<p>
	Because you will need it, eventually. Chances are, you already
	use a multiprotocol messenger, such as <a
	href="http://www.ceruleanstudios.com">Trillian Pro</a> or <a
	href="http://www.miranda-im.org">Miranda</a> for Windows, <a
	href="http://www.pidgin.im">Pidgin</a> or <a
	href="http://kopete.kde.org">Kopete</a> for Linux/Unix, <a
	href="http://www.adium.im">Adium</a> or <a
	href="http://www.apple.com/macosx/what-is-macosx/ichat.html">iChat</a>
	for MacOS X. If you are not yet using a multiprotocol messenger,
	you should consider using one. It makes life easier, because you
	can still maintain your ICQ account (I am doing this, for
	example, because there are some people who simply refuse to use
	anything but ICQ. You are not one of them *handwave*).
</p>

<p>
	You should also think about this: ICQ is owned by AOL. They want
	to make money&mdash;which is OK, I suppose. Hence, the original
	client for the ICQ network is <strong>Adware</strong>. Of
	course, AOL does not want you to use <em>any other client</em>:
</p>

<blockquote>
	<p>
		[&hellip;] You agree not to (1) create or use any software other than the
		Software provided by ICQ or by America Online, Inc., or any affiliate thereof,
		to enter your ICQ number and password or to access the ICQ Services, without
		the express written authorization of ICQ; [&hellip;]
	</p>
</blockquote>

<p>
	Indeed, AOL changed the protocol several times in the past,
	thereby kicking out users that did not use the original client.
	Do you really want to be a part of that? There is also the
	&quot;default argument&quot; against ICQ, citing their user
	policy. Basically, AOL owns the right to use <em>your</em>
	messages for all purposes (see <a
	href="http://en.wikipedia.org/wiki/ICQ#Privacy_and_copyright">the
	Wikipedia article</a> for more details). Most people will
	probably respond to that along the lines of &quot;My
	conversations are not <strong>that</strong> relevant&quot;. That
	may be true, but for me, this passage reeks of intolerable
	business practices. 
</p>

<p>
	<strong>Alright, stop. How do I get an account?</strong>
</p>

<p>
	Good news first: You will not have to memorize a wimpy UIN.
	Instead, you will get a nice address of the form
	<code><em>nickname</em>@<em>server</em>.tld</code> (this also
	leads to less SPAM in your messenger).
</p>

<p>
	If you happen to have a Google Mail account, you can use Google
	Talk. This means that people can contact you using your e-mail
	address. Google has <a
	href="http://www.google.com/talk/otherclients.html">instructions
	for some clients on their web page</a>.
</p>

<p>
	In any other case, you must decide about a server. You probably
	want to use either <a
	href="http://www.jabber.org">jabber.org</a>. There are of course
	others, such as <a
	href="http://jabber.ccc.de">jabber.ccc.de</a>. For simplicity, I
	am describing the steps for jabber.org. I trust you will be able
	to read the necessary documents for other servers.
</p>

<ul>
	<li>
		Register an account using the <a
		href="http://register.jabber.org">web interface of
		jabber.org</a>. 
	</li>

	<li>
		Start the appropriate wizard in your client program that
		allows you to add a new account. If you do not know how
		to do this, the documentation could be helpful. The
		<a
		href="http://www.google.com/talk/otherclients.html">steps
		for Google Talk</a> might also prove useful (of course,
		the account details will have to be changed). 
	</li>

	<li>
		Enter your nickname
		(<code><em>nickname</em>@jabber.org</code>) and your
		password. For security, you should enable SSL/TLS, if
		that is an option in your client.
	</li>

</ul>

<p>
	<strong>Are there any alternatives to using two
	protocols?</strong>
</p>

<p>
	Yes, there is at least one: Jabber transports. Some servers
	allow you to treat contacts from other IM networks as normal
	Jabber contacts and &quot;transport&quot; your messages
	transparently to the other network. Since the server needs to
	support it, it might not be available everywhere. This little
	article does not cover transports, so you have to ask a search
	engine of your choice. Sorry.
</p>

<p>
	<strong>Done. What now?</strong>
</p>

<p>
	See, that was not so hard.
</p>

<p>
	If you want so, you may now drop me a note via Jabber
	(canmore@jabber.org). Do not forget to convert your friends, for
	they, too, shall bask in the glory of Jabber!
</p>
</div>
</content>

</entry>
<entry>
<title type="html">Web 2.0 mortuus est, vivat Web 3.14159...</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/03/30/web_2_0_mortuus_est_vivat_web_3_14159/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/03/30/web_2_0_mortuus_est_vivat_web_3_14159/index.html</id>
<published>2009-03-30T19:50:44+02:00</published>
<updated>2009-03-30T19:50:44+02:00</updated>
<category term="Musings" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">

<p>
	Tired of all the fuss about Web 2.0, I decided to <em>proudly
	announce</em> Web 3.1459..., also known as Web Pi or Web &pi;. Web
	3.14159... is clearly superior to Web 2.0 for many reasons (i.e.
	because I say so).
</p>

<p>
	More <a href="http://web3.14159.annwfn.net">information about
	Web 3.14159...</a> is available on a site that does <em>not</em>
	use JavaScript or Flash, but simply delivers its content.
</p>	

<p>
	If <em>you</em> want to show your support for Web 3.14159...,
	simply download one of the graphical logos (or design your own)
	and let your visitors know how <em>hip</em> you are. Domain
	owners might also create an appropriate subdomain and
	host some information about Web 3.14159... there.
</p>

<p>
	If you like this idea, spread it around the intertubes and link
	directly to <a
	href="http://web3.14159.annwfn.net">http://web3.14159.annwfn.net</a>.
</p>
</div>
</content>

</entry>
<entry>
<title type="html">New OpenGL programs</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/03/18/new_opengl_programs/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/03/18/new_opengl_programs/index.html</id>
<published>2009-03-18T21:57:03+02:00</published>
<updated>2009-03-18T21:57:03+02:00</updated>
<category term="Programming" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
	I finally released some old code I wrote for a University
	course. You can find it in the <a
	href="http://canmore.annwfn.net/uni/#opengl">University section
	of my homepage</a>. The programs are not really special and
	well-written (as is mostly the case when assignments with short
	deadlines are concerned), but I polished them a bit, sprinkled
	some comments over them, and added a big portion of
	<em>love</em>.
</p>

<p>
	Something like that, anyway.
</p>

<p>
	Since it is not explicitly mentioned anywhere, you need the
	OpenGL and GLUT libraries in order to compile these programs. It
	might be necessary to change the library paths in the Makefile
	if you are not using FreeBSD, which is, judging from the
	server's log files, unfortunately most probable.
</p>

<p>
	Speaking of operating systems, a fun fact from the log files:
	Most of my visitors use Linux <em>or</em> Sun Solaris. Either
	that or somebody <em>really</em> has some fun faking the user
	agents.
</p>
</div>
</content>

</entry>
<entry>
<title type="html">Some notes about Xorg 7.4, libxine and CUPS</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/03/16/some_notes_about_xorg_7_4_libxine_and_cups/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/03/16/some_notes_about_xorg_7_4_libxine_and_cups/index.html</id>
<published>2009-03-16T19:59:10+02:00</published>
<updated>2009-03-16T19:59:10+02:00</updated>
<category term="FreeBSD" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">

<p>
	The last update of my local ports collection was most
	annoying and unnerving. Here are some notes to dodge 3 of the
	bullets.
</p>

<p>
	<b>Xorg 7.4</b>: Either disable HAL at compile time <i>or</i>
	add the following to your <code>xorg.conf</code> (assuming your
	keyboard is configured properly etc.):
</p>

<pre>
Option	"AutoAddDevices"	"OFF"
</pre>

<p>
	Else, you would have to configure your keyboard settings (such
	as layout, rules etc.) in some obscure HAL configuration file
	that is hard to find. And to be frank, I was unwilling to create
	some XML files in a directory pretty well hidden on my hard disk
	<i>just</i> to get my X server to accept input from German
	keyboards.  Seriously, what is wrong with the
	<code>InputDevice</code> section in <code>Xorg.conf</code>?
</p>

<p>
	<b>libxine</b>: Don't compile it with <code>pulseaudio</code>
	support if you don't need it. I did compile it with that option
	and my reward was that programs such as <code>Xine</code> or
	<code>Amarok</code> would hang. Using the last of their
	strength, they would utter cryptic messages on the command-line:
</p>

<pre>
caps.c: Dropping root privileges.
</pre>

<p>
	Since I did not need <code>pulseaudio</code>, I recompiled
	libxine, Xine, and Amarok and successfully resurrected them.
</p>

<p>
	<b>CUPS</b>: Be sure to install <code>print/gutenprint</code>
	from the ports collection. Your applications and printers will
	thank you for it. And as a boon, you will not get any
	<code>Unsupported format 'application/postscript'</code>
	messages because all necessary dependencies will be available.
</p>

<p>
	That's it. FreeBSD FTW! 
</p>
</div>
</content>

</entry>
<entry>
<title type="html">Running SAP GUI for Java under FreeBSD</title>
<author>
<name>Canmore</name>
</author>
<link rel="alternate" type="text/html" href="http://canmore.annwfn.net/blog/archives/2009/02/12/running_sap_gui_for_java_under_freebsd/index.html"/>

<id>http://canmore.annwfn.net/blog/archives/2009/02/12/running_sap_gui_for_java_under_freebsd/index.html</id>
<published>2009-02-12T20:15:07+02:00</published>
<updated>2009-02-12T20:15:07+02:00</updated>
<category term="FreeBSD" />
<category term="Work" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>
	SAP GUI for Java is SAP's GUI solution for customers that do
	<i>not</i> use Microsoft Windows or that do not want to use SAP
	GUI for Windows for some reason. Officially, it is only
	supported on the following platforms (I have excluded the
	various flavours of Windows and several other systems. For a
	full list, see the <a
	href="https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/208be3bf-ebf4-2a10-3aa1-c42e9bb5beed">official
	SAP document</a>):
</p>

<ul>
	<li>Mac OS X 10.4, 10.5</li>
	<li>SuSE 10.1, SuSE Linux Enterprise Desktop 10</li>
	<li>RedHat Enterprise Linux 4, 5</li>
	<li>Fedora 7, 8, 9</li>
	<li>Open SuSE 10.2, 10.3</li>
</ul>

<p>
	What a shame: FreeBSD is not mentioned. The following steps will
	show you how to install and use SAP GUI for Java under FreeBSD.
	Why would you want to do that, anyway? One simple, convincing,
	and perfectly logical reason: Because we can.
</p>

<p>
	The usual disclaimer: Until Tartarus freezes over, don't expect
	any support from SAP for that.
</p>

<p>
	That being said, the program actually <i>works</i>. I have
	tested some transactions (see the screenshots later) and
	encountered no errors. YMMV.
</p>

<p>
	<b>Requirements</b>: You need a working FreeBSD system (I did
	this with FreeBSD 7.1), the usual X11 ports and a SUN JRE from
	<code>/usr/ports/java/linux-sun-jre16</code>. I am also assuming
	that the Linux ABI support is available and works. If you need
	help with these steps, the <a
	href="http://www.freebsd.org/doc/en/books/handbook/linuxemu.html">appropriate
	handbook section</a> might help. Grab <a
	href="ftp://ftp.sap.com/pub/sapgui/java">SAP GUI for Java</a>
	(choose the Linux version, for example
	<code>PlatinGUI-Linux-710r7.jar</code>).
</p>

<p>
	<b>Installation</b>: <code>cd</code> to the directory where the
	installer is located. Use the JRE to start the installation
	process by executing the following command in a terminal (change
	the filename if necessary):
</p>

<pre>
/usr/local/linux-sun-jre1.6.0/bin/java -jar PlatinGUI-Linux-710r7.jar 
</pre>

<p>
	Choose any installation directory and proceed with the
	install process. When it has finished, check your selected
	directory for the folder <code>SAPClients</code>. 
</p>

<p>
	<b>After the installation</b>: Open the file
	<code>SAPClients/SAPGUI7.10rev7/bin/guilogon</code> in a text
	editor of your choice. Change all references of
	<code>/usr/bin/test</code> to <code>/bin/test</code>. Finally,
	set the <code>PLATIN_JAVA</code> variable to your JRE. For
	example, with <code>tcsh</code> you would to the following:
</p>

<pre>
setenv PLATIN_JAVA /usr/local/linux-sun-jre1.6.0/bin/java
</pre>

<p>
	That's it. You can now run SAP GUI for Java and work with your
	SAP system. If you don't have one, you might want to download
	<a href="http://www.sap.com/minisap">a MiniSAP system</a> for
	Linux or Windows. Trying to install <i>this</i> under FreeBSD is
	another story...
</p>

<p>
	Finally, some nice screenshots with FreeBSD 7.1, XFCE, and SAP
	GUI for Java 7.10rev7:
</p>

<ul>
	<li><a href="http://canmore.annwfn.net/blog/images/sap_sbwp.png"
	title="SAP GUI for Java under FreeBSD running transaction
	SBWP">Fun with transaction SBWP</a>.</li>

	<li><a href="http://canmore.annwfn.net/blog/images/sap_about.png"
	title="SAP GUI for Java under FreeBSD showing its 'About' dialog"> The
	&quot;About&quot; dialog</a>. Note how the OS is declared to be Linux.
	Nice, is it not?</li>

	<li><a
	href="http://canmore.annwfn.net/blog/images/sap_transparency.png"
	title="SAP GUI for Java under FreeBSD with transparency
	effects">XFCE's transparency effects also work</a>.</li>
</ul>
</div>
</content>

</entry>

</feed>
