Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/com8/home-ui
GTK4 Based UI for home automation using a Raspberry Pi.
https://github.com/com8/home-ui
cmake cpp17 gnome gtk gtk4 hacktoberfest home-automation mvg
Last synced: 4 months ago
JSON representation
GTK4 Based UI for home automation using a Raspberry Pi.
- Host: GitHub
- URL: https://github.com/com8/home-ui
- Owner: COM8
- License: gpl-3.0
- Created: 2021-08-17T13:16:30.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-06-12T05:39:43.000Z (over 1 year ago)
- Last Synced: 2024-10-05T06:51:49.859Z (4 months ago)
- Topics: cmake, cpp17, gnome, gtk, gtk4, hacktoberfest, home-automation, mvg
- Language: C++
- Homepage:
- Size: 382 KB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Home-UI
GTK4 Based UI for home automation using a Raspberry Pi.## Examples
![Overview in dark mode](images/overview_dark.png)## Building
### Requirements
#### Fedora
```
sudo dnf install gtkmm4.0-devel libadwaita-devel libcurl-devel g++ clang cmake git
sudo dnf install libsoup3-devel sqlite-devel ninja-build
```### Building
```
git clone https://github.com/COM8/home-ui.git
cd home-ui
mkdir build
cd build
cmake ..
cmake --build .
```## Flatpak
The home-ui can be built and installed using Flatpak.### Requirements
#### Fedora
```
sudo dnf install flatpak flatpak-builder
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gnome.Sdk/43 org.gnome.Platform/43
```#### Debian/Ubuntu
```
sudo apt install flatpak flatpak-builder
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gnome.Sdk/43 org.gnome.Platform/43
```### Building
Add `--jobs=1` to the `flatpak-builder` command when building on a Raspberry Pi to prevent running out of RAM.
```
git clone https://github.com/COM8/home-ui.git
cd home-ui
flatpak-builder --force-clean flatpak_build_dir de.home_ui.cli.yml
```### Installing
```
flatpak-builder --user --install --force-clean flatpak_build_dir de.home_ui.cli.yml
```### Cross-Compiling
In case you would like to cross-compile for the Raspberry Pi (aarch64), this can be done as follows:
```
sudo dnf install qemu-system-arm qemu-user-static
sudo systemctl restart systemd-binfmt.serviceflatpak install flathub org.gnome.Sdk/aarch64/42 org.gnome.Platform/aarch64/42
flatpak-builder --arch=aarch64 --repo=repo --force-clean flatpak_build_dir de.home_ui.cli.yml
flatpak build-bundle --arch=aarch64 ./repo/ de.home_ui.cli.flatpak de.home_ui.cli# Copy the "repo" dir to the target system
flatpak --user remote-add --no-gpg-verify home-ui-repo repo
flatpak --user install home-ui-repo de.home_ui.cli
```### Uninstalling
```
flatpak uninstall de.home_ui.cli
```### Executing
```
flatpak run de.home_ui.cli
```