Projects / libtrash


libtrash is a shared library that implements a trash can on GNU/Linux. When preloaded, it intercepts calls to a series of GNU libc functions and, instead of permanently destroying files, moves them to a "trash can".

Operating Systems

Recent releases

  •  23 Jan 2008 16:35

    Release Notes: The configuration script was updated so that users are notified if a more recent version of Python needs to be installed (rather than producing a cryptic error message). There is no reason for existing users to upgrade.

    •  27 Dec 2007 19:33

      Release Notes: This release updates the build script so that the symbol version used for each wrapped GNU libc function is that identified with "@@" in the output of 'readelf -s [path to lib]'.

      •  04 Dec 2007 21:22

        Release Notes: This release fixes several bugs. It changes the way it gets pointers to GNU libc functions (now it should work for everyone). Support for the "ATFILE" family of functions is now decided automatically at compile time (rather than having the user experiment with the setting). A compile-time check for a working /proc filesystem has been added. Python is now required to install (not to run) libtrash.

        •  03 Dec 2007 03:38

          Release Notes: This release fixes a minor bug (only present when compiled in DEBUG mode) and removes an earlier 'fix' that was proving problematic for some. Previous users should note that the default value of an important config variable (REMOVABLE_MEDIA_MOUNTPOINTS) has been updated.

          •  06 May 2007 07:03

            Release Notes: A small bug introduced in the last version was fixed. A call to log10() hadn't been replaced, although the program no longer links against the math library.

            Recent comments

            26 May 2009 20:47 GravityIsForSuckers

            I'm using Slackware 12.

            Adding the alias su - l did not keep the LD_PRELOAD variable in place when switched user. I tried it manually and no dice. But I set the LD_PRELOAD variable in my system wide profile so using su shouldn't be a problem now.

            This program doesn't files that being with a dot/period. I've gone through most of the docs, but maybe I missed it as a known issue.

            Once I restated KDE (after I had set the LD_PRELOAD variable), firefox would not start, and I got no error message. I unset the LD_PRELOAD variable and firefox started.

            Web Alpine, defaults to using ~/Trash so users of alpine might want to check to see if they have an existing Trash file in ~ or ~/mail/ before running rm once libtrash is installed.

            I've only just started experimenting with libtrash. I like that if I delete a file in Konqueror, not just the command line, it will "save" the file. I often am quick to use "delete" in Konqueror instead of "move to trash."


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.