Compare commits

...

16 commits
1.2.5 ... main

Author SHA1 Message Date
DashieTM f229ed7dea Update nix packages
Some checks failed
Rust-build / Build (push) Has been cancelled
2025-02-15 16:17:06 +01:00
DashieTM f09ed75581 Use nix CI
Some checks failed
Rust-build / Build (push) Has been cancelled
2024-12-03 23:31:22 +01:00
DashieTM 6c1291bd19 debian: fix recommendations and dependencies 2024-06-13 15:14:29 +02:00
DashieTM a369356b49 chore: Bump version 2024-06-13 14:38:16 +02:00
DashieTM ee7129009a chore: Update todos 2024-06-12 23:52:09 +02:00
DashieTM e7c0995aa3 init: store true if daemon is already started 2024-06-12 19:46:11 +02:00
DashieTM 0b12d95c83 readme: Add plugin confirmation 2024-06-12 17:21:02 +02:00
DashieTM e4971391be readme: Add installation guide mention 2024-06-12 10:50:24 +02:00
DashieTM d36e79614c readme: Add exact binary names 2024-06-12 10:38:48 +02:00
DashieTM 7532c1e065 chore: Bump version in all files 2024-06-11 20:32:22 +02:00
DashieTM a9ee1b7bc3 flatpak: Change name to ReSet case 2024-06-11 15:09:34 +02:00
takotori 77c53a3efc change active language color 2024-06-11 13:09:40 +02:00
DashieTM 2b0898b809 CI/CD: update dependencies on distros 2024-06-11 12:49:07 +02:00
DashieTM 69d131282c chore: Bump version and deps 2024-06-10 16:22:51 +02:00
DashieTM 5e8241bf11 flatpak: Change name to ReSet case 2024-06-10 16:19:39 +02:00
DashieTM 390099fbc0 nix: use new name 2024-06-07 02:29:23 +02:00
35 changed files with 218 additions and 370 deletions

View file

@ -1 +1 @@
flake-profile-11-link
flake-profile-4-link

View file

@ -1 +0,0 @@
/nix/store/51yb1yhqssknlmxvvscvj0cqbvs0z915-nix-shell-env

View file

@ -0,0 +1 @@
/nix/store/30prmd5nyydss0bcs7d578grjav6i7x3-nix-shell-env

View file

@ -1,25 +1,33 @@
name: Rust
# inspired by https://github.com/danth/stylix/blob/master/.github/workflows/docs.yml
name: Rust-build
on:
push:
branches: [ "main" ]
branches: ["main"]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
branches: ["main"]
jobs:
build:
runs-on: [self-hosted, ubuntu]
name: Build
permissions:
contents: read
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: nightly-rust
uses: actions-rs/toolchain@v1
- name: Install Nix
uses: DeterminateSystems/nix-installer-action@main
with:
profile: minimal
toolchain: nightly
github-token: ${{ secrets.GITHUB_TOKEN }}
extra-conf: |
extra-experimental-features = nix-command flakes
- name: Set up cache
uses: DeterminateSystems/magic-nix-cache-action@main
- name: action
uses: cachix/install-nix-action@v25
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: cache
uses: cachix/cachix-action@v14
with:
name: reset
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Build
run: cargo build --verbose
- name: Run clippy
run: cargo clippy --fix
run: nix -L build github:${{ github.repository }}/${{ github.sha }} --no-write-lock-file

10
Cargo.lock generated
View file

