Simple CLI tool to watch directories and move their files to a single dumping ground
Go to file
Harsh Shandilya b82cd65e87
fix(flakes): adjust flake-compat URL
2023-06-25 12:27:53 +05:30
.cargo feat(nix): refactor out common args 2023-03-11 00:52:21 +00:00
.github feat: set up publishing via cargo-dist 2023-04-10 18:48:15 +00:00
.vscode chore(vscode): configure nix-env 2023-02-03 16:04:22 +00:00
src feat: migrate from `toml` to `basic-toml` 2023-06-25 00:13:31 +05:30
.git-blame-ignore-revs chore(git): add Alejandra reformat to blame ignore revs 2023-02-22 18:29:18 +00:00
.gitignore Initial commit 2022-07-10 17:56:41 +05:30
Cargo.lock feat: migrate from `toml` to `basic-toml` 2023-06-25 00:13:31 +05:30
Cargo.toml feat: migrate from `toml` to `basic-toml` 2023-06-25 00:13:31 +05:30
LICENSE-APACHE chore: add README and license files 2022-08-10 15:26:07 +05:30
LICENSE-MIT chore: add README and license files 2022-08-10 15:26:07 +05:30
README.md chore(readme): add Built With Garnix badge 2023-02-16 14:13:02 +00:00
audit.toml chore: migrate to cargo-audit 2023-02-03 15:56:24 +00:00
default.nix fix(flakes): adjust flake-compat URL 2023-06-25 12:27:53 +05:30
flake.lock flake.lock: Update 2023-06-25 06:06:52 +00:00
flake.nix chore(flakes): add `cargo-nextest` to devShell 2023-06-25 00:13:44 +05:30
release.toml chore(release): update cargo-release config 2022-12-09 18:02:27 +00:00
rust-toolchain.toml feat(rust): upgrade to 1.70.0 2023-06-16 11:26:31 +05:30
shell.nix fix(flakes): adjust flake-compat URL 2023-06-25 12:27:53 +05:30

README.md

file-collector No Maintenance Intended Built with Garnix

I often run into an annoying problem where every game I play stores in-game screenshots into a different hard-to-access directory and it becomes a pain to hunt them down when I want to share one of them.

This simple tool aims to resolve that using the concept of a bucket, where you define a number of source directories from where files should be picked up from and a target directory where they should be moved to.

Usage

Configuration

An example config file can look something like this:

# ~/.config/collector/config.toml
[bucket]
name = "Screenshots"
sources = [
  "/mnt/mediahell/MultiMC/instances/Fabulously-Optimized-4.1.0-beta.2/minecraft/screenshots",
  "/mnt/mediahell/MultiMC/instances/Fabulously Optimized 4.2.0-beta.1/.minecraft/screenshots"
]
target = "/mnt/mediahell/screenshots"

Running

Clone this repository and run cargo run --release. You will require a Rust installation.

Licensing

Dual licensed under Apache 2.0 or MIT at your option.