• Status Closed
  • Percent Complete
  • Task Type Patches
  • Category Plugins
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version Daily build (which?)
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by vmh - 2008-02-24
Last edited by jdgordon - 2008-05-18

FS#8637 - make disktidy files configurable

This patch makes disktidy plugin read the files/directories to clean from a configuration file.

Closed by  jdgordon
2008-05-18 07:27
Reason for closing:  Accepted
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

any volanteers to fix the manual?

vmh commented on 2008-02-25 07:58

- clean up
- move configuration file into the patch file

Using the DAP from Gnome, there is also “/.Trash*”.

vmh commented on 2008-02-28 21:28

The intention for this patch is to make disktidy easily extensible. I just included the files to clean in the config file which are already in the actual disktidy.

In your case, you can just add the following lines into the ‘disktidy.cfg’ file:

Here are some explanations:
- directories are marked with an ending ‘/’ (I assume .Trash is a directory)
- all the entries have wildcards (e.g. ‘.Trash’ has the meaning of ‘.Trash*’)

vmh commented on 2008-03-15 22:59

disktidy will create a sample cfg file if none can be found. This way the cfg doesn’t need to be included in the standard build and the user’s cfg file won’t get overwritten on every update.

Sync to SVN (r17210)
* Now follows the coding guidelines better
* Added the Linux introduced r17210 (and .Trash-username)

Sync to r17211

Use explicit Wildcards (*) instead of implicit ones.
To delete all files of the type “._random.bla” you have to add “._*” to the config file. Same goes for directories. In order to delete all gnome trash dirs add “.Trash*/”.

Updated build in config file to use explicit wildcards.

Oops, i misunderstood something… minor change to configuration file to remove .Trash-username/ folders and not files ;-)

Add “Reset Configuration File” menu point.

Fixes warnings in compiler.

I’ve taken your customization part and made it a nicer UI (I hope :p )… so, this patch is against svn, although I really like your wildcard matching so that should get dumped into this…

disctidy is now a viewer for .dtdy files which are in the format <string>: <yes/no> where string is the filename or directory (or special type where it starts with a <). if its a directory it needs to end in /
yes/no means it should be removed.
the “Files to Clean” item now opens up a list of all the types from either the hard coded defaults, or the .dtdy. selecting any will toggle it (I’ve used the cursor icon, but not sure thats the best one).
choosing < ALL > selects all, < NONE > selects none. any of the other special ones toggles all the items untill the next header.
to exit that screen press the usual list cancel button (left arrow/previous on 99% of targets)

if that screen is changed at all you will be prompted to save the changes before exiting…


vmh commented on 2008-04-24 18:25

Nice UI!

Some remarks:
- I don’t have a MAC but without wildcard a file with the name ._ makes no sense.
- Default should be <All> selected, not none (I don’t think an ordinary user want to fuss about configuration)
- Don’t like it as a “viewer” - viewer.config is missing in your patch
- What’s the purpose of <Other>?

- I dont use mac enough to know about the ._… and the wildcard stuff will be merged in if we decide to go with this
- debatable
- why?
- its the first hunk of the patch
- to put other files under

Added wildcards back.

Further suggestions:
* Add a trailing “/” to directories in the “Files To Clean” menu
* Select all files by default (done in this patch too)
* Add icon infront of the < OS > items (maybe the folder one as you suggested)

SO I think the only thing holding this back is because some people dont like it acting as a viewer (which I dont undertsand?)
it never does anything automatically, the viewer part is just to load the defaults, having it show up in the open with menu isnt great, but unless we add a way to exclude plugins from that I think its fine.

Project Manager

I must say that I don’t really understand why it is a viewer. Could you explain?

the point of the viewer was that users could setup their windows removal file, or their mac file and then just run the plugin and not worry about making sure the correct files are removed.

this attached patch removes the viewer part and adds Desktop.ini
I think all files should default to being removed

vmh commented on 2008-05-12 08:28

You removed too many code lines in the last patch (disktidy.3.patch). It’s not configurable anymore (”Files to Clean” is empty → tidy_type_count is always 0) …

This patch is what I’ve been waiting for, as I currently patch my disktidy to delete all the standard Sansa OF directories.

I’ve just patched with the last ‘viewer-enabled’ version (disktidy_2.patch) and I think the UI for selecting the required files is excellent. Bring back the viewer!

The only bit I don’t understand is how to have *my* hand-crafted *.dtdy file used as the default. I can browse to the file and ‘play’ it, thus starting disktidy with my settings present. However, this is in /.rockbox and therefore not intended to be browsed to by users. If I just start disktidy from the [Main] > Plugins > Applications menu, is uses the hard-coded defaults…

seems you cant… that can be put back in if the viewer part comes back

I’m confused. I *was* using the viewer-enabled version (disktidy_2.patch) :P

Or were you referring to Vuong Minh’s comment about not being able to configure it at all now…?

Project Manager

So the viewer was there to solve the problem that the config files are located in .rockbox?

the viewer was done for 2 reasons.
1) it means that you could have different setups for different OS’ (although I’ve changed my mind and thihng thats pointless now)
2) so we can hardcode a default list which would stay updated in new builds, and would not overwrite users’ setups (the alternative was disktidy.conf and disktidy_user.conf, which may be better anyway)

Despite my comments above about the viewer, the simple solution of disktidy.config and disktidy_custom.config (or whatever) would be fine. Certainly it would fit better into the existing Rockbox user interface practices.

new version..
this one loads disktidy.config (which will be part of the zip, and have every item set to not be removed), then it loads disktidy_custom.config which will add and overwrite the first config. (this way when the default one is updated the user will definatly get the new types)

any volanteers for the manual/wiki fixing?

* Show the tailing slashes for directories that the user knows what a dir is and what not (made sure it doesn’t save with two slashes in the end :-P)
* Some changes to the config file (one entry was a dir and one was not, added $RECYCLE.BIN/ and desktop.ini)

While adding the 2 new entries i noticed that they didn’t show up in the menu. I like the idea however. Maybe it’s easier to implement it this way that if disktidy_custom.config doesn’t exist create an empty file. When the user adds stuff to it show it under the < Other > section.

DerPapsts’ changes without breaking directory searching.
also fixed the problem with new files not being added (the actual problem was the 2nd file was overwriting the first)..

the last thing that I think is needed is for the files from the user config get merged into the defaults, not just appended which is happening now (i mean, < Windows > items from the user one should be put in the < Windows > group.

any takers?

Yep, works a treat now. The only problem I found during compilation, was that the default disktidy.config was created in /rockbox, rather than /rockbox/apps/plugins which is where *make zip* was expecting to find it.

new version (hopefuly final)

items from _custom are inserted into the correct groups

Has this also fixed the ?bug? that even though all files are set to ‘: no’, they get cleaned anyway?
Haven’t got time to try the latest version, but will do soon.


Available keyboard shortcuts


Task Details

Task Editing