Commit 6edd815e authored by Yves-Alexis Perez's avatar Yves-Alexis Perez

New upstream version 1.1.3

parent 8200692f
As of September 17 2005, maintained and changed by Fabian Nowak <timystery@arcor.de>
Some maintenance by Landry Breuil
written by jean-baptiste Dulong, jean-baptiste.dulong@no-log.org
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
@SET_MAKE@
SUBDIRS = panel-plugin \
po \
icons
distclean-local:
rm -rf *.cache *~
dist-bz2: dist
zcat $(PACKAGE)-$(VERSION).tar.gz | \
bzip2 --best -c > $(PACKAGE)-$(VERSION).tar.bz2
distcheck-bz2: distcheck
zcat $(PACKAGE)-$(VERSION).tar.gz | \
bzip2 --best -c > $(PACKAGE)-$(VERSION).tar.bz2
ChangeLog: Makefile
(GIT_DIR=$(top_srcdir)/.git git log > .changelog.tmp \
&& mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) \
|| (touch ChangeLog; echo 'Git directory not found: installing possibly empty changelog.' >&2)
dist-hook: ChangeLog
EXTRA_DIST = \
AUTHORS \
COPYING \
ChangeLog \
INSTALL \
NEWS \
README \
TODO \
intltool-extract.in \
intltool-merge.in \
intltool-update.in
DISTCLEANFILES = \
intltool-extract \
intltool-merge \
intltool-update
This diff is collapsed.
2017/01/28 - Version 1.1.0
- Gtk 3.22 supported
- Allow several spaces in mountpoint names
- Support fuseblk devices by not using fusermount -u for them (checks for fuse.* now)
2016/05/29 - Version 1.0.0
- Gtk 3 Support only
- Panel Version 4.12 only
2014/04/26 - version 0.6.7
- menu does no longer overlap the panel
- wildcard option for devices or mountpoints that are to be excluded
- no duplicate entries for e.g. /media and /media/
- use LABEL from /etc/fstab
- More freedom for translators and enhanced R2L language support
thereby
- More i18n work done by translators
2014/04/26 - version 0.6.6
- New translations and most translations nearly complete. So this might be suitable for distributions to pick.
- Introduced odd/even versioning concept: When translations of the new "odd" development versions are mostly finished, then an "even" release such as this 0.6.6 can appear.
2012/05/14 - version 0.6.4
- This release brings trimming of too long device names, cleaned-up and
consistent error dialogs, updated information in the accompanying README
file.
27 april 2012 - version 0.6.3
- Launch the on-mount command async to avoid blocking plugin UI
- translation updates
23 april 2012 - version 0.6.2
- remove sudo option
- translation updates
18 april 2012 - version 0.6.1
- remove po/LINGUAS to fix some translations problems
17 april 2012 - version 0.6.0
- port to panel 4.9
- port to libxfce4ui
- build the plugin as a module
- add support for *BSDs through getmntinfo()
- use standard icon names, drop old unused icons
- add a checkbox option to use sudo
- rewrite config saving/loading (bug #7631)
- general cleanup
18 january 2009
- Fixed crash when not being able to read fstab; showing notification dialog
and allowing to continue regularly
- Fixed unmount problem with sshfs
27 october 2008
- New xfce-style header
19 may 2008 - starting version 0.5.6
- make labels in mount menu exactly as wide as necessary
17 may 2008 - addition to version 0.5.5
- updated German translation
- allow UUID device points
16 february 2008 - version 0.5.5
- added option to exclude device names and only show mount points
- changed some code for the LVM renaming
23 september 2007 - version 0.5.4
- new language pt_BR
- dynamic handling of USB devices and perhaps others
- LVMs are abbreviated
- changed a little bit the menu appearance
04 july 2007 - version 0.5.3
- fixed another broken string
- added language "nb"
- added cifs to list of network filesystems
05 may 2007 - version 0.5.2 beginning...
- fixed broken string, thus breaking the translations...
- fixed hungarian translation using '\ ' for unknown reasons, which is invalid
escape sequence.
02 march 2007 - version 0.5.1
- added "NULL" to g_strconcat -> prevents segfault
01 march 2007 - version 0.5.0
- removed bug with mount points containing ugly spaces
- removed compilation warnings
01 march 2007 - version 0.5.0beta
- testing pre-release
28 february 2007 - version 0.5.0alpha
- exclusion of file systems
- new translation: ukrainian
25 february 2007 - version pre 0.5.0
- new settings dialog
- CD eject option
18 september 2005 - version 0.3.2
- ukrainian tranlation
- russian translation
17 september 2005 - version 0.3.1
- corrected some wrong settings
- hungarian translation
17 september 2005 - version 0.3
- now maintained by Fabian Nowak <timystery@arcor.de>
- basic translation possibilities added
- german tranlsaation added
5 june 2005 - version 0.3
this third release brings out :
-a brighter display and panel integration.
-corrected bug in free space calculation (sorry)
-mount in background (I use the exec_silent function so the panel execute the mount command when not busy)
-the new settings window allow you to define a command to be run on a succesfull mount of device. The command is executed by a call to exec_silent wich argument is : bash -c "mount /path/to/mount_point && your_command /path/to/mount_point". You just have to specify the correct command with options in the settings and the plugin adds the /path/to/mount_point accordingly. I just tested it with "konqueror", send me reports for bugs...
14 april 2005
this second release only changes a few things in the plugin :
- the list of devices is now dynamic, it gets updated from /etc/fstab entries on each refresh.
- the display of devices is clearer although the possibility of adaptating it to your wishes is not available yet. sorry.
- the problem with duplicated device entries in the first release has been corrected in an ugly way. The plugin now compares data from /etc/fstab and data from /etc/mtab using the "mount point" field instead of the "device name" field.
- the mount command executed by the plugin now works like a "mount /path/to/mount_point" instead of "mount /dev/mydevice", makes things clearer I though.
1 march 2005
This is the first release of xfce4-mount-plugin. this little plugin behaves like the "kwikdisk - removable media utility" shipped with KDE.
Press it and it displays a list of items representing your various devices. If you click on an unmounted devices it will mount it and vice versa. There is no warning in case a device can't be mounted or unmounted.
The plugin displays various information on each device :
"device name" > "mount point" ["used size"/"total size"] "available size" free
and an obvious progress bar
BUG
The main bug relies in the way the plugin gather information on your devices. It builds a list of devices from your /etc/fstab (using setfsent() and getfsent() ) and compares it to the list of actually mounted devices (ie same data as the df command, using setmntent() and getmntent() ). New entries are created for new devices not included in the static device list gathered from /etc/fstab. The device names returned by getfsent and getmntent can be different. for example getfsent will return a device named "/dev/discs/disc0/part3" and getmntent will return a device named "/dev/hda3", the plugin will therefore create 2 entries for the same device. and things get confused, you have two entries for the same device, one is mounted the other is not...
a workaround could be to rewrite your /etc/fstab so that the devices names are the same as the output of the "df" command...
# ================================================ #
# Version 1.1.0. for Xfce Panel 4.12.0 and higher #
# Ported and maintained by Fabian Nowak and others #
# ================================================ #
xfce4-mount-plugin - version 1.1.0
This little plugin behaves like the "kwikdisk - removable media utility"
shipped with KDE.
Press it and it will display a list of items representing your various devices.
If you click on an unmounted devices it will mount it and vice versa. There is
a warning in case a device can't be mounted or when unmounting fails.
The plugin displays various information on each device:
"device name" > "mount point" ["used size"/"total size"] "available size" free
and an obvious progress bar.
The plugin works in a very simple way. It builds a list of devices from your
/etc/fstab (using setfsent() and getfsent() ) and gets device stats from the
list of mounted devices (i.e. same data as the 'df' command), using setmntent()
and getmntent(). On *BSD systems it uses getmntinfo().
For mouting a device, the plugin simply runs a "mount /mount_point/ " command
if no other command is explicitly specified in the options dialog.
Acknowledgements go to the following people for several major or minor reasons,
mostly for nice ideas and features, but also for bugfixes and other stuff:
- The one guy with the "no device names" patch
- Landry Breuil
- Christoph Kühne
- Pavol Rusnak
- Lionel Le Folgoc
- Enrico Troeger
- Sergei "GeoNix"
- Neoklis
- Robby Workman
- Matthias Eller
- Jari Eskelinen
- Joost Kremers
- Jean-Baptiste Dulong
- Raphael Groner
- skunnyk
Thank you.
Listen to HAL/Udev for new devices. Code is already in places-plugin, in xfdesktop and in Thunar, so shouldn't be a big deal.
Use fusermount -u for FUSE file systems.
Add notification messages instead of popups when removing the device was successful.
Optionally exclude non-user-mountable filesystems by reading the flag "user" (not "user=").
This diff is collapsed.
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2012-10-14.11; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# 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 <http://www.gnu.org/licenses/>.
# 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.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# 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:
This diff is collapsed.
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define for debugging support */
#undef DEBUG
/* Define for tracing support */
#undef DEBUG_TRACE
/* always defined to indicate that i18n is enabled */
#undef ENABLE_NLS
/* Name of default gettext domain */
#undef GETTEXT_PACKAGE
/* Define to 1 if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define to 1 if you have the `bind_textdomain_codeset' function. */
#undef HAVE_BIND_TEXTDOMAIN_CODESET
/* Define to 1 if you have the `bzero' function. */
#undef HAVE_BZERO
/* Define to 1 if you have the `dcgettext' function. */
#undef HAVE_DCGETTEXT
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the `gethostname' function. */
#undef HAVE_GETHOSTNAME
/* Define to 1 if you have the `getmntent' function. */
#undef HAVE_GETMNTENT
/* Define to 1 if you have the `getmntinfo' function. */
#undef HAVE_GETMNTINFO
/* Define if the GNU gettext() function is already present or preinstalled. */
#undef HAVE_GETTEXT
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define if your <locale.h> file defines LC_MESSAGES. */
#undef HAVE_LC_MESSAGES
/* Define to 1 if you have the <locale.h> header file. */
#undef HAVE_LOCALE_H
/* Define to 1 if you have the `malloc' function. */
#undef HAVE_MALLOC
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `memset' function. */
#undef HAVE_MEMSET
/* Define to 1 if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define to 1 if you have the `socket' function. */
#undef HAVE_SOCKET
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strstr' function. */
#undef HAVE_STRSTR
/* Define to 1 if you have the <sys/ioctl.h> header file. */
#undef HAVE_SYS_IOCTL_H
/* Define to 1 if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
/* Define to 1 if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define to 1 if you have the <sys/sockio.h> header file. */
#undef HAVE_SYS_SOCKIO_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
#undef HAVE_SYS_WAIT_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* "Data dir" */
#undef PACKAGE_DATA_DIR
/* 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__