grsync-1.2.5/ 0000775 0001750 0001750 00000000000 12375104247 010034 5 0000000 0000000 grsync-1.2.5/configure.in 0000664 0001750 0001750 00000006564 12251336630 012274 0000000 0000000 dnl Process this file with autoconf to produce a configure script.
AC_INIT(configure.in)
AM_INIT_AUTOMAKE(grsync, 1.2.5)
AM_CONFIG_HEADER(config.h)
AM_MAINTAINER_MODE
CFLAGS="-Wall -rdynamic $CFLAGS"
LIBS="-lm $LIBS"
AC_USE_SYSTEM_EXTENSIONS
AC_ISC_POSIX
AC_PROG_CC
AM_PROG_CC_STDC
AC_HEADER_STDC
PKG_CHECK_EXISTS(maemo-version, [VERSIONOK=`$PKG_CONFIG --atleast-version=5 maemo-version`
if test x"$VERSIONOK" != x; then
AC_MSG_ERROR([You need at least Maemo 5.x for this release of Grsync])
else
AC_MSG_NOTICE([Configuring for Maemo 5.x platform])
MAEMO=1
XMLFILE="grsync-maemo-ui.xml"
AC_DEFINE(MAEMO, [1], [Compile for Maemo platform.])
AC_DEFINE_UNQUOTED(XMLFILE, ["$XMLFILE"], [UI Description XML File])
pkg_modules="gtk+-2.0 >= 2.14.0 gnome-vfs-2.0 gconf-2.0 hildon-1 hildon-fm-2 libosso osso-af-settings"
OTHER_DESKTOP_ENTRIES="X-Osso-Service=it.opbyte.${PACKAGE}
X-Osso-Type=application/x-executable
Icon=${PACKAGE}"
MIMEINFO_XMLNS="xmlns='http://www.freedesktop.org/standards/shared-mime-info' xmlns:osso='http://nokia.com/osso/mime-categories'"
MIME_OSSOCAT=""
fi],
AC_MSG_NOTICE([Configuring for plain GTK+])
MAEMO=0
XMLFILE="grsync.glade"
AC_DEFINE_UNQUOTED(XMLFILE, ["$XMLFILE"], [UI Description XML File])
pkg_modules="gtk+-2.0 >= 2.16.0"
OTHER_DESKTOP_ENTRIES="Icon=grsync.png"
MIMEINFO_XMLNS="xmlns='http://www.freedesktop.org/standards/shared-mime-info'"
MIME_OSSOCAT=""
)
PKG_CHECK_MODULES(PACKAGE, [$pkg_modules])
AC_SUBST(PACKAGE_CFLAGS)
AC_SUBST(PACKAGE_LIBS)
AC_SUBST(OTHER_DESKTOP_ENTRIES)
AC_SUBST(MIMEINFO_XMLNS)
AC_SUBST(MIME_OSSOCAT)
AC_SUBST(MAEMO)
AC_SUBST(XMLFILE)
AC_ARG_ENABLE(unity,
AS_HELP_STRING([--enable-unity],[Build support for integration in Unity launcher [[default=yes]]]),
[enable_unity=$enableval],
[enable_unity="yes"])
if test x"$enable_unity" = "xyes"; then
if test "x$with_localinstall" = "xyes"; then
DBUSSERVICEDIR="${datadir}/dbus-1/services/"
else
DBUSSERVICEDIR=`$PKG_CONFIG --variable=session_bus_services_dir dbus-1`
fi
AC_SUBST(DBUSSERVICEDIR)
PKG_CHECK_MODULES(UNITY,
dee-1.0
dbusmenu-glib-0.4
unity)
AC_SUBST(UNITY_CFLAGS)
AC_SUBST(UNITY_LIBS)
AC_DEFINE(HAVE_UNITY, 1, [Unity launcher support])
CFLAGS="$UNITY_CFLAGS $CFLAGS"
LIBS="$UNITY_LIBS $LIBS"
fi
AM_CONDITIONAL(HAVE_UNITY, test x"$enable_unity" = xyes)
if test x"$MAEMO" = x1; then
desktopentrydir=`$PKG_CONFIG osso-af-settings --variable=desktopentrydir`
dbusservicedir=`$PKG_CONFIG osso-af-settings --variable=dbusservicedir`
hildonpixmapdir=`$PKG_CONFIG osso-af-settings --variable=hildonpixmapdir`
AC_SUBST(desktopentrydir)
AC_SUBST(dbusservicedir)
AC_SUBST(hildonpixmapdir)
AC_DEFINE_UNQUOTED(HILDONPIXMAPDIR, ["$hildonpixmapdir"], [Define default Maemo pixmap directory])
fi
AM_CONDITIONAL([MAEMO], [test x$MAEMO = x1])
AC_PROG_INTLTOOL()
GETTEXT_PACKAGE=grsync
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
dnl Add the languages which your application supports here.
ALL_LINGUAS="nl_NL it_IT zh_CN fr_FR sv_SE nb_NO tr_TR ru_RU de_DE es_ES cs_CZ gl_ES ca_ES pt_BR id_ID hr_HR zh_TW hu_HU"
AM_GLIB_GNU_GETTEXT
AC_OUTPUT([
Makefile
src/Makefile
po/Makefile.in
grsync.spec
grsync.desktop
grsync.xml
it.opbyte.grsync.service
])
grsync-1.2.5/Makefile.in 0000664 0001750 0001750 00000126237 12327444422 012033 0000000 0000000 # Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = .
DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
$(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/configure $(am__configure_deps) \
$(srcdir)/config.h.in mkinstalldirs $(srcdir)/grsync.spec.in \
$(srcdir)/grsync.desktop.in $(srcdir)/grsync.xml.in \
$(srcdir)/it.opbyte.grsync.service.in \
$(dist_mimepackages_DATA) COPYING compile depcomp install-sh \
missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = grsync.spec grsync.desktop grsync.xml \
it.opbyte.grsync.service
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
ctags-recursive dvi-recursive html-recursive info-recursive \
install-data-recursive install-dvi-recursive \
install-exec-recursive install-html-recursive \
install-info-recursive install-pdf-recursive \
install-ps-recursive install-recursive installcheck-recursive \
installdirs-recursive pdf-recursive ps-recursive \
tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
man1dir = $(mandir)/man1
am__installdirs = "$(DESTDIR)$(man1dir)" \
"$(DESTDIR)$(Applicationsdir)" "$(DESTDIR)$(Backupdir)" \
"$(DESTDIR)$(Gladedir)" "$(DESTDIR)$(Servicedir)" \
"$(DESTDIR)$(mimepackagesdir)" "$(DESTDIR)$(icon_26x26dir)" \
"$(DESTDIR)$(icon_40x40dir)" "$(DESTDIR)$(icon_48x48dir)" \
"$(DESTDIR)$(icon_64x64dir)" "$(DESTDIR)$(icon_scalabledir)" \
"$(DESTDIR)$(mimeicondir)" "$(DESTDIR)$(pixmapdir)" \
"$(DESTDIR)$(pixmapbusydir)"
NROFF = nroff
MANS = $(man_MANS)
DATA = $(Applications_DATA) $(Backup_DATA) $(Glade_DATA) \
$(Service_DATA) $(dist_mimepackages_DATA) $(icon_26x26_DATA) \
$(icon_40x40_DATA) $(icon_48x48_DATA) $(icon_64x64_DATA) \
$(icon_scalable_DATA) $(mimeicon_DATA) $(pixmap_DATA) \
$(pixmapbusy_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
am__recursive_targets = \
$(RECURSIVE_TARGETS) \
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
cscope distdir dist dist-all distcheck
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
$(LISP)config.h.in
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
if test -d "$(distdir)"; then \
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -rf "$(distdir)" \
|| { sleep 5 && rm -rf "$(distdir)"; }; \
else :; fi
am__post_remove_distdir = $(am__remove_distdir)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best
DIST_TARGETS = dist-gzip
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
ALL_LINGUAS = @ALL_LINGUAS@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CATALOGS = @CATALOGS@
CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DATADIRNAME = @DATADIRNAME@
DBUSSERVICEDIR = @DBUSSERVICEDIR@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
GMOFILES = @GMOFILES@
GMSGFMT = @GMSGFMT@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTOBJEXT = @INSTOBJEXT@
INTLLIBS = @INTLLIBS@
INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
INTLTOOL_MERGE = @INTLTOOL_MERGE@
INTLTOOL_PERL = @INTLTOOL_PERL@
INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@
INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LTLIBOBJS = @LTLIBOBJS@
MAEMO = @MAEMO@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MIMEINFO_XMLNS = @MIMEINFO_XMLNS@
MIME_OSSOCAT = @MIME_OSSOCAT@
MKDIR_P = @MKDIR_P@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGFMT_OPTS = @MSGFMT_OPTS@
MSGMERGE = @MSGMERGE@
OBJEXT = @OBJEXT@
OTHER_DESKTOP_ENTRIES = @OTHER_DESKTOP_ENTRIES@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_CFLAGS = @PACKAGE_CFLAGS@
PACKAGE_LIBS = @PACKAGE_LIBS@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
POFILES = @POFILES@
POSUB = @POSUB@
PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
UNITY_CFLAGS = @UNITY_CFLAGS@
UNITY_LIBS = @UNITY_LIBS@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XMLFILE = @XMLFILE@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@ --exclude=".svn"
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
dbusservicedir = @dbusservicedir@
desktopentrydir = @desktopentrydir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
hildonpixmapdir = @hildonpixmapdir@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
intltool__v_merge_options_ = @intltool__v_merge_options_@
intltool__v_merge_options_0 = @intltool__v_merge_options_0@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = src po
man_MANS = grsync.1 grsync-batch.1
EXTRA_DIST = \
autogen.sh \
grsync.glade \
grsync-maemo-ui.xml \
grsync.conf \
grsync.desktop.in \
grsync.xml.in \
it.opbyte.grsync.service.in \
grsync.spec.in \
$(man_MANS) \
intltool-extract.in \
intltool-merge.in \
intltool-update.in \
src/grsync-batch \
pixmaps \
maemo-icons
@MAEMO_FALSE@Applicationsdir = $(datadir)/applications
@MAEMO_TRUE@Applicationsdir = $(desktopentrydir)
@MAEMO_FALSE@Applications_DATA = grsync.desktop
@MAEMO_TRUE@Applications_DATA = grsync.desktop
@MAEMO_TRUE@Servicedir = $(dbusservicedir)
@MAEMO_TRUE@Service_DATA = it.opbyte.grsync.service
@MAEMO_TRUE@Backupdir = /etc/osso-backup/applications
@MAEMO_TRUE@Backup_DATA = grsync.conf
@MAEMO_TRUE@icon_26x26dir = $(datadir)/icons/hicolor/26x26/hildon
@MAEMO_TRUE@icon_26x26_DATA = maemo-icons/26x26/grsync.png
@MAEMO_TRUE@icon_40x40dir = $(datadir)/icons/hicolor/40x40/hildon
@MAEMO_TRUE@icon_40x40_DATA = maemo-icons/40x40/grsync.png
@MAEMO_TRUE@icon_48x48dir = $(datadir)/icons/hicolor/48x48/hildon
@MAEMO_TRUE@icon_48x48_DATA = maemo-icons/48x48/grsync.png
@MAEMO_TRUE@icon_64x64dir = $(datadir)/icons/hicolor/64x64/hildon
@MAEMO_TRUE@icon_64x64_DATA = maemo-icons/64x64/grsync.png
@MAEMO_TRUE@icon_scalabledir = $(datadir)/icons/hicolor/scalable/hildon
@MAEMO_TRUE@icon_scalable_DATA = maemo-icons/scalable/grsync.png
Gladedir = $(datadir)/grsync
Glade_DATA = $(XMLFILE)
mimedir = $(datadir)/mime
mimepackagesdir = $(mimedir)/packages
dist_mimepackages_DATA = grsync.xml
pixmapdir = $(datadir)/pixmaps
pixmap_DATA = pixmaps/grsync.png
pixmapbusydir = $(datadir)/pixmaps
pixmapbusy_DATA = pixmaps/grsync-busy.png
mimeicondir = $(datadir)/icons/hicolor/48x48/mimetypes/
mimeicon_DATA = pixmaps/application-x-grsync-session.png
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
.SUFFIXES:
am--refresh: Makefile
@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
$(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
config.h: stamp-h1
@test -f $@ || rm -f stamp-h1
@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status config.h
$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
distclean-hdr:
-rm -f config.h stamp-h1
grsync.spec: $(top_builddir)/config.status $(srcdir)/grsync.spec.in
cd $(top_builddir) && $(SHELL) ./config.status $@
grsync.desktop: $(top_builddir)/config.status $(srcdir)/grsync.desktop.in
cd $(top_builddir) && $(SHELL) ./config.status $@
grsync.xml: $(top_builddir)/config.status $(srcdir)/grsync.xml.in
cd $(top_builddir) && $(SHELL) ./config.status $@
it.opbyte.grsync.service: $(top_builddir)/config.status $(srcdir)/it.opbyte.grsync.service.in
cd $(top_builddir) && $(SHELL) ./config.status $@
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
@list1=''; \
list2='$(man_MANS)'; \
test -n "$(man1dir)" \
&& test -n "`echo $$list1$$list2`" \
|| exit 0; \
echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
$(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
{ for i in $$list1; do echo "$$i"; done; \
if test -n "$$list2"; then \
for i in $$list2; do echo "$$i"; done \
| sed -n '/\.1[a-z]*$$/p'; \
fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
fi; \
done; \
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
while read files; do \
test -z "$$files" || { \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
done; }
uninstall-man1:
@$(NORMAL_UNINSTALL)
@list=''; test -n "$(man1dir)" || exit 0; \
files=`{ for i in $$list; do echo "$$i"; done; \
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
sed -n '/\.1[a-z]*$$/p'; \
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
install-ApplicationsDATA: $(Applications_DATA)
@$(NORMAL_INSTALL)
@list='$(Applications_DATA)'; test -n "$(Applicationsdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(Applicationsdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(Applicationsdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(Applicationsdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(Applicationsdir)" || exit $$?; \
done
uninstall-ApplicationsDATA:
@$(NORMAL_UNINSTALL)
@list='$(Applications_DATA)'; test -n "$(Applicationsdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(Applicationsdir)'; $(am__uninstall_files_from_dir)
install-BackupDATA: $(Backup_DATA)
@$(NORMAL_INSTALL)
@list='$(Backup_DATA)'; test -n "$(Backupdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(Backupdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(Backupdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(Backupdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(Backupdir)" || exit $$?; \
done
uninstall-BackupDATA:
@$(NORMAL_UNINSTALL)
@list='$(Backup_DATA)'; test -n "$(Backupdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(Backupdir)'; $(am__uninstall_files_from_dir)
install-GladeDATA: $(Glade_DATA)
@$(NORMAL_INSTALL)
@list='$(Glade_DATA)'; test -n "$(Gladedir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(Gladedir)'"; \
$(MKDIR_P) "$(DESTDIR)$(Gladedir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(Gladedir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(Gladedir)" || exit $$?; \
done
uninstall-GladeDATA:
@$(NORMAL_UNINSTALL)
@list='$(Glade_DATA)'; test -n "$(Gladedir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(Gladedir)'; $(am__uninstall_files_from_dir)
install-ServiceDATA: $(Service_DATA)
@$(NORMAL_INSTALL)
@list='$(Service_DATA)'; test -n "$(Servicedir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(Servicedir)'"; \
$(MKDIR_P) "$(DESTDIR)$(Servicedir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(Servicedir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(Servicedir)" || exit $$?; \
done
uninstall-ServiceDATA:
@$(NORMAL_UNINSTALL)
@list='$(Service_DATA)'; test -n "$(Servicedir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(Servicedir)'; $(am__uninstall_files_from_dir)
install-dist_mimepackagesDATA: $(dist_mimepackages_DATA)
@$(NORMAL_INSTALL)
@list='$(dist_mimepackages_DATA)'; test -n "$(mimepackagesdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(mimepackagesdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(mimepackagesdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(mimepackagesdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(mimepackagesdir)" || exit $$?; \
done
uninstall-dist_mimepackagesDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_mimepackages_DATA)'; test -n "$(mimepackagesdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(mimepackagesdir)'; $(am__uninstall_files_from_dir)
install-icon_26x26DATA: $(icon_26x26_DATA)
@$(NORMAL_INSTALL)
@list='$(icon_26x26_DATA)'; test -n "$(icon_26x26dir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(icon_26x26dir)'"; \
$(MKDIR_P) "$(DESTDIR)$(icon_26x26dir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon_26x26dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(icon_26x26dir)" || exit $$?; \
done
uninstall-icon_26x26DATA:
@$(NORMAL_UNINSTALL)
@list='$(icon_26x26_DATA)'; test -n "$(icon_26x26dir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(icon_26x26dir)'; $(am__uninstall_files_from_dir)
install-icon_40x40DATA: $(icon_40x40_DATA)
@$(NORMAL_INSTALL)
@list='$(icon_40x40_DATA)'; test -n "$(icon_40x40dir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(icon_40x40dir)'"; \
$(MKDIR_P) "$(DESTDIR)$(icon_40x40dir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon_40x40dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(icon_40x40dir)" || exit $$?; \
done
uninstall-icon_40x40DATA:
@$(NORMAL_UNINSTALL)
@list='$(icon_40x40_DATA)'; test -n "$(icon_40x40dir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(icon_40x40dir)'; $(am__uninstall_files_from_dir)
install-icon_48x48DATA: $(icon_48x48_DATA)
@$(NORMAL_INSTALL)
@list='$(icon_48x48_DATA)'; test -n "$(icon_48x48dir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(icon_48x48dir)'"; \
$(MKDIR_P) "$(DESTDIR)$(icon_48x48dir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon_48x48dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(icon_48x48dir)" || exit $$?; \
done
uninstall-icon_48x48DATA:
@$(NORMAL_UNINSTALL)
@list='$(icon_48x48_DATA)'; test -n "$(icon_48x48dir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(icon_48x48dir)'; $(am__uninstall_files_from_dir)
install-icon_64x64DATA: $(icon_64x64_DATA)
@$(NORMAL_INSTALL)
@list='$(icon_64x64_DATA)'; test -n "$(icon_64x64dir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(icon_64x64dir)'"; \
$(MKDIR_P) "$(DESTDIR)$(icon_64x64dir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon_64x64dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(icon_64x64dir)" || exit $$?; \
done
uninstall-icon_64x64DATA:
@$(NORMAL_UNINSTALL)
@list='$(icon_64x64_DATA)'; test -n "$(icon_64x64dir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(icon_64x64dir)'; $(am__uninstall_files_from_dir)
install-icon_scalableDATA: $(icon_scalable_DATA)
@$(NORMAL_INSTALL)
@list='$(icon_scalable_DATA)'; test -n "$(icon_scalabledir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(icon_scalabledir)'"; \
$(MKDIR_P) "$(DESTDIR)$(icon_scalabledir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon_scalabledir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(icon_scalabledir)" || exit $$?; \
done
uninstall-icon_scalableDATA:
@$(NORMAL_UNINSTALL)
@list='$(icon_scalable_DATA)'; test -n "$(icon_scalabledir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(icon_scalabledir)'; $(am__uninstall_files_from_dir)
install-mimeiconDATA: $(mimeicon_DATA)
@$(NORMAL_INSTALL)
@list='$(mimeicon_DATA)'; test -n "$(mimeicondir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(mimeicondir)'"; \
$(MKDIR_P) "$(DESTDIR)$(mimeicondir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(mimeicondir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(mimeicondir)" || exit $$?; \
done
uninstall-mimeiconDATA:
@$(NORMAL_UNINSTALL)
@list='$(mimeicon_DATA)'; test -n "$(mimeicondir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(mimeicondir)'; $(am__uninstall_files_from_dir)
install-pixmapDATA: $(pixmap_DATA)
@$(NORMAL_INSTALL)
@list='$(pixmap_DATA)'; test -n "$(pixmapdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(pixmapdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(pixmapdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pixmapdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(pixmapdir)" || exit $$?; \
done
uninstall-pixmapDATA:
@$(NORMAL_UNINSTALL)
@list='$(pixmap_DATA)'; test -n "$(pixmapdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(pixmapdir)'; $(am__uninstall_files_from_dir)
install-pixmapbusyDATA: $(pixmapbusy_DATA)
@$(NORMAL_INSTALL)
@list='$(pixmapbusy_DATA)'; test -n "$(pixmapbusydir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(pixmapbusydir)'"; \
$(MKDIR_P) "$(DESTDIR)$(pixmapbusydir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pixmapbusydir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(pixmapbusydir)" || exit $$?; \
done
uninstall-pixmapbusyDATA:
@$(NORMAL_UNINSTALL)
@list='$(pixmapbusy_DATA)'; test -n "$(pixmapbusydir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(pixmapbusydir)'; $(am__uninstall_files_from_dir)
# This directory's subdirectories are mostly independent; you can cd
# into them and run 'make' without going through this Makefile.
# To change the values of 'make' variables: instead of editing Makefiles,
# (1) if the variable is set in 'config.status', edit 'config.status'
# (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the 'make' command line.
$(am__recursive_targets):
@fail=; \
if $(am__make_keepgoing); then \
failcom='fail=yes'; \
else \
failcom='exit 1'; \
fi; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-recursive
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
$(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: ctags-recursive
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscope: cscope.files
test ! -s cscope.files \
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
clean-cscope:
-rm -f cscope.files
cscope.files: clean-cscope cscopelist
cscopelist: cscopelist-recursive
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(DISTFILES)
$(am__remove_distdir)
test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
$(am__make_dryrun) \
|| test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
-test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
$(am__post_remove_distdir)
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
dist-tarZ: distdir
@echo WARNING: "Support for shar distribution archives is" \
"deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
dist-shar: distdir
@echo WARNING: "Support for distribution archives compressed with" \
"legacy program 'compress' is deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__post_remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__post_remove_distdir)
dist dist-all:
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
$(am__post_remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
chmod -R a-w $(distdir)
chmod u+w $(distdir)
mkdir $(distdir)/_build $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
&& ../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
--srcdir=.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
distuninstallcheck \
&& chmod -R a-w "$$dc_install_base" \
&& ({ \
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
} || { rm -rf "$$dc_destdir"; exit 1; }) \
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
$(am__post_remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
@test -n '$(distuninstallcheck_dir)' || { \
echo 'ERROR: trying to run $@ with an empty' \
'$$(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
$(am__cd) '$(distuninstallcheck_dir)' || { \
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
fi ; \
$(distuninstallcheck_listfiles) ; \
exit 1; } >&2
distcleancheck: distclean
@if test '$(srcdir)' = . ; then \
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
exit 1 ; \
fi
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left in build directory after distclean:" ; \
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile $(MANS) $(DATA) config.h
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(Applicationsdir)" "$(DESTDIR)$(Backupdir)" "$(DESTDIR)$(Gladedir)" "$(DESTDIR)$(Servicedir)" "$(DESTDIR)$(mimepackagesdir)" "$(DESTDIR)$(icon_26x26dir)" "$(DESTDIR)$(icon_40x40dir)" "$(DESTDIR)$(icon_48x48dir)" "$(DESTDIR)$(icon_64x64dir)" "$(DESTDIR)$(icon_scalabledir)" "$(DESTDIR)$(mimeicondir)" "$(DESTDIR)$(pixmapdir)" "$(DESTDIR)$(pixmapbusydir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-hdr distclean-local \
distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am: install-ApplicationsDATA install-BackupDATA \
install-GladeDATA install-ServiceDATA \
install-dist_mimepackagesDATA install-icon_26x26DATA \
install-icon_40x40DATA install-icon_48x48DATA \
install-icon_64x64DATA install-icon_scalableDATA install-man \
install-mimeiconDATA install-pixmapDATA install-pixmapbusyDATA
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man: install-man1
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-ApplicationsDATA uninstall-BackupDATA \
uninstall-GladeDATA uninstall-ServiceDATA \
uninstall-dist_mimepackagesDATA uninstall-icon_26x26DATA \
uninstall-icon_40x40DATA uninstall-icon_48x48DATA \
uninstall-icon_64x64DATA uninstall-icon_scalableDATA \
uninstall-man uninstall-mimeiconDATA uninstall-pixmapDATA \
uninstall-pixmapbusyDATA
uninstall-man: uninstall-man1
.MAKE: $(am__recursive_targets) all install-am install-strip
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--refresh check check-am clean clean-cscope clean-generic \
cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
distcheck distclean distclean-generic distclean-hdr \
distclean-local distclean-tags distcleancheck distdir \
distuninstallcheck dvi dvi-am html html-am info info-am \
install install-ApplicationsDATA install-BackupDATA \
install-GladeDATA install-ServiceDATA install-am install-data \
install-data-am install-dist_mimepackagesDATA install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-icon_26x26DATA install-icon_40x40DATA \
install-icon_48x48DATA install-icon_64x64DATA \
install-icon_scalableDATA install-info install-info-am \
install-man install-man1 install-mimeiconDATA install-pdf \
install-pdf-am install-pixmapDATA install-pixmapbusyDATA \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags tags-am uninstall \
uninstall-ApplicationsDATA uninstall-BackupDATA \
uninstall-GladeDATA uninstall-ServiceDATA uninstall-am \
uninstall-dist_mimepackagesDATA uninstall-icon_26x26DATA \
uninstall-icon_40x40DATA uninstall-icon_48x48DATA \
uninstall-icon_64x64DATA uninstall-icon_scalableDATA \
uninstall-man uninstall-man1 uninstall-mimeiconDATA \
uninstall-pixmapDATA uninstall-pixmapbusyDATA
distclean-local:
rm -rf *.cache *~
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
grsync-1.2.5/grsync.spec.in 0000664 0001750 0001750 00000002550 12137727646 012556 0000000 0000000 Name: grsync
Version: @VERSION@
Release: 1%{?dist}
Summary: A GUI for rsync
Group: Applications/Internet
License: GPL
URL: http://www.opbyte.it/grsync/
Source0: http://www.opbyte.it/release/grsync-@VERSION@.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: gettext-devel, gtk2-devel >= 2.0.0
Requires: gettext, gtk2 >= 2.0.0, rsync
%description
Grsync is a GUI for rsync, the command-line directory synchronization
tool. It is in beta stage and doesn't support all of rsync features,
but can be effectively used to synchronize local directories. For
example some people use grsync to synchronize their music collection
with removable devices or to backup personal files to a networked drive.
%prep
%setup -q
%build
%configure
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
%makeinstall
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING INSTALL NEWS README
%{_bindir}/grsync
%{_mandir}/man1/grsync.1*
%{_datadir}/applications/grsync.desktop
%{_datadir}/locale/fr_FR/LC_MESSAGES/grsync.mo
%{_datadir}/locale/it_IT/LC_MESSAGES/grsync.mo
%{_datadir}/locale/nl_NL/LC_MESSAGES/grsync.mo
%{_datadir}/locale/sv_SE/LC_MESSAGES/grsync.mo
%{_datadir}/locale/zh_CN/LC_MESSAGES/grsync.mo
%{_datadir}/pixmaps/grsync.png
grsync-1.2.5/intltool-merge.in 0000664 0001750 0001750 00000000000 12137727646 013245 0000000 0000000 grsync-1.2.5/missing 0000755 0001750 0001750 00000015330 12327444422 011352 0000000 0000000 #! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard , 1996.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
echo 1>&2 "Try '$0 --help' for more information"
exit 1
fi
case $1 in
--is-lightweight)
# Used by our autoconf macros to check whether the available missing
# script is modern enough.
exit 0
;;
--run)
# Back-compat with the calling convention used by older automake.
shift
;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
to PROGRAM being missing or too old.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
Supported PROGRAM values:
aclocal autoconf autoheader autom4te automake makeinfo
bison yacc flex lex help2man
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
'g' are ignored when checking the name.
Send bug reports to ."
exit $?
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
exit $?
;;
-*)
echo 1>&2 "$0: unknown '$1' option"
echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
esac
# Run the given program, remember its exit status.
"$@"; st=$?
# If it succeeded, we are done.
test $st -eq 0 && exit 0
# Also exit now if we it failed (or wasn't found), and '--version' was
# passed; such an option is passed most likely to detect whether the
# program is present and works.
case $2 in --version|--help) exit $st;; esac
# Exit code 63 means version mismatch. This often happens when the user
# tries to use an ancient version of a tool on a file that requires a
# minimum version.
if test $st -eq 63; then
msg="probably too old"
elif test $st -eq 127; then
# Program was missing.
msg="missing on your system"
else
# Program was found and executed, but failed. Give up.
exit $st
fi
perl_URL=http://www.perl.org/
flex_URL=http://flex.sourceforge.net/
gnu_software_URL=http://www.gnu.org/software
program_details ()
{
case $1 in
aclocal|automake)
echo "The '$1' program is part of the GNU Automake package:"
echo "<$gnu_software_URL/automake>"
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/autoconf>"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
autoconf|autom4te|autoheader)
echo "The '$1' program is part of the GNU Autoconf package:"
echo "<$gnu_software_URL/autoconf/>"
echo "It also requires GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
esac
}
give_advice ()
{
# Normalize program name to check for.
normalized_program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
printf '%s\n' "'$1' is $msg."
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
case $normalized_program in
autoconf*)
echo "You should only need it if you modified 'configure.ac',"
echo "or m4 files included by it."
program_details 'autoconf'
;;
autoheader*)
echo "You should only need it if you modified 'acconfig.h' or"
echo "$configure_deps."
program_details 'autoheader'
;;
automake*)
echo "You should only need it if you modified 'Makefile.am' or"
echo "$configure_deps."
program_details 'automake'
;;
aclocal*)
echo "You should only need it if you modified 'acinclude.m4' or"
echo "$configure_deps."
program_details 'aclocal'
;;
autom4te*)
echo "You might have modified some maintainer files that require"
echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
echo "You should only need it if you modified a '.y' file."
echo "You may want to install the GNU Bison package:"
echo "<$gnu_software_URL/bison/>"
;;
lex*|flex*)
echo "You should only need it if you modified a '.l' file."
echo "You may want to install the Fast Lexical Analyzer package:"
echo "<$flex_URL>"
;;
help2man*)
echo "You should only need it if you modified a dependency" \
"of a man page."
echo "You may want to install the GNU Help2man package:"
echo "<$gnu_software_URL/help2man/>"
;;
makeinfo*)
echo "You should only need it if you modified a '.texi' file, or"
echo "any other file indirectly affecting the aspect of the manual."
echo "You might want to install the Texinfo package:"
echo "<$gnu_software_URL/texinfo/>"
echo "The spurious makeinfo call might also be the consequence of"
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
echo "want to install GNU make:"
echo "<$gnu_software_URL/make/>"
;;
*)
echo "You might have modified some files without having the proper"
echo "tools for further handling them. Check the 'README' file, it"
echo "often tells you about the needed prerequisites for installing"
echo "this package. You may also peek at any GNU archive site, in"
echo "case some other package contains this missing '$1' program."
;;
esac
}
give_advice "$1" | sed -e '1s/^/WARNING: /' \
-e '2,$s/^/ /' >&2
# Propagate the correct exit status (expected to be 127 for a program
# not found, 63 for a program that failed due to version mismatch).
exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:
grsync-1.2.5/install-sh 0000755 0001750 0001750 00000033255 12327444422 011765 0000000 0000000 #!/bin/sh
# install - install a program, script, or datafile
scriptversion=2011-11-20.07; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# 'make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch.
nl='
'
IFS=" "" $nl"
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-}
if test -z "$doit"; then
doit_exec=exec
else
doit_exec=$doit
fi
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
posix_glob='?'
initialize_posix_glob='
test "$posix_glob" != "?" || {
if (set -f) 2>/dev/null; then
posix_glob=
else
posix_glob=:
fi
}
'
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
stripcmd=
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
no_target_directory=
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-c) ;;
-C) copy_on_change=true;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
case $mode in
*' '* | *' '* | *'
'* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
shift;;
-T) no_target_directory=true;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done
fi
if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
trap "ret=141; $do_exit" 13
trap "ret=143; $do_exit" 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
*[0-7])
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
for src
do
# Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
# Prefer dirname, but fall back on a substitute if dirname fails.
dstdir=`
(dirname "$dst") 2>/dev/null ||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$dst" : 'X\(//\)[^/]' \| \
X"$dst" : 'X\(//\)$' \| \
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$dst" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'
`
test -d "$dstdir"
dstdir_status=$?
fi
fi
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
if (umask $mkdir_umask &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/d" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
[-=\(\)!]*) prefix='./';;
*) prefix='';;
esac
eval "$initialize_posix_glob"
oIFS=$IFS
IFS=/
$posix_glob set -f
set fnord $dstdir
shift
$posix_glob set +f
IFS=$oIFS
prefixes=
for d
do
test X"$d" = X && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
eval "$initialize_posix_glob" &&
$posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
$posix_glob set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:
grsync-1.2.5/Makefile.am 0000664 0001750 0001750 00000003277 12137727646 012033 0000000 0000000 ## Process this file with automake to produce Makefile.in
SUBDIRS = src po
man_MANS = grsync.1 grsync-batch.1
EXTRA_DIST = \
autogen.sh \
grsync.glade \
grsync-maemo-ui.xml \
grsync.conf \
grsync.desktop.in \
grsync.xml.in \
it.opbyte.grsync.service.in \
grsync.spec.in \
$(man_MANS) \
intltool-extract.in \
intltool-merge.in \
intltool-update.in \
src/grsync-batch \
pixmaps \
maemo-icons
distclean-local:
rm -rf *.cache *~
am__tar = @am__tar@ --exclude=".svn"
if MAEMO
Applicationsdir = $(desktopentrydir)
Applications_DATA = grsync.desktop
Servicedir = $(dbusservicedir)
Service_DATA = it.opbyte.grsync.service
Backupdir = /etc/osso-backup/applications
Backup_DATA = grsync.conf
icon_26x26dir = $(datadir)/icons/hicolor/26x26/hildon
icon_26x26_DATA = maemo-icons/26x26/grsync.png
icon_40x40dir = $(datadir)/icons/hicolor/40x40/hildon
icon_40x40_DATA = maemo-icons/40x40/grsync.png
icon_48x48dir = $(datadir)/icons/hicolor/48x48/hildon
icon_48x48_DATA = maemo-icons/48x48/grsync.png
icon_64x64dir = $(datadir)/icons/hicolor/64x64/hildon
icon_64x64_DATA = maemo-icons/64x64/grsync.png
icon_scalabledir = $(datadir)/icons/hicolor/scalable/hildon
icon_scalable_DATA = maemo-icons/scalable/grsync.png
else
Applicationsdir = $(datadir)/applications
Applications_DATA = grsync.desktop
endif
Gladedir = $(datadir)/grsync
Glade_DATA = $(XMLFILE)
mimedir = $(datadir)/mime
mimepackagesdir = $(mimedir)/packages
dist_mimepackages_DATA = grsync.xml
pixmapdir = $(datadir)/pixmaps
pixmap_DATA = pixmaps/grsync.png
pixmapbusydir = $(datadir)/pixmaps
pixmapbusy_DATA = pixmaps/grsync-busy.png
mimeicondir = $(datadir)/icons/hicolor/48x48/mimetypes/
mimeicon_DATA = pixmaps/application-x-grsync-session.png
grsync-1.2.5/src/ 0000775 0001750 0001750 00000000000 12375104247 010623 5 0000000 0000000 grsync-1.2.5/src/Makefile.in 0000664 0001750 0001750 00000052120 12327444422 012607 0000000 0000000 # Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
bin_PROGRAMS = grsync$(EXEEXT)
subdir = src
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/mkinstalldirs $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
am_grsync_OBJECTS = main.$(OBJEXT) callbacks.$(OBJEXT)
grsync_OBJECTS = $(am_grsync_OBJECTS)
am__DEPENDENCIES_1 =
grsync_DEPENDENCIES = $(am__DEPENDENCIES_1)
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
SCRIPTS = $(bin_SCRIPTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo " CC " $@;
am__v_CC_1 =
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
SOURCES = $(grsync_SOURCES)
DIST_SOURCES = $(grsync_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALL_LINGUAS = @ALL_LINGUAS@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CATALOGS = @CATALOGS@
CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DATADIRNAME = @DATADIRNAME@
DBUSSERVICEDIR = @DBUSSERVICEDIR@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
GMOFILES = @GMOFILES@
GMSGFMT = @GMSGFMT@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTOBJEXT = @INSTOBJEXT@
INTLLIBS = @INTLLIBS@
INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
INTLTOOL_MERGE = @INTLTOOL_MERGE@
INTLTOOL_PERL = @INTLTOOL_PERL@
INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@
INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LTLIBOBJS = @LTLIBOBJS@
MAEMO = @MAEMO@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MIMEINFO_XMLNS = @MIMEINFO_XMLNS@
MIME_OSSOCAT = @MIME_OSSOCAT@
MKDIR_P = @MKDIR_P@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGFMT_OPTS = @MSGFMT_OPTS@
MSGMERGE = @MSGMERGE@
OBJEXT = @OBJEXT@
OTHER_DESKTOP_ENTRIES = @OTHER_DESKTOP_ENTRIES@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_CFLAGS = @PACKAGE_CFLAGS@
PACKAGE_LIBS = @PACKAGE_LIBS@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
POFILES = @POFILES@
POSUB = @POSUB@
PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
UNITY_CFLAGS = @UNITY_CFLAGS@
UNITY_LIBS = @UNITY_LIBS@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XMLFILE = @XMLFILE@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
dbusservicedir = @dbusservicedir@
desktopentrydir = @desktopentrydir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
hildonpixmapdir = @hildonpixmapdir@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
intltool__v_merge_options_ = @intltool__v_merge_options_@
intltool__v_merge_options_0 = @intltool__v_merge_options_0@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
INCLUDES = \
-DPACKAGE_DATA_DIR=\""$(datadir)"\" \
-DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \
@PACKAGE_CFLAGS@
bin_SCRIPTS = grsync-batch
grsync_SOURCES = \
main.c \
support.h \
callbacks.c callbacks.h
grsync_LDADD = @PACKAGE_LIBS@ $(INTLLIBS)
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu src/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p \
; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
sed -e 'p;s,.*/,,;n;h' \
-e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) files[d] = files[d] " " $$1; \
else { print "f", $$3 "/" $$4, $$1; } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
} \
; done
uninstall-binPROGRAMS:
@$(NORMAL_UNINSTALL)
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-e 's/$$/$(EXEEXT)/' \
`; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
clean-binPROGRAMS:
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
grsync$(EXEEXT): $(grsync_OBJECTS) $(grsync_DEPENDENCIES) $(EXTRA_grsync_DEPENDENCIES)
@rm -f grsync$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(grsync_OBJECTS) $(grsync_LDADD) $(LIBS)
install-binSCRIPTS: $(bin_SCRIPTS)
@$(NORMAL_INSTALL)
@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
done | \
sed -e 'p;s,.*/,,;n' \
-e 'h;s|.*|.|' \
-e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) { files[d] = files[d] " " $$1; \
if (++n[d] == $(am__install_max)) { \
print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
else { print "f", d "/" $$4, $$1 } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \
$(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
} \
; done
uninstall-binSCRIPTS:
@$(NORMAL_UNINSTALL)
@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 's,.*/,,;$(transform)'`; \
dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/callbacks.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
$(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: ctags-am
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS) $(SCRIPTS)
installdirs:
for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-binPROGRAMS install-binSCRIPTS
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
clean-binPROGRAMS clean-generic cscopelist-am ctags ctags-am \
distclean distclean-compile distclean-generic distclean-tags \
distdir dvi dvi-am html html-am info info-am install \
install-am install-binPROGRAMS install-binSCRIPTS install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-binPROGRAMS uninstall-binSCRIPTS
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
grsync-1.2.5/src/Makefile.am 0000664 0001750 0001750 00000000541 12137727646 012611 0000000 0000000 ## Process this file with automake to produce Makefile.in
INCLUDES = \
-DPACKAGE_DATA_DIR=\""$(datadir)"\" \
-DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \
@PACKAGE_CFLAGS@
bin_PROGRAMS = grsync
bin_SCRIPTS = grsync-batch
grsync_SOURCES = \
main.c \
support.h \
callbacks.c callbacks.h
grsync_LDADD = @PACKAGE_LIBS@ $(INTLLIBS)
grsync-1.2.5/src/callbacks.c 0000664 0001750 0001750 00000173164 12374670436 012651 0000000 0000000 #ifdef HAVE_CONFIG_H
# include
#endif
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#ifdef MAEMO
# include
# include
#endif
#ifdef HAVE_UNITY
#include
#endif
#include "callbacks.h"
#include "support.h"
GPid rsync_pid;
GIOChannel *chout, *cherr;
gint session_last = -1, session_set = -1, initial_width, initial_height, root_x, root_y, width, height;
gsize session_number = 0;
gboolean had_error, paused, first_load_groups = TRUE, dryrunning = FALSE, must_scroll = FALSE, is_set = FALSE;
gchar **groups = NULL, **argv, *error_list = NULL, *watch_oldfile = NULL;
GtkWidget *rsync_window = NULL;
gboolean config_output = FALSE, config_remember = TRUE, config_errorlist = FALSE, config_log = FALSE, config_fastscroll = TRUE;
#ifndef MAEMO
gboolean config_switchbutton = FALSE, config_trayicon = FALSE;
#endif
GTimeVal startime, pausedtime;
gchar config_command[MAXPATH], *grsync_dir, *rsync_help = NULL, *rsync_man = NULL;
FILE *log_file = NULL;
glong scroll_previous_run;
GtkStatusIcon *trayIcon = NULL;
GtkTreePath *path_set = NULL;
GtkTreeModelFilter *filter = NULL;
gboolean more = FALSE, first = TRUE;
void on_trayicon_activate(GObject *trayIcon, gpointer window) {
// gtk_widget_show(GTK_WIDGET(window));
gtk_window_deiconify(GTK_WINDOW(window));
gtk_window_set_skip_taskbar_hint((GtkWindow*) window, FALSE);
}
void set_trayicon(gboolean flag) {
if (flag) {
if (trayIcon == NULL) {
trayIcon = gtk_status_icon_new_from_file(icon);
g_signal_connect(GTK_STATUS_ICON(trayIcon), "activate", GTK_SIGNAL_FUNC(on_trayicon_activate), main_window);
}
} else {
if (trayIcon != NULL) {
g_object_unref(trayIcon);
trayIcon = NULL;
gtk_window_set_skip_taskbar_hint((GtkWindow*) main_window, FALSE);
}
}
}
void set_trayicon_icon(gboolean busy) {
if (trayIcon != NULL) gtk_status_icon_set_from_file(trayIcon, busy ? icon_busy : icon);
}
gboolean get_checkbox(gchar* name) {
#ifndef MAEMO
return gtk_toggle_button_get_active((GtkToggleButton*) gtk_builder_get_object(builder, name));
#else
return hildon_check_button_get_active((HildonCheckButton*) gtk_builder_get_object(builder, name));
#endif
}
void set_checkbox(gchar* name, gboolean val) {
#ifndef MAEMO
gtk_toggle_button_set_active((GtkToggleButton*) gtk_builder_get_object(builder, name), val);
#else
hildon_check_button_set_active((HildonCheckButton*) gtk_builder_get_object(builder, name), val);
#endif
}
void ini_get_boolean(GKeyFile* settings_file, gchar* name, gboolean* var) {
GError *error_handler = NULL;
gboolean btmp = g_key_file_get_boolean(settings_file, CONFIG_GROUP, name, &error_handler);
if (error_handler != NULL) g_clear_error(&error_handler);
else *var = btmp;
}
void ini_set_entry(GKeyFile* settings_file, gchar* session, gchar* name, gchar* widget) {
gchar* stmp = g_key_file_get_string(settings_file, session, name, NULL);
if (stmp == NULL) stmp = g_strconcat("", NULL);
gtk_entry_set_text((GtkEntry*) gtk_builder_get_object(builder, widget), stmp);
g_free(stmp);
}
void set_main_title(gchar* session, gchar* extra) {
gchar *stmp = g_strconcat("Grsync: ", session, " ", extra, NULL);
gtk_window_set_title((GtkWindow*) main_window, stmp);
if (trayIcon != NULL) gtk_status_icon_set_tooltip(trayIcon, stmp);
g_free(stmp);
}
void set_rsync_title(gchar* session, gchar* extra) {
gchar *stmp = g_strconcat("rsync: ", session, " ", extra, NULL);
gtk_window_set_title((GtkWindow*) rsync_window, stmp);
g_free(stmp);
}
void load_settings(gchar* session, gchar *filename) {
gchar settings_file_path[MAXPATH], *stmp;
static gboolean resized = FALSE;
GKeyFile *settings_file;
if (filename == NULL) g_sprintf(settings_file_path, "%s/%s", grsync_dir, "grsync.ini");
else strncpy(settings_file_path, filename, MAXPATH-1);
// initializes config_command before other functions which may use it
if (filename == NULL) strcpy(config_command, "rsync");
if (!g_file_test(settings_file_path, G_FILE_TEST_EXISTS)) {
g_printf (_("(ERROR) Can't open config file! Maybe this is the first run?\n"));
if (session != NULL) {
save_settings(session, NULL);
load_groups(session);
}
}
settings_file = g_key_file_new();
g_key_file_load_from_file(settings_file, settings_file_path, G_KEY_FILE_NONE, NULL);
if (session == NULL) {
session = g_key_file_get_start_group(settings_file);
save_settings(session, NULL);
session_last = -1; // added because of save session bug, copied from external patch
load_groups(session);
}
if (filename == NULL) {
// load configuration (preferences)
stmp = g_key_file_get_string(settings_file, CONFIG_GROUP, "command", NULL);
if (stmp != NULL) {
strncpy(config_command, stmp, MAXPATH - 1);
g_free(stmp);
}
ini_get_boolean(settings_file, "output", &config_output);
ini_get_boolean(settings_file, "remember", &config_remember);
ini_get_boolean(settings_file, "errorlist", &config_errorlist);
ini_get_boolean(settings_file, "logging", &config_log);
ini_get_boolean(settings_file, "fastscroll", &config_fastscroll);
#ifndef MAEMO
ini_get_boolean(settings_file, "switchbutton", &config_switchbutton);
// gtk_widget_set_visible((GtkWidget*) gtk_builder_get_object(builder, "button_switch"), config_switchbutton); ONLY WORKS IN GTK 2.18
config_switchbutton ? gtk_widget_show((GtkWidget*) gtk_builder_get_object(builder, "button_switch")) :
gtk_widget_hide((GtkWidget*) gtk_builder_get_object(builder, "button_switch"));
ini_get_boolean(settings_file, "trayicon", &config_trayicon);
set_trayicon(config_trayicon);
#endif
// load window position and size
if (!resized) {
root_x = g_key_file_get_integer(settings_file, CONFIG_GROUP, "root_x", NULL);
root_y = g_key_file_get_integer(settings_file, CONFIG_GROUP, "root_y", NULL);
width = g_key_file_get_integer(settings_file, CONFIG_GROUP, "width", NULL);
height = g_key_file_get_integer(settings_file, CONFIG_GROUP, "height", NULL);
gtk_window_move((GtkWindow*) main_window, root_x, root_y);
if (width > 0 && height > 0) gtk_window_resize((GtkWindow*) main_window, width, height);
resized = TRUE;
}
}
set_main_title(session, NULL); // put here because it should be after set_trayicon()
// load specific session
if (path_set == NULL) is_set = g_key_file_get_boolean(settings_file, session, "is_set", NULL);
if (is_set && path_set == NULL) {
GtkTreeIter iter;
gboolean enabled;
gint i = 0;
GtkTreePath *path = gtk_tree_path_new_first();
while (gtk_tree_model_get_iter((GtkTreeModel*) liststore_session, &iter, path)) {
stmp = g_strconcat("set_session_enabled_", groups[i], NULL);
enabled = g_key_file_get_boolean(settings_file, session, stmp, NULL);
g_free(stmp);
// if (enabled) gtk_list_store_set(liststore_session, &iter, 1, TRUE, -1);
gtk_list_store_set(liststore_session, &iter, 1, enabled, -1);
gtk_tree_path_next(path);
i++;
}
gtk_tree_path_free(path);
} else {
ini_set_entry(settings_file, session, "text_source", "text_source");
ini_set_entry(settings_file, session, "text_dest", "text_dest");
ini_set_entry(settings_file, session, "text_notes", "entry_notes");
ini_set_entry(settings_file, session, "text_com_before", "entry_com_before");
ini_set_entry(settings_file, session, "text_com_after", "entry_com_after");
stmp = g_key_file_get_string(settings_file, session, "text_addit", NULL);
if (stmp == NULL) stmp = g_strconcat("", NULL);
gtk_text_buffer_set_text(gtk_text_view_get_buffer((GtkTextView*) gtk_builder_get_object(builder, "textview_additional")), stmp, -1);
g_free(stmp);
set_checkbox("check_time", g_key_file_get_boolean(settings_file, session, "check_time", NULL));
set_checkbox("check_perm", g_key_file_get_boolean(settings_file, session, "check_perm", NULL));
set_checkbox("check_owner", g_key_file_get_boolean(settings_file, session, "check_owner", NULL));
set_checkbox("check_group", g_key_file_get_boolean(settings_file, session, "check_group", NULL));
set_checkbox("check_onefs", g_key_file_get_boolean(settings_file, session, "check_onefs", NULL));
set_checkbox("check_verbose", g_key_file_get_boolean(settings_file, session, "check_verbose", NULL));
set_checkbox("check_progr", g_key_file_get_boolean(settings_file, session, "check_progr", NULL));
set_checkbox("check_delete", g_key_file_get_boolean(settings_file, session, "check_delete", NULL));
set_checkbox("check_exist", g_key_file_get_boolean(settings_file, session, "check_exist", NULL));
set_checkbox("check_size", g_key_file_get_boolean(settings_file, session, "check_size", NULL));
set_checkbox("check_skipnew", g_key_file_get_boolean(settings_file, session, "check_skipnew", NULL));
set_checkbox("check_windows", g_key_file_get_boolean(settings_file, session, "check_windows", NULL));
set_checkbox("check_sum", g_key_file_get_boolean(settings_file, session, "check_sum", NULL));
set_checkbox("check_symlink", g_key_file_get_boolean(settings_file, session, "check_symlink", NULL));
set_checkbox("check_hardlink", g_key_file_get_boolean(settings_file, session, "check_hardlink", NULL));
set_checkbox("check_dev", g_key_file_get_boolean(settings_file, session, "check_dev", NULL));
set_checkbox("check_update", g_key_file_get_boolean(settings_file, session, "check_update", NULL));
set_checkbox("check_keepart", g_key_file_get_boolean(settings_file, session, "check_keepart", NULL));
set_checkbox("check_mapuser", g_key_file_get_boolean(settings_file, session, "check_mapuser", NULL));
set_checkbox("check_compr", g_key_file_get_boolean(settings_file, session, "check_compr", NULL));
set_checkbox("check_backup", g_key_file_get_boolean(settings_file, session, "check_backup", NULL));
set_checkbox("check_itemized", g_key_file_get_boolean(settings_file, session, "check_itemized", NULL));
set_checkbox("check_norecur", g_key_file_get_boolean(settings_file, session, "check_norecur", NULL));
set_checkbox("check_protectargs", g_key_file_get_boolean(settings_file, session, "check_protectargs", NULL));
set_checkbox("check_com_before", g_key_file_get_boolean(settings_file, session, "check_com_before", NULL));
set_checkbox("check_com_halt", g_key_file_get_boolean(settings_file, session, "check_com_halt", NULL));
set_checkbox("check_com_after", g_key_file_get_boolean(settings_file, session, "check_com_after", NULL));
set_checkbox("check_com_onerror", g_key_file_get_boolean(settings_file, session, "check_com_onerror", NULL));
set_checkbox("check_browse_files", g_key_file_get_boolean(settings_file, session, "check_browse_files", NULL));
#ifndef MAEMO
set_checkbox("check_superuser", g_key_file_get_boolean(settings_file, session, "check_superuser", NULL));
#endif
}
g_key_file_free (settings_file);
GtkWidget *widget = (GtkWidget*) gtk_builder_get_object(builder, "table_set");
is_set ? gtk_widget_show(widget) : gtk_widget_hide(widget);
widget = (GtkWidget*) gtk_builder_get_object(builder, "table_basic");
is_set ? gtk_widget_hide(widget) : gtk_widget_show(widget);
widget = (GtkWidget*) gtk_builder_get_object(builder, "table_advanced");
is_set ? gtk_widget_hide(widget) : gtk_widget_show(widget);
widget = (GtkWidget*) gtk_builder_get_object(builder, "table_extra");
is_set ? gtk_widget_hide(widget) : gtk_widget_show(widget);
}
void save_settings(gchar *session, gchar *filename) {
gchar settings_file_name[MAXPATH], *key_data, *stmp;
FILE *key_file;
GError *error_handler = NULL;
GKeyFile *settings_file;
if (filename == NULL) g_sprintf(settings_file_name, "%s/%s", grsync_dir, "grsync.ini");
else strncpy(settings_file_name, filename, MAXPATH-1);
g_mkdir(grsync_dir, 0700);
settings_file = g_key_file_new();
if (filename == NULL) {
g_key_file_load_from_file(settings_file, settings_file_name, G_KEY_FILE_NONE, NULL);
// save configuration (preferences)
g_key_file_set_string(settings_file, CONFIG_GROUP, "command", config_command);
g_key_file_set_boolean(settings_file, CONFIG_GROUP, "output", config_output);
g_key_file_set_boolean(settings_file, CONFIG_GROUP, "remember", config_remember);
g_key_file_set_boolean(settings_file, CONFIG_GROUP, "errorlist", config_errorlist);
g_key_file_set_boolean(settings_file, CONFIG_GROUP, "logging", config_log);
g_key_file_set_boolean(settings_file, CONFIG_GROUP, "fastscroll", config_fastscroll);
#ifndef MAEMO
g_key_file_set_boolean(settings_file, CONFIG_GROUP, "switchbutton", config_switchbutton);
g_key_file_set_boolean(settings_file, CONFIG_GROUP, "trayicon", config_trayicon);
#endif
if (session_last != -1) g_key_file_set_string(settings_file, CONFIG_GROUP, "last_session", groups[session_last]);
// window position and size
g_key_file_set_integer(settings_file, CONFIG_GROUP, "root_x", root_x);
g_key_file_set_integer(settings_file, CONFIG_GROUP, "root_y", root_y);
g_key_file_set_integer(settings_file, CONFIG_GROUP, "width", width);
g_key_file_set_integer(settings_file, CONFIG_GROUP, "height", height);
}
// save specific session
if (is_set) {
GtkTreeIter iter;
gboolean enabled, cur_is_set;
gint i = 0;
GtkTreePath *path = gtk_tree_path_new_first();
g_key_file_remove_group(settings_file, session, NULL); // empties the group before adding
g_key_file_set_boolean(settings_file, session, "is_set", TRUE);
while (gtk_tree_model_get_iter((GtkTreeModel*) liststore_session, &iter, path)) {
gtk_tree_model_get((GtkTreeModel*) liststore_session, &iter, 2, &cur_is_set, -1);
if (cur_is_set) {
gtk_tree_model_get((GtkTreeModel*) liststore_session, &iter, 1, &enabled, -1);
if (enabled) {
stmp = g_strconcat("set_session_enabled_", groups[i], NULL);
g_key_file_set_boolean(settings_file, session, stmp, TRUE);
g_free(stmp);
}
}
gtk_tree_path_next(path);
i++;
}
gtk_tree_path_free(path);
} else {
g_key_file_set_boolean(settings_file, session, "is_set", FALSE);
g_key_file_set_string(settings_file, session, "text_source", gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_source")));
g_key_file_set_string(settings_file, session, "text_dest", gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_dest")));
g_key_file_set_string(settings_file, session, "text_notes", gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "entry_notes")));
g_key_file_set_string(settings_file, session, "text_com_before", gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "entry_com_before")));
g_key_file_set_string(settings_file, session, "text_com_after", gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "entry_com_after")));
GtkTextIter iter1, iter2;
GtkTextBuffer *buf = gtk_text_view_get_buffer((GtkTextView*) gtk_builder_get_object(builder, "textview_additional"));
gtk_text_buffer_get_start_iter(buf, &iter1);
gtk_text_buffer_get_end_iter(buf, &iter2);
stmp = gtk_text_buffer_get_text(buf, &iter1, &iter2, FALSE);
g_key_file_set_string(settings_file, session, "text_addit", stmp);
g_free(stmp);
g_key_file_set_boolean(settings_file, session, "check_time", get_checkbox("check_time"));
g_key_file_set_boolean(settings_file, session, "check_perm", get_checkbox("check_perm"));
g_key_file_set_boolean(settings_file, session, "check_owner", get_checkbox("check_owner"));
g_key_file_set_boolean(settings_file, session, "check_group", get_checkbox("check_group"));
g_key_file_set_boolean(settings_file, session, "check_onefs", get_checkbox("check_onefs"));
g_key_file_set_boolean(settings_file, session, "check_verbose", get_checkbox("check_verbose"));
g_key_file_set_boolean(settings_file, session, "check_progr", get_checkbox("check_progr"));
g_key_file_set_boolean(settings_file, session, "check_delete", get_checkbox("check_delete"));
g_key_file_set_boolean(settings_file, session, "check_exist", get_checkbox("check_exist"));
g_key_file_set_boolean(settings_file, session, "check_size", get_checkbox("check_size"));
g_key_file_set_boolean(settings_file, session, "check_skipnew", get_checkbox("check_skipnew"));
g_key_file_set_boolean(settings_file, session, "check_windows", get_checkbox("check_windows"));
g_key_file_set_boolean(settings_file, session, "check_sum", get_checkbox("check_sum"));
g_key_file_set_boolean(settings_file, session, "check_symlink", get_checkbox("check_symlink"));
g_key_file_set_boolean(settings_file, session, "check_hardlink", get_checkbox("check_hardlink"));
g_key_file_set_boolean(settings_file, session, "check_dev", get_checkbox("check_dev"));
g_key_file_set_boolean(settings_file, session, "check_update", get_checkbox("check_update"));
g_key_file_set_boolean(settings_file, session, "check_keepart", get_checkbox("check_keepart"));
g_key_file_set_boolean(settings_file, session, "check_mapuser", get_checkbox("check_mapuser"));
g_key_file_set_boolean(settings_file, session, "check_compr", get_checkbox("check_compr"));
g_key_file_set_boolean(settings_file, session, "check_backup", get_checkbox("check_backup"));
g_key_file_set_boolean(settings_file, session, "check_itemized", get_checkbox("check_itemized"));
g_key_file_set_boolean(settings_file, session, "check_norecur", get_checkbox("check_norecur"));
g_key_file_set_boolean(settings_file, session, "check_protectargs", get_checkbox("check_protectargs"));
g_key_file_set_boolean(settings_file, session, "check_com_before", get_checkbox("check_com_before"));
g_key_file_set_boolean(settings_file, session, "check_com_halt", get_checkbox("check_com_halt"));
g_key_file_set_boolean(settings_file, session, "check_com_after", get_checkbox("check_com_after"));
g_key_file_set_boolean(settings_file, session, "check_com_onerror", get_checkbox("check_com_onerror"));
g_key_file_set_boolean(settings_file, session, "check_browse_files", get_checkbox("check_browse_files"));
#ifndef MAEMO
g_key_file_set_boolean(settings_file, session, "check_superuser", get_checkbox("check_superuser"));
#endif
}
key_data = g_key_file_to_data(settings_file, NULL, &error_handler);
key_file = fopen(settings_file_name, "w");
if (key_file != NULL) {
fputs(key_data, key_file);
fclose(key_file);
} else {
g_printf(_("\tUnable to save settings!\n"));
}
g_key_file_free(settings_file);
g_clear_error(&error_handler);
}
int compare_strings(const void *p1, const void *p2) {
return strcoll(*((char**) p1), *((char**) p2));
}
gboolean load_groups(gchar *session) {
gchar settings_file_path[MAXPATH], *stmp;
g_sprintf(settings_file_path, "%s/%s", grsync_dir, "grsync.ini");
if (g_file_test(settings_file_path, G_FILE_TEST_EXISTS)) {
GError *error_handler = NULL;
GKeyFile *settings_file;
GtkComboBox *combo;
GtkTreeIter iter;
gint i;
gboolean flag = FALSE;
combo = (GtkComboBox*) gtk_builder_get_object(builder, "combo_session");
gtk_list_store_clear(liststore_session);
// for (i = 0; i < session_number; i++) gtk_combo_box_remove_text(combo, 0);
settings_file = g_key_file_new();
g_key_file_load_from_file(settings_file, settings_file_path, G_KEY_FILE_NONE, &error_handler);
groups = g_key_file_get_groups(settings_file, &session_number);
if (!cmdline_session && first_load_groups && g_key_file_get_boolean(settings_file, CONFIG_GROUP, "remember", NULL)) {
stmp = g_key_file_get_string(settings_file, CONFIG_GROUP, "last_session", NULL);
if (stmp != NULL) {
session = stmp;
g_free(argv_session);
argv_session = g_strconcat(session, NULL);
}
first_load_groups = FALSE;
}
i = 0;
while (groups[i] != NULL) {
if (strcmp(groups[i], CONFIG_GROUP) == 0) {
session_number--;
g_free(groups[i]);
flag = TRUE;
} else {
if (i > 0 && flag) groups[i - 1] = groups[i];
}
i++;
}
groups[session_number] = NULL;
qsort(groups, session_number, sizeof(gchar*), compare_strings);
i = 0;
while (groups[i] != NULL) {
// gtk_combo_box_append_text(combo, groups[i]);
gtk_list_store_append(liststore_session, &iter);
gtk_list_store_set(liststore_session, &iter, 0, groups[i], 2, !g_key_file_get_boolean(settings_file, groups[i], "is_set", NULL), -1);
if (strcmp(groups[i], session) == 0) {
gtk_combo_box_set_active(combo, i);
session_last = i;
}
i++;
}
if (!filter) {
filter = (GtkTreeModelFilter*) gtk_builder_get_object(builder, "treemodelfilter_set");
gtk_tree_model_filter_set_visible_column(filter, 2);
gtk_tree_model_filter_refilter(filter);
}
g_key_file_free(settings_file);
g_clear_error(&error_handler);
if (session_last == -1) return FALSE;
}
return TRUE;
}
void show_browse_source(GtkButton *button, gpointer user_data) {
GtkWidget *dialog;
gint retval;
gchar *filename;
gboolean browse_files = get_checkbox("check_browse_files");
GtkFileChooserAction action = browse_files ? GTK_FILE_CHOOSER_ACTION_OPEN : GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER;
gchar *curr_path = (gchar*) gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_source"));
gchar *curr_folder = g_path_get_dirname(curr_path);
#ifndef MAEMO
dialog = gtk_file_chooser_dialog_new(_("Browse"), (GtkWindow*) main_window, action, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
#else
dialog = hildon_file_chooser_dialog_new((GtkWindow*) main_window, action);
gtk_window_set_title(GTK_WINDOW (dialog), _("Browse"));
#endif
gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), curr_folder);
if (browse_files) gtk_file_chooser_select_filename(GTK_FILE_CHOOSER(dialog), curr_path);
retval = gtk_dialog_run(GTK_DIALOG(dialog));
if (retval == GTK_RESPONSE_ACCEPT || retval == GTK_RESPONSE_OK) {
filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
// tmp = g_strconcat(filename, browse_files ? "" : "/", NULL);
gtk_entry_set_text((GtkEntry*) gtk_builder_get_object(builder, "text_source"), filename);
g_free(filename);
}
gtk_widget_destroy(dialog);
g_free(curr_folder);
}
void show_browse_dest(GtkButton *button, gpointer user_data) {
GtkWidget *dialog;
gint retval;
gchar *filename;
gboolean browse_files = get_checkbox("check_browse_files");
GtkFileChooserAction action = browse_files ? GTK_FILE_CHOOSER_ACTION_OPEN : GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER;
gchar *curr_path = (gchar*) gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_dest"));
gchar *curr_folder = g_path_get_dirname(curr_path);
#ifndef MAEMO
dialog = gtk_file_chooser_dialog_new(_("Browse"), (GtkWindow*) main_window, action, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
#else
dialog = hildon_file_chooser_dialog_new ((GtkWindow*) main_window, action);
gtk_window_set_title(GTK_WINDOW(dialog), _("Browse"));
#endif
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER(dialog), curr_folder);
if (browse_files) gtk_file_chooser_select_filename(GTK_FILE_CHOOSER(dialog), curr_path);
retval = gtk_dialog_run(GTK_DIALOG(dialog));
if (retval == GTK_RESPONSE_ACCEPT || retval == GTK_RESPONSE_OK) {
filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
gtk_entry_set_text((GtkEntry*) gtk_builder_get_object(builder, "text_dest"), filename);
g_free(filename);
}
gtk_widget_destroy(dialog);
g_free(curr_folder);
}
void set_global_progress(gdouble fraction) {
GTimeVal curtime;
glong elapsed, remaining;
static glong lastupdate = 0;
gchar tmps[50];
GtkProgressBar* progr = (GtkProgressBar*) gtk_builder_get_object(builder, "progress_global");
g_get_current_time(&curtime);
if (fraction > (gdouble)0 && fraction < (gdouble)1 && curtime.tv_sec == lastupdate) return;
lastupdate = curtime.tv_sec;
#ifdef HAVE_UNITY
UnityLauncherEntry *launcher_entry = unity_launcher_entry_get_for_desktop_id("grsync.desktop");
unity_launcher_entry_set_progress(launcher_entry, fraction);
unity_launcher_entry_set_progress_visible(launcher_entry, fraction > (gdouble)0);
#endif
gtk_progress_bar_set_fraction(progr, fraction);
elapsed = curtime.tv_sec - startime.tv_sec;
remaining = elapsed / fraction - elapsed;
if (fraction) snprintf(tmps, 49, _("%.f%% (%li:%02li elapsed, %li:%02li remaining)"), round(fraction * 100), elapsed / 60, elapsed % 60, remaining / 60, remaining % 60);
else strcpy(tmps, "0%");
gtk_progress_bar_set_text(progr, tmps);
set_main_title(groups[session_last], tmps);
}
void set_file_progress(gdouble fraction) {
GTimeVal curtime;
static glong lastupdate = 0;
gchar tmps[50];
GtkProgressBar* progr = (GtkProgressBar*) gtk_builder_get_object(builder, "progress_file");
g_get_current_time(&curtime);
if (fraction < (gdouble)1 && curtime.tv_sec == lastupdate) return;
lastupdate = curtime.tv_sec;
gtk_progress_bar_set_fraction(progr, fraction);
snprintf(tmps, 5, "%.f%%", round(fraction * 100));
gtk_progress_bar_set_text(progr, tmps);
}
void build_rsync_cmd() {
gint i = 0, j, argc_tmp;
gchar **argv_tmp, *gtmp;
GtkTextIter iter1, iter2;
GtkTextBuffer *buf;
argv = g_new(gchar *, MAXOPT);
argv_tmp = g_new(gchar *, MAXOPT);
#ifndef MAEMO
if (get_checkbox("check_superuser")) argv[i++] = "pkexec";
#endif
argv[i++] = config_command;
argv[i++] = get_checkbox("check_norecur") ? "-d" : "-r";
if (dryrunning) argv[i++] = "-n";
if (get_checkbox("check_time")) argv[i++] = "-t";
if (get_checkbox("check_perm")) argv[i++] = "-p";
if (get_checkbox("check_owner")) argv[i++] = "-o";
if (get_checkbox("check_group")) argv[i++] = "-g";
if (get_checkbox("check_onefs")) argv[i++] = "-x";
if (get_checkbox("check_verbose")) argv[i++] = "-v";
if (get_checkbox("check_progr")) argv[i++] = "--progress";
if (get_checkbox("check_delete")) argv[i++] = "--delete";
if (get_checkbox("check_exist")) argv[i++] = "--ignore-existing";
if (get_checkbox("check_size")) argv[i++] = "--size-only";
if (get_checkbox("check_skipnew")) argv[i++] = "-u";
if (get_checkbox("check_windows")) argv[i++] = "--modify-window=1";
if (get_checkbox("check_sum")) argv[i++] = "-c";
if (get_checkbox("check_symlink")) argv[i++] = "-l";
if (get_checkbox("check_hardlink")) argv[i++] = "-H";
if (get_checkbox("check_dev")) argv[i++] = "-D";
if (get_checkbox("check_update")) argv[i++] = "--existing";
if (get_checkbox("check_keepart")) argv[i++] = "--partial";
if (get_checkbox("check_mapuser")) argv[i++] = "--numeric-ids";
if (get_checkbox("check_compr")) argv[i++] = "-z";
if (get_checkbox("check_backup")) argv[i++] = "-b";
if (get_checkbox("check_itemized")) argv[i++] = "-i";
if (get_checkbox("check_protectargs")) argv[i++] = "-s";
buf = gtk_text_view_get_buffer((GtkTextView*) gtk_builder_get_object(builder, "textview_additional"));
gtk_text_buffer_get_start_iter(buf, &iter1);
gtk_text_buffer_get_end_iter(buf, &iter2);
gtmp = gtk_text_buffer_get_text(buf, &iter1, &iter2, FALSE);
if (gtmp[0]) {
g_shell_parse_argv(gtmp, &argc_tmp, &argv_tmp, NULL);
for (j = 0; j < argc_tmp && i + 3 < MAXOPT; j++) argv[i++] = g_strconcat(argv_tmp[j], NULL);
g_strfreev(argv_tmp);
}
g_free(gtmp);
// source, dest and NULL must follow only, or change the previous for cicle ending condition.
argv[i++] = (gchar*) gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_source"));
argv[i++] = (gchar*) gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_dest"));
argv[i++] = NULL;
}
gboolean set_next() {
static gint i = -1;
gboolean enabled, more;
GtkTreeIter iter;
if (i == -1) {
session_set = session_last;
path_set = gtk_tree_path_new_first();
i = 0;
first = TRUE;
} else {
first = FALSE;
}
while ((more = gtk_tree_model_get_iter((GtkTreeModel*) liststore_session, &iter, path_set))) {
gtk_tree_model_get((GtkTreeModel*) liststore_session, &iter, 1, &enabled, -1);
gtk_tree_path_next(path_set);
i++;
if (enabled) {
session_last = i - 1;
load_settings(groups[session_last], NULL);
break;
}
}
if (!more) {
session_last = session_set;
session_set = -1;
gtk_tree_path_free(path_set);
path_set = NULL;
i = -1;
}
return more;
}
void on_play_clicked(GtkButton *button, gpointer user_data) {
gchar *gtmp;
if (is_set) {
more = set_next();
if (!more) return;
}
build_rsync_cmd();
paused = FALSE;
// scroll_previous_run = 0;
gtk_expander_set_expanded((GtkExpander*) gtk_builder_get_object(builder, "expander_rsync"), config_output || dryrunning);
// with expander initialized, let's resize the window:
on_expander_rsync_activate((GtkExpander*) gtk_builder_get_object(builder, "expander_rsync"), NULL);
if (!is_set || first) {
if (error_list != NULL) g_free(error_list);
error_list = g_strconcat("", NULL);
}
if (config_log) {
gtmp = g_strconcat(grsync_dir, "/", groups[session_last], ".log", NULL);
log_file = fopen(gtmp, "a");
g_free(gtmp);
}
set_rsync_title(groups[session_last], "running");
gtk_button_set_label((GtkButton*) gtk_builder_get_object(builder, "close"), "gtk-stop");
gtk_button_set_label((GtkButton*) gtk_builder_get_object(builder, "button_pause"), "gtk-media-pause");
gtk_widget_set_sensitive((GtkWidget*) gtk_builder_get_object(builder, "button_pause"), TRUE);
gtk_widget_set_sensitive((GtkWidget*) gtk_builder_get_object(builder, "button_show_errors"), FALSE);
gtk_widget_set_sensitive((GtkWidget*) gtk_builder_get_object(builder, "textview_output"), FALSE);
gtk_window_set_urgency_hint((GtkWindow*) rsync_window, FALSE);
set_file_progress(0);
set_global_progress(0);
gtk_label_set_text((GtkLabel*) gtk_builder_get_object(builder, "label_file"), dryrunning ? _("Simulation in progress") : "");
if (!is_set || first) gtk_widget_show(rsync_window);
else on_rsync_show(NULL, NULL);
}
void on_dryrun_clicked(GtkButton *button, gpointer user_data) {
dryrunning = TRUE;
on_play_clicked(button, NULL);
}
void set_tooltip(gchar *long_opt, gchar *widget_str) {
gchar *tmpc, *tmpc2, *out, *opt, *oldtip;
GtkWidget *widget;
opt = rsync_man != NULL ? g_strconcat(long_opt, "\n", NULL) : g_strconcat(long_opt, " ", NULL);
out = rsync_man != NULL ? g_strconcat(rsync_man, NULL) : g_strconcat(rsync_help, NULL);
tmpc = g_strrstr(out, opt);
// tmpc = g_strstr_len(out, strlen(out), opt);
if (tmpc != NULL && *tmpc) {
while (*tmpc != '\n') tmpc--;
tmpc++;
tmpc2 = rsync_man != NULL ? strstr(tmpc, "\n\n\n") : strchr(tmpc, '\n');
*tmpc2 = '\0';
g_strstrip(tmpc);
widget = (GtkWidget*) gtk_builder_get_object(builder, widget_str);
oldtip = gtk_widget_get_tooltip_text(widget);
if (oldtip != NULL) {
tmpc2 = g_strconcat(tmpc, "\n\n", oldtip, NULL);
g_free(oldtip);
}
else tmpc2 = g_strconcat(tmpc, NULL);
gtk_widget_set_tooltip_text(widget, tmpc2);
g_free(tmpc2);
}
g_free(opt);
g_free(out);
}
void on_main_create(GtkWindow *window, gpointer user_data) {
GtkWidget *error;
gchar *stmp;
grsync_dir = g_strconcat(g_get_home_dir(), "/.grsync", NULL);
if (!load_groups(argv_session)) {
#ifndef MAEMO
error = gtk_message_dialog_new(window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CANCEL,
_("The session you specified on the command line doesn't exists"));
gtk_dialog_run(GTK_DIALOG(error));
gtk_widget_destroy(error);
#else
error = hildon_banner_show_information(GTK_WIDGET (window),NULL,
_("The session you specified on the command line doesn't exists"));
hildon_banner_set_timeout(HILDON_BANNER (error),4000);
#endif
g_free(argv_session);
argv_session = g_strconcat("default", NULL);
cmdline_execute = FALSE;
load_groups(argv_session);
}
load_settings(argv_session, NULL);
stmp = g_strconcat(config_command, " --help", NULL);
if (!g_spawn_command_line_sync(stmp, &rsync_help, NULL, NULL, NULL)) {
#ifndef MAEMO
error = gtk_message_dialog_new(window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CANCEL,
_("Unable to execute the rsync command line tool. It is needed by this program. You may need to install the rsync package or make it available in the default executable search PATH. See file/preferences to change the default rsync executable command."));
#else
error = hildon_note_new_information(GTK_WINDOW (window),
_("Unable to execute the rsync command line tool. It is needed by this program. You may need to install the rsync package or make it available in the default executable search PATH. See file/preferences to change the default rsync executable command."));
#endif
gtk_dialog_run(GTK_DIALOG(error));
gtk_widget_destroy(error);
} else {
// g_spawn_command_line_sync("man rsync", &rsync_man, NULL, NULL, NULL);
// g_spawn_command_line_sync("sh -c 'info rsync | egrep -A9999 \"OPTIONS$\" | grep -B9999 \"DAEMON OPTIONS\"'", &rsync_man, NULL, NULL, NULL);
set_tooltip("--times", "check_time");
set_tooltip("--perms", "check_perm");
set_tooltip("--owner", "check_owner");
set_tooltip("--group", "check_group");
set_tooltip("--one-file-system", "check_onefs");
set_tooltip("--verbose", "check_verbose");
set_tooltip("--progress", "check_progr");
set_tooltip("--delete", "check_delete");
set_tooltip("--ignore-existing", "check_exist");
set_tooltip("--size-only", "check_size");
set_tooltip("--update", "check_skipnew");
set_tooltip("--modify-window=NUM", "check_windows");
set_tooltip("--checksum", "check_sum");
set_tooltip("--hard-links", "check_hardlink");
set_tooltip("-D", "check_dev");
set_tooltip("--existing", "check_update");
set_tooltip("--partial", "check_keepart");
set_tooltip("--numeric-ids", "check_mapuser");
set_tooltip("--compress", "check_compr");
set_tooltip("--backup", "check_backup");
set_tooltip("--itemize-changes", "check_itemized");
set_tooltip("--protect-args", "check_protectargs");
}
g_free(stmp);
rsync_window = (GtkWidget*) gtk_builder_get_object(builder, "dialog_rsync");
gtk_window_get_size((GtkWindow*) rsync_window, &initial_width, &initial_height);
if (cmdline_execute) on_play_clicked((GtkButton*) window, NULL);
if (cmdline_import) on_import1_activate((GtkMenuItem*) window, argv_filename);
}
void on_main_destroy(GtkObject *object, gpointer user_data) {
gint sel = gtk_combo_box_get_active((GtkComboBox*) gtk_builder_get_object(builder, "combo_session"));
save_settings(groups[sel], NULL);
g_strfreev(groups);
if (rsync_help != NULL) g_free(rsync_help);
if (rsync_man != NULL) g_free(rsync_man);
gtk_main_quit();
}
gboolean on_main_configure_event(GtkWidget *widget, GdkEventConfigure *event, gpointer user_data) {
gtk_window_get_position((GtkWindow*) main_window, &root_x, &root_y);
gtk_window_get_size((GtkWindow*) main_window, &width, &height);
return FALSE;
}
void superkill(int sig) {
if (get_checkbox("check_superuser")) {
gchar *cmd;
gchar pidbuf[6], sigbuf[6];
sprintf(pidbuf, "%i", rsync_pid);
sprintf(sigbuf, "%i", sig);
cmd = g_strconcat("pkexec kill -", sigbuf, " ", pidbuf, NULL);
g_spawn_command_line_sync(cmd, NULL, NULL, NULL, NULL);
g_free(cmd);
} else {
kill(rsync_pid, sig);
}
}
void on_close_clicked(GtkButton *button, gpointer user_data) {
if (rsync_pid) {
if (paused) superkill(SIGCONT);
superkill(SIGTERM);
gtk_widget_set_sensitive((GtkWidget*) gtk_builder_get_object(builder, "button_pause"), FALSE);
} else {
if (more) on_play_clicked(NULL, NULL); //on_rsync_show(NULL, NULL);
else {
set_global_progress(0);
gtk_widget_hide(rsync_window);
}
}
if (cmdline_execute) on_main_destroy((GtkObject*) main_window, NULL);
}
void scroll_to_end(GtkTextView* view, gboolean final) {
GTimeVal curtime;
// if (config_fastscroll && !final) g_get_current_time(&curtime);
g_get_current_time(&curtime);
if (!config_fastscroll || final || curtime.tv_sec - scroll_previous_run >= 1) {
GtkTextBuffer *buffer;
GtkTextIter iter;
GtkTextMark *mark;
scroll_previous_run = curtime.tv_sec;
buffer = gtk_text_view_get_buffer(view);
gtk_text_buffer_get_end_iter(buffer, &iter);
mark = gtk_text_buffer_create_mark(buffer, "end_mark", &iter, TRUE);
gtk_text_view_scroll_mark_onscreen(view, mark);
gtk_text_buffer_delete_mark(buffer, mark);
}
}
void rsync_cleanup(gpointer data) {
GtkTextBuffer *buffer;
GtkTextView *view;
gchar *comm_str, *comm_out, *comm_err, *comm_after;
view = (GtkTextView*) gtk_builder_get_object(builder, "textview_output");
if (get_checkbox("check_com_after")) {
if (had_error || !get_checkbox("check_com_onerror")) {
comm_str = (gchar*) gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "entry_com_after"));
if (!g_spawn_command_line_sync(comm_str, &comm_out, &comm_err, NULL, NULL)) {
comm_out = g_strconcat("", NULL);
comm_err = g_strconcat("Error launching command!\n", NULL);
}
comm_after = g_strconcat("\n", _("** Launching AFTER command:\n"), comm_str, "\n", comm_out, comm_err, NULL);
g_free(comm_out);
g_free(comm_err);
buffer = gtk_text_view_get_buffer(view);
gtk_text_buffer_insert_at_cursor(buffer, comm_after, -1);
scroll_to_end(view, FALSE);
if (config_log) fputs(comm_after, log_file);
g_free(comm_after);
}
}
gtk_button_set_label((GtkButton*) gtk_builder_get_object(builder, "close"), "gtk-close");
GtkLabel *tmpl = (GtkLabel*) gtk_builder_get_object(builder, "label_file");
if (had_error) {
gtk_label_set_markup(tmpl, _("Completed with errors!"));
gtk_widget_set_sensitive((GtkWidget*) gtk_builder_get_object(builder, "button_show_errors"), TRUE);
} else {
gtk_label_set_markup(tmpl, _("Completed successfully!"));
}
set_global_progress(1);
gtk_widget_set_sensitive((GtkWidget*) gtk_builder_get_object(builder, "button_pause"), FALSE);
gtk_widget_set_sensitive((GtkWidget*) view, TRUE);
set_rsync_title(groups[session_last], "stopped");
g_io_channel_unref(chout);
g_io_channel_unref(cherr);
g_spawn_close_pid(rsync_pid);
scroll_to_end(view, TRUE);
rsync_pid = 0;
g_free(argv);
if (watch_oldfile != NULL) g_free(watch_oldfile);
watch_oldfile = NULL;
if (config_errorlist && had_error) on_button_show_errors_clicked(NULL, NULL);
else gtk_window_set_urgency_hint((GtkWindow*) rsync_window, TRUE);
set_trayicon_icon(FALSE);
if (more || (cmdline_execute && !(config_errorlist && had_error) && !cmdline_stayopen)) on_close_clicked(NULL, NULL);
if (log_file != NULL) {
fputs("\n", log_file);
fclose(log_file);
log_file = NULL;
}
set_main_title(groups[session_last], NULL);
}
gboolean out_watch(GIOChannel *source, GIOCondition condition, gpointer data) {
GtkTextBuffer *buffer;
GtkTextIter iter, iter2;
GString *str;
static gchar *carriage = NULL;
gchar *file;
gdouble fraction, done, total;
if (condition & G_IO_IN) {
buffer = gtk_text_view_get_buffer((GtkTextView*)data);
if (carriage != NULL) {
gtk_text_buffer_get_iter_at_line(buffer, &iter, gtk_text_buffer_get_line_count(buffer) - 2);
gtk_text_buffer_get_end_iter(buffer, &iter2);
gtk_text_buffer_delete(buffer, &iter, &iter2);
}
str = g_string_new("");
g_io_channel_read_line_string(source, str, NULL, NULL);
carriage = strchr(str->str, '\r');
gtk_text_buffer_insert_at_cursor(buffer, (gchar*)str->str, -1);
scroll_to_end((GtkTextView*)data, FALSE);
if (config_log) fputs((gchar*)str->str, log_file);
if (!dryrunning) {
if (strchr(str->str, '%') && str->str[0] == ' ') {
if (watch_oldfile != NULL) file = g_strconcat(watch_oldfile, NULL);
else file = g_strconcat(str->str, NULL);
fraction = g_ascii_strtod(strchr(strchr(str->str, '%') - 4, ' '), NULL) / 100;
set_file_progress(fraction);
fraction = 0;
if (strchr(str->str, '%') != strrchr(str->str, '%')) fraction = g_ascii_strtod(strchr(strrchr(str->str, '%') - 6, ' '), NULL) / 100;
else if (strchr(str->str, '=')) {
total = g_ascii_strtod(strrchr(str->str, '/') + 1, NULL);
done = total - g_ascii_strtod(strrchr(str->str, '=') + 1, NULL);
fraction = done / total;
}
if (fraction) set_global_progress(fraction);
} else {
file = g_strconcat(str->str, NULL);
if (watch_oldfile != NULL) g_free(watch_oldfile);
watch_oldfile = g_strconcat(str->str, NULL);
}
g_strchomp(file);
if (file[0] != 0) gtk_label_set_text((GtkLabel*) gtk_builder_get_object(builder, "label_file"), file);
g_free(file);
}
g_string_free(str, TRUE);
must_scroll = TRUE;
} else {
// if (condition & G_IO_HUP || condition & G_IO_ERR) {
// g_io_channel_shutdown(source, FALSE, NULL);
// rsync_cleanup(data);
return FALSE;
}
return TRUE;
}
gboolean err_watch(GIOChannel *source, GIOCondition condition, gpointer data) {
GtkTextBuffer *buffer;
GtkTextIter iter;
GString *str;
gchar *tmpc;
if (condition & G_IO_IN) {
buffer = gtk_text_view_get_buffer((GtkTextView*)data);
str = g_string_new("");
g_io_channel_read_line_string(source, str, NULL, NULL);
if (str->len > 2) had_error = TRUE;
gtk_text_buffer_get_end_iter(buffer, &iter);
gtk_text_buffer_insert_with_tags_by_name(buffer, &iter, (gchar*)str->str, -1, "fore-red", NULL);
scroll_to_end((GtkTextView*)data, FALSE);
if (config_log) fputs((gchar*)str->str, log_file);
tmpc = g_strconcat(error_list, str->str, NULL);
g_free(error_list);
error_list = tmpc;
g_string_free(str, TRUE);
must_scroll = TRUE;
} else {
// if (condition & G_IO_HUP || condition & G_IO_ERR) {
// g_io_channel_shutdown(source, FALSE, NULL);
// rsync_cleanup(data);
return FALSE;
}
return TRUE;
}
void child_watch(GPid pid, gint status, gpointer data) {
GtkTextBuffer *buffer;
GtkTextIter iter;
gchar *tmpc, *str, buf[5];
sprintf(buf, "%i", WEXITSTATUS(status));
str = g_strconcat(_("Rsync process exit status: "), buf, "\n", NULL);
buffer = gtk_text_view_get_buffer((GtkTextView*)data);
if (status == 0) {
gtk_text_buffer_insert_at_cursor(buffer, str, -1);
} else {
gtk_text_buffer_get_end_iter(buffer, &iter);
gtk_text_buffer_insert_with_tags_by_name(buffer, &iter, str, -1, "fore-red", NULL);
tmpc = g_strconcat(error_list, str, NULL);
g_free(error_list);
error_list = tmpc;
had_error = TRUE;
}
scroll_to_end((GtkTextView*)data, FALSE);
if (config_log) fputs(str, log_file);
g_free(str);
rsync_cleanup(NULL);
must_scroll = TRUE;
}
#if defined(__FreeBSD__) || defined(__APPLE__)
gboolean child_timeout(gpointer data) {
gint status;
if (waitpid(rsync_pid, &status, WNOHANG) > 0) {
child_watch(rsync_pid, status, data);
return FALSE;
}
return TRUE;
}
#endif
gboolean scroll_idle(gpointer data) {
scroll_to_end(data, TRUE);
return FALSE;
}
void on_rsync_show(GtkWidget *widget, gpointer user_data) {
gint out, err;
GtkTextBuffer *buffer;
GtkTextView *view;
static GtkTextTag *tag = NULL;
GtkWidget *error;
gchar *comm_str, *comm_text, *comm_out, *comm_err, *comm_before, *tmpc;
gboolean halt = FALSE;
time_t rawtime;
rsync_pid = 0;
if (!is_set || first) had_error = FALSE;
gtk_label_set_ellipsize((GtkLabel*) gtk_builder_get_object(builder, "label_file"), PANGO_ELLIPSIZE_MIDDLE);
if (get_checkbox("check_com_before")) {
comm_str = (gchar*) gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "entry_com_before"));
if (!g_spawn_command_line_sync(comm_str, &comm_out, &comm_err, &err, NULL) || err) {
comm_out = g_strconcat("", NULL);
comm_err = g_strconcat("Error launching command!\n", NULL);
if (get_checkbox("check_com_halt")) halt = TRUE;
}
comm_before = g_strconcat(_("** Launching BEFORE command:\n"), comm_str, "\n", comm_out, comm_err, "\n", NULL);
g_free(comm_out);
g_free(comm_err);
} else {
comm_before = g_strconcat("", NULL);
}
comm_str = g_strjoinv(" ", argv);
if (halt) tmpc = "";
else {
if (dryrunning) tmpc =_("** Launching RSYNC command (simulation mode):\n");
else tmpc = _("** Launching RSYNC command:\n");
}
time(&rawtime);
comm_text = g_strconcat("**** ", groups[session_last], " - ", ctime(&rawtime), "\n", comm_before, tmpc, comm_str, "\n\n", NULL);
g_free(comm_before);
g_free(comm_str);
view = (GtkTextView*)gtk_builder_get_object(builder, "textview_output");
PangoFontDescription *font_desc = pango_font_description_from_string("monospace 10");
gtk_widget_modify_font((GtkWidget*) view, font_desc);
pango_font_description_free(font_desc);
buffer = gtk_text_view_get_buffer(view);
if (is_set && !first) gtk_text_buffer_insert_at_cursor(buffer, "\n", -1);
else gtk_text_buffer_set_text(buffer, "", -1);
gtk_text_buffer_insert_at_cursor(buffer, comm_text, -1);
if (config_log) fputs(comm_text, log_file);
g_free(comm_text);
g_get_current_time(&startime);
if (!halt && g_spawn_async_with_pipes(NULL, argv, NULL, G_SPAWN_SEARCH_PATH | G_SPAWN_DO_NOT_REAP_CHILD, NULL, NULL, &rsync_pid, NULL, &out, &err, NULL)) {
set_trayicon_icon(TRUE);
chout = g_io_channel_unix_new(out);
cherr = g_io_channel_unix_new(err);
g_io_channel_set_flags(chout, G_IO_FLAG_NONBLOCK, NULL);
g_io_channel_set_flags(cherr, G_IO_FLAG_NONBLOCK, NULL);
// g_io_channel_set_buffer_size(chout, 32); g_io_channel_set_encoding(chout, NULL, NULL); g_io_channel_set_buffered(chout, FALSE);
if (tag == NULL) tag = gtk_text_buffer_create_tag(buffer, "fore-red", "foreground", "red", NULL);
g_io_add_watch_full(chout, G_PRIORITY_DEFAULT_IDLE - 10, G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_PRI | G_IO_NVAL, out_watch, view, NULL);
g_io_add_watch_full(cherr, G_PRIORITY_DEFAULT_IDLE - 10, G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_PRI | G_IO_NVAL, err_watch, view, NULL);
g_io_channel_set_close_on_unref(chout, TRUE);
g_io_channel_set_close_on_unref(cherr, TRUE);
#if defined(__FreeBSD__) || defined(__APPLE__)
g_timeout_add_seconds(1, child_timeout, view);
#else
g_child_watch_add_full(G_PRIORITY_DEFAULT_IDLE, rsync_pid, child_watch, view, NULL);
#endif
} else {
gtk_button_set_label((GtkButton*) gtk_builder_get_object(builder, "close"), "gtk-close");
gtk_widget_set_sensitive((GtkWidget*) gtk_builder_get_object(builder, "button_pause"), FALSE);
gtk_widget_set_sensitive((GtkWidget*) view, TRUE);
if (!halt) {
#ifndef MAEMO
error = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CANCEL, _("Cannot execute rsync"));
gtk_dialog_run(GTK_DIALOG(error));
gtk_widget_destroy(error);
#else
error = hildon_banner_show_information(GTK_WIDGET(main_window), NULL, _("Cannot execute rsync"));
hildon_banner_set_timeout(HILDON_BANNER(error), 4000);
#endif
}
}
}
void on_rsync_hide(GtkObject *object, gpointer user_data) {
if (rsync_pid) {
if (paused) superkill(SIGCONT);
superkill(SIGTERM);
}
dryrunning = FALSE;
}
void on_combo_session_changed(GtkComboBox *combobox, gpointer user_data) {
gint sel = gtk_combo_box_get_active((GtkComboBox*) gtk_builder_get_object(builder, "combo_session"));
if (session_last != -1 && sel != session_last) {
save_settings(groups[session_last], NULL);
session_last = sel;
load_settings(groups[session_last], NULL);
}
}
void on_session_add_clicked(GtkButton *button, gpointer user_data) {
GtkWidget *add, *confirm;
gint result, i = 0;
add = (GtkWidget*) gtk_builder_get_object(builder, "dialog_new_session");
gtk_editable_select_region((GtkEditable*) gtk_builder_get_object(builder, "entry_session_name"), 0, -1);
gtk_widget_grab_focus((GtkWidget*) gtk_builder_get_object(builder, "entry_session_name"));
result = gtk_dialog_run ((GtkDialog*) add);
if (result == GTK_RESPONSE_OK) {
save_settings(groups[session_last], NULL);
gchar *newses;
newses = (gchar*) gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "entry_session_name"));
is_set = get_checkbox("checkbutton_isset");
if (strcmp(CONFIG_GROUP, newses) == 0 || strcmp("", newses) == 0 || strchr(newses, '/') != NULL) {
#ifndef MAEMO
confirm = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR,
GTK_BUTTONS_CANCEL, _("This session name is reserved, you cannot call it like this"));
gtk_dialog_run(GTK_DIALOG(confirm));
gtk_widget_destroy(confirm);
#else
confirm = hildon_banner_show_information(GTK_WIDGET (main_window),NULL,
_("This session name is reserved, you cannot call it like this"));
hildon_banner_set_timeout(HILDON_BANNER (confirm),4000);
#endif
gtk_widget_hide(add);
return;
}
while (groups[i] != NULL && strcmp(groups[i], newses)) i++;
if (groups[i] != NULL) {
#ifndef MAEMO
confirm = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR,
GTK_BUTTONS_CANCEL, _("A session named like this already exists"));
gtk_dialog_run(GTK_DIALOG(confirm));
gtk_widget_destroy(confirm);
#else
confirm = hildon_banner_show_information(GTK_WIDGET (main_window),NULL,
_("A session named like this already exists"));
hildon_banner_set_timeout(HILDON_BANNER (confirm),4000);
#endif
gtk_widget_hide(add);
return;
}
save_settings(newses, NULL);
session_number++;
session_last = -1; // added because of save session bug, copied from external patch
load_groups(newses);
load_settings(newses, NULL);
}
gtk_widget_hide(add);
}
void on_session_del_clicked(GtkButton *button, gpointer user_data) {
gchar settings_file_name[MAXPATH], *key_data;
FILE *key_file;
GError *error_handler = NULL;
GKeyFile *settings_file;
gint i, result;
GtkWidget *confirm;
i = gtk_combo_box_get_active((GtkComboBox*) gtk_builder_get_object(builder, "combo_session"));
if (strcmp(groups[i], "default") == 0) {
#ifndef MAEMO
confirm = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR,
GTK_BUTTONS_CANCEL, _("You cannot delete the default session"));
gtk_dialog_run(GTK_DIALOG(confirm));
gtk_widget_destroy(confirm);
#else
confirm = hildon_banner_show_information(GTK_WIDGET (main_window),NULL,
_("You cannot delete the default session"));
hildon_banner_set_timeout(HILDON_BANNER (confirm),4000);
#endif
return;
}
#ifndef MAEMO
confirm = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION,
GTK_BUTTONS_OK_CANCEL, _("Are you sure you want to delete the '%s' session?"), groups[i]);
#else
gchar conftxt[255];
g_sprintf(conftxt,_("Are you sure you want to delete the '%s' session?"),groups[i]);
confirm = hildon_note_new_confirmation (GTK_WINDOW (main_window),conftxt);
#endif
result = gtk_dialog_run(GTK_DIALOG(confirm));
gtk_widget_destroy(confirm);
if (result == GTK_RESPONSE_OK) {
g_sprintf(settings_file_name, "%s/%s", grsync_dir, "grsync.ini");
settings_file = g_key_file_new();
g_key_file_load_from_file(settings_file, settings_file_name, G_KEY_FILE_NONE, NULL);
g_key_file_remove_group(settings_file, groups[i], &error_handler);
key_data = g_key_file_to_data(settings_file, NULL, &error_handler);
key_file = fopen(settings_file_name, "w");
if (key_file != NULL) {
fputs(key_data, key_file);
fclose(key_file);
} else {
g_printf(_("\tUnable to save settings!\n"));
}
g_key_file_free(settings_file);
g_clear_error(&error_handler);
session_last = -1;
load_groups("default");
load_settings("default", NULL);
}
}
void on_button_about_clicked(GtkButton *button, gpointer user_data) {
gchar *artists[] = {
_("Application icons by Roberto Gadotti "),
NULL
};
gchar *authors[] = {
_("Written by Piero Orsoni "),
_("Maemo compatibility by Luca Donaggio "),
_("Additional bug-fixing by Luca Marturana "),
_("Dutch translation by Frank de Bruijn "),
_("Simplified Chinese translation by Xie Yanbo "),
_("French translation by xavier "),
_("Swedish translation by Daniel Nylander "),
_("Turkish translation by Doruk Fisek "),
_("Russian translation by Evgenii Terechkov "),
_("German translation by Martin Lettner "),
_("Spanish translation by Ibon Castilla Varela "),
_("Czech translation by Martin Balajka "),
_("Galician translation by Daniel Espinheira "),
_("Catalan translation by Josep SÃ nchez "),
_("Brazilian Portuguese translation by Fábio Nogueira "),
_("Indonesian translation by Waluyo Adi Siswanto "),
_("Croatian translation by Bojan Vondra "),
NULL
};
gtk_show_about_dialog((GtkWindow*) main_window, "name", PACKAGE, "version", VERSION, "comments", _("Synchronize files and folders (a GTK GUI for rsync)."),
"copyright", _("(C) Piero Orsoni and others. Released under the GPL.\nSee COPYING for details"),
"website", "http://www.opbyte.it/grsync/", "artists", artists, "authors", authors, NULL);
}
void on_button_switch_clicked(GtkButton *button, gpointer user_data) {
const gchar *tmps, *tmpd;
gchar *tmp;
tmps = gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_source"));
tmpd = gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "text_dest"));
tmp = g_strconcat(tmps, NULL);
gtk_entry_set_text((GtkEntry*) gtk_builder_get_object(builder, "text_source"), tmpd);
gtk_entry_set_text((GtkEntry*) gtk_builder_get_object(builder, "text_dest"), tmp);
g_free(tmp);
}
void on_button_pause_clicked(GtkButton *button, gpointer user_data) {
GtkButton *tmpbutt = (GtkButton*) gtk_builder_get_object(builder, "button_pause");
GTimeVal tmptime;
if (paused) {
if (rsync_pid) superkill(SIGCONT);
gtk_button_set_label(tmpbutt, "gtk-media-pause");
set_rsync_title(groups[session_last], "running");
g_get_current_time(&tmptime);
startime.tv_sec += tmptime.tv_sec - pausedtime.tv_sec;
startime.tv_usec += tmptime.tv_usec - pausedtime.tv_usec;
} else {
if (rsync_pid) superkill(SIGSTOP);
gtk_button_set_label(tmpbutt, "gtk-media-play");
set_rsync_title(groups[session_last], "paused");
g_get_current_time(&pausedtime);
g_idle_add(scroll_idle, gtk_builder_get_object(builder, "textview_output"));
}
paused = !paused;
}
void on_preferences1_activate(GtkMenuItem *menuitem, gpointer user_data) {
GtkWidget *config;
gint result;
config = (GtkWidget*) gtk_builder_get_object(builder, "dialog_config");
gtk_entry_set_text((GtkEntry*) gtk_builder_get_object(builder, "entry_command"), config_command);
set_checkbox("check_output", config_output);
set_checkbox("check_remember", config_remember);
set_checkbox("check_errorlist", config_errorlist);
set_checkbox("check_log", config_log);
set_checkbox("check_fastscroll", config_fastscroll);
#ifndef MAEMO
set_checkbox("check_switchbutton", config_switchbutton);
set_checkbox("check_trayicon", config_trayicon);
#endif
result = gtk_dialog_run((GtkDialog*) config);
if (result == GTK_RESPONSE_OK) {
strncpy(config_command, gtk_entry_get_text((GtkEntry*) gtk_builder_get_object(builder, "entry_command")), MAXPATH - 1);
config_output = get_checkbox("check_output");
config_remember = get_checkbox("check_remember");
config_errorlist = get_checkbox("check_errorlist");
config_log = get_checkbox("check_log");
config_fastscroll = get_checkbox("check_fastscroll");
#ifndef MAEMO
config_switchbutton = get_checkbox("check_switchbutton");
// gtk_widget_set_visible((GtkWidget*) gtk_builder_get_object(builder, "button_switch"), config_switchbutton); ONLY WORKS IN GTK 2.18
config_switchbutton ? gtk_widget_show((GtkWidget*) gtk_builder_get_object(builder, "button_switch")) :
gtk_widget_hide((GtkWidget*) gtk_builder_get_object(builder, "button_switch"));
config_trayicon = get_checkbox("check_trayicon");
set_trayicon(config_trayicon);
#endif
}
gtk_widget_hide(config);
}
void on_rsync_info_activate(GtkMenuItem *menuitem, gpointer user_data) {
GtkWidget *dialog;
#ifdef MAEMO
GtkWidget *panarea, *label;
#endif
gchar *tmps, *result;
tmps = g_strconcat(config_command, " --version", NULL);
g_spawn_command_line_sync(tmps, &result, NULL, NULL, NULL);
#ifndef MAEMO
dialog = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", result);
#else
dialog = gtk_dialog_new();
gtk_window_set_default_size(GTK_WINDOW (dialog),-1,300);
panarea = hildon_pannable_area_new();
g_object_set(G_OBJECT (panarea),"mov-mode",HILDON_MOVEMENT_MODE_BOTH,NULL);
gtk_widget_show(panarea);
gtk_container_add(GTK_CONTAINER (gtk_dialog_get_content_area(GTK_DIALOG (dialog))),panarea);
label = gtk_label_new(result);
gtk_widget_show(label);
hildon_pannable_area_add_with_viewport(HILDON_PANNABLE_AREA (panarea),label);
#endif
gtk_dialog_run(GTK_DIALOG(dialog));
gtk_widget_destroy(dialog);
g_free(tmps);
g_free(result);
}
void on_commandline_activate(GtkMenuItem *menuitem, gpointer user_data) {
GtkWidget *dialog;
#ifdef MAEMO
GtkWidget *panarea, *label;
#endif
gchar *tmps;
build_rsync_cmd();
tmps = g_strjoinv(" ", argv);
#ifndef MAEMO
dialog = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", tmps);
#else
dialog = gtk_dialog_new();
gtk_window_set_default_size(GTK_WINDOW (dialog),-1,300);
panarea = hildon_pannable_area_new();
g_object_set(G_OBJECT (panarea),"mov-mode",HILDON_MOVEMENT_MODE_BOTH,NULL);
gtk_widget_show(panarea);
gtk_container_add(GTK_CONTAINER (gtk_dialog_get_content_area(GTK_DIALOG (dialog))),panarea);
label = gtk_label_new(tmps);
gtk_widget_show(label);
hildon_pannable_area_add_with_viewport(HILDON_PANNABLE_AREA (panarea),label);
#endif
gtk_dialog_run(GTK_DIALOG(dialog));
gtk_widget_destroy(dialog);
g_free(tmps);
g_free(argv);
}
void on_import1_activate(GtkMenuItem *menuitem, gpointer user_data) {
GtkWidget *dialog, *dialog2;
gint retval;
#ifndef MAEMO
dialog = gtk_file_chooser_dialog_new (_("Browse"), (GtkWindow*) main_window, GTK_FILE_CHOOSER_ACTION_OPEN,
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
#else
dialog = hildon_file_chooser_dialog_new ((GtkWindow*) main_window, GTK_FILE_CHOOSER_ACTION_OPEN);
gtk_window_set_title(GTK_WINDOW (dialog), _("Browse"));
#endif
if (user_data != NULL) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(dialog), user_data);
retval = gtk_dialog_run(GTK_DIALOG(dialog));
if (retval == GTK_RESPONSE_ACCEPT || retval == GTK_RESPONSE_OK) {
gchar *filename;
filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
load_settings(NULL, filename);
#ifndef MAEMO
dialog2 = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, _("Session imported"));
gtk_dialog_run(GTK_DIALOG(dialog2));
gtk_widget_destroy(dialog2);
#else
dialog2 = hildon_banner_show_information(GTK_WIDGET (main_window),NULL,_("Session imported"));
hildon_banner_set_timeout(HILDON_BANNER (dialog2),2000);
#endif
g_free(filename);
}
gtk_widget_destroy(dialog);
}
void on_export1_activate(GtkMenuItem *menuitem, gpointer user_data) {
GtkWidget *dialog, *dialog2;
gchar *filename;
gint retval, i;
i = gtk_combo_box_get_active((GtkComboBox*) gtk_builder_get_object(builder, "combo_session"));
#ifndef MAEMO
dialog = gtk_file_chooser_dialog_new (_("Browse"), (GtkWindow*) main_window, GTK_FILE_CHOOSER_ACTION_SAVE,
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL);
#else
dialog = hildon_file_chooser_dialog_new ((GtkWindow*) main_window, GTK_FILE_CHOOSER_ACTION_SAVE);
gtk_window_set_title(GTK_WINDOW (dialog), _("Browse"));
#endif
filename = g_strconcat(groups[i], ".grsync", NULL);
gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), filename);
g_free(filename);
retval = gtk_dialog_run (GTK_DIALOG (dialog));
if (retval == GTK_RESPONSE_ACCEPT || retval == GTK_RESPONSE_OK) {
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
save_settings(groups[i], filename);
#ifndef MAEMO
dialog2 = gtk_message_dialog_new((GtkWindow*) main_window, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, _("Session exported"));
gtk_dialog_run(GTK_DIALOG(dialog2));
gtk_widget_destroy(dialog2);
#else
dialog2 = hildon_banner_show_information(GTK_WIDGET (main_window),NULL,_("Session exported"));
hildon_banner_set_timeout(HILDON_BANNER (dialog2),2000);
#endif
g_free(filename);
}
gtk_widget_destroy(dialog);
}
void on_expander_rsync_activate(GtkExpander *expander, gpointer user_data) {
if (!gtk_expander_get_expanded(expander)) {
gtk_window_resize((GtkWindow*) rsync_window, initial_width, initial_height);
gtk_widget_set_size_request(rsync_window, initial_width, initial_height);
} else {
gtk_widget_set_size_request(rsync_window, -1, -1);
}
}
void on_button_show_errors_clicked(GtkButton *button, gpointer user_data) {
GtkWidget *errors;
GtkTextBuffer *buffer;
GtkTextIter iter;
static GtkTextTag *tag = NULL;
errors = (GtkWidget*) gtk_builder_get_object(builder, "dialog_errors");
buffer = gtk_text_view_get_buffer((GtkTextView*) gtk_builder_get_object(builder, "textview_errors"));
gtk_text_buffer_set_text(buffer, "", -1);
if (tag == NULL) tag = gtk_text_buffer_create_tag(buffer, "fore-red", "foreground", "red", NULL);
gtk_text_buffer_get_start_iter(buffer, &iter);
gtk_text_buffer_insert_with_tags(buffer, &iter, error_list, -1, tag, NULL);
gtk_widget_show(errors);
}
gboolean on_main_window_window_state_event(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data) {
if (trayIcon != NULL && event->changed_mask == GDK_WINDOW_STATE_ICONIFIED && (event->new_window_state & GDK_WINDOW_STATE_ICONIFIED) == GDK_WINDOW_STATE_ICONIFIED) {
// gtk_widget_hide(GTK_WIDGET(widget));
gtk_window_set_skip_taskbar_hint((GtkWindow*) widget, TRUE);
}
// else if (event->changed_mask == GDK_WINDOW_STATE_WITHDRAWN && (event->new_window_state & GDK_WINDOW_STATE_ICONIFIED) != GDK_WINDOW_STATE_ICONIFIED) {
return TRUE;
}
void on_contribute_activate(GtkMenuItem *menuitem, gpointer user_data) {
#ifdef MAEMO
g_spawn_command_line_async("dbus-send --system --type=method_call --dest=com.nokia.osso_browser /com/nokia/osso_browser/request com.nokia.osso_browser.load_url string:'http://www.opbyte.it/contribute.html'", NULL);
#else
g_spawn_command_line_async("xdg-open http://www.opbyte.it/contribute.html", NULL);
#endif
}
void on_cellrenderertoggle1_toggled(GtkCellRendererToggle *cell, gchar *path_str, gpointer data) {
GtkTreeIter iter;
GtkTreePath *path_filter = gtk_tree_path_new_from_string(path_str);
GtkTreePath *path = gtk_tree_model_filter_convert_path_to_child_path(filter, path_filter);
gboolean enabled;
gtk_tree_model_get_iter((GtkTreeModel*) liststore_session, &iter, path);
gtk_tree_model_get((GtkTreeModel*) liststore_session, &iter, 1, &enabled, -1);
enabled = !enabled;
gtk_list_store_set(liststore_session, &iter, 1, enabled, -1);
gtk_tree_path_free(path_filter);
gtk_tree_path_free(path);
}
grsync-1.2.5/src/support.h 0000664 0001750 0001750 00000001344 12137727646 012444 0000000 0000000 #ifdef HAVE_CONFIG_H
# include
#endif
#include
/*
* Standard gettext macros.
*/
#ifdef ENABLE_NLS
# include
# undef _
# define _(String) dgettext (PACKAGE, String)
# define Q_(String) g_strip_context ((String), gettext (String))
# ifdef gettext_noop
# define N_(String) gettext_noop (String)
# else
# define N_(String) (String)
# endif
#else
# define textdomain(String) (String)
# define gettext(String) (String)
# define dgettext(Domain,Message) (Message)
# define dcgettext(Domain,Message,Type) (Message)
# define bindtextdomain(Domain,Directory) (Domain)
# define _(String) (String)
# define Q_(String) g_strip_context ((String), (String))
# define N_(String) (String)
#endif
grsync-1.2.5/src/main.c 0000664 0001750 0001750 00000011323 12137727646 011645 0000000 0000000 #ifdef HAVE_CONFIG_H
# include
#endif
#include
#include "support.h"
#include "callbacks.h"
#ifdef MAEMO
# include
# include
#endif
int main (int argc, char *argv[]) {
#ifdef ENABLE_NLS
bindtextdomain(GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
textdomain(GETTEXT_PACKAGE);
#endif
gtk_set_locale();
#ifdef MAEMO
hildon_gtk_init(&argc, &argv);
#else
gtk_init(&argc, &argv);
#endif
gint i = 1, result;
GError *gerror = NULL;
#ifdef MAEMO
osso_context_t *osso_cont;
HildonProgram *grsync_prog;
GtkWidget *toolbar1;
GtkWidget *appmenu;
#endif
cmdline_session = FALSE;
cmdline_execute = FALSE;
cmdline_stayopen = FALSE;
cmdline_import = FALSE;
argv_filename = NULL;
while (i < argc && argv[i] != NULL) {
if (argv[i][0] == '-') {
if (argv[i][1] == 'e') cmdline_execute = TRUE;
if (argv[i][1] == 's') cmdline_stayopen = TRUE;
if (argv[i][1] == 'i') cmdline_import = TRUE;
} else {
if (cmdline_import) argv_filename = g_strconcat(argv[i], NULL);
else {
argv_session = g_strconcat(argv[i], NULL);
cmdline_session = TRUE;
}
}
i++;
}
if (cmdline_execute && cmdline_import) {
printf(_("Error: conflicting arguments\n"));
return 22;
}
if (!cmdline_session) argv_session = g_strconcat("default", NULL);
if (cmdline_import && argv_filename == NULL) {
// disabled because of grsync.desktop Exec option
/*
printf(_("Error: missing filename\n"));
return 2;
*/
cmdline_import = FALSE;
}
icon = g_file_test(ICON_SOURCE, G_FILE_TEST_EXISTS) ? ICON_SOURCE : ICON_PACKAGE;
icon_busy = g_file_test(ICON_SOURCE_BUSY, G_FILE_TEST_EXISTS) ? ICON_SOURCE_BUSY : ICON_PACKAGE_BUSY;
gtk_window_set_default_icon_from_file(icon, NULL);
builder = gtk_builder_new();
result = gtk_builder_add_from_file(builder, XMLFILE, &gerror) || gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "/" PACKAGE "/" XMLFILE, NULL);
if (result) {
#ifdef MAEMO
/* Initialize OSSO context */
osso_cont = osso_initialize("it.opbyte." PACKAGE, VERSION, TRUE, NULL);
if (osso_cont == NULL) {
g_printerr("ERROR: Unable to properly initialize Maemo environment.\n");
return OSSO_ERROR;
}
/* Create HildonProgram and add the HildonWindow to it */
grsync_prog = HILDON_PROGRAM (hildon_program_get_instance ());
main_window = (GtkWidget*) gtk_builder_get_object(builder, "main_window");
hildon_program_add_window (grsync_prog, HILDON_WINDOW (main_window));
/* Create HildonAppMenu and add it to the HildonWindow */
appmenu = (GtkWidget*) gtk_builder_get_object(builder, "appmenu");
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "switch_source_with_destination1")));
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "commandline")));
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "preferences1")));
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "import1")));
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "export1")));
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "about1")));
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "rsync_info")));
hildon_app_menu_append(HILDON_APP_MENU (appmenu),GTK_BUTTON (gtk_builder_get_object(builder, "contribute")));
hildon_window_set_app_menu(HILDON_WINDOW (main_window),HILDON_APP_MENU (appmenu));
gtk_widget_show_all(appmenu);
/* Add the GtkToolbar to the HildonWindow */
toolbar1 = (GtkWidget*) gtk_builder_get_object(builder, "toolbar1");
gtk_container_remove(GTK_CONTAINER (gtk_builder_get_object(builder,"vbox7")),toolbar1);
hildon_window_add_toolbar(HILDON_WINDOW (main_window),GTK_TOOLBAR (toolbar1));
gtk_widget_show_all(toolbar1);
#else
main_window = (GtkWidget*) gtk_builder_get_object(builder, "main_window");
#endif
liststore_session = (GtkListStore*) gtk_builder_get_object(builder, "liststore_session");
gtk_builder_connect_signals(builder, NULL);
on_main_create((GtkWindow*) main_window, NULL); // I run the callback now because the "show" signal seems not to be emitted with gtkbuilder
// gtk_widget_show_all(main_window); // disabled because it showed widgets hidden by gtk calls in the program; was needed on some systems, need to check again
gtk_main();
} else {
g_printerr("Error loading GtkBuilder XML file: %s - error code %u (%s)\n", XMLFILE, gerror->code, gerror->message);
}
g_free(argv_session);
g_object_unref(G_OBJECT(builder));
#ifdef MAEMO
/* De-initialize OSSO context */
osso_deinitialize(osso_cont);
#endif
return 0;
}
grsync-1.2.5/src/grsync-batch 0000775 0001750 0001750 00000007123 12137727646 013072 0000000 0000000 #!/bin/bash
while [ "`echo $1 | head -c 1`" == "-" ]; do
if [ "$1" == "-d" ]; then
DRYRUN=true
shift
continue
fi
if [ "$1" == "-f" ]; then
FROMFILE=true
shift
continue
fi
echo "Unknown option"
exit 1
done
SESSION=$1
if [ "$SESSION" == "" ]; then
echo "Grsync batch session runner ver 1.2.1"
echo "Comes under the GPL v2 - Copyright 2007->2012 Piero Orsoni (orsoni@gmail.com)"
echo "This script is part of the grsync program, see www.opbyte.it for more information"
echo
echo "Usage: grsync-batch [-d] [-f] "
echo " -d dry-run, simulate, do not really execute"
echo " -f read session from filename instead of the default configuration file"
exit 2
fi
if [ "$FROMFILE" == "" ]; then
# SESSCONF=`echo "\`cat ~/.grsync/grsync.ini\`\[" | grep -A999 "\[$SESSION\]" | tail -n +2 | grep -m 1 -B999 "\[" | head -n -2`
SESSCONF=`echo -e "\`cat ~/.grsync/grsync.ini\`\n\n\[" | grep -A999 "\[$SESSION\]" | tail -n +2 | grep -m 1 -B999 "^$"`
if [ "$SESSCONF" == "" ]; then
echo "Session not found in config file"
exit 3
fi
else
SESSCONF=`cat $SESSION | grep -A999 "\[" | tail -n +2`
if [ "$SESSCONF" == "" ]; then
echo "File not found or empty"
exit 4
fi
fi
# CONFIG=`cat ~/.grsync/grsync.ini | grep -A999 "\[__CONFIG\]" | tail -n +2 | grep -m 1 -B999 "\[" | head -n -2`
CONFIG=`cat ~/.grsync/grsync.ini | grep -A999 "\[__CONFIG\]" | tail -n +2 | grep -m 1 -B999 "^$"`
eval `echo -e "$SESSCONF\n$CONFIG" | sed s/=/=\"/ | sed s/\$/\"/`
if [ "$is_set" == "true" ]; then
echo "Session sets not yet supported"
exit 5
fi
OPTIONS="$text_addit"
if [ "$check_norecur" == "true" ]; then OPTIONS="-d $OPTIONS"; else OPTIONS="-r $OPTIONS"; fi
if [ "$DRYRUN" == "true" ]; then OPTIONS="-n $OPTIONS"; fi
if [ "$check_time" == "true" ]; then OPTIONS="-t $OPTIONS"; fi
if [ "$check_perm" == "true" ]; then OPTIONS="-p $OPTIONS"; fi
if [ "$check_owner" == "true" ]; then OPTIONS="-o $OPTIONS"; fi
if [ "$check_group" == "true" ]; then OPTIONS="-g $OPTIONS"; fi
if [ "$check_onefs" == "true" ]; then OPTIONS="-x $OPTIONS"; fi
if [ "$check_verbose" == "true" ]; then OPTIONS="-v $OPTIONS"; fi
if [ "$check_progr" == "true" ]; then OPTIONS="--progress $OPTIONS"; fi
if [ "$check_delete" == "true" ]; then OPTIONS="--delete $OPTIONS"; fi
if [ "$check_exist" == "true" ]; then OPTIONS="--ignore-existing $OPTIONS"; fi
if [ "$check_size" == "true" ]; then OPTIONS="--size-only $OPTIONS"; fi
if [ "$check_sum" == "true" ]; then OPTIONS="-c $OPTIONS"; fi
if [ "$check_symlink" == "true" ]; then OPTIONS="-l $OPTIONS"; fi
if [ "$check_hardlink" == "true" ]; then OPTIONS="-H $OPTIONS"; fi
if [ "$check_dev" == "true" ]; then OPTIONS="-D $OPTIONS"; fi
if [ "$check_update" == "true" ]; then OPTIONS="--existing $OPTIONS"; fi
if [ "$check_keepart" == "true" ]; then OPTIONS="-P $OPTIONS"; fi
if [ "$check_mapuser" == "true" ]; then OPTIONS="--numeric-ids $OPTIONS"; fi
if [ "$check_compr" == "true" ]; then OPTIONS="-z $OPTIONS"; fi
if [ "$check_backup" == "true" ]; then OPTIONS="-b $OPTIONS"; fi
if [ "$check_skipnew" == "true" ]; then OPTIONS="-u $OPTIONS"; fi
if [ "$check_windows" == "true" ]; then OPTIONS="--modify-window=1 $OPTIONS"; fi
if [ "$check_itemized" == "true" ]; then OPTIONS="-i $OPTIONS"; fi
if [ "$check_protectargs" == "true" ]; then OPTIONS="-s $OPTIONS"; fi
if [ "$check_com_before" == "true" ]; then
echo "*** Executing $text_com_before"
$text_com_before
echo
fi
COMMAND="$command $OPTIONS "
echo "*** Executing $COMMAND\"$text_source\" \"$text_dest\""
$COMMAND "$text_source" "$text_dest"
if [ "$check_com_after" == "true" ]; then
echo
echo "*** Executing $text_com_after"
$text_com_after
fi
grsync-1.2.5/src/callbacks.h 0000664 0001750 0001750 00000001636 12137727646 012653 0000000 0000000 #define MAXPATH 2048
#define MAXOPT 100
#define CONFIG_GROUP "__CONFIG"
#define ICON_SOURCE "pixmaps/grsync.png"
#define ICON_SOURCE_BUSY "pixmaps/grsync-busy.png"
#define ICON_PACKAGE PACKAGE_DATA_DIR "/" ICON_SOURCE
#define ICON_PACKAGE_BUSY PACKAGE_DATA_DIR "/" ICON_SOURCE_BUSY
GtkBuilder *builder;
GtkWidget *main_window;
gchar *argv_session, *argv_filename, *icon, *icon_busy;
gboolean cmdline_session, cmdline_execute, cmdline_stayopen, cmdline_import;
GtkListStore *liststore_session;
void save_settings(gchar *session, gchar *filename);
gboolean load_groups(gchar *session);
void on_main_create(GtkWindow *window, gpointer user_data);
void on_expander_rsync_activate(GtkExpander *expander, gpointer user_data);
void on_button_show_errors_clicked(GtkButton *button, gpointer user_data);
void on_import1_activate(GtkMenuItem *menuitem, gpointer user_data);
void on_rsync_show(GtkWidget *widget, gpointer user_data);
grsync-1.2.5/config.h.in 0000664 0001750 0001750 00000005655 12327444422 012011 0000000 0000000 /* config.h.in. Generated from configure.in by autoheader. */
/* always defined to indicate that i18n is enabled */
#undef ENABLE_NLS
/* Gettext package. */
#undef GETTEXT_PACKAGE
/* Define to 1 if you have the `bind_textdomain_codeset' function. */
#undef HAVE_BIND_TEXTDOMAIN_CODESET
/* Define to 1 if you have the `dcgettext' function. */
#undef HAVE_DCGETTEXT
/* Define if the GNU gettext() function is already present or preinstalled. */
#undef HAVE_GETTEXT
/* Define to 1 if you have the header file. */
#undef HAVE_INTTYPES_H
/* Define if your file defines LC_MESSAGES. */
#undef HAVE_LC_MESSAGES
/* Define to 1 if you have the header file. */
#undef HAVE_LOCALE_H
/* Define to 1 if you have the header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the header file. */
#undef HAVE_UNISTD_H
/* Unity launcher support */
#undef HAVE_UNITY
/* Define default Maemo pixmap directory */
#undef HILDONPIXMAPDIR
/* Compile for Maemo platform. */
#undef MAEMO
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
/* Enable threading extensions on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
/* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
/* Version number of package */
#undef VERSION
/* UI Description XML File */
#undef XMLFILE
/* Define to 1 if on MINIX. */
#undef _MINIX
/* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */
#undef _POSIX_1_SOURCE
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
grsync-1.2.5/ChangeLog 0000664 0001750 0001750 00000000011 12137727646 011530 0000000 0000000 See NEWS
grsync-1.2.5/grsync.xml.in 0000664 0001750 0001750 00000000464 12137727646 012426 0000000 0000000
Grsync session
Sessione di Grsync
@MIME_OSSOCAT@
grsync-1.2.5/intltool-extract.in 0000664 0001750 0001750 00000000000 12137727646 013620 0000000 0000000 grsync-1.2.5/AUTHORS 0000664 0001750 0001750 00000000236 12137727646 011037 0000000 0000000 This software is (C) Piero Orsoni (info@opbyte.it)
See application's about box for authors details.
Released under the GPL
See COPYING file for details
grsync-1.2.5/grsync.glade 0000664 0001750 0001750 00000251367 12356767537 012315 0000000 0000000
12
Add session
False
True
dialog
True
True
main_window
False
True
12
True
Enter session name you want to create:
False
False
1
200
True
True
Enter the name of the new session to create
50
True
False
False
2
Add as session set
True
True
False
Create a new session set instead of a normal session
True
3
True
end
gtk-cancel
True
True
True
False
True
False
False
0
gtk-ok
True
True
True
True
False
True
False
False
1
False
end
0
cancelbutton1
okbutton1
12
Grsync preferences
True
dialog
True
True
main_window
False
True
12
True
6
2
12
6
Show rsync output by default
True
True
False
Wether to show rsync output by default or hide it (show graphical information only)
True
True
2
3
GTK_FILL
Remember last used session
True
True
False
Whether to load the last used session at startup or use the default one
True
True
1
2
2
3
GTK_FILL
Show error list when finished
True
True
False
When rsync has finished, show all the errors encountered in a separate window
True
True
3
4
GTK_FILL
Enable logging
True
True
False
Whether to save rsync output to a log file, named like the session, which will be located in the grsync directory (usually ".grsync" into your user home)
True
True
1
2
3
4
GTK_FILL
True
True
Enter the rsync command to use, eventually including its full path
200
True
2
1
2
True
0
0
Rsync executable:
2
GTK_FILL
Fast rsync output scrolling
True
True
False
Select this if you want rsync output to scroll many lines at a time, in order to be faster
True
4
5
Enable switch button
True
True
False
Select this if you want an additional "switch source with destination" button in the basic options tab
True
1
2
4
5
Use tray icon
True
True
False
Check this box to show an icon of the application in the system tray instead of the application bar (may not work on Unity environments, like Ubuntu >= 11.4)
True
5
6
1
True
end
gtk-cancel
True
True
True
False
True
False
False
0
gtk-ok
True
True
True
True
False
True
False
False
1
False
end
0
cancelbutton2
okbutton2
Errors list
True
dialog
True
True
True
dialog_rsync
False
True
True
12
12
True
Error list of last rsync run:
False
False
0
True
True
in
400
150
True
True
False
1
1
True
end
gtk-close
True
True
True
False
True
False
False
0
False
end
0
closebutton1
12
rsync
True
dialog
True
True
main_window
False
True
True
6
True
0
0
Idle
False
0
True
GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK
Transfer progress of current file
0.10000000149
0%
False
3
1
True
0
0
Global progress
True
False
False
2
True
GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK
Global transfer progress: works only with rsync version 2.6.1 or newer, and may report wrong values depending on the ability of rsync to estimate the files to be copied in advance
0.10000000149
0%
False
False
3
410
True
False
4
True
True
250
True
True
automatic
automatic
in
True
False
True
False
False
True
Rsync output:
5
1
True
end
gtk-dialog-warning
True
False
True
True
Click this button to show the error list
True
False
False
0
gtk-media-pause
True
True
False
Pause/resume rsync run
True
False
False
1
gtk-stop
True
True
False
Stops rsync and closes the window
True
False
False
2
False
end
0
button_show_errors
button_pause
close
10
About trailing slashes
False
True
center-on-parent
True
dialog
True
True
main_window
False
True
2
True
A trailing slash on the source directory avoids creating an additional directory level at the destination.
You can think of a trailing / on a source as meaning "copy the contents of this directory" as opposed to "copy the directory itself and its contents".
In other words, each of the following commands copies the files in the same way:
rsync -a /src/foo /dest
rsync -a /src/foo/ /dest/foo
fill
True
1
True
center
gtk-ok
True
True
True
True
False
False
0
False
end
0
button_trailing_ok
grsync-1.2.5/po/ 0000775 0001750 0001750 00000000000 12375104247 010452 5 0000000 0000000 grsync-1.2.5/po/ca_ES.po 0000664 0001750 0001750 00000052706 12375104044 011711 0000000 0000000 # CATALAN translation of grsync.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the grsync package.
# Josep Sà nchez Mesegué , 2009.
#
msgid ""
msgstr ""
"Project-Id-Version: 0.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2008-09-06 14:22+0100\n"
"Last-Translator: Josep Sanchez Mesegue \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../grsync.glade.h:1
msgid "Grsync"
msgstr "Grsync"
#: ../grsync.glade.h:2
msgid "_File"
msgstr "_Fitxer"
#: ../grsync.glade.h:3
msgid "Browse S_ource"
msgstr "Tria l'_origen"
#: ../grsync.glade.h:4
msgid "Browse _Destination"
msgstr "Tria el _destÃ"
#: ../grsync.glade.h:5
#, fuzzy
msgid "Switch source with destination"
msgstr "Intercanvia origen i destÃ"
#: ../grsync.glade.h:6
msgid "_Simulation"
msgstr "_Simulació"
#: ../grsync.glade.h:7
#, fuzzy
msgid "_Rsync command line"
msgstr "Informació d'_Rsync"
#: ../grsync.glade.h:8
msgid "S_essions"
msgstr "Sess_ions"
#: ../grsync.glade.h:9
msgid "_Import"
msgstr "_Importa"
#: ../grsync.glade.h:10
msgid "_Export"
msgstr "_Exporta"
#: ../grsync.glade.h:11
msgid "_Help"
msgstr "_Ajuda"
#: ../grsync.glade.h:12
msgid "_Rsync info"
msgstr "Informació d'_Rsync"
#: ../grsync.glade.h:13
msgid "_Contribute"
msgstr ""
#: ../grsync.glade.h:14
msgid "Click to add a new session"
msgstr "Afegeix una nova sessió"
#: ../grsync.glade.h:15
msgid "Click to delete the current session"
msgstr "Elimina la sessió actual"
#: ../grsync.glade.h:16
msgid ""
"Show what would have been done, but actually do nothing (\"dry-run\" in "
"rsync language)"
msgstr ""
"Mostra el que es faria, però sense fer-ho (\"dry-run\" en llenguatge rsync)"
#: ../grsync.glade.h:17
#, fuzzy
msgid "_Simulate"
msgstr "_Simulació"
#: ../grsync.glade.h:18
msgid "Make a full run (go!)"
msgstr "Executa (endavant!)"
#: ../grsync.glade.h:19
msgid "Preserve group"
msgstr "Conserva el grup"
#: ../grsync.glade.h:20
msgid "Preserve time"
msgstr "Conserva la data"
#: ../grsync.glade.h:21
msgid "Preserve permissions"
msgstr "Conserva els permisos"
#: ../grsync.glade.h:22
msgid "Preserve owner"
msgstr "Conserva el propietari"
#: ../grsync.glade.h:23
msgid "Do not leave filesystem"
msgstr "No abandonis el sistema de fitxers"
#: ../grsync.glade.h:24
msgid "Do not cross filesystem boundaries"
msgstr "No creuis els lÃmits del sistema de fitxers"
#: ../grsync.glade.h:25
msgid "Delete on destination"
msgstr "Esborra al destÃ"
#: ../grsync.glade.h:26
msgid "Delete files in destination which are not present in the source"
msgstr "Esborra els fitxers del destà que no existeixin a l'origen"
#: ../grsync.glade.h:27
msgid "Verbose"
msgstr "Sortida detallada"
#: ../grsync.glade.h:28
msgid "Show more information"
msgstr "Mostra més informació"
#: ../grsync.glade.h:29
msgid "Show transfer progress"
msgstr "Mostra el progrés de la transferència"
#: ../grsync.glade.h:30
msgid "Ignore existing"
msgstr "Ignora els existents"
#: ../grsync.glade.h:31
msgid "Ignore files which already exist in the destination"
msgstr "Ignora els fitxers que ja existeixin al destÃ"
#: ../grsync.glade.h:32
msgid "Size only"
msgstr "Només la mida"
#: ../grsync.glade.h:33
msgid "Check size only, ignore time and checksum"
msgstr "Només verifica la mida, ignora el temps i la suma de verificació"
#: ../grsync.glade.h:34
msgid "Skip newer"
msgstr "Omet els més nous"
#: ../grsync.glade.h:35
msgid "Do not update newer files"
msgstr "No actualitzis els fitxers més nous"
#: ../grsync.glade.h:36
msgid "Windows compatibility"
msgstr "Compatibilitat amb Windows"
#: ../grsync.glade.h:37
msgid "Provides workaround for a windows FAT filesystem limitation"
msgstr ""
"Proporciona una solució a la limitació del sistema de fitxers FAT de Windows"
#: ../grsync.glade.h:38
msgid "Click to open the file browser"
msgstr "Obre el navegador de fitxers"
#: ../grsync.glade.h:39
msgid "Source directory"
msgstr "Directori origen"
#: ../grsync.glade.h:40
msgid "Destination directory"
msgstr "Directori destÃ"
#: ../grsync.glade.h:41
#, fuzzy
msgid "Click here to switch the source with the destination directory"
msgstr "I_ntercanvia origen i destÃ"
#: ../grsync.glade.h:42
#, fuzzy
msgid "Source and Destination:"
msgstr "Tria el _destÃ"
#: ../grsync.glade.h:43
msgid "Basic options"
msgstr "Opcions inicials"
#: ../grsync.glade.h:44
msgid "Always checksum"
msgstr "Compara sempre la suma de verificació"
#: ../grsync.glade.h:45
msgid "Always compare file contents (by checksum)"
msgstr ""
"Compara sempre el contingut dels fitxers (mitjançant suma de verificació)"
#: ../grsync.glade.h:46
msgid "Preserve devices"
msgstr "Conserva els dispositius"
#: ../grsync.glade.h:47
msgid "Only update existing files"
msgstr "Actualitza només els fitxers existents"
#: ../grsync.glade.h:48
msgid "Keep partially transferred files"
msgstr "Conserva els fitxers transferits parcialment"
#: ../grsync.glade.h:49
msgid "Don't map uid/gid values"
msgstr "No mapegis els valors uid/gid"
#: ../grsync.glade.h:50
msgid "Keep numeric uid/gid instead of mapping user names and group names"
msgstr ""
"Conserva els valors numèrics de uid/gid, en vers de mapejar-los a noms de "
"usuari i grup."
#: ../grsync.glade.h:51
#, fuzzy
msgid "Additional options:"
msgstr "Opcions addicionals:"
#: ../grsync.glade.h:52
msgid "Compress file data"
msgstr "Comprimeix les dades"
#: ../grsync.glade.h:53
#, fuzzy
msgid ""
"Compress file data when transferring (useful only if at least one side is "
"remote)"
msgstr "Comprimeix les dades en enviar-les"
#: ../grsync.glade.h:54
msgid "Copy symlinks as symlinks"
msgstr "Copia els enllaços simbòlics com a tal"
#: ../grsync.glade.h:55
msgid "Symbolic links are copied as such, do not copy link target file"
msgstr ""
"Els enllaços simbòlics es copien com a tal, no es copia el fitxer objectiu "
"de l'enllaç"
#: ../grsync.glade.h:56
msgid "Make backups"
msgstr "Realitza còpies de seguretat"
#: ../grsync.glade.h:57
msgid "Make backups of existing files on the destination"
msgstr "Realitza còpies de seguretat dels fitxers existents a destÃ"
#: ../grsync.glade.h:58
#, fuzzy
msgid "Copy hardlinks as hardlinks"
msgstr "Copia els enllaços simbòlics com a tal"
#: ../grsync.glade.h:59
#, fuzzy
msgid "Hard links are copied as such, do not copy link target file"
msgstr ""
"Els enllaços simbòlics es copien com són, no es copia el fitxer objectiu de "
"l'enllaç"
#: ../grsync.glade.h:60
msgid "Show itemized changes list"
msgstr "Mostra la llista de canvis per elements"
#: ../grsync.glade.h:61
msgid "Show additional information on every changed file"
msgstr "Mostra la informació addicional de cada fitxer modificat"
#: ../grsync.glade.h:62
msgid "Disable recursion"
msgstr ""
#: ../grsync.glade.h:63
msgid "If checked the subdirectories of the source folder will be ignored"
msgstr ""
#: ../grsync.glade.h:64
msgid "Additional command line options to pass to the rsync program"
msgstr "Opcions addicionals de l'intérpret d'ordres per passar a l'rsync"
#: ../grsync.glade.h:65
msgid "Protect remote args"
msgstr ""
#: ../grsync.glade.h:66
msgid ""
"Protect remote arguments from shell expansion, Avoids the need to manually "
"escape remote folders and other options which use file names like --exclude"
msgstr ""
#: ../grsync.glade.h:67
msgid "Advanced options"
msgstr "Opcions avançades"
#: ../grsync.glade.h:68
msgid "Execute this command before rsync:"
msgstr "Executa aquesta ordre abans de l'rsync:"
#: ../grsync.glade.h:69
msgid ""
"Click on this item if you want to run a command before syncing. Can be "
"useful, for instance, to mount a filesystem before starting or to do some "
"cleanup."
msgstr ""
"Feu clic per executar una ordre abans de sincronitzar. Pot ser útil, per "
"exemple, per a muntar un sistema de fitxers abans de començar o per a "
"efectuar tasques de neteja."
#: ../grsync.glade.h:70
msgid "Execute this command after rsync:"
msgstr "Executa aquesta ordre després de l'rsync:"
#: ../grsync.glade.h:71
msgid ""
"Click on this item if you want to run a command after syncing. Can be "
"useful, for instance, to unmount a filesystem at the end or to do some "
"cleanup."
msgstr ""
"Feu clic per executar una ordre després de sincronitzar. Pot ser útil, per "
"exemple, per a desmuntar un sistema de fitxers en finalitzar o per a "
"efectuar tasques de neteja."
#: ../grsync.glade.h:72
msgid "Browse files instead of folders"
msgstr "Navega pels fitxers en vers de carpetes"
#: ../grsync.glade.h:73
msgid ""
"By setting this switch, the browse source and destination buttons will open "
"a dialog for selecting files instead of folders"
msgstr ""
"Activant aquesta opció, els botons de triar origen i destà obriran un dià leg "
"per a seleccionar fitxers en vers de carpetes"
#: ../grsync.glade.h:74
msgid "Halt on failure"
msgstr "Atura si es produeix un error"
#: ../grsync.glade.h:75
msgid ""
"When running the \"before\" command, if it fails for some reason, don't run "
"rsync and halt"
msgstr ""
"Quan executis la ordre \"before\", si falla per qualsevol cosa, no executis "
"rsync i atura"
#: ../grsync.glade.h:76
msgid "On rsync error only"
msgstr "Només en cas d'error d'rsync"
#: ../grsync.glade.h:77
msgid ""
"Execute the \"after\" command only if syncronization had errors.\n"
"For example can be used to send an email only in the case there was "
"trouble.\n"
"Try a command like \"mail -s 'rsync error' you@domain.com\"."
msgstr ""
"Executa l'ordre \"after\" només si la sincronització ha fallat. \n"
"Es pot emprar per a enviar correu només en el cas que hi hagi hagut "
"problemes.\n"
"Proveu l'ordre \"mail -s 'Error d'rsync' you@domain.com\"."
#: ../grsync.glade.h:80
msgid "Notes:"
msgstr "Notes:"
#: ../grsync.glade.h:81
#, fuzzy
msgid "Free text notes on the current session"
msgstr "Notes de la sessió actual"
#: ../grsync.glade.h:82
msgid "Run as superuser"
msgstr ""
#: ../grsync.glade.h:83
msgid ""
"Run rsync with superuser (root, administrator) privileges. Use this if you "
"need to access system files, for example when doing a full system backup."
msgstr ""
#: ../grsync.glade.h:84
msgid "Extra options"
msgstr "Opcions extra"
#: ../grsync.glade.h:85
msgid "Include these sessions:"
msgstr ""
#: ../grsync.glade.h:86
#, fuzzy
msgid "Set options"
msgstr "Opcions extra"
#: ../grsync.glade.h:87
msgid "Add session"
msgstr "Afegeix una sessió"
#: ../grsync.glade.h:88
msgid "Enter session name you want to create:"
msgstr "Introduïu el nom de la sessió que voleu crear:"
#: ../grsync.glade.h:89
msgid "Enter the name of the new session to create"
msgstr "Introduïu el nom de la nova sessió que voleu crear:"
#: ../grsync.glade.h:90
#, fuzzy
msgid "Add as session set"
msgstr "Afegeix una sessió"
#: ../grsync.glade.h:91
msgid "Create a new session set instead of a normal session"
msgstr ""
#: ../grsync.glade.h:92
msgid "Grsync preferences"
msgstr "Preferències del Grsync"
#: ../grsync.glade.h:93
msgid "Show rsync output by default"
msgstr "Mostra la sortida d'rsync de manera predeterminada"
#: ../grsync.glade.h:94
msgid ""
"Wether to show rsync output by default or hide it (show graphical "
"information only)"
msgstr ""
"Mostra o oculta la sortida predeterminada d'rsync (mostra només informació "
"grà fica)"
#: ../grsync.glade.h:95
msgid "Remember last used session"
msgstr "Recorda la última sessió emprada"
#: ../grsync.glade.h:96
msgid "Whether to load the last used session at startup or use the default one"
msgstr "Carrega la última sessió emprada o la sessió predeterminada"
#: ../grsync.glade.h:97
msgid "Show error list when finished"
msgstr "Mostra la llista d'errors en acabar"
#: ../grsync.glade.h:98
msgid ""
"When rsync has finished, show all the errors encountered in a separate window"
msgstr "Quan acabi rsync mostra tots els errors en una finestra separada"
#: ../grsync.glade.h:99
msgid "Enable logging"
msgstr "Activa el registre"
#: ../grsync.glade.h:100
msgid ""
"Whether to save rsync output to a log file, named like the session, which "
"will be located in the grsync directory (usually \".grsync\" into your user "
"home)"
msgstr ""
"Desa la sortida d'rsync en un fitxer de bità cola, amb el mateix nom que el "
"de la sessió, que es troba al directori grsync (generalment \".grsync\" a la "
"vostra carpeta personal)."
#: ../grsync.glade.h:101
msgid "Enter the rsync command to use, eventually including its full path"
msgstr "Introduïu la ordre rsync a emprar, si fos el cas, amb el camà sencer"
#: ../grsync.glade.h:102
msgid "Rsync executable:"
msgstr "Executable rsync:"
#: ../grsync.glade.h:103
msgid "Fast rsync output scrolling"
msgstr "Desplaçament rà pid de la sortida de l'rsync"
#: ../grsync.glade.h:104
msgid ""
"Select this if you want rsync output to scroll many lines at a time, in "
"order to be faster"
msgstr ""
"Trieu això si voleu que rsync desplaci la sortida diverses lÃnies cada cop, "
"per a poder anar més rà pid"
#: ../grsync.glade.h:105
msgid "Enable switch button"
msgstr ""
#: ../grsync.glade.h:106
msgid ""
"Select this if you want an additional \"switch source with destination\" "
"button in the basic options tab"
msgstr ""
#: ../grsync.glade.h:107
msgid "Use tray icon"
msgstr ""
#: ../grsync.glade.h:108
msgid ""
"Check this box to show an icon of the application in the system tray instead "
"of the application bar (may not work on Unity environments, like Ubuntu >= "
"11.4)"
msgstr ""
#: ../grsync.glade.h:109
msgid "Errors list"
msgstr "Llista d'errors"
#: ../grsync.glade.h:110
msgid "Error list of last rsync run:"
msgstr "Llista d'errors de la última execució de rsync"
#: ../grsync.glade.h:111
msgid "rsync"
msgstr "rsync"
#: ../grsync.glade.h:112
msgid "Idle"
msgstr "Inactiu"
#: ../grsync.glade.h:113
msgid "Transfer progress of current file"
msgstr "Progrés de la transferència del fitxer actual"
#: ../grsync.glade.h:114
msgid "Global progress"
msgstr "Progrés global"
#: ../grsync.glade.h:115
msgid ""
"Global transfer progress: works only with rsync version 2.6.1 or newer, and "
"may report wrong values depending on the ability of rsync to estimate the "
"files to be copied in advance"
msgstr ""
"Progrés global de la transferència: funciona només amb la versió 2.6.1, o "
"superior, d'rsync i pot donar valors erronis depenent de l'abilitat d'rsync "
"per a estimar amb antelació els fitxers a copiar"
#: ../grsync.glade.h:116
msgid "Rsync output:"
msgstr "Sortida d'rsync:"
#: ../grsync.glade.h:117
msgid "Click this button to show the error list"
msgstr "Feu clic en aquest botó per a mostrar la llista d'errors"
#: ../grsync.glade.h:118
msgid "Pause/resume rsync run"
msgstr "Pausa/continua l'execució d'rsync"
#: ../grsync.glade.h:119
msgid "Stops rsync and closes the window"
msgstr "Atura rsync i tanca la finestra"
#: ../grsync.glade.h:120
msgid "About trailing slashes"
msgstr ""
#: ../grsync.glade.h:121
msgid ""
"A trailing slash on the source directory avoids creating an additional "
"directory level at the destination.\n"
"You can think of a trailing / on a source as meaning \"copy the contents of "
"this directory\" as opposed to \"copy the directory itself and its contents"
"\".\n"
"\n"
"In other words, each of the following commands copies the files in the same "
"way:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
msgstr ""
#: ../src/main.c:58
#, c-format
msgid "Error: conflicting arguments\n"
msgstr ""
#: ../src/callbacks.c:138
#, c-format
msgid "(ERROR) Can't open config file! Maybe this is the first run?\n"
msgstr ""
"(ERROR) No es pot obrir el fitxer de configuració! potser és el primer cop "
"que s'executa el programa?\n"
#: ../src/callbacks.c:388 ../src/callbacks.c:1299
#, c-format
msgid "\tUnable to save settings!\n"
msgstr "\tNo es pot desar la configuració!\n"
#: ../src/callbacks.c:482 ../src/callbacks.c:485 ../src/callbacks.c:512
#: ../src/callbacks.c:515 ../src/callbacks.c:1481 ../src/callbacks.c:1485
#: ../src/callbacks.c:1516 ../src/callbacks.c:1520
msgid "Browse"
msgstr "Navega"
#: ../src/callbacks.c:551
#, c-format
msgid "%.f%% (%li:%02li elapsed, %li:%02li remaining)"
msgstr "%.f%% (%li:%02li passat, %li:%02li remanent)"
#: ../src/callbacks.c:703
msgid "Simulation in progress"
msgstr "Simulació en curs"
#: ../src/callbacks.c:755 ../src/callbacks.c:760
msgid "The session you specified on the command line doesn't exists"
msgstr "La sessió que heu especificat a l'intérpret d'ordres no existeix"
#: ../src/callbacks.c:774 ../src/callbacks.c:777
msgid ""
"Unable to execute the rsync command line tool. It is needed by this program. "
"You may need to install the rsync package or make it available in the "
"default executable search PATH. See file/preferences to change the default "
"rsync executable command."
msgstr ""
"No ha estat possible executar l'eina d'intérpret d'ordres rsync. Aquest "
"programa el necessita. Heu d'instal·lar el paquet rsync o marcar-lo com a "
"disponible al CAMà predeterminat. Veieu Fitxer/Preferències per a canviar el "
"camà predeterminat a l'executable de l'ordre rsync"
#: ../src/callbacks.c:898
#, fuzzy
msgid "** Launching AFTER command:\n"
msgstr "*** Executant l'ordre DESPRÉS:\n"
#: ../src/callbacks.c:913
msgid "Completed with errors!"
msgstr ""
"Ha finalitzat amb errors!"
#: ../src/callbacks.c:916
msgid ""
"Completed successfully!"
msgstr ""
"Ha finalitzat correctament!"
"span>"
#: ../src/callbacks.c:1049
msgid "Rsync process exit status: "
msgstr ""
#: ../src/callbacks.c:1110
#, fuzzy
msgid "** Launching BEFORE command:\n"
msgstr "*** Executando l'ordre ABANS:\n"
#: ../src/callbacks.c:1120
#, fuzzy
msgid "** Launching RSYNC command (simulation mode):\n"
msgstr "*** Executant l'ordre RSYNC (en mode simulat):\n"
#: ../src/callbacks.c:1121
#, fuzzy
msgid "** Launching RSYNC command:\n"
msgstr "*** Executant l'ordre RSYNC:\n"
#: ../src/callbacks.c:1165 ../src/callbacks.c:1169
msgid "Cannot execute rsync"
msgstr "No ha estat possible executar rsync"
#: ../src/callbacks.c:1215 ../src/callbacks.c:1220
msgid "This session name is reserved, you cannot call it like this"
msgstr "Aquest nom de sessió està reservat. No es pot emprar."
#: ../src/callbacks.c:1231 ../src/callbacks.c:1236
msgid "A session named like this already exists"
msgstr "Ja existeix una sessió amb aquest nom"
#: ../src/callbacks.c:1265 ../src/callbacks.c:1270
msgid "You cannot delete the default session"
msgstr "No es pot esborrar la sessió predeterminada"
#: ../src/callbacks.c:1278 ../src/callbacks.c:1281
#, c-format
msgid "Are you sure you want to delete the '%s' session?"
msgstr "Esteu segur de voler esborrar la sessió '%s'?"
#: ../src/callbacks.c:1313
msgid "Application icons by Roberto Gadotti "
msgstr ""
#: ../src/callbacks.c:1318
msgid "Written by Piero Orsoni "
msgstr ""
#: ../src/callbacks.c:1319
msgid "Maemo compatibility by Luca Donaggio "
msgstr ""
#: ../src/callbacks.c:1320
msgid "Additional bug-fixing by Luca Marturana "
msgstr ""
#: ../src/callbacks.c:1322
msgid "Dutch translation by Frank de Bruijn "
msgstr ""
#: ../src/callbacks.c:1323
msgid "Simplified Chinese translation by Xie Yanbo "
msgstr ""
#: ../src/callbacks.c:1324
msgid "French translation by xavier "
msgstr ""
#: ../src/callbacks.c:1325
msgid "Swedish translation by Daniel Nylander "
msgstr ""
#: ../src/callbacks.c:1326
msgid "Turkish translation by Doruk Fisek "
msgstr ""
#: ../src/callbacks.c:1327
msgid "Russian translation by Evgenii Terechkov "
msgstr ""
#: ../src/callbacks.c:1328
msgid "German translation by Martin Lettner "
msgstr ""
#: ../src/callbacks.c:1329
msgid "Spanish translation by Ibon Castilla Varela "
msgstr ""
#: ../src/callbacks.c:1330
msgid "Czech translation by Martin Balajka "
msgstr ""
#: ../src/callbacks.c:1331
msgid "Galician translation by Daniel Espinheira "
msgstr ""
#: ../src/callbacks.c:1332
msgid "Catalan translation by Josep SÃ nchez "
msgstr ""
#: ../src/callbacks.c:1333
msgid ""
"Brazilian Portuguese translation by Fábio Nogueira "
msgstr ""
#: ../src/callbacks.c:1334
msgid "Indonesian translation by Waluyo Adi Siswanto "
msgstr ""
#: ../src/callbacks.c:1335
msgid "Croatian translation by Bojan Vondra "
msgstr ""
#: ../src/callbacks.c:1339
msgid "Synchronize files and folders (a GTK GUI for rsync)."
msgstr ""
#: ../src/callbacks.c:1340
#, fuzzy
msgid ""
"(C) Piero Orsoni and others. Released under the GPL.\n"
"See COPYING for details"
msgstr ""
"(C) Piero Orsoni i altres. Distribuit sota GPL.\n"
"Vegeu AUTHORS i COPYING per a més detalls."
#: ../src/callbacks.c:1496 ../src/callbacks.c:1500
msgid "Session imported"
msgstr "Sessió importada"
#: ../src/callbacks.c:1532 ../src/callbacks.c:1536
msgid "Session exported"
msgstr "Sessió exportada"
#~ msgid ""
#~ "Source and Destination (directories need a trailing \"/\")"
#~ msgstr ""
#~ "Origen i destà (els directoris necessiten la barra al final: "
#~ "'/')"
#~ msgid "A GTK GUI for rsync"
#~ msgstr "Un GUI GTK per a rsync"
#~ msgid "Sessions"
#~ msgstr "Sessions"
#~ msgid "gtk-dialog-warning"
#~ msgstr "gtk-dialog-warning"
grsync-1.2.5/po/tr_TR.po 0000664 0001750 0001750 00000051367 12375104162 011774 0000000 0000000 # translation of grsync.po to Turkish
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
#
# Doruk Fisek , 2006.
msgid ""
msgstr ""
"Project-Id-Version: grsync\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2006-10-20 14:30+0300\n"
"Last-Translator: Doruk Fisek \n"
"Language-Team: Turkish \n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
#: ../grsync.glade.h:1
msgid "Grsync"
msgstr "Grsync"
#: ../grsync.glade.h:2
msgid "_File"
msgstr "_Dosya"
#: ../grsync.glade.h:3
msgid "Browse S_ource"
msgstr "_Kaynağa Göz At"
#: ../grsync.glade.h:4
msgid "Browse _Destination"
msgstr "_Varışa Göz At"
#: ../grsync.glade.h:5
#, fuzzy
msgid "Switch source with destination"
msgstr "Kaynak ile varış yerini değiştir"
#: ../grsync.glade.h:6
msgid "_Simulation"
msgstr "_Simülasyon"
#: ../grsync.glade.h:7
#, fuzzy
msgid "_Rsync command line"
msgstr "_Rsync bilgisi"
#: ../grsync.glade.h:8
msgid "S_essions"
msgstr "_Oturumlar"
#: ../grsync.glade.h:9
msgid "_Import"
msgstr ""
#: ../grsync.glade.h:10
msgid "_Export"
msgstr ""
#: ../grsync.glade.h:11
msgid "_Help"
msgstr "_Yardım"
#: ../grsync.glade.h:12
msgid "_Rsync info"
msgstr "_Rsync bilgisi"
#: ../grsync.glade.h:13
msgid "_Contribute"
msgstr ""
#: ../grsync.glade.h:14
msgid "Click to add a new session"
msgstr "Yeni bir oturum eklemek için tıklayın"
#: ../grsync.glade.h:15
msgid "Click to delete the current session"
msgstr "Mevcut oturumu silmek için tıklayın"
#: ../grsync.glade.h:16
msgid ""
"Show what would have been done, but actually do nothing (\"dry-run\" in "
"rsync language)"
msgstr ""
"Ne yapılacağını göster ama gerçekte hiçbir şey yapma (rsync dilinde \"dry-run"
"\")"
#: ../grsync.glade.h:17
#, fuzzy
msgid "_Simulate"
msgstr "_Simülasyon"
#: ../grsync.glade.h:18
msgid "Make a full run (go!)"
msgstr "Çalıştır (hadi!)"
#: ../grsync.glade.h:19
msgid "Preserve group"
msgstr "Grup bilgisini koru"
#: ../grsync.glade.h:20
msgid "Preserve time"
msgstr "Zaman bilgisini koru"
#: ../grsync.glade.h:21
msgid "Preserve permissions"
msgstr "İzinlerini koru"
#: ../grsync.glade.h:22
msgid "Preserve owner"
msgstr "Sahip bilgisini koru"
#: ../grsync.glade.h:23
msgid "Do not leave filesystem"
msgstr "Dosya sisteminden ayrılma"
#: ../grsync.glade.h:24
msgid "Do not cross filesystem boundaries"
msgstr "Dosya sistem sınırlarını geçme"
#: ../grsync.glade.h:25
msgid "Delete on destination"
msgstr "Varış dizininde sil"
#: ../grsync.glade.h:26
msgid "Delete files in destination which are not present in the source"
msgstr "Kaynakta olmayan dosyaları varış dizininden sil"
#: ../grsync.glade.h:27
msgid "Verbose"
msgstr "Ayrıntılı bilgi"
#: ../grsync.glade.h:28
msgid "Show more information"
msgstr "Daha fazla bilgi göster"
#: ../grsync.glade.h:29
msgid "Show transfer progress"
msgstr "Aktarımın ilerleyişini göster"
#: ../grsync.glade.h:30
#, fuzzy
msgid "Ignore existing"
msgstr "Varolanı Yoksay"
#: ../grsync.glade.h:31
msgid "Ignore files which already exist in the destination"
msgstr "Varış dizininde olan var olan dosyaları yoksay"
#: ../grsync.glade.h:32
#, fuzzy
msgid "Size only"
msgstr "Sadece Boyut"
#: ../grsync.glade.h:33
msgid "Check size only, ignore time and checksum"
msgstr "Sadece boyutunu kontrol et, zaman ve sağlama toplamını dikkate alma"
#: ../grsync.glade.h:34
msgid "Skip newer"
msgstr ""
#: ../grsync.glade.h:35
#, fuzzy
msgid "Do not update newer files"
msgstr "Sadece var olan dosyaları güncelle"
#: ../grsync.glade.h:36
msgid "Windows compatibility"
msgstr ""
#: ../grsync.glade.h:37
msgid "Provides workaround for a windows FAT filesystem limitation"
msgstr ""
#: ../grsync.glade.h:38
msgid "Click to open the file browser"
msgstr "Dosya tarayıcısını açmak için tıklayın"
#: ../grsync.glade.h:39
msgid "Source directory"
msgstr "Kaynak dizini"
#: ../grsync.glade.h:40
msgid "Destination directory"
msgstr "Varış dizini"
#: ../grsync.glade.h:41
msgid "Click here to switch the source with the destination directory"
msgstr "Kaynak ve varış dizinlerinin yerini değiştirmek için buraya tıklayın"
#: ../grsync.glade.h:42
#, fuzzy
msgid "Source and Destination:"
msgstr "_Varışa Göz At"
#: ../grsync.glade.h:43
msgid "Basic options"
msgstr "Temel seçenekler"
#: ../grsync.glade.h:44
msgid "Always checksum"
msgstr "Her zaman sağlama toplamı"
#: ../grsync.glade.h:45
msgid "Always compare file contents (by checksum)"
msgstr "Her zaman dosya içeriklerini karşılaştır (sağlama toplamı ile)"
#: ../grsync.glade.h:46
msgid "Preserve devices"
msgstr "Aygıtları koru"
#: ../grsync.glade.h:47
msgid "Only update existing files"
msgstr "Sadece var olan dosyaları güncelle"
#: ../grsync.glade.h:48
msgid "Keep partially transferred files"
msgstr "Kısmi olarak aktarılmış dosyaları sakla"
#: ../grsync.glade.h:49
msgid "Don't map uid/gid values"
msgstr "Kullanıcı/grup (uid/gid) değerlerini eşleme"
#: ../grsync.glade.h:50
msgid "Keep numeric uid/gid instead of mapping user names and group names"
msgstr ""
"Kullanıcı ve grupları isimlerini eşleştirmek yerine numaraları ile sakla"
#: ../grsync.glade.h:51
#, fuzzy
msgid "Additional options:"
msgstr "Ek seçenekler:"
#: ../grsync.glade.h:52
msgid "Compress file data"
msgstr "Dosya verisini sıkıştır"
#: ../grsync.glade.h:53
#, fuzzy
msgid ""
"Compress file data when transferring (useful only if at least one side is "
"remote)"
msgstr "Dosya verisini aktarım sırasında sıkıştır"
#: ../grsync.glade.h:54
msgid "Copy symlinks as symlinks"
msgstr "Sembolik bağı sembolik bağ olarak kopyala"
#: ../grsync.glade.h:55
msgid "Symbolic links are copied as such, do not copy link target file"
msgstr ""
"Sembolik bağları bağ olarak kopyala, bağın hedefi olan dosyayı kopyalama"
#: ../grsync.glade.h:56
msgid "Make backups"
msgstr "Yedekler oluÅŸtur"
#: ../grsync.glade.h:57
msgid "Make backups of existing files on the destination"
msgstr "Varış noktasında var olan dosyaların yedeklerini oluştur"
#: ../grsync.glade.h:58
#, fuzzy
msgid "Copy hardlinks as hardlinks"
msgstr "Sembolik bağı sembolik bağ olarak kopyala"
#: ../grsync.glade.h:59
#, fuzzy
msgid "Hard links are copied as such, do not copy link target file"
msgstr ""
"Sembolik bağları bağ olarak kopyala, bağın hedefi olan dosyayı kopyalama"
#: ../grsync.glade.h:60
msgid "Show itemized changes list"
msgstr ""
#: ../grsync.glade.h:61
msgid "Show additional information on every changed file"
msgstr ""
#: ../grsync.glade.h:62
msgid "Disable recursion"
msgstr ""
#: ../grsync.glade.h:63
msgid "If checked the subdirectories of the source folder will be ignored"
msgstr ""
#: ../grsync.glade.h:64
msgid "Additional command line options to pass to the rsync program"
msgstr "Rsync programını çağırırken kullanılacak ek komut satırı seçenekleri"
#: ../grsync.glade.h:65
msgid "Protect remote args"
msgstr ""
#: ../grsync.glade.h:66
msgid ""
"Protect remote arguments from shell expansion, Avoids the need to manually "
"escape remote folders and other options which use file names like --exclude"
msgstr ""
#: ../grsync.glade.h:67
msgid "Advanced options"
msgstr "Gelişmiş seçenekler"
#: ../grsync.glade.h:68
msgid "Execute this command before rsync:"
msgstr "Rsync öncesi şu komutu çalıştır:"
#: ../grsync.glade.h:69
msgid ""
"Click on this item if you want to run a command before syncing. Can be "
"useful, for instance, to mount a filesystem before starting or to do some "
"cleanup."
msgstr ""
"Senkronizasyona başlamadan önce bir komut çalıştırmak istiyorsanız buraya "
"tıklayın. Örneğin başlamadan önce bir dosya sistemini bağlamak ya da biraz "
"temizlik yapmak isterseniz yararlı olabilir."
#: ../grsync.glade.h:70
msgid "Execute this command after rsync:"
msgstr "Rsync sonrasında bu komutu çalıştır:"
#: ../grsync.glade.h:71
msgid ""
"Click on this item if you want to run a command after syncing. Can be "
"useful, for instance, to unmount a filesystem at the end or to do some "
"cleanup."
msgstr ""
"Senkronizasyondan sonra bir komut çalıştırmak istiyorsanız buraya tıklayın. "
"Örneğin bitirdikten sonra bir dosya sistemini ayırmak ya da biraz temizlik "
"yapmak isterseniz yararlı olabilir."
#: ../grsync.glade.h:72
msgid "Browse files instead of folders"
msgstr ""
#: ../grsync.glade.h:73
msgid ""
"By setting this switch, the browse source and destination buttons will open "
"a dialog for selecting files instead of folders"
msgstr ""
#: ../grsync.glade.h:74
msgid "Halt on failure"
msgstr ""
#: ../grsync.glade.h:75
msgid ""
"When running the \"before\" command, if it fails for some reason, don't run "
"rsync and halt"
msgstr ""
#: ../grsync.glade.h:76
msgid "On rsync error only"
msgstr ""
#: ../grsync.glade.h:77
msgid ""
"Execute the \"after\" command only if syncronization had errors.\n"
"For example can be used to send an email only in the case there was "
"trouble.\n"
"Try a command like \"mail -s 'rsync error' you@domain.com\"."
msgstr ""
#: ../grsync.glade.h:80
msgid "Notes:"
msgstr ""
#: ../grsync.glade.h:81
#, fuzzy
msgid "Free text notes on the current session"
msgstr "Mevcut oturumu silmek için tıklayın"
#: ../grsync.glade.h:82
msgid "Run as superuser"
msgstr ""
#: ../grsync.glade.h:83
msgid ""
"Run rsync with superuser (root, administrator) privileges. Use this if you "
"need to access system files, for example when doing a full system backup."
msgstr ""
#: ../grsync.glade.h:84
msgid "Extra options"
msgstr "Ek seçenekler"
#: ../grsync.glade.h:85
msgid "Include these sessions:"
msgstr ""
#: ../grsync.glade.h:86
#, fuzzy
msgid "Set options"
msgstr "Ek seçenekler"
#: ../grsync.glade.h:87
msgid "Add session"
msgstr "Oturum ekle"
#: ../grsync.glade.h:88
msgid "Enter session name you want to create:"
msgstr "Yaratılmasını istediğiniz oturum ismini girin:"
#: ../grsync.glade.h:89
msgid "Enter the name of the new session to create"
msgstr "Yaratılacak yeni oturumun adını girin"
#: ../grsync.glade.h:90
#, fuzzy
msgid "Add as session set"
msgstr "Oturum ekle"
#: ../grsync.glade.h:91
msgid "Create a new session set instead of a normal session"
msgstr ""
#: ../grsync.glade.h:92
msgid "Grsync preferences"
msgstr "Grsync tercihleri"
#: ../grsync.glade.h:93
msgid "Show rsync output by default"
msgstr "Rsync çıktısını öntanımlı olarak göster"
#: ../grsync.glade.h:94
msgid ""
"Wether to show rsync output by default or hide it (show graphical "
"information only)"
msgstr ""
"Öntanımlı olarak rsync çıktısı gösterilsin mi saklansın mı (sadece grafik "
"bilgi göster)?"
#: ../grsync.glade.h:95
msgid "Remember last used session"
msgstr "Son kullanılan oturumu hatırla"
#: ../grsync.glade.h:96
msgid "Whether to load the last used session at startup or use the default one"
msgstr ""
"Başlangıçta son kullanılan oturum yüklensin mi yoksa öntanımlı olan mı "
"kullanılsın?"
#: ../grsync.glade.h:97
msgid "Show error list when finished"
msgstr "Tamamlanınca hata listesini göster"
#: ../grsync.glade.h:98
msgid ""
"When rsync has finished, show all the errors encountered in a separate window"
msgstr ""
"Rsync tamamlandığında, tüm karşılaşılan hataları ayrı bir pencerede göster"
#: ../grsync.glade.h:99
msgid "Enable logging"
msgstr "Kayıt tutulsun"
#: ../grsync.glade.h:100
msgid ""
"Whether to save rsync output to a log file, named like the session, which "
"will be located in the grsync directory (usually \".grsync\" into your user "
"home)"
msgstr ""
"Rsync çıktısı oturum gibi bir isimlendirme ile grsync dizinine kaydedilsin "
"mi (genellikle kullanıcı ev dizininde \".grsync\")"
#: ../grsync.glade.h:101
msgid "Enter the rsync command to use, eventually including its full path"
msgstr "Kullanılacak rsync komutunu tüm yoluyla beraber girin"
#: ../grsync.glade.h:102
msgid "Rsync executable:"
msgstr "Rsync çalıştırılabilir dosyası:"
#: ../grsync.glade.h:103
msgid "Fast rsync output scrolling"
msgstr ""
#: ../grsync.glade.h:104
msgid ""
"Select this if you want rsync output to scroll many lines at a time, in "
"order to be faster"
msgstr ""
#: ../grsync.glade.h:105
msgid "Enable switch button"
msgstr ""
#: ../grsync.glade.h:106
msgid ""
"Select this if you want an additional \"switch source with destination\" "
"button in the basic options tab"
msgstr ""
#: ../grsync.glade.h:107
msgid "Use tray icon"
msgstr ""
#: ../grsync.glade.h:108
msgid ""
"Check this box to show an icon of the application in the system tray instead "
"of the application bar (may not work on Unity environments, like Ubuntu >= "
"11.4)"
msgstr ""
#: ../grsync.glade.h:109
msgid "Errors list"
msgstr "Hata listesi"
#: ../grsync.glade.h:110
msgid "Error list of last rsync run:"
msgstr "Son rsync çalışmasının hata listesi:"
#: ../grsync.glade.h:111
msgid "rsync"
msgstr "rsync"
#: ../grsync.glade.h:112
msgid "Idle"
msgstr "BoÅŸ duran"
#: ../grsync.glade.h:113
msgid "Transfer progress of current file"
msgstr "Şu anki dosyanın aktarım durumu"
#: ../grsync.glade.h:114
msgid "Global progress"
msgstr "Genel durum"
#: ../grsync.glade.h:115
msgid ""
"Global transfer progress: works only with rsync version 2.6.1 or newer, and "
"may report wrong values depending on the ability of rsync to estimate the "
"files to be copied in advance"
msgstr ""
"Genel aktarım durumu: sadece rsync 2.6.1 ya da daha yeni sürümlerinde "
"çalışır ve rsync'in kopyalanacak dosyaları önceden tahmin etme yeteneğine "
"bağlı olarak yanlış değerler verebilir"
#: ../grsync.glade.h:116
msgid "Rsync output:"
msgstr "Rsync çıktısı:"
#: ../grsync.glade.h:117
msgid "Click this button to show the error list"
msgstr ""
#: ../grsync.glade.h:118
msgid "Pause/resume rsync run"
msgstr "Rsync çalışmasını duraklat/sürdür"
#: ../grsync.glade.h:119
msgid "Stops rsync and closes the window"
msgstr "Rsync'i durdurur ve pencereyi kapatır"
#: ../grsync.glade.h:120
msgid "About trailing slashes"
msgstr ""
#: ../grsync.glade.h:121
msgid ""
"A trailing slash on the source directory avoids creating an additional "
"directory level at the destination.\n"
"You can think of a trailing / on a source as meaning \"copy the contents of "
"this directory\" as opposed to \"copy the directory itself and its contents"
"\".\n"
"\n"
"In other words, each of the following commands copies the files in the same "
"way:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
msgstr ""
#: ../src/main.c:58
#, c-format
msgid "Error: conflicting arguments\n"
msgstr ""
#: ../src/callbacks.c:138
#, c-format
msgid "(ERROR) Can't open config file! Maybe this is the first run?\n"
msgstr "(HATA) Ayar dosyası açılamıyor! Belki bu ilk çalıştırılması?\n"
#: ../src/callbacks.c:388 ../src/callbacks.c:1299
#, c-format
msgid "\tUnable to save settings!\n"
msgstr "\tAyarlar kaydedilemiyor!\n"
#: ../src/callbacks.c:482 ../src/callbacks.c:485 ../src/callbacks.c:512
#: ../src/callbacks.c:515 ../src/callbacks.c:1481 ../src/callbacks.c:1485
#: ../src/callbacks.c:1516 ../src/callbacks.c:1520
msgid "Browse"
msgstr "Göz at"
#: ../src/callbacks.c:551
#, c-format
msgid "%.f%% (%li:%02li elapsed, %li:%02li remaining)"
msgstr "%.f%% (%li:%02li geçti, %li:%02li kaldı)"
#: ../src/callbacks.c:703
msgid "Simulation in progress"
msgstr "Simülasyon devam ediyor"
#: ../src/callbacks.c:755 ../src/callbacks.c:760
msgid "The session you specified on the command line doesn't exists"
msgstr "Komut satırında belirttiğiniz oturum yok"
#: ../src/callbacks.c:774 ../src/callbacks.c:777
msgid ""
"Unable to execute the rsync command line tool. It is needed by this program. "
"You may need to install the rsync package or make it available in the "
"default executable search PATH. See file/preferences to change the default "
"rsync executable command."
msgstr ""
"Rsync komut satırı aracı çalıştırılamadı. Ona bu program tarafından ihtiyaç "
"duyulyor. Rsync paketini kurmanız ya da öntanımlı çalıştırılabilir program "
"arama yoluna (PATH) yerleştirmeniz gerekebilir. Öntanımlı rsync "
"çalıştırılabilir komutunu dosya/ayarlar bölümünden değiştirebilirsiniz."
#: ../src/callbacks.c:898
#, fuzzy
msgid "** Launching AFTER command:\n"
msgstr "*** Rsync SONRASI komutu çalıştırılıyor:\n"
#: ../src/callbacks.c:913
msgid "Completed with errors!"
msgstr "Hatalarla tamamlandı!"
#: ../src/callbacks.c:916
msgid ""
"Completed successfully!"
msgstr ""
"Başarıyla tamamlandı!"
#: ../src/callbacks.c:1049
msgid "Rsync process exit status: "
msgstr ""
#: ../src/callbacks.c:1110
#, fuzzy
msgid "** Launching BEFORE command:\n"
msgstr "*** Rsync ÖNCESİ komutu çalıştırılıyor:\n"
#: ../src/callbacks.c:1120
#, fuzzy
msgid "** Launching RSYNC command (simulation mode):\n"
msgstr "*** RSYNC komutu başlatılıyor (simülasyon kipi):\n"
#: ../src/callbacks.c:1121
#, fuzzy
msgid "** Launching RSYNC command:\n"
msgstr "*** RSYNC komutu başlatılıyor:\n"
#: ../src/callbacks.c:1165 ../src/callbacks.c:1169
msgid "Cannot execute rsync"
msgstr "Rsync'i çalıştıramadım"
#: ../src/callbacks.c:1215 ../src/callbacks.c:1220
msgid "This session name is reserved, you cannot call it like this"
msgstr "Bu oturum ismi ayrılmış durumda, oturuma bu ismi veremezsiniz"
#: ../src/callbacks.c:1231 ../src/callbacks.c:1236
msgid "A session named like this already exists"
msgstr "Aynı isimde bir oturum zaten bulunuyor"
#: ../src/callbacks.c:1265 ../src/callbacks.c:1270
msgid "You cannot delete the default session"
msgstr "Öntanımlı oturumu silemezsiniz"
#: ../src/callbacks.c:1278 ../src/callbacks.c:1281
#, c-format
msgid "Are you sure you want to delete the '%s' session?"
msgstr "'%s' oturumunu silmek istediÄŸinize emin misiniz?"
#: ../src/callbacks.c:1313
msgid "Application icons by Roberto Gadotti "
msgstr ""
#: ../src/callbacks.c:1318
msgid "Written by Piero Orsoni "
msgstr ""
#: ../src/callbacks.c:1319
msgid "Maemo compatibility by Luca Donaggio "
msgstr ""
#: ../src/callbacks.c:1320
msgid "Additional bug-fixing by Luca Marturana "
msgstr ""
#: ../src/callbacks.c:1322
msgid "Dutch translation by Frank de Bruijn "
msgstr ""
#: ../src/callbacks.c:1323
msgid "Simplified Chinese translation by Xie Yanbo "
msgstr ""
#: ../src/callbacks.c:1324
msgid "French translation by xavier "
msgstr ""
#: ../src/callbacks.c:1325
msgid "Swedish translation by Daniel Nylander "
msgstr ""
#: ../src/callbacks.c:1326
msgid "Turkish translation by Doruk Fisek "
msgstr ""
#: ../src/callbacks.c:1327
msgid "Russian translation by Evgenii Terechkov "
msgstr ""
#: ../src/callbacks.c:1328
msgid "German translation by Martin Lettner "
msgstr ""
#: ../src/callbacks.c:1329
msgid "Spanish translation by Ibon Castilla Varela "
msgstr ""
#: ../src/callbacks.c:1330
msgid "Czech translation by Martin Balajka "
msgstr ""
#: ../src/callbacks.c:1331
msgid "Galician translation by Daniel Espinheira "
msgstr ""
#: ../src/callbacks.c:1332
msgid "Catalan translation by Josep SÃ nchez "
msgstr ""
#: ../src/callbacks.c:1333
msgid ""
"Brazilian Portuguese translation by Fábio Nogueira "
msgstr ""
#: ../src/callbacks.c:1334
msgid "Indonesian translation by Waluyo Adi Siswanto "
msgstr ""
#: ../src/callbacks.c:1335
msgid "Croatian translation by Bojan Vondra "
msgstr ""
#: ../src/callbacks.c:1339
msgid "Synchronize files and folders (a GTK GUI for rsync)."
msgstr ""
#: ../src/callbacks.c:1340
#, fuzzy
msgid ""
"(C) Piero Orsoni and others. Released under the GPL.\n"
"See COPYING for details"
msgstr ""
"(C) Piero Orsoni ve diğerleri. GPL ile yayınlanmıştır.\n"
"Detaylar için AUTHORS ve COPYING dosyalarınız bakınız"
#: ../src/callbacks.c:1496 ../src/callbacks.c:1500
msgid "Session imported"
msgstr ""
#: ../src/callbacks.c:1532 ../src/callbacks.c:1536
msgid "Session exported"
msgstr ""
#~ msgid ""
#~ "Source and Destination (directories need a trailing \"/\")"
#~ msgstr ""
#~ "Kaynak ve varış (dizinlerin sonunda \"/\" bulunmalıdır)"
#~ msgid "A GTK GUI for rsync"
#~ msgstr "Rsync için bir GTK grafik arayüzü"
#~ msgid "Sessions"
#~ msgstr "Oturumlar"
#~ msgid "_Execute"
#~ msgstr "Yü_rüt"
#~ msgid "Couldn't find pixmap file: %s"
#~ msgstr "Pixmap dosyasını bulamadım: %s"
grsync-1.2.5/po/it_IT.po 0000664 0001750 0001750 00000057440 12375104234 011750 0000000 0000000 # ITALIAN translation of grsync.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the grsync package.
# FIRST AUTHOR , YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: 1.0.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2010-07-01 16:39+0200\n"
"Last-Translator: Piero Orsoni \n"
"Language-Team: Italian \n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../grsync.glade.h:1
msgid "Grsync"
msgstr "Grsync"
#: ../grsync.glade.h:2
msgid "_File"
msgstr "_File"
#: ../grsync.glade.h:3
msgid "Browse S_ource"
msgstr "Sfoglia S_orgente"
#: ../grsync.glade.h:4
msgid "Browse _Destination"
msgstr "Sfoglia _Destinazione"
#: ../grsync.glade.h:5
msgid "Switch source with destination"
msgstr "Scambia sorgente e destinazione"
#: ../grsync.glade.h:6
msgid "_Simulation"
msgstr "_Simulazione"
#: ../grsync.glade.h:7
msgid "_Rsync command line"
msgstr "Linea di comando _Rsync"
#: ../grsync.glade.h:8
msgid "S_essions"
msgstr "Sessi_oni"
#: ../grsync.glade.h:9
msgid "_Import"
msgstr "_Importa"
#: ../grsync.glade.h:10
msgid "_Export"
msgstr "_Esporta"
#: ../grsync.glade.h:11
msgid "_Help"
msgstr "_Aiuto"
#: ../grsync.glade.h:12
msgid "_Rsync info"
msgstr "Info su _Rsync"
#: ../grsync.glade.h:13
msgid "_Contribute"
msgstr "_Contribuisci"
#: ../grsync.glade.h:14
msgid "Click to add a new session"
msgstr "Clicca per creare una nuova sessione"
#: ../grsync.glade.h:15
msgid "Click to delete the current session"
msgstr "Clicca per cancellare la sessione corrente"
#: ../grsync.glade.h:16
msgid ""
"Show what would have been done, but actually do nothing (\"dry-run\" in "
"rsync language)"
msgstr ""
"Mostra cosa farebbe, ma senza far nulla (\"dry-run\" in linguaggio rsync)"
#: ../grsync.glade.h:17
msgid "_Simulate"
msgstr "_Simula"
#: ../grsync.glade.h:18
msgid "Make a full run (go!)"
msgstr "Esecuzione completa (vai!)"
#: ../grsync.glade.h:19
msgid "Preserve group"
msgstr "Mantieni gruppo"
#: ../grsync.glade.h:20
msgid "Preserve time"
msgstr "Mantieni data"
#: ../grsync.glade.h:21
msgid "Preserve permissions"
msgstr "Mantieni permessi"
#: ../grsync.glade.h:22
msgid "Preserve owner"
msgstr "Mantieni utente"
#: ../grsync.glade.h:23
msgid "Do not leave filesystem"
msgstr "Non uscire dal filesystem"
#: ../grsync.glade.h:24
msgid "Do not cross filesystem boundaries"
msgstr "Non uscire dal filesystem"
#: ../grsync.glade.h:25
msgid "Delete on destination"
msgstr "Cancella nella destinazione"
#: ../grsync.glade.h:26
msgid "Delete files in destination which are not present in the source"
msgstr "Cancella i file nella destinazione che non ci sono nella sorgente"
#: ../grsync.glade.h:27
msgid "Verbose"
msgstr "Informazioni aggiuntive"
#: ../grsync.glade.h:28
msgid "Show more information"
msgstr "Mostra piu' informazioni"
#: ../grsync.glade.h:29
msgid "Show transfer progress"
msgstr "Mostra stato trasferimento"
#: ../grsync.glade.h:30
msgid "Ignore existing"
msgstr "Ignora esistenti"
#: ../grsync.glade.h:31
msgid "Ignore files which already exist in the destination"
msgstr "Ignora i file che esistono gia' nella destinazione"
#: ../grsync.glade.h:32
msgid "Size only"
msgstr "Solo dimensione"
#: ../grsync.glade.h:33
msgid "Check size only, ignore time and checksum"
msgstr "Confronta solo la dimensione, ignora la data e il checksum"
#: ../grsync.glade.h:34
msgid "Skip newer"
msgstr "Salta nuovi"
#: ../grsync.glade.h:35
msgid "Do not update newer files"
msgstr "Non aggiorna i file piu' nuovi sulla destinazione"
#: ../grsync.glade.h:36
msgid "Windows compatibility"
msgstr "Compatibilita' con windows"
#: ../grsync.glade.h:37
msgid "Provides workaround for a windows FAT filesystem limitation"
msgstr "Fornisce soluzione ad una limitazione del filesystem FAT di windows"
#: ../grsync.glade.h:38
msgid "Click to open the file browser"
msgstr "Clicca per aprire il file browser"
#: ../grsync.glade.h:39
msgid "Source directory"
msgstr "Directory sorgente"
#: ../grsync.glade.h:40
msgid "Destination directory"
msgstr "Directory destinazione"
#: ../grsync.glade.h:41
msgid "Click here to switch the source with the destination directory"
msgstr "Clicca per scambiare la sorgente con la destinazione"
#: ../grsync.glade.h:42
msgid "Source and Destination:"
msgstr "Sorgente e Destinazione:"
#: ../grsync.glade.h:43
msgid "Basic options"
msgstr "Opzioni di base"
#: ../grsync.glade.h:44
msgid "Always checksum"
msgstr "Checksum sempre"
#: ../grsync.glade.h:45
msgid "Always compare file contents (by checksum)"
msgstr "Confronta sempre il contenuto dei file (con checksum)"
#: ../grsync.glade.h:46
msgid "Preserve devices"
msgstr "Mantieni device"
#: ../grsync.glade.h:47
msgid "Only update existing files"
msgstr "Aggiorna solo file esistenti"
#: ../grsync.glade.h:48
msgid "Keep partially transferred files"
msgstr "Tieni file parzialmente trasferiti"
#: ../grsync.glade.h:49
msgid "Don't map uid/gid values"
msgstr "Non mappare valori uid/gid"
#: ../grsync.glade.h:50
msgid "Keep numeric uid/gid instead of mapping user names and group names"
msgstr ""
"Mantieni uid e gid numerici, non mappare i nomi degli utenti e dei gruppi"
#: ../grsync.glade.h:51
msgid "Additional options:"
msgstr "Opzioni avanzate:"
#: ../grsync.glade.h:52
msgid "Compress file data"
msgstr "Comprimi i dati"
#: ../grsync.glade.h:53
msgid ""
"Compress file data when transferring (useful only if at least one side is "
"remote)"
msgstr ""
"Comprimi i dati mentre trasferisci (utile solo se almeno una delle parti e' "
"remota)"
#: ../grsync.glade.h:54
msgid "Copy symlinks as symlinks"
msgstr "Copia symlink come tali"
#: ../grsync.glade.h:55
msgid "Symbolic links are copied as such, do not copy link target file"
msgstr ""
"I link simbolici vengono copiati come tali, non copiare il file puntato"
#: ../grsync.glade.h:56
msgid "Make backups"
msgstr "Fai copie di backup"
#: ../grsync.glade.h:57
msgid "Make backups of existing files on the destination"
msgstr "Fai copie di backup dei file gia' esistenti nella destinazione"
#: ../grsync.glade.h:58
msgid "Copy hardlinks as hardlinks"
msgstr "Copia gli hardlink come tali"
#: ../grsync.glade.h:59
msgid "Hard links are copied as such, do not copy link target file"
msgstr "Gli hard link vengono copiati come tali, non copiare il file puntato"
#: ../grsync.glade.h:60
msgid "Show itemized changes list"
msgstr "Mostra lista cambiamenti"
#: ../grsync.glade.h:61
msgid "Show additional information on every changed file"
msgstr "Mostra informazioni addizionali su tutti i file cambiati"
#: ../grsync.glade.h:62
msgid "Disable recursion"
msgstr "Disabilita ricorsione"
#: ../grsync.glade.h:63
msgid "If checked the subdirectories of the source folder will be ignored"
msgstr ""
"Se selezionato le sottocartelle della cartella sorgente saranno ignorate"
#: ../grsync.glade.h:64
msgid "Additional command line options to pass to the rsync program"
msgstr ""
"Opzioni addizionali da passare alla riga di comando del programma rsync"
#: ../grsync.glade.h:65
msgid "Protect remote args"
msgstr "Proteggi argomenti remoti"
#: ../grsync.glade.h:66
msgid ""
"Protect remote arguments from shell expansion, Avoids the need to manually "
"escape remote folders and other options which use file names like --exclude"
msgstr ""
"Proteggi gli argomenti remoti dall'espansione della shell: evita di dover "
"proteggere manualmente le cartelle remote ed altre opzioni che utilizzano "
"nomi di file come --exclude"
#: ../grsync.glade.h:67
msgid "Advanced options"
msgstr "Opzioni avanzate"
#: ../grsync.glade.h:68
msgid "Execute this command before rsync:"
msgstr "Esegui questo comando prima di rsync:"
#: ../grsync.glade.h:69
msgid ""
"Click on this item if you want to run a command before syncing. Can be "
"useful, for instance, to mount a filesystem before starting or to do some "
"cleanup."
msgstr ""
"Clicca per eseguire un comando prima di rsync. Puo' essere utile, per "
"esempio, per montare un'unita' prima di partire oppure fare della pulizia"
#: ../grsync.glade.h:70
msgid "Execute this command after rsync:"
msgstr "Esegui questo comando dopo di rsync:"
#: ../grsync.glade.h:71
msgid ""
"Click on this item if you want to run a command after syncing. Can be "
"useful, for instance, to unmount a filesystem at the end or to do some "
"cleanup."
msgstr ""
"Clicca per eseguire un comando dopo di rsync. Puo' essere utile, per "
"esempio, per montare un'unita' prima di partire oppure fare della pulizia"
#: ../grsync.glade.h:72
msgid "Browse files instead of folders"
msgstr "Scegli file anziche' cartelle"
#: ../grsync.glade.h:73
msgid ""
"By setting this switch, the browse source and destination buttons will open "
"a dialog for selecting files instead of folders"
msgstr ""
"Impostando questo parametro, i bottoni di scelta sorgente e destinazione "
"apriranno una finestra di scelta file anziche' cartelle"
#: ../grsync.glade.h:74
msgid "Halt on failure"
msgstr "Interrompi se fallisce"
#: ../grsync.glade.h:75
msgid ""
"When running the \"before\" command, if it fails for some reason, don't run "
"rsync and halt"
msgstr ""
"Quando viene lanciato il comando \"dopo\", se fallisce non lanciare la "
"sincronizzazione ed interrompi"
#: ../grsync.glade.h:76
msgid "On rsync error only"
msgstr "Solo in caso di errore rsync"
#: ../grsync.glade.h:77
msgid ""
"Execute the \"after\" command only if syncronization had errors.\n"
"For example can be used to send an email only in the case there was "
"trouble.\n"
"Try a command like \"mail -s 'rsync error' you@domain.com\"."
msgstr ""
"Esegui il comando \"dopo\" solo se la sincronizzazione ha avuto errori.\n"
"Per esempio si puo' usare per mandare una email quando ci sono stati "
"problemi.\n"
"Prova un comando come \"mail -s 'errore rsync' you@domain.com\"."
#: ../grsync.glade.h:80
msgid "Notes:"
msgstr "Note:"
#: ../grsync.glade.h:81
msgid "Free text notes on the current session"
msgstr "Note testuali libere per la sessione corrente"
#: ../grsync.glade.h:82
msgid "Run as superuser"
msgstr "Lancia come superutente"
#: ../grsync.glade.h:83
msgid ""
"Run rsync with superuser (root, administrator) privileges. Use this if you "
"need to access system files, for example when doing a full system backup."
msgstr ""
"Lancia rsync con permessi di superutente (root, amministratore). Usalo se "
"hai bisogno di accedere a file di sistema, per esempio nel caso di backup "
"dell'intero filesystem"
#: ../grsync.glade.h:84
msgid "Extra options"
msgstr "Opzioni extra"
#: ../grsync.glade.h:85
msgid "Include these sessions:"
msgstr "Includi queste sessioni:"
#: ../grsync.glade.h:86
msgid "Set options"
msgstr "Opzioni gruppo"
#: ../grsync.glade.h:87
msgid "Add session"
msgstr "Aggiungi sessione"
#: ../grsync.glade.h:88
msgid "Enter session name you want to create:"
msgstr "Inserisci il nome della nuova sessione da creare:"
#: ../grsync.glade.h:89
msgid "Enter the name of the new session to create"
msgstr "Inserisci il nome della nuova sessione da creare"
#: ../grsync.glade.h:90
msgid "Add as session set"
msgstr "Aggiungi gruppo sessioni"
#: ../grsync.glade.h:91
msgid "Create a new session set instead of a normal session"
msgstr "Crea un gruppo di sessioni invece di una sessione normale"
#: ../grsync.glade.h:92
msgid "Grsync preferences"
msgstr "Preferenze Grsync"
#: ../grsync.glade.h:93
msgid "Show rsync output by default"
msgstr "Mostra output rsync"
#: ../grsync.glade.h:94
msgid ""
"Wether to show rsync output by default or hide it (show graphical "
"information only)"
msgstr ""
"Indica se mostrare l'output di rsync o se nasconderlo (mostrando solo "
"informazioni grafiche)"
#: ../grsync.glade.h:95
msgid "Remember last used session"
msgstr "Ricorda l'ultima sessione usata"
#: ../grsync.glade.h:96
msgid "Whether to load the last used session at startup or use the default one"
msgstr ""
"Indica se caricare l'ultima sessione usata all'avvio o se usare quella di "
"default"
#: ../grsync.glade.h:97
msgid "Show error list when finished"
msgstr "Mostra lista errori alla fine"
#: ../grsync.glade.h:98
msgid ""
"When rsync has finished, show all the errors encountered in a separate window"
msgstr ""
"Quando rsync ha finito, mostra tutti gli errori incontrati in una finestra "
"separata"
#: ../grsync.glade.h:99
msgid "Enable logging"
msgstr "Abilita il log (file di registro)"
#: ../grsync.glade.h:100
msgid ""
"Whether to save rsync output to a log file, named like the session, which "
"will be located in the grsync directory (usually \".grsync\" into your user "
"home)"
msgstr ""
"Indica se registrare l'output di rsync in un file di log, con nome uguale "
"alla sessione. Questo file si trovera' nella cartella di grsync (di solito "
"\".grsync\" nella home dell'utente)"
#: ../grsync.glade.h:101
msgid "Enter the rsync command to use, eventually including its full path"
msgstr ""
"Inserisci il comando rsync da eseguire, eventualmente con percorso completo"
#: ../grsync.glade.h:102
msgid "Rsync executable:"
msgstr "Eseguibile rsync:"
#: ../grsync.glade.h:103
msgid "Fast rsync output scrolling"
msgstr "Scorrimento veloce testo di rsync"
#: ../grsync.glade.h:104
msgid ""
"Select this if you want rsync output to scroll many lines at a time, in "
"order to be faster"
msgstr ""
"Seleziona questa opzione se vuoi uno scorrimento veloce e multi linea di "
"rsync"
#: ../grsync.glade.h:105
msgid "Enable switch button"
msgstr "Abilita bottone scambia"
#: ../grsync.glade.h:106
msgid ""
"Select this if you want an additional \"switch source with destination\" "
"button in the basic options tab"
msgstr ""
"Seleziona se vuoi il tasto \"Scambia sorgente e destinazione\" nelle opzioni "
"di base"
#: ../grsync.glade.h:107
msgid "Use tray icon"
msgstr "Usa area di notifica"
#: ../grsync.glade.h:108
msgid ""
"Check this box to show an icon of the application in the system tray instead "
"of the application bar (may not work on Unity environments, like Ubuntu >= "
"11.4)"
msgstr ""
"Seleziona questa casella per mostrare un'icona del programma nell'area di "
"notifica invece che nella lista applicazioni (potrebbe non funzionare in "
"ambiente Unity, come Ubuntu >= 11.4)"
#: ../grsync.glade.h:109
msgid "Errors list"
msgstr "Lista errori"
#: ../grsync.glade.h:110
msgid "Error list of last rsync run:"
msgstr "Lista errori dell'ultima esecuzione:"
#: ../grsync.glade.h:111
msgid "rsync"
msgstr "rsync"
#: ../grsync.glade.h:112
msgid "Idle"
msgstr "Attesa"
#: ../grsync.glade.h:113
msgid "Transfer progress of current file"
msgstr "Stato trasferimento del file corrente"
#: ../grsync.glade.h:114
msgid "Global progress"
msgstr "Stato globale"
#: ../grsync.glade.h:115
msgid ""
"Global transfer progress: works only with rsync version 2.6.1 or newer, and "
"may report wrong values depending on the ability of rsync to estimate the "
"files to be copied in advance"
msgstr ""
"Stato globale del trasferimento: funziona solo con rsync versione 2.6.1 e "
"successivi, e puo' mostrare valori sbagliati a seconda della capacita' di "
"rsync di stimare i file da copiare in anticipo"
#: ../grsync.glade.h:116
msgid "Rsync output:"
msgstr "Risultato di rsync:"
#: ../grsync.glade.h:117
msgid "Click this button to show the error list"
msgstr "Clicca qui per vedere la lista degli errori"
#: ../grsync.glade.h:118
msgid "Pause/resume rsync run"
msgstr "Metti in pausa/riparti"
#: ../grsync.glade.h:119
msgid "Stops rsync and closes the window"
msgstr "Interrompe rsync e chiude la finestra"
#: ../grsync.glade.h:120
msgid "About trailing slashes"
msgstr "Circa le barre finali"
#: ../grsync.glade.h:121
msgid ""
"A trailing slash on the source directory avoids creating an additional "
"directory level at the destination.\n"
"You can think of a trailing / on a source as meaning \"copy the contents of "
"this directory\" as opposed to \"copy the directory itself and its contents"
"\".\n"
"\n"
"In other words, each of the following commands copies the files in the same "
"way:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
msgstr ""
"Una barra finale nella cartella sorgente evita di creare un livello "
"addizionale nella destinazione.\n"
"Puoi immaginare la barra finale sulla sorgente come \"copia il contenuto di "
"questa cartella\" al posto di \"copia la cartella stessa ed il suo contenuto"
"\"\n"
"\n"
"In altre parole, ognuno dei seguenti comandi copiano i file nella stessa "
"maniera:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
#: ../src/main.c:58
#, c-format
msgid "Error: conflicting arguments\n"
msgstr "Errore: parametri incompatibili\n"
#: ../src/callbacks.c:138
#, c-format
msgid "(ERROR) Can't open config file! Maybe this is the first run?\n"
msgstr ""
"(ERRORE) Impossibile aprire il file di configurazione! Forse e' la prima "
"esecuzione?\n"
#: ../src/callbacks.c:388 ../src/callbacks.c:1299
#, c-format
msgid "\tUnable to save settings!\n"
msgstr "\tImpossibile salvare le impostazioni!\n"
#: ../src/callbacks.c:482 ../src/callbacks.c:485 ../src/callbacks.c:512
#: ../src/callbacks.c:515 ../src/callbacks.c:1481 ../src/callbacks.c:1485
#: ../src/callbacks.c:1516 ../src/callbacks.c:1520
msgid "Browse"
msgstr "Sfoglia"
#: ../src/callbacks.c:551
#, c-format
msgid "%.f%% (%li:%02li elapsed, %li:%02li remaining)"
msgstr "%.f%% (%li:%02li passati, %li:%02li rimanenti)"
#: ../src/callbacks.c:703
msgid "Simulation in progress"
msgstr "Simulazione in corso"
#: ../src/callbacks.c:755 ../src/callbacks.c:760
msgid "The session you specified on the command line doesn't exists"
msgstr "La sessione che hai specificato da riga di comando non esiste"
#: ../src/callbacks.c:774 ../src/callbacks.c:777
msgid ""
"Unable to execute the rsync command line tool. It is needed by this program. "
"You may need to install the rsync package or make it available in the "
"default executable search PATH. See file/preferences to change the default "
"rsync executable command."
msgstr ""
"Non riesco ad eseguire il comando rsync. E' necessario per questo programma. "
"Potrebbe servire installare il pacchetto rsync o renderlo eseguibile nel "
"PATH (percorso) predefinito per i programmi. Vedi file/preferenze per "
"cambiare il comando rsync da usare"
#: ../src/callbacks.c:898
msgid "** Launching AFTER command:\n"
msgstr "** Avvio del comando PRIMA:\n"
#: ../src/callbacks.c:913
msgid "Completed with errors!"
msgstr "Completato con errori!"
#: ../src/callbacks.c:916
msgid ""
"Completed successfully!"
msgstr ""
"Completato con successo!"
"span>"
#: ../src/callbacks.c:1049
msgid "Rsync process exit status: "
msgstr "Stato di uscita del processo rsync: "
#: ../src/callbacks.c:1110
msgid "** Launching BEFORE command:\n"
msgstr "** Avvio del comando DOPO:\n"
#: ../src/callbacks.c:1120
msgid "** Launching RSYNC command (simulation mode):\n"
msgstr "** Avvio del comando RSYNC (modalita' simulazione):\n"
#: ../src/callbacks.c:1121
msgid "** Launching RSYNC command:\n"
msgstr "** Avvio del comando RSYNC:\n"
#: ../src/callbacks.c:1165 ../src/callbacks.c:1169
msgid "Cannot execute rsync"
msgstr "Impossibile eseguire rsync"
#: ../src/callbacks.c:1215 ../src/callbacks.c:1220
msgid "This session name is reserved, you cannot call it like this"
msgstr "Questo nome di sessione e' riservato, non lo si puo' usare"
#: ../src/callbacks.c:1231 ../src/callbacks.c:1236
msgid "A session named like this already exists"
msgstr "Esiste gia' una sessione con questo nome"
#: ../src/callbacks.c:1265 ../src/callbacks.c:1270
msgid "You cannot delete the default session"
msgstr "Non puoi cancellare la sessione di default"
#: ../src/callbacks.c:1278 ../src/callbacks.c:1281
#, c-format
msgid "Are you sure you want to delete the '%s' session?"
msgstr "Sei sicuro di voler cancellare la sessione '%s'?"
#: ../src/callbacks.c:1313
msgid "Application icons by Roberto Gadotti "
msgstr "Icona applicazione di Roberto Gadotti "
#: ../src/callbacks.c:1318
msgid "Written by Piero Orsoni "
msgstr "Scritto da Piero Orsoni "
#: ../src/callbacks.c:1319
msgid "Maemo compatibility by Luca Donaggio "
msgstr "Compatibilita' con Maemo di Luca Donaggio "
#: ../src/callbacks.c:1320
msgid "Additional bug-fixing by Luca Marturana "
msgstr ""
"Correzione errori aggiuntiva di Luca Marturana "
#: ../src/callbacks.c:1322
msgid "Dutch translation by Frank de Bruijn "
msgstr "Traduzione in Olandese di Frank de Bruijn "
#: ../src/callbacks.c:1323
msgid "Simplified Chinese translation by Xie Yanbo "
msgstr "Traduzione in Cinese semplificato di Xie Yanbo "
#: ../src/callbacks.c:1324
msgid "French translation by xavier "
msgstr "Traduzione in Francese di xavier "
#: ../src/callbacks.c:1325
msgid "Swedish translation by Daniel Nylander "
msgstr "Traduzione in Svedese di Daniel Nylander "
#: ../src/callbacks.c:1326
msgid "Turkish translation by Doruk Fisek "
msgstr "Traduzione in Turco di Doruk Fisek "
#: ../src/callbacks.c:1327
msgid "Russian translation by Evgenii Terechkov "
msgstr "Traduzione in Russo di Evgenii Terechkov "
#: ../src/callbacks.c:1328
msgid "German translation by Martin Lettner "
msgstr "Traduzione in Tedesco di Martin Lettner "
#: ../src/callbacks.c:1329
msgid "Spanish translation by Ibon Castilla Varela "
msgstr "Traduzione in Spagnolo di Ibon Castilla Varela "
#: ../src/callbacks.c:1330
msgid "Czech translation by Martin Balajka "
msgstr "Traduzione in Ceco di Martin Balajka "
#: ../src/callbacks.c:1331
msgid "Galician translation by Daniel Espinheira "
msgstr ""
"Traduzione in Galiziano di Daniel Espinheira "
#: ../src/callbacks.c:1332
msgid "Catalan translation by Josep SÃ nchez "
msgstr "Traduzione in Catalano di Josep SÃ nchez "
#: ../src/callbacks.c:1333
msgid ""
"Brazilian Portuguese translation by Fábio Nogueira "
msgstr ""
"Traduzione in Portoghese Brasiliano di Fábio Nogueira "
#: ../src/callbacks.c:1334
msgid "Indonesian translation by Waluyo Adi Siswanto "
msgstr "Traduzione in Indonesiano di Waluyo Adi Siswanto "
#: ../src/callbacks.c:1335
msgid "Croatian translation by Bojan Vondra "
msgstr "Traduzione in Croato di Bojan Vondra "
#: ../src/callbacks.c:1339
msgid "Synchronize files and folders (a GTK GUI for rsync)."
msgstr "Sincronizza file e cartelle (una GUI GTK di rsync)."
#: ../src/callbacks.c:1340
msgid ""
"(C) Piero Orsoni and others. Released under the GPL.\n"
"See COPYING for details"
msgstr ""
"(C) Piero Orsoni ed altri. Distribuito con GPL.\n"
"Leggi COPYING per dettagli"
#: ../src/callbacks.c:1496 ../src/callbacks.c:1500
msgid "Session imported"
msgstr "Sessione importata"
#: ../src/callbacks.c:1532 ../src/callbacks.c:1536
msgid "Session exported"
msgstr "Sessione esportata"
#~ msgid "rsync: running"
#~ msgstr "rsync: in funzione"
#~ msgid "rsync: stopped"
#~ msgstr "rsync: fermo"
#~ msgid "rsync: paused"
#~ msgstr "rsync: in pausa"
#~ msgid ""
#~ "Source and Destination (directories need a trailing \"/\")"
#~ msgstr ""
#~ "Sorgente e Destinazione (cartelle necessitano '/' finale)"
#~ msgid "Error: missing filename\n"
#~ msgstr "Errore: manca il nome file\n"
#~ msgid "A GTK GUI for rsync"
#~ msgstr "GUI GTK per rsync"
#~ msgid "Sessions"
#~ msgstr "Sessioni"
grsync-1.2.5/po/pt_BR.po 0000664 0001750 0001750 00000060032 12375104143 011734 0000000 0000000 # Portuguese translations for grsync
# Traduções em português para o pacote grsync.
# Copyright (C) 2010 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Fábio Nogueira , 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: 0.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2012-09-14 23:00-0300\n"
"Last-Translator: Fábio Nogueira \n"
"Language-Team: Brazilian Portuguese\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: ../grsync.glade.h:1
msgid "Grsync"
msgstr "Grsync"
#: ../grsync.glade.h:2
msgid "_File"
msgstr "_Arquivo"
#: ../grsync.glade.h:3
msgid "Browse S_ource"
msgstr "Navegar na _Origem"
#: ../grsync.glade.h:4
msgid "Browse _Destination"
msgstr "Navegar no _Destino"
#: ../grsync.glade.h:5
#, fuzzy
msgid "Switch source with destination"
msgstr "Altenar origem com destino"
#: ../grsync.glade.h:6
msgid "_Simulation"
msgstr "_Simulação"
#: ../grsync.glade.h:7
msgid "_Rsync command line"
msgstr "_Linha de comando do Rsync"
#: ../grsync.glade.h:8
msgid "S_essions"
msgstr "S_essões"
#: ../grsync.glade.h:9
msgid "_Import"
msgstr "_Importar"
#: ../grsync.glade.h:10
msgid "_Export"
msgstr "_Exportar"
#: ../grsync.glade.h:11
msgid "_Help"
msgstr "A_juda"
#: ../grsync.glade.h:12
msgid "_Rsync info"
msgstr "_Informações sobre o Rsync"
#: ../grsync.glade.h:13
msgid "_Contribute"
msgstr "_Contribuir"
#: ../grsync.glade.h:14
msgid "Click to add a new session"
msgstr "Clique para adicionar uma nova sessão"
#: ../grsync.glade.h:15
msgid "Click to delete the current session"
msgstr "Clique para apagar a sessão atual"
#: ../grsync.glade.h:16
msgid ""
"Show what would have been done, but actually do nothing (\"dry-run\" in "
"rsync language)"
msgstr ""
"Mostrar o que teria finalizado, mas não execute nada (\"dry-run\" no idioma "
"do rsync)"
#: ../grsync.glade.h:17
msgid "_Simulate"
msgstr "S_imular"
#: ../grsync.glade.h:18
msgid "Make a full run (go!)"
msgstr "Faça uma execução completa (Vai!)"
#: ../grsync.glade.h:19
msgid "Preserve group"
msgstr "Preservar grupo"
#: ../grsync.glade.h:20
msgid "Preserve time"
msgstr "Preservar tempo"
#: ../grsync.glade.h:21
msgid "Preserve permissions"
msgstr "Preservar permissões"
#: ../grsync.glade.h:22
msgid "Preserve owner"
msgstr "Preservar dono"
#: ../grsync.glade.h:23
msgid "Do not leave filesystem"
msgstr "Não deixar o sistema de arquivos"
#: ../grsync.glade.h:24
msgid "Do not cross filesystem boundaries"
msgstr "Não cruza os limites do sistema de arquivos"
#: ../grsync.glade.h:25
msgid "Delete on destination"
msgstr "Apagar no destino"
#: ../grsync.glade.h:26
msgid "Delete files in destination which are not present in the source"
msgstr "Apaga arquivos no destino inexistentes na origem"
#: ../grsync.glade.h:27
msgid "Verbose"
msgstr "Modo detalhado"
#: ../grsync.glade.h:28
msgid "Show more information"
msgstr "Mostra maiores informações"
#: ../grsync.glade.h:29
msgid "Show transfer progress"
msgstr "Mostrar progresso da transferência"
#: ../grsync.glade.h:30
msgid "Ignore existing"
msgstr "Ignorar arquivos existentes"
#: ../grsync.glade.h:31
msgid "Ignore files which already exist in the destination"
msgstr "Ignora os arquivos que já existem no destino"
#: ../grsync.glade.h:32
msgid "Size only"
msgstr "Somente por tamanho"
#: ../grsync.glade.h:33
msgid "Check size only, ignore time and checksum"
msgstr "Verifica somente o tamanho, ignora tempo e checksum"
#: ../grsync.glade.h:34
msgid "Skip newer"
msgstr "Saltar os arquivos novos"
#: ../grsync.glade.h:35
msgid "Do not update newer files"
msgstr "Não atualiza os arquivos novos"
#: ../grsync.glade.h:36
msgid "Windows compatibility"
msgstr "Compatibilidade com o Windows"
#: ../grsync.glade.h:37
msgid "Provides workaround for a windows FAT filesystem limitation"
msgstr ""
"Fornece uma solução alternativa para a limitação do sistema de arquivos FAT "
"do Windows"
#: ../grsync.glade.h:38
msgid "Click to open the file browser"
msgstr "Clique para abrir o navegador de arquivos"
#: ../grsync.glade.h:39
msgid "Source directory"
msgstr "Diretório de origem"
#: ../grsync.glade.h:40
msgid "Destination directory"
msgstr "Diretório de destino"
#: ../grsync.glade.h:41
msgid "Click here to switch the source with the destination directory"
msgstr "Clique aqui para alternar o diretório de origem com o de destino"
#: ../grsync.glade.h:42
msgid "Source and Destination:"
msgstr "Origem e Destino"
#: ../grsync.glade.h:43
msgid "Basic options"
msgstr "Opções básicas"
#: ../grsync.glade.h:44
msgid "Always checksum"
msgstr "Comparar checksum"
#: ../grsync.glade.h:45
msgid "Always compare file contents (by checksum)"
msgstr "Sempre compara o conteúdo dos arquivos (Através do checksum)"
#: ../grsync.glade.h:46
msgid "Preserve devices"
msgstr "Preservar dispositivos"
#: ../grsync.glade.h:47
msgid "Only update existing files"
msgstr "Atualizar somente os arquivos existentes"
#: ../grsync.glade.h:48
msgid "Keep partially transferred files"
msgstr "Manter parcialmente os arquivos transferidos"
#: ../grsync.glade.h:49
msgid "Don't map uid/gid values"
msgstr "Não mapear valores uid/gid"
#: ../grsync.glade.h:50
msgid "Keep numeric uid/gid instead of mapping user names and group names"
msgstr ""
"Mantenha o uid / gid numérico ao invés do mapeamento de nomes de usuário e "
"de grupo"
#: ../grsync.glade.h:51
msgid "Additional options:"
msgstr "Opções adicionais:"
#: ../grsync.glade.h:52
msgid "Compress file data"
msgstr "Compactar os dados do arquivo"
#: ../grsync.glade.h:53
msgid ""
"Compress file data when transferring (useful only if at least one side is "
"remote)"
msgstr ""
"Compactar os dados do arquivo durante a transferência (Útil somente nas "
"conexões remotas)"
#: ../grsync.glade.h:54
msgid "Copy symlinks as symlinks"
msgstr "Copiar atalhos como atalhos"
#: ../grsync.glade.h:55
msgid "Symbolic links are copied as such, do not copy link target file"
msgstr "Os atalhos são copiados como tal, não se copia o alvo do arquivo"
#: ../grsync.glade.h:56
msgid "Make backups"
msgstr "Realizar cópias de segurança"
#: ../grsync.glade.h:57
msgid "Make backups of existing files on the destination"
msgstr "Realiza cópias de segurança dos arquivos existentes no destino"
#: ../grsync.glade.h:58
msgid "Copy hardlinks as hardlinks"
msgstr "Copiar hardlinks como hardlinks"
#: ../grsync.glade.h:59
msgid "Hard links are copied as such, do not copy link target file"
msgstr "Hard links são copiados como tal, não se copia o arquivo alvo"
#: ../grsync.glade.h:60
msgid "Show itemized changes list"
msgstr "Mostrar a lista de alterações de forma discriminada"
#: ../grsync.glade.h:61
msgid "Show additional information on every changed file"
msgstr "Mostra informações adicionais a cada arquivo alterado"
#: ../grsync.glade.h:62
msgid "Disable recursion"
msgstr "Desabilitar recursão"
#: ../grsync.glade.h:63
msgid "If checked the subdirectories of the source folder will be ignored"
msgstr "Se marcado, os sub-diretórios da pasta de origem serão ignorados"
#: ../grsync.glade.h:64
msgid "Additional command line options to pass to the rsync program"
msgstr "Opções adicionais de linha de comando para passar para o rsync"
#: ../grsync.glade.h:65
msgid "Protect remote args"
msgstr "Proteger os argumentos remotos"
#: ../grsync.glade.h:66
msgid ""
"Protect remote arguments from shell expansion, Avoids the need to manually "
"escape remote folders and other options which use file names like --exclude"
msgstr ""
"Protege os argumentos remotos da expansão shell. Evita a necessidade de "
"descartar manualmente as pastas remotas e outras opções que usam nomes de "
"arquivos como --exclude"
#: ../grsync.glade.h:67
msgid "Advanced options"
msgstr "Opções avançadas"
#: ../grsync.glade.h:68
msgid "Execute this command before rsync:"
msgstr "Executar este comando antes do rsync:"
#: ../grsync.glade.h:69
msgid ""
"Click on this item if you want to run a command before syncing. Can be "
"useful, for instance, to mount a filesystem before starting or to do some "
"cleanup."
msgstr ""
"Clique neste item se você deseja executar um comando antes da sincronização. "
"Pode ser útil, por exemplo, para montar um sistema de arquivos antes do "
"rsync ou para fazer alguma limpeza."
#: ../grsync.glade.h:70
msgid "Execute this command after rsync:"
msgstr "Executar este comando depois do rsync:"
#: ../grsync.glade.h:71
msgid ""
"Click on this item if you want to run a command after syncing. Can be "
"useful, for instance, to unmount a filesystem at the end or to do some "
"cleanup."
msgstr ""
"Clique neste item se você deseja executar um comando depois da "
"sincronização. Pode ser útil, por exemplo, para desmontar um sistema de "
"arquivos no final ou para fazer alguma limpeza."
#: ../grsync.glade.h:72
msgid "Browse files instead of folders"
msgstr "Navegar por arquivos ao invés de pastas"
#: ../grsync.glade.h:73
msgid ""
"By setting this switch, the browse source and destination buttons will open "
"a dialog for selecting files instead of folders"
msgstr ""
"Ativando esta opção, os botões de origem e destino irão abrir uma caixa de "
"diálogo para seleção de arquivos ao invés de pastas"
#: ../grsync.glade.h:74
msgid "Halt on failure"
msgstr "Parar em caso de falha"
#: ../grsync.glade.h:75
msgid ""
"When running the \"before\" command, if it fails for some reason, don't run "
"rsync and halt"
msgstr ""
"Ao executar o comando \"anterior\" ao rsync, se houver falha por algum "
"motivo, não será executado o rsync e o programa será parado"
#: ../grsync.glade.h:76
msgid "On rsync error only"
msgstr "Apenas no caso de erro do rsync"
#: ../grsync.glade.h:77
msgid ""
"Execute the \"after\" command only if syncronization had errors.\n"
"For example can be used to send an email only in the case there was "
"trouble.\n"
"Try a command like \"mail -s 'rsync error' you@domain.com\"."
msgstr ""
"Execute o comando \"posterior\" ao rsync somente se a sincronização "
"apresentar erros.\n"
"Por exemplo: Pode ser utilizado para enviar um e-mail somente em caso de "
"problemas.\n"
"Tente o comando como o \"mail -s 'erro do rsync' seu@dominio.com\"."
#: ../grsync.glade.h:80
msgid "Notes:"
msgstr "Notas:"
#: ../grsync.glade.h:81
msgid "Free text notes on the current session"
msgstr "Notas em texto livre na atual sessão"
#: ../grsync.glade.h:82
msgid "Run as superuser"
msgstr "Executar como super-usuário"
#: ../grsync.glade.h:83
msgid ""
"Run rsync with superuser (root, administrator) privileges. Use this if you "
"need to access system files, for example when doing a full system backup."
msgstr ""
"Executar o rsync como privilégios de super-usuário (root, administrador). "
"Utilize isto se você precisar acessar os arquivos do sistema, ou seja, "
"executar uma cópia de todo o sistema."
#: ../grsync.glade.h:84
msgid "Extra options"
msgstr "Opções extras"
#: ../grsync.glade.h:85
msgid "Include these sessions:"
msgstr "Incluir estas sessões:"
#: ../grsync.glade.h:86
msgid "Set options"
msgstr "Opções de configuração"
#: ../grsync.glade.h:87
msgid "Add session"
msgstr "Adicionar sessão"
#: ../grsync.glade.h:88
msgid "Enter session name you want to create:"
msgstr "Digite o nome da sessão que você quer criar:"
#: ../grsync.glade.h:89
msgid "Enter the name of the new session to create"
msgstr "Digite o nome da nova sessão a ser criada"
#: ../grsync.glade.h:90
msgid "Add as session set"
msgstr "Adicionar como configuração de sessão"
#: ../grsync.glade.h:91
msgid "Create a new session set instead of a normal session"
msgstr "Criar uma nova configuração de sessão ao invés de uma sessão normal"
#: ../grsync.glade.h:92
msgid "Grsync preferences"
msgstr "Preferências do Grsync"
#: ../grsync.glade.h:93
msgid "Show rsync output by default"
msgstr "Mostrar saÃda rsync por padrão"
#: ../grsync.glade.h:94
msgid ""
"Wether to show rsync output by default or hide it (show graphical "
"information only)"
msgstr ""
"Mostra ou esconde por padrão a saÃda do rsync (mostra somente as informações "
"gráficas)"
#: ../grsync.glade.h:95
msgid "Remember last used session"
msgstr "Lembrar última sessão utilizada"
#: ../grsync.glade.h:96
msgid "Whether to load the last used session at startup or use the default one"
msgstr ""
"Seja para carregar a última sessão usada na inicialização ou usar uma padrão"
#: ../grsync.glade.h:97
msgid "Show error list when finished"
msgstr "Mostrar lista de erros quando finalizado"
#: ../grsync.glade.h:98
msgid ""
"When rsync has finished, show all the errors encountered in a separate window"
msgstr ""
"Quando o rsync finalizar, todos os erros encontrados serão exibidos numa "
"janela separada"
#: ../grsync.glade.h:99
msgid "Enable logging"
msgstr "Ativar log"
#: ../grsync.glade.h:100
msgid ""
"Whether to save rsync output to a log file, named like the session, which "
"will be located in the grsync directory (usually \".grsync\" into your user "
"home)"
msgstr ""
"Para salvar a saÃda do rsync para um arquivo de log, com o nome da sessão, "
"que será localizado no diretório do grsync (usualmente no \".grsync\" dentro "
"do home do seu usuário)"
#: ../grsync.glade.h:101
msgid "Enter the rsync command to use, eventually including its full path"
msgstr ""
"Digite o comando rsync a ser utilizado, incluindo eventualmente seu caminho "
"completo"
#: ../grsync.glade.h:102
msgid "Rsync executable:"
msgstr "Executável do rsync"
#: ../grsync.glade.h:103
msgid "Fast rsync output scrolling"
msgstr "Rolagem rápida da saÃda do rsync"
#: ../grsync.glade.h:104
msgid ""
"Select this if you want rsync output to scroll many lines at a time, in "
"order to be faster"
msgstr ""
"Selecione esta opção se quiser que a saÃda rsync role muitas linhas ao mesmo "
"tempo, em ordem para ser mais rápido"
#: ../grsync.glade.h:105
msgid "Enable switch button"
msgstr "Habilitar botão de alternar"
#: ../grsync.glade.h:106
msgid ""
"Select this if you want an additional \"switch source with destination\" "
"button in the basic options tab"
msgstr ""
"Selecione esta opção se você quiser um botão \"alternar origem com destino\" "
"adicional na aba de opções básicas"
#: ../grsync.glade.h:107
msgid "Use tray icon"
msgstr "Usar Ãcone da bandeja"
#: ../grsync.glade.h:108
msgid ""
"Check this box to show an icon of the application in the system tray instead "
"of the application bar (may not work on Unity environments, like Ubuntu >= "
"11.4)"
msgstr ""
"Marque esta caixa para mostrar um Ãcone do aplicativo na bandeja do sistema "
"ao invés da barra de aplicativos (pode não funcionar em ambientes Unity, "
"como Ubuntu >= 11.4)"
#: ../grsync.glade.h:109
msgid "Errors list"
msgstr "Lista de erros"
#: ../grsync.glade.h:110
msgid "Error list of last rsync run:"
msgstr "Lista de erros da última execução do rsync:"
#: ../grsync.glade.h:111
msgid "rsync"
msgstr "rsync"
#: ../grsync.glade.h:112
msgid "Idle"
msgstr "Inativo"
#: ../grsync.glade.h:113
msgid "Transfer progress of current file"
msgstr "Progresso de transferência do arquivo atual"
#: ../grsync.glade.h:114
msgid "Global progress"
msgstr "Progresso global"
#: ../grsync.glade.h:115
msgid ""
"Global transfer progress: works only with rsync version 2.6.1 or newer, and "
"may report wrong values depending on the ability of rsync to estimate the "
"files to be copied in advance"
msgstr ""
"Progresso da transferência global: trabalha somente com a versão 2.6.1 ou "
"mais atual do rsync, assim poderá ser informado valores errados, dependendo "
"da capacidade do rsync para estimar com antecedência os arquivos a serem "
"copiados"
#: ../grsync.glade.h:116
msgid "Rsync output:"
msgstr "SaÃda Rsync:"
#: ../grsync.glade.h:117
msgid "Click this button to show the error list"
msgstr "Clique neste botão para exibir a lista de erros"
#: ../grsync.glade.h:118
msgid "Pause/resume rsync run"
msgstr "Pausar/retomar execução do rsync"
#: ../grsync.glade.h:119
msgid "Stops rsync and closes the window"
msgstr "Pare o rsync e feche a janela"
#: ../grsync.glade.h:120
msgid "About trailing slashes"
msgstr "Sobre as barras finais"
#: ../grsync.glade.h:121
msgid ""
"A trailing slash on the source directory avoids creating an additional "
"directory level at the destination.\n"
"You can think of a trailing / on a source as meaning \"copy the contents of "
"this directory\" as opposed to \"copy the directory itself and its contents"
"\".\n"
"\n"
"In other words, each of the following commands copies the files in the same "
"way:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
msgstr ""
"Uma barra no final do diretório de origem evita a criação de um nÃvel de "
"diretório adicional ao destino.\n"
"Você pode pensar em uma / final na origem no sentido de “copiar o "
"conteúdo deste diretório” ao contrário de “copiar o próprio "
"diretório e seu conteúdo”.\n"
"\n"
"Em outras palavras, cada um dos seguintes comandos copia os arquivos do "
"mesmo jeito:\n"
"\n"
" rsync -a /src/foo /destino\n"
" rsync -a /src/foo/ /destino/foo\n"
#: ../src/main.c:58
#, c-format
msgid "Error: conflicting arguments\n"
msgstr "Erro: argumentos conflitantes\n"
#: ../src/callbacks.c:138
#, c-format
msgid "(ERROR) Can't open config file! Maybe this is the first run?\n"
msgstr ""
"(ERRO) Não foi possÃvel abrir o arquivo de configuração! Esta é a primeira "
"execução?\n"
#: ../src/callbacks.c:388 ../src/callbacks.c:1299
#, c-format
msgid "\tUnable to save settings!\n"
msgstr "\tNão é possÃvel salvar as configurações!\n"
#: ../src/callbacks.c:482 ../src/callbacks.c:485 ../src/callbacks.c:512
#: ../src/callbacks.c:515 ../src/callbacks.c:1481 ../src/callbacks.c:1485
#: ../src/callbacks.c:1516 ../src/callbacks.c:1520
msgid "Browse"
msgstr "Navegar"
#: ../src/callbacks.c:551
#, c-format
msgid "%.f%% (%li:%02li elapsed, %li:%02li remaining)"
msgstr "%.f%% (%li:%02li decorrido, %li:%02li restante)"
#: ../src/callbacks.c:703
msgid "Simulation in progress"
msgstr "Simulação em progresso"
#: ../src/callbacks.c:755 ../src/callbacks.c:760
msgid "The session you specified on the command line doesn't exists"
msgstr "A sessão especificada na linha de comando não existe"
#: ../src/callbacks.c:774 ../src/callbacks.c:777
msgid ""
"Unable to execute the rsync command line tool. It is needed by this program. "
"You may need to install the rsync package or make it available in the "
"default executable search PATH. See file/preferences to change the default "
"rsync executable command."
msgstr ""
"Não foi possÃvel executar a ferramenta de linha de comando do rsync. Isso é "
"necessário para este programa. Provavelmente você terá que instalar o pacote "
"rsync ou disponibilizá-lo através do CAMINHO padrão de pesquisa do "
"executável. Vá em Arquivo/Preferências para alterar o comando executável "
"padrão do rsync. "
#: ../src/callbacks.c:898
msgid "** Launching AFTER command:\n"
msgstr "** Carregando o comando POSTERIOR:\n"
#: ../src/callbacks.c:913
msgid "Completed with errors!"
msgstr ""
"Operação completada com erros!"
"span>"
#: ../src/callbacks.c:916
msgid ""
"Completed successfully!"
msgstr ""
"Operação completada com "
"sucesso!"
#: ../src/callbacks.c:1049
msgid "Rsync process exit status: "
msgstr "Rsync status de saÃda de processo:"
#: ../src/callbacks.c:1110
msgid "** Launching BEFORE command:\n"
msgstr "** Carregando o comando ANTERIOR:\n"
#: ../src/callbacks.c:1120
msgid "** Launching RSYNC command (simulation mode):\n"
msgstr "** Carregando o comando RSYNC (modo simulação):\n"
#: ../src/callbacks.c:1121
msgid "** Launching RSYNC command:\n"
msgstr "** Carregando o comando RSYNC:\n"
#: ../src/callbacks.c:1165 ../src/callbacks.c:1169
msgid "Cannot execute rsync"
msgstr "Não é possÃvel executar o rsync"
#: ../src/callbacks.c:1215 ../src/callbacks.c:1220
msgid "This session name is reserved, you cannot call it like this"
msgstr "Você não pode chamar a sessão por este nome pois o mesmo é reservado"
#: ../src/callbacks.c:1231 ../src/callbacks.c:1236
msgid "A session named like this already exists"
msgstr "Já existe uma sessão com este nome"
#: ../src/callbacks.c:1265 ../src/callbacks.c:1270
msgid "You cannot delete the default session"
msgstr "Você não pode deletar a sessão padrão"
#: ../src/callbacks.c:1278 ../src/callbacks.c:1281
#, c-format
msgid "Are you sure you want to delete the '%s' session?"
msgstr "Você tem certeza que deseja apagar a sessão '%s'?"
#: ../src/callbacks.c:1313
msgid "Application icons by Roberto Gadotti "
msgstr "Ãcone por Roberto Gadotti "
#: ../src/callbacks.c:1318
msgid "Written by Piero Orsoni "
msgstr "Escrito por Piero Orsoni "
#: ../src/callbacks.c:1319
msgid "Maemo compatibility by Luca Donaggio "
msgstr "Compatibilidade com o Maema por Luca Donaggio "
#: ../src/callbacks.c:1320
msgid "Additional bug-fixing by Luca Marturana "
msgstr ""
"Correção adicional de erros por Luca Marturana "
#: ../src/callbacks.c:1322
msgid "Dutch translation by Frank de Bruijn "
msgstr "Tradução holandesa por Frank de Bruijn "
#: ../src/callbacks.c:1323
msgid "Simplified Chinese translation by Xie Yanbo "
msgstr "Tradução chinesa por Xie Yanbo "
#: ../src/callbacks.c:1324
msgid "French translation by xavier "
msgstr "Tradução francesa por Xavier "
#: ../src/callbacks.c:1325
msgid "Swedish translation by Daniel Nylander "
msgstr "Tradução sueca por Daniel Nylander "
#: ../src/callbacks.c:1326
msgid "Turkish translation by Doruk Fisek "
msgstr "Tradução turca por Doruk Fisek "
#: ../src/callbacks.c:1327
msgid "Russian translation by Evgenii Terechkov "
msgstr "Tradução russa por Evgenii Terechkov "
#: ../src/callbacks.c:1328
msgid "German translation by Martin Lettner "
msgstr "Tradução alemã por Martin Lettner "
#: ../src/callbacks.c:1329
msgid "Spanish translation by Ibon Castilla Varela "
msgstr "Tradução espanhola por Ibon Castilla Varela "
#: ../src/callbacks.c:1330
msgid "Czech translation by Martin Balajka "
msgstr "Tradução checa por Martin Balajka "
#: ../src/callbacks.c:1331
msgid "Galician translation by Daniel Espinheira "
msgstr "Tradução galega por Daniel Espinheira "
#: ../src/callbacks.c:1332
msgid "Catalan translation by Josep SÃ nchez "
msgstr "Tradução catalã por Josep Sà nchez "
#: ../src/callbacks.c:1333
msgid ""
"Brazilian Portuguese translation by Fábio Nogueira "
msgstr ""
"Tradução Português do Brasil por Fábio Nogueira "
#: ../src/callbacks.c:1334
msgid "Indonesian translation by Waluyo Adi Siswanto "
msgstr "Tradução indonésia por Waluyo Adi Siswanto "
#: ../src/callbacks.c:1335
msgid "Croatian translation by Bojan Vondra "
msgstr ""
#: ../src/callbacks.c:1339
msgid "Synchronize files and folders (a GTK GUI for rsync)."
msgstr "Sincronizar arquivos e pastas (Um GTK GUI para o rsync)"
#: ../src/callbacks.c:1340
msgid ""
"(C) Piero Orsoni and others. Released under the GPL.\n"
"See COPYING for details"
msgstr ""
"(C) Piero Orsoni e outros. Lançado sobre a GPL.\n"
"Veja COPYING para maiores detalhes"
#: ../src/callbacks.c:1496 ../src/callbacks.c:1500
msgid "Session imported"
msgstr "Sessão importada"
#: ../src/callbacks.c:1532 ../src/callbacks.c:1536
msgid "Session exported"
msgstr "Sessão exportada"
grsync-1.2.5/po/zh_CN.po 0000664 0001750 0001750 00000042607 12375103757 011751 0000000 0000000 # SIMPLIFIED CHINESE translation of grsync.
# Copyright (C) 2006 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the grsync package.
# Xie Yanbo , 2006.
#
msgid ""
msgstr ""
"Project-Id-Version: 0.2\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2006-01-10 10:04:00+0800\n"
"Last-Translator: Xie Yanbo \n"
"Language-Team: Simplified Chinese \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../grsync.glade.h:1
msgid "Grsync"
msgstr "Grsync"
#: ../grsync.glade.h:2
msgid "_File"
msgstr ""
#: ../grsync.glade.h:3
#, fuzzy
msgid "Browse S_ource"
msgstr "æµè§ˆ"
#: ../grsync.glade.h:4
#, fuzzy
msgid "Browse _Destination"
msgstr "åˆ é™¤ç›®æ ‡æ–‡ä»¶"
#: ../grsync.glade.h:5
#, fuzzy
msgid "Switch source with destination"
msgstr "åˆ é™¤ç›®æ ‡æ–‡ä»¶"
#: ../grsync.glade.h:6
msgid "_Simulation"
msgstr ""
#: ../grsync.glade.h:7
msgid "_Rsync command line"
msgstr ""
#: ../grsync.glade.h:8
#, fuzzy
msgid "S_essions"
msgstr "会è¯ï¼š"
#: ../grsync.glade.h:9
msgid "_Import"
msgstr ""
#: ../grsync.glade.h:10
msgid "_Export"
msgstr ""
#: ../grsync.glade.h:11
msgid "_Help"
msgstr ""
#: ../grsync.glade.h:12
msgid "_Rsync info"
msgstr ""
#: ../grsync.glade.h:13
msgid "_Contribute"
msgstr ""
#: ../grsync.glade.h:14
#, fuzzy
msgid "Click to add a new session"
msgstr "您ä¸èƒ½åˆ 除默认会è¯"
#: ../grsync.glade.h:15
#, fuzzy
msgid "Click to delete the current session"
msgstr "您ä¸èƒ½åˆ 除默认会è¯"
#: ../grsync.glade.h:16
msgid ""
"Show what would have been done, but actually do nothing (\"dry-run\" in "
"rsync language)"
msgstr ""
#: ../grsync.glade.h:17
msgid "_Simulate"
msgstr ""
#: ../grsync.glade.h:18
msgid "Make a full run (go!)"
msgstr ""
#: ../grsync.glade.h:19
msgid "Preserve group"
msgstr "ä¿ç•™å±žç»„"
#: ../grsync.glade.h:20
msgid "Preserve time"
msgstr "ä¿ç•™æ—¶é—´"
#: ../grsync.glade.h:21
msgid "Preserve permissions"
msgstr "ä¿ç•™æƒé™"
#: ../grsync.glade.h:22
msgid "Preserve owner"
msgstr "ä¿ç•™å±žä¸»"
#: ../grsync.glade.h:23
msgid "Do not leave filesystem"
msgstr "ä¸ç¦»å¼€å½“剿–‡ä»¶ç³»ç»Ÿ"
#: ../grsync.glade.h:24
#, fuzzy
msgid "Do not cross filesystem boundaries"
msgstr "ä¸ç¦»å¼€å½“剿–‡ä»¶ç³»ç»Ÿ"
#: ../grsync.glade.h:25
msgid "Delete on destination"
msgstr "åˆ é™¤ç›®æ ‡æ–‡ä»¶"
#: ../grsync.glade.h:26
msgid "Delete files in destination which are not present in the source"
msgstr ""
#: ../grsync.glade.h:27
msgid "Verbose"
msgstr "详细信æ¯"
#: ../grsync.glade.h:28
msgid "Show more information"
msgstr ""
#: ../grsync.glade.h:29
msgid "Show transfer progress"
msgstr "æ˜¾ç¤ºä¼ è¾“è¿›åº¦"
#: ../grsync.glade.h:30
#, fuzzy
msgid "Ignore existing"
msgstr "忽略已å˜åœ¨æ–‡ä»¶"
#: ../grsync.glade.h:31
msgid "Ignore files which already exist in the destination"
msgstr ""
#: ../grsync.glade.h:32
#, fuzzy
msgid "Size only"
msgstr "åªæ¯”较尺寸"
#: ../grsync.glade.h:33
msgid "Check size only, ignore time and checksum"
msgstr ""
#: ../grsync.glade.h:34
msgid "Skip newer"
msgstr ""
#: ../grsync.glade.h:35
#, fuzzy
msgid "Do not update newer files"
msgstr "åªæ›´æ–°å·²å˜åœ¨çš„æ–‡ä»¶"
#: ../grsync.glade.h:36
msgid "Windows compatibility"
msgstr ""
#: ../grsync.glade.h:37
msgid "Provides workaround for a windows FAT filesystem limitation"
msgstr ""
#: ../grsync.glade.h:38
msgid "Click to open the file browser"
msgstr ""
#: ../grsync.glade.h:39
msgid "Source directory"
msgstr ""
#: ../grsync.glade.h:40
msgid "Destination directory"
msgstr ""
#: ../grsync.glade.h:41
msgid "Click here to switch the source with the destination directory"
msgstr ""
#: ../grsync.glade.h:42
#, fuzzy
msgid "Source and Destination:"
msgstr "åˆ é™¤ç›®æ ‡æ–‡ä»¶"
#: ../grsync.glade.h:43
msgid "Basic options"
msgstr "常用选项"
#: ../grsync.glade.h:44
msgid "Always checksum"
msgstr "æ€»æ˜¯æ£€æŸ¥æ ¡éªŒç "
#: ../grsync.glade.h:45
msgid "Always compare file contents (by checksum)"
msgstr ""
#: ../grsync.glade.h:46
msgid "Preserve devices"
msgstr "ä¿ç•™è®¾å¤‡ä¿¡æ¯"
#: ../grsync.glade.h:47
msgid "Only update existing files"
msgstr "åªæ›´æ–°å·²å˜åœ¨çš„æ–‡ä»¶"
#: ../grsync.glade.h:48
msgid "Keep partially transferred files"
msgstr "ä¿ç•™æœªä¼ 输完æˆçš„æ–‡ä»¶"
#: ../grsync.glade.h:49
msgid "Don't map uid/gid values"
msgstr "使用uidå’Œgid的数å—而éžåç§°"
#: ../grsync.glade.h:50
msgid "Keep numeric uid/gid instead of mapping user names and group names"
msgstr ""
#: ../grsync.glade.h:51
#, fuzzy
msgid "Additional options:"
msgstr "高级选项"
#: ../grsync.glade.h:52
msgid "Compress file data"
msgstr "ä¼ è¾“æ—¶åŽ‹ç¼©æ–‡ä»¶æ•°æ®"
#: ../grsync.glade.h:53
#, fuzzy
msgid ""
"Compress file data when transferring (useful only if at least one side is "
"remote)"
msgstr "ä¼ è¾“æ—¶åŽ‹ç¼©æ–‡ä»¶æ•°æ®"
#: ../grsync.glade.h:54
msgid "Copy symlinks as symlinks"
msgstr "åƒå¯¹å¾…æ™®é€šæ–‡ä»¶ä¸€æ ·æ‹·è´ç¬¦å·é“¾æŽ¥"
#: ../grsync.glade.h:55
msgid "Symbolic links are copied as such, do not copy link target file"
msgstr ""
#: ../grsync.glade.h:56
msgid "Make backups"
msgstr "ä¿å˜å¤‡ä»½æ–‡ä»¶"
#: ../grsync.glade.h:57
msgid "Make backups of existing files on the destination"
msgstr ""
#: ../grsync.glade.h:58
#, fuzzy
msgid "Copy hardlinks as hardlinks"
msgstr "åƒå¯¹å¾…æ™®é€šæ–‡ä»¶ä¸€æ ·æ‹·è´ç¬¦å·é“¾æŽ¥"
#: ../grsync.glade.h:59
msgid "Hard links are copied as such, do not copy link target file"
msgstr ""
#: ../grsync.glade.h:60
msgid "Show itemized changes list"
msgstr ""
#: ../grsync.glade.h:61
msgid "Show additional information on every changed file"
msgstr ""
#: ../grsync.glade.h:62
msgid "Disable recursion"
msgstr ""
#: ../grsync.glade.h:63
msgid "If checked the subdirectories of the source folder will be ignored"
msgstr ""
#: ../grsync.glade.h:64
msgid "Additional command line options to pass to the rsync program"
msgstr ""
#: ../grsync.glade.h:65
msgid "Protect remote args"
msgstr ""
#: ../grsync.glade.h:66
msgid ""
"Protect remote arguments from shell expansion, Avoids the need to manually "
"escape remote folders and other options which use file names like --exclude"
msgstr ""
#: ../grsync.glade.h:67
msgid "Advanced options"
msgstr "高级选项"
#: ../grsync.glade.h:68
msgid "Execute this command before rsync:"
msgstr ""
#: ../grsync.glade.h:69
msgid ""
"Click on this item if you want to run a command before syncing. Can be "
"useful, for instance, to mount a filesystem before starting or to do some "
"cleanup."
msgstr ""
#: ../grsync.glade.h:70
msgid "Execute this command after rsync:"
msgstr ""
#: ../grsync.glade.h:71
msgid ""
"Click on this item if you want to run a command after syncing. Can be "
"useful, for instance, to unmount a filesystem at the end or to do some "
"cleanup."
msgstr ""
#: ../grsync.glade.h:72
msgid "Browse files instead of folders"
msgstr ""
#: ../grsync.glade.h:73
msgid ""
"By setting this switch, the browse source and destination buttons will open "
"a dialog for selecting files instead of folders"
msgstr ""
#: ../grsync.glade.h:74
msgid "Halt on failure"
msgstr ""
#: ../grsync.glade.h:75
msgid ""
"When running the \"before\" command, if it fails for some reason, don't run "
"rsync and halt"
msgstr ""
#: ../grsync.glade.h:76
msgid "On rsync error only"
msgstr ""
#: ../grsync.glade.h:77
msgid ""
"Execute the \"after\" command only if syncronization had errors.\n"
"For example can be used to send an email only in the case there was "
"trouble.\n"
"Try a command like \"mail -s 'rsync error' you@domain.com\"."
msgstr ""
#: ../grsync.glade.h:80
msgid "Notes:"
msgstr ""
#: ../grsync.glade.h:81
#, fuzzy
msgid "Free text notes on the current session"
msgstr "您ä¸èƒ½åˆ 除默认会è¯"
#: ../grsync.glade.h:82
msgid "Run as superuser"
msgstr ""
#: ../grsync.glade.h:83
msgid ""
"Run rsync with superuser (root, administrator) privileges. Use this if you "
"need to access system files, for example when doing a full system backup."
msgstr ""
#: ../grsync.glade.h:84
#, fuzzy
msgid "Extra options"
msgstr "常用选项"
#: ../grsync.glade.h:85
msgid "Include these sessions:"
msgstr ""
#: ../grsync.glade.h:86
#, fuzzy
msgid "Set options"
msgstr "常用选项"
#: ../grsync.glade.h:87
#, fuzzy
msgid "Add session"
msgstr "会è¯ï¼š"
#: ../grsync.glade.h:88
#, fuzzy
msgid "Enter session name you want to create:"
msgstr "输入会è¯åç§°"
#: ../grsync.glade.h:89
#, fuzzy
msgid "Enter the name of the new session to create"
msgstr "输入会è¯åç§°"
#: ../grsync.glade.h:90
#, fuzzy
msgid "Add as session set"
msgstr "会è¯ï¼š"
#: ../grsync.glade.h:91
msgid "Create a new session set instead of a normal session"
msgstr ""
#: ../grsync.glade.h:92
msgid "Grsync preferences"
msgstr ""
#: ../grsync.glade.h:93
msgid "Show rsync output by default"
msgstr ""
#: ../grsync.glade.h:94
msgid ""
"Wether to show rsync output by default or hide it (show graphical "
"information only)"
msgstr ""
#: ../grsync.glade.h:95
msgid "Remember last used session"
msgstr ""
#: ../grsync.glade.h:96
msgid "Whether to load the last used session at startup or use the default one"
msgstr ""
#: ../grsync.glade.h:97
msgid "Show error list when finished"
msgstr ""
#: ../grsync.glade.h:98
msgid ""
"When rsync has finished, show all the errors encountered in a separate window"
msgstr ""
#: ../grsync.glade.h:99
msgid "Enable logging"
msgstr ""
#: ../grsync.glade.h:100
msgid ""
"Whether to save rsync output to a log file, named like the session, which "
"will be located in the grsync directory (usually \".grsync\" into your user "
"home)"
msgstr ""
#: ../grsync.glade.h:101
msgid "Enter the rsync command to use, eventually including its full path"
msgstr ""
#: ../grsync.glade.h:102
#, fuzzy
msgid "Rsync executable:"
msgstr "Rsync 输出:"
#: ../grsync.glade.h:103
msgid "Fast rsync output scrolling"
msgstr ""
#: ../grsync.glade.h:104
msgid ""
"Select this if you want rsync output to scroll many lines at a time, in "
"order to be faster"
msgstr ""
#: ../grsync.glade.h:105
msgid "Enable switch button"
msgstr ""
#: ../grsync.glade.h:106
msgid ""
"Select this if you want an additional \"switch source with destination\" "
"button in the basic options tab"
msgstr ""
#: ../grsync.glade.h:107
msgid "Use tray icon"
msgstr ""
#: ../grsync.glade.h:108
msgid ""
"Check this box to show an icon of the application in the system tray instead "
"of the application bar (may not work on Unity environments, like Ubuntu >= "
"11.4)"
msgstr ""
#: ../grsync.glade.h:109
msgid "Errors list"
msgstr ""
#: ../grsync.glade.h:110
msgid "Error list of last rsync run:"
msgstr ""
#: ../grsync.glade.h:111
msgid "rsync"
msgstr "rsync"
#: ../grsync.glade.h:112
msgid "Idle"
msgstr ""
#: ../grsync.glade.h:113
msgid "Transfer progress of current file"
msgstr ""
#: ../grsync.glade.h:114
msgid "Global progress"
msgstr ""
#: ../grsync.glade.h:115
msgid ""
"Global transfer progress: works only with rsync version 2.6.1 or newer, and "
"may report wrong values depending on the ability of rsync to estimate the "
"files to be copied in advance"
msgstr ""
#: ../grsync.glade.h:116
msgid "Rsync output:"
msgstr "Rsync 输出:"
#: ../grsync.glade.h:117
msgid "Click this button to show the error list"
msgstr ""
#: ../grsync.glade.h:118
msgid "Pause/resume rsync run"
msgstr ""
#: ../grsync.glade.h:119
msgid "Stops rsync and closes the window"
msgstr ""
#: ../grsync.glade.h:120
msgid "About trailing slashes"
msgstr ""
#: ../grsync.glade.h:121
msgid ""
"A trailing slash on the source directory avoids creating an additional "
"directory level at the destination.\n"
"You can think of a trailing / on a source as meaning \"copy the contents of "
"this directory\" as opposed to \"copy the directory itself and its contents"
"\".\n"
"\n"
"In other words, each of the following commands copies the files in the same "
"way:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
msgstr ""
#: ../src/main.c:58
#, c-format
msgid "Error: conflicting arguments\n"
msgstr ""
#: ../src/callbacks.c:138
#, c-format
msgid "(ERROR) Can't open config file! Maybe this is the first run?\n"
msgstr "(错误) ä¸èƒ½æ‰“å¼€é…置文件ï¼è¿™æ˜¯ç¬¬ä¸€æ¬¡è¿è¡Œæœ¬ç¨‹åºå—?\n"
#: ../src/callbacks.c:388 ../src/callbacks.c:1299
#, c-format
msgid "\tUnable to save settings!\n"
msgstr "\tæ— æ³•ä¿å˜è®¾ç½®ï¼\n"
#: ../src/callbacks.c:482 ../src/callbacks.c:485 ../src/callbacks.c:512
#: ../src/callbacks.c:515 ../src/callbacks.c:1481 ../src/callbacks.c:1485
#: ../src/callbacks.c:1516 ../src/callbacks.c:1520
msgid "Browse"
msgstr "æµè§ˆ"
#: ../src/callbacks.c:551
#, c-format
msgid "%.f%% (%li:%02li elapsed, %li:%02li remaining)"
msgstr ""
#: ../src/callbacks.c:703
msgid "Simulation in progress"
msgstr ""
#: ../src/callbacks.c:755 ../src/callbacks.c:760
msgid "The session you specified on the command line doesn't exists"
msgstr ""
#: ../src/callbacks.c:774 ../src/callbacks.c:777
#, fuzzy
msgid ""
"Unable to execute the rsync command line tool. It is needed by this program. "
"You may need to install the rsync package or make it available in the "
"default executable search PATH. See file/preferences to change the default "
"rsync executable command."
msgstr ""
"æ— æ³•è¿è¡Œå¿…éœ€çš„å‘½ä»¤è¡Œç¨‹åº rsync。您需è¦å®‰è£… rsync è½¯ä»¶åŒ…ï¼Œå¹¶ç¡®è®¤å®ƒçš„å¯æ‰§è¡Œç¨‹åº"
"ä½äºŽæŸ¥è¯¢è·¯å¾„ PATH ä¸ã€‚"
#: ../src/callbacks.c:898
msgid "** Launching AFTER command:\n"
msgstr ""
#: ../src/callbacks.c:913
msgid "Completed with errors!"
msgstr ""
#: ../src/callbacks.c:916
msgid ""
"Completed successfully!"
msgstr ""
#: ../src/callbacks.c:1049
msgid "Rsync process exit status: "
msgstr ""
#: ../src/callbacks.c:1110
msgid "** Launching BEFORE command:\n"
msgstr ""
#: ../src/callbacks.c:1120
msgid "** Launching RSYNC command (simulation mode):\n"
msgstr ""
#: ../src/callbacks.c:1121
msgid "** Launching RSYNC command:\n"
msgstr ""
#: ../src/callbacks.c:1165 ../src/callbacks.c:1169
msgid "Cannot execute rsync"
msgstr ""
#: ../src/callbacks.c:1215 ../src/callbacks.c:1220
msgid "This session name is reserved, you cannot call it like this"
msgstr ""
#: ../src/callbacks.c:1231 ../src/callbacks.c:1236
msgid "A session named like this already exists"
msgstr ""
#: ../src/callbacks.c:1265 ../src/callbacks.c:1270
msgid "You cannot delete the default session"
msgstr "您ä¸èƒ½åˆ 除默认会è¯"
#: ../src/callbacks.c:1278 ../src/callbacks.c:1281
#, c-format
msgid "Are you sure you want to delete the '%s' session?"
msgstr "您确认è¦åˆ 除会è¯â€œ%sâ€å—?"
#: ../src/callbacks.c:1313
msgid "Application icons by Roberto Gadotti "
msgstr ""
#: ../src/callbacks.c:1318
msgid "Written by Piero Orsoni "
msgstr ""
#: ../src/callbacks.c:1319
msgid "Maemo compatibility by Luca Donaggio "
msgstr ""
#: ../src/callbacks.c:1320
msgid "Additional bug-fixing by Luca Marturana "
msgstr ""
#: ../src/callbacks.c:1322
msgid "Dutch translation by Frank de Bruijn "
msgstr ""
#: ../src/callbacks.c:1323
msgid "Simplified Chinese translation by Xie Yanbo "
msgstr ""
#: ../src/callbacks.c:1324
msgid "French translation by xavier "
msgstr ""
#: ../src/callbacks.c:1325
msgid "Swedish translation by Daniel Nylander "
msgstr ""
#: ../src/callbacks.c:1326
msgid "Turkish translation by Doruk Fisek "
msgstr ""
#: ../src/callbacks.c:1327
msgid "Russian translation by Evgenii Terechkov "
msgstr ""
#: ../src/callbacks.c:1328
msgid "German translation by Martin Lettner "
msgstr ""
#: ../src/callbacks.c:1329
msgid "Spanish translation by Ibon Castilla Varela "
msgstr ""
#: ../src/callbacks.c:1330
msgid "Czech translation by Martin Balajka "
msgstr ""
#: ../src/callbacks.c:1331
msgid "Galician translation by Daniel Espinheira "
msgstr ""
#: ../src/callbacks.c:1332
msgid "Catalan translation by Josep SÃ nchez "
msgstr ""
#: ../src/callbacks.c:1333
msgid ""
"Brazilian Portuguese translation by Fábio Nogueira "
msgstr ""
#: ../src/callbacks.c:1334
msgid "Indonesian translation by Waluyo Adi Siswanto "
msgstr ""
#: ../src/callbacks.c:1335
msgid "Croatian translation by Bojan Vondra "
msgstr ""
#: ../src/callbacks.c:1339
msgid "Synchronize files and folders (a GTK GUI for rsync)."
msgstr ""
#: ../src/callbacks.c:1340
#, fuzzy
msgid ""
"(C) Piero Orsoni and others. Released under the GPL.\n"
"See COPYING for details"
msgstr ""
"(C) Piero Orsoni 与其他人\n"
"基于 GPL 许å¯è¯å‘布\n"
"详情请å‚考 AUTHORS å’Œ COPYING 文件\n"
"\n"
"http://www.opbyte.it/grsync/"
#: ../src/callbacks.c:1496 ../src/callbacks.c:1500
msgid "Session imported"
msgstr ""
#: ../src/callbacks.c:1532 ../src/callbacks.c:1536
msgid "Session exported"
msgstr ""
#, fuzzy
#~ msgid ""
#~ "Source and Destination (directories need a trailing \"/\")"
#~ msgstr "æºè·¯å¾„åŠç›®çš„路径:(æºç›®å½•需è¦ä¿ç•™æœ€å°¾çš„‘/’å—符)"
#, fuzzy
#~ msgid "A GTK GUI for rsync"
#~ msgstr "Rsync çš„ GTK 图形界é¢ç¨‹åºã€‚\n"
#, fuzzy
#~ msgid "Sessions"
#~ msgstr "会è¯ï¼š"
#~ msgid "Couldn't find pixmap file: %s"
#~ msgstr "æ— æ³•æ‰“å¼€ä½å›¾æ–‡ä»¶ï¼š%s"
#~ msgid "_Dry Run"
#~ msgstr "预演è¿è¡Œ(_D)"
#~ msgid "About"
#~ msgstr "关于"
#~ msgid "Grsync 0.2\n"
#~ msgstr "Grsync 0.2\n"
grsync-1.2.5/po/ChangeLog 0000664 0001750 0001750 00000000000 12137727646 012144 0000000 0000000 grsync-1.2.5/po/nb_NO.po 0000664 0001750 0001750 00000046657 12375104132 011740 0000000 0000000 # translation of grsync.po to
# translation of nb.po to
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
#
# Alexander Nicolaysen Sørnes , 2006.
msgid ""
msgstr ""
"Project-Id-Version: grsync\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2006-07-10 01:40+0200\n"
"Last-Translator: Alexander Nicolaysen Sørnes \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.2\n"
#: ../grsync.glade.h:1
msgid "Grsync"
msgstr "Grsync"
#: ../grsync.glade.h:2
msgid "_File"
msgstr "_Fil"
#: ../grsync.glade.h:3
msgid "Browse S_ource"
msgstr "Finn _kilde"
#: ../grsync.glade.h:4
msgid "Browse _Destination"
msgstr "Finn _mål"
#: ../grsync.glade.h:5
#, fuzzy
msgid "Switch source with destination"
msgstr "Bytt kilde med mål"
#: ../grsync.glade.h:6
msgid "_Simulation"
msgstr "_Simuler"
#: ../grsync.glade.h:7
#, fuzzy
msgid "_Rsync command line"
msgstr "_Rsync-info"
#: ../grsync.glade.h:8
#, fuzzy
msgid "S_essions"
msgstr "_Økter"
#: ../grsync.glade.h:9
msgid "_Import"
msgstr ""
#: ../grsync.glade.h:10
msgid "_Export"
msgstr ""
#: ../grsync.glade.h:11
msgid "_Help"
msgstr "_Hjelp"
#: ../grsync.glade.h:12
msgid "_Rsync info"
msgstr "_Rsync-info"
#: ../grsync.glade.h:13
msgid "_Contribute"
msgstr ""
#: ../grsync.glade.h:14
msgid "Click to add a new session"
msgstr "Trykk for å legge til en økt"
#: ../grsync.glade.h:15
msgid "Click to delete the current session"
msgstr "Trykk for å slette denne økten"
#: ../grsync.glade.h:16
msgid ""
"Show what would have been done, but actually do nothing (\"dry-run\" in "
"rsync language)"
msgstr ""
"Vis hva som ville ha blitt gjort, men gjør ingenting («tørrkjøring» på rsync-"
"språket)"
#: ../grsync.glade.h:17
#, fuzzy
msgid "_Simulate"
msgstr "_Simuler"
#: ../grsync.glade.h:18
msgid "Make a full run (go!)"
msgstr "Synkroniser nå"
#: ../grsync.glade.h:19
msgid "Preserve group"
msgstr "Behold gruppe"
#: ../grsync.glade.h:20
msgid "Preserve time"
msgstr "Behold tid"
#: ../grsync.glade.h:21
msgid "Preserve permissions"
msgstr "Behold tillatelser"
#: ../grsync.glade.h:22
msgid "Preserve owner"
msgstr "Behold eier"
#: ../grsync.glade.h:23
msgid "Do not leave filesystem"
msgstr "Ikke forlat filsystem"
#: ../grsync.glade.h:24
msgid "Do not cross filesystem boundaries"
msgstr "Ikke gå over filsystemgrenser"
#: ../grsync.glade.h:25
msgid "Delete on destination"
msgstr "Slett i mål"
#: ../grsync.glade.h:26
msgid "Delete files in destination which are not present in the source"
msgstr "Slett filer i målet som ikke er i kilden"
#: ../grsync.glade.h:27
msgid "Verbose"
msgstr "Utdypet"
#: ../grsync.glade.h:28
msgid "Show more information"
msgstr "Vis mer informasjon"
#: ../grsync.glade.h:29
msgid "Show transfer progress"
msgstr "Vis framgangslinje"
#: ../grsync.glade.h:30
#, fuzzy
msgid "Ignore existing"
msgstr "Hopp over eksisterende"
#: ../grsync.glade.h:31
msgid "Ignore files which already exist in the destination"
msgstr "Overse filer som allerede finnes i målet"
#: ../grsync.glade.h:32
#, fuzzy
msgid "Size only"
msgstr "Kun størrelse"
#: ../grsync.glade.h:33
msgid "Check size only, ignore time and checksum"
msgstr "Kun kontroller størrelse; overse tid og kontrollsum"
#: ../grsync.glade.h:34
msgid "Skip newer"
msgstr ""
#: ../grsync.glade.h:35
#, fuzzy
msgid "Do not update newer files"
msgstr "Oppdater kun eksisterende filer"
#: ../grsync.glade.h:36
msgid "Windows compatibility"
msgstr ""
#: ../grsync.glade.h:37
msgid "Provides workaround for a windows FAT filesystem limitation"
msgstr ""
#: ../grsync.glade.h:38
msgid "Click to open the file browser"
msgstr "Trykk for å åpne bla-vinduet"
#: ../grsync.glade.h:39
msgid "Source directory"
msgstr "Kildekatalog"
#: ../grsync.glade.h:40
msgid "Destination directory"
msgstr "MÃ¥lkatalog"
#: ../grsync.glade.h:41
msgid "Click here to switch the source with the destination directory"
msgstr "Trykk her for å bytte kildekatalogen med målkatalogen"
#: ../grsync.glade.h:42
#, fuzzy
msgid "Source and Destination:"
msgstr "Finn _mål"
#: ../grsync.glade.h:43
msgid "Basic options"
msgstr "Basisoppsett"
#: ../grsync.glade.h:44
msgid "Always checksum"
msgstr "Bruk alltid kontrollsum"
#: ../grsync.glade.h:45
msgid "Always compare file contents (by checksum)"
msgstr "Alltid kontroller filinnhold (med kontrollsum)"
#: ../grsync.glade.h:46
msgid "Preserve devices"
msgstr "Behold enheter"
#: ../grsync.glade.h:47
msgid "Only update existing files"
msgstr "Oppdater kun eksisterende filer"
#: ../grsync.glade.h:48
msgid "Keep partially transferred files"
msgstr "Behold delvis overførte filer"
#: ../grsync.glade.h:49
msgid "Don't map uid/gid values"
msgstr "Ikke slå opp uid-/gid-verdier"
#: ../grsync.glade.h:50
msgid "Keep numeric uid/gid instead of mapping user names and group names"
msgstr ""
"Behold numeriske uid-/gid-verdier i stedet for å slå opp bruker- og "
"gruppenavn"
#: ../grsync.glade.h:51
#, fuzzy
msgid "Additional options:"
msgstr "Avansert oppsett"
#: ../grsync.glade.h:52
msgid "Compress file data"
msgstr "Komprimer fildata"
#: ../grsync.glade.h:53
#, fuzzy
msgid ""
"Compress file data when transferring (useful only if at least one side is "
"remote)"
msgstr "Komprimer fildata under overføring"
#: ../grsync.glade.h:54
msgid "Copy symlinks as symlinks"
msgstr "Behold symbolkse koblinger"
#: ../grsync.glade.h:55
msgid "Symbolic links are copied as such, do not copy link target file"
msgstr "Symbolske koblinger kopieres, ikke filene de peker til"
#: ../grsync.glade.h:56
msgid "Make backups"
msgstr "Ta sikkerhetskopier"
#: ../grsync.glade.h:57
msgid "Make backups of existing files on the destination"
msgstr "Lag sikkerhetskopier av eksisterende filer i målet"
#: ../grsync.glade.h:58
#, fuzzy
msgid "Copy hardlinks as hardlinks"
msgstr "Behold symbolkse koblinger"
#: ../grsync.glade.h:59
#, fuzzy
msgid "Hard links are copied as such, do not copy link target file"
msgstr "Symbolske koblinger kopieres, ikke filene de peker til"
#: ../grsync.glade.h:60
msgid "Show itemized changes list"
msgstr ""
#: ../grsync.glade.h:61
msgid "Show additional information on every changed file"
msgstr ""
#: ../grsync.glade.h:62
msgid "Disable recursion"
msgstr ""
#: ../grsync.glade.h:63
msgid "If checked the subdirectories of the source folder will be ignored"
msgstr ""
#: ../grsync.glade.h:64
msgid "Additional command line options to pass to the rsync program"
msgstr ""
"Ytterligere innstillinger som skal gis til rsync-programmet på kommandolinjen"
#: ../grsync.glade.h:65
msgid "Protect remote args"
msgstr ""
#: ../grsync.glade.h:66
msgid ""
"Protect remote arguments from shell expansion, Avoids the need to manually "
"escape remote folders and other options which use file names like --exclude"
msgstr ""
#: ../grsync.glade.h:67
msgid "Advanced options"
msgstr "Avansert oppsett"
#: ../grsync.glade.h:68
msgid "Execute this command before rsync:"
msgstr ""
#: ../grsync.glade.h:69
msgid ""
"Click on this item if you want to run a command before syncing. Can be "
"useful, for instance, to mount a filesystem before starting or to do some "
"cleanup."
msgstr ""
#: ../grsync.glade.h:70
msgid "Execute this command after rsync:"
msgstr ""
#: ../grsync.glade.h:71
msgid ""
"Click on this item if you want to run a command after syncing. Can be "
"useful, for instance, to unmount a filesystem at the end or to do some "
"cleanup."
msgstr ""
#: ../grsync.glade.h:72
msgid "Browse files instead of folders"
msgstr ""
#: ../grsync.glade.h:73
msgid ""
"By setting this switch, the browse source and destination buttons will open "
"a dialog for selecting files instead of folders"
msgstr ""
#: ../grsync.glade.h:74
msgid "Halt on failure"
msgstr ""
#: ../grsync.glade.h:75
msgid ""
"When running the \"before\" command, if it fails for some reason, don't run "
"rsync and halt"
msgstr ""
#: ../grsync.glade.h:76
msgid "On rsync error only"
msgstr ""
#: ../grsync.glade.h:77
msgid ""
"Execute the \"after\" command only if syncronization had errors.\n"
"For example can be used to send an email only in the case there was "
"trouble.\n"
"Try a command like \"mail -s 'rsync error' you@domain.com\"."
msgstr ""
#: ../grsync.glade.h:80
msgid "Notes:"
msgstr ""
#: ../grsync.glade.h:81
#, fuzzy
msgid "Free text notes on the current session"
msgstr "Trykk for å slette denne økten"
#: ../grsync.glade.h:82
msgid "Run as superuser"
msgstr ""
#: ../grsync.glade.h:83
msgid ""
"Run rsync with superuser (root, administrator) privileges. Use this if you "
"need to access system files, for example when doing a full system backup."
msgstr ""
#: ../grsync.glade.h:84
#, fuzzy
msgid "Extra options"
msgstr "Basisoppsett"
#: ../grsync.glade.h:85
msgid "Include these sessions:"
msgstr ""
#: ../grsync.glade.h:86
#, fuzzy
msgid "Set options"
msgstr "Basisoppsett"
#: ../grsync.glade.h:87
#, fuzzy
msgid "Add session"
msgstr "_Økter"
#: ../grsync.glade.h:88
#, fuzzy
msgid "Enter session name you want to create:"
msgstr "Skriv inn navnet på den nye økten som skal opprettes"
#: ../grsync.glade.h:89
msgid "Enter the name of the new session to create"
msgstr "Skriv inn navnet på den nye økten som skal opprettes"
#: ../grsync.glade.h:90
#, fuzzy
msgid "Add as session set"
msgstr "_Økter"
#: ../grsync.glade.h:91
msgid "Create a new session set instead of a normal session"
msgstr ""
#: ../grsync.glade.h:92
msgid "Grsync preferences"
msgstr "Oppsett av Grsync"
#: ../grsync.glade.h:93
msgid "Show rsync output by default"
msgstr "Vis rysnc-utdata som standard"
#: ../grsync.glade.h:94
msgid ""
"Wether to show rsync output by default or hide it (show graphical "
"information only)"
msgstr ""
"Hvorvidt utdata fra rsync vises som standard eller skjules (vis kun grafisk "
"informasjon)"
#: ../grsync.glade.h:95
msgid "Remember last used session"
msgstr "Husk sist brukte økt"
#: ../grsync.glade.h:96
msgid "Whether to load the last used session at startup or use the default one"
msgstr ""
"Hvorvidt den sist brukte økten eller standardøkten skal lastes ved oppstart"
#: ../grsync.glade.h:97
msgid "Show error list when finished"
msgstr "Vis feilliste ved fullføring"
#: ../grsync.glade.h:98
msgid ""
"When rsync has finished, show all the errors encountered in a separate window"
msgstr ""
#: ../grsync.glade.h:99
msgid "Enable logging"
msgstr ""
#: ../grsync.glade.h:100
msgid ""
"Whether to save rsync output to a log file, named like the session, which "
"will be located in the grsync directory (usually \".grsync\" into your user "
"home)"
msgstr ""
#: ../grsync.glade.h:101
msgid "Enter the rsync command to use, eventually including its full path"
msgstr ""
"Skriv inn rsync-kommandoen som skal brukes, du kan også inkludere hele banen"
#: ../grsync.glade.h:102
msgid "Rsync executable:"
msgstr "Rsync-programfil:"
#: ../grsync.glade.h:103
msgid "Fast rsync output scrolling"
msgstr ""
#: ../grsync.glade.h:104
msgid ""
"Select this if you want rsync output to scroll many lines at a time, in "
"order to be faster"
msgstr ""
#: ../grsync.glade.h:105
msgid "Enable switch button"
msgstr ""
#: ../grsync.glade.h:106
msgid ""
"Select this if you want an additional \"switch source with destination\" "
"button in the basic options tab"
msgstr ""
#: ../grsync.glade.h:107
msgid "Use tray icon"
msgstr ""
#: ../grsync.glade.h:108
msgid ""
"Check this box to show an icon of the application in the system tray instead "
"of the application bar (may not work on Unity environments, like Ubuntu >= "
"11.4)"
msgstr ""
#: ../grsync.glade.h:109
msgid "Errors list"
msgstr "Feilliste"
#: ../grsync.glade.h:110
msgid "Error list of last rsync run:"
msgstr "Feilliste fra siste rsync-kjøring:"
#: ../grsync.glade.h:111
msgid "rsync"
msgstr "rsync"
#: ../grsync.glade.h:112
msgid "Idle"
msgstr "Ledig"
#: ../grsync.glade.h:113
msgid "Transfer progress of current file"
msgstr "Framgang for overføring av gjeldende fil"
#: ../grsync.glade.h:114
msgid "Global progress"
msgstr "Global framgang"
#: ../grsync.glade.h:115
msgid ""
"Global transfer progress: works only with rsync version 2.6.1 or newer, and "
"may report wrong values depending on the ability of rsync to estimate the "
"files to be copied in advance"
msgstr ""
"Global overføringsframgang, virker bare med rsync versjon 2.6.1 eller nyere, "
"og kan gi gale verdier avhengig av rsyncs evne til å beregne antall filer "
"som skal kopieres på forhånd"
#: ../grsync.glade.h:116
msgid "Rsync output:"
msgstr "Utdata fra rsyhnc:"
#: ../grsync.glade.h:117
msgid "Click this button to show the error list"
msgstr ""
#: ../grsync.glade.h:118
msgid "Pause/resume rsync run"
msgstr "Pause/Fortsett rsync-kjøring"
#: ../grsync.glade.h:119
msgid "Stops rsync and closes the window"
msgstr "Stopper rsync og lukker vinduet"
#: ../grsync.glade.h:120
msgid "About trailing slashes"
msgstr ""
#: ../grsync.glade.h:121
msgid ""
"A trailing slash on the source directory avoids creating an additional "
"directory level at the destination.\n"
"You can think of a trailing / on a source as meaning \"copy the contents of "
"this directory\" as opposed to \"copy the directory itself and its contents"
"\".\n"
"\n"
"In other words, each of the following commands copies the files in the same "
"way:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
msgstr ""
#: ../src/main.c:58
#, c-format
msgid "Error: conflicting arguments\n"
msgstr ""
#: ../src/callbacks.c:138
#, c-format
msgid "(ERROR) Can't open config file! Maybe this is the first run?\n"
msgstr ""
"(FEIL) Klarte ikke åpne oppsettsfil; kanskje dette er første kjøring?\n"
#: ../src/callbacks.c:388 ../src/callbacks.c:1299
#, c-format
msgid "\tUnable to save settings!\n"
msgstr "\tKlarte ikke lagre innstillinger.\n"
#: ../src/callbacks.c:482 ../src/callbacks.c:485 ../src/callbacks.c:512
#: ../src/callbacks.c:515 ../src/callbacks.c:1481 ../src/callbacks.c:1485
#: ../src/callbacks.c:1516 ../src/callbacks.c:1520
msgid "Browse"
msgstr "Bla"
#: ../src/callbacks.c:551
#, c-format
msgid "%.f%% (%li:%02li elapsed, %li:%02li remaining)"
msgstr "%.f%% (%li:%02li brukt, %li:%02li igjen)"
#: ../src/callbacks.c:703
#, fuzzy
msgid "Simulation in progress"
msgstr "_Simuler"
#: ../src/callbacks.c:755 ../src/callbacks.c:760
msgid "The session you specified on the command line doesn't exists"
msgstr "Økten du oppgav på kommandolinjen finnes ikke"
#: ../src/callbacks.c:774 ../src/callbacks.c:777
msgid ""
"Unable to execute the rsync command line tool. It is needed by this program. "
"You may need to install the rsync package or make it available in the "
"default executable search PATH. See file/preferences to change the default "
"rsync executable command."
msgstr ""
"Klarte ikke kjøre rsync-kommandoen, som trengs av dette programmet. Du må "
"kanskje installere rsync-pakken, eller gjøre den tilgjengelig i "
"søkevariablen «PATH». Bruk «Fil» -> «Brukervalg» for å endre rsync-"
"kommandoen."
#: ../src/callbacks.c:898
#, fuzzy
msgid "** Launching AFTER command:\n"
msgstr "Kjører rsync-kommando:\n"
#: ../src/callbacks.c:913
msgid "Completed with errors!"
msgstr "Fullførte med feil."
#: ../src/callbacks.c:916
msgid ""
"Completed successfully!"
msgstr ""
"Fullførte vellykket."
#: ../src/callbacks.c:1049
msgid "Rsync process exit status: "
msgstr ""
#: ../src/callbacks.c:1110
#, fuzzy
msgid "** Launching BEFORE command:\n"
msgstr "Kjører rsync-kommando:\n"
#: ../src/callbacks.c:1120
#, fuzzy
msgid "** Launching RSYNC command (simulation mode):\n"
msgstr "Kjører rsync-kommando:\n"
#: ../src/callbacks.c:1121
#, fuzzy
msgid "** Launching RSYNC command:\n"
msgstr "Kjører rsync-kommando:\n"
#: ../src/callbacks.c:1165 ../src/callbacks.c:1169
msgid "Cannot execute rsync"
msgstr "Klarte ikke kjøre rsync"
#: ../src/callbacks.c:1215 ../src/callbacks.c:1220
msgid "This session name is reserved, you cannot call it like this"
msgstr "Dette øktnavnet er resevert, du må velge et annet"
#: ../src/callbacks.c:1231 ../src/callbacks.c:1236
msgid "A session named like this already exists"
msgstr "En økt med dette navnet finnes allerede"
#: ../src/callbacks.c:1265 ../src/callbacks.c:1270
msgid "You cannot delete the default session"
msgstr "Du kan ikke slette standardøkten"
#: ../src/callbacks.c:1278 ../src/callbacks.c:1281
#, c-format
msgid "Are you sure you want to delete the '%s' session?"
msgstr "Virkelig slette økten «%s»?"
#: ../src/callbacks.c:1313
msgid "Application icons by Roberto Gadotti "
msgstr ""
#: ../src/callbacks.c:1318
msgid "Written by Piero Orsoni "
msgstr ""
#: ../src/callbacks.c:1319
msgid "Maemo compatibility by Luca Donaggio "
msgstr ""
#: ../src/callbacks.c:1320
msgid "Additional bug-fixing by Luca Marturana "
msgstr ""
#: ../src/callbacks.c:1322
msgid "Dutch translation by Frank de Bruijn "
msgstr ""
#: ../src/callbacks.c:1323
msgid "Simplified Chinese translation by Xie Yanbo "
msgstr ""
#: ../src/callbacks.c:1324
msgid "French translation by xavier "
msgstr ""
#: ../src/callbacks.c:1325
msgid "Swedish translation by Daniel Nylander "
msgstr ""
#: ../src/callbacks.c:1326
msgid "Turkish translation by Doruk Fisek "
msgstr ""
#: ../src/callbacks.c:1327
msgid "Russian translation by Evgenii Terechkov "
msgstr ""
#: ../src/callbacks.c:1328
msgid "German translation by Martin Lettner "
msgstr ""
#: ../src/callbacks.c:1329
msgid "Spanish translation by Ibon Castilla Varela "
msgstr ""
#: ../src/callbacks.c:1330
msgid "Czech translation by Martin Balajka "
msgstr ""
#: ../src/callbacks.c:1331
msgid "Galician translation by Daniel Espinheira "
msgstr ""
#: ../src/callbacks.c:1332
msgid "Catalan translation by Josep SÃ nchez "
msgstr ""
#: ../src/callbacks.c:1333
msgid ""
"Brazilian Portuguese translation by Fábio Nogueira "
msgstr ""
#: ../src/callbacks.c:1334
msgid "Indonesian translation by Waluyo Adi Siswanto "
msgstr ""
#: ../src/callbacks.c:1335
msgid "Croatian translation by Bojan Vondra "
msgstr ""
#: ../src/callbacks.c:1339
msgid "Synchronize files and folders (a GTK GUI for rsync)."
msgstr ""
#: ../src/callbacks.c:1340
#, fuzzy
msgid ""
"(C) Piero Orsoni and others. Released under the GPL.\n"
"See COPYING for details"
msgstr ""
"Opphavsrett Piero Orsoni og andre. Utgitt under GPL.\n"
" Se «AUTHORS» og «COPYING» for detaljer.\n"
"Oversatt av Alexander N. Sørnes"
#: ../src/callbacks.c:1496 ../src/callbacks.c:1500
msgid "Session imported"
msgstr ""
#: ../src/callbacks.c:1532 ../src/callbacks.c:1536
msgid "Session exported"
msgstr ""
#~ msgid ""
#~ "Source and Destination (directories need a trailing \"/\")"
#~ msgstr "Kilde og mål (mapper må ha «/» til slutt)"
#~ msgid "A GTK GUI for rsync"
#~ msgstr "Et GTK-grensesnitt for rsync"
#~ msgid "Sessions"
#~ msgstr "Økter"
#~ msgid "_Execute"
#~ msgstr "_Kjør"
#~ msgid "Couldn't find pixmap file: %s"
#~ msgstr "Klarte ikke finne bildekartfil: %s"
#~ msgid "Enter session name"
#~ msgstr "Skriv inn øktnavn"
grsync-1.2.5/po/nl_NL.po 0000664 0001750 0001750 00000057034 12375104136 011742 0000000 0000000 # DUTCH translation of grsync.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the grsync package.
# FIRST AUTHOR , YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: 0.1.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2012-01-15 22:02+0100\n"
"Last-Translator: Frank de Bruijn \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../grsync.glade.h:1
msgid "Grsync"
msgstr "Grsync"
#: ../grsync.glade.h:2
msgid "_File"
msgstr "_Bestand"
#: ../grsync.glade.h:3
msgid "Browse S_ource"
msgstr "Br_on selecteren"
#: ../grsync.glade.h:4
msgid "Browse _Destination"
msgstr "_Doel selecteren"
#: ../grsync.glade.h:5
#, fuzzy
msgid "Switch source with destination"
msgstr "Bron en doel omwisselen"
#: ../grsync.glade.h:6
msgid "_Simulation"
msgstr "_Simulatie"
#: ../grsync.glade.h:7
msgid "_Rsync command line"
msgstr "_Rsync opdrachtregel"
#: ../grsync.glade.h:8
msgid "S_essions"
msgstr "S_essies"
#: ../grsync.glade.h:9
msgid "_Import"
msgstr "_Importeren"
#: ../grsync.glade.h:10
msgid "_Export"
msgstr "_Exporteren"
#: ../grsync.glade.h:11
msgid "_Help"
msgstr "_Help"
#: ../grsync.glade.h:12
msgid "_Rsync info"
msgstr "_Rsync info"
#: ../grsync.glade.h:13
msgid "_Contribute"
msgstr "_Bijdragen"
#: ../grsync.glade.h:14
msgid "Click to add a new session"
msgstr "Klikken om een nieuwe sessie toe te voegen"
#: ../grsync.glade.h:15
msgid "Click to delete the current session"
msgstr "Klikken om de huidige sessie te verwijderen"
#: ../grsync.glade.h:16
msgid ""
"Show what would have been done, but actually do nothing (\"dry-run\" in "
"rsync language)"
msgstr ""
"Tonen wat zou worden uitgevoerd, maar niets daadwerkelijk uitvoeren (\"dry-"
"run\" in rsync-taal)."
#: ../grsync.glade.h:17
msgid "_Simulate"
msgstr "_Simuleren"
#: ../grsync.glade.h:18
msgid "Make a full run (go!)"
msgstr "Volledige run uitvoeren (go!)"
#: ../grsync.glade.h:19
msgid "Preserve group"
msgstr "Groep bewaren"
#: ../grsync.glade.h:20
msgid "Preserve time"
msgstr "Tijd bewaren"
#: ../grsync.glade.h:21
msgid "Preserve permissions"
msgstr "Rechten bewaren"
#: ../grsync.glade.h:22
msgid "Preserve owner"
msgstr "Eigenaar bewaren"
#: ../grsync.glade.h:23
msgid "Do not leave filesystem"
msgstr "Bestandssysteem niet verlaten"
#: ../grsync.glade.h:24
msgid "Do not cross filesystem boundaries"
msgstr "Binnen het huidige bestandssyteem blijven."
#: ../grsync.glade.h:25
msgid "Delete on destination"
msgstr "Verwijderen op doel"
#: ../grsync.glade.h:26
msgid "Delete files in destination which are not present in the source"
msgstr "Doelbestanden die niet in de bron voorkomen verwijderen."
#: ../grsync.glade.h:27
msgid "Verbose"
msgstr "Veel informatie geven"
#: ../grsync.glade.h:28
msgid "Show more information"
msgstr "Meer informatie tonen."
#: ../grsync.glade.h:29
msgid "Show transfer progress"
msgstr "Voortgang van de overdracht tonen"
#: ../grsync.glade.h:30
msgid "Ignore existing"
msgstr "Bestaande negeren"
#: ../grsync.glade.h:31
msgid "Ignore files which already exist in the destination"
msgstr "Bestaande doelbestanden negeren."
#: ../grsync.glade.h:32
msgid "Size only"
msgstr "Alleen grootte"
#: ../grsync.glade.h:33
msgid "Check size only, ignore time and checksum"
msgstr "Alleen omvang controleren, tijd en checksom negeren."
#: ../grsync.glade.h:34
msgid "Skip newer"
msgstr "Nieuwere overslaan"
#: ../grsync.glade.h:35
msgid "Do not update newer files"
msgstr "Nieuwere doelbestanden niet bijwerken."
#: ../grsync.glade.h:36
msgid "Windows compatibility"
msgstr "Windows-compatibiliteit"
#: ../grsync.glade.h:37
msgid "Provides workaround for a windows FAT filesystem limitation"
msgstr "Noodoplossing voor een beperking van het Windows FAT-bestandssysteem."
#: ../grsync.glade.h:38
msgid "Click to open the file browser"
msgstr "Klikken om door directory's of bestanden te bladeren"
#: ../grsync.glade.h:39
msgid "Source directory"
msgstr "Brondirectory"
#: ../grsync.glade.h:40
msgid "Destination directory"
msgstr "Doeldirectory"
#: ../grsync.glade.h:41
msgid "Click here to switch the source with the destination directory"
msgstr "Bron en doel omwisselen"
#: ../grsync.glade.h:42
msgid "Source and Destination:"
msgstr "Bron en doel:"
#: ../grsync.glade.h:43
msgid "Basic options"
msgstr "Standaardopties"
#: ../grsync.glade.h:44
msgid "Always checksum"
msgstr "Altijd checksom"
#: ../grsync.glade.h:45
msgid "Always compare file contents (by checksum)"
msgstr "Altijd bestandsinhoud vergelijken (aan de hand van de checksom)."
#: ../grsync.glade.h:46
msgid "Preserve devices"
msgstr "Apparaten bewaren"
#: ../grsync.glade.h:47
msgid "Only update existing files"
msgstr "Alleen bestaande bestanden bijwerken"
#: ../grsync.glade.h:48
msgid "Keep partially transferred files"
msgstr "Gedeeltelijk overgedragen bestanden bewaren"
#: ../grsync.glade.h:49
msgid "Don't map uid/gid values"
msgstr "Numerieke ids niet vertalen"
#: ../grsync.glade.h:50
msgid "Keep numeric uid/gid instead of mapping user names and group names"
msgstr ""
"Numerieke uid/gid behouden en niet vertalen naar gebruikers- of groepnaam."
#: ../grsync.glade.h:51
msgid "Additional options:"
msgstr "Aanvullende opties:"
#: ../grsync.glade.h:52
msgid "Compress file data"
msgstr "Bestanden comprimeren"
#: ../grsync.glade.h:53
msgid ""
"Compress file data when transferring (useful only if at least one side is "
"remote)"
msgstr ""
"Bestanden comprimeren tijdens overdracht (alleen zinvol als minstens één "
"kant remote is)."
#: ../grsync.glade.h:54
msgid "Copy symlinks as symlinks"
msgstr "Symlinks kopiëren als links"
#: ../grsync.glade.h:55
msgid "Symbolic links are copied as such, do not copy link target file"
msgstr ""
"Symbolische links als zodanig kopiëren en niet het doelbestand van de link."
#: ../grsync.glade.h:56
msgid "Make backups"
msgstr "Backups maken"
#: ../grsync.glade.h:57
msgid "Make backups of existing files on the destination"
msgstr "Backups maken van bestaande doelbestanden."
#: ../grsync.glade.h:58
msgid "Copy hardlinks as hardlinks"
msgstr "Harde links kopiëren als links"
#: ../grsync.glade.h:59
msgid "Hard links are copied as such, do not copy link target file"
msgstr "Harde links als zodanig kopiëren en niet het doelbestand van de link."
#: ../grsync.glade.h:60
msgid "Show itemized changes list"
msgstr "Gespecificeerde wijzigingenlijst tonen"
#: ../grsync.glade.h:61
msgid "Show additional information on every changed file"
msgstr "Aanvullende informatie tonen voor elk gewijzigd bestand."
#: ../grsync.glade.h:62
msgid "Disable recursion"
msgstr "Recursie uitschakelen"
#: ../grsync.glade.h:63
msgid "If checked the subdirectories of the source folder will be ignored"
msgstr "Subdirectory's van de bronmap negeren."
#: ../grsync.glade.h:64
msgid "Additional command line options to pass to the rsync program"
msgstr "Aanvullende opdrachtregelopties voor het rsync programma"
#: ../grsync.glade.h:65
msgid "Protect remote args"
msgstr "Remote-argumenten beschermen"
#: ../grsync.glade.h:66
msgid ""
"Protect remote arguments from shell expansion, Avoids the need to manually "
"escape remote folders and other options which use file names like --exclude"
msgstr ""
"Remote-argumenten beschermen tegen shellexpansie. Voorkomt dat je "
"remotemappen en opties die bestandsnamen gebruiken, zoals --exclude, "
"handmatig moet escapen."
#: ../grsync.glade.h:67
msgid "Advanced options"
msgstr "Geavanceerde opties"
#: ../grsync.glade.h:68
msgid "Execute this command before rsync:"
msgstr "Deze opdracht uitvoeren vóór rsync:"
#: ../grsync.glade.h:69
msgid ""
"Click on this item if you want to run a command before syncing. Can be "
"useful, for instance, to mount a filesystem before starting or to do some "
"cleanup."
msgstr ""
"Selecteren om voor de synchronisatie een opdracht uit te voeren. Kan "
"praktisch zijn om bijvoorbeeld vooraf een bestandssysteem te mounten."
#: ../grsync.glade.h:70
msgid "Execute this command after rsync:"
msgstr "Deze opdracht uitvoeren na rsync:"
#: ../grsync.glade.h:71
msgid ""
"Click on this item if you want to run a command after syncing. Can be "
"useful, for instance, to unmount a filesystem at the end or to do some "
"cleanup."
msgstr ""
"Selecteren om na de synchronisatie een opdracht uit te voeren. Kan praktisch "
"zijn om bijvoorbeeld na afloop een bestandssysteem te unmounten."
#: ../grsync.glade.h:72
msgid "Browse files instead of folders"
msgstr "Bladeren door bestanden in plaats van mappen"
#: ../grsync.glade.h:73
msgid ""
"By setting this switch, the browse source and destination buttons will open "
"a dialog for selecting files instead of folders"
msgstr ""
"Met dit geselecteerd openen de knoppen om door bron- en doelmappen te "
"bladeren een dialoog waarmee ook bestanden te kiezen zijn in plaats van "
"mappen."
#: ../grsync.glade.h:74
msgid "Halt on failure"
msgstr "Stoppen bij mislukking"
#: ../grsync.glade.h:75
msgid ""
"When running the \"before\" command, if it fails for some reason, don't run "
"rsync and halt"
msgstr ""
"Als tijdens de \"voor\"-opdracht een fout optreedt, rsync niet runnen en de "
"sessie afbreken."
#: ../grsync.glade.h:76
msgid "On rsync error only"
msgstr "Alleen bij rsync-fout"
#: ../grsync.glade.h:77
msgid ""
"Execute the \"after\" command only if syncronization had errors.\n"
"For example can be used to send an email only in the case there was "
"trouble.\n"
"Try a command like \"mail -s 'rsync error' you@domain.com\"."
msgstr ""
"De \"na\"-opdracht alleen uitvoeren als tijdens de synchronisatie fouten "
"zijn opgetreden.\n"
"Dit is bijvoorbeeld te gebruiken om een e-mail te sturen als er iets is "
"misgegaan. Gebruik dan een opdracht als \"mail -s 'rsync-fout' jij@domein.nl"
"\"."
#: ../grsync.glade.h:80
msgid "Notes:"
msgstr "Notitie:"
#: ../grsync.glade.h:81
msgid "Free text notes on the current session"
msgstr "Vrije notitie met betrekking tot de huidige sessie."
#: ../grsync.glade.h:82
msgid "Run as superuser"
msgstr "Runnen als beheerder"
#: ../grsync.glade.h:83
msgid ""
"Run rsync with superuser (root, administrator) privileges. Use this if you "
"need to access system files, for example when doing a full system backup."
msgstr ""
"Rsync runnen met beheerdersrechten (root). Gebruiken als je toegang moet "
"hebben tot systeembestanden, bijvoorbeeld als je een volledige systeembackup "
"doet."
#: ../grsync.glade.h:84
msgid "Extra options"
msgstr "Extra opties"
#: ../grsync.glade.h:85
msgid "Include these sessions:"
msgstr "Deze sessies inbegrepen:"
#: ../grsync.glade.h:86
msgid "Set options"
msgstr "Set-opties"
#: ../grsync.glade.h:87
msgid "Add session"
msgstr "Sessie toevoegen"
#: ../grsync.glade.h:88
msgid "Enter session name you want to create:"
msgstr "Nieuwe sessienaam invoeren:"
#: ../grsync.glade.h:89
msgid "Enter the name of the new session to create"
msgstr "De naam van de aan te maken sessie invoeren"
#: ../grsync.glade.h:90
msgid "Add as session set"
msgstr "Toevoegen als sessieset"
#: ../grsync.glade.h:91
msgid "Create a new session set instead of a normal session"
msgstr "Nieuwe sessieset aanmaken in plaats van een normale sessie."
#: ../grsync.glade.h:92
msgid "Grsync preferences"
msgstr "Grsync voorkeuren"
#: ../grsync.glade.h:93
msgid "Show rsync output by default"
msgstr "Standaard rsync-uitvoer tonen"
#: ../grsync.glade.h:94
msgid ""
"Wether to show rsync output by default or hide it (show graphical "
"information only)"
msgstr ""
"Standaard de uitvoer van rsync tonen in plaats van alleen grafische "
"informatie."
#: ../grsync.glade.h:95
msgid "Remember last used session"
msgstr "Laatstgebruikte sessie onthouden"
#: ../grsync.glade.h:96
msgid "Whether to load the last used session at startup or use the default one"
msgstr ""
"Bij het starten de laatstgebruikte sessie laden in plaats van de "
"standaardsessie."
#: ../grsync.glade.h:97
msgid "Show error list when finished"
msgstr "Na afloop foutenlijst tonen"
#: ../grsync.glade.h:98
msgid ""
"When rsync has finished, show all the errors encountered in a separate window"
msgstr "Als rsync klaar is, alle opgetreden fouten tonen in een apart venster."
#: ../grsync.glade.h:99
msgid "Enable logging"
msgstr "Logging inschakelen"
#: ../grsync.glade.h:100
msgid ""
"Whether to save rsync output to a log file, named like the session, which "
"will be located in the grsync directory (usually \".grsync\" into your user "
"home)"
msgstr ""
"De rsync-uitvoer bewaren in de grsync-directory (meestal \".grsync\" in je "
"home-directory) in een logbestand met de naam van de sessie."
#: ../grsync.glade.h:101
msgid "Enter the rsync command to use, eventually including its full path"
msgstr "De te gebruiken rsync-opdracht invoeren, eventueel met volledig pad"
#: ../grsync.glade.h:102
msgid "Rsync executable:"
msgstr "Rsync uitvoerbaar bestand:"
#: ../grsync.glade.h:103
msgid "Fast rsync output scrolling"
msgstr "Rsync-uitvoer snel scrollen"
#: ../grsync.glade.h:104
msgid ""
"Select this if you want rsync output to scroll many lines at a time, in "
"order to be faster"
msgstr ""
"De rsync-uitvoer met meerdere regels tegelijk laten scrollen (gaat sneller)."
#: ../grsync.glade.h:105
msgid "Enable switch button"
msgstr "Omwisselknop inschakelen"
#: ../grsync.glade.h:106
msgid ""
"Select this if you want an additional \"switch source with destination\" "
"button in the basic options tab"
msgstr ""
"Een aanvullende \"bron en doel omwisselen\"-knop plaatsen op de "
"Standaardopties-tab."
#: ../grsync.glade.h:107
msgid "Use tray icon"
msgstr "Systeemvakpictogram gebruiken"
#: ../grsync.glade.h:108
msgid ""
"Check this box to show an icon of the application in the system tray instead "
"of the application bar (may not work on Unity environments, like Ubuntu >= "
"11.4)"
msgstr ""
"Applicatiepictogram tonen in het systeemvak in plaats van de vensterlijst "
"(werkt mogelijk niet in Unity-omgevingen, zoals Ubuntu >= 11.4)."
#: ../grsync.glade.h:109
msgid "Errors list"
msgstr "Foutenlijst"
#: ../grsync.glade.h:110
msgid "Error list of last rsync run:"
msgstr "Foutenlijst van de laatste rsync-run:"
#: ../grsync.glade.h:111
msgid "rsync"
msgstr "rsync"
#: ../grsync.glade.h:112
msgid "Idle"
msgstr "Wachten"
#: ../grsync.glade.h:113
msgid "Transfer progress of current file"
msgstr "Voortgang van de overdracht van het huidige bestand"
#: ../grsync.glade.h:114
msgid "Global progress"
msgstr "Algemene voortgang"
#: ../grsync.glade.h:115
msgid ""
"Global transfer progress: works only with rsync version 2.6.1 or newer, and "
"may report wrong values depending on the ability of rsync to estimate the "
"files to be copied in advance"
msgstr ""
"Algemene voortgang van de overdracht: werkt alleen met rsync versie 2.6.1 of "
"later en kan onjuiste waarden tonen afhankelijk van de mate waarin rsync de "
"benodigde tijd vooraf juist kan inschatten"
#: ../grsync.glade.h:116
msgid "Rsync output:"
msgstr "Rsync-uitvoer:"
#: ../grsync.glade.h:117
msgid "Click this button to show the error list"
msgstr "Foutenlijst tonen"
#: ../grsync.glade.h:118
msgid "Pause/resume rsync run"
msgstr "Rsync-run pauzeren/hervatten"
#: ../grsync.glade.h:119
msgid "Stops rsync and closes the window"
msgstr "Rsync stoppen en venster sluiten"
#: ../grsync.glade.h:120
msgid "About trailing slashes"
msgstr "Over achteroplopende deelstrepen"
#: ../grsync.glade.h:121
msgid ""
"A trailing slash on the source directory avoids creating an additional "
"directory level at the destination.\n"
"You can think of a trailing / on a source as meaning \"copy the contents of "
"this directory\" as opposed to \"copy the directory itself and its contents"
"\".\n"
"\n"
"In other words, each of the following commands copies the files in the same "
"way:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
msgstr ""
"Een deelstreep achter de brondirectory voorkomt het aanmaken van een extra "
"directoryniveau op het doel.\n"
"Je kunt een achteroplopende / bij een bron zien als \"de inhoud van deze "
"directory kopiëren\" in plaats van \"de directory plus inhoud kopiëren\".\n"
"\n"
"Met andere woorden, de volgende opdrachten kopiëren de bestanden allemaal op "
"dezelfde manier:\n"
"\n"
"\t\t\t rsync -a /src/foo /dest\n"
"\t\t\t rsync -a /src/foo/ /dest/foo\n"
#: ../src/main.c:58
#, c-format
msgid "Error: conflicting arguments\n"
msgstr "Fout: tegenstrijdige argumenten\n"
#: ../src/callbacks.c:138
#, c-format
msgid "(ERROR) Can't open config file! Maybe this is the first run?\n"
msgstr ""
"(FOUT) Kan het configuratiebestand niet openen! Is dit misschien de eerste "
"run?\n"
#: ../src/callbacks.c:388 ../src/callbacks.c:1299
#, c-format
msgid "\tUnable to save settings!\n"
msgstr "\tInstellingen opslaan mislukt!\n"
#: ../src/callbacks.c:482 ../src/callbacks.c:485 ../src/callbacks.c:512
#: ../src/callbacks.c:515 ../src/callbacks.c:1481 ../src/callbacks.c:1485
#: ../src/callbacks.c:1516 ../src/callbacks.c:1520
msgid "Browse"
msgstr "Bladeren"
#: ../src/callbacks.c:551
#, c-format
msgid "%.f%% (%li:%02li elapsed, %li:%02li remaining)"
msgstr "%.f%% (%li:%02li verstreken, %li:%02li resterend)"
#: ../src/callbacks.c:703
msgid "Simulation in progress"
msgstr "Simulatie loopt..."
#: ../src/callbacks.c:755 ../src/callbacks.c:760
msgid "The session you specified on the command line doesn't exists"
msgstr "De op de opdrachtregel gespecificeerde sessie bestaat niet"
#: ../src/callbacks.c:774 ../src/callbacks.c:777
msgid ""
"Unable to execute the rsync command line tool. It is needed by this program. "
"You may need to install the rsync package or make it available in the "
"default executable search PATH. See file/preferences to change the default "
"rsync executable command."
msgstr ""
"Kan rsync niet uitvoeren. Deze command line tool is essentiëel voor dit "
"programma. Misschien moet je het rsync-pakket nog installeren of beschikbaar "
"maken in het zoekpad (de PATH-variabele). Zie Bestand/Voorkeuren om de naam "
"van het uitvoerbare bestand te wijzigen."
#: ../src/callbacks.c:898
msgid "** Launching AFTER command:\n"
msgstr "** NA-opdracht wordt uitgevoerd:\n"
#: ../src/callbacks.c:913
msgid "Completed with errors!"
msgstr "Voltooid met fouten!"
#: ../src/callbacks.c:916
msgid ""
"Completed successfully!"
msgstr ""
"Voltooid zonder fouten!"
#: ../src/callbacks.c:1049
msgid "Rsync process exit status: "
msgstr "Exitstatus van rsync-proces:"
#: ../src/callbacks.c:1110
msgid "** Launching BEFORE command:\n"
msgstr "** VOOR-opdracht wordt uitgevoerd:\n"
#: ../src/callbacks.c:1120
msgid "** Launching RSYNC command (simulation mode):\n"
msgstr "** RSYNC-opdracht wordt uitgevoerd (simulatie):\n"
#: ../src/callbacks.c:1121
msgid "** Launching RSYNC command:\n"
msgstr "** RSYNC-opdracht wordt uitgevoerd:\n"
#: ../src/callbacks.c:1165 ../src/callbacks.c:1169
msgid "Cannot execute rsync"
msgstr "Rsync niet uit te voeren"
#: ../src/callbacks.c:1215 ../src/callbacks.c:1220
msgid "This session name is reserved, you cannot call it like this"
msgstr "Deze sessienaam is gereserveerd, gebruik een andere"
#: ../src/callbacks.c:1231 ../src/callbacks.c:1236
msgid "A session named like this already exists"
msgstr "Er bestaat al een sessie met deze naam"
#: ../src/callbacks.c:1265 ../src/callbacks.c:1270
msgid "You cannot delete the default session"
msgstr "Je kunt de standaardsessie niet verwijderen"
#: ../src/callbacks.c:1278 ../src/callbacks.c:1281
#, c-format
msgid "Are you sure you want to delete the '%s' session?"
msgstr "Weet je zeker dat je de sessie '%s' wilt verwijderen?"
#: ../src/callbacks.c:1313
msgid "Application icons by Roberto Gadotti "
msgstr "Applicatiepictogrammen door Roberto Gadotti "
#: ../src/callbacks.c:1318
msgid "Written by Piero Orsoni "
msgstr "Geschreven door Piero Orsoni "
#: ../src/callbacks.c:1319
msgid "Maemo compatibility by Luca Donaggio "
msgstr "Maemo-compatibiliteit door Luca Donaggio "
#: ../src/callbacks.c:1320
msgid "Additional bug-fixing by Luca Marturana "
msgstr "Aanvullende bug-fixing door Luca Marturana "
#: ../src/callbacks.c:1322
msgid "Dutch translation by Frank de Bruijn "
msgstr "Nederlandse vertaling door Frank de Bruijn "
#: ../src/callbacks.c:1323
msgid "Simplified Chinese translation by Xie Yanbo "
msgstr "Vereenvoudigd Chinese vertaling door Xie Yanbo "
#: ../src/callbacks.c:1324
msgid "French translation by xavier "
msgstr "Franse vertaling door xavier "
#: ../src/callbacks.c:1325
msgid "Swedish translation by Daniel Nylander "
msgstr "Zweedse vertaling door Daniel Nylander "
#: ../src/callbacks.c:1326
msgid "Turkish translation by Doruk Fisek "
msgstr "Turkse vertaling door Doruk Fisek "
#: ../src/callbacks.c:1327
msgid "Russian translation by Evgenii Terechkov "
msgstr "Russische vertaling door Evgenii Terechkov "
#: ../src/callbacks.c:1328
msgid "German translation by Martin Lettner "
msgstr "Duitse vertaling door Martin Lettner "
#: ../src/callbacks.c:1329
msgid "Spanish translation by Ibon Castilla Varela "
msgstr "Spaanse vertaling door Ibon Castilla Varela "
#: ../src/callbacks.c:1330
msgid "Czech translation by Martin Balajka "
msgstr "Tsjechische vertaling door Martin Balajka "
#: ../src/callbacks.c:1331
msgid "Galician translation by Daniel Espinheira "
msgstr ""
"Galicische vertaling door Daniel Espinheira "
#: ../src/callbacks.c:1332
msgid "Catalan translation by Josep SÃ nchez "
msgstr "Catalaanse vertaling door Josep SÃ nchez "
#: ../src/callbacks.c:1333
msgid ""
"Brazilian Portuguese translation by Fábio Nogueira "
msgstr ""
"Braziliaans Portugese vertaling door Fábio Nogueira "
#: ../src/callbacks.c:1334
msgid "Indonesian translation by Waluyo Adi Siswanto "
msgstr "Indonesische vertaling door Waluyo Adi Siswanto "
#: ../src/callbacks.c:1335
msgid "Croatian translation by Bojan Vondra "
msgstr ""
#: ../src/callbacks.c:1339
msgid "Synchronize files and folders (a GTK GUI for rsync)."
msgstr "Bestanden en mappen synchroniseren (een GTK GUI voor rsync)."
#: ../src/callbacks.c:1340
msgid ""
"(C) Piero Orsoni and others. Released under the GPL.\n"
"See COPYING for details"
msgstr ""
"(C) Piero Orsoni en anderen. Uitgegeven onder de GPL.\n"
"Zie COPYING voor details."
#: ../src/callbacks.c:1496 ../src/callbacks.c:1500
msgid "Session imported"
msgstr "Sessie geïmporteerd"
#: ../src/callbacks.c:1532 ../src/callbacks.c:1536
msgid "Session exported"
msgstr "Sessie geëxporteerd"
#~ msgid "rsync: running"
#~ msgstr "rsync: loopt"
#~ msgid "rsync: stopped"
#~ msgstr "rsync: gestopt"
#~ msgid "rsync: paused"
#~ msgstr "rsync: gepauzeerd"
#~ msgid ""
#~ "Source and Destination (directories need a trailing \"/\")"
#~ msgstr ""
#~ "Bron en doel (directorynamen moeten eindigen op een \"/\")"
#~ msgid "A GTK GUI for rsync"
#~ msgstr "Een GTK GUI voor rsync"
#~ msgid "Sessions"
#~ msgstr "Sessies"
#~ msgid "gtk-dialog-warning"
#~ msgstr "gtk-dialog-waarschuwing"
grsync-1.2.5/po/es_ES.po 0000664 0001750 0001750 00000060525 12375104065 011736 0000000 0000000 # Spanish translation of grsync.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the grsync package.
# Jorge González , 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: rsync.master\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-08-20 13:35+0200\n"
"PO-Revision-Date: 2011-04-28 22:53+0200\n"
"Last-Translator: Jorge González \n"
"Language-Team: Español