Skip to main content

A program that lets you save your Plasma configuration in an instant!

Project description

Konsave (Save Linux Customization)

A CLI program that will let you save and apply your Linux customizations with just one command! Konsave also lets you share your dot files to your friends in an instant! It officially supports KDE Plasma but it can be used on all other desktop environments too!



Installation

Install from PyPI using pip
python -m pip install konsave

Install from PyPI using pipx
pipx install konsave

Usage

Get Help

konsave -h or konsave --help

Save current configuration as a profile

konsave -s <profile name> or konsave --save <profile name>

Overwrite an already saved profile

konsave -s <profile name> -f or konsave -s <profile name> --force

List all profiles

konsave -l or konsave --list

Remove a profile

konsave -r <profile name> or konsave --remove <profile name>

Apply a profile

konsave -a <profile name> or konsave --apply <profile name> You may need to log out and log in to see all the changes.

Export a profile as a ".knsv" file to share it with your friends!

konsave -e <profile name> or konsave --export-profile <profile name>

Export a profile, setting the output dir and archive name

konsave -e <profile name> -d <archive directory> -n <archive name> or konsave --export-profile <profile name> --archive-directory <archive directory> --export-name <export name>

Export a profile, overwrite files if they already exist

konsave -e <profile name> -f or konsave --export-profile <profile name> --force *note: without --force, the export will be appended with the date and time to ensure unique naming and no data is overwritten

Import a ".knsv" file

konsave -i <path to the file> or konsave --import-profile <path to the file>

Show current version

konsave -v or konsave --version

Wipe all profiles

konsave -w or konsave --wipe


Editing the configuration file

You can make changes to Konsave's configuration file according to your needs. The configuration file is located in ~/.config/konsave/conf.yaml. When using Konsave for the first time, you'll be prompted to enter your desktop environment.
For KDE Plasma users, the configuration file will be pre-configured.

Format

The configuration file should be formatted in the following way:

---
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
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:
    name:
        location: "path/to/parent/directory"
        entries:
            - file1
            - file2
            - folder1
            - folder2
export:
    anotherName:
            location: "another/path/to/parent/directory"
            entries:
                - file1
                - file2
                - folder1
                - folder2

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

konsave-2.3.0.tar.gz (32.6 kB view details)

Uploaded Source

Built Distribution

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

konsave-2.3.0-py3-none-any.whl (24.7 kB view details)

Uploaded Python 3

File details

Details for the file konsave-2.3.0.tar.gz.

File metadata

  • Download URL: konsave-2.3.0.tar.gz
  • Upload date:
  • Size: 32.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for konsave-2.3.0.tar.gz
Algorithm Hash digest
SHA256 41ef91648b206eabc5a9685491f0026d8bc7b5741ca7ac8af97aefaa05e79537
MD5 71e74cb82992aaf7df32f224b92daf0a
BLAKE2b-256 b3adccd3386c50ace4f91c89f41037b05347a9d0cbba0eed38f74725b5f4b2bb

See more details on using hashes here.

File details

Details for the file konsave-2.3.0-py3-none-any.whl.

File metadata

  • Download URL: konsave-2.3.0-py3-none-any.whl
  • Upload date:
  • Size: 24.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for konsave-2.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3cd71880766a609e0d0cfecdd31fb8762b43a878f52626d39ef21fcb8d4482fd
MD5 83c2ebbbce6d53b51373389ac1e70f6f
BLAKE2b-256 869c3e877be8ffaa119ee983adf546e799f67ad3d19abc8f0ce7039f9d66cfcb

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