Merge pull request #1406 from demmm/master
[welcomeq] connected to RequirementsModel
This commit is contained in:
commit
3db12cc29e
@ -1,6 +1,7 @@
|
|||||||
/* === This file is part of Calamares - <https://github.com/calamares> ===
|
/* === This file is part of Calamares - <https://github.com/calamares> ===
|
||||||
*
|
*
|
||||||
* Copyright 2020, Anke Boersma <demm@kaosx.us>
|
* Copyright 2020, Anke Boersma <demm@kaosx.us>
|
||||||
|
* Copyright 2020, Adriaan de Groot <groot@kde.org>
|
||||||
*
|
*
|
||||||
* Calamares is free software: you can redistribute it and/or modify
|
* Calamares is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -16,6 +17,7 @@
|
|||||||
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import io.calamares.core 1.0
|
||||||
import io.calamares.ui 1.0
|
import io.calamares.ui 1.0
|
||||||
|
|
||||||
import QtQuick 2.7
|
import QtQuick 2.7
|
||||||
@ -33,35 +35,64 @@ Rectangle {
|
|||||||
id: recommended
|
id: recommended
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.topMargin: 20
|
anchors.topMargin: 10
|
||||||
|
horizontalAlignment: TextEdit.AlignHCenter
|
||||||
width: 640
|
width: 640
|
||||||
font.pointSize: 12
|
font.pointSize: 11
|
||||||
textFormat: Text.RichText
|
textFormat: Text.RichText
|
||||||
antialiasing: true
|
antialiasing: true
|
||||||
activeFocusOnPress: false
|
activeFocusOnPress: false
|
||||||
wrapMode: Text.WordWrap
|
wrapMode: Text.WordWrap
|
||||||
|
|
||||||
text: qsTr("<p>This computer does not satisfy some of the recommended requirements for setting up %1.</p>
|
text: qsTr("<p>This computer does not satisfy some of the recommended requirements for setting up %1.<br/>
|
||||||
<p>Setup can continue, but some features might be disabled.</p>").arg(Branding.string(Branding.VersionedName))
|
Setup can continue, but some features might be disabled.</p>").arg(Branding.string(Branding.VersionedName))
|
||||||
}
|
}
|
||||||
|
|
||||||
TextArea {
|
Rectangle {
|
||||||
|
width: 640
|
||||||
|
height: 400
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.top: recommended.bottom
|
anchors.top: recommended.bottom
|
||||||
anchors.topMargin: 20
|
anchors.topMargin: 5
|
||||||
width: 640
|
|
||||||
background: Rectangle {
|
|
||||||
implicitWidth: 640
|
|
||||||
implicitHeight: 50
|
|
||||||
border.color: "#ff0000"
|
|
||||||
color: "#b0e0e6"
|
|
||||||
}
|
|
||||||
font.pointSize: 12
|
|
||||||
textFormat: Text.RichText
|
|
||||||
antialiasing: true
|
|
||||||
activeFocusOnPress: false
|
|
||||||
wrapMode: Text.WordWrap
|
|
||||||
|
|
||||||
text: qsTr("<p>The system is not connected to the internet.</p>")//.arg(requirementsModel)
|
Component {
|
||||||
|
id: requirementsDelegate
|
||||||
|
|
||||||
|
Item {
|
||||||
|
width: 640
|
||||||
|
height: 40
|
||||||
|
|
||||||
|
Column {
|
||||||
|
anchors.centerIn: parent
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
implicitWidth: 640
|
||||||
|
implicitHeight: 40
|
||||||
|
border.color: satisfied ? "#228b22" : "#ffa411"
|
||||||
|
color: satisfied ? "#f0fff0" : "#ffefd5"
|
||||||
|
|
||||||
|
Image {
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.margins: 20
|
||||||
|
source: satisfied ? "qrc:/data/images/yes.svgz" : "qrc:/data/images/information.svgz"
|
||||||
|
}
|
||||||
|
|
||||||
|
Text {
|
||||||
|
text: ( satisfied ? 'Met: ' : 'Missing: ' ) + name + " " + details
|
||||||
|
anchors.centerIn: parent
|
||||||
|
font.pointSize: 11
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ListView {
|
||||||
|
anchors.fill: parent
|
||||||
|
spacing: 5
|
||||||
|
model: config.requirementsModel
|
||||||
|
delegate: requirementsDelegate
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
/* === This file is part of Calamares - <https://github.com/calamares> ===
|
/* === This file is part of Calamares - <https://github.com/calamares> ===
|
||||||
*
|
*
|
||||||
* Copyright 2020, Anke Boersma <demm@kaosx.us>
|
* Copyright 2020, Anke Boersma <demm@kaosx.us>
|
||||||
|
* Copyright 2020, Adriaan de Groot <groot@kde.org>
|
||||||
*
|
*
|
||||||
* Calamares is free software: you can redistribute it and/or modify
|
* Calamares is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -16,6 +17,7 @@
|
|||||||
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import io.calamares.core 1.0
|
||||||
import io.calamares.ui 1.0
|
import io.calamares.ui 1.0
|
||||||
|
|
||||||
import QtQuick 2.7
|
import QtQuick 2.7
|
||||||
@ -33,35 +35,65 @@ Rectangle {
|
|||||||
id: required
|
id: required
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.topMargin: 20
|
anchors.topMargin: 10
|
||||||
|
horizontalAlignment: TextEdit.AlignHCenter
|
||||||
width: 640
|
width: 640
|
||||||
font.pointSize: 12
|
font.pointSize: 11
|
||||||
textFormat: Text.RichText
|
textFormat: Text.RichText
|
||||||
antialiasing: true
|
antialiasing: true
|
||||||
activeFocusOnPress: false
|
activeFocusOnPress: false
|
||||||
wrapMode: Text.WordWrap
|
wrapMode: Text.WordWrap
|
||||||
|
|
||||||
text: qsTr("<p>This computer does not satisfy the minimum requirements for setting up %1.</p>
|
text: qsTr("<p>This computer does not satisfy the minimum requirements for installing %1.<br/>
|
||||||
<p>Setup cannot continue.</p>").arg(Branding.string(Branding.VersionedName))
|
Installation cannot continue.</p>").arg(Branding.string(Branding.VersionedName))
|
||||||
}
|
}
|
||||||
|
|
||||||
TextArea {
|
Rectangle {
|
||||||
|
width: 640
|
||||||
|
height: 400
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.top: required.bottom
|
anchors.top: required.bottom
|
||||||
anchors.topMargin: 20
|
anchors.topMargin: 5
|
||||||
width: 640
|
|
||||||
background: Rectangle {
|
|
||||||
implicitWidth: 640
|
|
||||||
implicitHeight: 50
|
|
||||||
border.color: "#ff0000"
|
|
||||||
color: "#ffc0cb"
|
|
||||||
}
|
|
||||||
font.pointSize: 12
|
|
||||||
textFormat: Text.RichText
|
|
||||||
antialiasing: true
|
|
||||||
activeFocusOnPress: false
|
|
||||||
wrapMode: Text.WordWrap
|
|
||||||
|
|
||||||
text: qsTr("<p>The installer is not running with administrator rights.</p>")//.arg(requirementsModel)
|
Component {
|
||||||
|
id: requirementsDelegate
|
||||||
|
|
||||||
|
Item {
|
||||||
|
width: 640
|
||||||
|
height: 40
|
||||||
|
|
||||||
|
Column {
|
||||||
|
anchors.centerIn: parent
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
implicitWidth: 640
|
||||||
|
implicitHeight: 40
|
||||||
|
border.color: mandatory ? "#228b22" : "#ff0000"
|
||||||
|
color: mandatory ? "#f0fff0" : "#ffc0cb"
|
||||||
|
|
||||||
|
Image {
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.margins: 20
|
||||||
|
source: mandatory ? "qrc:/data/images/yes.svgz" : "qrc:/data/images/no.svgz"
|
||||||
|
}
|
||||||
|
|
||||||
|
Text {
|
||||||
|
text: ( mandatory ? 'Met: ' : 'Failed: ' ) + name + " " + details
|
||||||
|
anchors.centerIn: parent
|
||||||
|
font.pointSize: 11
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ListView {
|
||||||
|
anchors.fill: parent
|
||||||
|
spacing: 5
|
||||||
|
model: config.requirementsModel
|
||||||
|
delegate: requirementsDelegate
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,3 +25,40 @@ showReleaseNotesUrl: true
|
|||||||
# branding.desc string)
|
# branding.desc string)
|
||||||
#
|
#
|
||||||
# showDonateUrl: https://kde.org/community/donations/
|
# showDonateUrl: https://kde.org/community/donations/
|
||||||
|
|
||||||
|
# Requirements checking. These are general, generic, things
|
||||||
|
# that are checked. They may not match with the actual requirements
|
||||||
|
# imposed by other modules in the system.
|
||||||
|
requirements:
|
||||||
|
# Amount of available disk, in GiB. Floating-point is allowed here.
|
||||||
|
# Note that this does not account for *usable* disk, so it is possible
|
||||||
|
# to pass this requirement, yet have no space to install to.
|
||||||
|
requiredStorage: 5.5
|
||||||
|
|
||||||
|
# Amount of available RAM, in GiB. Floating-point is allowed here.
|
||||||
|
requiredRam: 1.0
|
||||||
|
|
||||||
|
# To check for internet connectivity, Calamares does a HTTP GET
|
||||||
|
# on this URL; on success (e.g. HTTP code 200) internet is OK.
|
||||||
|
internetCheckUrl: http://google.com
|
||||||
|
|
||||||
|
# List conditions to check. Each listed condition will be
|
||||||
|
# probed in some way, and yields true or false according to
|
||||||
|
# the host system satisfying the condition.
|
||||||
|
#
|
||||||
|
# This sample file lists all the conditions that are known.
|
||||||
|
check:
|
||||||
|
- storage
|
||||||
|
- ram
|
||||||
|
- power
|
||||||
|
- internet
|
||||||
|
- root
|
||||||
|
- screen
|
||||||
|
# List conditions that **must** be satisfied (from the list
|
||||||
|
# of conditions, above) for installation to proceed.
|
||||||
|
# If any of these conditions are not met, the user cannot
|
||||||
|
# continue past the welcome page.
|
||||||
|
required:
|
||||||
|
# - storage
|
||||||
|
- ram
|
||||||
|
# - root
|
||||||
|
@ -57,16 +57,10 @@ Page
|
|||||||
}
|
}
|
||||||
|
|
||||||
Recommended {
|
Recommended {
|
||||||
property var required: "yes" //requirementsModel
|
|
||||||
property var satisfied: "yes" //satisfiedRequirements
|
|
||||||
property var requiredMet: (required != satisfied) ? true : false
|
|
||||||
visible: !config.requirementsModel.satisfiedRequirements
|
visible: !config.requirementsModel.satisfiedRequirements
|
||||||
}
|
}
|
||||||
|
|
||||||
Requirements {
|
Requirements {
|
||||||
property var required: "yes" //requirementsModel
|
|
||||||
property var mandatory: "yes" //satisfiedMandatory
|
|
||||||
property var mandatoryMet: (required != mandatory) ? true : false
|
|
||||||
visible: !config.requirementsModel.satisfiedMandatory
|
visible: !config.requirementsModel.satisfiedMandatory
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user