|Andy Alt d883e36193||5 days ago|
|.github/workflows||5 days ago|
|build-aux||5 months ago|
|docs||5 days ago|
|man||2 months ago|
|packaging||2 months ago|
|po||2 months ago|
|src||1 week ago|
|test||2 months ago|
|.editorconfig||2 years ago|
|.gitattributes||2 years ago|
|.gitignore||2 years ago|
|.travis.yml||7 days ago|
|ABOUT-NLS||2 years ago|
|AUTHORS.md||1 year ago|
|CODE_OF_CONDUCT.md||2 years ago|
|CONTRIBUTING.md||4 months ago|
|COPYING||5 years ago|
|ChangeLog||2 months ago|
|Makefile.am||2 years ago|
|Makefile.in||10 months ago|
|README.md||1 week ago|
|ReleaseNotes||2 months ago|
|THANKS||5 years ago|
|aclocal.m4||10 months ago|
|config.in||2 years ago|
|configure||2 months ago|
|configure.ac||2 months ago|
|rmwrc.example||2 years ago|
This README applies to the current development version and some information it contains may not apply to the last release.
rmw (ReMove to Waste) is a safe-remove utility for the command line. Its goal is to conform to the FreeDesktop.org Trash specification and therefore be compatible with KDE, GNOME, XFCE, and others. Desktop integration is optional however, and by default, rmw will only use a waste folder separated from your desktop trash. One of its unique features is the ability to purge files from your Waste/Trash directories after x number of days.
Web site: https://remove-to-waste.info/
If you are building from source, you will need the libncursesw(5 or 6)-dev package from your operating system distribution. On some systems just the ncurses packages is needed, and it's often already installed.
../configure --help to view available compile-time options.
mkdir build cd build ../configure make
If you would like to install rmw without superuser privileges, use a prefix that you have write access to. Example:
../configure --prefix=$HOME/.local make make install
The rmw binary will be installed to
$HOME/.local/bin and documentation to
On OSX, ncursesw isn't provided by default but can be installed
brew install ncurses. Then precede
Note: rmw was built on Windows 2 years ago using Cygwin but it didn't use the proper directories. We have no Windows developers working on this project and are hoping that some will join soon!. As stated in the description, the goal of this project is a "cross-platform" utility; so getting rmw to work on Windows is still on the TODO list.
== First-time use == After rmw is installed, running `rmw` will create a configuration file (rmwrc) in $HOME/.config (or $XDG_CONFIG_HOME). Edit the file as desired. == Configuration File == Documentation explaining the configuration can be found in your config file. Waste folders will be created automatically; e.g. if '$HOME/.local/share/Waste' is uncommented in the config file, these 3 directories will be created: $HOME/.local/share/Waste $HOME/.local/share/Waste/files $HOME/.local/share/Waste/info If one of the WASTE folders is on removable media, then the user has the option of appending ',removable'. If a folder has ',removable' appended to it, rmw will not try to create it; it must be initially created manually. If the folder exists when rmw is run, it will be used; if not, it will be skipped. Once you create "example_waste", rmw will automatically create example_waste/info and example_waste/files e.g.: WASTE=/mnt/sda10000/example_waste, removable == Features and Options == Usage: rmw [OPTION]... FILE... ReMove the FILE(s) to a WASTE directory listed in configuration file or: rmw -s or: rmw -u or: rmw -z FILE... Restore FILE(s) from a WASTE directory -h, --help -c, --config filename use an alternate configuration -l, --list list waste directories -g[N_DAYS], --purge[=N_DAYS] run purge even if it's been run today; optional argument 'N_DAYS' overrides 'purge_after' value from the configuration file (Examples: -g90, --purge=90) -o, --orphaned check for orphaned files (maintenance) -f, --force allow purge to run -e, --empty completely empty (purge) all waste folders -r, -R, --recursive option used for compatibility with rm (recursive operation is enabled by default) -v, --verbose increase output messages -w, --warranty display warranty -V, --version display version and license information ===] Restoring [=== -z, --restore <wildcard filename(s) pattern> (e.g. ~/.local/share/Waste/files/foo*) -s, --select select files from list to restore -u, --undo-last undo last ReMove -m, --most-recent-list list most recently rmw'ed files == Purging == If purging is enabled, rmw will permanently delete files from the folders specified in the configuration file after 'x' number of days. By default, purging is disabled ('purge_after' is set to '0' in the configuration file). To enable, use a value greater than '0' (Example: If '45' is specified, rmw will permanently delete files that have been in the waste (or trash) for more than 45 days. The value of 'purge_after' can be temporarily overridden by using -g [N_DAYS] or --purge[=NDAYS]. The time of the last automatic purge check is stored in `purge-time`, located in $HOME/.local/share/rmw (or $XDG_DATA_HOME/rmw). == -e, --empty == Completely empty (purge) all waste folders == -u, --undo == Restores files that were last rmw'ed. No arguments for `-u` are necessary. The list of files that were last rmw'ed is stored in `mrl`, located in $HOME/.local/share/rmw (or $XDG_DATA_HOME/rmw). == -z, --restore == To restore a file, or multiple files, specify the path to them in the <WASTE>/files folder (wildcards ok). e.g. 'rmw -z ~/.local/share/Waste/files/foo*' == -f, --force == rmw will refuse to purge directories if they contain non-writable subdirectories. You can use -f 2 times if you ever see a message that tells you "permission denied; directory still contains files" (e.g. rwm -ffg).