You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+23-18Lines changed: 23 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Compactor
2
2
3
-
## A friendly user interface to Windows 10 filesystem compression.
3
+
## A friendly user interface to Windows 10 filesystem compression
4
4
5
5
With modern lightweight compression algorithms running at gigabytes per second per core, it's practically a no-brainer to apply them to filesystems to make better use of storage and IO.
6
6
@@ -10,12 +10,14 @@ Compactor is here to plug that gap, with a simple GUI utility anyone can use.
Downloads are available from the [Github Releases](https://github.com/Freaky/Compactor/releases) page under *Assets*, or you can use these direct links:
If you get "*Windows protected your PC*" trying to run it, it's just [SmartScreen](https://www.pcworld.com/article/3197443/how-to-get-past-windows-defender-smartscreen-in-windows-10.html) upset the binaries aren't (yet) signed. Click "*More info*" and "*Run anyway*" if you judge things to be above-board.
21
23
@@ -51,7 +53,7 @@ Written in [Rust], a modern compiled systems programming language from Mozilla,
51
53
52
54
### Beta Software
53
55
54
-
Compactor has received only limited testing. I've used it extensively on my desktop and laptop without a problem, it's saved me *hundreds of gigabytes* of disk space. Hopefully it will do the same for you.
56
+
While it has been used successfully by thousands of people, Compactor should be used with care. It is intended for compressing replacable software, not precious files.
55
57
56
58
**Make backups**. Report bugs. Be nice. You are reminded:
57
59
@@ -65,9 +67,15 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
65
67
SOFTWARE.
66
68
```
67
69
70
+
It's in shouty legal text so you know I mean it.
71
+
72
+
### Data Corruption
73
+
74
+
There has been [one report][#40] of data corruption with open SQLite database files. The author has been unable to reproduce this, but file locking was added to version 0.10 which should prevent them from being modified.
75
+
68
76
### Permissions
69
77
70
-
Compactor currently has no mechanism to elevate its privileges using UAC for protected files. If you're using a limited account you might need to run it as an Administrator, or a user with similar privileges.
78
+
Compactor currently has no mechanism to elevate its privileges using UAC for protected files. If you're using a limited account you may need to run the program with elevated permissions.
71
79
72
80
Be careful what you compress. System files should be skipped automatically, and the Windows folder should be in the list of default exclusions (if you want to compact Windows, check out its [CompactOS] feature), but you almost certainly don't want to blindly run this across your entire `C:\` drive.
73
81
@@ -101,28 +109,24 @@ A totally-not-cherry-picked sample of compression results with the default setti
101
109
102
110
A more comprehensive database of results is [maintained by the CompactGUI project](https://docs.google.com/spreadsheets/d/14CVXd6PTIYE9XlNpRsxJUGaoUzhC5titIC1rzQHI4yI/edit#gid=0).
103
111
104
-
105
112
## Future
106
113
107
-
In the fairly-concrete TODO:
114
+
There are many things I want to do with Compactor in future. These include, but are certainly not limited to:
108
115
109
-
* Hook up an interface to the saved paths database (count, option to clear it).
110
-
* Recompression, for changing compression modes without manually decompressing/recompressing.
116
+
* Make analysis optional. It isn't fundamentally needed.
117
+
* Multithreaded analysis/compaction for SSDs.
118
+
* GUI rework of some description. The longer I leave this the better Rust should get at it :P
111
119
* Installer. Why does this involve so much XML oh god.
112
-
* Sign the binaries/installer. If I give away my code I get a free one, right?
113
-
* Double-check the default exclusions list. Should be able to do something with the compresstimation code to verify them.
114
-
115
-
More tentative:
120
+
* Sign the binaries/installer. This appears to involve money.
121
+
* Scheduled task or a background service for set-it-and-forget-it operation.
116
122
117
-
* Scheduled task or a background service to periodically recompress selected directories.
118
-
* Write bindings to Microsoft's [Compression API], add benchmarks for the various compression modes to help users decide which is most appropriate for their system.
119
-
* Examine [overlapped IO], see if we can get more information and control out of the compression process (per-file progress and cancellation).
123
+
Feature requests can be discussed in the [forum](https://github.com/Freaky/Compactor/discussions), or you may open [an issue](https://github.com/Freaky/Compactor/issues).
120
124
121
125
## Alternatives
122
126
123
127
*[`compact.exe`] is a command-line tool that ships with Windows 10. If you're familiar with the command line and batch files, maybe you'd prefer that. Weirdo.
124
128
*[CompactGUI] is a popular Visual Basic program that shells out to `compact.exe` to do its work, instead of using the Windows API directly as Compactor does. It has some... performance issues, particularly with larger folders.
125
-
* NTFS has supported [LZNT1 compression][lznt1] since 1995, hidden behind a checkbox under `Properties`→`Advanced Attributes`. It's less flexible and has a reputation for poor performance, but is more set-it-and-forget-it.
129
+
* NTFS has supported [LZNT1 compression][lznt1] since 1995, hidden behind a checkbox under `Properties`→`Advanced Attributes`. It's less flexible and has a reputation for poor performance and issues with fragmentation, but is more set-it-and-forget-it.
126
130
127
131
Are you aware of any others? Do let me know.
128
132
@@ -161,3 +165,4 @@ You can find him on Twitter at [@blaagh], or bug him on IRC as `Freaky` on FreeN
0 commit comments