Skip to main content

A program that lets you sync your Plasma configuration to a synced folder. (Seafile, Nextcloud, etc.)

Project description

Konsync (Sync Linux Customizations)

A CLI program that will let you sync and export your Linux customizations with just one command! It officially supports KDE Plasma but it can be used on all other desktop environments too!

Installation

Install from PyPI using pipx, pipx install konsync (not yet implemented) for now just git clone https://github.com/EpicStuff/konsync and run python konsync/konsync/__main__.py

Usage

Get Help

konsync -h or konsync --help

Sync based on current config

konsync -s or konsync --sync You may need to log out and log in to see all the changes.

Overwrite already existing files

konsync -sf <local,sync> or konsync --sync --force <local,sync>

Remove synced files from either local or sync folder

konsync -r <local,sync> or konsync --remove <local,sync>

Export larger files/folders that you may not want stored without compression

konsync -e or konsync --export

Export, overwrite files if they already exist, see compression format for detailed behaviour

konsync -ef or konsync --export --force

Import a ".knsv" file

konsync -i or konsync --import

Show current version

konsync -v or konsync --version


Editing the configuration file

You can make changes to Konsync's configuration file according to your needs. Konsync will check for ./config.taml by default unless a config file or sync location is specified. For KDE Plasma users, the configuration file will be pre-configured.

Format

The configuration file should be formatted in the following way:

sync_dir:
	placeholder:  # this is required due to the way the parsing functions were written
		location:
save:
	name:
		location: "path/to/parent/directory"
		entries:
		# These are files to be backed up.
		# They should be present in the specified location.
			- file1
			- file2
			- folder1/
			- folder2/file3
export:
	# This includes files which will be exported with your profile.
	# They will not be saved but only be exported and imported.
	# These may include files like complete icon packs and themes..
	name:
		location: "path/to/parent/directory"
		entries:
			- file1
			- file2

Adding more files/folders to backup

You can add more files/folders in the configuration file like this:

save:
	another_name:
		location: "another/path/to/parent/directory"
		entries:
			- file1

Using placeholders

You can use a few placeholders in the location of each entry in the configuration file. These are: $HOME: the home directory $CONFIG_DIR: refers to "$HOME/.config/" $SHARE_DIR: refers to "$HOME/.local/share" $BIN_DIR: refers to "$HOME/.local/bin" ${ENDS_WITH="text"}: for folders with different names on different computers whose names end with the same thing.
The best example for this is the ".default-release" folder of firefox.
${BEGINS_WITH="text"}: for folders with different names on different computers whose names start with the same thing.

save:
	firefox:
		location: "$HOME/.mozilla/firefox/${ENDS_WITH='.default-release'}"
		entries:
			- chrome

Contributing

Please read CONTRIBUTION.md for info about contributing.

License

This project uses GNU General Public License 3.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

konsync-0.2.0.tar.gz (32.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

konsync-0.2.0-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

Details for the file konsync-0.2.0.tar.gz.

File metadata

  • Download URL: konsync-0.2.0.tar.gz
  • Upload date:
  • Size: 32.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for konsync-0.2.0.tar.gz
Algorithm Hash digest
SHA256 0ab3b0c66e966050dac2d9b566aeb95a4b765c9b6e7305942697a4dc00dccb2e
MD5 58244f2b21eebc83199b1bca2fd9e219
BLAKE2b-256 cec1a3e13cbfe66084e17cb6eeae8a2d22045d90fc6165ce4394b8386ea293a3

See more details on using hashes here.

File details

Details for the file konsync-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: konsync-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 23.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for konsync-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c826b606ebe03746abc588c5de8f68dcb329c8331cecb722e58f9d310d6e1663
MD5 b2934eacdce94ff93f3c6115ddacbf52
BLAKE2b-256 ddb272bf2095a62521c1d4f6d6e155006bc919b555aaf5d529b73bec24474807

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page