Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
6148441
feat!: init plugin
Tadomika-Ari Jul 26, 2026
bf90cfc
fix: fix widget not found on bar setting
Tadomika-Ari Jul 26, 2026
7a61778
feat!: add creation folder for plugin
Tadomika-Ari Jul 26, 2026
a2950d0
feat!: add first version of Config Swap (simple modification test)
Tadomika-Ari Jul 26, 2026
5496b1f
feat!: update toml with new feature
Tadomika-Ari Jul 26, 2026
9ba9894
docs: prepare docs
Tadomika-Ari Jul 26, 2026
99db16f
feat!: add more place for view preview
Tadomika-Ari Jul 27, 2026
1e212cf
feat!: add new page for store and allerady download
Tadomika-Ari Jul 27, 2026
8b410f2
docs: improve lisibility
Tadomika-Ari Jul 27, 2026
bbdc35f
feat!: add description emplacement
Tadomika-Ari Jul 27, 2026
7466ac7
feat!: add wallpaper support for install and set
Tadomika-Ari Jul 27, 2026
8e94e46
docs: add more info to readme
Tadomika-Ari Jul 27, 2026
7ca23d0
feat: add cp depedencie
Tadomika-Ari Jul 27, 2026
20f5adf
docs: add more info
Tadomika-Ari Jul 27, 2026
2664511
feat!: add trad support
Tadomika-Ari Jul 27, 2026
7eb0cbc
fix: change order for set wallpaper after change config
Tadomika-Ari Jul 27, 2026
3ec9634
feat!: add settingsPath for data.json
Tadomika-Ari Jul 27, 2026
d1aca27
feat!: add data.json creation if not exist
Tadomika-Ari Jul 27, 2026
8bf5894
docs: add more docs info
Tadomika-Ari Jul 27, 2026
391e1e1
feat!: rm useless preview image
Tadomika-Ari Jul 27, 2026
3c8a97b
docs: improve docs
Tadomika-Ari Jul 27, 2026
5735e8b
feat!: change false description
Tadomika-Ari Jul 28, 2026
13ae843
feat!: add shellQuote for protect bad command
Tadomika-Ari Jul 28, 2026
91d6d03
feat!: add path var in infoConfig.Change config type for infoConfig Type
Tadomika-Ari Jul 28, 2026
38614bd
feat!: add secure delete config and confirmation for delete config
Tadomika-Ari Jul 31, 2026
c65c210
feat!: add save function for save current config
Tadomika-Ari Aug 1, 2026
95b0588
feat!: add welcome warning and confirmation switch
Tadomika-Ari Aug 1, 2026
c97b4b8
feat!: add info for store section
Tadomika-Ari Aug 1, 2026
d6f1fe3
docs: add new info in setting section
Tadomika-Ari Aug 1, 2026
cf4dc5c
feat!: add resolve state dir for check all state dir possibility
Tadomika-Ari Aug 1, 2026
85f2313
feat!: add english translation compatibility
Tadomika-Ari Aug 2, 2026
2441ef7
feat!: change thumbnail
Tadomika-Ari Aug 2, 2026
d9a35ba
docs: add more information on the readme
Tadomika-Ari Aug 2, 2026
82e871c
fix: rm useless button
Tadomika-Ari Aug 2, 2026
9e03032
docs: add comment
Tadomika-Ari Aug 2, 2026
a6239bf
fix: add depedencie missing
Tadomika-Ari Aug 2, 2026
d47c408
fix: rm death code
Tadomika-Ari Aug 4, 2026
88aea7c
fix: rm update interval not use
Tadomika-Ari Aug 4, 2026
a98dc83
feat!: add delete, save and apply protection, reject invalid name
Tadomika-Ari Aug 4, 2026
305e81b
docs: add more info in info section
Tadomika-Ari Aug 4, 2026
c3cdfce
feat!: add more charactere in match string in isDetect function
Tadomika-Ari Aug 4, 2026
0a90781
fix: change wrong name function
Tadomika-Ari Aug 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
130 changes: 130 additions & 0 deletions config-swap/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
# Config Swap

