-diff -Nuard sodipodi-0.33.orig/src/libnrtype/nr-type-directory.c sodipodi-0.33/src/libnrtype/nr-type-directory.c
---- sodipodi-0.33.orig/src/libnrtype/nr-type-directory.c 2003-11-24 23:50:51.000000000 +0100
-+++ sodipodi-0.33/src/libnrtype/nr-type-directory.c 2003-11-30 20:56:16.556233056 +0100
-@@ -444,7 +444,8 @@
+diff -urN aa/sodipodi-0.34/src/libnrtype/nr-type-directory.c sodipodi-0.34/src/libnrtype/nr-type-directory.c
+--- aa/sodipodi-0.34/src/libnrtype/nr-type-directory.c 2004-01-02 19:19:19.000000000 +0100
++++ sodipodi-0.34/src/libnrtype/nr-type-directory.c 2004-02-12 14:23:09.601744192 +0100
+@@ -448,7 +448,7 @@
int len;
struct stat st;
- homedir = getenv ("HOME");
-+ homedir = g_getenv ("HOME_ETC");
-+ if (!homedir) homedir = g_getenv ("HOME");
++ homedir = g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_getenv ("HOME");
if (!homedir) return;
len = strlen (homedir);
filename = nr_new (unsigned char, len + sizeof (privatename) + 1);
-diff -Nuard sodipodi-0.33.orig/src/sodipodi.c sodipodi-0.33/src/sodipodi.c
---- sodipodi-0.33.orig/src/sodipodi.c 2003-11-22 01:38:23.000000000 +0100
-+++ sodipodi-0.33/src/sodipodi.c 2003-11-30 20:55:27.859636064 +0100
-@@ -345,7 +345,7 @@
+diff -urN aa/sodipodi-0.34/src/main.c sodipodi-0.34/src/main.c
+--- aa/sodipodi-0.34/src/main.c 2004-02-08 14:42:01.000000000 +0100
++++ sodipodi-0.34/src/main.c 2004-02-12 14:21:34.772160480 +0100
+@@ -718,7 +718,7 @@
g_warning ("Emergency save activated");
sptime = time (NULL);
sptm = localtime (&sptime);
strftime (sptstr, 256, "%Y_%m_%d_%H_%M_%S", sptm);
-@@ -515,7 +515,7 @@
- #ifdef WIN32
- fn = g_build_filename (SODIPODI_APPDATADIR, filename, NULL);
+diff -urN aa/sodipodi-0.34/src/sodipodi.c sodipodi-0.34/src/sodipodi.c
+--- aa/sodipodi-0.34/src/sodipodi.c 2004-02-05 19:23:22.000000000 +0100
++++ sodipodi-0.34/src/sodipodi.c 2004-02-12 14:20:37.873810344 +0100
+@@ -401,7 +401,7 @@
+ fnutf8 = g_build_filename (SODIPODI_APPDATADIR, filename, NULL);
+ fnos = g_filename_from_utf8 (fnutf8, strlen (fnutf8), &bytesin, &bytesout, NULL);
#else
-- fn = g_build_filename (g_get_home_dir (), ".sodipodi", filename, NULL);
-+ fn = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi", filename, NULL);
+- fnutf8 = g_build_filename (g_get_home_dir (), ".sodipodi", filename, NULL);
++ fnutf8 = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi", filename, NULL);
+ fnos = g_filename_from_utf8 (fnutf8, strlen (fnutf8), &bytesin, &bytesout, NULL);
#endif
- if (stat (fn, &s)) {
- /* No such file */
-@@ -609,7 +609,7 @@
+ if (stat (fnos, &s)) {
+@@ -505,7 +505,7 @@
#ifdef WIN32
fn = g_build_filename (SODIPODI_APPDATADIR, "preferences", NULL);
#else
+ fn = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi/preferences", NULL);
#endif
- sp_repr_save_file (sodipodi->preferences, fn);
-@@ -878,7 +878,7 @@
+ sp_repr_doc_write_file (sodipodi->preferences, fn);
+@@ -521,7 +521,7 @@
+ #ifdef WIN32
+ fn = g_build_filename (SODIPODI_APPDATADIR, "extensions", NULL);
+ #else
+- fn = g_build_filename (g_get_home_dir (), ".sodipodi/extensions", NULL);
++ fn = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi/extensions", NULL);
+ #endif
+
+ sp_repr_doc_write_file (sodipodi->extensions, fn);
+@@ -764,7 +764,7 @@
#ifdef WIN32
- dn = g_strdup (SODIPODI_APPDATADIR);
+ dnutf8 = g_strdup (SODIPODI_APPDATADIR);
#else
-- dn = g_build_filename (g_get_home_dir (), ".sodipodi", NULL);
-+ dn = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi", NULL);
+- dnutf8 = g_build_filename (g_get_home_dir (), ".sodipodi", NULL);
++ dnutf8 = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi", NULL);
#endif
- if (stat (dn, &s)) {
- if (mkdir (dn, S_IRWXU | S_IRGRP | S_IXGRP))
-@@ -904,7 +904,7 @@
- fn = g_build_filename (SODIPODI_APPDATADIR, config_name, NULL);
- fh = creat (fn, S_IREAD | S_IWRITE);
+ dnos = g_filename_from_utf8 (dnutf8, strlen (dnutf8), &bytesin, &bytesout, NULL);
+ if (stat (dnos, &s)) {
+@@ -795,7 +795,7 @@
+ fnos = g_filename_from_utf8 (fnutf8, strlen (fnutf8), &bytesin, &bytesout, NULL);
+ fh = creat (fnos, S_IREAD | S_IWRITE);
#else
-- fn = g_build_filename (g_get_home_dir (), ".sodipodi", config_name, NULL);
-+ fn = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi", config_name, NULL);
- fh = creat (fn, S_IRUSR | S_IWUSR | S_IRGRP);
+- fnutf8 = g_build_filename (g_get_home_dir (), ".sodipodi", config_name, NULL);
++ fnutf8 = g_build_filename (g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir (), ".sodipodi", config_name, NULL);
+ fnos = g_filename_from_utf8 (fnutf8, strlen (fnutf8), &bytesin, &bytesout, NULL);
+ fh = creat (fnos, S_IRUSR | S_IWUSR | S_IRGRP);
#endif
- if (fh < 0) {
-diff -Nuard sodipodi-0.33.orig/src/system.h sodipodi-0.33/src/system.h
---- sodipodi-0.33.orig/src/system.h 2003-11-22 01:38:23.000000000 +0100
-+++ sodipodi-0.33/src/system.h 2003-11-30 20:58:10.081974520 +0100
-@@ -28,7 +28,7 @@
+diff -urN aa/sodipodi-0.34/src/system.h sodipodi-0.34/src/system.h
+--- aa/sodipodi-0.34/src/system.h 2003-12-07 12:31:40.000000000 +0100
++++ sodipodi-0.34/src/system.h 2004-02-12 14:18:02.538424912 +0100
+@@ -36,7 +36,7 @@
#ifdef WIN32
#define SODIPODI_APPDATADIR sp_win32_get_appdata_dir ()
#else
#endif
#endif
+@@ -46,7 +46,7 @@
+ #ifdef WIN32
+ #define SODIPODI_DOCDIR sp_win32_get_doc_dir ()
+ #else
+-#define SODIPODI_DOCDIR g_get_home_dir ()
++#define SODIPODI_DOCDIR g_getenv("HOME_ETC") ? g_getenv("HOME_ETC") : g_get_home_dir ()
+ #endif
+ #endif
+