@ -926,9 +926,9 @@ dependencies = [
[[package]]
name = "re_set-lib"
version = "5.2.3"
version = "5.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aaaac9cdc51828259f8ecd439198f2629c6cae2bdd56dfa3c12d4113c630e4d9"
checksum = "69ec9fc4d9e919feb030e5382de1aa49447404a57ecc19361bf7710f1cf9063e"
dependencies = [
"dbus",
"dbus-crossroads",
@ -952,7 +952,7 @@ dependencies = [
[[package]]
name = "reset"
version = "1.2.5"
version = "2.0.0"
dependencies = [
"dbus",
"fork",
@ -968,9 +968,9 @@ dependencies = [
[[package]]
name = "reset_daemon"
version = "2.1.2"
version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41f8fd637fa39ab6c907fc05af814fb4234eb201417b6eaf86e3e70e8361e1fd"
checksum = "f72dd51da41c2fc3ac37ae55fbdeb2670d32cad39cc85cc95a9ea25fc02b6086"
dependencies = [
"crossbeam",
"dbus",

View file

@ -1,6 +1,6 @@
[package]
name = "reset"
version = "1.2.5"
version = "2.0.0"
edition = "2021"
description = "A wip universal Linux settings application."
repository = "https://github.com/Xetibo/ReSet"
@ -11,10 +11,8 @@ name = "ReSet"
path = "src/main.rs"
[dependencies]
reset_daemon = "2.1.2"
# reset_daemon = { git = "https://github.com/Xetibo/ReSet-Daemon", branch = "dev" }
re_set-lib = "5.2.3"
# re_set-lib = { git = "https://github.com/Xetibo/ReSet-Lib", branch = "dev" }
reset_daemon = "2.2.0"
re_set-lib = "5.2.5"
adw = { version = "0.6.0", package = "libadwaita", features = ["v1_4"] }
dbus = "0.9.7"
gtk = { version = "0.8.1", package = "gtk4", features = ["v4_12"] }

View file

@ -1,12 +1,15 @@
# Maintainer: Fabio Lenherr <dashie@dashie.org>
pkgname=ReSet
pkgver=1.2.5
pkgver=2.0.0
pkgrel=0
arch=('x86_64')
pkgdir="/usr/bin/${pkgname}"
pkgdesc="A wip universal Linux settings application."
depends=('rust' 'gtk4' 'dbus')
depends=('gtk4' 'dbus' 'libadwaita')
optdepends=('pipewire-pulse' 'networkmanager' 'bluez')
makedepends=('rust')
build() {
cargo build --release

View file

@ -34,7 +34,22 @@ A window manager/compositor agnostic settings application for Linux written in r
## Plugins
ReSet features a plugin system by loading dynamic libraries for both the daemon and the ReSet graphical user interface.
A list of official plugins and their documentation can be found at [ReSet-Plugins](https://github.com/Xetibo/ReSet-Plugins).
A list of official plugins, installation guides and their documentation can be found at [ReSet-Plugins](https://github.com/Xetibo/ReSet-Plugins).
### Installation
Plugins are loaded either from `/usr/lib/reset` or `~/.config/reset/plugins`. In order to install the plugin, either install a distribution specific package that places the library into the specified system folder, or place the library in the plugins folder in your config directory.
Note, after installation, please move to confirmation.
### Confirmation
In order for your plugins to load, you have to define them in `.config/reset/ReSet.toml`.
This is done to avoid loading of arbitrary plugins that might be placed within this folder by accident.
```toml
plugins = ["libreset_monitors.so", "libreset_keyboard_plugin.so"]
```
## Packaging
@ -46,7 +61,7 @@ We are currently not published on flatpak due to issues with permissions.
This is being worked on...
Installation:
Download the flatpak package from the release and install with the terminal.
Download the flatpak package (reset.flatpak) from the release and install with the terminal.
```
flatpak install --user reset.flatpak
@ -59,7 +74,7 @@ flatpak install --user reset.flatpak
<!-- ```paru -S ReSet``` -->
Manually:
Download the package from the releases tab and install it with pacman.
Download the package (ReSet-version-x86_64.pkg.tar.zst) from the releases tab and install it with pacman.
```
sudo pacman -U /path/to/reset
@ -67,7 +82,7 @@ sudo pacman -U /path/to/reset
### Debian Package(Ubuntu 23.04 dependencies)
Download the package from the releases tab and install it with apt.
Download the package (ReSet.deb) from the releases tab and install it with apt.
```
sudo apt install ./path/to/reset

View file

@ -1,5 +1,9 @@
Package: ReSet
Version: 1.2.5
Version: 2.0.0
Maintainer: DashieTM
Architecture: all
Description: A wip universal Linux settings application.
Homepage: https://github.com/Xetibo/ReSet
Build-Depends: rust
Depends: libadwaita-1-0, libgtk-4-1, dbus
Recommends: pipewire-pulse, network-manager, bluez

View file

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1715865404,
"narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=",
"lastModified": 1738453229,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9",
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
"type": "github"
},
"original": {
@ -20,31 +20,13 @@
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1716137900,
"narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=",
"lastModified": 1739446958,
"narHash": "sha256-+/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1",
"rev": "2ff53fe64443980e139eaa286017f53f88336dd0",
"type": "github"
},
"original": {
@ -56,11 +38,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1706487304,
"narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=",
"lastModified": 1736320768,
"narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "90f456026d284c22b3e3497be980b2e47d0b28ac",
"rev": "4bc9c909d9ac828a039f288cf872d16d38185db8",
"type": "github"
},
"original": {
@ -79,15 +61,14 @@
},
"rust-overlay": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1716171463,
"narHash": "sha256-lc7wOh5BjYUoxdhcPkeUY8BmuL2qtRaHlW1403RW48E=",
"lastModified": 1739586408,
"narHash": "sha256-UN9hRKRE1eLU8C0cioTZubaCZQTA8NDc8/4vCpS5pS0=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "04d61d14803854fd8453ec43c5c53a471e5407a8",
"rev": "3dbc0ce1c0690b83cfb9a9a51fbe90c3bc8f9916",
"type": "github"
},
"original": {
@ -95,21 +76,6 @@
"repo": "rust-overlay",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",

View file

@ -285,32 +285,6 @@
"dest": "cargo/vendor/dbus-tokio-0.7.6",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/directories-next/directories-next-2.0.0.crate",
"sha256": "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc",
"dest": "cargo/vendor/directories-next-2.0.0"
},
{
"type": "inline",
"contents": "{\"package\": \"339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc\", \"files\": {}}",
"dest": "cargo/vendor/directories-next-2.0.0",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/dirs-sys-next/dirs-sys-next-0.1.2.crate",
"sha256": "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d",
"dest": "cargo/vendor/dirs-sys-next-0.1.2"
},
{
"type": "inline",
"contents": "{\"package\": \"4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d\", \"files\": {}}",
"dest": "cargo/vendor/dirs-sys-next-0.1.2",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
@ -519,19 +493,6 @@
"dest": "cargo/vendor/gdk4-sys-0.8.1",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/getrandom/getrandom-0.2.14.crate",
"sha256": "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c",
"dest": "cargo/vendor/getrandom-0.2.14"
},
{
"type": "inline",
"contents": "{\"package\": \"94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c\", \"files\": {}}",
"dest": "cargo/vendor/getrandom-0.2.14",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
@ -896,19 +857,6 @@
"dest": "cargo/vendor/libpulse-sys-1.21.0",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/libredox/libredox-0.1.3.crate",
"sha256": "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d",
"dest": "cargo/vendor/libredox-0.1.3"
},
{
"type": "inline",
"contents": "{\"package\": \"c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d\", \"files\": {}}",
"dest": "cargo/vendor/libredox-0.1.3",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
@ -1211,14 +1159,14 @@
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/re_set-lib/re_set-lib-4.0.1.crate",
"sha256": "06cb3803fff21953f1c17a685ae01e92b6b4d3231b99726d389520c48fbc1310",
"dest": "cargo/vendor/re_set-lib-4.0.1"
"url": "https://static.crates.io/crates/re_set-lib/re_set-lib-5.2.4.crate",
"sha256": "f1f1aa52c35d115b4efc5de2d41d0288f20705dd7f3ca6a49a68f2bab9c31a8e",
"dest": "cargo/vendor/re_set-lib-5.2.4"
},
{
"type": "inline",
"contents": "{\"package\": \"06cb3803fff21953f1c17a685ae01e92b6b4d3231b99726d389520c48fbc1310\", \"files\": {}}",
"dest": "cargo/vendor/re_set-lib-4.0.1",
"contents": "{\"package\": \"f1f1aa52c35d115b4efc5de2d41d0288f20705dd7f3ca6a49a68f2bab9c31a8e\", \"files\": {}}",
"dest": "cargo/vendor/re_set-lib-5.2.4",
"dest-filename": ".cargo-checksum.json"
},
{
@ -1237,27 +1185,14 @@
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/redox_users/redox_users-0.4.5.crate",
"sha256": "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891",
"dest": "cargo/vendor/redox_users-0.4.5"
"url": "https://static.crates.io/crates/reset_daemon/reset_daemon-2.1.3.crate",
"sha256": "aa3666f8d12729c489f0d5d60fa8f03299da80859d72507c9e4ae6d56e61fe79",
"dest": "cargo/vendor/reset_daemon-2.1.3"
},
{
"type": "inline",
"contents": "{\"package\": \"bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891\", \"files\": {}}",
"dest": "cargo/vendor/redox_users-0.4.5",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/reset_daemon/reset_daemon-1.4.0.crate",
"sha256": "4c9858fdb8b54d8d81a2e0c16f5f2f16837c627da54ea9f3e7a27a888c0ef1fa",
"dest": "cargo/vendor/reset_daemon-1.4.0"
},
{
"type": "inline",
"contents": "{\"package\": \"4c9858fdb8b54d8d81a2e0c16f5f2f16837c627da54ea9f3e7a27a888c0ef1fa\", \"files\": {}}",
"dest": "cargo/vendor/reset_daemon-1.4.0",
"contents": "{\"package\": \"aa3666f8d12729c489f0d5d60fa8f03299da80859d72507c9e4ae6d56e61fe79\", \"files\": {}}",
"dest": "cargo/vendor/reset_daemon-2.1.3",
"dest-filename": ".cargo-checksum.json"
},
{
@ -1936,6 +1871,19 @@
"dest": "cargo/vendor/winnow-0.6.6",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/xdg/xdg-2.5.2.crate",
"sha256": "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546",
"dest": "cargo/vendor/xdg-2.5.2"
},
{
"type": "inline",
"contents": "{\"package\": \"213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546\", \"files\": {}}",
"dest": "cargo/vendor/xdg-2.5.2",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "inline",
"contents": "[source.vendored-sources]\ndirectory = \"cargo/vendor\"\n\n[source.crates-io]\nreplace-with = \"vendored-sources\"\n",

View file

@ -285,32 +285,6 @@
"dest": "cargo/vendor/dbus-tokio-0.7.6",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/directories-next/directories-next-2.0.0.crate",
"sha256": "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc",
"dest": "cargo/vendor/directories-next-2.0.0"
},
{
"type": "inline",
"contents": "{\"package\": \"339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc\", \"files\": {}}",
"dest": "cargo/vendor/directories-next-2.0.0",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/dirs-sys-next/dirs-sys-next-0.1.2.crate",
"sha256": "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d",
"dest": "cargo/vendor/dirs-sys-next-0.1.2"
},
{
"type": "inline",
"contents": "{\"package\": \"4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d\", \"files\": {}}",
"dest": "cargo/vendor/dirs-sys-next-0.1.2",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
@ -519,19 +493,6 @@
"dest": "cargo/vendor/gdk4-sys-0.8.1",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/getrandom/getrandom-0.2.14.crate",
"sha256": "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c",
"dest": "cargo/vendor/getrandom-0.2.14"
},
{
"type": "inline",
"contents": "{\"package\": \"94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c\", \"files\": {}}",
"dest": "cargo/vendor/getrandom-0.2.14",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
@ -896,19 +857,6 @@
"dest": "cargo/vendor/libpulse-sys-1.21.0",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/libredox/libredox-0.1.3.crate",
"sha256": "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d",
"dest": "cargo/vendor/libredox-0.1.3"
},
{
"type": "inline",
"contents": "{\"package\": \"c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d\", \"files\": {}}",
"dest": "cargo/vendor/libredox-0.1.3",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
@ -1211,14 +1159,14 @@
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/re_set-lib/re_set-lib-4.0.1.crate",
"sha256": "06cb3803fff21953f1c17a685ae01e92b6b4d3231b99726d389520c48fbc1310",
"dest": "cargo/vendor/re_set-lib-4.0.1"
"url": "https://static.crates.io/crates/re_set-lib/re_set-lib-5.2.4.crate",
"sha256": "f1f1aa52c35d115b4efc5de2d41d0288f20705dd7f3ca6a49a68f2bab9c31a8e",
"dest": "cargo/vendor/re_set-lib-5.2.4"
},
{
"type": "inline",
"contents": "{\"package\": \"06cb3803fff21953f1c17a685ae01e92b6b4d3231b99726d389520c48fbc1310\", \"files\": {}}",
"dest": "cargo/vendor/re_set-lib-4.0.1",
"contents": "{\"package\": \"f1f1aa52c35d115b4efc5de2d41d0288f20705dd7f3ca6a49a68f2bab9c31a8e\", \"files\": {}}",
"dest": "cargo/vendor/re_set-lib-5.2.4",
"dest-filename": ".cargo-checksum.json"
},
{
@ -1237,27 +1185,14 @@
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/redox_users/redox_users-0.4.5.crate",
"sha256": "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891",
"dest": "cargo/vendor/redox_users-0.4.5"
"url": "https://static.crates.io/crates/reset_daemon/reset_daemon-2.1.3.crate",
"sha256": "aa3666f8d12729c489f0d5d60fa8f03299da80859d72507c9e4ae6d56e61fe79",
"dest": "cargo/vendor/reset_daemon-2.1.3"
},
{
"type": "inline",
"contents": "{\"package\": \"bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891\", \"files\": {}}",
"dest": "cargo/vendor/redox_users-0.4.5",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/reset_daemon/reset_daemon-1.4.0.crate",
"sha256": "4c9858fdb8b54d8d81a2e0c16f5f2f16837c627da54ea9f3e7a27a888c0ef1fa",
"dest": "cargo/vendor/reset_daemon-1.4.0"
},
{
"type": "inline",
"contents": "{\"package\": \"4c9858fdb8b54d8d81a2e0c16f5f2f16837c627da54ea9f3e7a27a888c0ef1fa\", \"files\": {}}",
"dest": "cargo/vendor/reset_daemon-1.4.0",
"contents": "{\"package\": \"aa3666f8d12729c489f0d5d60fa8f03299da80859d72507c9e4ae6d56e61fe79\", \"files\": {}}",
"dest": "cargo/vendor/reset_daemon-2.1.3",
"dest-filename": ".cargo-checksum.json"
},
{
@ -1936,6 +1871,19 @@
"dest": "cargo/vendor/winnow-0.6.6",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "archive",
"archive-type": "tar-gzip",
"url": "https://static.crates.io/crates/xdg/xdg-2.5.2.crate",
"sha256": "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546",
"dest": "cargo/vendor/xdg-2.5.2"
},
{
"type": "inline",
"contents": "{\"package\": \"213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546\", \"files\": {}}",
"dest": "cargo/vendor/xdg-2.5.2",
"dest-filename": ".cargo-checksum.json"
},
{
"type": "inline",
"contents": "[source.vendored-sources]\ndirectory = \"cargo/vendor\"\n\n[source.crates-io]\nreplace-with = \"vendored-sources\"\n",

View file

@ -1,12 +1,12 @@
{
"app-id": "org.Xetibo.ReSet",
"runtime": "org.gnome.Platform",
"runtime-version": "45",
"runtime-version": "46",
"sdk": "org.gnome.Sdk",
"sdk-extensions": [
"org.freedesktop.Sdk.Extension.rust-nightly"
],
"command": "reset",
"command": "ReSet",
"finish-args": [
"--socket=pulseaudio",
"--share=network",
@ -17,8 +17,7 @@
"--device=all",
"--allow=bluetooth",
"--socket=system-bus",
"--socket=session-bus",
"--persist=~/.config/reset:create"
"--socket=session-bus"
],
"build-options": {
"append-path": "/usr/lib/sdk/rust-nightly/bin"
@ -34,8 +33,8 @@
},
"build-commands": [
"cargo --offline fetch --manifest-path Cargo.toml --verbose",
"cargo --offline build --release --verbose",
"install -Dm755 ./target/release/reset -t /app/bin/",
"cargo --offline build --verbose",
"install -Dm755 ./target/debug/ReSet -t /app/bin/",
"install -Dm644 ./src/resources/icons/ReSet.svg /app/share/icons/hicolor/scalable/apps/org.Xetibo.ReSet.svg",
"install -Dm644 ./flatpak/org.Xetibo.ReSet.desktop /app/share/applications/org.Xetibo.ReSet.desktop"
],

View file

@ -2,7 +2,7 @@
Name=ReSet
GenericName=SettingsApplication
GenericName[de]=SettingsApplikation
Exec=reset
Exec=ReSet
Terminal=false
Type=Application
Keywords=settings;gtk;

View file

@ -1,7 +1,7 @@
{
"app-id": "org.Xetibo.ReSet",
"runtime": "org.gnome.Platform",
"runtime-version": "45",
"runtime-version": "46",
"sdk": "org.gnome.Sdk",
"sdk-extensions": [
"org.freedesktop.Sdk.Extension.rust-nightly"
@ -34,7 +34,7 @@
},
"build-commands": [
"cargo --offline fetch --manifest-path Cargo.toml --verbose",
"cargo --offline build --verbose",
"cargo --offline build --release --verbose",
"install -Dm755 ./target/release/ReSet -t /app/bin/",
"install -Dm644 ./src/resources/icons/ReSet.svg /app/share/icons/hicolor/scalable/apps/org.Xetibo.ReSet.svg",
"install -Dm644 ./flatpak/org.Xetibo.ReSet.desktop /app/share/applications/org.Xetibo.ReSet.desktop"

View file

@ -1,50 +0,0 @@
{
"app-id": "org.Xetibo.ReSet",
"runtime": "org.gnome.Platform",
"runtime-version": "45",
"sdk": "org.gnome.Sdk",
"sdk-extensions": [
"org.freedesktop.Sdk.Extension.rust-stable"
],
"command": "reset",
"finish-args": [
"--system-talk-name=org.freedesktop.NetworkManager",
"--system-talk-name=org.bluez",
"--socket=pulseaudio",
"--share=network",
"--share=ipc",
"--socket=fallback-x11",
"--socket=wayland",
"--device=dri",
"--device=all",
"--allow=bluetooth"
],
"build-options": {
"append-path": "/usr/lib/sdk/rust-stable/bin"
},
"modules": [
{
"name": "reset",
"buildsystem": "simple",
"build-options": {
"env": {
"CARGO_HOME": "/run/build/reset/cargo"
}
},
"build-commands": [
"cargo --offline fetch --manifest-path Cargo.toml --verbose",
"cargo --offline build --release --verbose",
"install -Dm755 ./target/release/reset -t /app/bin/",
"install -Dm644 ./src/resources/icons/ReSet.svg /app/share/icons/hicolor/scalable/apps/org.Xetibo.ReSet.svg",
"install -Dm644 ./flatpak/org.Xetibo.ReSet.desktop /app/share/applications/org.Xetibo.ReSet.desktop"
],
"sources": [
{
"type": "dir",
"path": ".."
},
"cargo-sources.json"
]
}
]
}

View file

@ -1,69 +1,69 @@
{ rustPlatform
, rust-bin
, pulseaudio
, dbus
, gdk-pixbuf
, gnome
, pkg-config
, wrapGAppsHook4
, gtk4
, libadwaita
, python312Packages
, flatpak
, flatpak-builder
, lib
, lockFile
, ...
}:
let
{
rustPlatform,
rust-bin,
pulseaudio,
dbus,
gdk-pixbuf,
adwaita-icon-theme,
pkg-config,
wrapGAppsHook4,
gtk4,
libadwaita,
python312Packages,
flatpak,
flatpak-builder,
lib,
lockFile,
...
}: let
cargoToml = builtins.fromTOML (builtins.readFile ../Cargo.toml);
in
rustPlatform.buildRustPackage rec {
pname = "ReSet";
version = cargoToml.package.version;
rustPlatform.buildRustPackage rec {
pname = "ReSet";
version = cargoToml.package.version;
src = ../.;
src = ../.;
buildInputs = [
gtk4
libadwaita
pulseaudio
dbus
gdk-pixbuf
gnome.adwaita-icon-theme
python312Packages.aiohttp
python312Packages.toml
flatpak
flatpak-builder
];
buildInputs = [
gtk4
libadwaita
pulseaudio
dbus
gdk-pixbuf
adwaita-icon-theme
python312Packages.aiohttp
python312Packages.toml
flatpak
flatpak-builder
];
cargoLock = {
inherit lockFile;
};
cargoLock = {
inherit lockFile;
};
nativeBuildInputs = [
pkg-config
wrapGAppsHook4
rust-bin.nightly."2024-05-10".default
];
nativeBuildInputs = [
pkg-config
wrapGAppsHook4
rust-bin.nightly."2024-05-10".default
];
copyLibs = true;
copyLibs = true;
postInstall = ''
install -D --mode=444 $src/reset.desktop $out/share/applications/reset.desktop
install -D --mode=444 $src/src/resources/icons/${pname}.svg $out/share/pixmaps/${pname}.svg
'';
postInstall = ''
install -D --mode=444 $src/${pname}.desktop $out/share/applications/${pname}.desktop
install -D --mode=444 $src/src/resources/icons/${pname}.svg $out/share/pixmaps/${pname}.svg
'';
# test is broken in nix for some reason
doInstallCheck = false;
doCheck = false;
# test is broken in nix for some reason
doInstallCheck = false;
doCheck = false;
meta = with lib; {
description = "A wip universal Linux settings application.";
homepage = "https://github.com/Xetibo/ReSet";
changelog = "https://github.com/Xetibo/ReSet/releases/tag/${version}";
license = licenses.gpl3;
maintainers = with maintainers; [ DashieTM ];
mainProgram = "ReSet";
};
}
meta = with lib; {
description = "A wip universal Linux settings application.";
homepage = "https://github.com/Xetibo/ReSet";
changelog = "https://github.com/Xetibo/ReSet/releases/tag/${version}";
license = licenses.gpl3;
maintainers = with maintainers; [DashieTM];
mainProgram = "ReSet";
};
}

View file

@ -334,7 +334,7 @@ pub fn start_audio_box_listener<
get_default_name_function: &'static DBusFunction,
dummy_name: &'static str,
) -> Connection {
// TODO: make the failed logs generically sound -> deynamic output for both
// FUTURE TODO: make the failed logs generically sound -> deynamic output for both
let object_added =
ObjectAdded::match_rule(Some(&BASE.into()), Some(&Path::from(DBUS_PATH))).static_clone();
let object_changed =

View file

@ -117,7 +117,7 @@ pub fn new_entry<
reset_box: Arc<AudioBox>,
) -> Arc<AudioEntry> {
let obj: Arc<AudioEntry> = Arc::new(Object::builder().build());
// TODO use event callback for progress bar -> this is the "im speaking" indicator
// FUTURE TODO: use event callback for progress bar -> this is the "im speaking" indicator
{
let imp = obj.entry_imp();
let slider_obj_ref = obj.clone();

View file

@ -91,7 +91,7 @@ pub fn new_stream_entry<
stream: StreamObject,
) -> Arc<AudioStream> {
let obj: Arc<AudioStream> = Arc::new(Object::builder().build());
// TODO use event callback for progress bar -> this is the "im speaking" indicator
// FUTURE TODO: use event callback for progress bar -> this is the "im speaking" indicator
let output_box_mute_ref = audio_box.clone();
let output_box_volume_ref = audio_box.clone();
let output_box_sink_ref = audio_box.clone();

View file

@ -54,7 +54,7 @@ pub fn show_error<T: ReSetErrorImpl + Send + Sync + 'static>(
parent: Arc<T>,
message: &'static str,
) {
// TODO: Add error to log
// FUTURE TODO: Add error to log
glib::spawn_future(async move {
glib::idle_add_once(move || {
let error = parent.error();

View file

@ -57,7 +57,7 @@ impl BluetoothBox {
}
}
// TODO
// FUTURE TODO:
// handle bonded -> this means saved but not connected
// handle rssi below x -> don't show device
@ -185,7 +185,6 @@ pub fn populate_connected_bluetooth_devices(
listeners: Arc<Listeners>,
bluetooth_box: Arc<BluetoothBox>,
) {
// TODO handle saved devices -> they also exist
gio::spawn_blocking(move || {
let ref_box = bluetooth_box.clone();
let adapters = get_bluetooth_adapters(ref_box.clone());

View file

@ -70,7 +70,7 @@ impl BluetoothEntry {
});
let gesture = GestureClick::new();
// paired is not what we think
// TODO implement paired
// FUTURE TODO: implement paired
gesture.connect_released(move |_, _, _, _| {
let imp = entry_ref.imp();
let borrow = imp.bluetooth_device.borrow();

View file

@ -69,7 +69,7 @@ pub fn device_removed_handler(
if list_entry.imp().bluetooth_device.borrow().connected {
imp.reset_bluetooth_connected_devices.remove(&*list_entry);
} else {
// TODO: is there a better way for this?
// FUTURE TODO: is there a better way for this?
imp.reset_bluetooth_available_devices.remove(&*list_entry);
imp.reset_bluetooth_saved_devices.remove(&*list_entry);
}

View file

@ -10,6 +10,9 @@ use glib::prelude::Cast;
use glib::Object;
use gtk::prelude::{GObjectPropertyExpressionExt, ListBoxRowExt, ListItemExt, WidgetExt};
use gtk::{Align, SignalListItemFactory, StringObject};
use re_set_lib::ERROR;
#[cfg(debug_assertions)]
use re_set_lib::{utils::macros::ErrorLevel, write_log_to_file};
pub const DBUS_PATH: &str = "/org/Xetibo/ReSet/Daemon";
pub const WIRELESS: &str = "org.Xetibo.ReSet.Network";
@ -93,5 +96,12 @@ pub fn get_capabilities() -> Vec<String> {
let conn = Connection::new_session().unwrap();
let proxy = conn.with_proxy(BASE, DBUS_PATH, Duration::from_millis(10000));
let res: Result<(Vec<String>,), Error> = proxy.method_call(BASE, "GetCapabilities", ());
if res.is_err() {
ERROR!(
"Could not call capabilities from daemon",
ErrorLevel::Critical
);
return Vec::new();
}
res.unwrap().0
}

View file

@ -55,7 +55,7 @@ impl SavedWifiEntry {
let entry_ref = entry.clone();
delete_button.connect_clicked(clone!(@weak wifi_box => move |_| {
delete_connection(entry_ref.imp().reset_connection_path.take());
// TODO handle error
// FUTURE TODO: handle error
wifi_box.reset_stored_wifi_list.remove(&*entry_ref);
}));

View file

@ -209,7 +209,7 @@ pub fn show_stored_connections(wifi_box: Arc<WifiBox>) {
glib::idle_add_once(move || {
let self_imp = wifibox_ref.imp();
for connection in connections {
// TODO include button for settings
// FUTURE TODO: include button for settings
let name =
&String::from_utf8(connection.1).unwrap_or_else(|_| String::from(""));
let entry = SavedWifiEntry::new(name, connection.0, self_imp);

View file

@ -48,7 +48,7 @@ impl WifiEntry {
.build(),
);
// TODO handle encryption thing
// FUTURE TODO: handle encryption
let wifi_strength = Image::builder()
.icon_name(match strength {
WifiStrength::Excellent => "network-wireless-signal-excellent-symbolic",
@ -177,7 +177,7 @@ pub fn click_stored_network(entry: Arc<WifiEntry>) {
});
});
});
// TODO crate spinner animation and block UI
// FUTURE TODO: crate spinner animation and block UI
}
pub fn click_new_network(entry: Arc<WifiEntry>) {
@ -228,7 +228,7 @@ pub fn click_new_network(entry: Arc<WifiEntry>) {
});
});
});
// TODO crate spinner animation and block UI
// FUTURE TODO: crate spinner animation and block UI
};
let entry_imp = entry.imp();

View file

@ -72,7 +72,7 @@ pub fn access_point_changed_handler(wifi_box: Arc<WifiBox>, ir: AccessPointChang
let name = name_opt.as_str();
entry_imp.wifi_strength.set(strength);
entry.set_title(name);
// TODO handle encryption thing
// FUTURE TODO: handle encryption thing
entry_imp
.reset_wifi_strength
.borrow()

View file

@ -207,7 +207,6 @@ impl ReSetWindow {
.connect_row_activated(clone!(@ weak self_imp => move |_, _| {
self_imp.reset_search_entry.set_text("");
}));
// TODO: refactor this
let mut i = 0;
for info in sidebar_list {
if info.parent.is_none() && i != 0 {

View file

@ -11,7 +11,7 @@ use crate::components::window::sidebar_entry;
#[derive(Default)]
pub enum Categories {
// TODO: are these ever used ?
// FUTURE TODO: are these ever used ?
// Connectivity,
// Audio,
// Peripherals,

View file

@ -1,5 +1,5 @@
use std::hint::{self};
use std::sync::atomic::AtomicBool;
use std::sync::atomic::{AtomicBool, Ordering};
use std::sync::Arc;
use std::thread;
use std::time::Duration;
@ -81,5 +81,7 @@ async fn daemon_check(ready: Arc<AtomicBool>) {
let res = handle.join();
if res.unwrap().is_err() {
run_daemon(Some(ready)).await;
} else {
ready.store(true, Ordering::SeqCst);
}
}

View file

@ -38,5 +38,5 @@ row.selectedLanguage {
}
row.activeLanguage {
background-color: darker(darker(darker(@window_fg_color)));
background-color: @blue_2;
}

View file

@ -14,7 +14,6 @@ async fn test_plugins() {
hint::spin_loop();
}
unsafe {
println!("pang");
for plugin in FRONTEND_PLUGINS.iter() {
let name = (plugin.frontend_name)();
let tests = (plugin.frontend_tests)();

View file

@ -8,7 +8,7 @@ use gtk::prelude::{BoxExt, ButtonExt};
use re_set_lib::utils::plugin::{PluginCapabilities, PluginImplementation, PluginTestFunc, SidebarInfo};
pub const BASE: &str = "org.Xetibo.ReSet.Daemon";
pub const DBUS_PATH: &str = "/org/Xebito/ReSet/Plugins/test";
pub const DBUS_PATH: &str = "/org/Xetibo/ReSet/Plugins/test";
pub const INTERFACE: &str = "org.Xetibo.ReSet.TestPlugin";
#[no_mangle]