How open-source-uom/unibackpack works
UniBackpack is a Qt desktop application that selects university and department software, checks packages against the detected Linux package manager, and installs available packages with elevated privileges. The main workflow and UI wiring are visible in sampled source; README-described department-specific configuration is represented by the listed resource directory. Downloader excerpts are partial, so only clearly supported package-check and installation connections are shown.
Main entry points: MainWindow.cpp University selection · Downloader.cpp Package workflow · main.cpp Application startup · apt_list.txt Department package lists
Components 14
Desktop UI
- Application startup
src/main.cpp - University selection
src/MainWindow.cpp - Window layout
ui/MainWindow.ui - Language settings
src/main.cpp
Package Workflow
- Package workflow
src/Downloader.cpp - Manager detection
src/Downloader.cpp - Repository checks
src/Downloader.cpp - Privileged installation
src/Downloader.cpp
App Resources
- Translations
translations/unibackpack_en.ts - Greek translations
translations/unibackpack_el.ts - Department package lists
resources/lists/University of Western Macedonia/Informatics/apt_list.txt
Other components
- Student
- Linux package tools
- Privilege elevation
Connections 19
- Student → University selection: selects university and department
- Application startup → University selection: opens window
- University selection → Window layout: sets up UI
- Application startup → Language settings: reads language
- University selection → Language settings: reads and saves language
- Application startup → Translations: loads translations
- University selection → Greek translations: loads Greek catalog
- University selection → Package workflow: starts package workflow
- University selection → Manager detection: requests manager
- Package workflow → Manager detection: checks executables
- Manager detection → Linux package tools: finds installed manager
- University selection → Package workflow: requests package filtering
- Department package lists → Package workflow: provides department packages
- Package workflow → Repository checks: checks package availability
- Repository checks → Linux package tools: queries apt or pacman
- University selection → Privileged installation: dispatches selected packages
- Privileged installation → Privilege elevation: launches with pkexec
- Privilege elevation → Linux package tools: runs apt or pacman install
- Package workflow → University selection: reports status and progress