Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/msfjarvis/rucksack
Simple CLI tool to watch directories and move their files to a single dumping ground
https://github.com/msfjarvis/rucksack
Last synced: 2 months ago
JSON representation
Simple CLI tool to watch directories and move their files to a single dumping ground
- Host: GitHub
- URL: https://github.com/msfjarvis/rucksack
- Owner: msfjarvis
- License: apache-2.0
- Created: 2022-08-10T07:16:16.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-01T14:57:33.000Z (8 months ago)
- Last Synced: 2024-05-01T16:02:23.147Z (8 months ago)
- Language: Rust
- Size: 412 KB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
- Audit: audit.toml
Awesome Lists containing this project
README
# rucksack [![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/)
rucksack is a simple file moving service that was built to solve the use case of watching a collection of directories and collecting all there files into a single target directory.
The idea for this was born from the frustration of playing games and wanting to share screenshots from them with my friends. Every game likes to hide its screenshots in a specific obscure path which made it harder to find them when I needed to. With rucksack they can all neatly stay in a single folder making discoverability significantly easier.
## Usage
### Configuration
An example config file can look something like this:
```toml
# ~/.config/rucksack.toml
name = "Screenshots" # Optional
sources = [
"/mnt/Games/Minecraft/screenshots",
"/c/Users/Harsh Shandilya/Pictures/God Of War"
]
target = "/mnt/mediahell/screenshots"
file_filter = "*.png"
```### Running
Prebuilt binaries for macOS and Linux can be installed from [here](https://github.com/msfjarvis/rucksack/releases/latest).
`rucksack` uses [watchman](https://github.com/facebook/watchman) to power its file-watching capabilities. You can find the steps to install it for your own platform [here](https://facebook.github.io/watchman/docs/install).
To build from source, clone this repository and run `cargo run --release`. You will require a Rust installation.
`rucksack` is only tested against the latest stable release of Rust but a few versions older should also be fine.
## Licensing
Dual licensed under Apache 2.0 or MIT at your option.