kopycat

command module
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 14, 2024 License: MIT Imports: 11 Imported by: 0

README ΒΆ

Kopycat - Easy to use directory synchronization

Kopycat is a cross-platform directory synchronization tool. It can run as a background service, so you don't have to worry about leaving it open or accidentally closing it. It has all the features you'd expect from a sync tool 😎

🚨 Compatibility and usability 🚨

Kopycat does work in it's current state but it's nowhere near being production ready yet. When the planned ease of use and readyness of Kopycat are met, it will be released as v1.0.0.

If the current realese version is lower than v1.0.0 be ready for some breaking changes and difficulties when using Kopycat.

Right now Kopycat has only been tested on Windows, if you want to contribute by testing or improving it on macOS or Linux please open an issue.

Usage

To use Kopycat, download the latest release from the releases page and run it.

By default, Kopycat runs in terminal mode where it is fully functional and operates like any other application.

[!NOTE] Please keep in mind all configuration files and logs are stored relative to the binary, so make sure you aren't running it from Downloads πŸ’€

To install Kopycat as a service, use the install flag (if the service is already installed, install will attempt to reinstall it).

[!WARNING] This will require admin privileges. On Windows, run in an elevated shell, and on Linux, use sudo.

From here, you can pass these flags to Kopycat with admin privileges to manage the installed service:

  • start to start the service (install automatically starts the service on install)
  • restart to restart the service if there are any issues
  • stop to stop the service without restarting it
  • remove to stop and uninstall the service

After running Kopycat in any mode, you can open the locally hosted web GUI at http://localhost:42069 to configure it.

The port is set to 42069 by default but can be changed with the -port flag.

[!IMPORTANT] 🚨 DO NOT USE KOPYCAT TO SYNC WHOLE DRIVES OR LARGE DIRECTORIES 🚨

It was not designed to handle these cases and may malfunction or consume a lot of system resources.

What to sync βš™οΈ
Example sync targets For use with Kopycat?
~/ (Obviously) ❌
~/Pictures (Typically large) ❌
~/Videos (Typically large) ❌
~/.config (Small things like configs) βœ…

Note about releases

I do not own a Mac nor do I have Xcode. Because of this, releases contain a Mach-O binary for macOS but it is not packaged as a .app or .dmg.

Project Scope

This isn't a complete list by any means, but it should serve as a baseline of what you can expect from Kopycat.

  • Run as a service (tested on Windows, theoretically should be compatible with Linux and macOS)
  • Locally hosted web GUI for configuration
  • Terminal mode when running as a normal app
  • Control over resource usage (this is a hard one and I'm not entirely sure I will be able to achive it in GO)
  • Decoupling log cleaning from the start or restart of the app

Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL