Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
de3820d
First implementation of Meson Build system
vikdevelop Sep 7, 2025
0bec448
Fix opening Init Setup Dialog with keyboard shortcut
vikdevelop Sep 7, 2025
2b240cc
Update POT files
vikdevelop Sep 7, 2025
d88970e
Replace /app/share/savedesktop by os.environ.get("SAVEDESKTOP_DIR") v…
vikdevelop Sep 7, 2025
824d420
Change the status icon
vikdevelop Sep 8, 2025
0e4bccd
Cleanup untranslated strings
vikdevelop Sep 8, 2025
c664697
Cleanup multi-line untranslated strings
vikdevelop Sep 8, 2025
b2641d2
Cleanup POT file
vikdevelop Sep 8, 2025
aeaffcd
GUI code cleanup
vikdevelop Sep 8, 2025
716de79
Fix Adw.Breakpoint
vikdevelop Sep 8, 2025
cf389e9
Cleanup
vikdevelop Sep 9, 2025
0ae3e07
Update references
vikdevelop Sep 9, 2025
0da1a1b
Remove "Use Syncthing folder instead" from the Initial synchronizatio…
vikdevelop Sep 9, 2025
2656825
Fix title in Initial Synchronization setup dialog
vikdevelop Sep 9, 2025
fdf9673
Fix translations in window.py
vikdevelop Sep 9, 2025
d69a2ee
Improve Adw.AboutDialog
vikdevelop Sep 11, 2025
83ecc6d
Update metainfo and references in the PO files
vikdevelop Sep 12, 2025
bcffaf2
Fix a bug with showing self.switcher_bar on bigger screens
vikdevelop Sep 12, 2025
fdb6178
Update ci.yml
vikdevelop Sep 12, 2025
d59eb95
Update savedesktop.in
vikdevelop Sep 13, 2025
ea62755
set correct version
vikdevelop Sep 13, 2025
6a051a5
Update synchronization.py
vikdevelop Sep 13, 2025
adb0327
Update password_checker.py
vikdevelop Sep 13, 2025
65252d3
Fix synchronization setup bugs
vikdevelop Sep 14, 2025
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
4 changes: 1 addition & 3 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,14 @@ If your changes include visual modifications, please include screenshots to demo

Select the installation methods on which you tested your changes:

- [ ] Flatpak
- [ ] Flatpak or GNOME Builder
- [ ] Snap
- [ ] Native version from this repository

## Checklist

- [ ] I have read the [contributing guidelines](https://github.com/vikdevelop/SaveDesktop/blob/main/CONTRIBUTING.md).
- [ ] I have performed a self-review of my code.
- [ ] I have commented my code where necessary.
- [ ] I have updated the documentation accordingly.
- [ ] My changes do not introduce any new warnings.

## Additional Notes
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

- name: Validate AppStream metainfo
run: |
appstreamcli validate data/io.github.vikdevelop.SaveDesktop.metainfo.xml.in

- name: Install dependencies
run: |
sudo apt update
Expand All @@ -24,13 +28,9 @@ jobs:
flatpak install --user -y flathub org.gnome.Platform//48
flatpak install --user -y flathub org.gnome.Sdk//48

- name: Validate AppStream metainfo
run: |
appstreamcli validate flatpak/io.github.vikdevelop.SaveDesktop.metainfo.xml

- name: Build Flatpak
run: |
flatpak-builder --force-clean --repo=sdrepo build io.github.vikdevelop.SaveDesktop.yaml
flatpak-builder --force-clean --sandbox --repo=sdrepo build io.github.vikdevelop.SaveDesktop.json
flatpak build-bundle sdrepo io.github.vikdevelop.SaveDesktop.flatpak io.github.vikdevelop.SaveDesktop

- name: Upload Flatpak artifact
Expand Down
32 changes: 32 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Build artifacts
build/
build-dir/
.flatpak-builder/
.buildconfig

# IDE/Editor files
.vscode/
.idea/
*.swp
*.swo
*~

# Python
__pycache__/
*.pyc
*.pyo
*.egg-info/

# Temporary files
*.tmp
*.bak
*.orig
*.log

# OS specific
.DS_Store
Thumbs.db

# Meson specific
builddir/
subprojects/*/
34 changes: 10 additions & 24 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,34 +11,20 @@ It is also possible to translate the application wiki using the same tool [here]
To add or modify an existing language, you must be registered for Weblate, which can be done via email, a Github or Google account, and many other services.

## Involvement in development
The SaveDesktop application is written in Python 3 using [GTK 4.0](https://docs.gtk.org/gtk4/) and [LibAdwaita](https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/index.html) libraries, so if you have knowledge of Python and, ideally, in combination with these libraries, your contributions are welcome!
The application is written in Python 3 using [GTK 4.0](https://docs.gtk.org/gtk4/) and [LibAdwaita](https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/index.html) libraries, so if you have knowledge of Python and, ideally, in combination with these libraries, your contributions are welcome!
If you don't know how to contribute specifically, you can check out the [issues marked as β€œgood first issue”](https://github.com/vikdevelop/SaveDesktop/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).

No Python knowledge? Never mind. For example, you can contribute to the [application wiki](https://github.com/vikdevelop/SaveDesktop/tree/webpage/wiki) (improve webpage style, add screenshots in the `wiki/synchronization/screenshots` directory, etc.)
No Python knowledge? Never mind. For example, you can contribute to the [application wiki](https://github.com/vikdevelop/SaveDesktop/tree/webpage/wiki) (e.g. improve webpage style)

### So how to proceed?
1. Fork this repository *(see the [Github docs](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo) for more information)*
2. Go to your fork of this repository *(e.g., https://github.com/<your_username>/SaveDesktop)*
3. Make changes you want
4. If you want to test your changes, you can proceed as follows:
- clone your fork
```bash
git clone https://github.com/<your_username>/SaveDesktop
```
- go to the cloned fork folder
```bash
cd SaveDesktop
```
- build the application using Flatpak Builder
- if you have not installed org.gnome.Sdk (the latest version) runtime, install it using this command: `flatpak install runtime/org.gnome.Sdk/x86_64/[GNOME's latest version] -y`
```bash
flatpak-builder build *.yaml --install --user
```
- alternatively, you can build a native version as follows (assuming you have GTK 4.0 and LibAdwaita libraries in the latest version):
```bash
sh native/directories.sh --install
```
5. Once you are happy with your changes, submit a pull request to this repository, which I will review and merge with my repository if necessary.
1. Fork this repository
2. Clone your fork in GNOME Builder
3. Make and test your changes
4. Open terminal (Ctrl+Shift+T) and run:
```bash
git add . && git commit -m "Describe your changes" && git push
```
5. Create pull request on GitHub

*It should be noted that this app is available under the [GNU GPL 3.0](https://github.com/vikdevelop/SaveDesktop/blob/main/LICENSE) license, so it is necessary to follow the license conditions.*

Expand Down
29 changes: 6 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@

<p align="center">
<img src="/flatpak/icons/io.github.vikdevelop.SaveDesktop.svg">
<img src="/data/icons/hicolor/scalable/apps/io.github.vikdevelop.SaveDesktop.svg">
<h1 align="center">Save Desktop</h1>
<p align="center">Save your desktop configuration</p>
</p>
Expand Down Expand Up @@ -148,25 +148,12 @@ NOTE: It can happen that a backup file will not be created, in that case, just a


### Stable releases
- Flathub

<a href='https://flathub.org/apps/io.github.vikdevelop.SaveDesktop'><img width='240' alt='Download on Flathub' src='https://flathub.org/api/badge?locale=en'/></a>

- Snap

<a href="https://snapcraft.io/savedesktop"><img alt="Get it from the Snap Store" src="https://snapcraft.io/static/images/badges/en/snap-store-black.svg" width='240' />
</a>

- Install on the system (native version)

```bash
# Install
wget -qO /tmp/savedesktop-native-installer.py https://raw.githubusercontent.com/vikdevelop/SaveDesktop/main/native/native_installer.py && python3 /tmp/savedesktop-native-installer.py --install

# Remove
wget -qO /tmp/savedesktop-native-installer.py https://raw.githubusercontent.com/vikdevelop/SaveDesktop/main/native/native_installer.py && python3 /tmp/savedesktop-native-installer.py --remove
```

### Beta releases
If you want to help with the testing of the future releases of this app, you can use one of these options:

Expand All @@ -185,20 +172,16 @@ To install the Save Desktop Beta, run the following command:
```
snap install savedesktop --beta
```
#### 3. Flatpak Builder
Before building this app using Flatpak Builder, ensure if you have installed org.gnome.Sdk runtime. If not, use this command: `flatpak install org.gnome.Sdk//48`

Then, you can continue in building this app using Flatpak Builder by entering this command:

```
git clone https://github.com/vikdevelop/SaveDesktop && cd SaveDesktop && flatpak-builder build *.yaml --install --user
```
#### 3. GNOME Builder
1. Install GNOME Builder from [Flathub](https://flathub.org/apps/org.gnome.Builder)
2. Click on the "Clone repository" button and enter URL of this repository
3. Click on the Run button (Ctrl+Shift+Space)

</details>


<details>
<summary><h2>Contribution</h2><p>Translations, reporting issues, contributing and code of conduct</p></summary>
<summary><h2>Contribution</h2><p>Code of Conduct, translations and reporting issues</p></summary>


### Code of Conduct
Expand Down
20 changes: 20 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Security Policy
### Reporting Security Issues

If you discover a vulnerability, please **don't open a public issue.**

Instead, report it privately to the maintainer via one of the following methods:
- GitHub Security Advisory: use the _Security_ tab
- Email: vikdevelop@proton.me

### Distribution
The application is officially distributed through **Flathub** and the **Snap Store**, both with automatic updates.

Unofficial, community-maintained packages may also exist for other platforms or distributions (e.g. AUR, PPAs, third-party repositories).

Please note that these builds are **not officially supported** by the maintainer.

- **Security vulnerabilities in the application itself** should always be reported directly to the maintainer (see above).
- **Issues related to unofficial packages** (e.g. build errors, missing dependencies, outdated versions) should be reported to the respective package maintainer.

Thank you for helping keep this project secure by reporting issues responsibly!
4 changes: 4 additions & 0 deletions data/icons/hicolor/scalable/status/done.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
25 changes: 25 additions & 0 deletions data/icons/meson.build
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
application_id = 'io.github.vikdevelop.SaveDesktop'

# Scalable app icons
scalable_apps_dir = join_paths('hicolor', 'scalable', 'apps')
install_data(
files(
join_paths(scalable_apps_dir, ('@0@.svg').format(application_id)),
join_paths(scalable_apps_dir, ('@0@.Devel.svg').format(application_id))
),
install_dir: join_paths(get_option('datadir'), 'icons', scalable_apps_dir)
)

# Scalable status icon
scalable_status_dir = join_paths('hicolor', 'scalable', 'status')
install_data(
files(join_paths(scalable_status_dir, 'done.svg')),
install_dir: join_paths(get_option('datadir'), 'icons', scalable_status_dir)
)

# Symbolic app icon
symbolic_apps_dir = join_paths('hicolor', 'symbolic', 'apps')
install_data(
files(join_paths(symbolic_apps_dir, ('@0@-symbolic.svg').format(application_id))),
install_dir: join_paths(get_option('datadir'), 'icons', symbolic_apps_dir)
)
7 changes: 7 additions & 0 deletions data/io.github.vikdevelop.SaveDesktop.desktop.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[Desktop Entry]
Name=Save Desktop
Categories=Utility
Comment=Save your desktop configuration
Exec=savedesktop
Type=Application
Icon=io.github.vikdevelop.SaveDesktop
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<schemalist>
<schema id="io.github.vikdevelop.SaveDesktop" path="/io/github/vikdevelop/SaveDesktop/">
<key name="window-size" type="(ii)">
<default>(570, 570)</default>
<default>(630, 517)</default>
<summary>Window size</summary>
</key>
<key name="maximized" type="b">
Expand Down
Loading