Giter VIP home page Giter VIP logo

sushi-shuffle's Introduction

CMake

Introduction

Welcome to sushi-shuffle, your new ally in conquering the chaos of file organization. This lightweight and flexible service is designed to rescue your files from the abyss of disorder, operating seamlessly based on a straightforward config file. Imagine giving specific orders to your file-sorter like โ€“ "Hey, check /home/username/Desktop/, and if you find any *.py files, move them to /home/username/py!" It's that simple.

Installation Requirements

Before diving into the sushi-shuffle fun, make sure to install the necessary packages:

sudo apt-get install build-essential cmake git gcc

Download & Build

Get started by cloning the repository and navigating to the sushi-shuffle folder:

git clone https://github.com/constarg/sushi-shuffle.git
cd sushi-shuffle/

Now, let's build the program:

mkdir build
cd build/
cmake ../
make
make install

Make sure your cmake version is 3.19 or above. If not, grab the latest version from here: https://cmake.org/download/

After this the program will be installed and ready to run.

Config

Customize your sushi-shuffle experience using the config file located at ~/.local/share/sushi-shuffle/config/config.conf. Set check intervals, debug modes, default paths, and more. The config file has three segments: [check], [targets], and [exclude], allowing you to define locations, file extensions, and rules effortlessly.

Commands

Command Description Comments
sushi-shuffle --start-sorter Start the sushi shuffle service -
sushi-shuffle --help Displays all available commands. -
sushi-shuffle --set-check-interval [value] Changes the check interval. -
sushi-shuffle --set-default-dir-path [path] Changes the default location. -
sushi-shuffle --set-enable-default-dir [value] Enable/disable transfers to default dir. 0:1 Enable the to transfer files in default dir.
sushi-shuffle --set-debug-log [value] Switches between debug and normal mode. 1 (debug mode) and 0 (normal mode)
sushi-shuffle --set-mv-without-ext [value] Enable/disable moving files without extension. 0:1 Enable the program to move files without extension.
sushi-shuffle --add-check [path] Adds [path] to the list of locations. -
sushi-shuffle --add-target [ext] [path] Adds info for file extension [ext] to [path]. -
sushi-shuffle --remove-check [row number] Deletes item at line [row_number]. -
sushi-shuffle --list-checks Displays all locations the program looks at. -
sushi-shuffle --list-targets Displays all elements describing file actions. -
sushi-shuffle --list-options Displays program options. -

Service

Run the program as a service using systemd:

systemctl --user start sushi-shuffle

Compatible operating systems

  • Linux
  • Windows
  • Mac

Config Examples

An example of [check]:

[check]
/home/username/
/home/username/Desktop/
...
[done]

An example of [targets]:

[targets]
.py /home/username/Documents/py/
.cpp /home/username/Documents/cpp/
...
[done]

An example of [exclude]:

[exclude]
.py /home/username/Documents/py/
.c *
...
[done]

An example of the complete config file:

[basic_config]
check_interval 3000
debug_log 0
default_dir_path /home/username/default_sorter_path/
enable_default_path 1
move_files_without_ext 0

[check]

[done]

[targets]

[done]

[exclude]

[done]

Contributors

sushi-shuffle's People

Contributors

constarg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

ah06

sushi-shuffle's Issues

Exclude array.

Make an array in the config file that contains file extensions to be ignored when the program scan a folder.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.