1
0
Fork 0
mirror of synced 2024-05-13 17:02:31 +12:00
Commit graph

151 commits

Author SHA1 Message Date
Rafał Mikrut 77a48ca6aa
Add support for translations (#469)
* Reformat code with idea tool

* Pierwsza działająca wersja tłumaczeń

* Działa? I dobrze, bo ma działać

* Ćma szła i się potkła

* Ściął śmiałek źółty rząd pąków.
2021-12-11 16:16:14 +01:00
Rafał Mikrut 5f774e03bd
Add button to ignore images with non unique size. (#493)
This will help with finding different images(non 1:1 which could be easily found by duplicate finder tool)
2021-12-08 23:08:05 +01:00
Rafał Mikrut a8aa8a2a23
Multiple small changes (#490) 2021-12-05 21:01:16 +01:00
Farmadupe 88b8f11e07
Cache vidoes with serde to avoid forked vid_dup_finder_lib (#486)
* Cache vidoes with serde to avoid forked vid_dup_finder_lib

* Fix clippy lint.

* Replace json serialization with bincode for videos
2021-12-05 18:34:12 +01:00
Rafał Mikrut 5296e1c708
Better comparison of music tags (#485) 2021-12-04 14:49:43 +01:00
Rafał Mikrut ce3d86fd4e
Approximate comparison of music (#483) 2021-12-04 09:29:29 +01:00
Rafał Mikrut f334bd6975
Add better custom selecting (#479) 2021-12-02 15:33:06 +01:00
Rafał Mikrut bb428171cb
Add better custom selecting (#478) 2021-12-02 13:31:10 +01:00
Rafał Mikrut 1fd53b854b
Add prehash cache support (#477) 2021-12-01 20:09:04 +01:00
Rafał Mikrut 51271dcdf0
Remove HashMB mode (#476)
* Remove HashMB mode

* Add some explanation and remove this from GUI

* Not needing to handle everything
2021-12-01 12:37:17 +01:00
Rafał Mikrut 4871016a3c
Add option to not remove outdated cache entries (#472)
* Add option to not remove outdated cache entries

* Default duplicates cache size lowered to 512 KB

* Add some tooltips,
Add logic to opening cache/config folders

* Add option to clear cache files from outdated results(manually)
2021-11-30 12:45:09 +01:00
Rafał Mikrut f2333b9df2
Save to cache info about broken, too short etc. images and videos (#471) 2021-11-29 13:53:09 +01:00
Rafał Mikrut cf2e822435 Reformat code with idea tool 2021-11-27 20:57:10 +01:00
Rafał Mikrut b7e4eaccaf Modified include organization 2021-11-27 20:49:20 +01:00
Rafał Mikrut d302c3b2d8 Update cache creating 2021-11-27 20:42:31 +01:00
Rafał Mikrut 78b49dee3d
Remove support for zeroed files (#461) 2021-11-23 11:38:37 +01:00
Rafał Mikrut 29129d3ec0
Support for finding similar videos (#460)
* Add support for similar videos to CLI

* Add GUI support for similar videos

* Video duplicates

* git_dup

* Documentation
2021-11-23 11:10:24 +01:00
Rafał Mikrut 9d28fb8a59 Release 3.3.0 2021-11-20 12:06:44 +01:00
Rafał Mikrut 052711bb4b
Add button for moving files/folders to choosen folder (#449)
* Add button for moving files/folders to choosen folder

* Add support for moving folders to other locations
2021-11-20 08:32:28 +01:00
Rafał Mikrut 49effca169 Disable partially supported webp<
Disable unrecognized pnm files
2021-11-19 06:53:01 +01:00
Rafał Mikrut 96e7af0d25
Add support for multiple hashes in similar images to GUI (#448)
* Add support for multiple hashes in similar images to GUI

* Needs a little more testing

* General fixes
2021-11-19 06:35:26 +01:00
Rafał Mikrut 20c89f44f0
Adds support for multiple hashes type and size in similar images, resize formats and also test to check performacne (#447) 2021-11-18 11:23:17 +01:00
Rafał Mikrut 742139379c
Add better errors explanation(native from libraries) (#446) 2021-11-14 15:53:55 +01:00
Rafał Mikrut dc8c14ea3c
Disable crashing image extensions (#445)
Bump minimal Rust to 1.53.0
Update Packages
2021-11-09 07:08:39 +01:00
Rafał Mikrut a92a113714
Add maximum file size (#407)
* Add maximum file size

* Add maximum file size
2021-08-06 23:23:11 +02:00
Rafał Mikrut 909967dcd8
Update BKtree and blake3 and add new grouping algorithm (#405)
* Update BKtree and blake3

* Add new algorithm for similar images

* Improve algorithm of grouping similar images
2021-08-06 16:40:43 +02:00
Rafał Mikrut da76f75e11
Update Rust to 1.54 (#400) 2021-07-30 07:16:35 +02:00
tecome a342ddfba7
Add webp support to similar images (#396) 2021-07-25 08:18:35 +02:00
Rafał Mikrut 0e9b8a1651
Use GtkScale instead radio buttons for similarity (#397)
* Use GtkScale instead radio buttons for similarity

* Fixes
2021-07-24 22:00:39 +02:00
Rafał Mikrut a623f2be00
Update all dependencies except trash which don't crosscompile on Windows (#395)
* Update all dependencies except trash which don't crosscompile on Windows
2021-07-21 21:48:21 +02:00
Rafał Mikrut cc0dcc2714
Fix excluded items on Windows (#324) 2021-05-08 21:54:01 +02:00
Rafał Mikrut 4fc8655272
Sort cache and allow to optimize later other code (#322) 2021-05-08 18:29:52 +02:00
Rafał Mikrut b08cedd5a6
Allow to set minimal file size to caching (#321) 2021-05-06 21:54:44 +02:00
Rafał Mikrut 775b6b4f10
Fix crashes with too small message queue (#316) 2021-04-14 08:23:59 +02:00
Rafał Mikrut 0fa6692d39
Fix error with saving results of name duplicates (#307) 2021-04-01 11:37:16 +02:00
Rafał Mikrut 50ad3f9873
Update to Rust 1.5.1 (#302) 2021-03-27 13:14:02 +01:00
Rafał Mikrut 0bbe9fe4a3 Revert "Disable for now broken tga and gif files (#270)"
This reverts commit 87f5ca63
2021-03-06 13:36:00 +01:00
Rafał Mikrut 17f97bd958
Add option to turn off cache (#263) 2021-03-04 12:09:53 +01:00
Thomas Andreas Jung 1d904a858e
Dryrun for duplicates (#277)
```
    czkawka_cli dup --dryrun -d $(pwd)/folder -m1 -D aen
    Found 2 duplicated files in 1 groups with same content which took 2 B:
    Size - 2 B (2) - 2 files
    /home/thomas/Development/czkawka/folder/a
    /home/thomas/Development/czkawka/folder/b
    ----

    -------------------------------MESSAGES--------------------------------
    Delete /home/thomas/Development/czkawka/folder/a
    Delete /home/thomas/Development/czkawka/folder/b
    ---------------------------END OF MESSAGES-----------------------------
    ```
2021-03-01 12:23:43 +01:00
Thomas Andreas Jung ed7b197100
Use one implementation for all duplicate file removales (#278) 2021-02-27 09:00:59 +01:00
Rafał Mikrut 13add1cbed
Add hardlinking support for GUI (#276) 2021-02-24 13:53:46 +01:00
Rafał Mikrut 4c770b582b
Add option to not ignore hard links (#273) 2021-02-22 20:14:33 +01:00
Rafał Mikrut 87f5ca63b9
Disable for now broken tga and gif files (#270) 2021-02-22 11:17:32 +01:00
Thomas Andreas Jung e3457edab2
Use one implementation for all hash calculations (#268)
All implementations are the same they only differ by hasher and the file read
limit.
2021-02-22 10:52:21 +01:00
Thomas Andreas Jung 1e94587de8
Ignore duplicates if those are hard links (#234)
This is a proof of concept.

```
$ echo a > hardlinks/a
$ cp hardlinks/{a,b}
$ ln hardlinks/{a,c}
$ cargo run --bin czkawka_cli dup -m 1 --directories $(pwd)/hardlinks -f /dev/stderr > /dev/null
-------------------------------------------------Files with same hashes-------------------------------------------------
Found 1 duplicated files which in 1 groups which takes 2 B.

---- Size 2 B (2) - 2 files
/home/thomas/Development/czkawka/hardlinks/a
/home/thomas/Development/czkawka/hardlinks/b
```

Open:
- Windows support
- Probably this should be a cli option
2021-02-20 12:28:06 +01:00
Thomas Andreas Jung 03d41e173f
Keep original file if replacing duplicate with hardlink fails (#253)
If the user could not create a hard link (due to permissions or
different block devices) then czkawka lost the duplicate file.

```
$ mkdir hardlink
$ cd hardlink
$ echo a > a
$ cp a b
$ chown thetestuser:thetestuser a
$ ls -il .

25169246 -rw-rw-r-- 1 thetestuser thetestuser 2 Feb  7 11:18 a
25169641 -rw-rw-r-- 1 thomas      thomas      2 Feb  7 11:18 b

$ cargo run --bin czkawka_cli dup --directories $(pwd) -m 1 -f
test101.result --delete-method HARD

[...]
-------------------------------WARNINGS--------------------------------
Failed to link /home/thomas/Development/czkawka/hardlink/b ->
/home/thomas/Development/czkawka/hardlink/a
---------------------------END OF WARNINGS-----------------------------

$ ls -il .
25169246 -rw-rw-r-- 1 thetestuser thetestuser 2 Feb  7 11:18 a
```

Now czkawka keeps all files and the warning provides more information
why czkawka can't replace the duplicate with a hard link.

```
$ cargo run --bin czkawka_cli dup --directories $(pwd) -m 1 -f
test101.result --delete-method HARD

-------------------------------WARNINGS--------------------------------
Failed to link /home/thomas/Development/czkawka/hardlink/b ->
/home/thomas/Development/czkawka/hardlink/a (Operation not permitted (os
error 1))
---------------------------END OF WARNINGS-----------------------------
[...]

25169246 -rw-rw-r-- 1 thetestuser thetestuser 2 Feb  7 11:18 a
25169641 -rw-rw-r-- 1 thomas      thomas      2 Feb  7 11:18 b
```
2021-02-11 19:04:23 +01:00
Rafał Mikrut 10156ccfd3 Uncomment code about saving similar images result to file 2021-02-09 17:29:49 +01:00
Rafał Mikrut df44f9c342
Update list of checked images (#252) 2021-02-06 14:24:15 +01:00
Rafał Mikrut 9bb574235a
Add checking for broken music opt-in (#249) 2021-02-05 19:07:20 +01:00
Thomas Andreas Jung 3ffa55b008
Add delete method to replace duplicate files with hard links (#236)
This results in the same space saving but keeps the "deleted" files around.

$ mkdir hardlink
$ cd hardlink
$ echo a > a
$ cp a b
$ ln a c
$ touch -t 01010000 a
$ ls -il --time-style=full-iso .
25169323 -rw-rw-r-- 2 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 a
25169558 -rw-rw-r-- 1 thomas thomas 2 2021-01-31 18:11:08.298161098 +0100 b
25169323 -rw-rw-r-- 2 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 c

$ czkawka_cli dup --directories $(pwd)/hardlink -m 1 -f hardlink.result --delete-method HARD

$ ls --time-style=full-iso -li hardlink
25169323 -rw-rw-r-- 3 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 a
25169323 -rw-rw-r-- 3 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 b
25169323 -rw-rw-r-- 3 thomas thomas 2 2021-01-01 00:00:00.000000000 +0100 c
2021-02-05 17:59:34 +01:00