summaryrefslogtreecommitdiff
path: root/raveos-calamares-theme
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-calamares-theme')
-rw-r--r--raveos-calamares-theme/PKGBUILD10
-rw-r--r--raveos-calamares-theme/etc/calamares/branding/raveos/finishedq.qml229
-rw-r--r--raveos-calamares-theme/etc/calamares/branding/raveos/images/raveos-finish.pngbin0 -> 5386138 bytes
-rw-r--r--raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_de.ts55
-rw-r--r--raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_en.ts55
-rw-r--r--raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_hu.ts55
-rw-r--r--raveos-calamares-theme/etc/calamares/branding/raveos/stylesheet.qss21
-rw-r--r--raveos-calamares-theme/etc/calamares/branding/raveos/supporters.js8
-rw-r--r--raveos-calamares-theme/etc/calamares/modules/finishedq.conf9
-rw-r--r--raveos-calamares-theme/etc/calamares/modules/shellprocess-supporters.conf9
-rwxr-xr-xraveos-calamares-theme/etc/calamares/settings.conf6
11 files changed, 455 insertions, 2 deletions
diff --git a/raveos-calamares-theme/PKGBUILD b/raveos-calamares-theme/PKGBUILD
index b3b18f3..f0d55d7 100644
--- a/raveos-calamares-theme/PKGBUILD
+++ b/raveos-calamares-theme/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: nippy <nippy@tuta.io>
pkgname=raveos-calamares-theme
pkgver=2.0.0
-pkgrel=60
+pkgrel=65
pkgdesc="RaveOS Calamares Theme"
arch=('any')
url="https://git.rp1.hu/RaveOS"
@@ -27,4 +27,12 @@ package() {
install -Dm755 "${startdir}/etc/calamares/modules/raveos-chown-homes.sh" \
"${pkgdir}/etc/calamares/modules/raveos-chown-homes.sh"
+
+ # Branding fordítások: .ts -> .qm (lrelease)
+ local lrelease_bin
+ lrelease_bin="$(command -v lrelease6 || command -v lrelease || echo /usr/lib/qt6/bin/lrelease)"
+ for ts in "${startdir}"/etc/calamares/branding/raveos/lang/calamares-raveos_*.ts; do
+ [ -e "$ts" ] || continue
+ "${lrelease_bin}" "$ts" -qm "${pkgdir}/etc/calamares/branding/raveos/lang/$(basename "${ts%.ts}").qm"
+ done
}
diff --git a/raveos-calamares-theme/etc/calamares/branding/raveos/finishedq.qml b/raveos-calamares-theme/etc/calamares/branding/raveos/finishedq.qml
new file mode 100644
index 0000000..b72a368
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/branding/raveos/finishedq.qml
@@ -0,0 +1,229 @@
+/* RaveOS - Calamares finished (Done) oldal
+ *
+ * "Restart now" gomb: config.doRestart(true) -> azonnal ujrainditja a gepet.
+ * A tamogatok kulon keretben, alul, soronkent 3 nev, kozepre igazitva.
+ * Sok nev eseten automatikusan lapoz (4s). A lista: supporters.js (import).
+ * Ha nincs nev, a teljes tamogatoi panel el van rejtve.
+ *
+ * Nyelvek: hu / de / en. A desktop selector mintaja szerint: a lap
+ * aktivalasakor (onActivate) frissitjuk a nyelvet, es minden szoveg
+ * property bindinggel koveti (uiLang).
+ */
+
+import io.calamares.core 1.0
+import io.calamares.ui 1.0
+
+import QtQuick 2.15
+import QtQuick.Controls 2.15
+import QtQuick.Layouts 1.15
+
+import "supporters.js" as Supporters
+
+Item {
+ id: finishedRoot
+ anchors.fill: parent
+
+ readonly property int supportersPerPage: 30
+ readonly property int supportersColumns: 3
+ readonly property bool hasSupporters: Supporters.names.length > 0
+ readonly property int supportersPageCount: Math.max(1, Math.ceil(Supporters.names.length / supportersPerPage))
+
+ // Szovegek a branding .qm fordításokbol; a lap aktivalasakor frissulnek
+ // (a QQuickWidget nem forditja ujra a qsTr bindingeket nyelvvaltaskor)
+ property string titleText: ""
+ property string descText: ""
+ property string restartText: ""
+ property string supportersHeadText: ""
+ property string thanksText: ""
+
+ function updateTexts() {
+ titleText = qsTr("Installation complete");
+ descText = qsTr("Restart the system to start using %1.").arg(Branding.string(Branding.ProductName));
+ restartText = qsTr("Restart now");
+ supportersHeadText = qsTr("RaveOS Supporters");
+ thanksText = qsTr("Thank you for your support, from every member of the team!");
+ }
+
+ Component.onCompleted: updateTexts()
+
+ property int supportersPage: 0
+
+ // Az aktualis oldal szovege: soronkent 3 nev, kozepre igazitva
+ property string supportersText: {
+ var start = supportersPage * supportersPerPage;
+ var slice = Supporters.names.slice(start, start + supportersPerPage);
+ var lines = [];
+ for (var j = 0; j < slice.length; j += supportersColumns) {
+ lines.push(slice.slice(j, j + supportersColumns).join(" "));
+ }
+ return lines.join("\n");
+ }
+
+ // RaveOS finish hatter
+ Image {
+ anchors.fill: parent
+ source: "images/raveos-finish.png"
+ fillMode: Image.Stretch
+ smooth: true
+ mipmap: true
+ }
+
+ // Fo keret: cim + leiras + Restart gomb
+ Rectangle {
+ id: panel
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.top: parent.top
+ anchors.topMargin: Math.round(parent.height * 0.06)
+ width: Math.min(parent.width * 0.75, 780)
+ height: contentColumn.implicitHeight + 56
+ color: "#CC1F1F1F"
+ radius: 12
+
+ ColumnLayout {
+ id: contentColumn
+ anchors.centerIn: parent
+ width: parent.width - 64
+ spacing: 18
+
+ Text {
+ Layout.fillWidth: true
+ horizontalAlignment: Text.AlignHCenter
+ color: "#FFFFFF"
+ font.family: "Ubuntu"
+ font.pixelSize: 26
+ font.bold: true
+ text: finishedRoot.titleText
+ }
+
+ Text {
+ Layout.fillWidth: true
+ horizontalAlignment: Text.AlignHCenter
+ color: "#E8E8E8"
+ font.family: "Ubuntu"
+ font.pixelSize: 15
+ wrapMode: Text.WordWrap
+ text: finishedRoot.descText
+ }
+
+ Button {
+ id: restartButton
+ Layout.alignment: Qt.AlignHCenter
+ text: finishedRoot.restartText
+ hoverEnabled: true
+ onClicked: config.doRestart(true)
+
+ contentItem: Text {
+ text: restartButton.text
+ font.family: "Ubuntu"
+ font.pixelSize: 14
+ font.bold: true
+ color: "#FFFFFF"
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
+ }
+
+ background: Rectangle {
+ implicitWidth: 180
+ implicitHeight: 40
+ radius: 4
+ color: (restartButton.down || restartButton.hovered) ? "#285226" : "#3d7839"
+ }
+ }
+ }
+ }
+
+ // Kulon keret: tamogatok (alul) - csak akkor latszik, ha van nev
+ Rectangle {
+ id: supportersPanel
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.top: panel.bottom
+ anchors.topMargin: 16
+ width: Math.min(parent.width * 0.75, 780)
+ height: supportersColumn.implicitHeight + 40
+ color: "#CC1F1F1F"
+ radius: 12
+ visible: finishedRoot.hasSupporters
+
+ ColumnLayout {
+ id: supportersColumn
+ anchors.centerIn: parent
+ width: parent.width - 48
+ spacing: 10
+
+ Text {
+ Layout.fillWidth: true
+ horizontalAlignment: Text.AlignHCenter
+ color: "#B9B9B9"
+ font.family: "Ubuntu"
+ font.pixelSize: 15
+ font.bold: true
+ text: finishedRoot.supportersHeadText
+ }
+
+ Text {
+ id: supportersNames
+ Layout.fillWidth: true
+ horizontalAlignment: Text.AlignHCenter
+ color: "#DADADA"
+ font.family: "Ubuntu"
+ font.pixelSize: 15
+ lineHeight: 1.4
+ text: finishedRoot.supportersText
+ Behavior on opacity { NumberAnimation { duration: 250 } }
+ }
+
+ Text {
+ Layout.fillWidth: true
+ horizontalAlignment: Text.AlignHCenter
+ color: "#8F8F8F"
+ font.family: "Ubuntu"
+ font.pixelSize: 12
+ visible: finishedRoot.supportersPageCount > 1
+ text: (finishedRoot.supportersPage + 1) + " / " + finishedRoot.supportersPageCount
+ }
+
+ // Koszonet a tamogatasert
+ Text {
+ Layout.fillWidth: true
+ Layout.topMargin: 2
+ horizontalAlignment: Text.AlignHCenter
+ color: "#B9B9B9"
+ font.family: "Ubuntu"
+ font.pixelSize: 13
+ font.italic: true
+ wrapMode: Text.WordWrap
+ text: finishedRoot.thanksText
+ }
+ }
+ }
+
+ // Automatikus lapozas, ha tobb oldal van
+ Timer {
+ id: pageTimer
+ interval: 4000
+ repeat: true
+ running: finishedRoot.hasSupporters && finishedRoot.supportersPageCount > 1
+ onTriggered: {
+ supportersNames.opacity = 0;
+ fadeTimer.start();
+ }
+ }
+
+ Timer {
+ id: fadeTimer
+ interval: 260
+ onTriggered: {
+ finishedRoot.supportersPage = (finishedRoot.supportersPage + 1) % finishedRoot.supportersPageCount;
+ supportersNames.opacity = 1;
+ }
+ }
+
+ function onActivate()
+ {
+ updateTexts();
+ }
+
+ function onLeave()
+ {
+ }
+}
diff --git a/raveos-calamares-theme/etc/calamares/branding/raveos/images/raveos-finish.png b/raveos-calamares-theme/etc/calamares/branding/raveos/images/raveos-finish.png
new file mode 100644
index 0000000..be6d510
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/branding/raveos/images/raveos-finish.png
Binary files differ
diff --git a/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_de.ts b/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_de.ts
new file mode 100644
index 0000000..1d68d57
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_de.ts
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="de">
+<context>
+ <name>finishedq</name>
+ <message>
+ <source>Installation complete</source>
+ <translation>Installation abgeschlossen</translation>
+ </message>
+ <message>
+ <source>Restart the system to start using %1.</source>
+ <translation>Starten Sie das System neu, um %1 zu verwenden.</translation>
+ </message>
+ <message>
+ <source>Restart now</source>
+ <translation>Jetzt neu starten</translation>
+ </message>
+ <message>
+ <source>RaveOS Supporters</source>
+ <translation>RaveOS-Unterstützer</translation>
+ </message>
+ <message>
+ <source>Thank you for your support, from every member of the team!</source>
+ <translation>Vielen Dank für die Unterstützung, im Namen aller Teammitglieder!</translation>
+ </message>
+</context>
+<context>
+ <name>CalamaresWindow</name>
+ <message>
+ <source>&amp;Restart</source>
+ <comment>@button</comment>
+ <translation>&amp;Neu starten</translation>
+ </message>
+ <message>
+ <source>Restart the computer</source>
+ <comment>@tooltip</comment>
+ <translation>Den Computer neu starten</translation>
+ </message>
+</context>
+<context>
+ <name>raveos</name>
+ <message>
+ <source>Restart the computer?</source>
+ <translation>Computer neu starten?</translation>
+ </message>
+ <message>
+ <source>Restart</source>
+ <translation>Neu starten</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation>Abbrechen</translation>
+ </message>
+</context>
+</TS>
diff --git a/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_en.ts b/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_en.ts
new file mode 100644
index 0000000..cb44e1c
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_en.ts
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="en">
+<context>
+ <name>finishedq</name>
+ <message>
+ <source>Installation complete</source>
+ <translation>Installation complete</translation>
+ </message>
+ <message>
+ <source>Restart the system to start using %1.</source>
+ <translation>Restart the system to start using %1.</translation>
+ </message>
+ <message>
+ <source>Restart now</source>
+ <translation>Restart now</translation>
+ </message>
+ <message>
+ <source>RaveOS Supporters</source>
+ <translation>RaveOS Supporters</translation>
+ </message>
+ <message>
+ <source>Thank you for your support, from every member of the team!</source>
+ <translation>Thank you for your support, from every member of the team!</translation>
+ </message>
+</context>
+<context>
+ <name>CalamaresWindow</name>
+ <message>
+ <source>&amp;Restart</source>
+ <comment>@button</comment>
+ <translation>&amp;Restart</translation>
+ </message>
+ <message>
+ <source>Restart the computer</source>
+ <comment>@tooltip</comment>
+ <translation>Restart the computer</translation>
+ </message>
+</context>
+<context>
+ <name>raveos</name>
+ <message>
+ <source>Restart the computer?</source>
+ <translation>Restart the computer?</translation>
+ </message>
+ <message>
+ <source>Restart</source>
+ <translation>Restart</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation>Cancel</translation>
+ </message>
+</context>
+</TS>
diff --git a/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_hu.ts b/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_hu.ts
new file mode 100644
index 0000000..27eddfa
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/branding/raveos/lang/calamares-raveos_hu.ts
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="hu">
+<context>
+ <name>finishedq</name>
+ <message>
+ <source>Installation complete</source>
+ <translation>A telepítés befejeződött</translation>
+ </message>
+ <message>
+ <source>Restart the system to start using %1.</source>
+ <translation>Indítsd újra a rendszert a %1 használatához.</translation>
+ </message>
+ <message>
+ <source>Restart now</source>
+ <translation>Újraindítás most</translation>
+ </message>
+ <message>
+ <source>RaveOS Supporters</source>
+ <translation>RaveOS támogatók</translation>
+ </message>
+ <message>
+ <source>Thank you for your support, from every member of the team!</source>
+ <translation>Köszönjük a támogatást, a csapat minden tagja nevében!</translation>
+ </message>
+</context>
+<context>
+ <name>CalamaresWindow</name>
+ <message>
+ <source>&amp;Restart</source>
+ <comment>@button</comment>
+ <translation>&amp;Újraindítás</translation>
+ </message>
+ <message>
+ <source>Restart the computer</source>
+ <comment>@tooltip</comment>
+ <translation>A számítógép újraindítása</translation>
+ </message>
+</context>
+<context>
+ <name>raveos</name>
+ <message>
+ <source>Restart the computer?</source>
+ <translation>Újraindítod a számítógépet?</translation>
+ </message>
+ <message>
+ <source>Restart</source>
+ <translation>Újraindítás</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation>Mégse</translation>
+ </message>
+</context>
+</TS>
diff --git a/raveos-calamares-theme/etc/calamares/branding/raveos/stylesheet.qss b/raveos-calamares-theme/etc/calamares/branding/raveos/stylesheet.qss
index 56cc368..8a51e3c 100644
--- a/raveos-calamares-theme/etc/calamares/branding/raveos/stylesheet.qss
+++ b/raveos-calamares-theme/etc/calamares/branding/raveos/stylesheet.qss
@@ -414,3 +414,24 @@ QScrollBar::handle:horizontal {
QScrollBar::handle:horizontal:hover {
background-color: #95a5a6;
}
+
+/* ---------------- RaveOS restart dialog ---------------- */
+
+#raveosDialog {
+ background-color: #2B2B2B;
+}
+
+#raveosDialogLabel {
+ color: #ECF0F1;
+ font-size: 15px;
+ padding: 6px 2px;
+}
+
+#raveosDialogCancel {
+ background-color: #7f8c8d;
+ color: #ffffff;
+}
+
+#raveosDialogCancel:hover {
+ background-color: #95a5a6;
+}
diff --git a/raveos-calamares-theme/etc/calamares/branding/raveos/supporters.js b/raveos-calamares-theme/etc/calamares/branding/raveos/supporters.js
new file mode 100644
index 0000000..2e9859d
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/branding/raveos/supporters.js
@@ -0,0 +1,8 @@
+// RaveOS supporters list
+// The Calamares finished page reads this file (finishedq.qml).
+// One name per line inside the array. The list can also be refreshed
+// during install from: https://page.rp1.hu/supporters.js
+.pragma library
+
+var names = [
+]
diff --git a/raveos-calamares-theme/etc/calamares/modules/finishedq.conf b/raveos-calamares-theme/etc/calamares/modules/finishedq.conf
new file mode 100644
index 0000000..e8729d6
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/modules/finishedq.conf
@@ -0,0 +1,9 @@
+# RaveOS - Calamares finishedq (QML Done oldal) konfiguracio
+#
+# A finishedq modul QML valtozata. A kulon "Restart now" gomb a QML-bol
+# hivja a config.doRestart(true) fuggvenyt, ezert itt a user-unchecked
+# a helyes ertek: a "Close installer" gomb NEM indit ujra.
+---
+restartNowMode: user-unchecked
+restartNowCommand: "systemctl -i reboot"
+notifyOnFinished: false
diff --git a/raveos-calamares-theme/etc/calamares/modules/shellprocess-supporters.conf b/raveos-calamares-theme/etc/calamares/modules/shellprocess-supporters.conf
new file mode 100644
index 0000000..2f6c6d8
--- /dev/null
+++ b/raveos-calamares-theme/etc/calamares/modules/shellprocess-supporters.conf
@@ -0,0 +1,9 @@
+dontChroot: true
+timeout: 20
+
+script:
+ # RaveOS: fetch the fresh supporters list (if online). Validated steps:
+ # download -> check "var names" and "]" -> replace. On any error the
+ # packaged list stays (|| true).
+ - command: "curl -fsSL --max-time 10 https://page.rp1.hu/supporters.js?t=$(date +%s) -o /tmp/raveos_supporters.js && grep -q 'var names' /tmp/raveos_supporters.js && grep -q ']' /tmp/raveos_supporters.js && cp /tmp/raveos_supporters.js /etc/calamares/branding/raveos/supporters.js || true"
+ name: "Downloading supporters list..."
diff --git a/raveos-calamares-theme/etc/calamares/settings.conf b/raveos-calamares-theme/etc/calamares/settings.conf
index 9780d3c..2750455 100755
--- a/raveos-calamares-theme/etc/calamares/settings.conf
+++ b/raveos-calamares-theme/etc/calamares/settings.conf
@@ -144,6 +144,9 @@ instances:
- id: copybrave
module: shellprocess
config: shellprocess-copybrave.conf
+- id: supporters
+ module: shellprocess
+ config: shellprocess-supporters.conf
sequence:
@@ -186,12 +189,13 @@ sequence:
- shellprocess@dkms
- shellprocess@enableservices
- shellprocess@final
+ - shellprocess@supporters
- shellprocess@loader
- preservefiles
- umount
- show:
# - webview@owncloud
- - finished
+ - finishedq
# A branding component is a directory, either in SHARE/calamares/branding or
# in /etc/calamares/branding (the latter takes precedence). The directory must