A [Noctalia](https://github.com/noctalia-dev/noctalia) v5 plugin for switching between saved Noctalia configurations.

## Dependencies

For this plugin, you need:
* internet access to fetch configuration data from GitHub on the store page
* `cp` to apply a configuration
* `rm` to delete the selected installed configuration (not the current configuration)

## Plugin

| Field | Value |
| --- | --- |
| ID | `tadomika_ari/config-swap` |
| Entries | Bar widget: `widget`; panel: `panel`; service: `start` |

## Usage

This plugin is still under development.

You can open Config Swap with:

```sh
noctalia msg panel-toggle tadomika_ari/config-swap:panel
```

The plugin downloads saved configurations from the `Config-Swap-Box` GitHub repository and stores them in `~/Config-Swap`.
Applying a configuration copies its `settings.toml` to `~/.local/state/noctalia/settings.toml` and sets the matching wallpaper.
Keep a backup of your current configuration before using it.

Open the panel from the bar widget, then switch between the two views with `Show Store` and `Show List`.


### Before Start

A welcome page is shown after each restart. Agree to continue, or close the plugin if you prefer not to use it.

### Show Store

The store view fetches available configurations from GitHub.
Use `refresh` to reload the list if nothing appears.

Do not spam `refresh`; GitHub rate limits unauthenticated requests.

Each card lets you `install` a configuration.

An information panel is also available to explain the store view.

| Action | Effect |
| --- | --- |
| Refresh | Refresh the GitHub API data |
| Info | Show information about the store |
| Install | Install the configuration in `~/Config-Swap` |
| Show list | Switch to the list view |

### Show List

The list view shows configurations already installed in `~/Config-Swap`.
From there, you can `apply` them again or `delete` them again to refresh the files.
You will be asked to confirm before applying the selected configuration and confirm before deleting the selected configuration.

Click a preview image to see extra information such as the author, origin, and description.

Use `Show Store` to return to the GitHub store view.

| Action | Effect |
| --- | --- |
| Refresh | Refresh the GitHub API data |
| Delete | Delete the configuration in `~/Config-Swap` |
| Apply | Apply the configuration |
| Setting | Open the Config Swap settings |
| Click the preview | Open extra information |
| Show store | Switch to the store view |

### Setting Info

A settings panel is available. At this time, only saving a configuration is supported.

You can save your current configuration under a custom name for backup or export.
Saving a configuration copies the current `settings.toml` and creates an `info.json` file, which is important for the plugin and for export to the GitHub store. The `info.json` file can be edited to add information, and you can also add a `preview.png` and a default wallpaper as `wallpaper.png`.
Files are saved in `~/Config-Swap/{name}`.

This also refreshes the list of installed configurations.

| Action | Effect |
| --- | --- |
| Input field | Enter a custom name for the save (default: `save`) |
| Save | Create a backup of the current configuration |


### Extra Info

You can add your own configuration folder to `~/Config-Swap`.
Each configuration should follow the same structure as the downloaded ones, including an `info.json` file and the expected asset files.

If you want to publish a configuration, add it to the `Config-Swap-Box` repository: https://github.com/Tadomika-Ari/Config-Swap-Box
Make sure Config Swap is enabled in your plugin list before you try to use it.

You can delete a configuration with the trash button. A warning panel will appear before deletion.

### Contributing

You can contribute to Config Swap! Add your own configuration files and wallpaper to the store so others can use them.
To do so:
* Go to the Settings section and save your configuration. The plugin will copy your `settings.toml` and create an `info.json` file.
* Take a preview image and wallpaper, then go to `~/Config-Swap/{name}` and copy your `preview.png` and `wallpaper.png` files (the exact names are required).
* Update your `info.json` with important information such as the author and description.
* Go to the GitHub page linked from the information panel in the Store section and create a pull request.
* Wait for review, and then your configuration can be shared.

## Settings

No setting needed

## Requirements

- Noctalia ≥ 5.0.0
- `cp`
- `rm`
- internet access for the store view

## Install

Install the plugin and add it to your bar.

## License

MIT.
Loading