aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils/gnome-volume-manager
diff options
context:
space:
mode:
authormarcus <marcus@FreeBSD.org>2007-03-19 13:14:07 +0800
committermarcus <marcus@FreeBSD.org>2007-03-19 13:14:07 +0800
commite83248f2b323aa90dfea75471b86ccc444a80f88 (patch)
treef4fc2dbabf96cb67c502479d9fc13f40bf0d0108 /sysutils/gnome-volume-manager
parent52dd0c5de1d6a7165dc355ecf161f52bb7dbbfda (diff)
downloadfreebsd-ports-gnome-e83248f2b323aa90dfea75471b86ccc444a80f88.tar.gz
freebsd-ports-gnome-e83248f2b323aa90dfea75471b86ccc444a80f88.tar.zst
freebsd-ports-gnome-e83248f2b323aa90dfea75471b86ccc444a80f88.zip
Presenting GNOME 2.18 for FreeBSD. GNOME 2.18 is a departure from recent GNOME
releases in that it focuses more on stability and functionality than on new features. Not that it doesn't have its share of new and exciting items. See http://www.gnome.org/start/2.18/ for all the goodies in this release. GNOME 2.18 for FreeBSD would not have been possible without the hard work of the FreeBSD GNOME Team and our intrepid band of testers including J. W. Ballantine, Pawel Worach, Yasuda Keisuke, Pascal Hofstee, miwi, Yoshihiro Ota, Vladimir Grebenschikov, Jukka A. Ukkonen, Phillip Neumann, Franz Klammer, and Neal Delmonico.
Diffstat (limited to 'sysutils/gnome-volume-manager')
-rw-r--r--sysutils/gnome-volume-manager/Makefile6
-rw-r--r--sysutils/gnome-volume-manager/distinfo6
-rw-r--r--sysutils/gnome-volume-manager/files/patch-src_manager.c216
-rw-r--r--sysutils/gnome-volume-manager/pkg-plist10
4 files changed, 207 insertions, 31 deletions
diff --git a/sysutils/gnome-volume-manager/Makefile b/sysutils/gnome-volume-manager/Makefile
index 2700067e62dc..a78e6438b437 100644
--- a/sysutils/gnome-volume-manager/Makefile
+++ b/sysutils/gnome-volume-manager/Makefile
@@ -3,12 +3,12 @@
# Whom: Jean-Yves Lefort <jylefort@FreeBSD.org>
#
# $FreeBSD$
-# $MCom: ports/sysutils/gnome-volume-manager/Makefile,v 1.7 2006/09/15 05:50:19 marcus Exp $
+# $MCom: ports/sysutils/gnome-volume-manager/Makefile,v 1.13 2007/03/09 22:15:17 mezz Exp $
#
PORTNAME= gnome-volume-manager
-PORTVERSION= 2.15.0
-PORTREVISION= 2
+PORTVERSION= 2.17.0
+PORTREVISION= 3
CATEGORIES= sysutils gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/${PORTNAME}/${PORTVERSION:R}
diff --git a/sysutils/gnome-volume-manager/distinfo b/sysutils/gnome-volume-manager/distinfo
index 9b0f0ca3ddf3..a3b7541f3610 100644
--- a/sysutils/gnome-volume-manager/distinfo
+++ b/sysutils/gnome-volume-manager/distinfo
@@ -1,3 +1,3 @@
-MD5 (gnome-volume-manager-2.15.0.tar.bz2) = d723bc2069fd19cf1c31961fbc1cf3c8
-SHA256 (gnome-volume-manager-2.15.0.tar.bz2) = f3d2ce3e2f2a4b757d4688bae7f6b8418d11340618f15d34871a002516ab8e0e
-SIZE (gnome-volume-manager-2.15.0.tar.bz2) = 318479
+MD5 (gnome-volume-manager-2.17.0.tar.bz2) = 104cec26e721e0bba69debd392367195
+SHA256 (gnome-volume-manager-2.17.0.tar.bz2) = 5517cf5d6a70227d66afb9a8b97a704f0d8e29098cec98bcbf68da77133537a9
+SIZE (gnome-volume-manager-2.17.0.tar.bz2) = 341241
diff --git a/sysutils/gnome-volume-manager/files/patch-src_manager.c b/sysutils/gnome-volume-manager/files/patch-src_manager.c
index 753b495ef6f4..a847dd404b6b 100644
--- a/sysutils/gnome-volume-manager/files/patch-src_manager.c
+++ b/sysutils/gnome-volume-manager/files/patch-src_manager.c
@@ -1,5 +1,5 @@
---- src/manager.c.orig Mon Jul 31 16:37:36 2006
-+++ src/manager.c Wed Dec 20 14:59:45 2006
+--- src/manager.c.orig Tue Nov 7 13:01:17 2006
++++ src/manager.c Sun Dec 31 15:33:44 2006
@@ -23,9 +23,12 @@
#include <sys/types.h>
#include <sys/stat.h>
@@ -13,54 +13,220 @@
#include <locale.h>
-@@ -3088,10 +3091,17 @@ gvm_local_user (void)
- struct utmp *utmp;
- const char *user;
- size_t ulen;
+@@ -1556,12 +1559,27 @@ enum {
+ MOUNT_UID = (1 << 15),
+ MOUNT_UMASK = (1 << 16),
+ MOUNT_UTF8 = (1 << 17),
++ MOUNT_LOCALE = (1 << 18),
++ MOUNT_LONGNAME = (1 << 19),
+ };
+
+ static struct {
+ const char *name;
+ guint32 flag;
+ } mount_options[] = {
++#ifdef __FreeBSD__
++ { "-D=", MOUNT_CODEPAGE }, /* vfat */
++ { "-M=", MOUNT_DMASK }, /* vfat */
++ { "-m=", MOUNT_FMASK }, /* vfat, ntfs */
++ { "-L=", MOUNT_LOCALE }, /* vfat */
++ { "-C=", MOUNT_IOCHARSET }, /* ntfs, ios9660 */
++ { "noatime", MOUNT_NOATIME },
++ { "noexec", MOUNT_NOEXEC },
++ { "ro", MOUNT_READ_ONLY },
++ { "longnames", MOUNT_LONGNAME }, /* vfat */
++ { "sync", MOUNT_SYNC },
++ { "-u=", MOUNT_UID }, /* vfat, ntfs */
++#else
+ { "codepage=", MOUNT_CODEPAGE }, /* vfat */
+ { "data=", MOUNT_DATA }, /* ext3 */
+ { "dirsync", MOUNT_DIRSYNC },
+@@ -1580,6 +1598,7 @@ static struct {
+ { "uid=", MOUNT_UID }, /* vfat, ntfs, udf, iso9660 */
+ { "umask=", MOUNT_UMASK }, /* vfat, ntfs, udf */
+ { "utf8", MOUNT_UTF8 }, /* vfat, iso9660 */
++#endif
+ };
+
+
+@@ -1760,10 +1779,17 @@ gvm_mount_options (GPtrArray *options, g
+ g_slist_free_1 (l);
+ }
+
++#ifndef __FreeBSD__
+ if (opts & MOUNT_UID) {
+ option = g_strdup_printf ("uid=%u", getuid ());
+ g_ptr_array_add (options, option);
+ }
++#else
++ if (opts & MOUNT_UID && (!strcmp (where, "vfat") || !strcmp (where, "ntfs"))) {
++ option = g_strdup_printf ("u=%u", getuid ());
++ g_ptr_array_add (options, option);
++ }
++#endif
+
+ return TRUE;
+ }
+@@ -1813,7 +1839,7 @@ gvm_device_mount (const char *udi, gbool
+
+ return retval;
+ } else {
+- char *mount_point, *fstype, *drive, **moptions, fmask_opt[12], *charset_opt = NULL;
++ char *mount_point, *fstype, *drive, **moptions, fmask_opt[12], *charset_opt = NULL, *locale_opt = NULL;
+ DBusMessage *dmesg, *reply;
+ gboolean freev = FALSE;
+ GPtrArray *options;
+@@ -1893,21 +1919,86 @@ gvm_device_mount (const char *udi, gbool
+
+ if (opts & MOUNT_FMASK) {
+ mask = umask (0);
++#ifdef __FreeBSD__
++ snprintf (fmask_opt, sizeof (fmask_opt), "-m=%#o", mask | 0111);
++#else
+ snprintf (fmask_opt, sizeof (fmask_opt), "fmask=%#o", mask | 0111);
++#endif
+ g_ptr_array_add (options, fmask_opt);
+ umask (mask);
+ }
+
+ if (opts & MOUNT_SHORTNAME)
+ g_ptr_array_add (options, "shortname=lower");
++ if (opts & MOUNT_LONGNAME)
++ g_ptr_array_add (options, "longnames");
++
++ if (opts & MOUNT_LOCALE) {
++ char *locale;
++
++ locale = setlocale(LC_ALL, NULL);
++ if (!locale)
++ locale = getenv("LANG");
++ if (locale) {
++
++ locale_opt = g_strdup_printf ("-L=%s", locale);
++ g_ptr_array_add (options, locale_opt);
++ }
++ }
++
++#ifdef __FreeBSD__
++ if (opts & MOUNT_CODEPAGE) {
++ if ((iocharset = gvm_iocharset ())) {
++ charset_opt = g_strdup_printf ("-D=%s", iocharset);
++ g_ptr_array_add (options, charset_opt);
++ }
++ }
++
++ if (opts & MOUNT_UID) {
++ snprintf (uid, sizeof (uid) - 1, "-u=%s", getuid ());
++ g_ptr_array_add (options, uid);
++ }
++#endif
+ } else if (!strcmp (fstype, "iso9660")) {
+ /* only care about uid= and iocharset= */
++#ifdef __FreeBSD__
++ if (opts & MOUNT_IOCHARSET) {
++ if ((iocharset = gvm_iocharset ())) {
++ charset_opt = g_strdup_printf ("-C=%s", iocharset);
++ g_ptr_array_add (options, charset_opt);
++ }
++ }
++#endif
+ } else if (!strcmp (fstype, "udf")) {
+ /* also care about uid= and iocharset= */
+ if (opts & MOUNT_NOATIME)
+ g_ptr_array_add (options, "noatime");
++#ifdef __FreeBSD__
++ if (opts & MOUNT_IOCHARSET) {
++ if ((iocharset = gvm_iocharset ())) {
++ charset_opt = g_strdup_printf ("-C=%s", iocharset);
++ g_ptr_array_add (options, charset_opt);
++ }
++ }
++#endif
++ } else if (!strcmp (fstype, "ntfs")) {
++ /* only care about uid= and iocharset= */
++#ifdef __FreeBSD__
++ if (opts & MOUNT_IOCHARSET) {
++ if ((iocharset = gvm_iocharset ())) {
++ charset_opt = g_strdup_printf ("-C=%s", iocharset);
++ g_ptr_array_add (options, charset_opt);
++ }
++ }
++
++ if (opts & MOUNT_UID) {
++ snprintf (uid, sizeof (uid) - 1, "-u=%s", getuid ());
++ g_ptr_array_add (options, uid);
++ }
++#endif
+ }
+
++#ifndef __FreeBSD__
+ if (opts & (MOUNT_IOCHARSET|MOUNT_UTF8)) {
+ if ((iocharset = gvm_iocharset ())) {
+ if ((opts & MOUNT_UTF8) && !strcmp (iocharset, "utf8")) {
+@@ -1923,6 +2014,7 @@ gvm_device_mount (const char *udi, gbool
+ snprintf (uid, sizeof (uid) - 1, "uid=%u", getuid ());
+ g_ptr_array_add (options, uid);
+ }
++#endif
+
+ libhal_free_string (fstype);
+ }
+@@ -1947,6 +2039,7 @@ gvm_device_mount (const char *udi, gbool
+
+ g_ptr_array_free (options, TRUE);
+ g_free (charset_opt);
++ g_free (locale_opt);
+
+ policy = g_new (struct _MountPolicy, 1);
+ policy->udi = g_strdup (udi);
+@@ -3185,6 +3278,12 @@ gvm_local_user (void)
+ size_t n;
+ DIR *dir;
+ int vt;
+#ifndef __linux__
+ int bytes, fd;
+ struct stat sb;
+ struct utmp buf[1024];
-+ long len;
++ size_t len;
+#endif
- user = g_get_user_name ();
- ulen = strlen (user);
+ if (local & LOCAL_USER_CHECKED)
+ return (local & LOCAL_USER_FOUND);
+@@ -3208,6 +3307,7 @@ gvm_local_user (void)
-+#ifdef __linux__
- setutent ();
+ fallback:
- while (!local && (utmp = getutent ())) {
-@@ -3103,7 +3113,31 @@ gvm_local_user (void)
++#ifdef __linux__
+ if (!(local & LOCAL_USER_FOUND)) {
+ setutent ();
+
+@@ -3222,6 +3322,29 @@ gvm_local_user (void)
+
+ endutent ();
}
-
- endutent ();
--
+#else
+ if ((fd = open (_PATH_WTMP, O_RDONLY, 0)) < 0 || fstat(fd, &sb) == -1) {
+ close (fd);
+ return TRUE;
+ }
++
+ len = (sb.st_size + sizeof(buf) - 1) / sizeof(buf);
+
+ while (!local && --len >= 0) {
+ if (lseek(fd, (off_t) (len * sizeof(buf)), L_SET) == -1 ||
-+ (bytes = read (fd, buf, sizeof(buf))) == -1) {
++ (bytes = read (fd, buf, sizeof(buf))) == -1) {
+ close (fd);
+ return TRUE;
+ }
+ for (utmp = &buf[bytes / sizeof(buf[0]) - 1]; !local && utmp >= buf; --utmp) {
-+ if (!utmp->ut_name[0] || strncmp (utmp->ut_name, user, ulen) != 0)
++ if (!utmp->ut_name[0] || strncmp (utmp->ut_name, user, n) != 0)
+ continue;
-+ local = utmp->ut_line[0] == ':' && utmp->ut_line[1] >= '0' && utmp->ut_line[1] <= '9';
-+ if (!local)
-+ /* Handle vty logins */
-+ local = strlen(utmp->ut_line) > 4 && strncmp(utmp->ut_line, "ttyv", 4) == 0 && utmp->ut_line[4] >= '0' && utmp->ut_line[4] <= '9';
++ local = utmp->ut_line[0] == ':' && utmp->ut_line[1] >= '0' && utmp->ut_line[1] <= '9' || !strncmp (utmp->ut_line, "ttyv", 4) ? LOCAL_USER_FOUND : 0;
+ }
+ }
+
+ close (fd);
+#endif
- return local;
- }
-
+
+ local |= LOCAL_USER_CHECKED;
+
diff --git a/sysutils/gnome-volume-manager/pkg-plist b/sysutils/gnome-volume-manager/pkg-plist
index c26bce96f36f..03aa400ce488 100644
--- a/sysutils/gnome-volume-manager/pkg-plist
+++ b/sysutils/gnome-volume-manager/pkg-plist
@@ -38,9 +38,12 @@ share/locale/it/LC_MESSAGES/gnome-volume-manager.mo
share/locale/ja/LC_MESSAGES/gnome-volume-manager.mo
share/locale/ka/LC_MESSAGES/gnome-volume-manager.mo
share/locale/ko/LC_MESSAGES/gnome-volume-manager.mo
+share/locale/ku/LC_MESSAGES/gnome-volume-manager.mo
share/locale/lt/LC_MESSAGES/gnome-volume-manager.mo
share/locale/lv/LC_MESSAGES/gnome-volume-manager.mo
+share/locale/mg/LC_MESSAGES/gnome-volume-manager.mo
share/locale/mk/LC_MESSAGES/gnome-volume-manager.mo
+share/locale/ml/LC_MESSAGES/gnome-volume-manager.mo
share/locale/mn/LC_MESSAGES/gnome-volume-manager.mo
share/locale/ms/LC_MESSAGES/gnome-volume-manager.mo
share/locale/nb/LC_MESSAGES/gnome-volume-manager.mo
@@ -56,6 +59,7 @@ share/locale/ro/LC_MESSAGES/gnome-volume-manager.mo
share/locale/ru/LC_MESSAGES/gnome-volume-manager.mo
share/locale/rw/LC_MESSAGES/gnome-volume-manager.mo
share/locale/sk/LC_MESSAGES/gnome-volume-manager.mo
+share/locale/sl/LC_MESSAGES/gnome-volume-manager.mo
share/locale/sq/LC_MESSAGES/gnome-volume-manager.mo
share/locale/sr/LC_MESSAGES/gnome-volume-manager.mo
share/locale/sr@Latn/LC_MESSAGES/gnome-volume-manager.mo
@@ -84,6 +88,8 @@ share/locale/zh_TW/LC_MESSAGES/gnome-volume-manager.mo
@dirrmtry share/locale/uk
@dirrmtry share/locale/sr/LC_MESSAGES
@dirrmtry share/locale/sr
+@dirrmtry share/locale/sl/LC_MESSAGES
+@dirrmtry share/locale/sl
@dirrmtry share/locale/sk/LC_MESSAGES
@dirrmtry share/locale/sk
@dirrmtry share/locale/rw/LC_MESSAGES
@@ -98,6 +104,10 @@ share/locale/zh_TW/LC_MESSAGES/gnome-volume-manager.mo
@dirrmtry share/locale/nn
@dirrmtry share/locale/ne/LC_MESSAGES
@dirrmtry share/locale/ne
+@dirrmtry share/locale/mg/LC_MESSAGES
+@dirrmtry share/locale/mg
+@dirrmtry share/locale/ku/LC_MESSAGES
+@dirrmtry share/locale/ku
@dirrmtry share/locale/ko/LC_MESSAGES
@dirrmtry share/locale/ko
@dirrmtry share/locale/gl/LC_MESSAGES