Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 4 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,11 @@
"qt-qml.qmlls.enabled": true,
"qt-qml.qmlls.useQmlImportPathEnvVar": true,
"qt-qml.qmlls.additionalImportPaths": [
"/opt/homebrew/share/qt/qml",
"${workspaceFolder}/src/qml",
"${workspaceFolder}/src/qml/pages",
"${workspaceFolder}/build/rocontrol"
"${workspaceFolder}/build/rocontrol",
"${workspaceFolder}/build-copilot/rocontrol",
"${workspaceFolder}/build-codex/rocontrol"
]
}
3 changes: 3 additions & 0 deletions docs/BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
This guide covers building ro-Control from source on Linux systems with Qt 6 and CMake.
The primary target is Fedora KDE Desktop, with official release artifacts for
`x86_64`, `aarch64`, `noarch`, and `src`.
For Ro-ASD ISO integration, package validation should be treated as Fedora 43 KDE specific.

---

Expand Down Expand Up @@ -49,6 +50,8 @@ sudo dnf install \

Official release outputs do not include `i686`. Driver install/update/remove
workflows are supported on `x86_64` and `aarch64` release builds.
RPM validation for repo publication should be performed in a Fedora 43 build
environment so no newer Qt ABI leaks into the package metadata.

Runtime tools used by diagnostics and driver operations:

Expand Down
55 changes: 55 additions & 0 deletions docs/PACKAGING-FEDORA43.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Fedora 43 Packaging Contract

This note captures the packaging requirements for publishing `ro-control` into
the Ro-ASD repository for direct ISO installation.

## Target environment

- Fedora 43 KDE
- Install path must work with:

```bash
dnf -y --refresh --setopt=install_weak_deps=False install ro-control
rpm -q ro-control
command -v ro-control
```

## Required package shape

- `ro-control.<arch>` must provide `/usr/bin/ro-control`
- `ro-control-common.noarch` must contain shared assets only
- `ro-control.<arch>` may depend on `ro-control-common = %{version}-%{release}`

## Forbidden ABI dependencies

These must not appear in `rpm -qpR ro-control-*.rpm`:

- `Qt_6.10`
- `Qt_6.10_PRIVATE_API`
- any `PRIVATE_API` symbol requirement

## Build rules

- Build in Fedora 43, not `fedora:latest`, Fedora 44, or Rawhide
- Do not add Qt private module link targets
- Do not include `#include <private/...>` headers
- Do not require `qt6-qtbase-private-devel` unless the code proves it is needed

## Acceptance checks

```bash
dnf clean all
dnf -y --refresh --setopt=install_weak_deps=False install ro-control
rpm -q ro-control
command -v ro-control
ldd -r /usr/bin/ro-control
rpm -q --whatprovides /usr/bin/ro-control
rpm -qpR ro-control-*.rpm
rpm -qpl ro-control-*.rpm | grep /usr/bin/ro-control
```

Expected provider for `/usr/bin/ro-control`:

```text
ro-control
```
139 changes: 90 additions & 49 deletions i18n/ro-control_tr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="191" />
<source>I reviewed the NVIDIA license terms</source>
<translation>NVIDIA lisans kosullarini inceledim</translation>
<source>I reviewed the official NVIDIA license outside ro-Control</source>
<translation>Resmi NVIDIA lisansını ro-Control dışında inceledim</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="175" />
Expand Down Expand Up @@ -75,18 +75,18 @@
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="116" />
<source>Not Detected</source>
<translation>Algilanmadi</translation>
<source>No NVIDIA GPU</source>
<translation>NVIDIA GPU bulunamadı</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="136" />
<source>Latest: %1</source>
<translation>En guncel: %1</translation>
<source>Official latest: %1</source>
<translation>Resmi en güncel sürüm: %1</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="136" />
<source>Latest: Unknown</source>
<translation>En guncel: Bilinmiyor</translation>
<source>Official latest: Unavailable</source>
<translation>Resmi en güncel sürüm: Kullanılamıyor</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="153" />
Expand All @@ -100,13 +100,17 @@
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="155" />
<source>Secure Boot: Disabled / Unknown</source>
<translation>Secure Boot: Kapali / Bilinmiyor</translation>
<source>Secure Boot: Disabled</source>
<translation>Secure Boot: Kapalı</translation>
</message>
<message>
<source>Secure Boot: Unknown</source>
<translation>Secure Boot: Bilinmiyor</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="183" />
<source>Use safe guided operations for install, update, and cleanup.</source>
<translation>Kurulum, guncelleme ve temizlik icin guvenli yonlendirilmis islemleri kullanin.</translation>
<source>Latest version information is resolved from the official NVIDIA Unix driver page. Fedora workflow guidance follows the official NVIDIA Fedora installation guide.</source>
<translation>En güncel sürüm bilgisi resmi NVIDIA Unix sürücü sayfasından alınır. Fedora akışı resmi NVIDIA Fedora kurulum rehberini takip eder.</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="202" />
Expand Down Expand Up @@ -159,13 +163,13 @@
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="247" />
<source>Checking repository for updates...</source>
<translation>Depo guncellemeleri denetleniyor...</translation>
<source>Checking official NVIDIA driver sources...</source>
<translation>Resmi NVIDIA sürücü kaynakları denetleniyor...</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="257" />
<source>Applying latest online version...</source>
<translation>En guncel cevrimici surum uygulaniyor...</translation>
<source>Applying latest available driver...</source>
<translation>Mevcut en güncel sürücü uygulanıyor...</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="279" />
Expand Down Expand Up @@ -201,18 +205,38 @@
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="254" />
<source>Install Latest</source>
<translation>En Günceli Kur</translation>
<translation>En Son Sürümü Kur</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="254" />
<source>Apply Latest</source>
<translation>En Son Sürümü Uygula</translation>
</message>
<message>
<source>Install Latest (%1)</source>
<translation>En Son Sürümü Kur (%1)</translation>
</message>
<message>
<source>Apply Latest (%1)</source>
<translation>En Son Sürümü Uygula (%1)</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="276" />
<source>Apply Selected</source>
<translation>Seçileni Uygula</translation>
</message>
<message>
<source>Version Selection</source>
<translation>Sürüm Seçimi</translation>
</message>
<message>
<source>Use this area to test or switch to an older repository version.</source>
<translation>Bu alanı eski bir depo sürümünü denemek veya ona geçmek için kullanın.</translation>
</message>
<message>
<source>Maintenance</source>
<translation>Bakım</translation>
</message>
<message>
<location filename="../src/qml/pages/DriverPage.qml" line="234" />
<source>Deep Clean</source>
Expand Down Expand Up @@ -331,22 +355,40 @@
</message>
<message>
<location filename="../src/qml/pages/MonitorPage.qml" line="151" />
<source>Refresh</source>
<translation>Yenile</translation>
<source>GPU telemetry is unavailable on this architecture unless nvidia-smi or DRM hwmon metrics are exposed.</source>
<translation>Bu mimaride `nvidia-smi` veya DRM hwmon metrikleri sunulmadıkça GPU telemetrisi kullanılamaz.</translation>
</message>
<message>
<source>GPU telemetry is unavailable because nvidia-smi or DRM hwmon metrics could not be read.</source>
<translation>`nvidia-smi` veya DRM hwmon metrikleri okunamadığı için GPU telemetrisi kullanılamıyor.</translation>
</message>
<message>
<source>GPU telemetry is being read from DRM and hwmon fallbacks.</source>
<translation>GPU telemetrisi DRM ve hwmon yedek kaynaklarından okunuyor.</translation>
</message>
<message>
<source>GPU telemetry output could not be parsed.</source>
<translation>GPU telemetri çıktısı ayrıştırılamadı.</translation>
</message>
<message>
<source>GPU telemetry output did not contain usable metrics.</source>
<translation>GPU telemetri çıktısı kullanılabilir metrikler içermiyor.</translation>
</message>
<message>
<source>GPU telemetry is being read from nvidia-smi.</source>
<translation>GPU telemetrisi `nvidia-smi` üzerinden okunuyor.</translation>
</message>
</context>
<context>
<name>NvidiaDetector</name>
<message>
<location filename="../src/backend/nvidia/detector.cpp" line="49" />
<source>Not Installed / Unknown</source>
<translation>Kurulu Değil / Bilinmiyor</translation>
<source>Not Installed</source>
<translation>Kurulu Değil</translation>
</message>
<message>
<location filename="../src/backend/nvidia/detector.cpp" line="53" />
<location filename="../src/backend/nvidia/detector.cpp" line="55" />
<source>None</source>
<translation>Yok</translation>
<source>Unavailable</source>
<translation>Kullanılamıyor</translation>
</message>
<message>
<location filename="../src/backend/nvidia/detector.cpp" line="43" />
Expand Down Expand Up @@ -390,8 +432,8 @@ Yedek Acik Surucu: %6</translation>
</message>
<message>
<location filename="../src/backend/nvidia/detector.cpp" line="62" />
<source>Disabled / Unknown</source>
<translation>Devre Dışı / Bilinmiyor</translation>
<source>Unknown</source>
<translation>Bilinmiyor</translation>
</message>
<message>
<location filename="../src/backend/nvidia/detector.cpp" line="63" />
Expand Down Expand Up @@ -423,8 +465,8 @@ Yedek Acik Surucu: %6</translation>
</message>
<message>
<location filename="../src/backend/nvidia/installer.cpp" line="155" />
<source>The proprietary NVIDIA driver is subject to NVIDIA's software license. Review the official NVIDIA license before installation: %1</source>
<translation>Kapali kaynak NVIDIA surucusu, NVIDIA yazilim lisansina tabidir. Kurulumdan once resmi NVIDIA lisansini inceleyin: %1</translation>
<source>The proprietary NVIDIA driver is subject to NVIDIA's software license. ro-Control cannot audit or review the closed-source license text for you. Review the official NVIDIA license before installation: %1</source>
<translation>Kapalı kaynak NVIDIA sürücüsü NVIDIA yazılım lisansına tabidir. ro-Control kapalı kaynak lisans metnini sizin için denetleyemez veya inceleyemez. Kurulumdan önce resmi NVIDIA lisansını inceleyin: %1</translation>
</message>
<message>
<location filename="../src/backend/nvidia/installer.cpp" line="167" />
Expand Down Expand Up @@ -568,8 +610,8 @@ Yedek Acik Surucu: %6</translation>
<name>LanguageManager</name>
<message>
<location filename="../src/backend/system/languagemanager.cpp" line="28" />
<source>System Default</source>
<translation>Sistem Varsayilani</translation>
<source>System</source>
<translation>Sistem</translation>
</message>
<message>
<location filename="../src/backend/system/languagemanager.cpp" line="31" />
Expand All @@ -589,7 +631,7 @@ Yedek Acik Surucu: %6</translation>
<message>
<location filename="../src/backend/system/languagemanager.cpp" line="40" />
<source>Turkish</source>
<translation>Turkce</translation>
<translation>Türkçe</translation>
</message>
</context>
<context>
Expand All @@ -612,18 +654,26 @@ Yedek Acik Surucu: %6</translation>
</message>
<message>
<location filename="../src/backend/nvidia/updater.cpp" line="137" />
<source>Online NVIDIA packages were found. You can download and install the driver now.</source>
<translation>Çevrimiçi NVIDIA paketleri bulundu. Sürücüyü şimdi indirip kurabilirsiniz.</translation>
<source>Official NVIDIA driver sources are reachable. You can install the driver now.</source>
<translation>Resmi NVIDIA sürücü kaynaklarına erişilebiliyor. Sürücüyü şimdi kurabilirsiniz.</translation>
</message>
<message>
<location filename="../src/backend/nvidia/updater.cpp" line="139" />
<source>Online NVIDIA driver found. Latest remote version: %1</source>
<translation>Çevrimiçi NVIDIA sürücüsü bulundu. En güncel uzak sürüm: %1</translation>
<source>Latest official NVIDIA driver version: %1</source>
<translation>Resmi en güncel NVIDIA sürümü: %1</translation>
</message>
<message>
<location filename="../src/backend/nvidia/updater.cpp" line="143" />
<source>No online NVIDIA package catalog was found. RPM Fusion may not be configured yet.</source>
<translation>Çevrimiçi NVIDIA paket kataloğu bulunamadı. RPM Fusion henüz yapılandırılmamış olabilir.</translation>
<source>No official NVIDIA driver version could be retrieved.</source>
<translation>Resmi NVIDIA sürüm bilgisi alınamadı.</translation>
</message>
<message>
<source>Official NVIDIA update found: %1</source>
<translation>Resmi NVIDIA güncellemesi bulundu: %1</translation>
</message>
<message>
<source>Driver matches the latest official NVIDIA production branch.</source>
<translation>Sürücü resmi NVIDIA üretim dalındaki en güncel sürümle eşleşiyor.</translation>
</message>
<message>
<location filename="../src/backend/nvidia/updater.cpp" line="162" />
Expand Down Expand Up @@ -684,15 +734,6 @@ Yedek Acik Surucu: %6</translation>
</message>
<message>
<location filename="../src/backend/nvidia/updater.cpp" line="400" />
<source>No available versions found.</source>
<translation>Hiçbir uygun sürüm bulunamadı.</translation>
</message>
<message>
<location filename="../src/backend/nvidia/updater.cpp" line="401" />
<source>Available versions: %1</source>
<translation>Mevcut sürümler: %1</translation>
</message>
<message>
<location filename="../src/backend/nvidia/updater.cpp" line="411" />
<source>Starting update check...</source>
<translation>Güncelleme denetimi başlatılıyor...</translation>
Expand Down Expand Up @@ -742,8 +783,8 @@ Yedek Acik Surucu: %6</translation>
<name>UiPreferencesManager</name>
<message>
<location filename="../src/backend/system/uipreferencesmanager.cpp" line="20" />
<source>Follow System</source>
<translation>Sistemi Takip Et</translation>
<source>System</source>
<translation>Sistem</translation>
</message>
<message>
<location filename="../src/backend/system/uipreferencesmanager.cpp" line="23" />
Expand Down
Loading
Loading