Compare commits
45 Commits
loaderqueu
...
tmp
| Author | SHA1 | Date | |
|---|---|---|---|
| c6371cc151 | |||
| 678aeeba58 | |||
| 8009e357ed | |||
| 0f242c944a | |||
| e04b3b69e8 | |||
|
277603cf60
|
|||
|
2cce754737
|
|||
| 23edb4e685 | |||
| 63be1deec3 | |||
| 09edbfeffb | |||
| dd1a91fbbd | |||
| 559daeaa53 | |||
|
8d56cc49df
|
|||
|
80ca6b23eb
|
|||
|
f75efc73a0
|
|||
|
9c0c5ea291
|
|||
| 767a7bac29 | |||
|
3cad76deef
|
|||
|
61ae8c9919
|
|||
| c1a7c4aefb | |||
| 07510419ad | |||
| e48d3912e7 | |||
| 664af6eca5 | |||
| df28217213 | |||
| edcade553c | |||
| cebdcaa19a | |||
| b1e2564198 | |||
| 49424cfeb0 | |||
| 5d0227329a | |||
| f1a447696e | |||
|
|
47cda51f8f | ||
|
|
18e68245c1 | ||
| d8518318d9 | |||
| adaca962ac | |||
| 2681a22b83 | |||
| c32a8b802f | |||
| a391c689e7 | |||
| 787d4c8b5b | |||
| 8816ac53f4 | |||
|
|
51e89e58dd | ||
| 650b048941 | |||
|
|
d8d5a1fb26 | ||
|
|
85f05e8121 | ||
|
|
c28c9b8114 | ||
|
|
935f21ace5 |
3
.gitignore
vendored
@@ -5,3 +5,6 @@
|
||||
build/
|
||||
*.kdev4
|
||||
*.qmlc
|
||||
b.sh
|
||||
modules/netinstall/
|
||||
#modules/packages/
|
||||
|
||||
13
CHANGES
@@ -6,6 +6,19 @@ This is the changelog for Calamares-Extensions. For each release, the major
|
||||
changes and contributors are listed. Note that Calamares-Extensions does not
|
||||
have a historical changelog -- this log starts with version 1.0.0.
|
||||
|
||||
# 3.3.1 (2024-01-15)
|
||||
|
||||
This is the first *calamares-extensions* release to go with a Calamares 3.3
|
||||
release. The extensions now require Calamares 3.3. There is a branch for
|
||||
3.2 legacy support but no releases are planned for it. The main reason
|
||||
for this release is to have a 3.3-compatible release of *-extensions* at all.
|
||||
|
||||
This release contains contributions from (alphabetically by first name):
|
||||
- Adriaan de Groot
|
||||
- Anke Boersma
|
||||
- undef
|
||||
|
||||
|
||||
# 1.3.2 (2023-08-28)
|
||||
|
||||
We skipped a couple of releases in the release-notes, then tagged
|
||||
|
||||
@@ -32,6 +32,9 @@
|
||||
# In this repository, there is just one "group" to which USE_* applies:
|
||||
# USE_os : operating-system-specific modules.
|
||||
#
|
||||
# There is a knob WITH_QT6 which can be used to build against Qt6 rather
|
||||
# than Qt5. This must match what Calamares itself is built with.
|
||||
#
|
||||
### NOTES
|
||||
#
|
||||
# Call this CMake file in script mode, e.g. `cmake -P CMakeLists.txt`
|
||||
@@ -40,7 +43,7 @@
|
||||
#
|
||||
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
|
||||
|
||||
set( CALAMARES_EXTENSIONS_VERSION 1.4.0 )
|
||||
set( CALAMARES_EXTENSIONS_VERSION 3.3.5 )
|
||||
|
||||
include( ${CMAKE_CURRENT_LIST_DIR}/CMakeModules/ExtendedVersion.cmake )
|
||||
if ( CMAKE_SCRIPT_MODE_FILE )
|
||||
@@ -83,9 +86,11 @@ set_package_properties(
|
||||
# consumers by loading the developer's config from a build
|
||||
# directory (which doesn't have the rest of the config
|
||||
# installed inside it).
|
||||
set( CALAMARES_VERSION_REQUIRED 3.3.0 )
|
||||
set( CALAMARES_VERSION_REQUIRED 3.3.5 )
|
||||
message(STATUS "Looking for Calamares system-wide")
|
||||
find_package(Calamares ${CALAMARES_VERSION_REQUIRED} NO_CMAKE_PACKAGE_REGISTRY)
|
||||
if (NOT TARGET Calamares::calamares OR NOT TARGET Calamares::calamaresui)
|
||||
message(STATUS "Looking for Calamares in the package registry")
|
||||
find_package(Calamares ${CALAMARES_VERSION_REQUIRED} REQUIRED)
|
||||
endif()
|
||||
|
||||
@@ -93,6 +98,32 @@ message(STATUS "Found Calamares version ${Calamares_VERSION}")
|
||||
message(STATUS " libraries ${Calamares_LIB_DIRS}")
|
||||
message(STATUS "")
|
||||
|
||||
### EXTRACTING DEPENDENCIES AND CONFIGURATION FROM CALAMARES
|
||||
#
|
||||
#
|
||||
if(WITH_QT6)
|
||||
set(kfname "KF6")
|
||||
set(KF_VERSION 5.240) # KDE Neon weirdness
|
||||
else()
|
||||
message(STATUS "Building Calamares with Qt5")
|
||||
set(kfname "KF5")
|
||||
set(KF_VERSION 5.78)
|
||||
# API that was deprecated before Qt 5.15 causes a compile error
|
||||
add_compile_definitions(QT_DISABLE_DEPRECATED_BEFORE=0x050f00)
|
||||
endif()
|
||||
|
||||
include( FeatureSummary )
|
||||
find_package(${kfname}CoreAddons ${KF_VERSION} QUIET)
|
||||
set_package_properties(
|
||||
${kfname}CoreAddons
|
||||
PROPERTIES
|
||||
TYPE REQUIRED
|
||||
DESCRIPTION "KDE Framework CoreAddons"
|
||||
URL "https://api.kde.org/frameworks/"
|
||||
PURPOSE "Essential Framework for AboutData and Macros"
|
||||
)
|
||||
|
||||
|
||||
### CMAKE SETUP
|
||||
#
|
||||
# Enable IN_LIST
|
||||
@@ -132,10 +163,18 @@ calamares_add_module_subdirectory( modules/basestrap LIST_SKIPPED_MODULES )
|
||||
calamares_add_module_subdirectory( modules/services-artix LIST_SKIPPED_MODULES )
|
||||
calamares_add_module_subdirectory( modules/postcfg LIST_SKIPPED_MODULES )
|
||||
calamares_add_module_subdirectory( modules/packagechooser LIST_SKIPPED_MODULES )
|
||||
calamares_add_module_subdirectory( modules/packagechooserq LIST_SKIPPED_MODULES )
|
||||
|
||||
message(STATUS "Calamares extensions ${CALAMARES_EXTENSIONS_VERSION} for Calamares version ${Calamares_VERSION}")
|
||||
|
||||
# If modules cannot be built, they usually call a macro
|
||||
# which builds a list of explanations; show that list.
|
||||
calamares_explain_skipped_modules( ${LIST_SKIPPED_MODULES} )
|
||||
|
||||
install(PROGRAMS scripts/calamares-config-switcher DESTINATION bin)
|
||||
|
||||
if(NOT DEFINED CMAKE_INSTALL_SYSCONFDIR)
|
||||
set(CMAKE_INSTALL_SYSCONFDIR "/etc")
|
||||
endif()
|
||||
|
||||
install(FILES scripts/calamares-config-switcher.conf DESTINATION ${CMAKE_INSTALL_SYSCONFDIR})
|
||||
install(FILES scripts/calamares-config-switcher.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
|
||||
|
||||
BIN
branding/artix-next/artix-banner.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
branding/artix-next/artix-logo.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
205
branding/artix-next/artix-logo.svg
Normal file
@@ -0,0 +1,205 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="46.72533mm"
|
||||
height="46.72533mm"
|
||||
viewBox="0 0 46.72533 46.725331"
|
||||
version="1.1"
|
||||
id="svg4593"
|
||||
inkscape:version="0.92.4 5da689c313, 2019-01-14"
|
||||
sodipodi:docname="Artix_logo_square_frame.svg"
|
||||
inkscape:export-filename="/tmp/Artix_logo_4096.png"
|
||||
inkscape:export-xdpi="2226.6001"
|
||||
inkscape:export-ydpi="2226.6001">
|
||||
<defs
|
||||
id="defs4587">
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient1200-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(-1,0,0,1,114.83738,50.597052)"
|
||||
x1="70.512688"
|
||||
y1="62.847496"
|
||||
x2="63.043533"
|
||||
y2="59.204388" />
|
||||
<linearGradient
|
||||
id="linearGradient887"
|
||||
inkscape:collect="always">
|
||||
<stop
|
||||
id="stop883"
|
||||
offset="0"
|
||||
style="stop-color:#ffffff;stop-opacity:0.36470589" />
|
||||
<stop
|
||||
id="stop885"
|
||||
offset="1"
|
||||
style="stop-color:#ffffff;stop-opacity:0" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient1200-8"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-21.06111,67.884718)"
|
||||
x1="70.512688"
|
||||
y1="62.847496"
|
||||
x2="55.280762"
|
||||
y2="56.393845" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9-8-1"
|
||||
x1="70.724701"
|
||||
y1="12.29244"
|
||||
x2="81.157883"
|
||||
y2="19.324032"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-11.753608,126.58468)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient1849">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0.10217391"
|
||||
offset="0"
|
||||
id="stop1845" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0.30434781"
|
||||
offset="1"
|
||||
id="stop1847" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9-8"
|
||||
x1="70.724709"
|
||||
y1="12.29244"
|
||||
x2="87.0924"
|
||||
y2="26.894571"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-26.40001,101.15201)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9"
|
||||
x1="105.83431"
|
||||
y1="15.35424"
|
||||
x2="80.208908"
|
||||
y2="30.53084"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-56.382736,115.37787)" />
|
||||
<linearGradient
|
||||
gradientTransform="translate(-16.57152,-7.1090256)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient881"
|
||||
x1="75.542618"
|
||||
y1="145.98615"
|
||||
x2="81.200447"
|
||||
y2="143.22675"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="3.1786659"
|
||||
inkscape:cx="55.055788"
|
||||
inkscape:cy="48.998008"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:window-width="1904"
|
||||
inkscape:window-height="1008"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:pagecheckerboard="true"
|
||||
borderlayer="false"
|
||||
inkscape:showpageshadow="true" />
|
||||
<metadata
|
||||
id="metadata4590">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-23.826174,-99.183391)">
|
||||
<g
|
||||
id="g213"
|
||||
transform="translate(0.57361468)">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccc"
|
||||
style="display:inline;fill:#10a0cc;fill-opacity:1;stroke:none;stroke-width:0.09994879;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 46.614964,99.183394 -8.03465,16.473926 22.112351,12.38944 z m -10.46189,21.450886 -12.3269,25.27444 36.57813,-15.11174 z m 26.955981,12.3672 -11.536252,6.62286 17.831472,6.28438 z"
|
||||
id="path886"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="Base" />
|
||||
<path
|
||||
style="fill:url(#linearGradient881);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 58.971096,138.87713 4.137969,-5.87613 6.29521,12.90771 z"
|
||||
id="path947"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="Light" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 23.826174,145.90872 25.6254,-15.1766 10.95269,0.065 z"
|
||||
id="path1434-9-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9-8);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 60.692734,128.04658 -22.11223,-12.38962 5.74419,-2.21251 z"
|
||||
id="path1434-9-4-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9-8-1);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 69.404275,145.90872 -17.831451,-6.28419 7.398272,-0.7474 z"
|
||||
id="path1434-9-4-2-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1200-8);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 23.826174,145.90872 25.6254,-15.1766 -13.29865,-10.09774 z"
|
||||
id="path1381-5-9"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Light" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1200-5);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 60.692724,128.04658 -16.36803,-14.60213 2.29027,-14.261056 z"
|
||||
id="path1381-5-7"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Light" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.4 KiB |
@@ -8,7 +8,7 @@ welcomeStyleCalamares: false
|
||||
welcomeExpandingLogo: true
|
||||
|
||||
windowExpanding: normal
|
||||
windowSize: 920px,630px
|
||||
windowSize: 1000px,800px
|
||||
windowPlacement: center
|
||||
|
||||
sidebar: qml,top
|
||||
@@ -22,14 +22,15 @@ strings:
|
||||
versionedName: Artix Linux "rolling"
|
||||
shortVersionedName: Artix rolling
|
||||
bootloaderEntryName: Artix
|
||||
productUrl: https://www.artixlinux.org/
|
||||
productUrl: https://artixlinux.org/
|
||||
supportUrl: https://github.com/calamares/calamares/issues
|
||||
knownIssuesUrl: https://calamares.io/about/
|
||||
releaseNotesUrl: https://calamares.io/about/
|
||||
|
||||
images:
|
||||
productLogo: "artix.png"
|
||||
productIcon: "artix.png"
|
||||
productBanner: "artix-banner.png"
|
||||
productLogo: "artix-logo.svg"
|
||||
productIcon: "artix-icon.png"
|
||||
productWelcome: "languages.png"
|
||||
|
||||
slideshow: "show.qml"
|
||||
|
||||
BIN
branding/artix-next/map.png
Normal file
|
After Width: | Height: | Size: 662 KiB |
1487
branding/artix-next/world-map.svg
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
branding/artix/artix-banner.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
205
branding/artix/artix-icon.svg
Normal file
@@ -0,0 +1,205 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="46.72533mm"
|
||||
height="46.72533mm"
|
||||
viewBox="0 0 46.72533 46.725331"
|
||||
version="1.1"
|
||||
id="svg4593"
|
||||
inkscape:version="0.92.4 5da689c313, 2019-01-14"
|
||||
sodipodi:docname="Artix_logo_square_frame.svg"
|
||||
inkscape:export-filename="/tmp/Artix_logo_4096.png"
|
||||
inkscape:export-xdpi="2226.6001"
|
||||
inkscape:export-ydpi="2226.6001">
|
||||
<defs
|
||||
id="defs4587">
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient1200-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(-1,0,0,1,114.83738,50.597052)"
|
||||
x1="70.512688"
|
||||
y1="62.847496"
|
||||
x2="63.043533"
|
||||
y2="59.204388" />
|
||||
<linearGradient
|
||||
id="linearGradient887"
|
||||
inkscape:collect="always">
|
||||
<stop
|
||||
id="stop883"
|
||||
offset="0"
|
||||
style="stop-color:#ffffff;stop-opacity:0.36470589" />
|
||||
<stop
|
||||
id="stop885"
|
||||
offset="1"
|
||||
style="stop-color:#ffffff;stop-opacity:0" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient1200-8"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-21.06111,67.884718)"
|
||||
x1="70.512688"
|
||||
y1="62.847496"
|
||||
x2="55.280762"
|
||||
y2="56.393845" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9-8-1"
|
||||
x1="70.724701"
|
||||
y1="12.29244"
|
||||
x2="81.157883"
|
||||
y2="19.324032"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-11.753608,126.58468)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient1849">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0.10217391"
|
||||
offset="0"
|
||||
id="stop1845" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0.30434781"
|
||||
offset="1"
|
||||
id="stop1847" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9-8"
|
||||
x1="70.724709"
|
||||
y1="12.29244"
|
||||
x2="87.0924"
|
||||
y2="26.894571"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-26.40001,101.15201)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9"
|
||||
x1="105.83431"
|
||||
y1="15.35424"
|
||||
x2="80.208908"
|
||||
y2="30.53084"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-56.382736,115.37787)" />
|
||||
<linearGradient
|
||||
gradientTransform="translate(-16.57152,-7.1090256)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient881"
|
||||
x1="75.542618"
|
||||
y1="145.98615"
|
||||
x2="81.200447"
|
||||
y2="143.22675"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="3.1786659"
|
||||
inkscape:cx="55.055788"
|
||||
inkscape:cy="48.998008"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:window-width="1904"
|
||||
inkscape:window-height="1008"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:pagecheckerboard="true"
|
||||
borderlayer="false"
|
||||
inkscape:showpageshadow="true" />
|
||||
<metadata
|
||||
id="metadata4590">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-23.826174,-99.183391)">
|
||||
<g
|
||||
id="g213"
|
||||
transform="translate(0.57361468)">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccc"
|
||||
style="display:inline;fill:#10a0cc;fill-opacity:1;stroke:none;stroke-width:0.09994879;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 46.614964,99.183394 -8.03465,16.473926 22.112351,12.38944 z m -10.46189,21.450886 -12.3269,25.27444 36.57813,-15.11174 z m 26.955981,12.3672 -11.536252,6.62286 17.831472,6.28438 z"
|
||||
id="path886"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="Base" />
|
||||
<path
|
||||
style="fill:url(#linearGradient881);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 58.971096,138.87713 4.137969,-5.87613 6.29521,12.90771 z"
|
||||
id="path947"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="Light" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 23.826174,145.90872 25.6254,-15.1766 10.95269,0.065 z"
|
||||
id="path1434-9-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9-8);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 60.692734,128.04658 -22.11223,-12.38962 5.74419,-2.21251 z"
|
||||
id="path1434-9-4-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9-8-1);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 69.404275,145.90872 -17.831451,-6.28419 7.398272,-0.7474 z"
|
||||
id="path1434-9-4-2-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1200-8);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 23.826174,145.90872 25.6254,-15.1766 -13.29865,-10.09774 z"
|
||||
id="path1381-5-9"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Light" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1200-5);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 60.692724,128.04658 -16.36803,-14.60213 2.29027,-14.261056 z"
|
||||
id="path1381-5-7"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Light" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.4 KiB |
205
branding/artix/artix-logo.svg
Normal file
@@ -0,0 +1,205 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="46.72533mm"
|
||||
height="46.72533mm"
|
||||
viewBox="0 0 46.72533 46.725331"
|
||||
version="1.1"
|
||||
id="svg4593"
|
||||
inkscape:version="0.92.4 5da689c313, 2019-01-14"
|
||||
sodipodi:docname="Artix_logo_square_frame.svg"
|
||||
inkscape:export-filename="/tmp/Artix_logo_4096.png"
|
||||
inkscape:export-xdpi="2226.6001"
|
||||
inkscape:export-ydpi="2226.6001">
|
||||
<defs
|
||||
id="defs4587">
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient1200-5"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(-1,0,0,1,114.83738,50.597052)"
|
||||
x1="70.512688"
|
||||
y1="62.847496"
|
||||
x2="63.043533"
|
||||
y2="59.204388" />
|
||||
<linearGradient
|
||||
id="linearGradient887"
|
||||
inkscape:collect="always">
|
||||
<stop
|
||||
id="stop883"
|
||||
offset="0"
|
||||
style="stop-color:#ffffff;stop-opacity:0.36470589" />
|
||||
<stop
|
||||
id="stop885"
|
||||
offset="1"
|
||||
style="stop-color:#ffffff;stop-opacity:0" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient1200-8"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-21.06111,67.884718)"
|
||||
x1="70.512688"
|
||||
y1="62.847496"
|
||||
x2="55.280762"
|
||||
y2="56.393845" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9-8-1"
|
||||
x1="70.724701"
|
||||
y1="12.29244"
|
||||
x2="81.157883"
|
||||
y2="19.324032"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-11.753608,126.58468)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient1849">
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0.10217391"
|
||||
offset="0"
|
||||
id="stop1845" />
|
||||
<stop
|
||||
style="stop-color:#000000;stop-opacity:0.30434781"
|
||||
offset="1"
|
||||
id="stop1847" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9-8"
|
||||
x1="70.724709"
|
||||
y1="12.29244"
|
||||
x2="87.0924"
|
||||
y2="26.894571"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-26.40001,101.15201)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient1849"
|
||||
id="linearGradient1851-9"
|
||||
x1="105.83431"
|
||||
y1="15.35424"
|
||||
x2="80.208908"
|
||||
y2="30.53084"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(-56.382736,115.37787)" />
|
||||
<linearGradient
|
||||
gradientTransform="translate(-16.57152,-7.1090256)"
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient887"
|
||||
id="linearGradient881"
|
||||
x1="75.542618"
|
||||
y1="145.98615"
|
||||
x2="81.200447"
|
||||
y2="143.22675"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="3.1786659"
|
||||
inkscape:cx="55.055788"
|
||||
inkscape:cy="48.998008"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:window-width="1904"
|
||||
inkscape:window-height="1008"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:pagecheckerboard="true"
|
||||
borderlayer="false"
|
||||
inkscape:showpageshadow="true" />
|
||||
<metadata
|
||||
id="metadata4590">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-23.826174,-99.183391)">
|
||||
<g
|
||||
id="g213"
|
||||
transform="translate(0.57361468)">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccc"
|
||||
style="display:inline;fill:#10a0cc;fill-opacity:1;stroke:none;stroke-width:0.09994879;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 46.614964,99.183394 -8.03465,16.473926 22.112351,12.38944 z m -10.46189,21.450886 -12.3269,25.27444 36.57813,-15.11174 z m 26.955981,12.3672 -11.536252,6.62286 17.831472,6.28438 z"
|
||||
id="path886"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="Base" />
|
||||
<path
|
||||
style="fill:url(#linearGradient881);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 58.971096,138.87713 4.137969,-5.87613 6.29521,12.90771 z"
|
||||
id="path947"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="Light" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 23.826174,145.90872 25.6254,-15.1766 10.95269,0.065 z"
|
||||
id="path1434-9-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9-8);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 60.692734,128.04658 -22.11223,-12.38962 5.74419,-2.21251 z"
|
||||
id="path1434-9-4-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1851-9-8-1);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 69.404275,145.90872 -17.831451,-6.28419 7.398272,-0.7474 z"
|
||||
id="path1434-9-4-2-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Shadow" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1200-8);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 23.826174,145.90872 25.6254,-15.1766 -13.29865,-10.09774 z"
|
||||
id="path1381-5-9"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Light" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1200-5);fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 60.692724,128.04658 -16.36803,-14.60213 2.29027,-14.261056 z"
|
||||
id="path1381-5-7"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:label="Light" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 144 KiB |
BIN
branding/artix/background.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 6.8 KiB |
@@ -48,7 +48,7 @@ windowExpanding: normal
|
||||
# This setting is ignored if "fullscreen" is selected for
|
||||
# *windowExpanding*, above. If not set, use constants defined
|
||||
# in CalamaresUtilsGui, 800x520.
|
||||
windowSize: 800px,520px
|
||||
windowSize: 1100px,700px
|
||||
|
||||
# Placement of Calamares window. Either "center" or "free".
|
||||
# Whether "center" actually works does depend on the window
|
||||
@@ -162,9 +162,9 @@ strings:
|
||||
#
|
||||
# These filenames can also use substitutions from os-release (see above).
|
||||
images:
|
||||
productBanner: "banner.png"
|
||||
productIcon: "logo.png"
|
||||
productLogo: "logo.png"
|
||||
productBanner: "artix-banner.png"
|
||||
productLogo: "artix-logo.svg"
|
||||
productIcon: "artix-icon.svg"
|
||||
# productWallpaper: "wallpaper.png"
|
||||
productWelcome: "languages.png"
|
||||
|
||||
@@ -216,7 +216,7 @@ slideshow: "show.qml"
|
||||
# the QML components).
|
||||
#
|
||||
# An image slideshow does not need to have the API defined.
|
||||
slideshowAPI: 2
|
||||
slideshowAPI: 1
|
||||
|
||||
|
||||
# These options are to customize online uploading of logs to pastebins:
|
||||
|
||||
|
Before Width: | Height: | Size: 399 KiB After Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 818 KiB After Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 332 KiB |
BIN
branding/artix/games.png
Normal file
|
After Width: | Height: | Size: 720 KiB |
BIN
branding/artix/inits.png
Normal file
|
After Width: | Height: | Size: 217 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 2.7 MiB |
|
Before Width: | Height: | Size: 4.4 KiB |
BIN
branding/artix/map.png
Normal file
|
After Width: | Height: | Size: 662 KiB |
|
Before Width: | Height: | Size: 363 KiB After Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 359 KiB After Width: | Height: | Size: 957 KiB |
|
Before Width: | Height: | Size: 873 KiB After Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 4.3 MiB |
BIN
branding/artix/packages3.png
Normal file
|
After Width: | Height: | Size: 5.5 MiB |
BIN
branding/artix/packages4.png
Normal file
|
After Width: | Height: | Size: 6.0 MiB |
|
Before Width: | Height: | Size: 502 KiB After Width: | Height: | Size: 1.5 MiB |
|
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 209 KiB |
@@ -27,152 +27,249 @@ Presentation
|
||||
id: presentation
|
||||
|
||||
Timer {
|
||||
interval: 10000
|
||||
interval: 5000
|
||||
running: true
|
||||
repeat: true
|
||||
onTriggered: presentation.goToNextSlide()
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic0
|
||||
source: "thanks.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic00
|
||||
source: "artix.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic02
|
||||
source: "tools.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic03
|
||||
source: "desktops.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic04
|
||||
source: "productivity.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic06
|
||||
source: "browsers.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic07
|
||||
source: "office.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic08
|
||||
source: "multimedia.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic09
|
||||
source: "web.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic11
|
||||
source: "packages1.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic13
|
||||
source: "packages2.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
source: "packages3.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
source: "packages4.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
Image {
|
||||
id: pic15
|
||||
source: "customise.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.Stretch
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
|
||||
Slide {
|
||||
Image {
|
||||
id: pic16
|
||||
source: "rolling.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
Image {
|
||||
source: "background.png"
|
||||
width: parent.width * 4; height: parent.height * 4
|
||||
fillMode: Image.Stretch
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: -20
|
||||
}
|
||||
Image {
|
||||
source: "rolling.png"
|
||||
width: parent.width * 1.12; height: parent.height * 1.5
|
||||
fillMode: Image.PreserveAspectFit
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: - parent.height / 16
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 157 KiB |
BIN
branding/artix/theme.png
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 364 KiB |
|
Before Width: | Height: | Size: 136 KiB After Width: | Height: | Size: 300 KiB |
@@ -43,6 +43,8 @@ backend: dummy
|
||||
# when set to true. If missing, false is assumed.
|
||||
# *copy_pacconf* is a boolean that includes copying the host's pacman.conf
|
||||
# to the install root. If missing, false is assumed.
|
||||
# *requirements* filesystem requirements to install base
|
||||
# *keyrings* list of keyrings to initialize and populate
|
||||
|
||||
pacman:
|
||||
num_retries: 0
|
||||
@@ -51,27 +53,68 @@ pacman:
|
||||
handle_keyrings: false
|
||||
copy_pacconf: false
|
||||
requirements:
|
||||
- name: /etc
|
||||
- dest: /etc
|
||||
mode: "0o755"
|
||||
- name: /var
|
||||
- dest: /var
|
||||
mode: "0o755"
|
||||
- name: /var/cache
|
||||
- dest: /var/cache
|
||||
mode: "0o755"
|
||||
- name: /var/cache/pacman
|
||||
- dest: /var/cache/pacman
|
||||
mode: "0o755"
|
||||
- name: /var/cache/pacman/pkg
|
||||
- dest: /var/cache/pacman/pkg
|
||||
mode: "0o755"
|
||||
- name: /var/lib
|
||||
- dest: /var/lib
|
||||
mode: "0o755"
|
||||
- name: /var/lib/pacman
|
||||
- dest: /var/lib/pacman
|
||||
mode: "0o755"
|
||||
keyrings:
|
||||
- artix
|
||||
|
||||
|
||||
# the artix base package allows selection of the init system tied to elogind
|
||||
# this option is artix specific
|
||||
# base_init: elogind
|
||||
|
||||
|
||||
# List of maps with package operations such as install or remove.
|
||||
# Distro developers can provide a list of packages to remove
|
||||
# from the installed system (for instance packages meant only
|
||||
# for the live system).
|
||||
#
|
||||
# A job implementing a distro specific logic to determine other
|
||||
# packages that need to be installed or removed can run before
|
||||
# this one. Distro developers may want to install locale packages
|
||||
# or remove drivers not needed on the installed system.
|
||||
# Such a job would populate a list of dictionaries in the global
|
||||
# storage called "packageOperations" and that list is processed
|
||||
# after the static list in the job configuration (i.e. the list
|
||||
# that is in this configuration file).
|
||||
#
|
||||
# Allowed package operations are:
|
||||
# - *install*, *try_install*: will call the package manager to
|
||||
# install one or more packages. The install target will
|
||||
# abort the whole installation if package-installation
|
||||
# fails, while try_install carries on. Packages may be
|
||||
# listed as (localized) names, or as (localized) package-data.
|
||||
# See below for the description of the format.
|
||||
# - *localInstall*: this is used to call the package manager
|
||||
# to install a package from a path-to-a-package. This is
|
||||
# useful if you have a static package archive on the install media.
|
||||
# The *pacman* package manager is the only one to specially support
|
||||
# this operation (all others treat this the same as *install*).
|
||||
# - *remove*, *try_remove*: will call the package manager to
|
||||
# remove one or more packages. The remove target will
|
||||
# abort the whole installation if package-removal fails,
|
||||
# while try_remove carries on. Packages may be listed as
|
||||
# (localized) names.
|
||||
# One additional key is recognized, to help netinstall out:
|
||||
# - *source*: ignored, does get logged
|
||||
# Any other key is ignored, and logged as a warning.
|
||||
#
|
||||
# There are two formats for naming packages: as a name or as package-data,
|
||||
# which is an object notation providing package-name, as well as pre- and
|
||||
# post-install scripts.
|
||||
|
||||
operations:
|
||||
- install:
|
||||
- base
|
||||
|
||||
@@ -239,6 +239,23 @@ class PackageManager(metaclass=abc.ABCMeta):
|
||||
# even the Dummy implementation.
|
||||
#
|
||||
|
||||
class PMDummy(PackageManager):
|
||||
backend = "dummy"
|
||||
|
||||
def install(self, pkgs, from_local=False):
|
||||
from time import sleep
|
||||
libcalamares.utils.debug("Dummy backend: Installing " + str(pkgs))
|
||||
sleep(3)
|
||||
|
||||
def remove(self, pkgs):
|
||||
from time import sleep
|
||||
libcalamares.utils.debug("Dummy backend: Removing " + str(pkgs))
|
||||
sleep(3)
|
||||
|
||||
def run(self, script):
|
||||
libcalamares.utils.debug("Dummy backend: Running script '" + str(script) + "'")
|
||||
|
||||
|
||||
class PMPacman(PackageManager):
|
||||
backend = "pacman"
|
||||
|
||||
@@ -310,29 +327,13 @@ class PMPacman(PackageManager):
|
||||
|
||||
install_root = libcalamares.globalstorage.value("rootMountPoint")
|
||||
|
||||
cal_umask = os.umask(0)
|
||||
for target in self.pacman_requirements:
|
||||
dest = install_root + target["name"]
|
||||
if not os.path.exists(dest):
|
||||
mod = int(target["mode"],8)
|
||||
os.mkdir(dest, mode=mod)
|
||||
libcalamares.utils.debug("Mode: {!s}".format(oct(mod)))
|
||||
libcalamares.utils.debug("Created: {!s}".format(dest))
|
||||
self.setup_requirements(install_root)
|
||||
|
||||
path = join(install_root, "run")
|
||||
os.chmod(path, 0o755)
|
||||
os.umask(cal_umask)
|
||||
|
||||
f = "etc/resolv.conf"
|
||||
if os.path.exists(join("/",f)):
|
||||
shutil.copy2(join("/",f), join(install_root, f))
|
||||
self.copy_file(install_root, "etc/resolv.conf")
|
||||
|
||||
command = ["pacman"]
|
||||
|
||||
cachedir = join(install_root, "var/cache/pacman/pkg")
|
||||
dbdir = join(install_root, "var/lib/pacman")
|
||||
pacman_args = ["--root", install_root, "--dbpath", dbdir, "--cachedir", cachedir]
|
||||
command.extend(pacman_args)
|
||||
command.extend(self.get_optargs(install_root))
|
||||
|
||||
# Don't ask for user intervention, take the default action
|
||||
command.append("--noconfirm")
|
||||
@@ -340,10 +341,10 @@ class PMPacman(PackageManager):
|
||||
# Don't report download progress for each file
|
||||
command.append("--noprogressbar")
|
||||
|
||||
if self.pacman_needed_only is True:
|
||||
if self.pacman_needed_only:
|
||||
command.append("--needed")
|
||||
|
||||
if self.pacman_disable_timeout is True:
|
||||
if self.pacman_disable_timeout:
|
||||
command.append("--disable-download-timeout")
|
||||
|
||||
if from_local:
|
||||
@@ -363,14 +364,36 @@ class PMPacman(PackageManager):
|
||||
self.populate_keyring()
|
||||
|
||||
if self.pacman_pacconf:
|
||||
f = "etc/pacman.conf"
|
||||
if os.path.exists(join("/",f)):
|
||||
shutil.copy2(join("/",f), join(install_root, f))
|
||||
self.copy_file(install_root, "etc/pacman.conf")
|
||||
|
||||
def remove(self, pkgs):
|
||||
self.reset_progress()
|
||||
self.run_pacman(["pacman", "-Rs", "--noconfirm"] + pkgs, True)
|
||||
|
||||
def get_optargs(self, rootdir):
|
||||
cachedir = join(rootdir, "var/cache/pacman/pkg")
|
||||
dbpath = join(rootdir, "var/lib/pacman")
|
||||
args = ["--root", rootdir, "--dbpath", dbpath, "--cachedir", cachedir]
|
||||
return args
|
||||
|
||||
def setup_requirements(self, rootdir):
|
||||
cal_umask = os.umask(0)
|
||||
for target in self.pacman_requirements:
|
||||
dest = rootdir + target["dest"]
|
||||
if not os.path.exists(dest):
|
||||
mod = int(target["mode"],8)
|
||||
os.mkdir(dest, mode=mod)
|
||||
libcalamares.utils.debug("Mode: {!s}".format(oct(mod)))
|
||||
libcalamares.utils.debug("Created: {!s}".format(dest))
|
||||
|
||||
path = join(rootdir, "run")
|
||||
os.chmod(path, 0o755)
|
||||
os.umask(cal_umask)
|
||||
|
||||
def copy_file(self, rootdir, f):
|
||||
if os.path.exists(join("/",f)):
|
||||
shutil.copy2(join("/",f), join(rootdir, f))
|
||||
|
||||
def init_keyring(self):
|
||||
target_env_process_output(["pacman-key", "--init"])
|
||||
|
||||
@@ -492,16 +515,14 @@ def run():
|
||||
if identifier == backend:
|
||||
pkgman = impl()
|
||||
break
|
||||
else:
|
||||
return "Bad backend", "backend=\"{}\"".format(backend)
|
||||
else:
|
||||
return "Bad backend", "backend=\"{}\"".format(backend)
|
||||
|
||||
if not libcalamares.globalstorage.value("hasInternet"):
|
||||
libcalamares.utils.warning( "Package installation has been skipped: no internet" )
|
||||
return None
|
||||
|
||||
operations = libcalamares.job.configuration.get("operations", [])
|
||||
# if libcalamares.globalstorage.contains("packageOperations"):
|
||||
# operations += libcalamares.globalstorage.value("packageOperations")
|
||||
|
||||
if libcalamares.job.configuration.get("base_init"):
|
||||
base_init = libcalamares.job.configuration.get("base_init", None)
|
||||
|
||||
@@ -10,9 +10,9 @@ set(_extra_src "")
|
||||
### OPTIONAL AppData XML support in PackageModel
|
||||
#
|
||||
#
|
||||
option(BUILD_APPDATA "Support appdata: items in PackageChooser (requires QtXml)" ON)
|
||||
option(BUILD_APPDATA "Support appdata: items in PackageChooser (requires QtXml)" OFF)
|
||||
if(BUILD_APPDATA)
|
||||
find_package(${qtname} COMPONENTS Xml)
|
||||
find_package(${qtname} REQUIRED COMPONENTS Xml)
|
||||
if(TARGET ${qtname}::Xml)
|
||||
add_definitions(-DHAVE_APPDATA)
|
||||
list(APPEND _extra_libraries ${qtname}::Xml)
|
||||
@@ -23,23 +23,7 @@ endif()
|
||||
### OPTIONAL AppStream support in PackageModel
|
||||
#
|
||||
#
|
||||
option(BUILD_APPSTREAM "Support appstream: items in PackageChooser (requires libappstream-qt)" ON)
|
||||
if(BUILD_APPSTREAM)
|
||||
find_package(AppStreamQt)
|
||||
set_package_properties(
|
||||
AppStreamQt
|
||||
PROPERTIES
|
||||
DESCRIPTION "Support for AppStream (cache) data"
|
||||
URL "https://github.com/ximion/appstream"
|
||||
PURPOSE "AppStream provides package data"
|
||||
TYPE OPTIONAL
|
||||
)
|
||||
if(AppStreamQt_FOUND)
|
||||
add_definitions(-DHAVE_APPSTREAM_VERSION=${AppStreamQt_VERSION_MAJOR})
|
||||
list(APPEND _extra_libraries AppStreamQt)
|
||||
list(APPEND _extra_src ItemAppStream.cpp)
|
||||
endif()
|
||||
endif()
|
||||
include(AppStreamHelper)
|
||||
|
||||
calamares_add_plugin(packagechooser
|
||||
TYPE viewmodule
|
||||
@@ -59,7 +43,11 @@ calamares_add_plugin(packagechooser
|
||||
SHARED_LIB
|
||||
)
|
||||
|
||||
# include(CalamaresAddTest)
|
||||
if(AppStreamQt_FOUND)
|
||||
target_link_libraries(calamares_viewmodule_packagechooser PRIVATE calamares::appstreamqt)
|
||||
target_sources(calamares_viewmodule_packagechooser PRIVATE ItemAppStream.cpp)
|
||||
endif()
|
||||
|
||||
# calamares_add_test(
|
||||
# packagechoosertest
|
||||
# GUI
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
|
||||
#ifdef HAVE_APPSTREAM_VERSION
|
||||
#include "ItemAppStream.h"
|
||||
#include <AppStreamQt/pool.h>
|
||||
#include <memory>
|
||||
#endif
|
||||
|
||||
|
||||
@@ -7,20 +7,16 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/** @brief Loading items from AppData XML files.
|
||||
/** @brief Loading items from AppStream database.
|
||||
*
|
||||
* Only used if QtXML is found, implements PackageItem::fromAppData().
|
||||
* Only used if AppStreamQt is found, implements PackageItem::fromAppStream().
|
||||
*/
|
||||
#include "PackageModel.h"
|
||||
#include "ItemAppStream.h"
|
||||
|
||||
#include "locale/TranslationsModel.h"
|
||||
#include "utils/Logger.h"
|
||||
#include "utils/Variant.h"
|
||||
|
||||
#include <AppStreamQt/image.h>
|
||||
#include <AppStreamQt/pool.h>
|
||||
#include <AppStreamQt/screenshot.h>
|
||||
|
||||
/// @brief Return number of pixels in a size, for < ordering purposes
|
||||
static inline quint64
|
||||
sizeOrder( const QSize& size )
|
||||
|
||||
@@ -12,10 +12,28 @@
|
||||
|
||||
#include "PackageModel.h"
|
||||
|
||||
namespace AppStream
|
||||
{
|
||||
class Pool;
|
||||
} // namespace AppStream
|
||||
/*
|
||||
* This weird include mechanism is because an #include line is allowed
|
||||
* to consist of preprocessor-tokens, which are expanded, and then
|
||||
* the #include is *re*processed. But if it starts with < or ", then
|
||||
* preprocessor tokens are not expanded. So we build up a #include <>
|
||||
* style line with a suitable path -- if we are given a value for
|
||||
* HAVE_APPSTREAM_HEADERS, that is the directory that the AppStreamQt
|
||||
* headers live in.
|
||||
*/
|
||||
#define CALAMARES_LT <
|
||||
#define CALAMARES_GT >
|
||||
|
||||
#ifndef HAVE_APPSTREAM_HEADERS
|
||||
#define HAVE_APPSTREAM_HEADERS AppStreamQt
|
||||
#endif
|
||||
|
||||
#include CALAMARES_LT HAVE_APPSTREAM_HEADERS/pool.h CALAMARES_GT
|
||||
#include CALAMARES_LT HAVE_APPSTREAM_HEADERS/image.h CALAMARES_GT
|
||||
#include CALAMARES_LT HAVE_APPSTREAM_HEADERS/screenshot.h CALAMARES_GT
|
||||
|
||||
#undef CALAMARES_LT
|
||||
#undef CALAMARES_GT
|
||||
|
||||
/** @brief Loads an item from AppStream data.
|
||||
*
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
#include <QtTest/QtTest>
|
||||
|
||||
QTEST_MAIN( PackageChooserTests )
|
||||
QTEST_GUILESS_MAIN( PackageChooserTests )
|
||||
|
||||
PackageChooserTests::PackageChooserTests() {}
|
||||
|
||||
|
||||
BIN
modules/packagechooser/images/calamares.png
Normal file
|
After Width: | Height: | Size: 8.1 KiB |
2
modules/packagechooser/images/calamares.png.license
Normal file
@@ -0,0 +1,2 @@
|
||||
SPDX-FileCopyrightText: 2014 Teo Mrnjavac <teo@kde.org>
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
BIN
modules/packagechooser/images/no-selection.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
2
modules/packagechooser/images/no-selection.png.license
Normal file
@@ -0,0 +1,2 @@
|
||||
SPDX-FileCopyrightText: 2014 Uri Herrera <uri_herrera@nitrux.in> and others
|
||||
SPDX-License-Identifier: LGPL-3.0-or-later
|
||||
@@ -1,69 +0,0 @@
|
||||
# === This file is part of Calamares - <https://calamares.io> ===
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2020 Adriaan de Groot <groot@kde.org>
|
||||
# SPDX-FileCopyrightText: 2021 Anke Boersma <demm@kaosx.us>
|
||||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
#
|
||||
if( NOT Calamares_WITH_QML )
|
||||
calamares_skip_module( "packagechooserq (QML is not supported in this build)" )
|
||||
return()
|
||||
endif()
|
||||
|
||||
find_package(${qtname} ${QT_VERSION} CONFIG REQUIRED Core)
|
||||
|
||||
# Add optional libraries here
|
||||
set(USER_EXTRA_LIB)
|
||||
|
||||
# include_directories( ${CMAKE_CURRENT_SOURCE_DIR}/../packagechooser )
|
||||
set(_packagechooser ${CMAKE_CURRENT_SOURCE_DIR}/../packagechooser)
|
||||
include_directories(${_packagechooser})
|
||||
|
||||
### OPTIONAL AppData XML support in PackageModel
|
||||
#
|
||||
#
|
||||
option(BUILD_APPDATA "Support appdata: items in PackageChooser (requires QtXml)" ON)
|
||||
if(BUILD_APPDATA)
|
||||
find_package(${qtname} COMPONENTS Xml)
|
||||
if(TARGET ${qtname}::Xml)
|
||||
add_definitions(-DHAVE_APPDATA)
|
||||
list(APPEND _extra_libraries ${qtname}::Xml)
|
||||
list(APPEND _extra_src ${_packagechooser}/ItemAppData.cpp)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
### OPTIONAL AppStream support in PackageModel
|
||||
#
|
||||
#
|
||||
option(BUILD_APPSTREAM "Support appstream: items in PackageChooser (requires libappstream-qt)" ON)
|
||||
if(BUILD_APPSTREAM)
|
||||
find_package(AppStreamQt)
|
||||
set_package_properties(
|
||||
AppStreamQt
|
||||
PROPERTIES
|
||||
DESCRIPTION "Support for AppStream (cache) data"
|
||||
URL "https://github.com/ximion/appstream"
|
||||
PURPOSE "AppStream provides package data"
|
||||
TYPE OPTIONAL
|
||||
)
|
||||
if(AppStreamQt_FOUND)
|
||||
add_definitions(-DHAVE_APPSTREAM_VERSION=${AppStreamQt_VERSION_MAJOR})
|
||||
list(APPEND _extra_libraries AppStreamQt)
|
||||
list(APPEND _extra_src ${_packagechooser}/ItemAppStream.cpp)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
calamares_add_plugin(packagechooserq
|
||||
TYPE viewmodule
|
||||
EXPORT_MACRO PLUGINDLLEXPORT_PRO
|
||||
SOURCES
|
||||
PackageChooserQmlViewStep.cpp
|
||||
${_packagechooser}/Config.cpp
|
||||
${_packagechooser}/PackageModel.cpp
|
||||
${_extra_src}
|
||||
RESOURCES
|
||||
packagechooserq${QT_VERSION_SUFFIX}.qrc
|
||||
LINK_PRIVATE_LIBRARIES
|
||||
calamaresui
|
||||
${_extra_libraries}
|
||||
SHARED_LIB
|
||||
)
|
||||
@@ -1,86 +0,0 @@
|
||||
/* === This file is part of Calamares - <https://calamares.io> ===
|
||||
*
|
||||
* SPDX-FileCopyrightText: 2019 Adriaan de Groot <groot@kde.org>
|
||||
* SPDX-FileCopyrightText: 2021 Anke Boersma <demm@kaosx.us>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*
|
||||
* Calamares is Free Software: see the License-Identifier above.
|
||||
*
|
||||
*/
|
||||
|
||||
#include "PackageChooserQmlViewStep.h"
|
||||
|
||||
#include "GlobalStorage.h"
|
||||
#include "JobQueue.h"
|
||||
#include "locale/TranslatableConfiguration.h"
|
||||
#include "utils/Logger.h"
|
||||
#include "utils/System.h"
|
||||
#include "utils/Variant.h"
|
||||
|
||||
CALAMARES_PLUGIN_FACTORY_DEFINITION( PackageChooserQmlViewStepFactory, registerPlugin< PackageChooserQmlViewStep >(); )
|
||||
|
||||
PackageChooserQmlViewStep::PackageChooserQmlViewStep( QObject* parent )
|
||||
: Calamares::QmlViewStep( parent )
|
||||
, m_config( new Config( this ) )
|
||||
{
|
||||
emit nextStatusChanged( true );
|
||||
}
|
||||
|
||||
QString
|
||||
PackageChooserQmlViewStep::prettyName() const
|
||||
{
|
||||
return m_config->prettyName();
|
||||
}
|
||||
|
||||
QString
|
||||
PackageChooserQmlViewStep::prettyStatus() const
|
||||
{
|
||||
//QString option = m_pkgc;
|
||||
//return tr( "Install option: %1" ).arg( option );
|
||||
return m_config->prettyStatus();
|
||||
}
|
||||
|
||||
bool
|
||||
PackageChooserQmlViewStep::isNextEnabled() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
PackageChooserQmlViewStep::isBackEnabled() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
PackageChooserQmlViewStep::isAtBeginning() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
PackageChooserQmlViewStep::isAtEnd() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
Calamares::JobList
|
||||
PackageChooserQmlViewStep::jobs() const
|
||||
{
|
||||
Calamares::JobList l;
|
||||
return l;
|
||||
}
|
||||
|
||||
void
|
||||
PackageChooserQmlViewStep::onLeave()
|
||||
{
|
||||
m_config->updateGlobalStorage();
|
||||
}
|
||||
|
||||
void
|
||||
PackageChooserQmlViewStep::setConfigurationMap( const QVariantMap& configurationMap )
|
||||
{
|
||||
m_config->setDefaultId( moduleInstanceKey() );
|
||||
m_config->setConfigurationMap( configurationMap );
|
||||
Calamares::QmlViewStep::setConfigurationMap( configurationMap ); // call parent implementation last
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
/* === This file is part of Calamares - <https://calamares.io> ===
|
||||
*
|
||||
* SPDX-FileCopyrightText: 2019 Adriaan de Groot <groot@kde.org>
|
||||
* SPDX-FileCopyrightText: 2021 Anke Boersma <demm@kaosx.us>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*
|
||||
* Calamares is Free Software: see the License-Identifier above.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef PACKAGECHOOSERQMLVIEWSTEP_H
|
||||
#define PACKAGECHOOSERQMLVIEWSTEP_H
|
||||
|
||||
// Config from packagechooser module
|
||||
#include "Config.h"
|
||||
|
||||
#include "DllMacro.h"
|
||||
#include "locale/TranslatableConfiguration.h"
|
||||
#include "utils/PluginFactory.h"
|
||||
#include "viewpages/QmlViewStep.h"
|
||||
|
||||
#include <QVariantMap>
|
||||
|
||||
class Config;
|
||||
class PackageChooserPage;
|
||||
|
||||
class PLUGINDLLEXPORT PackageChooserQmlViewStep : public Calamares::QmlViewStep
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit PackageChooserQmlViewStep( QObject* parent = nullptr );
|
||||
|
||||
QString prettyName() const override;
|
||||
QString prettyStatus() const override;
|
||||
|
||||
bool isNextEnabled() const override;
|
||||
bool isBackEnabled() const override;
|
||||
|
||||
bool isAtBeginning() const override;
|
||||
bool isAtEnd() const override;
|
||||
|
||||
//void onActivate() override;
|
||||
void onLeave() override;
|
||||
|
||||
Calamares::JobList jobs() const override;
|
||||
|
||||
void setConfigurationMap( const QVariantMap& configurationMap ) override;
|
||||
|
||||
QObject* getConfig() override { return m_config; }
|
||||
|
||||
private:
|
||||
Config* m_config;
|
||||
};
|
||||
|
||||
CALAMARES_PLUGIN_FACTORY_DECLARATION( PackageChooserQmlViewStepFactory )
|
||||
|
||||
#endif // PACKAGECHOOSERQMLVIEWSTEP_H
|
||||
|
Before Width: | Height: | Size: 20 KiB |
@@ -1,2 +0,0 @@
|
||||
SPDX-FileCopyrightText: 2020 demmm <anke62@gmail.com>
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
@@ -1,304 +0,0 @@
|
||||
/* === This file is part of Calamares - <https://calamares.io> ===
|
||||
*
|
||||
* SPDX-FileCopyrightText: 2021 Anke Boersma <demm@kaosx.us>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*
|
||||
* Calamares is Free Software: see the License-Identifier above.
|
||||
*
|
||||
*/
|
||||
|
||||
import io.calamares.core 1.0
|
||||
import io.calamares.ui 1.0
|
||||
|
||||
import QtQuick
|
||||
import QtQuick.Controls
|
||||
import QtQuick.Layouts
|
||||
|
||||
Item {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
color: "#f2f2f2"
|
||||
|
||||
ButtonGroup {
|
||||
id: switchGroup
|
||||
}
|
||||
|
||||
Column {
|
||||
id: column
|
||||
anchors.centerIn: parent
|
||||
spacing: 5
|
||||
|
||||
Rectangle {
|
||||
//id: rectangle
|
||||
width: 700
|
||||
height: 150
|
||||
color: "#ffffff"
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("OpenRC base system.<br/>
|
||||
Default option.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element1
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("OpenRC")
|
||||
checked: true
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element1.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element1.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element1.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element1.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element1.checked ? (element1.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "openrc"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image1
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 150
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("Dinit base system.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element2
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("Dinit")
|
||||
checked: false
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element2.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element2.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element2.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element2.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element2.checked ? (element2.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "dinit"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image2
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 150
|
||||
color: "#ffffff"
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("Runit base system.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element3
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("Runit")
|
||||
checked: false
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element3.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element3.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element3.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element3.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element3.checked ? (element3.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "runit"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image3
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 150
|
||||
color: "#ffffff"
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("S6 base system.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element4
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("S6")
|
||||
checked: false
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element4.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element4.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element4.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element4.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element4.checked ? (element4.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "s6"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image4
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 25
|
||||
color: "#f2f2f2"
|
||||
border.width: 0
|
||||
Text {
|
||||
height: 25
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("Please select an option for your install, or use the default: OpenRC.")
|
||||
font.pointSize: 10
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
<RCC>
|
||||
<qresource>
|
||||
<file alias="packagechooserq.qml">packagechooserq-qt6.qml</file>
|
||||
<file>images/if.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
@@ -1,66 +0,0 @@
|
||||
# SPDX-FileCopyrightText: no
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
#
|
||||
# Configuration for the low-density software chooser, QML implementation
|
||||
#
|
||||
# The example QML implementation uses single-selection, rather than
|
||||
# a model for the available packages. That makes it simpler: the
|
||||
# QML itself codes the available options, descriptions and images
|
||||
# -- after all, this is **low density** selection, so a custom UI
|
||||
# can make sense for the few choices that need to be made.
|
||||
#
|
||||
#
|
||||
|
||||
---
|
||||
# Software installation method:
|
||||
#
|
||||
# - "legacy" or "custom" or "contextualprocess"
|
||||
# When set to "legacy", writes a GlobalStorage value for the choice that
|
||||
# has been made. The key is *packagechooser_<id>*. The module's
|
||||
# instance name is used; see the *instances* section of `settings.conf`.
|
||||
# If there is just one packagechooserq module, and no special instance is set,
|
||||
# resulting GS key is probably *packagechooser_packagechooserq*.
|
||||
# (Do note that the prefix of the GS key remains "packagechooser_")
|
||||
#
|
||||
# The GS value is a comma-separated list of the IDs of the selected
|
||||
# packages, or an empty string if none is selected.
|
||||
#
|
||||
# With "legacy" installation, you should have a contextualprocess or similar
|
||||
# module somewhere in the `exec` phase to process the GlobalStorage key
|
||||
# and actually **do** something for the packages.
|
||||
#
|
||||
# - "packages"
|
||||
# When set to "packages", writes GlobalStorage values suitable for
|
||||
# consumption by the *packages* module (which should appear later
|
||||
# in the `exec` section. These package settings will then be handed
|
||||
# off to whatever package manager is configured there.
|
||||
#
|
||||
# There is no need to put this module in the `exec` section. There
|
||||
# are no jobs that this module provides. You should put **other**
|
||||
# modules, either *contextualprocess* or *packages* or some custom
|
||||
# module, in the `exec` section to do the actual work.
|
||||
#
|
||||
method: legacy
|
||||
|
||||
# Human-visible strings in this module. These are all optional.
|
||||
# The following translated keys are used:
|
||||
# - *step*, used in the overall progress view (left-hand pane)
|
||||
#
|
||||
# Each key can have a [locale] added to it, which is used as
|
||||
# the translated string for that locale. For the strings
|
||||
# associated with the "no-selection" item, see *items*, below
|
||||
# with the explicit item-*id* "".
|
||||
#
|
||||
labels:
|
||||
step: "Packages"
|
||||
step[nl]: "Pakketten"
|
||||
|
||||
# The *packageChoice* value is used for setting the default selection
|
||||
# in the QML view; this should match one of the keys used in the QML
|
||||
# module for package names.
|
||||
#
|
||||
# (e.g. the sample QML uses "no_office_suite", "minimal_install" and
|
||||
# "libreoffice" as possible choices).
|
||||
#
|
||||
packageChoice: libreoffice
|
||||
|
||||
@@ -1,304 +0,0 @@
|
||||
/* === This file is part of Calamares - <https://calamares.io> ===
|
||||
*
|
||||
* SPDX-FileCopyrightText: 2021 Anke Boersma <demm@kaosx.us>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*
|
||||
* Calamares is Free Software: see the License-Identifier above.
|
||||
*
|
||||
*/
|
||||
|
||||
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.3
|
||||
|
||||
Item {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
color: "#f2f2f2"
|
||||
|
||||
ButtonGroup {
|
||||
id: switchGroup
|
||||
}
|
||||
|
||||
Column {
|
||||
id: column
|
||||
anchors.centerIn: parent
|
||||
spacing: 5
|
||||
|
||||
Rectangle {
|
||||
//id: rectangle
|
||||
width: 700
|
||||
height: 150
|
||||
color: "#ffffff"
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("OpenRC base system.<br/>
|
||||
Default option.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element1
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("OpenRC")
|
||||
checked: true
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element1.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element1.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element1.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element1.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element1.checked ? (element1.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "openrc"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image1
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 150
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("Dinit base system.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element2
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("Dinit")
|
||||
checked: false
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element2.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element2.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element2.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element2.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element2.checked ? (element2.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "dinit"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image2
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 150
|
||||
color: "#ffffff"
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("Runit base system.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element3
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("Runit")
|
||||
checked: false
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element3.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element3.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element3.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element3.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element3.checked ? (element3.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "runit"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image3
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 150
|
||||
color: "#ffffff"
|
||||
radius: 10
|
||||
border.width: 0
|
||||
Text {
|
||||
width: 450
|
||||
height: 104
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("S6 base system.")
|
||||
font.pointSize: 10
|
||||
anchors.verticalCenterOffset: -10
|
||||
anchors.horizontalCenterOffset: 100
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: element4
|
||||
x: 500
|
||||
y: 110
|
||||
width: 187
|
||||
height: 14
|
||||
text: qsTr("S6")
|
||||
checked: false
|
||||
hoverEnabled: true
|
||||
ButtonGroup.group: switchGroup
|
||||
|
||||
indicator: Rectangle {
|
||||
implicitWidth: 40
|
||||
implicitHeight: 14
|
||||
radius: 10
|
||||
color: element4.checked ? "#3498db" : "#B9B9B9"
|
||||
border.color: element4.checked ? "#3498db" : "#cccccc"
|
||||
|
||||
Rectangle {
|
||||
x: element4.checked ? parent.width - width : 0
|
||||
y: (parent.height - height) / 2
|
||||
width: 20
|
||||
height: 20
|
||||
radius: 10
|
||||
color: element4.down ? "#cccccc" : "#ffffff"
|
||||
border.color: element4.checked ? (element4.down ? "#3498db" : "#3498db") : "#999999"
|
||||
}
|
||||
}
|
||||
|
||||
onCheckedChanged: {
|
||||
if ( checked ) {
|
||||
config.packageChoice = "s6"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: image4
|
||||
x: 8
|
||||
y: 25
|
||||
height: 100
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: "images/if.png"
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: 700
|
||||
height: 25
|
||||
color: "#f2f2f2"
|
||||
border.width: 0
|
||||
Text {
|
||||
height: 25
|
||||
anchors.centerIn: parent
|
||||
text: qsTr("Please select an option for your install, or use the default: OpenRC.")
|
||||
font.pointSize: 10
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
<RCC>
|
||||
<qresource>
|
||||
<file>packagechooserq.qml</file>
|
||||
<file>images/if.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
19
scripts/calamares-config-switcher
Normal file
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
readonly conf=/etc/calamares-config-switcher.conf
|
||||
|
||||
if [[ -f "${conf}" ]]; then
|
||||
# shellcheck source=/etc/calamares-config-switcher.conf
|
||||
. "${conf}"
|
||||
fi
|
||||
|
||||
title=${title:-"Switcher"}
|
||||
text=${text:-"Select:"}
|
||||
if [[ -z "${configs[*]}" ]]; then
|
||||
configs=(online offline)
|
||||
fi
|
||||
|
||||
select=$(kdialog --title "${title}" --combobox "${text}" "${configs[@]}" --default "${configs[0]}")
|
||||
|
||||
pkexec ln -snf /etc/calamares-"$select" /etc/calamares
|
||||
pkexec calamares "$@"
|
||||
8
scripts/calamares-config-switcher.conf
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/hint/bash
|
||||
# calamares config switcher configuration
|
||||
|
||||
title="Switcher"
|
||||
|
||||
text="Select calamares<br>configuration:"
|
||||
|
||||
configs=(online offline)
|
||||
243
scripts/calamares-config-switcher.desktop
Normal file
@@ -0,0 +1,243 @@
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Version=1.0
|
||||
Name=Install Artix
|
||||
GenericName=System Installer
|
||||
Keywords=calamares;system;installer;
|
||||
TryExec=calamares-config-switcher
|
||||
Exec=calamares-config-switcher
|
||||
Comment=Calamares — System Installer
|
||||
Icon=artixlinux-logo
|
||||
Terminal=false
|
||||
StartupNotify=true
|
||||
Categories=Qt;System;
|
||||
X-AppStream-Ignore=true
|
||||
|
||||
Name[ar]=تثبيت النظام
|
||||
Icon[ar]=كالامارس
|
||||
GenericName[ar]=مثبت النظام
|
||||
Comment[ar]=كالامارس - مثبت النظام
|
||||
Name[as]=চিছটেম ইনস্তল কৰক
|
||||
Icon[as]=কেলামাৰেচ
|
||||
GenericName[as]=চিছটেম ইনস্তলাৰ
|
||||
Comment[as]=কেলামাৰেচ — চিছটেম ইনস্তলাৰ
|
||||
Name[ast]=Instalar el sistema
|
||||
Icon[ast]=calamares
|
||||
GenericName[ast]=Instalador del sistema
|
||||
Comment[ast]=Calamares — Instalador del sistema
|
||||
Name[az]=Sistemi Quraşdırmaq
|
||||
Icon[az]=calamares
|
||||
GenericName[az]=Sistem Quraşdırıcısı
|
||||
Comment[az]=Calamares Sistem Quraşdırıcısı
|
||||
Name[az_AZ]=Sistemi quraşdırmaq
|
||||
Icon[az_AZ]=calamares
|
||||
GenericName[az_AZ]=Sistem quraşdırcısı
|
||||
Comment[az_AZ]=Calamares — Sistem Quraşdırıcısı
|
||||
Name[be]=Усталяваць сістэму
|
||||
Icon[be]=calamares
|
||||
GenericName[be]=Усталёўшчык сістэмы
|
||||
Comment[be]=Calamares — усталёўшчык сістэмы
|
||||
Name[bg]=Инсталирай системата
|
||||
Icon[bg]=calamares
|
||||
GenericName[bg]=Системен инсталатор
|
||||
Comment[bg]=„Calamares“ – Системен инсталатор
|
||||
Name[bn]=সিস্টেম ইনস্টল করুন
|
||||
Icon[bn]=ক্যালামারেস
|
||||
GenericName[bn]=সিস্টেম ইনস্টলার
|
||||
Comment[bn]=ক্যালামারেস - সিস্টেম ইনস্টলার
|
||||
Name[ca]=Instal·la el sistema
|
||||
Icon[ca]=calamares
|
||||
GenericName[ca]=Instal·lador de sistema
|
||||
Comment[ca]=Calamares — Instal·lador de sistema
|
||||
Name[cs_CZ]=Nainstalovat systém
|
||||
Icon[cs_CZ]=calamares
|
||||
GenericName[cs_CZ]=Instalátor systému
|
||||
Comment[cs_CZ]=Calamares – instalátor operačních systémů
|
||||
Name[da]=Installér system
|
||||
Icon[da]=calamares
|
||||
GenericName[da]=Systeminstallationsprogram
|
||||
Comment[da]=Calamares — Systeminstallationsprogram
|
||||
Name[de]=System installieren
|
||||
Icon[de]=calamares
|
||||
GenericName[de]=Installation des Betriebssystems
|
||||
Comment[de]=Calamares - Installation des Betriebssystems
|
||||
Name[el]=Εγκατάσταση συστήματος
|
||||
Icon[el]=calamares
|
||||
GenericName[el]=Εγκατάσταση συστήματος
|
||||
Comment[el]=Calamares — Εγκατάσταση συστήματος
|
||||
Name[en_GB]=Install System
|
||||
Icon[en_GB]=calamares
|
||||
GenericName[en_GB]=System Installer
|
||||
Comment[en_GB]=Calamares — System Installer
|
||||
Name[eo]=Instali Sistemo
|
||||
Icon[eo]=calamares
|
||||
GenericName[eo]=Sistema Instalilo
|
||||
Comment[eo]=Calamares — Sistema Instalilo
|
||||
Name[es]=Instalar el sistema
|
||||
Icon[es]=calamares
|
||||
GenericName[es]=Instalador del sistema
|
||||
Comment[es]=Calamares — Instalador del sistema
|
||||
Name[es_MX]=Instalar el Sistema
|
||||
Icon[es_MX]=calamares
|
||||
GenericName[es_MX]=Instalador del sistema
|
||||
Comment[es_MX]=Calamares - Instalador del sistema
|
||||
Name[es_PR]=Instalar el sistema
|
||||
Name[et]=Paigalda süsteem
|
||||
Icon[et]=calamares
|
||||
GenericName[et]=Süsteemipaigaldaja
|
||||
Comment[et]=Calamares — süsteemipaigaldaja
|
||||
Name[eu]=Sistema instalatu
|
||||
Icon[eu]=calamares
|
||||
GenericName[eu]=Sistema instalatzailea
|
||||
Comment[eu]=Calamares - sistema instalatzailea
|
||||
Name[fa]=نصب سامانه
|
||||
Icon[fa]=کالامارس
|
||||
GenericName[fa]=نصبکننده سامانه
|
||||
Comment[fa]=کالامارس — نصبکننده سامانه
|
||||
Name[fi_FI]=Asenna järjestelmä
|
||||
Icon[fi_FI]=calamares
|
||||
GenericName[fi_FI]=Järjestelmän asennusohjelma
|
||||
Comment[fi_FI]=Calamares — Järjestelmän asentaja
|
||||
Name[fr]=Installer le système
|
||||
Icon[fr]=calamares
|
||||
GenericName[fr]=Installateur système
|
||||
Comment[fr]=Calamares - Installateur système
|
||||
Name[fur]=Instale il sisteme
|
||||
Icon[fur]=calamares
|
||||
GenericName[fur]=Program di instalazion dal sisteme
|
||||
Comment[fur]=Calamares — Program di instalazion dal sisteme
|
||||
Name[gl]=Instalación do Sistema
|
||||
Icon[gl]=calamares
|
||||
GenericName[gl]=Instalador de sistemas
|
||||
Comment[gl]=Calamares — Instalador de sistemas
|
||||
Name[he]=התקנת מערכת
|
||||
Icon[he]=calamares
|
||||
GenericName[he]=אשף התקנה
|
||||
Comment[he]=Calamares - אשף התקנה
|
||||
Name[hi]=सिस्टम इंस्टॉल करें
|
||||
Icon[hi]=calamares
|
||||
GenericName[hi]=सिस्टम इंस्टॉलर
|
||||
Comment[hi]=Calamares — सिस्टम इंस्टॉलर
|
||||
Name[hr]=Instaliraj sustav
|
||||
Icon[hr]=calamares
|
||||
GenericName[hr]=Instalacija sustava
|
||||
Comment[hr]=Calamares — Instalacija sustava
|
||||
Name[hu]=Rendszer telepítése
|
||||
Icon[hu]=calamares
|
||||
GenericName[hu]=Rendszertelepítő
|
||||
Comment[hu]=Calamares – Rendszertelepítő
|
||||
Name[id]=Instal Sistem
|
||||
Icon[id]=calamares
|
||||
GenericName[id]=Pemasang
|
||||
Comment[id]=Calamares — Pemasang Sistem
|
||||
Name[ie]=Installar li sistema
|
||||
Icon[ie]=calamares
|
||||
GenericName[ie]=Installator del sistema
|
||||
Comment[ie]=Calamares — Installator del sistema
|
||||
Name[is]=Setja upp kerfið
|
||||
Icon[is]=calamares
|
||||
GenericName[is]=Kerfis uppsetning
|
||||
Comment[is]=Calamares — Kerfis uppsetning
|
||||
Name[it_IT]=Installa il sistema
|
||||
Icon[it_IT]=calamares
|
||||
GenericName[it_IT]=Programma d'installazione del sistema
|
||||
Comment[it_IT]=Calamares — Programma d'installazione del sistema
|
||||
Name[ja]=システムをインストール
|
||||
Icon[ja]=calamares
|
||||
GenericName[ja]=システムインストーラー
|
||||
Comment[ja]=Calamares — システムインストーラー
|
||||
Name[ko]=시스템 설치
|
||||
Icon[ko]=깔라마레스
|
||||
GenericName[ko]=시스템 설치 관리자
|
||||
Comment[ko]=깔라마레스 — 시스템 설치 관리자
|
||||
Name[lt]=Įdiegti Sistemą
|
||||
Icon[lt]=calamares
|
||||
GenericName[lt]=Sistemos diegimas į kompiuterį
|
||||
Comment[lt]=Calamares — Sistemos diegimo programa
|
||||
Name[mk]=Инсталирај го системот
|
||||
Icon[mk]=calamares
|
||||
GenericName[mk]=Системен Инсталер
|
||||
Comment[mk]=Calamares - Системен Инсталер
|
||||
Name[ml]=സിസ്റ്റം ഇൻസ്റ്റാൾ ചെയ്യുക
|
||||
Icon[ml]=കലാമാരേസ്
|
||||
GenericName[ml]=സിസ്റ്റം ഇൻസ്റ്റാളർ
|
||||
Comment[ml]=കലാമാരേസ് - സിസ്റ്റം ഇൻസ്റ്റാളർ
|
||||
Name[nb]=Installer System
|
||||
Icon[nb]=calamares
|
||||
GenericName[nb]=Systeminstallatør
|
||||
Comment[nb]=Calamares-systeminstallatør
|
||||
Name[ne_NP]= सिस्टम इन्स्टल गर्नुहोस्
|
||||
Icon[ne_NP]=Calamares
|
||||
GenericName[ne_NP]=सिस्टम इन्स्टलर
|
||||
Comment[ne_NP]=Calamares - सिस्टम इन्स्टलर
|
||||
Name[nl]=Installeer systeem
|
||||
Icon[nl]=calamares
|
||||
GenericName[nl]=Installatieprogramma
|
||||
Comment[nl]=Calamares — Installatieprogramma
|
||||
Name[pl]=Zainstaluj system
|
||||
Icon[pl]=calamares
|
||||
GenericName[pl]=Instalator systemu
|
||||
Comment[pl]=Calamares — Instalator systemu
|
||||
Name[pt_BR]=Sistema de Instalação
|
||||
Icon[pt_BR]=calamares
|
||||
GenericName[pt_BR]=Instalador de Sistema
|
||||
Comment[pt_BR]=Calamares — Instalador de Sistema
|
||||
Name[pt_PT]=Instalar Sistema
|
||||
Icon[pt_PT]=calamares
|
||||
GenericName[pt_PT]=Instalador de Sistema
|
||||
Comment[pt_PT]=Instalador de Sistema - Calamares
|
||||
Name[ro]=Instalează sistemul
|
||||
Icon[ro]=calamares
|
||||
GenericName[ro]=Instalator de sistem
|
||||
Comment[ro]=Calamares — Instalator de sistem
|
||||
Name[ru]=Установить систему
|
||||
Icon[ru]=calamares
|
||||
GenericName[ru]=Установщик системы
|
||||
Comment[ru]=Calamares - Установщик системы
|
||||
Name[si]=පද්ධතිය ස්ථාපනය කරන්න
|
||||
Icon[si]=කැලමරේස්
|
||||
GenericName[si]=පද්ධති ස්ථාපකය
|
||||
Comment[si]=Calamares - පද්ධති ස්ථාපකය
|
||||
Name[sk]=Inštalovať systém
|
||||
Icon[sk]=calamares
|
||||
GenericName[sk]=Inštalátor systému
|
||||
Comment[sk]=Calamares — Inštalátor systému
|
||||
Name[sl]=Namesti sistem
|
||||
Name[sq]=Instalo Sistemin
|
||||
Icon[sq]=calamares
|
||||
GenericName[sq]=Instalues Sistemi
|
||||
Comment[sq]=Calamares — Instalues Sistemi
|
||||
Name[sr]=Инсталирај систем
|
||||
Icon[sr]=calamares
|
||||
GenericName[sr]=Инсталатер система
|
||||
Comment[sr]=Каламарес — инсталатер система
|
||||
Name[sr@latin]=Instaliraj sistem
|
||||
Name[sv]=Installera system
|
||||
Icon[sv]=calamares
|
||||
GenericName[sv]=Systeminstallerare
|
||||
Comment[sv]=Calamares — Systeminstallerare
|
||||
Name[tg]=Насбкунии низом
|
||||
Icon[tg]=calamares
|
||||
GenericName[tg]=Насбкунандаи низомӣ
|
||||
Comment[tg]=Calamares — Насбкунандаи низомӣ
|
||||
Name[th]=ติดตั้งระบบ
|
||||
Name[tr_TR]=Sistemi Yükle
|
||||
Icon[tr_TR]=calamares
|
||||
GenericName[tr_TR]=Sistem Yükleyici
|
||||
Comment[tr_TR]=Calamares — Sistem Yükleyici
|
||||
Name[uk]=Встановити Систему
|
||||
Icon[uk]=calamares
|
||||
GenericName[uk]=Встановлювач системи
|
||||
Comment[uk]=Calamares - Встановлювач системи
|
||||
Name[vi]=Cài đặt hệ thống
|
||||
Icon[vi]=calamares
|
||||
GenericName[vi]=Bộ cài đặt hệ thống
|
||||
Comment[vi]=Calamares — Bộ cài đặt hệ thống
|
||||
Name[zh_CN]=安装系统
|
||||
Icon[zh_CN]=calamares
|
||||
GenericName[zh_CN]=系统安装程序
|
||||
Comment[zh_CN]=Calamares — 系统安装程序
|
||||
Name[zh_TW]=安裝系統
|
||||
Icon[zh_TW]=calamares
|
||||
GenericName[zh_TW]=系統安裝程式
|
||||
Comment[zh_TW]=Calamares ── 系統安裝程式
|
||||