Latest news
Saturday July 05, 2014
Release in the oven
New release is in the oven. As soon as appdata files are done and es.po completed
release will be set loose.
Friday March 21, 2014
Rodent 5.2.8 is now released
Rodent 5.2.8 now includes the rodent-pkg plugin, version 5.2.1, which
now can search, install and remove packages in RedHat and OpenSUSE
systems, as well as in FreeBSD.
Also some small bugfixes are now in librfm-5.2.9.
RPM packages (lintian prepared on OpenSUSE 12.3) are now available
for all Rodent applications, as well as for the meta package
which includes all.
Enjoy!
Monday March 10, 2014
5.2.7 released.
This is a tarball only release.
This version now includes a package management GUI for FreeBSD, set up
as a plugin for Rodent Filemanager. This is called rodent-pkg. Not all
pkg commands are available by default ---only those I've tested to satisfaction---
but may be enabled very easily if you want to test 'em. They will
probably work, since the code is the same as that for tested
function. Tested functions include "delete", "install", "fetch",
"search" and others. Future versions of rodent-pkg will have all commands
enabled. Support for rpm/zypper/yum and dpkg/apt-get combinations
are in the roadmap to provide a cross platform coherent package management
tool which is not exclusive to a particular OS distro.
Rodent-pkg requires rodent-fm 5.2.7 (which has full readline library support
and other improvements).
Also required is librfm-5.2.8, which fixes a condition where a false request
for sudo would be triggered on mv/ln/cp operations.
Both rodent-fm and rodent-pkg are available in the Rodent aplications meta package rodent-5.2.7.
Enjoy.
Thursday February 27, 2014
Rodent 5.2.6 now released.
The major feature enhancement is csh command completion, which is very handy.
You start typing the command you want, and the up/down arrows allow you
to match against all commands that match the substring.
Also, some bug fixes on the change iconsize scale, which would fail if moved
too quickly.
And, bug fixes for running remotely with Xmingw. In this setting, the rename/
symlink/duplicate box would not appear as expected. Now it works, although
it is placed some pixels above where it should. I haven't figured out how
to place it correctly in Xmingw, not that it really matters.
Finally, some tweaks to allow smooth running of the rodent-pkg plugin,
which is in working order but in test mode before release (this plugin
is a gui for FreeBSD pkg program).
Enjoy!
Friday February 21, 2014
We are now at Rodent 5.2.5.
With this release we begin release of individual program tarballs. As usual,
all Rodent applications are included in the Rodent tar ball and Rodent deb
and rpm. Since each Rodent release does not imply that all apps have
been upgraded, you can alternatively update the single tarballs that
have bumped version. For 5.2.5, this is rodent-fm, which has been tweaked
to make way for a more fluid rodent-pkg plugin (in the oven). Individual
packages are only released in tarball format since I don't have time
nor desire to create packages since the rodent meta package will include
the latest version of each app.
The rodent-pkg plugin is just about cooked and will be released soon. It applies
to FreeBSD for the moment, although in the future it will also work for
rpm or deb based package systems. All this is quite easy, since the
commands rpm, zypper and yum are quite complete. If you are a FreeBSD
user and curious about rodent-pkg, take a look at
this forum where I have posted a
description of rodent-pkg along with screenshots.
Wednesday February 19, 2014
Release 5.2.4 is out
This release has many bug fixes and preparations for new plugin in the oven (rodent-pkg, for consistent cross platform software package management, starting with FreBSD). This release has been built into Gentoo ebuild, OpenSUSE rpm and Ubuntu (12.04) deb to minimize possibility of build issues.
Furthermore, the rodent tarball/package is now a meta package which includes five separate programs (each can be compiled and prepared individually with librfm dependency, except for fgr which has minimum dependencies). As time permits, each of these programs will be released in their individual package, so users may choose what flavors to install. These five packages are:
- fgr
- rodent-fgr
- rodent-diff
- rodent-iconmgr
- rodent-fm
Rodent applications requires librfm-5.2.5, which you can also download in tarball, ebuild, deb or rpm format from same sourceforge download site.
Enjoy!
Saturday February 01, 2014
Rodent 5.2.3 released!
Version 5.2.3 of librfm and rodent has now been released. Icon regeneration is now lightning fast.
Modules are now in librfm, which allows rodent to be transformed into a meta package including rodent-fgr (search tool), rodent-fm (file manager), rodent-diff (difference viewer) and rodent-iconmgr (icontheme manager). The "rodent" tarball contains all four programs (as before), but construction proceeds in a slightly different manner. But don't worry, to build it, just do the ./configure and make stuff and that will take care of all four packages contained in the metapackage.
Since modules are now in librfm, each of these programs will be released (when I have some time for that) as individual packages. This scheme will allow Rodent applications to grow modularly from now on.
The next application I have in mind will be rodent-pkg, a graphic front end for FreeBSD pkg program. I really like version 10.0 of FreeBSD, BTW.
OpenSUSE-12.3 rpm's and Ubuntu-12.04 deb's will come later. Not tomorrow, because I'll be busy riding my bike
Monday January 27, 2014
Further speedups
I couldn't get around to rolling around a release during the weekend
because I spent some time with further enhancements to placing icons
faster. This time I put in a threadpool to spread the work for large
directories into a variable number of cores. The number of cores to
use is determined on the run, but this part is not yet completed for
FreeBSD. As soon as the BSD part is done, I'll roll out the release.
I'm also working on an intermediate hash table to make things fly.
I hope to have the release later this week, if time allows.
January 24, 2014
Release 5.2.3 is nigh
Several bug fixes are now in GIT and should be rolled into a tarball for
release. The one that annoyed me the most was that icon generation was working
in slow motion. Apparently the code was a bit dirty and things got confused.
The result was that cache and short circuits were being bypassed.
So I cleaned up the code and icon mapping is lightning fast again.
I also put in a workaround for buggy dotdesktop files with duplicate
entries in categories key. These buggy third party files could cause a
crash in rodent-dotdesktop, the next generation application launcher.r
I'll try to roll out a release as soon as possible. Maybe this weekend.
The fine detail is that rodent now builds as four separate packages: rodent-fm, rodent-fgr, rodent-iconmgr and rodent-diff.
I'm also working on a rodent front end to the FreeBSD-ports/Gentoo-portage application updater and installer. But that should come a bit later...
January 12, 2014
This really bugged me
Sometimes an "empty file" preview was being shown for directories or files
when this was not true. Apparently this was due to a race between the
preview creation thread and the item stat thread. The preview should
always come after the stat for the item, even if the condition is triggered
by mouse position.
Condition is now fixed and is now in librfm-5.2.2, available at the download site. Rodent 5.2.1 need not be updated for changes to take effect.
January 11, 2014
Third party comments on Rodent
I found this on the net: Rodent file manager is revolutionizing your ways!, which seems an accurate review of a past release of Rodent.
January 8, 2014
Version 5.2.1 released
Rodent has a fix for the run dialog. Apparently there was a static variable where there shouldn't have been and it could cause segment violation on repeated calls to the run dialog.
Librfm has check controls to enable easier switching between gtk2 and gtk3. The purpose of these checks is to ease the transition for when gtk3 becomes the default.
January 7, 2014
Fix in Gtk+
A fix for the gtk+-3.0 bug https://bugzilla.gnome.org/show_bug.cgi?id=721583 is now in gtk+-3.11.4. Apparently the bug was caused by an incorrect fix for bug https://bugzilla.gnome.org/show_bug.cgi?id=698730.
As soon as these fixes are in a stable release, Rodent will default to gtk+-3.0 (if no other bug pops up, of course).
January 6, 2014
Good news from Gtk+
A fix for the gtk+-3.0 popup menu problem with fvwm (https://bugzilla.gnome.org/show_bug.cgi?id=698248) is now in gtk+ git repository: gtk+-3.11.4.
January 5, 2014
Patches for gtk+-3.8.8
If you plan to use gtk+3.0, you should apply the following patches to GTK (prepared for gtk+-3.8.8). The first is to eliminate an incorrect showing of the tooltip window (previews) before actually placing it on the correct position. The second applies to ewmh window managers (fvwm family). If it is not applied and your configuration has a number of desktops is not consistent with the data stored in the NET_WORKAREA property of the X server, (say, more than 4 desktops in fvwm), you will have crazy popup menus on some of the desktops. This is due to a different handling of the NET_WORKAREA data within fvwm than that which is supposed by gtk. Yeah, it might be a fvwm bug, but gtk+-3.0 will now work around it. BTW, this bug affects all gtk applications in fvwm, not only Rodent.
These patches are included in the bugreports:
These two problems do not apply if librfm is compiled with gtk+-2.0 (the default).
December 29, 2013
Rodent Filemanager 5.2.0 now released.
* This release closes all pending bugs and issues.
* Both OpenSUSE and CentOS spec files are produced on executing the configure script
and both are lintian. Same goes for Ubuntu deb package. Gentoo ebuilds are also
provided.
* Configurable keybindings
* Configurable tool buttons
The following plugins are included with Rodent (all in a file hierarchy design):
-- rodent-fstab (for mount/unmount physical devices)
-- rodent-ps (to monitor and signal processes)
-- rodent-dotdesktop (to access installed programs)
-- rodent-fuse (to manage file systems in user space)
-- rodent-ecryptfs (to manage encrypted file systems)
-- rodent-ftp (to manage remote ftp file systems)
-- rodent-sftp (to manage remote ssh file systems)
-- rodent-obex (to manage remote bluetooth file systems)
-- rodent-nfs (to manage remote nfs file systems)
-- rodent-cifs (to manage remote cifs file systems)
-- rodent-smb (to navigate Windows SMB network)
This is the last release of 2013.
Enjoy.
Notes:
* Rodent is a modular, parallel execution based file manager with plugin design.
* Rodent-5.2.0 and Xffm-5.2.0 are synonymous.
* Requirements for this release are now libtubo0, libdbh2, and librfm.
* Direct comments, suggestions and flames to https://sourceforge.net/p/xffm/discussion/
* Rodent is not for dummies.
August 7, 2013
Rodent Filemanager 5.1.2 now released.
Changes from 5.1.1
*Disallow placement of cursor before icon:
Disallow placement of cursor by means of mouse click before
the little terminal icon in the lp-input widget.
*Disable lp-input on mouse click in icon area:
Lp-input is now disabled on mouse button release in icon area.
*Allow switching to lp-input with a mouse click:
lp-input is now activated (if inactive) on button release
signal.
*Improve fix for initial tab-activation of lp-input:
First fix was hacky and would eliminate last input text from
input line, besides adding an extra space. This fix is clean.
Last input text is conserved (if set) and if no last text, lp-input
is activated without adding an extra space.
* Double free cleanup bug fixed:
On cleaning up the view when tab closed, the saved lpterminal command
used to toggle to/from lp-input was being freed twice. Ugh.
* activate lpterm after initial tab and paste
July 18, 2013
About 5.1.x releases
Currently, the 5.1.x series is being optimized into several packages
as follows:
- Library packages:
- Program packages:
- rodent
- rodent-diff
- rodent-fgr
- rodent-icontheme
- rodent-fuse (plugins)
Source files for dbh and libtubo have been released and are required
to build rodent 5.1.x. I'm currently working on the librfm source
file release, which will also be required. As soon as that is done
I'll get back to putting together debian rules files for all packages.
This optimization will make for easier and more frequent releases,
since the whole works need not be version bumped if only a component
or feature is enhanced.
July 7, 2013
Rodent Filemanager 5.1.0 now released.
Changes from 5.1.0
Changes from 5.1.0
+ Race fix: zip preview unref racing ref.
Zip preview unreference of pixbuf was racing rescaling of the pixbuf
into a new size. OO previews would sometimes fail to appear because
of this.
+ Add workdir specification to ls command
Workdir specification for the workdir was missing for the ls command,
this caused that after certain user actions, the correct workdir was
borked and the ls command for selected items would fail (items not
found).
+ Use static strings for gtk about dialog
This use of static strings avoids internal gtk memory overruns.
+ Standarize dialogs with gtk_dialog_run
Dialogs in callbacks modules are now using gtk_dialog_run instead of
dropping into another gtk_main loop. This is to avoid confusing calls
to main context functions. Also, about dialog requires static strings,
otherwise internal gtk will do memory overruns.
+ Restart on segv tweak
When segv received, if configure to restart, then terminate wait
processes so that window will not remain frozen behind new window.
+ Enable mime module for rodent-diff
Mime module was disabled in rodent-diff because module directory was
incorrectly directed to the rodent plugin directory. This is now fixed.
+ Enhanced "ls" command
If no item is selected, or any selected item is not a valid path,
the ls command will popup a history driven query (with filechooser)
to get the target for the ls command. The default target will be the
current location, if it is a valid path. Otherwise the history will
be used to get the best guess.
July 7, 2013
Rodent Filemanager 5.1.0 now released.
Changes from 5.0.5
+ Release 5.1.0
Version update and instalation of rfm-simple-agent is now deprecated
+ name sort fixed in rodent-ps and zombie cleanup
* Name sorting now works correctly in rodent-ps. Icons have been modified
since old icons would be misleading and tend to indicate that name
sorting was not working.
* Cleanup of rodent-anim was leaving a zombie. This is now fixed
* (missing waitpid added).
+ Informative message on no access for partitions
Put in a stderr text when access R_OK|X_OK for mounted partition
is not satisfied, instead of opening the location with no icon
population. This is the same behaviour that a double click on a
non mounted partition has.
+ Remove the BUILD string.
The BUILD string refers to subversion repository version, which was
dropped when GIT was adopted for version control.
+ Point POTFILES to moved find dialog files.
+ Modifications to build from independent libtubo.
+ Moved libtubo to independent git.
+ Cleanups to find dialog
+ Build from independent dbh.
Makefiles modified to build from independent installed dbh library.
+ Separate dbh from rodent package.
Dbh is now in its own GIT tree. http://sf.net/projects/dbh
+ Fix spec file
+ configure and cxx icons
* Switch build to stable/unstable since git does not use revision in
sequential ordering.
* Add c++src and c++hdr icon coloring and tags.
Enjoy!
June 11, 2013
Rodent Filemanager 5.0.5 now released.
Enjoy!
May 29, 2013
Rodent Core (aka xffm-5.0.4, build 6363) now released.
Description:
Threaded filemanager which includes both navigatable desktop and multitab window interfaces, based on a plugin design. Many of the features available in Rodent Core are not available with any other filemanager.
Features:
- Clean optimized interface, placing top value on display realestate.
- Automatic pdf/postscript/text/image/directory popup previews
- GNU backup mechanism for copying/moving/linking
- GNU shred functionality for highend security
- On demand Blowfish file encryption
- Sudo enabled
- Ssh password prompt enabled
- Context sensitive popup menus
- Translated to 132 locales (language variations)
- Gtk compatible bookmarks
- Compatible with Gtk/Kde iconthemes (or without them)
- Bash autocompletion
- History autocompletion
- Industry standard mimetype association
- Multiple actions definable for mimetypes
- Built in process spawning terminal
- Process control task bar
- Configurable keyboard bindings
- Configurable toolbar
- Configurable icontheme
- Run time plugins:
- Fstab and automatic partition detection mounts
- System processes control in structured iconview
- Application menu and categorized application iconview
- Fuse mount points and navigation for:
- Secure shell filesystem (sshfs/sftp)
- Curlftp filesystem
- Obexfs mobile phone filesystem
- Ecrypt filesystem mount points and navigation
- NFS mount points and navigation
- Cifs mount points and navigation
- Xfsamba SMB navigation
- Fgr search utility
- Diff front end
Highlights:
- Thread safety and concurrency
- Dynamic process spawning
- Network and process fault tolerance
- Many OS's supported (32 and 64 bit)
- Production quality software
- High performance on all platforms
- Portable and maintainable
- Tunable by installers and end-users
- Component-based design, documented APIs
- Open source license
May 31, 2013
Rodent Core (aka xffm-5.0.5) now released.
Enjoy.
May 20, 2013
Rodent Core (aka xffm-5.0.3, build 6363) now released.
Rodent Core is now released in source tarball format, Gentoo ebuild,
OpenSUSE/CentOS rpm and Ubuntu/Debian deb.
Rodent will compile without any deprected usage of functions from
Gtk-2.18.9 to Gtk+-3.8.0 (preferably > Gtk+-2.20.0).
Mayor changes in this version has been a focus on stability and
forward and backward compatibility to allow instalation of the
latest version without having to update the entire system. This
is of paramount importance in production machines where the down
time must be minimized.
Appreciation is noted to all those who have contributed with bug
reports and enhancement suggestions.
In Rodent Core you will now find:
-
* All functions are available through keybinds
-
* All keybinds may be customized by the user
-
* Process task bar with menu to control processes.
-
* Flexible tool bar located in unused space, fully customizable by the user.
-
* Front end for the bcrypt program (contributed by
Johnny Shelley)
-
* Full front end to the ls program (contributed by
Richard M. Stallman and David MacKenzie)
-
* Full front end to the cp program (contributed by
Torbjorn Granlund, David MacKenzie, and Jim Meyering)
-
* Full front end to the mv program (contributed by
Mike Parker, David MacKenzie, and Jim Meyering)
-
* Full front end to the ln program (contributed by
Mike Parker and David MacKenzie)
-
* Full front end to the rm program (contributed by
Paul Rubin, David MacKenzie, Richard M. Stallman, and Jim Meyering)
-
* Front end to the touch program (contributed by
Paul Rubin, Arnold Robbins, Jim Kingdon, David MacKenzie, and Randy Smith)
-
* Front end to the shred program (contributed by
Colin Plumb)
-
* Plugins to mount and use:
-
- Fstab mounts and system detected mount devices
-
- Ecryptfs
-
- NFS
-
- CIFS (with included samba navigator)
-
- Obexfs
-
- Curlftpfs
-
- Sshfs (otherwise known as sftp)
-
* Applications plugin to:
-
- Create applications popup menu
-
- Create applications virtual filesystem
-
* System processes plugin
-
- Front end to ps program (contributed by Branko Lankester,
Michael K. Johnson, Michael Shields, Charles Blake,
David Mossberger-Tang and Albert Cahalan.)
With Gtk+3 everything works just fine, except for one detail which is due to
a Gtk bug (see https://bugzilla.gnome.org/show_bug.cgi?id=698248 ). This
bug apparently only affects systems where the window manager is handling
more than 4 desktops, and only surfaces on the fifth desktop and beyond.
In view that the current gnome approach is to have the computer look like
a cell phone with no more than one desktop, this bug might take a while to
get fixed. For this reason, the default is Gtk+2 (functionality is exactly
the same). If you are not affected by the above described bug (you use less
than 5 desktops), you may compile from source with Gtk+3 using the configure
option --with-gtk3.
Also, if Gtk+2 is not installed, compilation will proceed with Gtk+3.
Builds have also been tested on ArchLinux, Gentoo and FreeBSD.
About FUSE:
Rodent Core acts as a front end to FUSE (and other type) of mount points. This
allows you to mount different types of networked or other type of filesystems.
Unlike gvfs, the user is allowed to choose the mount point and see what is
going on.
My favorite: ecryptfs.
The approach of encrypting the whole user's directory that some distributions use is weak and gives a false sense of security. The Rodent approach is to encrypt that which requires to be encrypted and only decrypt when necessary, not every time you happen to login. This is specially useful for removable devices. If you are working on a multimillion dollar confidential project and your usb drive gets stolen, you might be in a sore spot if that small directory with vital information was not properly encrypted. This plugin replaces the scramble program distributed relevant xfce 4.x releases and closes the security issue noted by FreeBSD users (better late than never).
If you feel that some feature or functionality would be nice, submit a feature request. If you find a bug, submit a bug report (tracebacks are essential). If you do not know what a feature request or bug report is, then Rodent is probably not for you.
Finally, if you wish to enable core dumps, configure with the --with-core option.
Remember that Rodent is provided as is, with no particular Warranty, as stated in the GPLv3 license. My only wish is that this software may be as helpful to you as it is to me.
Enjoy.
May 6, 2013
Rodent-icon-theme (was xfce4-icon-theme) now released.
Rodent-icon-theme (was xfce4-icon-theme) is a svg (scalable) icon theme created by Francois L Clainche and augmented by Pablo Morales Romero.
It is freedesktop compatible and works with most mayor Linux/BSD desktop environments.
This icon theme was included in some versions of Rodent filemanager (xffm versions 4.6.0--4.8.0) , but will not be included in Rodent Core (xffm-5.0).
Rodent Core (soon to be released) may use any icon theme installed, or none at all with no caveats.
Download from http://sourceforge.net/projects/xffm/files/rodent-icon-theme/
Enjoy.
December 25, 2012
Rodent Core-rc2 (xffm-4.9.2) is now released.
Merry Christmas!
Rodent core-rc2 (aka xffm-4.9.2) is now released. This release is only available as source tarball. As soon as tests have completed on different platforms and final bug reports closed, this will become the 5.0 release. This release is a major milestone release with the following details:
- Compatible with systems from gtk+2.24 to gtk+3.6 (3.x is preferred).
- New threading paradigm in place (which is now the recommended method for gtk+3.4). This new thread control structure allows for quicker response and several race condition fixes.
- Full OFM keybind customization with included xml editor for easy access from the settings dialog (thanks to Liviu Andronic and Harold Ailing for the suggestions).
- Case insensitive sort option on selective basis (popup menu toggle).
- Process signalling popup menu in process taskbar ---little run buttons in bottom right corner--- (thanks to plmday for the suggestion).
- User configurable toolbar in unused space left by tab labels (cool).
- Added go forward functionality.
- Full options now available for GNU cp (original code by Torbjörn Granlund, David MacKenzie, and Jim Meyering).
- Full options now available for GNU mv (original code by Mike Parker, David MacKenzie, and Jim Meyering).
- Full options now available for GNU ln (original code by Mike Parker and David MacKenzie).
- Full options now available for GNU rm (original code by Paul Rubin, David MacKenzie, Richard M. Stallman, and Jim Meyering).
- Full options now available for GNU shred (original code by Colin Plumb).
- Memory leak bugfixes.
- New rodent-lite. This application may now plugins and modules on user request via settings dialog (rodent loads all available modules and plugins). The default configuration for rodent-lite is small and fast. Probably faster than Rox on a multicore box.
For a full account of changes, do a svn log --verbose -r 6002:6224
Comments, bug reports and suggestions are appreciated at the forums and bug tracker located in http://sourceforge.net/projects/xffm
Enjoy.
December 11, 2012
Rodent 4.9.0 is now in the oven.
In current subversion repository (Rodent core rc1), all the gtk+3.4 and gtk+3.6 issues have been resolved. Rodent now uses the new threading paradigm (which is really not new, just that the previous recommended threading paradigm was plain and simply crappy: no wonder why it was deprecated). Things run a lot smoother and much faster with the new threading paradigm. I guess that just goes to show that following the gtk recomended way of doing things is not always the best choice. A lot of new stuff is also coming in 4.9.0:
- All keybindings are now configurable
- Keybindings configurable with custom in-house editor
- Process signalling is now done with a popup menu in process taskbar (little run buttons in bottom right corner) so there is no need to click on the button to open a new window with rodent-ps.
- New user configurable toolbar in unused space left by tab labels
- Thread pool optimizations for faster response and minimized resource usage
- New popup tip widget over icon labels
- Experimental items now in stable code:
- obexfs
- cifs
- samba navigator
- ecryptfs
- curlftpfs
- New rodent-lite symlink that loads no plugins and runs just as fast or faster than ROX
Currently a few minor bugs must be fixed and a full memory debugging must be completed before release. A memory leak is currently holding back release. Methinks it might be related to the way GHashTables are being handled, but that is just a hypothesis for the evening.
BTW, tomorrow is a big day around here: Felicidades Lupita.
October 30, 2012
GTK+3.6 woes
In Gtk+-3.6, the threading model has changed.
Before 3.6, only one thread at a time could do a gtk/gdk call, and this was controlled by means of a mutex (which the user could customize). This did not always work with gdk pixbufs, but that could be controlled by locking the Xserver when necessary. This effectively serializes all gtk/gdk calls.
It seems this method was too difficult to understand and too taxing with the lock/unlocking of the mutex.
As of 3.6, this GDK mutex method is deprecated.
Furthermore, attempted use of the old method method runs into trouble. This is apparent with Rodent (b.6187), as the main loop will deadlock in Ubuntu 12.10, which uses gtk+3.6 and beyond. This deadlock is caused by a GDK mutex lock request in the main thread. I could probably hack a way around this problem, but that would not be quite right.
The new thread paradigm is a reflection of the QT way: all GUI calls (gtk/gdk) can only be done from the main thread. This sucks, in some ways. And does not suck, in other ways.
So what is to be done?
- All GDK mutex blocks should be replaced with functions queued to the main thread by means of g_main_context_invoke() or g_idle_add().
Current stable gtk+ in Gentoo is at 3.4.4, which means additional trouble since 3.6.1 is masked ~amd64.
So next series of builds beyond b.6187 will target the new gtk/gdk thread serialization paradigm. Support for Gtk+2 may be dropped if the new threading paradigm proves incompatible.
Last minute update: I just updated my gentoo box to gtk-3.4.4 (from gtk-3.2) and lo behold, the same deadlock for b.6187 occurs as with gtk-3.6. So the deprecated thread paradigm should still work, and the deadlock is due to recent changes in the build. I'll look it up next.
June 27, 2012
Rodent Delta (aka xffm 4.8.0) is now yours
Rodent Delta has extensive work done. Thread units have expanded and support for local/remote files is now in place. Rodent Delta will run much faster on multicore boxes (and a bit slower on single cores), but is still faster than the official gnome filemanager on loading large directories like /usr/bin.
You will find binaries in both amd64 and x86 format for Debian 6, Fedora 17, OpenSuse 12.1 and Ubuntu LTS 12.04. Builds have also been tested on ArchLinux, Gentoo and FreeBSD.
Rodent Delta now sports the new "FUSE" plugin, which allows you to mount remote ssh filesystems (you just need a ssh account on the remote machine) and nfs remote mounts (nfs is not exactly fuse, unless you consider that root also falls under the "u").
This is a different approach than that taken by Gnome. There is no GVFS. GVFS will do a fuse mount in ~/.gvfs, and hide this from the user. Rodent users, on the other hand, are not stupid: hiding vital information about how the system works is just counter productive and reminds me of MSWindows.
If you compile from source, you may choose to enable the experimental plugins.
They are experimental because they have not been fully tested on all platforms (but work fine on my Gentoo box). These experimental plugins include:
- obexfs: to access files on your mobile phone or device via bluetooth.
- curlftpfs: to access file on remote ftp servers.
- ecryptfs: to create and access encrypted directories on local disk or removable media
- cifs: to mount MSWindows shares. Smbfs is long deprecated and should not be used anymore.
- samba: this allows you to navigate MSWindows networks and select cifs mount points. This replaces xfsamba and samba plugins from relevant xfce 3.x and 4.x releases.
- edit button in fgr (find) dialog.
These experimental items will be deemed stable in upcoming releases.
My favorite: ecryptfs
The approach of encrypting the whole user's directory that some distributions use is weak and gives a false sense of security. The Rodent approach is to encrypt that which requires to be encrypted and only decrypt when necessary, not every time you happen to login. This is specially useful for removable devices. If you are working on a multimillion dollar confidential project and your usb drive gets stolen, you might be in a sore spot if that small directory with vital information was not properly encrypted. This plugin replaces the scramble program distributed relevant xfce 4.x releases and closes the security issue noted by FreeBSD users (better late than never).
If you feel that some feature or functionality would be nice, submit a feature request. If you find a bug, submit a bug report (tracebacks are essential). If you do not know what a feature request or bug report is, then Rodent is probably not for you.
Finally, if you wish to enable core dumps, configure with the --with-core option.
Remember that Rodent is provided as is, with no particular Warranty, as stated in the GPLv3 license. My only wish is that this software may be as helpful to you as it is to me.
Enjoy.
March 13, 2012
Libtubo now released as a separate package
Libtubo, which does all the work behind the scenes for Rodent Filemanager, has now been released as a separate library so that other programs can take advantage of the functionality. Read more at Libtubo Homepage
October 18, 2011
Rodent Filemanager (version 4.7.4) is now available for download
Rodent Gamma release 4 (aka xffm-4.7.4) is now available in source tarball and debian packages for i386 and amd64 architecture (these .deb files built on debian-squeeze also work in ubuntu, xubuntu and kubuntu).
mutex/hashtable cleanups... Fix segfault on remote X connection... more pdf viewer options for debian... Add cancel button to find dialog to stop all the multiple threads that may be running.... additonal use of XInitThreads() ... Error control: fallback icons for population elements... disable gtk-icontheme-selection button if no Rodent theme found... Fixed the open with dialog: commands are saved in the temporary cache ...Open with no longer sets default mimetype application, this is done with CONTROL-click on the menu item. Open with should append the application ... Menu items that may set default application now have a tooltip to that effect... update translations ... fix for broken gtk_widget_hide in 2.24 which does not cover all the functionality available in gtk_widget_hide_all (won't hide top level popup menu items).
This release fixes several segfault conditions as well as enhancing the applications menu. Now setting the default application for any particular mimetype is as easy as control-click.
Documentation has also been updated to reflect changes and enhancements to Rodent Filemanager.
Download from http://sourceforge.net/projects/xffm/files/
Enjoy
Rodent Gamma release 3 (aka xffm-4.7.2) is now available in source tarball and debian packages for i386 and amd64 architecture (these .deb files built on debian-squeeze also work in ubuntu, xubuntu and kubuntu).
Download from http://sourceforge.net/projects/xffm/files/
This release fixes the critical bug identified in Rodent 4.7.0 and 4.7.1 and which affected users with bookmarks which do not exist on the filesystem when the popup menu is summoned. This may happen with an gvfs smb:// path or a local path that no longer exists. For example, if you eliminate the directories for dummies created by some file managers for users who don't have a clue as to where to save videos, documents, downloads and the like, but don't eliminate the associated bookmarks.
Thanks to Liviu and Populus for the identification and fix of this bug.
Release 4.7.2 also has an enhanced dotdesktop plugin, with more informative applications menu (see http://xffm.foo-projects.org/snapshots/dotdesktop-3.png ) and dot-desktop file (launcher) popups (see http://xffm.foo-projects.org/snapshots/dotdesktop-4.png ).
Translations have also been updated.
Please enjoy!
(But don't forget that Rodent is provided as is, with no warranty, in the hope that it may be as useful to you as it is to me)
Enhancements from 4.7.0:
- 1. Added direct size options to the "icon size" popup submenu
- 2. Add minimize button to desktop diagnostics window for FVWM users (namely, me).
Bug fixes from 4.7.0:
- 1- doubleclick on non mime-associated text file was creating the "open with" dialog instead of directly going to the default editor. Now it opens the file.
- 2- Bookmark items were not appearing in deskview menu. List was not being initialized.
- 3- Dotdesktop menu items with Exec outside users path (or nonexistant) are not to be included in popup menu.
- 4. Bookmarks in popup menu was not being updated when a non-rodent application was modifying them (i.e. Nautilus or similar).
- 5. Bookmarks monitor was missing a mutex.
- 6. Allow user to permanently hide desktop diagnostics window with the close button and to hide/show with the setting dialog option.
- 7. Fix a race condition between rodent and rodent-desk to generate mime association caches. This bug causes random crashes on initial startup of fresh installations, only once.
Notes:
- 4.7.1 uses the same configuration directories (rfm-Gamma) and build id for user settings (5190) as 4.7.0.
Enjoy!
4.7.0 bug
A startup bug (critical) slipped by unnoticed into the 4.7.0 release. You may or may not be affected by it, depending on how your computer deals with parallel processes. The problem is in the generation of the mimetype-application association cache.
If on initial startup you get any warnings of the like "refuse to write" or if you click on a text file and the open with dialog pops up instead of the default editor, then you were affected.
Simple fix: remove all traces with:
$rm -rf `find ~/ -name "rfm-Gamma"`
Then start rodent with "rodent-desk" instead of plain "rodent".
This will avoid the race and generate correct caches. The bug only occurs when the user runs rodent for the first time.
This has been fixed in SVN for release 4.7.1.
Thank you for your comprehension.
Download from sourceforge.
Rodent Gamma (aka xffm-4.7.0, or build 5190) now includes the following new features:
- Inline and online User's Manual (alas! documentation!).
- Rodent icon theme is now XDG spec and includes many new icons. This means you can use the Xfce native Rodent icon theme with your favorite desktop. You can also use any other desktop icon theme with Rodent Filemanager (if this is to your liking). Much appreciation is due to Pablo Morales Romero (Lonerocker) and the resources at Freedesktop.org for making this possible.
- Bash completion is now enabled in the lp-terminal command line and all input dialogs (where applicable). This complements the history autocompletion which was already enabled.
- Rodent-fgr find tool stand alone application.
- New rodent-ps plugin. This allows you to monitor all running processes and send signals with point and click ease. Easy access to all processes makes process control much quicker (for those who know what pid and signals are, of course).
- New rodent-dotdesktop plugin. This allows Rodent filemanager to process dot desktop files (or launchers) adding the following functionalities:
- Applications menu. This appears in the top level menu and includes all installed programs grouped in the conventional desktop categories. So if you are stuck with a gnome panel you don't want just to have the menu, or are tired of waiting for an independent application to generate a menu, here's the small and quick solution.
- Top level Applications launcher folder which contains folders for every category claimed by an installed applications. (Other filemanagers consider the user too stupid to list each and every category... no wait. No other filemanager handles categories the way Rodent does. Rodent's way of handling applications categories is the CDE way, which takes us back to Xfce core roots. Not everything has to emulate Micro$oft these days.)
- Automatic mimetype-application association. If an installed application claims it can open files of this-or-that mimetype, then the popup menu for icons of this-or-that mimetype will have the command enabled (with the correct icon, of course).
- Complete translations to French, German, Russian, Spanish, Chinese and many more languages (af ar as ast az be@latin be bg bn br bs ca ca@valencia crh csb cs cy da de dz el en_CA en_GB eo es et eu fa fi fr fy ga gl gu he hi hne hr hsb hu hy ia id is it ja ka kg km kn ko ku lt lv mai mk ml mr ms nb nds ne nl nn oc or pa pl ps pt_BR pt ro ru si sk sl sq sr@ijekavianlatin sr@ijekavian sr@ije sr@latin sr sv ta te tg th tk tr ug uk uz@cyrillic uz vi wa xh zh_CN zh_HK zh zh_TW.Big5 zh_TW).
- Content folder icons. This features puts a small icon on top of each folder to show the user what type of files the folder contains.
- A lot of other enhancements, optimizations and bug fixes I cannot remember at this point. See ChangeLog for full details.
Note: Following the spirit of Free Software, this project feeds on the
collaboration of literally thousands of Open Source programmers,
artists and translators. As is proper in an educated environment,
due credit to every contributor is acknowledged. If by any chance
you notice that a contribution you have made has not been recognized
in the "About" dialog, please file a bug report at
https://sourceforge.net/p/xffm/bugs/.
Enjoy!
:
The comments made by Linus confirm what I have known long ago: the Xfce crowd is not made up of dummies.
Anyways, the next step in the xftree evolution, Rodent Gamma, is almost here. This includes several important new features, along with bug fixes and code optimizations. Among the new features you will find:
- ** Bash completion.
- This is for the lp-terminal and all applicable dialogs where paths or
commands may be input via the keyboard. The combination of bash completion
and history completion make Rodent's keyboard access extremely fast
and powerful, as you may soon discover.
** Bookmarks.
- The standard gtkbookmarks is now used in Rodent. This means that bookmarks
generated in Nautilus are available in Rodent and vice versa.
- Nautilus automatically creates bookmarks for users who don't know where
to put videos, music, documents or downloads, and you can easily remove
these with Rodent.
- Adding or removing bookmarks in Rodent is a two click operation.
Nautilus, OTH, uses 2 clicks to add but a click-scroll-click-click-click
sequence with buttons and text to read in order to remove a bookmark
(are they trying to make it impossible for dummies?)
** Launchers.
- This is the Nautilus "terminology" for dot desktop files, which most
applications provide upon installation. "Shortcuts" is the term Linus
uses. The functionality for dealing with these files is provided by
a Rodent plugin and consists of
- --filesystem navigation through categories
- --popup menu with the standard gnome/kde categories
- N_("Accessories")
- N_("Graphics applications")
- N_("System Tools")
- N_("Internet and Network")
- N_("Games and amusements")
- N_("Office Applications")
- N_("Tools for software development")
- N_("Audio and Video")
- N_("Personal preferences")
- NOTE: These categories are arbitrary and if you have a better
suggestion for the application popup menu for Rodent Gamma,
now's the time to speak up, before the Gamma version is released.
- Differences with xfce-appfinder:
- The available categories is only limited by the amount of categories
installed in the current system.
- Categories have their own icon and work as a containing folder for all
dot desktop files which list that category as their own.
- You can browse through categories instead of searching for
(search is taken care of with bash completion or find tool, yes?).
- Differences with Nautilus:
- Rodent will allow you to treat dot desktop files as what they
really are, files, not only icons to double click or drop another icon upon.
Please do not interpret this difference with Nautilus as a Nautilus
drawback, some consider it a feature: dummies are meant to be fooled into
believing launchers are not really files so that they won't mess things up
(although this does not always work: dummies are too darn smart).
** Processes
- There was once a super stable OS system which considered everything,
including files, as processes. This OS system disappeared because it
was proprietary. In the linux world the tendency is to consider
everything, including processes, as part of the filesystem.
As a part of the filesystem, why shouldn't processes be manageable by
a capable filemanager?AFAIK, Rodent is the only filemanager now endowed
with this capability.
- With the rodent-ps plugin, the default behavior of the stop button
which appears for backgrounded processes changes. Instead of sending a
SIGTERM (and optionally a SIGKILL), a window will open at the point in
the process tree where the process is located, giving options to send
arbitrary signals to the process (like STOP or CONT), or navigate
through the process tree.
- This plugin has the option to visualize user processes (default) or
all processes. You may also toggle the tree structure on and off.
- I am specially grateful to
- Branko Lankester <lankeste@fwi.uva.nl>,
- Michael K. Johnson <johnsonm@redhat.com>,
- Michael Shields <mjshield@nyx.cs.du.edu>,
- Charles Blake <cblake@bbn.com>,
- Albert Cahalan <albert@users.sf.net> and
- David Mossberger-Tang
for contributing the powerful and bugfree backend to this Rodent plugin.
** Content folder icons
- This features puts a small icon on top of each folder to show the user
what type of files the folder contains. This is a suggestion from kde
team to improve and make less "windowy" the Dolphin feature that maps
small thumbnails of contained images on folders. Advanced users will
not only be interested in quickly locating pictures at a glance, but
also pdf, source code, spreadsheets and all kinds of different files.
This feature is enabled by default but can be disabled in the settings
dialog.
** Optimized read and load
- For those who are interested in reading /usr/bin quickly, Rodent is now
about ten times faster than Nautilus. That is what multithreading in
multicore enviroment is all about. A search for "g_thread_create" in
Nautilus code gives only one match: this does not look good at all,
although I may be mistaken.
- And if you really want speed, you may remove or not install the icons
plugin (take the Rodent out of Rodent). This will make the loading of
/usr/bin much faster, and cut down memory usage, but will cost you
in eyecandy.
** Documentation
- User documentation in pdf and html format will be available. This, and
final testing, are the items holding release at this moment.
*
:
Rodent Beta release 2 (aka xffm-4.6.4) has now been released and is yours!
This is a bug fix release with many optimizations and new features added.
The most important fix is a race which caused a dbh file corruption with a 1/25 probability on virgin startups. It would only affect the user who had the corrupt dbh file. The corrupt file could be removed with a rm -rf `find ~ -name "rfm*"`.
Anyways, the race condition is fixed in 4.6.4, but if you were unlucky enough with 4.6.2, just remove the rfm directories "~/.cache/rfm", "~/.local/share/rfm" and "~/.config/rfm". This will leave your directory as good as new.
The most important features added to 4.6.4 are:
- New touch frontend: all GNU touch options are now available. Special thanks to
- Paul Rubin
- Arnold Robbins
- Jim Kingdon
- David MacKenzie
- Randy Smith
for the creation of such a powerful and bug free backend to rodent touch.
- Rendering is now done with cairo. This makes for prettier graphics and optimized routines.
- Rubberband selection now does up and down scrolling and will select/unselect on the fly.
- Updated translations: we now have the greater part of the world population covered.
- Remove, find, settings, touch dialogs now run in their own threads.
- Added RTFM and Help buttons for cp, mv, ln, shred and fgr.
- Added a conventional About dialog.
- Migrated pasteboard from server-base to thread-safe client-base.
- Variable icon/thumbnail size (per directory memory) via a zoom-in/zoom-out button.
New requirements:
- bash (n.b., this requirement has now been dropped)
- librsvg >= 2.26.0
- cairo >= 1.8.10
Requirements which are now optional: (well, not really. Due to a missing
ifdef/endif directive pair, libzip is still required. But the configure script won't abort if it is not found! Please excuse any inconvenience this may cause)
A list of reported bugs fixed can be found at https://sourceforge.net/p/xffm/bugs/
.
CDE had a neat filemanager called dtfile, but this was not open source, so Xfce used a variation of Rasca's "Xtree" called "Xftree" as a filemanager. I entered the show by extending Xftree's functionality with the "glob" search engine (now "fgr"), the samba network browser "Xfsamba", the differences viewer "Xfdiff" and a set of dtfile icons, among other things.
Then came the migration to GTK-2. For this Xftree was rewritten as Xffm, retaining all the previous functionality and adding more. The dtfile icon set was replaced by Francois' Rodent icon theme. To distinguish Xffm as a part of Xfce, the first release was tagged 4.0.
Then came 4.2 and the love/hate story started. Those new to Xfce could not understand why Xffm had such a steep learning curve, while those familiar to Xftree expected the nerdy behaviour they had become used to.
Anyways, it was decided that Xfce would no longer distribute a filemanager: this way users could choose the new Thunar filemanager (which, as an independent software, would no longer follow the Xfce version numbers).
Cut loose of the xfce umbilical, xffm was adopted by foo-projects, hosted at Stockholm University. The xffm.org domain was assigned and the web page at http://xffm.org/ was put on the line. The next release of Xffm would no longer follow the Xfce version numbers, but for consistency would not be rolled back.
Xffm-4.5.0, which featured a new user interface (although the old nerdy treeview was still available) was released on 2006-05-24. This remained stable until 2009, when Intel gave me a multicore laptop to start doing multicore software.
The new thread-safe thread-based design (code named "Rodent", for Francois' icon theme) required a rewrite of the Xffm code. For this rewrite several goals were set forth:
As part of the unnerdification, the old treeview is gone. To keep it simple, the graphic part is as simple as the concept developed by the guys at Palo Alto (you know, the guys who first came up with the idea of rodent ---or mouse-- for a computer). Nothing more. Simple uncluttered graphics. Along side this graphic part is the keyboard. A place to issue commands. Graphic, but not for dummies.
The first release of Rodent Alpha, (aka xffm-4.6.0) was in November 2010. And was presented at a conference at the University of Sonora. The second release was much more stable. This was Rodent Beta (aka xffm-4.6.2) in April 2011. The third release, code name Rodent Beta 2 (aka xffm-4.6.4) will be in a few days from today.
Beta 2 is much faster, much more stable and will have over 95% translation for the main non-English speaking Rodent user base (Germany, Spain, France, Ukraine and Russia), along with many other languages. This will be available very soon at the sourceforge download site.
After a full year's worth of coding, Rodent Beta is now released! This is release 4.6.2: build 4324 (yes, more than 500 changes since Rodent "Alpha").
This release consists of a source tarball and Debian 32 binaries (Ubuntu 10.04).64 bit binaries will come soon, along with Gentoo ebuild and FreeBSD port...
Many thanks to Greg Inda who has performed extensive testing of the software on production machines and has detected many bugs and oportunities for enhancements.
Rodent Beta now sports a brand new "rodent-diff" helper application (replacing aging xfdiff). With the new rodent-diff, practically all the options of the GNU diff program are available in a graphic front end. For creation of such a powerful backend to rodent-diff, we are grateful to:
This is build 3710, (aka. 4.6.0).
This release consists of source tarball. Debian 32 and 64 bit binaries will come soon...
Many thanks to Intel Corporation for the hardware provided for thread control development and Auke Kok for the repository resources and website at foo-projects.