littlebot
Published on 2025-04-16 / 0 Visits
0

【源码】基于GTK4和C++的TUM UI

项目简介

这是一个基于GTK4和C++的TUM信息显示系统项目,旨在为慕尼黑工业大学(Technical University of Munich,简称TUM)的学生和工作人员提供食堂、MVG(慕尼黑公共交通系统)信息以及天气的实时更新。该项目可运行在Raspberry PI上,作为办公室状态显示器使用。

项目的主要特性和功能

  • 界面显示:实时更新显示食堂人数统计、食堂菜单、MVG出发信息和天气信息。
  • 数据更新:定时从后端API获取数据并更新UI显示。
  • 自定义UI:使用GTK4和C++开发,支持自定义UI设计和交互。
  • 多线程处理:采用多线程处理数据更新,确保UI流畅运行。
  • 设置管理:提供设置管理功能,用户可自定义显示内容、更新频率等。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件。

安装步骤

  1. 获取源代码bash cd tum-ui
  2. 安装依赖
  3. Fedorabash sudo dnf install gtkmm4.0-devel libadwaita-devel libcurl-devel g++ clang cmake git libsoup3-devel sqlite-devel ninja-build
  4. Debian/Ubuntubash sudo apt install libgtk-4-dev libadwaita-1-dev libcurl4-openssl-dev g++ clang cmake git libsoup3-dev libsqlite3-dev ninja-build
  5. 编译构建bash mkdir build cd build cmake .. cmake --build .
  6. 运行程序bash ./tum-ui
  7. 配置设置
  8. 首次运行后,配置文件将自动生成在/root/tum_ui_settings.json
  9. 可根据需要修改配置文件以自定义显示内容和更新频率。
  10. 自动启动
  11. tum_ui.service文件复制到/etc/systemd/system/目录下。
  12. 启用并启动服务: bash systemctl enable tum_ui.service systemctl start tum_ui.service

其他构建选项

Flatpak构建

  1. 安装Flatpak相关依赖: bash 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
  2. 构建Flatpak包: bash flatpak-builder --force-clean flatpak_build_dir de.tum_ui.cli.yml
  3. 安装Flatpak包: bash flatpak-builder --user --install --force-clean flatpak_build_dir de.tum_ui.cli.yml

交叉编译

  1. 安装交叉编译工具: bash sudo dnf install qemu-system-arm qemu-user-static sudo systemctl restart systemd-binfmt.service
  2. 安装aarch64平台依赖: bash flatpak install flathub org.gnome.Sdk/aarch64/42 org.gnome.Platform/aarch64/42
  3. 构建并打包: bash flatpak-builder --arch=aarch64 --repo=repo --force-clean flatpak_build_dir de.tum_ui.cli.yml flatpak build-bundle --arch=aarch64 ./repo/ de.tum_ui.cli.flatpak de.tum_ui.cli
  4. 将生成的repo目录复制到目标系统并安装: bash flatpak --user remote-add --no-gpg-verify tum-ui-repo repo flatpak --user install tum-ui-repo de.tum_ui.cli

通过以上步骤,可在Raspberry PI或其他支持GTK4和C++的平台上成功构建和运行该项目。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】