Merge branch 'master' into emergency-modules

This commit is contained in:
Adriaan de Groot 2018-06-14 17:15:40 -04:00
commit 2d7eea6d73
57 changed files with 3807 additions and 634 deletions

View File

@ -33,12 +33,75 @@ project( calamares C CXX )
cmake_minimum_required( VERSION 3.2 ) cmake_minimum_required( VERSION 3.2 )
set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMakeModules" )
set( CMAKE_CXX_STANDARD 14 ) ### OPTIONS
set( CMAKE_CXX_STANDARD_REQUIRED ON ) #
set( CMAKE_C_STANDARD 99 ) option( INSTALL_CONFIG "Install configuration files" ON )
set( CMAKE_C_STANDARD_REQUIRED ON ) option( INSTALL_POLKIT "Install Polkit configuration" ON )
option( BUILD_TESTING "Build the testing tree." ON )
option( WITH_PYTHON "Enable Python modules API (requires Boost.Python)." ON )
option( WITH_PYTHONQT "Enable next generation Python modules API (experimental, requires PythonQt)." ON )
option( WITH_KF5Crash "Enable crash reporting with KCrash." ON )
### Calamares application info
#
set( CALAMARES_ORGANIZATION_NAME "Calamares" )
set( CALAMARES_ORGANIZATION_DOMAIN "github.com/calamares" )
set( CALAMARES_APPLICATION_NAME "Calamares" )
set( CALAMARES_DESCRIPTION_SUMMARY
"The distribution-independent installer framework" )
set( CALAMARES_VERSION_MAJOR 3 )
set( CALAMARES_VERSION_MINOR 2 )
set( CALAMARES_VERSION_PATCH 0 )
set( CALAMARES_VERSION_RC 0 )
### Transifex (languages) info
#
# complete = 100% translated,
# good = nearly complete (use own judgement, right now >= 75%)
# ok = incomplete (more than 25% untranslated),
# bad = 0% translated, placeholder in tx; these are not included.
#
# Language en (source language) is added later. It isn't listed in
# Transifex either. Get the list of languages and their status
# from https://transifex.com/calamares/calamares/ .
#
# When adding a new language, take care that it is properly loaded
# by the translation framework. Languages with alternate scripts
# (sr@latin in particular) may need special handling in CalamaresUtils.cpp.
#
# TODO: drop the es_ES translation from Transifex
# TODO: move eo (Esperanto) to _ok once Qt can actually create a
# locale for it.
#
# NOTE: when updating the list from Transifex, copy these four lines
# and prefix each variable name with "p", so that the automatic
# checks for new languages and misspelled ones are done (that is,
# copy these four lines to four backup lines, add "p", and then update
# the original four lines with the current translations).
set( _tx_complete da pt_PT ro tr_TR zh_TW zh_CN pt_BR fr hr ca lt id cs_CZ )
set( _tx_good sq es pl ja sk it_IT hu ru he de nl bg uk )
set( _tx_ok ast is ar sv el es_MX gl en_GB th fi_FI hi eu sr nb
sl sr@latin mr es_PR kk kn et be )
set( _tx_bad uz lo ur gu fr_CH fa eo ko )
### Required versions
#
# See DEPENDENCIES section below.
set( QT_VERSION 5.7.0 )
set( YAMLCPP_VERSION 0.5.1 )
set( ECM_VERSION 5.18 )
set( PYTHONLIBS_VERSION 3.3 )
set( BOOSTPYTHON_VERSION 1.54.0 )
### CMAKE SETUP
#
set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMakeModules" )
# CMake 3.9, 3.10 compatibility # CMake 3.9, 3.10 compatibility
if( POLICY CMP0071 ) if( POLICY CMP0071 )
@ -52,8 +115,15 @@ if(NOT CMAKE_VERSION VERSION_LESS "3.10.0")
) )
endif() endif()
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" )
### C++ SETUP
#
set( CMAKE_CXX_STANDARD 14 )
set( CMAKE_CXX_STANDARD_REQUIRED ON )
set( CMAKE_C_STANDARD 99 )
set( CMAKE_C_STANDARD_REQUIRED ON )
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" )
if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" ) if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
message( STATUS "Found Clang ${CMAKE_CXX_COMPILER_VERSION}, setting up Clang-specific compiler flags." ) message( STATUS "Found Clang ${CMAKE_CXX_COMPILER_VERSION}, setting up Clang-specific compiler flags." )
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" ) set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" )
@ -123,28 +193,33 @@ endif()
include( FeatureSummary ) include( FeatureSummary )
include( CMakeColors ) include( CMakeColors )
set( QT_VERSION 5.6.0 )
### DEPENDENCIES
#
find_package( Qt5 ${QT_VERSION} CONFIG REQUIRED Core Gui Widgets LinguistTools Svg Quick QuickWidgets ) find_package( Qt5 ${QT_VERSION} CONFIG REQUIRED Core Gui Widgets LinguistTools Svg Quick QuickWidgets )
find_package( YAMLCPP 0.5.1 REQUIRED ) find_package( YAMLCPP ${YAMLCPP_VERSION} REQUIRED )
if( INSTALL_POLKIT )
find_package( PolkitQt5-1 REQUIRED ) find_package( PolkitQt5-1 REQUIRED )
else()
# Find it anyway, for dependencies-reporting
find_package( PolkitQt5-1 )
endif()
set_package_properties(
PolkitQt5-1 PROPERTIES
DESCRIPTION "Qt5 support for Polkit"
URL "https://cgit.kde.org/polkit-qt-1.git"
PURPOSE "PolkitQt5-1 helps with installing Polkit configuration"
)
# Find ECM once, and add it to the module search path; Calamares # Find ECM once, and add it to the module search path; Calamares
# modules that need ECM can do # modules that need ECM can do
# find_package(ECM ${ECM_VERSION} REQUIRED NO_MODULE), # find_package(ECM ${ECM_VERSION} REQUIRED NO_MODULE),
# no need to mess with the module path after. # no need to mess with the module path after.
set( ECM_VERSION 5.18 )
find_package(ECM ${ECM_VERSION} NO_MODULE) find_package(ECM ${ECM_VERSION} NO_MODULE)
if( ECM_FOUND ) if( ECM_FOUND )
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_MODULE_PATH}) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_MODULE_PATH})
endif() endif()
option( INSTALL_CONFIG "Install configuration files" ON )
option( WITH_PYTHON "Enable Python modules API (requires Boost.Python)." ON )
option( WITH_PYTHONQT "Enable next generation Python modules API (experimental, requires PythonQt)." ON )
option( WITH_KF5Crash "Enable crash reporting with KCrash." ON )
option( BUILD_TESTING "Build the testing tree." ON )
find_package( KF5 COMPONENTS CoreAddons Crash ) find_package( KF5 COMPONENTS CoreAddons Crash )
if( NOT KF5Crash_FOUND ) if( NOT KF5Crash_FOUND )
set( WITH_KF5Crash OFF ) set( WITH_KF5Crash OFF )
@ -154,7 +229,7 @@ if( BUILD_TESTING )
enable_testing() enable_testing()
endif () endif ()
find_package( PythonLibs 3.3 ) find_package( PythonLibs ${PYTHONLIBS_VERSION} )
set_package_properties( set_package_properties(
PythonLibs PROPERTIES PythonLibs PROPERTIES
DESCRIPTION "C interface libraries for the Python 3 interpreter." DESCRIPTION "C interface libraries for the Python 3 interpreter."
@ -164,7 +239,7 @@ set_package_properties(
if ( PYTHONLIBS_FOUND ) if ( PYTHONLIBS_FOUND )
include( BoostPython3 ) include( BoostPython3 )
find_boost_python3( 1.54.0 ${PYTHONLIBS_VERSION_STRING} CALAMARES_BOOST_PYTHON3_FOUND ) find_boost_python3( ${BOOSTPYTHON_VERSION} ${PYTHONLIBS_VERSION_STRING} CALAMARES_BOOST_PYTHON3_FOUND )
set_package_properties( set_package_properties(
Boost PROPERTIES Boost PROPERTIES
PURPOSE "Boost.Python is used for Python job modules." PURPOSE "Boost.Python is used for Python job modules."
@ -189,33 +264,10 @@ endif()
### Transifex Translation status ### Transifex Translation status
# #
# complete = 100% translated, # Construct language lists for use. If there are p_tx* variables,
# good = nearly complete (use own judgement, right now >= 75%) # then run an extra cmake-time check for consistency of the old
# ok = incomplete (more than 25% untranslated), # (p_tx*) and new (_tx*) lists.
# bad = 0% translated, placeholder in tx; these are not included.
# #
# Language en (source language) is added later. It isn't listed in
# Transifex either. Get the list of languages and their status
# from https://transifex.com/calamares/calamares/ .
#
# When adding a new language, take care that it is properly loaded
# by the translation framework. Languages with alternate scripts
# (sr@latin in particular) may need special handling in CalamaresUtils.cpp.
#
# TODO: drop the es_ES translation from Transifex
# TODO: move eo (Esperanto) to _ok once Qt can actually create a
# locale for it.
#
# NOTE: when updating the list from Transifex, copy these four lines
# and prefix each variable name with "p", so that the automatic
# checks for new languages and misspelled ones are done.
set( _tx_complete da pt_PT ro tr_TR zh_TW zh_CN pt_BR fr hr ca lt id cs_CZ )
set( _tx_good sq es pl ja sk it_IT hu ru he de nl bg uk )
set( _tx_ok ast is ar sv el es_MX gl en_GB th fi_FI hi eu sr nb
sl sr@latin mr es_PR kk kn et be )
set( _tx_bad uz lo ur gu fr_CH fa eo )
# check translation update
set( prev_tx ${p_tx_complete} ${p_tx_good} ${p_tx_ok} ${p_tx_bad} ) set( prev_tx ${p_tx_complete} ${p_tx_good} ${p_tx_ok} ${p_tx_bad} )
set( curr_tx ${_tx_complete} ${_tx_good} ${_tx_ok} ${_tx_bad} ) set( curr_tx ${_tx_complete} ${_tx_good} ${_tx_ok} ${_tx_bad} )
if ( prev_tx ) if ( prev_tx )
@ -245,74 +297,11 @@ endif()
unset( prev_tx ) unset( prev_tx )
unset( curr_tx ) unset( curr_tx )
add_subdirectory( lang ) # i18n tools
###
### Calamares application info
###
set( CALAMARES_ORGANIZATION_NAME "Calamares" )
set( CALAMARES_ORGANIZATION_DOMAIN "github.com/calamares" )
set( CALAMARES_APPLICATION_NAME "Calamares" )
set( CALAMARES_DESCRIPTION_SUMMARY "The distribution-independent installer framework" )
set( CALAMARES_TRANSLATION_LANGUAGES en ${_tx_complete} ${_tx_good} ${_tx_ok} ) set( CALAMARES_TRANSLATION_LANGUAGES en ${_tx_complete} ${_tx_good} ${_tx_ok} )
list( SORT CALAMARES_TRANSLATION_LANGUAGES ) list( SORT CALAMARES_TRANSLATION_LANGUAGES )
### Bump version here add_subdirectory( lang ) # i18n tools
set( CALAMARES_VERSION_MAJOR 3 )
set( CALAMARES_VERSION_MINOR 2 )
set( CALAMARES_VERSION_PATCH 0 )
set( CALAMARES_VERSION_RC 0 )
set( CALAMARES_VERSION ${CALAMARES_VERSION_MAJOR}.${CALAMARES_VERSION_MINOR}.${CALAMARES_VERSION_PATCH} )
set( CALAMARES_VERSION_SHORT "${CALAMARES_VERSION}" )
if( CALAMARES_VERSION_RC )
set( CALAMARES_VERSION ${CALAMARES_VERSION}rc${CALAMARES_VERSION_RC} )
endif()
# additional info for non-release builds
if( NOT BUILD_RELEASE AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.git/" )
include( CMakeDateStamp )
set( CALAMARES_VERSION_DATE "${CMAKE_DATESTAMP_YEAR}${CMAKE_DATESTAMP_MONTH}${CMAKE_DATESTAMP_DAY}" )
if( CALAMARES_VERSION_DATE GREATER 0 )
set( CALAMARES_VERSION ${CALAMARES_VERSION}.${CALAMARES_VERSION_DATE} )
endif()
include( CMakeVersionSource )
if( CMAKE_VERSION_SOURCE )
set( CALAMARES_VERSION ${CALAMARES_VERSION}-${CMAKE_VERSION_SOURCE} )
endif()
endif()
# enforce using constBegin, constEnd for const-iterators
add_definitions( "-DQT_STRICT_ITERATORS" )
# set paths
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" )
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" )
# Better default installation paths: GNUInstallDirs defines
# CMAKE_INSTALL_FULL_SYSCONFDIR to be CMAKE_INSTALL_PREFIX/etc by default
# but we really want /etc
if( NOT DEFINED CMAKE_INSTALL_SYSCONFDIR )
set( CMAKE_INSTALL_SYSCONFDIR "/etc" )
endif()
# make predefined install dirs available everywhere
include( GNUInstallDirs )
# make uninstall support
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY
)
# Early configure these files as we need them later on
set( CALAMARES_CMAKE_DIR "${CMAKE_SOURCE_DIR}/CMakeModules" )
set( CALAMARES_LIBRARIES calamares )
set( THIRDPARTY_DIR "${CMAKE_SOURCE_DIR}/thirdparty" )
### Example Distro ### Example Distro
# #
@ -365,7 +354,58 @@ endif()
# "http://tldp.org/HOWTO/SquashFS-HOWTO/creatingandusing.html" # "http://tldp.org/HOWTO/SquashFS-HOWTO/creatingandusing.html"
add_feature_info( ExampleDistro ${mksquashfs_FOUND} "Create example-distro target.") add_feature_info( ExampleDistro ${mksquashfs_FOUND} "Create example-distro target.")
# add_subdirectory( thirdparty )
### CALAMARES PROPER
#
set( CALAMARES_VERSION ${CALAMARES_VERSION_MAJOR}.${CALAMARES_VERSION_MINOR}.${CALAMARES_VERSION_PATCH} )
set( CALAMARES_VERSION_SHORT "${CALAMARES_VERSION}" )
if( CALAMARES_VERSION_RC )
set( CALAMARES_VERSION ${CALAMARES_VERSION}rc${CALAMARES_VERSION_RC} )
endif()
# additional info for non-release builds
if( NOT BUILD_RELEASE AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.git/" )
include( CMakeDateStamp )
set( CALAMARES_VERSION_DATE "${CMAKE_DATESTAMP_YEAR}${CMAKE_DATESTAMP_MONTH}${CMAKE_DATESTAMP_DAY}" )
if( CALAMARES_VERSION_DATE GREATER 0 )
set( CALAMARES_VERSION ${CALAMARES_VERSION}.${CALAMARES_VERSION_DATE} )
endif()
include( CMakeVersionSource )
if( CMAKE_VERSION_SOURCE )
set( CALAMARES_VERSION ${CALAMARES_VERSION}-${CMAKE_VERSION_SOURCE} )
endif()
endif()
# enforce using constBegin, constEnd for const-iterators
add_definitions( "-DQT_STRICT_ITERATORS" )
# set paths
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" )
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" )
# Better default installation paths: GNUInstallDirs defines
# CMAKE_INSTALL_FULL_SYSCONFDIR to be CMAKE_INSTALL_PREFIX/etc by default
# but we really want /etc
if( NOT DEFINED CMAKE_INSTALL_SYSCONFDIR )
set( CMAKE_INSTALL_SYSCONFDIR "/etc" )
endif()
# make predefined install dirs available everywhere
include( GNUInstallDirs )
# make uninstall support
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY
)
# Early configure these files as we need them later on
set( CALAMARES_CMAKE_DIR "${CMAKE_SOURCE_DIR}/CMakeModules" )
set( CALAMARES_LIBRARIES calamares )
add_subdirectory( src ) add_subdirectory( src )
add_feature_info(Python ${WITH_PYTHON} "Python job modules") add_feature_info(Python ${WITH_PYTHON} "Python job modules")
@ -373,14 +413,6 @@ add_feature_info(PythonQt ${WITH_PYTHONQT} "Python view modules")
add_feature_info(Config ${INSTALL_CONFIG} "Install Calamares configuration") add_feature_info(Config ${INSTALL_CONFIG} "Install Calamares configuration")
add_feature_info(KCrash ${WITH_KF5Crash} "Crash dumps via KCrash") add_feature_info(KCrash ${WITH_KF5Crash} "Crash dumps via KCrash")
feature_summary(WHAT ALL)
get_directory_property( SKIPPED_MODULES
DIRECTORY src/modules
DEFINITION LIST_SKIPPED_MODULES
)
calamares_explain_skipped_modules( ${SKIPPED_MODULES} )
# Add all targets to the build-tree export set # Add all targets to the build-tree export set
set( CMAKE_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/Calamares" CACHE PATH "Installation directory for CMake files" ) set( CMAKE_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/Calamares" CACHE PATH "Installation directory for CMake files" )
set( CMAKE_INSTALL_FULL_CMAKEDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_CMAKEDIR}" ) set( CMAKE_INSTALL_FULL_CMAKEDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_CMAKEDIR}" )
@ -434,12 +466,14 @@ if( INSTALL_CONFIG )
) )
endif() endif()
if( INSTALL_POLKIT )
install( install(
FILES FILES
com.github.calamares.calamares.policy com.github.calamares.calamares.policy
DESTINATION DESTINATION
"${POLKITQT-1_POLICY_FILES_INSTALL_DIR}" "${POLKITQT-1_POLICY_FILES_INSTALL_DIR}"
) )
endif()
install( install(
FILES FILES
@ -465,3 +499,13 @@ configure_file(
add_custom_target( uninstall add_custom_target( uninstall
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake
) )
### CMAKE SUMMARY REPORT
#
feature_summary(WHAT ALL)
get_directory_property( SKIPPED_MODULES
DIRECTORY src/modules
DEFINITION LIST_SKIPPED_MODULES
)
calamares_explain_skipped_modules( ${SKIPPED_MODULES} )

View File

@ -22,6 +22,40 @@
include( CMakeParseArguments ) include( CMakeParseArguments )
if( NOT _rcc_version_support_checked )
set( _rcc_version_support_checked TRUE )
# Extract the executable name
get_property( _rcc_executable
TARGET ${Qt5Core_RCC_EXECUTABLE}
PROPERTY IMPORTED_LOCATION
)
if( NOT _rcc_executable )
# Weird, probably now uses Qt5::rcc which is wrong too
set( _rcc_executable ${Qt5Core_RCC_EXECUTABLE} )
endif()
# Try an empty RCC file with explicit format-version
execute_process(
COMMAND echo "<RCC version='1.0'></RCC>"
COMMAND ${Qt5Core_RCC_EXECUTABLE} --format-version 1 --list -
RESULT_VARIABLE _rcc_version_rv
ERROR_VARIABLE _rcc_version_dump
)
if ( _rcc_version_rv EQUAL 0 )
# Supported: force to the reproducible version
set( _rcc_version_support --format-version 1 )
else()
# Older Qt versions (5.7, 5.8) don't support setting the
# rcc format-version, so won't be reproducible if they
# default to version 2.
set( _rcc_version_support "" )
endif()
unset( _rcc_version_rv )
unset( _rcc_version_dump )
endif()
# Internal macro for adding the C++ / Qt translations to the # Internal macro for adding the C++ / Qt translations to the
# build and install tree. Should be called only once, from # build and install tree. Should be called only once, from
# src/calamares/CMakeLists.txt. # src/calamares/CMakeLists.txt.
@ -61,7 +95,7 @@ macro(add_calamares_translations language)
add_custom_command( add_custom_command(
OUTPUT ${trans_outfile} OUTPUT ${trans_outfile}
COMMAND "${Qt5Core_RCC_EXECUTABLE}" COMMAND "${Qt5Core_RCC_EXECUTABLE}"
ARGS ${rcc_options} --format-version 1 -name ${trans_file} -o ${trans_outfile} ${trans_infile} ARGS ${rcc_options} ${_rcc_version_support} -name ${trans_file} -o ${trans_outfile} ${trans_infile}
MAIN_DEPENDENCY ${trans_infile} MAIN_DEPENDENCY ${trans_infile}
DEPENDS ${QM_FILES} DEPENDS ${QM_FILES}
) )

View File

@ -47,9 +47,9 @@ GenericName[es]=Instalador del Sistema
Comment[es]=Calamares Instalador del Sistema Comment[es]=Calamares Instalador del Sistema
Name[es]=Instalar Sistema Name[es]=Instalar Sistema
Icon[et]=calamares Icon[et]=calamares
GenericName[et]=Süsteemi installija GenericName[et]=Süsteemipaigaldaja
Comment[et]=Calamares Süsteemi installija Comment[et]=Calamares süsteemipaigaldaja
Name[et]=Installi süsteem Name[et]=Paigalda süsteem
Name[eu]=Sistema instalatu Name[eu]=Sistema instalatu
Name[es_PR]=Instalar el sistema Name[es_PR]=Instalar el sistema
Icon[fr]=calamares Icon[fr]=calamares
@ -92,9 +92,9 @@ GenericName[lt]=Sistemos diegimas į kompiuterį
Comment[lt]=Calamares Sistemos diegimo programa Comment[lt]=Calamares Sistemos diegimo programa
Name[lt]=Įdiegti Sistemą Name[lt]=Įdiegti Sistemą
Icon[it_IT]=calamares Icon[it_IT]=calamares
GenericName[it_IT]=Programma di installazione GenericName[it_IT]=Programma d'installazione del sistema
Comment[it_IT]=Calamares  Installare il Sistema Comment[it_IT]=Calamares Programma d'installazione del sistema
Name[it_IT]=Installa il Sistema Name[it_IT]=Installa il sistema
Icon[nb]=calamares Icon[nb]=calamares
GenericName[nb]=Systeminstallatør GenericName[nb]=Systeminstallatør
Comment[nb]=Calamares-systeminstallatør Comment[nb]=Calamares-systeminstallatør
@ -156,6 +156,9 @@ Icon[eo]=calamares
GenericName[eo]=Sistema Instalilo GenericName[eo]=Sistema Instalilo
Comment[eo]=Calamares Sistema Instalilo Comment[eo]=Calamares Sistema Instalilo
Name[eo]=Instali Sistemo Name[eo]=Instali Sistemo
Icon[es_MX]=calamares
GenericName[es_MX]=Instalador del sistema
Comment[es_MX]=Calamares - Instalador del sistema
Name[es_MX]=Instalar el Sistema Name[es_MX]=Instalar el Sistema
Icon[pt_PT]=calamares Icon[pt_PT]=calamares
GenericName[pt_PT]=Instalador de Sistema GenericName[pt_PT]=Instalador de Sistema

View File

@ -485,12 +485,12 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/>
<source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source> <source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source>
<translation type="unfinished"/> <translation>Kommandoen kører i værtsmiljøet og har brug for at kende rodstien, men der er ikke defineret nogen rootMountPoint.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/>
<source>The command needs to know the user&apos;s name, but no username is defined.</source> <source>The command needs to know the user&apos;s name, but no username is defined.</source>
<translation type="unfinished"/> <translation>Kommandoen har brug for at kende brugerens navn, men der er ikke defineret noget brugernavn.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1670,7 +1670,7 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/>
<source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source> <source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source>
<translation type="unfinished"/> <translation>Partitionstabellen %1 har allerede %2 primære partitioner, og der kan ikke tilføjes flere. Fjern venligst en primær partition og tilføj i stedet en udviddet partition.</translation>
</message> </message>
</context> </context>
<context> <context>

File diff suppressed because it is too large Load Diff

View File

@ -9,12 +9,12 @@
<message> <message>
<location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="79"/> <location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="79"/>
<source>This system was started with an &lt;strong&gt;EFI&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from an EFI environment, this installer must deploy a boot loader application, like &lt;strong&gt;GRUB&lt;/strong&gt; or &lt;strong&gt;systemd-boot&lt;/strong&gt; on an &lt;strong&gt;EFI System Partition&lt;/strong&gt;. This is automatic, unless you choose manual partitioning, in which case you must choose it or create it on your own.</source> <source>This system was started with an &lt;strong&gt;EFI&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from an EFI environment, this installer must deploy a boot loader application, like &lt;strong&gt;GRUB&lt;/strong&gt; or &lt;strong&gt;systemd-boot&lt;/strong&gt; on an &lt;strong&gt;EFI System Partition&lt;/strong&gt;. This is automatic, unless you choose manual partitioning, in which case you must choose it or create it on your own.</source>
<translation>See süsteem käivitati &lt;strong&gt;EFI&lt;/strong&gt; käivituskeskkonnas.&lt;br&gt;&lt;br&gt;Et seadistada käivitust EFI keskkonnast, peab see installija paigaldama käivituslaaduri rakenduse, näiteks &lt;strong&gt;GRUB&lt;/strong&gt; või &lt;strong&gt;systemd-boot&lt;/strong&gt; sinu &lt;strong&gt;EFI süsteemipartitsioonile&lt;/strong&gt;. See on automaatne, välja arvatud juhul, kui valid käsitsi partitsioneerimise, sel juhul pead sa selle valima või ise looma.</translation> <translation>See süsteem käivitati &lt;strong&gt;EFI&lt;/strong&gt; käivituskeskkonnas.&lt;br&gt;&lt;br&gt;Et seadistada käivitust EFI keskkonnast, peab see paigaldaja paigaldama käivituslaaduri rakenduse, näiteks &lt;strong&gt;GRUB&lt;/strong&gt; või &lt;strong&gt;systemd-boot&lt;/strong&gt; sinu &lt;strong&gt;EFI süsteemipartitsioonile&lt;/strong&gt;. See on automaatne, välja arvatud juhul, kui valid käsitsi partitsioneerimise, sel juhul pead sa selle valima või ise looma.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="91"/> <location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="91"/>
<source>This system was started with a &lt;strong&gt;BIOS&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from a BIOS environment, this installer must install a boot loader, like &lt;strong&gt;GRUB&lt;/strong&gt;, either at the beginning of a partition or on the &lt;strong&gt;Master Boot Record&lt;/strong&gt; near the beginning of the partition table (preferred). This is automatic, unless you choose manual partitioning, in which case you must set it up on your own.</source> <source>This system was started with a &lt;strong&gt;BIOS&lt;/strong&gt; boot environment.&lt;br&gt;&lt;br&gt;To configure startup from a BIOS environment, this installer must install a boot loader, like &lt;strong&gt;GRUB&lt;/strong&gt;, either at the beginning of a partition or on the &lt;strong&gt;Master Boot Record&lt;/strong&gt; near the beginning of the partition table (preferred). This is automatic, unless you choose manual partitioning, in which case you must set it up on your own.</source>
<translation>See süsteem käivitati &lt;strong&gt;BIOS&lt;/strong&gt; käivituskeskkonnas.&lt;br&gt;&lt;br&gt;Et seadistada käivitust BIOS keskkonnast, peab see installija paigaldama käivituslaaduri, näiteks &lt;strong&gt;GRUB&lt;/strong&gt;, kas mõne partitsiooni algusse või &lt;strong&gt;Master Boot Record&lt;/strong&gt;&apos;i paritsioonitabeli alguse lähedale (eelistatud). See on automaatne, välja arvatud juhul, kui valid käsitsi partitsioneerimise, sel juhul pead sa selle ise seadistama.</translation> <translation>See süsteem käivitati &lt;strong&gt;BIOS&lt;/strong&gt; käivituskeskkonnas.&lt;br&gt;&lt;br&gt;Et seadistada käivitust BIOS keskkonnast, peab see paigaldaja paigaldama käivituslaaduri, näiteks &lt;strong&gt;GRUB&lt;/strong&gt;, kas mõne partitsiooni algusse või &lt;strong&gt;Master Boot Record&lt;/strong&gt;&apos;i paritsioonitabeli alguse lähedale (eelistatud). See on automaatne, välja arvatud juhul, kui valid käsitsi partitsioneerimise, sel juhul pead sa selle ise seadistama.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -37,7 +37,7 @@
<message> <message>
<location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="111"/> <location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="111"/>
<source>Do not install a boot loader</source> <source>Do not install a boot loader</source>
<translation>Ära installi käivituslaadurit</translation> <translation>Ära paigalda käivituslaadurit</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="125"/> <location filename="../src/modules/partition/core/BootLoaderModel.cpp" line="125"/>
@ -99,7 +99,7 @@
<message> <message>
<location filename="../src/libcalamaresui/ExecutionViewStep.cpp" line="78"/> <location filename="../src/libcalamaresui/ExecutionViewStep.cpp" line="78"/>
<source>Install</source> <source>Install</source>
<translation>Installi</translation> <translation>Paigalda</translation>
</message> </message>
</context> </context>
<context> <context>
@ -179,24 +179,24 @@
<location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="76"/>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="267"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="267"/>
<source>Cancel installation without changing the system.</source> <source>Cancel installation without changing the system.</source>
<translation>Tühista installimine ilma süsteemi muutmata.</translation> <translation>Tühista paigaldamine ilma süsteemi muutmata.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="255"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="255"/>
<source>&amp;Install</source> <source>&amp;Install</source>
<translation>&amp;Installi</translation> <translation>&amp;Paigalda</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="303"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="303"/>
<source>Cancel installation?</source> <source>Cancel installation?</source>
<translation>Tühista installimine?</translation> <translation>Tühista paigaldamine?</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="304"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="304"/>
<source>Do you really want to cancel the current install process? <source>Do you really want to cancel the current install process?
The installer will quit and all changes will be lost.</source> The installer will quit and all changes will be lost.</source>
<translation>Kas sa tõesti soovid tühistada praeguse installiprotsessi? <translation>Kas sa tõesti soovid tühistada praeguse paigaldusprotsessi?
Installija sulgub ja kõik muutused kaovad.</translation> Paigaldaja sulgub ning kõik muutused kaovad.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="309"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="309"/>
@ -221,12 +221,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="216"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="216"/>
<source>The %1 installer is about to make changes to your disk in order to install %2.&lt;br/&gt;&lt;strong&gt;You will not be able to undo these changes.&lt;/strong&gt;</source> <source>The %1 installer is about to make changes to your disk in order to install %2.&lt;br/&gt;&lt;strong&gt;You will not be able to undo these changes.&lt;/strong&gt;</source>
<translation>%1 installija on tegemas muudatusi sinu kettale, et installida %2.&lt;br/&gt;&lt;strong&gt;Sa ei saa neid muudatusi tagasi võtta.&lt;/strong&gt;</translation> <translation>%1 paigaldaja on tegemas muudatusi sinu kettale, et paigaldada %2.&lt;br/&gt;&lt;strong&gt;Sa ei saa neid muudatusi tagasi võtta.&lt;/strong&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="221"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="221"/>
<source>&amp;Install now</source> <source>&amp;Install now</source>
<translation>&amp;Installi kohe</translation> <translation>&amp;Paigalda kohe</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="222"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="222"/>
@ -241,7 +241,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="262"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="262"/>
<source>The installation is complete. Close the installer.</source> <source>The installation is complete. Close the installer.</source>
<translation>Installimine on lõpetatud. Sulge installija.</translation> <translation>Paigaldamine on lõpetatud. Sulge paigaldaja.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="159"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="159"/>
@ -251,7 +251,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="160"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="160"/>
<source>Installation Failed</source> <source>Installation Failed</source>
<translation>Installimine ebaõnnestus</translation> <translation>Paigaldamine ebaõnnestus</translation>
</message> </message>
</context> </context>
<context> <context>
@ -282,7 +282,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/calamares/CalamaresWindow.cpp" line="44"/> <location filename="../src/calamares/CalamaresWindow.cpp" line="44"/>
<source>%1 Installer</source> <source>%1 Installer</source>
<translation>%1 installija</translation> <translation>%1 paigaldaja</translation>
</message> </message>
<message> <message>
<location filename="../src/calamares/CalamaresWindow.cpp" line="111"/> <location filename="../src/calamares/CalamaresWindow.cpp" line="111"/>
@ -295,12 +295,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="96"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="96"/>
<source>This computer does not satisfy the minimum requirements for installing %1.&lt;br/&gt;Installation cannot continue. &lt;a href=&quot;#details&quot;&gt;Details...&lt;/a&gt;</source> <source>This computer does not satisfy the minimum requirements for installing %1.&lt;br/&gt;Installation cannot continue. &lt;a href=&quot;#details&quot;&gt;Details...&lt;/a&gt;</source>
<translation>See arvuti ei rahulda %1 installimiseks vajalikke minimaaltingimusi.&lt;br/&gt;Installimine ei saa jätkuda. &lt;a href=&quot;#details&quot;&gt;Detailid...&lt;/a&gt;</translation> <translation>See arvuti ei rahulda %1 paigldamiseks vajalikke minimaaltingimusi.&lt;br/&gt;Paigaldamine ei saa jätkuda. &lt;a href=&quot;#details&quot;&gt;Detailid...&lt;/a&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="113"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="113"/>
<source>This computer does not satisfy some of the recommended requirements for installing %1.&lt;br/&gt;Installation can continue, but some features might be disabled.</source> <source>This computer does not satisfy some of the recommended requirements for installing %1.&lt;br/&gt;Installation can continue, but some features might be disabled.</source>
<translation>See arvuti ei rahulda mõnda %1 installimiseks soovitatud tingimust.&lt;br/&gt;Installimine võib jätkuda, ent mõned funktsioonid võivad olla keelatud.</translation> <translation>See arvuti ei rahulda mõnda %1 paigaldamiseks soovitatud tingimust.&lt;br/&gt;Paigaldamine võib jätkuda, ent mõned funktsioonid võivad olla keelatud.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="151"/> <location filename="../src/modules/welcome/checker/CheckerWidget.cpp" line="151"/>
@ -371,7 +371,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1040"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1040"/>
<source>&lt;strong&gt;Select a partition to install on&lt;/strong&gt;</source> <source>&lt;strong&gt;Select a partition to install on&lt;/strong&gt;</source>
<translation>&lt;strong&gt;Vali partitsioon, kuhu installida&lt;/strong&gt;</translation> <translation>&lt;strong&gt;Vali partitsioon, kuhu paigaldada&lt;/strong&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1096"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1096"/>
@ -412,7 +412,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1260"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1260"/>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1284"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1284"/>
<source>&lt;strong&gt;Install alongside&lt;/strong&gt;&lt;br/&gt;The installer will shrink a partition to make room for %1.</source> <source>&lt;strong&gt;Install alongside&lt;/strong&gt;&lt;br/&gt;The installer will shrink a partition to make room for %1.</source>
<translation>&lt;strong&gt;Installi kõrvale&lt;/strong&gt;&lt;br/&gt;Installija vähendab partitsiooni, et teha ruumi operatsioonisüsteemile %1.</translation> <translation>&lt;strong&gt;Paigalda kõrvale&lt;/strong&gt;&lt;br/&gt;Paigaldaja vähendab partitsiooni, et teha ruumi operatsioonisüsteemile %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1213"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1213"/>
@ -485,12 +485,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/>
<source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source> <source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source>
<translation type="unfinished"/> <translation>See käsklus käivitatakse hostikeskkonnas ning peab teadma juurteed, kuid rootMountPoint pole defineeritud.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/>
<source>The command needs to know the user&apos;s name, but no username is defined.</source> <source>The command needs to know the user&apos;s name, but no username is defined.</source>
<translation type="unfinished"/> <translation>Käsklus peab teadma kasutaja nime, aga kasutajanimi pole defineeritud.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -599,7 +599,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="79"/> <location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="79"/>
<source>The installer failed to create partition on disk &apos;%1&apos;.</source> <source>The installer failed to create partition on disk &apos;%1&apos;.</source>
<translation>Installija ei suutnud luua partitsiooni kettale &quot;%1&quot;.</translation> <translation>Paigaldaja ei suutnud luua partitsiooni kettale &quot;%1&quot;.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -650,7 +650,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="72"/> <location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="72"/>
<source>The installer failed to create a partition table on %1.</source> <source>The installer failed to create a partition table on %1.</source>
<translation>Installija ei suutnud luua partitsioonitabelit kettale %1.</translation> <translation>Paigaldaja ei suutnud luua partitsioonitabelit kettale %1.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -711,7 +711,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/DeletePartitionJob.cpp" line="68"/> <location filename="../src/modules/partition/jobs/DeletePartitionJob.cpp" line="68"/>
<source>The installer failed to delete partition %1.</source> <source>The installer failed to delete partition %1.</source>
<translation>Installija ei suutnud kustutada partitsiooni %1.</translation> <translation>Paigaldaja ei suutnud kustutada partitsiooni %1.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -719,7 +719,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="150"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="150"/>
<source>The type of &lt;strong&gt;partition table&lt;/strong&gt; on the selected storage device.&lt;br&gt;&lt;br&gt;The only way to change the partition table type is to erase and recreate the partition table from scratch, which destroys all data on the storage device.&lt;br&gt;This installer will keep the current partition table unless you explicitly choose otherwise.&lt;br&gt;If unsure, on modern systems GPT is preferred.</source> <source>The type of &lt;strong&gt;partition table&lt;/strong&gt; on the selected storage device.&lt;br&gt;&lt;br&gt;The only way to change the partition table type is to erase and recreate the partition table from scratch, which destroys all data on the storage device.&lt;br&gt;This installer will keep the current partition table unless you explicitly choose otherwise.&lt;br&gt;If unsure, on modern systems GPT is preferred.</source>
<translation>&lt;strong&gt;Partitsioonitabeli&lt;/strong&gt; tüüp valitud mäluseadmel.&lt;br&gt;&lt;br&gt;Ainuke viis partitsioonitabelit muuta on see kustutada ja nullist taasluua, mis hävitab kõik andmed mäluseadmel.&lt;br&gt;See installija säilitab praeguse partitsioonitabeli, v.a juhul kui sa ise valid vastupidist.&lt;br&gt;Kui pole kindel, eelista modernsetel süsteemidel GPT-d.</translation> <translation>&lt;strong&gt;Partitsioonitabeli&lt;/strong&gt; tüüp valitud mäluseadmel.&lt;br&gt;&lt;br&gt;Ainuke viis partitsioonitabelit muuta on see kustutada ja nullist taasluua, mis hävitab kõik andmed mäluseadmel.&lt;br&gt;See paigaldaja säilitab praeguse partitsioonitabeli, v.a juhul kui sa ise valid vastupidist.&lt;br&gt;Kui pole kindel, eelista modernsetel süsteemidel GPT-d.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="107"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="107"/>
@ -734,7 +734,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="121"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="121"/>
<source>This installer &lt;strong&gt;cannot detect a partition table&lt;/strong&gt; on the selected storage device.&lt;br&gt;&lt;br&gt;The device either has no partition table, or the partition table is corrupted or of an unknown type.&lt;br&gt;This installer can create a new partition table for you, either automatically, or through the manual partitioning page.</source> <source>This installer &lt;strong&gt;cannot detect a partition table&lt;/strong&gt; on the selected storage device.&lt;br&gt;&lt;br&gt;The device either has no partition table, or the partition table is corrupted or of an unknown type.&lt;br&gt;This installer can create a new partition table for you, either automatically, or through the manual partitioning page.</source>
<translation>See installija &lt;strong&gt;ei suuda tuvastada partitsioonitabelit&lt;/strong&gt;valitud mäluseadmel.&lt;br&gt;&lt;br&gt;Seadmel kas pole partitsioonitabelit, see on korrumpeerunud või on tundmatut tüüpi.&lt;br&gt;See installija võib sulle luua uue partitsioonitabeli, kas automaatselt või läbi käsitsi partitsioneerimise lehe. </translation> <translation>See paigaldaja &lt;strong&gt;ei suuda tuvastada partitsioonitabelit&lt;/strong&gt;valitud mäluseadmel.&lt;br&gt;&lt;br&gt;Seadmel kas pole partitsioonitabelit, see on korrumpeerunud või on tundmatut tüüpi.&lt;br&gt;See paigaldaja võib sulle luua uue partitsioonitabeli, kas automaatselt või läbi käsitsi partitsioneerimise lehe. </translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="131"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="131"/>
@ -877,7 +877,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="147"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="147"/>
<source>Install %1 on &lt;strong&gt;new&lt;/strong&gt; %2 system partition.</source> <source>Install %1 on &lt;strong&gt;new&lt;/strong&gt; %2 system partition.</source>
<translation>Installi %1 &lt;strong&gt;uude&lt;/strong&gt; %2 süsteemipartitsiooni.</translation> <translation>Paigalda %1 &lt;strong&gt;uude&lt;/strong&gt; %2 süsteemipartitsiooni.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="151"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="151"/>
@ -887,7 +887,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="159"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="159"/>
<source>Install %2 on %3 system partition &lt;strong&gt;%1&lt;/strong&gt;.</source> <source>Install %2 on %3 system partition &lt;strong&gt;%1&lt;/strong&gt;.</source>
<translation>Installi %2 %3 süsteemipartitsioonile &lt;strong&gt;%1&lt;/strong&gt;.</translation> <translation>Paigalda %2 %3 süsteemipartitsioonile &lt;strong&gt;%1&lt;/strong&gt;.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="164"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="164"/>
@ -897,7 +897,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="176"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="176"/>
<source>Install boot loader on &lt;strong&gt;%1&lt;/strong&gt;.</source> <source>Install boot loader on &lt;strong&gt;%1&lt;/strong&gt;.</source>
<translation>Installi käivituslaadur kohta &lt;strong&gt;%1&lt;/strong&gt;.</translation> <translation>Paigalda käivituslaadur kohta &lt;strong&gt;%1&lt;/strong&gt;.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="186"/> <location filename="../src/modules/partition/jobs/FillGlobalStorageJob.cpp" line="186"/>
@ -915,7 +915,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="95"/> <location filename="../src/modules/finished/FinishedPage.ui" line="95"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When this box is checked, your system will restart immediately when you click on &lt;span style=&quot; font-style:italic;&quot;&gt;Done&lt;/span&gt; or close the installer.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When this box is checked, your system will restart immediately when you click on &lt;span style=&quot; font-style:italic;&quot;&gt;Done&lt;/span&gt; or close the installer.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Kui see märkeruut on täidetud, taaskäivitab su süsteem automaatselt, kui vajutad &lt;span style=&quot; font-style:italic;&quot;&gt;Valmis&lt;/span&gt; või sulged installija.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Kui see märkeruut on täidetud, taaskäivitab su süsteem automaatselt, kui vajutad &lt;span style=&quot; font-style:italic;&quot;&gt;Valmis&lt;/span&gt; või sulged paigaldaja.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="98"/> <location filename="../src/modules/finished/FinishedPage.ui" line="98"/>
@ -925,12 +925,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.cpp" line="51"/> <location filename="../src/modules/finished/FinishedPage.cpp" line="51"/>
<source>&lt;h1&gt;All done.&lt;/h1&gt;&lt;br/&gt;%1 has been installed on your computer.&lt;br/&gt;You may now restart into your new system, or continue using the %2 Live environment.</source> <source>&lt;h1&gt;All done.&lt;/h1&gt;&lt;br/&gt;%1 has been installed on your computer.&lt;br/&gt;You may now restart into your new system, or continue using the %2 Live environment.</source>
<translation>&lt;h1&gt;Kõik on valmis.&lt;/h1&gt;&lt;br/&gt;%1 on installitud sinu arvutisse.&lt;br/&gt;Sa võid nüüd taaskäivitada oma uude süsteemi või jätkata %2 live-keskkonna kasutamist.</translation> <translation>&lt;h1&gt;Kõik on valmis.&lt;/h1&gt;&lt;br/&gt;%1 on paigaldatud sinu arvutisse.&lt;br/&gt;Sa võid nüüd taaskäivitada oma uude süsteemi või jätkata %2 live-keskkonna kasutamist.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.cpp" line="109"/> <location filename="../src/modules/finished/FinishedPage.cpp" line="109"/>
<source>&lt;h1&gt;Installation Failed&lt;/h1&gt;&lt;br/&gt;%1 has not been installed on your computer.&lt;br/&gt;The error message was: %2.</source> <source>&lt;h1&gt;Installation Failed&lt;/h1&gt;&lt;br/&gt;%1 has not been installed on your computer.&lt;br/&gt;The error message was: %2.</source>
<translation>&lt;h1&gt;Installimine ebaõnnestus&lt;/h1&gt;&lt;br/&gt;%1 ei installitud sinu arvutisse.&lt;br/&gt;Veateade oli: %2.</translation> <translation>&lt;h1&gt;Paigaldamine ebaõnnestus&lt;/h1&gt;&lt;br/&gt;%1 ei paigaldatud sinu arvutisse.&lt;br/&gt;Veateade oli: %2.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -943,12 +943,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/finished/FinishedViewStep.cpp" line="124"/> <location filename="../src/modules/finished/FinishedViewStep.cpp" line="124"/>
<source>Installation Complete</source> <source>Installation Complete</source>
<translation>Installimine lõpetatud</translation> <translation>Paigaldus valmis</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedViewStep.cpp" line="125"/> <location filename="../src/modules/finished/FinishedViewStep.cpp" line="125"/>
<source>The installation of %1 is complete.</source> <source>The installation of %1 is complete.</source>
<translation>%1 installimine on lõpetatud.</translation> <translation>%1 paigaldus on valmis.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -971,7 +971,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/FormatPartitionJob.cpp" line="77"/> <location filename="../src/modules/partition/jobs/FormatPartitionJob.cpp" line="77"/>
<source>The installer failed to format partition %1 on disk &apos;%2&apos;.</source> <source>The installer failed to format partition %1 on disk &apos;%2&apos;.</source>
<translation>Installija ei suutnud vormindada partitsiooni %1 kettal &quot;%2&quot;.</translation> <translation>Paigaldaja ei suutnud vormindada partitsiooni %1 kettal &quot;%2&quot;.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -979,12 +979,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="53"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="53"/>
<source>Konsole not installed</source> <source>Konsole not installed</source>
<translation>Konsole pole installitud</translation> <translation>Konsole pole paigaldatud</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="54"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="54"/>
<source>Please install KDE Konsole and try again!</source> <source>Please install KDE Konsole and try again!</source>
<translation>Palun installi KDE Konsole ja proovi uuesti!</translation> <translation>Palun paigalda KDE Konsole ja proovi uuesti!</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="116"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="116"/>
@ -1059,7 +1059,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="115"/> <location filename="../src/modules/license/LicensePage.cpp" line="115"/>
<source>&lt;h1&gt;License Agreement&lt;/h1&gt;This setup procedure will install proprietary software that is subject to licensing terms.</source> <source>&lt;h1&gt;License Agreement&lt;/h1&gt;This setup procedure will install proprietary software that is subject to licensing terms.</source>
<translation>&lt;h1&gt;Litsensileping&lt;/h1&gt;See seadistusprotseduur installib omandiõigusega tarkvara, mis vastab litsensitingimustele.</translation> <translation>&lt;h1&gt;Litsensileping&lt;/h1&gt;See seadistusprotseduur paigaldab omandiõigusega tarkvara, mis vastab litsensitingimustele.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="118"/> <location filename="../src/modules/license/LicensePage.cpp" line="118"/>
@ -1069,12 +1069,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="124"/> <location filename="../src/modules/license/LicensePage.cpp" line="124"/>
<source>&lt;h1&gt;License Agreement&lt;/h1&gt;This setup procedure can install proprietary software that is subject to licensing terms in order to provide additional features and enhance the user experience.</source> <source>&lt;h1&gt;License Agreement&lt;/h1&gt;This setup procedure can install proprietary software that is subject to licensing terms in order to provide additional features and enhance the user experience.</source>
<translation>&lt;h1&gt;Litsensileping&lt;/h1&gt;See seadistusprotseduur võib installida omandiõigusega tarkvara, mis vastab litsensitingimustele, et pakkuda lisafunktsioone ja täiendada kasutajakogemust.</translation> <translation>&lt;h1&gt;Litsensileping&lt;/h1&gt;See seadistusprotseduur võib paigaldada omandiõigusega tarkvara, mis vastab litsensitingimustele, et pakkuda lisafunktsioone ja täiendada kasutajakogemust.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="129"/> <location filename="../src/modules/license/LicensePage.cpp" line="129"/>
<source>Please review the End User License Agreements (EULAs) above.&lt;br/&gt;If you do not agree with the terms, proprietary software will not be installed, and open source alternatives will be used instead.</source> <source>Please review the End User License Agreements (EULAs) above.&lt;br/&gt;If you do not agree with the terms, proprietary software will not be installed, and open source alternatives will be used instead.</source>
<translation>Palun loe läbi allolevad lõppkasutaja litsensilepingud (EULAd).&lt;br/&gt;Kui sa tingimustega ei nõustu, ei installita omandiõigusega tarkvara ning selle asemel kasutatakse avatud lähtekoodiga alternatiive.</translation> <translation>Palun loe läbi allolevad lõppkasutaja litsensilepingud (EULAd).&lt;br/&gt;Kui sa tingimustega ei nõustu, ei paigaldata omandiõigusega tarkvara ning selle asemel kasutatakse avatud lähtekoodiga alternatiive.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="159"/> <location filename="../src/modules/license/LicensePage.cpp" line="159"/>
@ -1190,12 +1190,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallPage.cpp" line="86"/> <location filename="../src/modules/netinstall/NetInstallPage.cpp" line="86"/>
<source>Network Installation. (Disabled: Unable to fetch package lists, check your network connection)</source> <source>Network Installation. (Disabled: Unable to fetch package lists, check your network connection)</source>
<translation>Võrguinstall. (Keelatud: paketinimistute saamine ebaõnnestus, kontrolli oma võrguühendust)</translation> <translation>Võrgupaigaldus. (Keelatud: paketinimistute saamine ebaõnnestus, kontrolli oma võrguühendust)</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallPage.cpp" line="96"/> <location filename="../src/modules/netinstall/NetInstallPage.cpp" line="96"/>
<source>Network Installation. (Disabled: Received invalid groups data)</source> <source>Network Installation. (Disabled: Received invalid groups data)</source>
<translation>Võrguinstall. (Keelatud: vastu võetud sobimatud grupiandmed)</translation> <translation>Võrgupaigaldus. (Keelatud: vastu võetud sobimatud grupiandmed)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1494,7 +1494,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="200"/> <location filename="../src/modules/users/page_usersetup.ui" line="200"/>
<source>&lt;small&gt;If more than one person will use this computer, you can set up multiple accounts after installation.&lt;/small&gt;</source> <source>&lt;small&gt;If more than one person will use this computer, you can set up multiple accounts after installation.&lt;/small&gt;</source>
<translation>&lt;small&gt;Kui rohkem kui üks inimene kasutab seda arvutit, saad sa määrata mitu kontot peale installi.&lt;/small&gt;</translation> <translation>&lt;small&gt;Kui rohkem kui üks inimene kasutab seda arvutit, saad sa pärast paigaldust määrata mitu kontot.&lt;/small&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="335"/> <location filename="../src/modules/users/page_usersetup.ui" line="335"/>
@ -1655,7 +1655,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.ui" line="148"/> <location filename="../src/modules/partition/gui/PartitionPage.ui" line="148"/>
<source>Install boot &amp;loader on:</source> <source>Install boot &amp;loader on:</source>
<translation>Installi käivituslaadur kohta:</translation> <translation>Paigalda käivituslaadur kohta:</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="169"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="169"/>
@ -1665,12 +1665,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/>
<source>Can not create new partition</source> <source>Can not create new partition</source>
<translation type="unfinished"/> <translation>Uut partitsiooni ei saa luua</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/>
<source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source> <source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source>
<translation type="unfinished"/> <translation>Partitsioonitabel kohas %1 juba omab %2 peamist partitsiooni ning rohkem juurde ei saa lisada. Palun eemalda selle asemel üks peamine partitsioon ja lisa juurde laiendatud partitsioon. </translation>
</message> </message>
</context> </context>
<context> <context>
@ -1688,12 +1688,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="158"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="158"/>
<source>Install %1 &lt;strong&gt;alongside&lt;/strong&gt; another operating system.</source> <source>Install %1 &lt;strong&gt;alongside&lt;/strong&gt; another operating system.</source>
<translation>Installi %1 praeguse operatsioonisüsteemi &lt;strong&gt;kõrvale&lt;/strong&gt;</translation> <translation>Paigalda %1 praeguse operatsioonisüsteemi &lt;strong&gt;kõrvale&lt;/strong&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="162"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="162"/>
<source>&lt;strong&gt;Erase&lt;/strong&gt; disk and install %1.</source> <source>&lt;strong&gt;Erase&lt;/strong&gt; disk and install %1.</source>
<translation>&lt;strong&gt;Tühjenda&lt;/strong&gt; ketas ja installi %1.</translation> <translation>&lt;strong&gt;Tühjenda&lt;/strong&gt; ketas ja paigalda %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="166"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="166"/>
@ -1708,12 +1708,12 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="184"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="184"/>
<source>Install %1 &lt;strong&gt;alongside&lt;/strong&gt; another operating system on disk &lt;strong&gt;%2&lt;/strong&gt; (%3).</source> <source>Install %1 &lt;strong&gt;alongside&lt;/strong&gt; another operating system on disk &lt;strong&gt;%2&lt;/strong&gt; (%3).</source>
<translation>Installi %1 teise operatsioonisüsteemi &lt;strong&gt;kõrvale&lt;/strong&gt; kettal &lt;strong&gt;%2&lt;/strong&gt; (%3).</translation> <translation>Paigalda %1 teise operatsioonisüsteemi &lt;strong&gt;kõrvale&lt;/strong&gt; kettal &lt;strong&gt;%2&lt;/strong&gt; (%3).</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="190"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="190"/>
<source>&lt;strong&gt;Erase&lt;/strong&gt; disk &lt;strong&gt;%2&lt;/strong&gt; (%3) and install %1.</source> <source>&lt;strong&gt;Erase&lt;/strong&gt; disk &lt;strong&gt;%2&lt;/strong&gt; (%3) and install %1.</source>
<translation>&lt;strong&gt;Tühjenda&lt;/strong&gt; ketas &lt;strong&gt;%2&lt;/strong&gt; (%3) ja installi %1.</translation> <translation>&lt;strong&gt;Tühjenda&lt;/strong&gt; ketas &lt;strong&gt;%2&lt;/strong&gt; (%3) ja paigalda %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="196"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="196"/>
@ -1800,7 +1800,7 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="67"/> <location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="67"/>
<source>Please choose a look-and-feel for the KDE Plasma Desktop. You can also skip this step and configure the look-and-feel once the system is installed. Clicking on a look-and-feel selection will give you a live preview of that look-and-feel.</source> <source>Please choose a look-and-feel for the KDE Plasma Desktop. You can also skip this step and configure the look-and-feel once the system is installed. Clicking on a look-and-feel selection will give you a live preview of that look-and-feel.</source>
<translation>Palun vali KDE Plasma Desktop&apos;ile välimus-ja-tunnetus. Sa võid selle sammu ka vahele jätta ja seadistada välimust-ja-tunnetust siis, kui süsteem on installitud. Välimuse-ja-tunnetuse valikule klõpsates näed selle reaalajas eelvaadet.</translation> <translation>Palun vali KDE Plasma töölauale välimus-ja-tunnetus. Sa võid selle sammu ka vahele jätta ja seadistada välimust-ja-tunnetust siis, kui süsteem on paigaldatud. Välimuse-ja-tunnetuse valikule klõpsates näed selle reaalajas eelvaadet.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1816,17 +1816,17 @@ Installija sulgub ja kõik muutused kaovad.</translation>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/>
<source>Saving files for later ...</source> <source>Saving files for later ...</source>
<translation type="unfinished"/> <translation>Salvestan faile hiljemaks...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/>
<source>No files configured to save for later.</source> <source>No files configured to save for later.</source>
<translation type="unfinished"/> <translation>Ühtegi faili ei konfigureeritud hiljemaks salvestamiseks.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/>
<source>Not all of the configured files could be preserved.</source> <source>Not all of the configured files could be preserved.</source>
<translation type="unfinished"/> <translation>Ühtegi konfigureeritud faili ei suudetud säilitada.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1947,7 +1947,7 @@ Väljund:
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="134"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="134"/>
<source>Select where to install %1.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Warning: &lt;/font&gt;this will delete all files on the selected partition.</source> <source>Select where to install %1.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Warning: &lt;/font&gt;this will delete all files on the selected partition.</source>
<translation>Vali, kuhu soovid %1 installida.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Hoiatus: &lt;/font&gt;see kustutab valitud partitsioonilt kõik failid.</translation> <translation>Vali, kuhu soovid %1 paigaldada.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Hoiatus: &lt;/font&gt;see kustutab valitud partitsioonilt kõik failid.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="160"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="160"/>
@ -1957,17 +1957,17 @@ Väljund:
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="168"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="168"/>
<source>%1 cannot be installed on empty space. Please select an existing partition.</source> <source>%1 cannot be installed on empty space. Please select an existing partition.</source>
<translation>%1 ei saa installida tühjale kohale. Palun vali olemasolev partitsioon.</translation> <translation>%1 ei saa paigldada tühjale kohale. Palun vali olemasolev partitsioon.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="178"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="178"/>
<source>%1 cannot be installed on an extended partition. Please select an existing primary or logical partition.</source> <source>%1 cannot be installed on an extended partition. Please select an existing primary or logical partition.</source>
<translation>%1 ei saa installida laiendatud partitsioonile. Palun vali olemasolev põhiline või loogiline partitsioon.</translation> <translation>%1 ei saa paigaldada laiendatud partitsioonile. Palun vali olemasolev põhiline või loogiline partitsioon.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="188"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="188"/>
<source>%1 cannot be installed on this partition.</source> <source>%1 cannot be installed on this partition.</source>
<translation>%1 ei saa installida sellele partitsioonidel.</translation> <translation>%1 ei saa sellele partitsioonile paigaldada.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="194"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="194"/>
@ -1999,7 +1999,7 @@ Väljund:
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="278"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="278"/>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="302"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="302"/>
<source>&lt;strong&gt;%3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;%1 will be installed on %2.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Warning: &lt;/font&gt;all data on partition %2 will be lost.</source> <source>&lt;strong&gt;%3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;%1 will be installed on %2.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Warning: &lt;/font&gt;all data on partition %2 will be lost.</source>
<translation>&lt;strong&gt;%3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;%1 installitakse partitsioonile %2.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Hoiatus: &lt;/font&gt;kõik andmed partitsioonil %2 kaovad.</translation> <translation>&lt;strong&gt;%3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;%1 paigaldatakse partitsioonile %2.&lt;br/&gt;&lt;font color=&quot;red&quot;&gt;Hoiatus: &lt;/font&gt;kõik andmed partitsioonil %2 kaovad.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="270"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="270"/>
@ -2062,12 +2062,12 @@ Väljund:
<message> <message>
<location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="155"/> <location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="155"/>
<source>The installer is not running with administrator rights.</source> <source>The installer is not running with administrator rights.</source>
<translation>Installija ei tööta administraatoriõigustega.</translation> <translation>Paigaldaja pole käivitatud administraatoriõigustega.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="163"/> <location filename="../src/modules/welcome/checker/RequirementsChecker.cpp" line="163"/>
<source>The screen is too small to display the installer.</source> <source>The screen is too small to display the installer.</source>
<translation>Ekraan on liiga väike installija kuvamiseks.</translation> <translation>Ekraan on paigaldaja kuvamiseks liiga väike.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2090,7 +2090,7 @@ Väljund:
<message> <message>
<location filename="../src/modules/partition/jobs/ResizePartitionJob.cpp" line="85"/> <location filename="../src/modules/partition/jobs/ResizePartitionJob.cpp" line="85"/>
<source>The installer failed to resize partition %1 on disk &apos;%2&apos;.</source> <source>The installer failed to resize partition %1 on disk &apos;%2&apos;.</source>
<translation>Installijal ebaõnnestus partitsiooni %1 suuruse muutmine kettal &quot;%2&quot;.</translation> <translation>Paigaldajal ebaõnnestus partitsiooni %1 suuruse muutmine kettal &quot;%2&quot;.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2246,7 +2246,7 @@ Väljund:
<message> <message>
<location filename="../src/modules/partition/jobs/SetPartitionFlagsJob.cpp" line="140"/> <location filename="../src/modules/partition/jobs/SetPartitionFlagsJob.cpp" line="140"/>
<source>The installer failed to set flags on partition %1.</source> <source>The installer failed to set flags on partition %1.</source>
<translation>Installija ei suutnud silte määrata partitsioonile %1.</translation> <translation>Paigaldaja ei suutnud partitsioonile %1 silte määrata.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2352,7 +2352,7 @@ Väljund:
<message> <message>
<location filename="../src/modules/summary/SummaryPage.cpp" line="49"/> <location filename="../src/modules/summary/SummaryPage.cpp" line="49"/>
<source>This is an overview of what will happen once you start the install procedure.</source> <source>This is an overview of what will happen once you start the install procedure.</source>
<translation>See on ülevaade sellest mis juhtub, kui alustad installiprotseduuri.</translation> <translation>See on ülevaade sellest mis juhtub, kui alustad paigaldusprotseduuri.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2368,17 +2368,17 @@ Väljund:
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="43"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="43"/>
<source>Installation feedback</source> <source>Installation feedback</source>
<translation>Installimise tagasiside</translation> <translation>Paigalduse tagasiside</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="53"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="53"/>
<source>Sending installation feedback.</source> <source>Sending installation feedback.</source>
<translation>Saadan installimise tagasisidet.</translation> <translation>Saadan paigalduse tagasisidet.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="88"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="88"/>
<source>Internal error in install-tracking.</source> <source>Internal error in install-tracking.</source>
<translation>Installi jälitamisel esines sisemine viga.</translation> <translation>Paigaldate jälitamisel esines sisemine viga.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="89"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="89"/>
@ -2430,7 +2430,7 @@ Väljund:
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="72"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="72"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;By selecting this, you will send &lt;span style=&quot; font-weight:600;&quot;&gt;no information at all&lt;/span&gt; about your installation.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;By selecting this, you will send &lt;span style=&quot; font-weight:600;&quot;&gt;no information at all&lt;/span&gt; about your installation.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Seda valides &lt;span style=&quot; font-weight:600;&quot;&gt;ei saada sa üldse&lt;/span&gt; teavet oma installi kohta.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Seda valides &lt;span style=&quot; font-weight:600;&quot;&gt;ei saada sa üldse&lt;/span&gt; teavet oma paigalduse kohta.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="123"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="123"/>
@ -2454,22 +2454,22 @@ Väljund:
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="44"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="44"/>
<source>Install tracking helps %1 to see how many users they have, what hardware they install %1 to and (with the last two options below), get continuous information about preferred applications. To see what will be sent, please click the help icon next to each area.</source> <source>Install tracking helps %1 to see how many users they have, what hardware they install %1 to and (with the last two options below), get continuous information about preferred applications. To see what will be sent, please click the help icon next to each area.</source>
<translation>Installijälitamine aitab %1-l näha, mitu kasutajat neil on, mis riistvarale nad %1 installivad ja (märkides kaks alumist valikut) saada pidevat teavet eelistatud rakenduste kohta. Et näha, mis infot saadetakse, palun klõpsa abiikooni iga ala kõrval.</translation> <translation>Paigalduse jälitamine aitab %1-l näha, mitu kasutajat neil on, mis riistvarale nad %1 paigaldavad ja (märkides kaks alumist valikut) saada pidevat teavet eelistatud rakenduste kohta. Et näha, mis infot saadetakse, palun klõpsa abiikooni iga ala kõrval.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="45"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="45"/>
<source>By selecting this you will send information about your installation and hardware. This information will &lt;b&gt;only be sent once&lt;/b&gt; after the installation finishes.</source> <source>By selecting this you will send information about your installation and hardware. This information will &lt;b&gt;only be sent once&lt;/b&gt; after the installation finishes.</source>
<translation>Seda valides saadad sa teavet oma installi ja riistvara kohta. See teave &lt;b&gt;saadetakse ainult korra&lt;/b&gt;peale installi lõppu.</translation> <translation>Seda valides saadad sa teavet oma paigalduse ja riistvara kohta. See teave &lt;b&gt;saadetakse ainult korra&lt;/b&gt;peale paigalduse lõppu.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="46"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="46"/>
<source>By selecting this you will &lt;b&gt;periodically&lt;/b&gt; send information about your installation, hardware and applications, to %1.</source> <source>By selecting this you will &lt;b&gt;periodically&lt;/b&gt; send information about your installation, hardware and applications, to %1.</source>
<translation>Seda valides saadad sa %1-le &lt;b&gt;perioodiliselt&lt;/b&gt; infot oma installi, riistvara ja rakenduste kohta.</translation> <translation>Seda valides saadad sa %1-le &lt;b&gt;perioodiliselt&lt;/b&gt; infot oma paigalduse, riistvara ja rakenduste kohta.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="47"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="47"/>
<source>By selecting this you will &lt;b&gt;regularly&lt;/b&gt; send information about your installation, hardware, applications and usage patterns, to %1.</source> <source>By selecting this you will &lt;b&gt;regularly&lt;/b&gt; send information about your installation, hardware, applications and usage patterns, to %1.</source>
<translation>Seda valides saadad sa %1-le &lt;b&gt;regulaarselt&lt;/b&gt; infot oma installi, riistvara, rakenduste ja kasutusharjumuste kohta.</translation> <translation>Seda valides saadad sa %1-le &lt;b&gt;regulaarselt&lt;/b&gt; infot oma paigalduse, riistvara, rakenduste ja kasutusharjumuste kohta.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2557,17 +2557,17 @@ Väljund:
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/>
<source>&lt;h1&gt;Welcome to the %1 installer.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to the %1 installer.&lt;/h1&gt;</source>
<translation>&lt;h1&gt;Tere tulemast %1 installijasse.&lt;/h1&gt;</translation> <translation>&lt;h1&gt;Tere tulemast %1 paigaldajasse.&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="60"/>
<source>&lt;h1&gt;Welcome to the Calamares installer for %1.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to the Calamares installer for %1.&lt;/h1&gt;</source>
<translation>&lt;h1&gt;Tere tulemast Calamares&apos;i installijasse %1 jaoks.&lt;/h1&gt;</translation> <translation>&lt;h1&gt;Tere tulemast Calamares&apos;i paigaldajasse %1 jaoks.&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="73"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="73"/>
<source>About %1 installer</source> <source>About %1 installer</source>
<translation>Teave %1 installija kohta</translation> <translation>Teave %1 paigaldaja kohta</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="75"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="75"/>

View File

@ -485,12 +485,12 @@ L&apos;installateur se fermera et les changements seront perdus.</translation>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/>
<source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source> <source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source>
<translation type="unfinished"/> <translation>La commande est exécutée dans l&apos;environnement hôte et a besoin de connaître le chemin racine, mais aucun point de montage racine n&apos;est défini.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/>
<source>The command needs to know the user&apos;s name, but no username is defined.</source> <source>The command needs to know the user&apos;s name, but no username is defined.</source>
<translation type="unfinished"/> <translation>La commande a besoin de connaître le nom de l&apos;utilisateur, mais aucun nom d&apos;utilisateur n&apos;est défini.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1665,12 +1665,12 @@ L&apos;installateur se fermera et les changements seront perdus.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/>
<source>Can not create new partition</source> <source>Can not create new partition</source>
<translation type="unfinished"/> <translation>Impossible de créer une nouvelle partition</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/>
<source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source> <source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source>
<translation type="unfinished"/> <translation>La table de partition sur %1 contient déjà %2 partitions primaires, et aucune supplémentaire ne peut être ajoutée. Veuillez supprimer une partition primaire et créer une partition étendue à la place.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1817,17 +1817,17 @@ Vous pouvez obtenir un aperçu des différentes apparences en cliquant sur celle
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/>
<source>Saving files for later ...</source> <source>Saving files for later ...</source>
<translation type="unfinished"/> <translation>Sauvegarde des fichiers en cours pour plus tard...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/>
<source>No files configured to save for later.</source> <source>No files configured to save for later.</source>
<translation type="unfinished"/> <translation>Aucun fichier de sélectionné pour sauvegarde ultérieure.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/>
<source>Not all of the configured files could be preserved.</source> <source>Not all of the configured files could be preserved.</source>
<translation type="unfinished"/> <translation>Certains des fichiers configurés n&apos;ont pas pu être préservés.</translation>
</message> </message>
</context> </context>
<context> <context>

View File

@ -487,12 +487,12 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/>
<source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source> <source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source>
<translation type="unfinished"/> <translation>Perintah berjalan di lingkungan host dan perlu diketahui alur root-nya, tetapi bukan rootMountPoint yang ditentukan.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/>
<source>The command needs to know the user&apos;s name, but no username is defined.</source> <source>The command needs to know the user&apos;s name, but no username is defined.</source>
<translation type="unfinished"/> <translation>Perintah perlu diketahui nama si pengguna, tetapi bukan nama pengguna yang ditentukan.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1667,12 +1667,12 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/>
<source>Can not create new partition</source> <source>Can not create new partition</source>
<translation type="unfinished"/> <translation>Tidak bisa menciptakan partisi baru.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/>
<source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source> <source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source>
<translation type="unfinished"/> <translation>Partisi tabel pada %1 sudah memiliki %2 partisi primer, dan tidak ada lagi yang bisa ditambahkan. Silakan hapus salah satu partisi primer dan tambahkan sebuah partisi extended, sebagai gantinya.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1818,17 +1818,17 @@ Pemasangan dapat dilanjutkan, namun beberapa fitur akan dinonfungsikan.</transla
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/>
<source>Saving files for later ...</source> <source>Saving files for later ...</source>
<translation type="unfinished"/> <translation>Menyimpan file untuk kemudian...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/>
<source>No files configured to save for later.</source> <source>No files configured to save for later.</source>
<translation type="unfinished"/> <translation>Tiada file yang dikonfigurasi untuk penyimpanan nanti.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/>
<source>Not all of the configured files could be preserved.</source> <source>Not all of the configured files could be preserved.</source>
<translation type="unfinished"/> <translation>Tidak semua file yang dikonfigurasi dapat dipertahankan.</translation>
</message> </message>
</context> </context>
<context> <context>

View File

@ -4,7 +4,7 @@
<message> <message>
<location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="69"/> <location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="69"/>
<source>The &lt;strong&gt;boot environment&lt;/strong&gt; of this system.&lt;br&gt;&lt;br&gt;Older x86 systems only support &lt;strong&gt;BIOS&lt;/strong&gt;.&lt;br&gt;Modern systems usually use &lt;strong&gt;EFI&lt;/strong&gt;, but may also show up as BIOS if started in compatibility mode.</source> <source>The &lt;strong&gt;boot environment&lt;/strong&gt; of this system.&lt;br&gt;&lt;br&gt;Older x86 systems only support &lt;strong&gt;BIOS&lt;/strong&gt;.&lt;br&gt;Modern systems usually use &lt;strong&gt;EFI&lt;/strong&gt;, but may also show up as BIOS if started in compatibility mode.</source>
<translation>L&apos;&lt;strong&gt;ambiente di avvio&lt;/strong&gt; di questo sistema. &lt;br&gt;&lt;br&gt;I vecchi sistemi x86 supportano solo &lt;strong&gt;BIOS&lt;/strong&gt;. &lt;bt&gt;I sistemi moderni normalmente usano &lt;strong&gt;EFI&lt;/strong&gt; ma possono anche usare BIOS se l&apos;avvio viene eseguito in modalità compatibile.</translation> <translation>L&apos;&lt;strong&gt;ambiente di avvio&lt;/strong&gt; di questo sistema. &lt;br&gt;&lt;br&gt;I vecchi sistemi x86 supportano solo &lt;strong&gt;BIOS&lt;/strong&gt;. &lt;bt&gt;I sistemi moderni normalmente usano &lt;strong&gt;EFI&lt;/strong&gt; ma possono anche apparire come sistemi BIOS se avviati in modalità compatibile.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="79"/> <location filename="../src/modules/partition/gui/BootInfoWidget.cpp" line="79"/>
@ -241,7 +241,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="262"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="262"/>
<source>The installation is complete. Close the installer.</source> <source>The installation is complete. Close the installer.</source>
<translation>L&apos;installazione è terminata. Chiudere l&apos;installer.</translation> <translation>L&apos;installazione è terminata. Chiudere il programma d&apos;installazione.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="159"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="159"/>
@ -485,12 +485,12 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="128"/>
<source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source> <source>The command runs in the host environment and needs to know the root path, but no rootMountPoint is defined.</source>
<translation type="unfinished"/> <translation>Il comando viene eseguito nell&apos;ambiente host e richiede il percorso di root ma nessun rootMountPoint (punto di montaggio di root) è definito.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/>
<source>The command needs to know the user&apos;s name, but no username is defined.</source> <source>The command needs to know the user&apos;s name, but no username is defined.</source>
<translation type="unfinished"/> <translation>Il comando richiede il nome utente, nessun nome utente definito.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -498,7 +498,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="117"/> <location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="117"/>
<source>Contextual Processes Job</source> <source>Contextual Processes Job</source>
<translation>Attività dei processi contestuali</translation> <translation>Job dei processi contestuali</translation>
</message> </message>
</context> </context>
<context> <context>
@ -536,7 +536,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="151"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="151"/>
<source>LVM LV name</source> <source>LVM LV name</source>
<translation>Nome LVM LV</translation> <translation>Nome LV di LVM</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="188"/> <location filename="../src/modules/partition/gui/CreatePartitionDialog.ui" line="188"/>
@ -915,7 +915,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="95"/> <location filename="../src/modules/finished/FinishedPage.ui" line="95"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When this box is checked, your system will restart immediately when you click on &lt;span style=&quot; font-style:italic;&quot;&gt;Done&lt;/span&gt; or close the installer.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When this box is checked, your system will restart immediately when you click on &lt;span style=&quot; font-style:italic;&quot;&gt;Done&lt;/span&gt; or close the installer.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"/> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Quando questa casella è selezionata, il sistema sarà riavviato immediatamente al click su &lt;span style=&quot; font-style:italic;&quot;&gt;Fatto&lt;/span&gt; o alla chiusura del programma d&apos;installazione.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.ui" line="98"/> <location filename="../src/modules/finished/FinishedPage.ui" line="98"/>
@ -943,12 +943,12 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/finished/FinishedViewStep.cpp" line="124"/> <location filename="../src/modules/finished/FinishedViewStep.cpp" line="124"/>
<source>Installation Complete</source> <source>Installation Complete</source>
<translation>Installazione Eseguita</translation> <translation>Installazione completata</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedViewStep.cpp" line="125"/> <location filename="../src/modules/finished/FinishedViewStep.cpp" line="125"/>
<source>The installation of %1 is complete.</source> <source>The installation of %1 is complete.</source>
<translation>L&apos;installazione di %1 è completa.</translation> <translation>L&apos;installazione di %1 è completata.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -979,12 +979,12 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="53"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="53"/>
<source>Konsole not installed</source> <source>Konsole not installed</source>
<translation>Konsole non installato</translation> <translation>Konsole non installata</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="54"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="54"/>
<source>Please install KDE Konsole and try again!</source> <source>Please install KDE Konsole and try again!</source>
<translation>Si prega di installare KDE Konsole e provare nuovamente!</translation> <translation>Si prega di installare KDE Konsole e riprovare!</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="116"/> <location filename="../src/modules/interactiveterminal/InteractiveTerminalPage.cpp" line="116"/>
@ -1195,7 +1195,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/netinstall/NetInstallPage.cpp" line="96"/> <location filename="../src/modules/netinstall/NetInstallPage.cpp" line="96"/>
<source>Network Installation. (Disabled: Received invalid groups data)</source> <source>Network Installation. (Disabled: Received invalid groups data)</source>
<translation>Installazione di rete. (Disabilitata: Ricevuti dati non validi sui gruppi)</translation> <translation>Installazione di rete. (Disabilitata: Ricevuti dati non validi dei gruppi)</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1221,12 +1221,12 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="151"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="151"/>
<source>Password is too weak</source> <source>Password is too weak</source>
<translation>La password è troppo debole</translation> <translation>Password troppo debole</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="158"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="158"/>
<source>Memory allocation error when setting &apos;%1&apos;</source> <source>Memory allocation error when setting &apos;%1&apos;</source>
<translation type="unfinished"/> <translation>Errore di allocazione della memoria quando si imposta &apos;%1&apos;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/>
@ -1236,217 +1236,217 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="164"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="164"/>
<source>The password is the same as the old one</source> <source>The password is the same as the old one</source>
<translation>La nuova password coincide con la precedente</translation> <translation>La password coincide con la precedente</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/>
<source>The password is a palindrome</source> <source>The password is a palindrome</source>
<translation>La password è palindroma</translation> <translation>La password è un palindromo</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="168"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="168"/>
<source>The password differs with case changes only</source> <source>The password differs with case changes only</source>
<translation type="unfinished"/> <translation>La password differisce solo per lettere minuscole e maiuscole</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/>
<source>The password is too similar to the old one</source> <source>The password is too similar to the old one</source>
<translation>La nuova password è troppo simile a quella precedente</translation> <translation>La password è troppo simile a quella precedente</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/>
<source>The password contains the user name in some form</source> <source>The password contains the user name in some form</source>
<translation>La password contiene il nome utente in una qualche forma</translation> <translation>La password contiene il nome utente in qualche campo</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/>
<source>The password contains words from the real name of the user in some form</source> <source>The password contains words from the real name of the user in some form</source>
<translation>La password contiene parte del nome reale dell&apos;utente in qualche forma</translation> <translation>La password contiene parti del nome utente reale in qualche campo</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/>
<source>The password contains forbidden words in some form</source> <source>The password contains forbidden words in some form</source>
<translation type="unfinished"/> <translation>La password contiene parole vietate in alcuni campi</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="179"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="179"/>
<source>The password contains less than %1 digits</source> <source>The password contains less than %1 digits</source>
<translation>La password contiene meno di %1 numeri</translation> <translation>La password contiene meno di %1 cifre</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/>
<source>The password contains too few digits</source> <source>The password contains too few digits</source>
<translation>La password contiene troppo pochi numeri</translation> <translation>La password contiene poche cifre</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="183"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="183"/>
<source>The password contains less than %1 uppercase letters</source> <source>The password contains less than %1 uppercase letters</source>
<translation type="unfinished"/> <translation>La password contiene meno di %1 lettere maiuscole</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="184"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="184"/>
<source>The password contains too few uppercase letters</source> <source>The password contains too few uppercase letters</source>
<translation type="unfinished"/> <translation>La password contiene poche lettere maiuscole</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="187"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="187"/>
<source>The password contains less than %1 lowercase letters</source> <source>The password contains less than %1 lowercase letters</source>
<translation type="unfinished"/> <translation>La password contiene meno di %1 lettere minuscole</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="188"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="188"/>
<source>The password contains too few lowercase letters</source> <source>The password contains too few lowercase letters</source>
<translation type="unfinished"/> <translation>La password contiene poche lettere minuscole</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="191"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="191"/>
<source>The password contains less than %1 non-alphanumeric characters</source> <source>The password contains less than %1 non-alphanumeric characters</source>
<translation type="unfinished"/> <translation>La password contiene meno di %1 caratteri non alfanumerici</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="192"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="192"/>
<source>The password contains too few non-alphanumeric characters</source> <source>The password contains too few non-alphanumeric characters</source>
<translation type="unfinished"/> <translation>La password contiene pochi caratteri non alfanumerici</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="195"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="195"/>
<source>The password is shorter than %1 characters</source> <source>The password is shorter than %1 characters</source>
<translation type="unfinished"/> <translation>La password ha meno di %1 caratteri</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="196"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="196"/>
<source>The password is too short</source> <source>The password is too short</source>
<translation type="unfinished"/> <translation>La password è troppo corta</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="198"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="198"/>
<source>The password is just rotated old one</source> <source>The password is just rotated old one</source>
<translation type="unfinished"/> <translation>La password è solo una rotazione della precedente</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="201"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="201"/>
<source>The password contains less than %1 character classes</source> <source>The password contains less than %1 character classes</source>
<translation type="unfinished"/> <translation>La password contiene meno di %1 classi di caratteri</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/>
<source>The password does not contain enough character classes</source> <source>The password does not contain enough character classes</source>
<translation type="unfinished"/> <translation>La password non contiene classi di caratteri sufficienti</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="205"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="205"/>
<source>The password contains more than %1 same characters consecutively</source> <source>The password contains more than %1 same characters consecutively</source>
<translation type="unfinished"/> <translation>La password contiene più di %1 caratteri uguali consecutivi</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="206"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="206"/>
<source>The password contains too many same characters consecutively</source> <source>The password contains too many same characters consecutively</source>
<translation type="unfinished"/> <translation>La password contiene troppi caratteri uguali consecutivi</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="209"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="209"/>
<source>The password contains more than %1 characters of the same class consecutively</source> <source>The password contains more than %1 characters of the same class consecutively</source>
<translation type="unfinished"/> <translation>La password contiene più di %1 caratteri consecutivi della stessa classe</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="210"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="210"/>
<source>The password contains too many characters of the same class consecutively</source> <source>The password contains too many characters of the same class consecutively</source>
<translation type="unfinished"/> <translation>La password contiene molti caratteri consecutivi della stessa classe</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="213"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="213"/>
<source>The password contains monotonic sequence longer than %1 characters</source> <source>The password contains monotonic sequence longer than %1 characters</source>
<translation type="unfinished"/> <translation>La password contiene una sequenza monotona più lunga di %1 caratteri</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/>
<source>The password contains too long of a monotonic character sequence</source> <source>The password contains too long of a monotonic character sequence</source>
<translation type="unfinished"/> <translation>La password contiene una sequenza di caratteri monotona troppo lunga</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="216"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="216"/>
<source>No password supplied</source> <source>No password supplied</source>
<translation type="unfinished"/> <translation>Nessuna password fornita</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="218"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="218"/>
<source>Cannot obtain random numbers from the RNG device</source> <source>Cannot obtain random numbers from the RNG device</source>
<translation type="unfinished"/> <translation>Impossibile ottenere numeri casuali dal dispositivo RNG</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="220"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="220"/>
<source>Password generation failed - required entropy too low for settings</source> <source>Password generation failed - required entropy too low for settings</source>
<translation type="unfinished"/> <translation>Generazione della password fallita - entropia richiesta troppo bassa per le impostazioni</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="225"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="225"/>
<source>The password fails the dictionary check - %1</source> <source>The password fails the dictionary check - %1</source>
<translation type="unfinished"/> <translation>La password non supera il controllo del dizionario - %1</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="227"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="227"/>
<source>The password fails the dictionary check</source> <source>The password fails the dictionary check</source>
<translation type="unfinished"/> <translation>La password non supera il controllo del dizionario</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/>
<source>Unknown setting - %1</source> <source>Unknown setting - %1</source>
<translation type="unfinished"/> <translation>Impostazioni sconosciute - %1</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
<source>Unknown setting</source> <source>Unknown setting</source>
<translation type="unfinished"/> <translation>Impostazione sconosciuta</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="239"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="239"/>
<source>Bad integer value of setting - %1</source> <source>Bad integer value of setting - %1</source>
<translation type="unfinished"/> <translation>Valore intero non valido per l&apos;impostazione - %1</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/>
<source>Bad integer value</source> <source>Bad integer value</source>
<translation type="unfinished"/> <translation>Valore intero non valido</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/>
<source>Setting %1 is not of integer type</source> <source>Setting %1 is not of integer type</source>
<translation type="unfinished"/> <translation>Impostazione %1 non è di tipo intero</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="251"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="251"/>
<source>Setting is not of integer type</source> <source>Setting is not of integer type</source>
<translation type="unfinished"/> <translation>Impostazione non è di tipo intero</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="255"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="255"/>
<source>Setting %1 is not of string type</source> <source>Setting %1 is not of string type</source>
<translation type="unfinished"/> <translation>Impostazione %1 non è di tipo stringa</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="259"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="259"/>
<source>Setting is not of string type</source> <source>Setting is not of string type</source>
<translation type="unfinished"/> <translation>Impostazione non è di tipo stringa</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="261"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="261"/>
<source>Opening the configuration file failed</source> <source>Opening the configuration file failed</source>
<translation type="unfinished"/> <translation>Apertura del file di configurazione fallita</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="263"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="263"/>
<source>The configuration file is malformed</source> <source>The configuration file is malformed</source>
<translation type="unfinished"/> <translation>Il file di configurazione non è corretto</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="265"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="265"/>
<source>Fatal failure</source> <source>Fatal failure</source>
<translation type="unfinished"/> <translation>Errore fatale</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/>
<source>Unknown error</source> <source>Unknown error</source>
<translation type="unfinished"/> <translation>Errore sconosciuto</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1665,12 +1665,12 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="193"/>
<source>Can not create new partition</source> <source>Can not create new partition</source>
<translation type="unfinished"/> <translation>Impossibile creare nuova partizione</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="194"/>
<source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source> <source>The partition table on %1 already has %2 primary partitions, and no more can be added. Please remove one primary partition and add an extended partition, instead.</source>
<translation type="unfinished"/> <translation>La tabella delle partizioni su %1 contiene già %2 partizioni primarie, non se ne possono aggiungere altre. Rimuovere una partizione primaria e aggiungere una partizione estesa invece.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1776,13 +1776,13 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="41"/> <location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="41"/>
<source>Plasma Look-and-Feel Job</source> <source>Plasma Look-and-Feel Job</source>
<translation>Attività del tema di Plasma</translation> <translation>Job di Plasma Look-and-Feel</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="73"/> <location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="73"/>
<location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="74"/> <location filename="../src/modules/plasmalnf/PlasmaLnfJob.cpp" line="74"/>
<source>Could not select KDE Plasma Look-and-Feel package</source> <source>Could not select KDE Plasma Look-and-Feel package</source>
<translation>Impossibile selezionare il pacchetto del tema di KDE Plasma</translation> <translation>Impossibile selezionare il pacchetto di KDE Plasma Look-and-Feel</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1800,7 +1800,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="67"/> <location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="67"/>
<source>Please choose a look-and-feel for the KDE Plasma Desktop. You can also skip this step and configure the look-and-feel once the system is installed. Clicking on a look-and-feel selection will give you a live preview of that look-and-feel.</source> <source>Please choose a look-and-feel for the KDE Plasma Desktop. You can also skip this step and configure the look-and-feel once the system is installed. Clicking on a look-and-feel selection will give you a live preview of that look-and-feel.</source>
<translation type="unfinished"/> <translation>Scegliere il tema per il desktop KDE Plasma. Si può anche saltare questa scelta e configurare il tema dopo aver installato il sistema. Cliccando su selezione del tema, ne sarà mostrata un&apos;anteprima dal vivo. </translation>
</message> </message>
</context> </context>
<context> <context>
@ -1808,7 +1808,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfViewStep.cpp" line="68"/> <location filename="../src/modules/plasmalnf/PlasmaLnfViewStep.cpp" line="68"/>
<source>Look-and-Feel</source> <source>Look-and-Feel</source>
<translation>Tema</translation> <translation>Look-and-Feel</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1816,17 +1816,17 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/>
<source>Saving files for later ...</source> <source>Saving files for later ...</source>
<translation type="unfinished"/> <translation>Salvataggio dei file per dopo ...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/>
<source>No files configured to save for later.</source> <source>No files configured to save for later.</source>
<translation type="unfinished"/> <translation>Nessun file configurato per dopo.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/>
<source>Not all of the configured files could be preserved.</source> <source>Not all of the configured files could be preserved.</source>
<translation type="unfinished"/> <translation>Non tutti i file configurati possono essere preservati.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1835,7 +1835,7 @@ Il programma d&apos;installazione sarà terminato e tutte le modifiche andranno
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="271"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="271"/>
<source> <source>
There was no output from the command.</source> There was no output from the command.</source>
<translation type="unfinished"/> <translation>Non c&apos;era output dal comando.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="272"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="272"/>
@ -1864,7 +1864,8 @@ Output:
<message> <message>
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="282"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="282"/>
<source>Command &lt;i&gt;%1&lt;/i&gt; failed to start.</source> <source>Command &lt;i&gt;%1&lt;/i&gt; failed to start.</source>
<translation>Il comando %1 non si è avviato.</translation> <translation>Il comando %1 non si è avviato.
</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="286"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="286"/>
@ -1874,7 +1875,7 @@ Output:
<message> <message>
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="287"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="287"/>
<source>Bad parameters for process job call.</source> <source>Bad parameters for process job call.</source>
<translation>Parametri errati per elaborare l&apos;attività richiesta</translation> <translation>Parametri errati per elaborare la chiamata al job.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="290"/> <location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="290"/>
@ -2334,7 +2335,7 @@ Output:
<message> <message>
<location filename="../src/modules/shellprocess/ShellProcessJob.cpp" line="51"/> <location filename="../src/modules/shellprocess/ShellProcessJob.cpp" line="51"/>
<source>Shell Processes Job</source> <source>Shell Processes Job</source>
<translation type="unfinished"/> <translation>Job dei processi della shell</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2343,7 +2344,7 @@ Output:
<location filename="../src/qml/calamares/slideshow/SlideCounter.qml" line="36"/> <location filename="../src/qml/calamares/slideshow/SlideCounter.qml" line="36"/>
<source>%L1 / %L2</source> <source>%L1 / %L2</source>
<extracomment>slide counter, %1 of %2 (numeric)</extracomment> <extracomment>slide counter, %1 of %2 (numeric)</extracomment>
<translation type="unfinished"/> <translation>%L1 / %L2</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2372,7 +2373,7 @@ Output:
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="53"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="53"/>
<source>Sending installation feedback.</source> <source>Sending installation feedback.</source>
<translation>Invio in corso della valutazione dell&apos;installazione</translation> <translation>Invio della valutazione dell&apos;installazione.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="88"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="88"/>
@ -2382,7 +2383,7 @@ Output:
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="89"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="89"/>
<source>HTTP request timed out.</source> <source>HTTP request timed out.</source>
<translation>La richiesta HTTP ha raggiunto il timeout.</translation> <translation>La richiesta HTTP è scaduta.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2406,12 +2407,12 @@ Output:
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="134"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="134"/>
<source>Could not configure machine feedback correctly, script error %1.</source> <source>Could not configure machine feedback correctly, script error %1.</source>
<translation>Non è stato possibile configurare correttamente la valutazione automatica, errore script %1.</translation> <translation>Non è stato possibile configurare correttamente la valutazione automatica, errore dello script %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="137"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="137"/>
<source>Could not configure machine feedback correctly, Calamares error %1.</source> <source>Could not configure machine feedback correctly, Calamares error %1.</source>
<translation>Non è stato possibile configurare correttamente la valutazione automatica, errore Calamares %1.</translation> <translation>Non è stato possibile configurare correttamente la valutazione automatica, errore di Calamares %1.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2429,7 +2430,7 @@ Output:
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="72"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="72"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;By selecting this, you will send &lt;span style=&quot; font-weight:600;&quot;&gt;no information at all&lt;/span&gt; about your installation.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;By selecting this, you will send &lt;span style=&quot; font-weight:600;&quot;&gt;no information at all&lt;/span&gt; about your installation.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Selezionando questo, non verrà inviata &lt;span style=&quot; font-weight:600;&quot;&gt;alcuna informazione&lt;/span&gt; riguardo la propria installazione.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Selezionando questo, non verrà inviata &lt;span style=&quot; font-weight:600;&quot;&gt;alcuna informazione&lt;/span&gt; relativa alla propria installazione.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="123"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="123"/>
@ -2448,27 +2449,27 @@ Output:
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="271"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="271"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;a href=&quot;placeholder&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#2980b9;&quot;&gt;Click here for more information about user feedback&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source> <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;a href=&quot;placeholder&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#2980b9;&quot;&gt;Click here for more information about user feedback&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;a href=&quot;placeholder&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#2980b9;&quot;&gt;Cliccare qui per maggiori informazioni riguardo la valutazione degli utenti&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;a href=&quot;placeholder&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#2980b9;&quot;&gt;Cliccare qui per maggiori informazioni sulla valutazione degli utenti&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="44"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="44"/>
<source>Install tracking helps %1 to see how many users they have, what hardware they install %1 to and (with the last two options below), get continuous information about preferred applications. To see what will be sent, please click the help icon next to each area.</source> <source>Install tracking helps %1 to see how many users they have, what hardware they install %1 to and (with the last two options below), get continuous information about preferred applications. To see what will be sent, please click the help icon next to each area.</source>
<translation>Il tracciamento dell&apos;installazione aiuta %1 a capire quanti utenti vengono serviti, su quale hardware installano %1 e (con le ultime due opzioni qui sotto), a ricevere continue informazioni riguardo le applicazioni preferite. Per vedere cosa verrà inviato, si prega di cliccare sull&apos;icona di aiuto vicino ad ogni area.</translation> <translation>Il tracciamento dell&apos;installazione aiuta %1 a capire quanti utenti vengono serviti, su quale hardware si installa %1 e (con le ultime due opzioni sotto), a ricevere continue informazioni sulle applicazioni preferite. Per vedere cosa verrà inviato, cliccare sull&apos;icona di aiuto accanto ad ogni area.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="45"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="45"/>
<source>By selecting this you will send information about your installation and hardware. This information will &lt;b&gt;only be sent once&lt;/b&gt; after the installation finishes.</source> <source>By selecting this you will send information about your installation and hardware. This information will &lt;b&gt;only be sent once&lt;/b&gt; after the installation finishes.</source>
<translation>Selezionando questa opzione verranno inviate informazioni riguardo l&apos;installazione e l&apos;hardware. Queste informazioni verranno &lt;b&gt;inviate solo una volta&lt;/b&gt; dopo che l&apos;installazione è terminata.</translation> <translation>Selezionando questa opzione saranno inviate informazioni relative all&apos;installazione e all&apos;hardware. I dati saranno &lt;b&gt;inviati solo una volta&lt;/b&gt; al termine dell&apos;installazione.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="46"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="46"/>
<source>By selecting this you will &lt;b&gt;periodically&lt;/b&gt; send information about your installation, hardware and applications, to %1.</source> <source>By selecting this you will &lt;b&gt;periodically&lt;/b&gt; send information about your installation, hardware and applications, to %1.</source>
<translation>Selezionando questa opzione verranno inviate &lt;b&gt;periodicamente&lt;/b&gt; informazioni riguardo l&apos;installazione, l&apos;hardware e le applicazioni, a %1.</translation> <translation>Selezionando questa opzione saranno inviate &lt;b&gt;periodicamente&lt;/b&gt; informazioni sull&apos;installazione, l&apos;hardware e le applicazioni, a %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="47"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="47"/>
<source>By selecting this you will &lt;b&gt;regularly&lt;/b&gt; send information about your installation, hardware, applications and usage patterns, to %1.</source> <source>By selecting this you will &lt;b&gt;regularly&lt;/b&gt; send information about your installation, hardware, applications and usage patterns, to %1.</source>
<translation>Selezionando questa opzione verranno inviate &lt;b&gt;regolarmente&lt;/b&gt; informazioni riguardo l&apos;installazione, l&apos;hardware, le applicazioni e il modo di utilizzo, a %1.</translation> <translation>Selezionando questa opzione verranno inviate &lt;b&gt;regolarmente&lt;/b&gt; informazioni sull&apos;installazione, l&apos;hardware, le applicazioni e i modi di utilizzo, a %1.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2571,7 +2572,7 @@ Output:
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="75"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="75"/>
<source>&lt;h1&gt;%1&lt;/h1&gt;&lt;br/&gt;&lt;strong&gt;%2&lt;br/&gt;for %3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Copyright 2014-2017 Teo Mrnjavac &amp;lt;teo@kde.org&amp;gt;&lt;br/&gt;Copyright 2017 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Thanks to: Anke Boersma, Aurélien Gâteau, Kevin Kofler, Lisa Vitolo, Philip Müller, Pier Luigi Fiorini, Rohan Garg and the &lt;a href=&quot;https://www.transifex.com/calamares/calamares/&quot;&gt;Calamares translators team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;https://calamares.io/&quot;&gt;Calamares&lt;/a&gt; development is sponsored by &lt;br/&gt;&lt;a href=&quot;http://www.blue-systems.com/&quot;&gt;Blue Systems&lt;/a&gt; - Liberating Software.</source> <source>&lt;h1&gt;%1&lt;/h1&gt;&lt;br/&gt;&lt;strong&gt;%2&lt;br/&gt;for %3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Copyright 2014-2017 Teo Mrnjavac &amp;lt;teo@kde.org&amp;gt;&lt;br/&gt;Copyright 2017 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Thanks to: Anke Boersma, Aurélien Gâteau, Kevin Kofler, Lisa Vitolo, Philip Müller, Pier Luigi Fiorini, Rohan Garg and the &lt;a href=&quot;https://www.transifex.com/calamares/calamares/&quot;&gt;Calamares translators team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;https://calamares.io/&quot;&gt;Calamares&lt;/a&gt; development is sponsored by &lt;br/&gt;&lt;a href=&quot;http://www.blue-systems.com/&quot;&gt;Blue Systems&lt;/a&gt; - Liberating Software.</source>
<translation type="unfinished"/> <translation>&lt;h1&gt;%1&lt;/h1&gt;&lt;br/&gt;&lt;strong&gt;%2&lt;br/&gt;for %3&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Copyright 2014-2017 Teo Mrnjavac &amp;lt;teo@kde.org&amp;gt;&lt;br/&gt;Copyright 2017 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Grazie a: Anke Boersma, Aurélien Gâteau, Kevin Kofler, Lisa Vitolo, Philip Müller, Pier Luigi Fiorini, Rohan Garg e al &lt;a href=&quot;https://www.transifex.com/calamares/calamares/&quot;&gt;team dei traduttori di Calamares&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;Lo sviluppo di&lt;a href=&quot;https://calamares.io/&quot;&gt;Calamares&lt;/a&gt; è sponsorizzato da &lt;br/&gt;&lt;a href=&quot;http://www.blue-systems.com/&quot;&gt;Blue Systems&lt;/a&gt; - Liberating Software.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="290"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="290"/>

2587
lang/calamares_ko.ts Normal file

File diff suppressed because it is too large Load Diff

View File

@ -490,7 +490,7 @@ Instalator zostanie zamknięty i wszystkie zmiany zostaną utracone.</translatio
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="139"/>
<source>The command needs to know the user&apos;s name, but no username is defined.</source> <source>The command needs to know the user&apos;s name, but no username is defined.</source>
<translation type="unfinished"/> <translation>Polecenie musi znać nazwę użytkownika, ale żadna nazwa nie została jeszcze zdefiniowana.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1816,17 +1816,17 @@ Instalator zostanie zamknięty i wszystkie zmiany zostaną utracone.</translatio
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="83"/>
<source>Saving files for later ...</source> <source>Saving files for later ...</source>
<translation type="unfinished"/> <translation>Zapisywanie plików na później ...</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="89"/>
<source>No files configured to save for later.</source> <source>No files configured to save for later.</source>
<translation type="unfinished"/> <translation>Nie skonfigurowano żadnych plików do zapisania na później.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/> <location filename="../src/modules/preservefiles/PreserveFiles.cpp" line="145"/>
<source>Not all of the configured files could be preserved.</source> <source>Not all of the configured files could be preserved.</source>
<translation type="unfinished"/> <translation>Nie wszystkie pliki konfiguracyjne mogą być zachowane.</translation>
</message> </message>
</context> </context>
<context> <context>

View File

@ -10,6 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-28 04:57-0400\n" "POT-Creation-Date: 2018-05-28 04:57-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: guillermo pacheco <guillopacheco@gmail.com>, 2018\n"
"Language-Team: Spanish (Mexico) (https://www.transifex.com/calamares/teams/20061/es_MX/)\n" "Language-Team: Spanish (Mexico) (https://www.transifex.com/calamares/teams/20061/es_MX/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -19,39 +20,39 @@ msgstr ""
#: src/modules/umount/main.py:40 #: src/modules/umount/main.py:40
msgid "Unmount file systems." msgid "Unmount file systems."
msgstr "" msgstr "Desmontar sistemas de archivo."
#: src/modules/dummypython/main.py:44 #: src/modules/dummypython/main.py:44
msgid "Dummy python job." msgid "Dummy python job."
msgstr "" msgstr "Trabajo python ficticio."
#: src/modules/dummypython/main.py:97 #: src/modules/dummypython/main.py:97
msgid "Dummy python step {}" msgid "Dummy python step {}"
msgstr "" msgstr "Paso python ficticio {}"
#: src/modules/machineid/main.py:35 #: src/modules/machineid/main.py:35
msgid "Generate machine-id." msgid "Generate machine-id."
msgstr "" msgstr "Generar identificación de la maquina."
#: src/modules/packages/main.py:61 #: src/modules/packages/main.py:61
#, python-format #, python-format
msgid "Processing packages (%(count)d / %(total)d)" msgid "Processing packages (%(count)d / %(total)d)"
msgstr "" msgstr "Procesando paquetes (%(count)d/%(total)d)"
#: src/modules/packages/main.py:63 src/modules/packages/main.py:73 #: src/modules/packages/main.py:63 src/modules/packages/main.py:73
msgid "Install packages." msgid "Install packages."
msgstr "" msgstr "Instalar paquetes."
#: src/modules/packages/main.py:66 #: src/modules/packages/main.py:66
#, python-format #, python-format
msgid "Installing one package." msgid "Installing one package."
msgid_plural "Installing %(num)d packages." msgid_plural "Installing %(num)d packages."
msgstr[0] "" msgstr[0] "Instalando un paquete."
msgstr[1] "" msgstr[1] "Instalando%(num)d paquetes."
#: src/modules/packages/main.py:69 #: src/modules/packages/main.py:69
#, python-format #, python-format
msgid "Removing one package." msgid "Removing one package."
msgid_plural "Removing %(num)d packages." msgid_plural "Removing %(num)d packages."
msgstr[0] "" msgstr[0] "Removiendo un paquete."
msgstr[1] "" msgstr[1] "Removiendo %(num)dpaquetes."

Binary file not shown.

View File

@ -41,18 +41,18 @@ msgstr "Pakkide töötlemine (%(count)d / %(total)d)"
#: src/modules/packages/main.py:63 src/modules/packages/main.py:73 #: src/modules/packages/main.py:63 src/modules/packages/main.py:73
msgid "Install packages." msgid "Install packages."
msgstr "Installi pakid." msgstr "Paigalda paketid."
#: src/modules/packages/main.py:66 #: src/modules/packages/main.py:66
#, python-format #, python-format
msgid "Installing one package." msgid "Installing one package."
msgid_plural "Installing %(num)d packages." msgid_plural "Installing %(num)d packages."
msgstr[0] "Installin ühe paki." msgstr[0] "Paigaldan ühe paketi."
msgstr[1] "Installin %(num)d pakki." msgstr[1] "Paigaldan %(num)d paketti."
#: src/modules/packages/main.py:69 #: src/modules/packages/main.py:69
#, python-format #, python-format
msgid "Removing one package." msgid "Removing one package."
msgid_plural "Removing %(num)d packages." msgid_plural "Removing %(num)d packages."
msgstr[0] "Eemaldan ühe paki." msgstr[0] "Eemaldan ühe paketi."
msgstr[1] "Eemaldan %(num)d pakki." msgstr[1] "Eemaldan %(num)d paketti."

View File

@ -10,7 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-28 04:57-0400\n" "POT-Creation-Date: 2018-05-28 04:57-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Mark <marco_pace@msn.com>, 2018\n" "Last-Translator: Pietro Francesco Fontana, 2017\n"
"Language-Team: Italian (Italy) (https://www.transifex.com/calamares/teams/20061/it_IT/)\n" "Language-Team: Italian (Italy) (https://www.transifex.com/calamares/teams/20061/it_IT/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -20,15 +20,15 @@ msgstr ""
#: src/modules/umount/main.py:40 #: src/modules/umount/main.py:40
msgid "Unmount file systems." msgid "Unmount file systems."
msgstr "Smontaggio del file system" msgstr "Smonta i file system."
#: src/modules/dummypython/main.py:44 #: src/modules/dummypython/main.py:44
msgid "Dummy python job." msgid "Dummy python job."
msgstr "Dummy python job." msgstr "Job python fittizio."
#: src/modules/dummypython/main.py:97 #: src/modules/dummypython/main.py:97
msgid "Dummy python step {}" msgid "Dummy python step {}"
msgstr "Dummy python step {}" msgstr "Python step {} fittizio"
#: src/modules/machineid/main.py:35 #: src/modules/machineid/main.py:35
msgid "Generate machine-id." msgid "Generate machine-id."
@ -37,7 +37,7 @@ msgstr "Genera machine-id."
#: src/modules/packages/main.py:61 #: src/modules/packages/main.py:61
#, python-format #, python-format
msgid "Processing packages (%(count)d / %(total)d)" msgid "Processing packages (%(count)d / %(total)d)"
msgstr "Elaborando i pacchetti (%(count)d / %(total)d)" msgstr "Elaborazione dei pacchetti (%(count)d / %(total)d)"
#: src/modules/packages/main.py:63 src/modules/packages/main.py:73 #: src/modules/packages/main.py:63 src/modules/packages/main.py:73
msgid "Install packages." msgid "Install packages."
@ -48,11 +48,11 @@ msgstr "Installa pacchetti."
msgid "Installing one package." msgid "Installing one package."
msgid_plural "Installing %(num)d packages." msgid_plural "Installing %(num)d packages."
msgstr[0] "Installando un pacchetto." msgstr[0] "Installando un pacchetto."
msgstr[1] "Installando %(num)d pacchetti." msgstr[1] "Installazione di %(num)d pacchetti."
#: src/modules/packages/main.py:69 #: src/modules/packages/main.py:69
#, python-format #, python-format
msgid "Removing one package." msgid "Removing one package."
msgid_plural "Removing %(num)d packages." msgid_plural "Removing %(num)d packages."
msgstr[0] "Rimuovendo un pacchetto." msgstr[0] "Rimuovendo un pacchetto."
msgstr[1] "Rimuovendo %(num)d pacchetti." msgstr[1] "Rimozione di %(num)d pacchetti."

Binary file not shown.

View File

@ -0,0 +1,55 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-28 04:57-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Language-Team: Korean (https://www.transifex.com/calamares/teams/20061/ko/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ko\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: src/modules/umount/main.py:40
msgid "Unmount file systems."
msgstr ""
#: src/modules/dummypython/main.py:44
msgid "Dummy python job."
msgstr ""
#: src/modules/dummypython/main.py:97
msgid "Dummy python step {}"
msgstr ""
#: src/modules/machineid/main.py:35
msgid "Generate machine-id."
msgstr ""
#: src/modules/packages/main.py:61
#, python-format
msgid "Processing packages (%(count)d / %(total)d)"
msgstr ""
#: src/modules/packages/main.py:63 src/modules/packages/main.py:73
msgid "Install packages."
msgstr ""
#: src/modules/packages/main.py:66
#, python-format
msgid "Installing one package."
msgid_plural "Installing %(num)d packages."
msgstr[0] ""
#: src/modules/packages/main.py:69
#, python-format
msgid "Removing one package."
msgid_plural "Removing %(num)d packages."
msgstr[0] ""

View File

@ -335,6 +335,8 @@ CalamaresApplication::initView()
connect( m_moduleManager, &Calamares::ModuleManager::modulesLoaded, connect( m_moduleManager, &Calamares::ModuleManager::modulesLoaded,
this, &CalamaresApplication::initViewSteps ); this, &CalamaresApplication::initViewSteps );
connect( m_moduleManager, &Calamares::ModuleManager::modulesFailed,
this, &CalamaresApplication::initFailed );
m_moduleManager->loadModules(); m_moduleManager->loadModules();
@ -356,6 +358,12 @@ CalamaresApplication::initViewSteps()
cDebug() << "STARTUP: Window now visible and ProgressTreeView populated"; cDebug() << "STARTUP: Window now visible and ProgressTreeView populated";
} }
void
CalamaresApplication::initFailed(const QStringList& l)
{
cError() << "STARTUP: failed modules are" << l;
m_mainwindow->show();
}
void void
CalamaresApplication::initJobQueue() CalamaresApplication::initJobQueue()

View File

@ -70,6 +70,7 @@ public:
private slots: private slots:
void initView(); void initView();
void initViewSteps(); void initViewSteps();
void initFailed( const QStringList& l );
private: private:
void initQmlPath(); void initQmlPath();

View File

@ -40,6 +40,7 @@ mark_thirdparty_code( ${kdsagSources} )
include_directories( include_directories(
${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
${YAMLCPP_INCLUDE_DIR}
) )
if( WITH_PYTHON ) if( WITH_PYTHON )

View File

@ -30,6 +30,32 @@
#include <yaml-cpp/yaml.h> #include <yaml-cpp/yaml.h>
/** Helper function to grab a QString out of the config, and to warn if not present. */
static QString
requireString( const YAML::Node& config, const char* key )
{
if ( config[ key ] )
return QString::fromStdString( config[ key ].as< std::string >() );
else
{
cWarning() << "Required settings.conf key" << key << "is missing.";
return QString();
}
}
/** Helper function to grab a bool out of the config, and to warn if not present. */
static bool
requireBool( const YAML::Node& config, const char* key, bool d )
{
if ( config[ key ] )
return config[ key ].as< bool >();
else
{
cWarning() << "Required settings.conf key" << key << "is missing.";
return d;
}
}
namespace Calamares namespace Calamares
{ {
@ -41,7 +67,6 @@ Settings::instance()
return s_instance; return s_instance;
} }
Settings::Settings( const QString& settingsFilePath, Settings::Settings( const QString& settingsFilePath,
bool debugMode, bool debugMode,
QObject* parent ) QObject* parent )
@ -148,11 +173,9 @@ Settings::Settings( const QString& settingsFilePath,
} }
} }
m_brandingComponentName = QString::fromStdString( config[ "branding" ] m_brandingComponentName = requireString( config, "branding" );
.as< std::string >() ); m_promptInstall = requireBool( config, "prompt-install", false );
m_promptInstall = config[ "prompt-install" ].as< bool >(); m_doChroot = requireBool( config, "dont-chroot", true );
m_doChroot = config[ "dont-chroot" ] ? !config[ "dont-chroot" ].as< bool >() : true;
} }
catch ( YAML::Exception& e ) catch ( YAML::Exception& e )
{ {
@ -175,7 +198,7 @@ Settings::modulesSearchPaths() const
} }
QList<QMap<QString, QString> > Settings::InstanceDescriptionList
Settings::customModuleInstances() const Settings::customModuleInstances() const
{ {
return m_customModuleInstances; return m_customModuleInstances;

View File

@ -43,7 +43,9 @@ public:
QStringList modulesSearchPaths() const; QStringList modulesSearchPaths() const;
QList< QMap< QString, QString > > customModuleInstances() const; using InstanceDescription = QMap< QString, QString >;
using InstanceDescriptionList = QList< InstanceDescription >;
InstanceDescriptionList customModuleInstances() const;
QList< QPair< ModuleAction, QStringList > > modulesSequence() const; QList< QPair< ModuleAction, QStringList > > modulesSequence() const;
@ -60,7 +62,7 @@ private:
QStringList m_modulesSearchPaths; QStringList m_modulesSearchPaths;
QList< QMap< QString, QString > > m_customModuleInstances; InstanceDescriptionList m_customModuleInstances;
QList< QPair< ModuleAction, QStringList > > m_modulesSequence; QList< QPair< ModuleAction, QStringList > > m_modulesSequence;
QString m_brandingComponentName; QString m_brandingComponentName;

View File

@ -15,6 +15,7 @@ set( calamaresui_SOURCES
utils/qjsonitem.cpp utils/qjsonitem.cpp
viewpages/AbstractPage.cpp viewpages/AbstractPage.cpp
viewpages/BlankViewStep.cpp
viewpages/ViewStep.cpp viewpages/ViewStep.cpp
widgets/ClickableLabel.cpp widgets/ClickableLabel.cpp

View File

@ -20,6 +20,7 @@
#include "ViewManager.h" #include "ViewManager.h"
#include "utils/Logger.h" #include "utils/Logger.h"
#include "viewpages/BlankViewStep.h"
#include "viewpages/ViewStep.h" #include "viewpages/ViewStep.h"
#include "ExecutionViewStep.h" #include "ExecutionViewStep.h"
#include "JobQueue.h" #include "JobQueue.h"
@ -172,6 +173,27 @@ ViewManager::onInstallationFailed( const QString& message, const QString& detail
} }
void
ViewManager::onInitFailed( const QStringList& modules)
{
QString title( tr( "Calamares Initialization Failed" ) );
QString description( tr( "%1 can not be installed. Calamares was unable to load all of the configured modules. This is a problem with the way Calamares is being used by the distribution." ) );
QString detailString;
if ( modules.count() > 0 )
{
description.append( tr( "<br/>The following modules could not be loaded:" ) );
QStringList details;
details << QLatin1Literal("<ul>");
for( const auto& m : modules )
details << QLatin1Literal("<li>") << m << QLatin1Literal("</li>");
details << QLatin1Literal("</ul>");
detailString = details.join( QString() );
}
insertViewStep( 0, new BlankViewStep( title, description.arg( *Calamares::Branding::ShortProductName ), detailString ) );
}
ViewStepList ViewStepList
ViewManager::viewSteps() const ViewManager::viewSteps() const
{ {

View File

@ -117,6 +117,12 @@ public slots:
*/ */
void onInstallationFailed( const QString& message, const QString& details ); void onInstallationFailed( const QString& message, const QString& details );
/** @brief Replaces the stack with a view step stating that initialization failed.
*
* @param modules a list of failed modules.
*/
void onInitFailed( const QStringList& modules );
signals: signals:
void currentStepChanged(); void currentStepChanged();
void enlarge( QSize enlarge ) const; // See ViewStep::enlarge() void enlarge( QSize enlarge ) const; // See ViewStep::enlarge()

View File

@ -154,12 +154,33 @@ ModuleManager::moduleInstance( const QString& instanceKey )
} }
/**
* @brief Search a list of instance descriptions for one matching @p module and @p id
*
* @return -1 on failure, otherwise index of the instance that matches.
*/
static int findCustomInstance( const Settings::InstanceDescriptionList& customInstances,
const QString& module,
const QString& id )
{
for ( int i = 0; i < customInstances.count(); ++i )
{
const auto& thisInstance = customInstances[ i ];
if ( thisInstance.value( "module" ) == module &&
thisInstance.value( "id" ) == id )
return i;
}
return -1;
}
void void
ModuleManager::loadModules() ModuleManager::loadModules()
{ {
QTimer::singleShot( 0, this, [ this ]() QTimer::singleShot( 0, this, [ this ]()
{ {
QList< QMap< QString, QString > > customInstances = QStringList failedModules;
Settings::InstanceDescriptionList customInstances =
Settings::instance()->customModuleInstances(); Settings::instance()->customModuleInstances();
const auto modulesSequence = Settings::instance()->modulesSequence(); const auto modulesSequence = Settings::instance()->modulesSequence();
@ -177,10 +198,9 @@ ModuleManager::loadModules()
if ( moduleEntrySplit.length() < 1 || if ( moduleEntrySplit.length() < 1 ||
moduleEntrySplit.length() > 2 ) moduleEntrySplit.length() > 2 )
{ {
cError() << "Wrong module entry format for module" << moduleEntry << '.'; cError() << "Wrong module entry format for module" << moduleEntry;
cError() << "Calamares will now quit."; failedModules.append( moduleEntry );
qApp->exit( 1 ); continue;
return;
} }
moduleName = moduleEntrySplit.first(); moduleName = moduleEntrySplit.first();
instanceId = moduleEntrySplit.last(); instanceId = moduleEntrySplit.last();
@ -191,37 +211,21 @@ ModuleManager::loadModules()
{ {
cError() << "Module" << moduleName << "not found in module search paths." cError() << "Module" << moduleName << "not found in module search paths."
<< Logger::DebugList( m_paths ); << Logger::DebugList( m_paths );
cError() << "Calamares will now quit."; failedModules.append( moduleName );
qApp->exit( 1 ); continue;
return;
} }
auto findCustomInstance =
[ customInstances ]( const QString& module,
const QString& id) -> int
{
for ( int i = 0; i < customInstances.count(); ++i )
{
auto thisInstance = customInstances[ i ];
if ( thisInstance.value( "module" ) == module &&
thisInstance.value( "id" ) == id )
return i;
}
return -1;
};
if ( moduleName != instanceId ) //means this is a custom instance if ( moduleName != instanceId ) //means this is a custom instance
{ {
if ( findCustomInstance( moduleName, instanceId ) > -1 ) if ( int found = findCustomInstance( customInstances, moduleName, instanceId ) > -1 )
{ {
configFileName = customInstances[ findCustomInstance( moduleName, instanceId ) ].value( "config" ); configFileName = customInstances[ found ].value( "config" );
} }
else //ought to be a custom instance, but cannot find instance entry else //ought to be a custom instance, but cannot find instance entry
{ {
cError() << "Custom instance" << moduleEntry << "not found in custom instances section."; cError() << "Custom instance" << moduleEntry << "not found in custom instances section.";
cError() << "Calamares will now quit."; failedModules.append( moduleEntry );
qApp->exit( 1 ); continue;
return;
} }
} }
@ -241,10 +245,9 @@ ModuleManager::loadModules()
m_loadedModulesByInstanceKey.value( instanceKey, nullptr ); m_loadedModulesByInstanceKey.value( instanceKey, nullptr );
if ( thisModule && !thisModule->isLoaded() ) if ( thisModule && !thisModule->isLoaded() )
{ {
cError() << "Module" << instanceKey << "exists but not loaded." cError() << "Module" << instanceKey << "exists but not loaded.";
<< "\nCalamares will now quit."; failedModules.append( instanceKey );
qApp->exit( 1 ); continue;
return;
} }
if ( thisModule && thisModule->isLoaded() ) if ( thisModule && thisModule->isLoaded() )
@ -260,8 +263,8 @@ ModuleManager::loadModules()
m_moduleDirectoriesByModuleName.value( moduleName ) ); m_moduleDirectoriesByModuleName.value( moduleName ) );
if ( !thisModule ) if ( !thisModule )
{ {
cWarning() << "Module" << instanceKey << "cannot be created from descriptor."; cError() << "Module" << instanceKey << "cannot be created from descriptor" << configFileName;
Q_ASSERT( thisModule ); failedModules.append( instanceKey );
continue; continue;
} }
// If it's a ViewModule, it also appends the ViewStep to the ViewManager. // If it's a ViewModule, it also appends the ViewStep to the ViewManager.
@ -269,8 +272,8 @@ ModuleManager::loadModules()
m_loadedModulesByInstanceKey.insert( instanceKey, thisModule ); m_loadedModulesByInstanceKey.insert( instanceKey, thisModule );
if ( !thisModule->isLoaded() ) if ( !thisModule->isLoaded() )
{ {
cWarning() << "Module" << moduleName << "loading FAILED"; cError() << "Module" << instanceKey << "loading FAILED.";
Q_ASSERT( thisModule->isLoaded() ); failedModules.append( instanceKey );
continue; continue;
} }
} }
@ -292,6 +295,12 @@ ModuleManager::loadModules()
} }
} }
} }
if ( !failedModules.isEmpty() )
{
ViewManager::instance()->onInitFailed( failedModules );
emit modulesFailed( failedModules );
}
else
emit modulesLoaded(); emit modulesLoaded();
} ); } );
} }

View File

@ -82,7 +82,8 @@ public:
signals: signals:
void initDone(); void initDone();
void modulesLoaded(); void modulesLoaded(); /// All of the modules were loaded successfully
void modulesFailed( QStringList ); /// .. or not
private slots: private slots:
void doInit(); void doInit();

View File

@ -95,6 +95,9 @@ PythonQtViewModule::loadSelf()
s_utils = new ::Utils( Calamares::JobQueue::instance()->globalStorage() ); s_utils = new ::Utils( Calamares::JobQueue::instance()->globalStorage() );
cala.addObject( "utils", s_utils ); cala.addObject( "utils", s_utils );
// Append configuration object, in module PythonQt.calamares
cala.addVariable("configuration", m_configurationMap);
// Basic stdout/stderr handling // Basic stdout/stderr handling
QObject::connect( PythonQt::self(), &PythonQt::pythonStdOut, QObject::connect( PythonQt::self(), &PythonQt::pythonStdOut,
[]( const QString& message ) []( const QString& message )

View File

@ -52,27 +52,32 @@ ViewModule::loadSelf()
PluginFactory* pf = qobject_cast< PluginFactory* >( m_loader->instance() ); PluginFactory* pf = qobject_cast< PluginFactory* >( m_loader->instance() );
if ( !pf ) if ( !pf )
{ {
cDebug() << Q_FUNC_INFO << "No factory:" << m_loader->errorString(); cWarning() << Q_FUNC_INFO << "No factory:" << m_loader->errorString();
return; return;
} }
m_viewStep = pf->create< Calamares::ViewStep >(); m_viewStep = pf->create< Calamares::ViewStep >();
if ( !m_viewStep ) if ( !m_viewStep )
{ {
cDebug() << Q_FUNC_INFO << "create() failed" << m_loader->errorString(); cWarning() << Q_FUNC_INFO << "create() failed" << m_loader->errorString();
return; return;
} }
// cDebug() << "ViewModule loading self for instance" << instanceKey() }
// << "\nViewModule at address" << this
// << "\nCalamares::PluginFactory at address" << pf
// << "\nViewStep at address" << m_viewStep;
// TODO: allow internal view steps to be created here; they would
// have to be linked into the main application somehow.
// If any method created the view step, use it now.
if ( m_viewStep )
{
m_viewStep->setModuleInstanceKey( instanceKey() ); m_viewStep->setModuleInstanceKey( instanceKey() );
m_viewStep->setConfigurationMap( m_configurationMap ); m_viewStep->setConfigurationMap( m_configurationMap );
ViewManager::instance()->addViewStep( m_viewStep ); ViewManager::instance()->addViewStep( m_viewStep );
m_loaded = true; m_loaded = true;
cDebug() << "ViewModule" << instanceKey() << "loading complete."; cDebug() << "ViewModule" << instanceKey() << "loading complete.";
} }
else
cWarning() << Q_FUNC_INFO << "No view step was created";
} }

View File

@ -226,10 +226,20 @@ defaultFont()
} }
QFont
largeFont()
{
QFont f;
f.setPointSize( defaultFontSize() + 4 );
return f;
}
void void
setDefaultFontSize( int points ) setDefaultFontSize( int points )
{ {
s_defaultFontSize = points; s_defaultFontSize = points;
s_defaultFontHeight = 0; // Recalculate on next call to defaultFontHeight()
} }

View File

@ -115,6 +115,7 @@ UIDLLEXPORT void setDefaultFontSize( int points );
UIDLLEXPORT int defaultFontSize(); // in points UIDLLEXPORT int defaultFontSize(); // in points
UIDLLEXPORT int defaultFontHeight(); // in pixels, DPI-specific UIDLLEXPORT int defaultFontHeight(); // in pixels, DPI-specific
UIDLLEXPORT QFont defaultFont(); UIDLLEXPORT QFont defaultFont();
UIDLLEXPORT QFont largeFont();
UIDLLEXPORT QSize defaultIconSize(); UIDLLEXPORT QSize defaultIconSize();
/** /**

View File

@ -0,0 +1,118 @@
/* === This file is part of Calamares - <https://github.com/calamares> ===
*
* Copyright 2018, Adriaan de Groot <groot@kde.org>
*
* Calamares is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calamares is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/
#include "BlankViewStep.h"
#include "utils/CalamaresUtilsGui.h"
#include <QLabel>
#include <QVBoxLayout>
#include <QWidget>
namespace Calamares
{
BlankViewStep::BlankViewStep( const QString& title, const QString& description, const QString& details, QObject* parent)
: Calamares::ViewStep( parent )
, m_widget( new QWidget() )
{
QBoxLayout* layout = new QVBoxLayout();
constexpr int const marginWidth = 10;
constexpr int const spacingHeight = 10;
auto* label = new QLabel( title );
label->setAlignment( Qt::AlignHCenter );
label->setFont( CalamaresUtils::largeFont() );
layout->addWidget( label );
label = new QLabel( description );
label->setWordWrap( true );
label->setMargin( marginWidth );
layout->addSpacing( spacingHeight );
layout->addWidget( label );
if ( !details.isEmpty() )
{
label = new QLabel( details );
label->setMargin( marginWidth );
layout->addSpacing( spacingHeight );
layout->addWidget( label );
}
layout->addStretch( 1 ); // Push the rest to the top
m_widget->setLayout( layout );
}
BlankViewStep::~BlankViewStep()
{
}
QString
BlankViewStep::prettyName() const
{
return tr( "Blank Page" );
}
void
BlankViewStep::back()
{
}
void
BlankViewStep::next()
{
}
bool
BlankViewStep::isBackEnabled() const
{
return false;
}
bool
BlankViewStep::isNextEnabled() const
{
return false;
}
bool
BlankViewStep::isAtBeginning() const
{
return true;
}
bool
BlankViewStep::isAtEnd() const
{
return false;
}
QWidget*
BlankViewStep::widget()
{
return m_widget;
}
Calamares::JobList
BlankViewStep::jobs() const
{
return JobList();
}
} // namespace

View File

@ -0,0 +1,65 @@
/* === This file is part of Calamares - <https://github.com/calamares> ===
*
* Copyright 2018, Adriaan de Groot <groot@kde.org>
*
* Calamares is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calamares is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef BLANKVIEWSTEP_H
#define BLANKVIEWSTEP_H
#include <QObject>
#include <utils/PluginFactory.h>
#include <viewpages/ViewStep.h>
class QWidget;
namespace Calamares
{
/** @brief A "blank" view step, used for error and status reporting
*
* This view step never allows navigation (forward or back); it's a trap.
* It displays a title and explanation, and optional details.
*/
class BlankViewStep : public Calamares::ViewStep
{
Q_OBJECT
public:
explicit BlankViewStep( const QString& title, const QString& description, const QString& details = QString(), QObject* parent = nullptr );
virtual ~BlankViewStep() override;
QString prettyName() const override;
QWidget* widget() override;
void next() override;
void back() override;
bool isNextEnabled() const override;
bool isBackEnabled() const override;
bool isAtBeginning() const override;
bool isAtEnd() const override;
Calamares::JobList jobs() const override;
private:
QWidget* m_widget;
};
} // namespace
#endif // BLANKVIEWSTEP_H

View File

@ -6,7 +6,7 @@ set( LIST_SKIPPED_MODULES "" )
if( BUILD_TESTING ) if( BUILD_TESTING )
add_executable( test_conf test_conf.cpp ) add_executable( test_conf test_conf.cpp )
target_link_libraries( test_conf ${YAMLCPP_LIBRARY} ) target_link_libraries( test_conf ${YAMLCPP_LIBRARY} Qt5::Core )
target_include_directories( test_conf PUBLIC ${YAMLCPP_INCLUDE_DIR} ) target_include_directories( test_conf PUBLIC ${YAMLCPP_INCLUDE_DIR} )
endif() endif()

View File

@ -66,7 +66,7 @@ struct ContextualProcessBinding
void append( const QString& value, CalamaresUtils::CommandList* commands ) void append( const QString& value, CalamaresUtils::CommandList* commands )
{ {
checks.append( ValueCheck( value, commands ) ); checks.append( ValueCheck( value, commands ) );
if ( value == '*' ) if ( value == QString( "*" ) )
wildcard = commands; wildcard = commands;
} }

View File

@ -17,7 +17,10 @@
# #
# As a special case, the value-check "*" matches any value, but **only** # As a special case, the value-check "*" matches any value, but **only**
# if no other value-check matches. Use it as an *else* form for value- # if no other value-check matches. Use it as an *else* form for value-
# checks. Take care to put the asterisk in quotes. # checks. Take care to put the asterisk in quotes. The value-check "*"
# **also** matches a literal asterisk as value; a confusing corner case
# is checking for an asterisk **and** having a wildcard match with
# different commands. This is currently not possible.
# #
# Global configuration variables are not checked in a deterministic # Global configuration variables are not checked in a deterministic
# order, so do not rely on commands from one variable-check to # order, so do not rely on commands from one variable-check to

View File

@ -8,8 +8,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-04 08:16-0400\n" "POT-Creation-Date: 2018-05-28 04:57-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: guillermo pacheco <guillopacheco@gmail.com>, 2018\n"
"Language-Team: Spanish (Mexico) (https://www.transifex.com/calamares/teams/20061/es_MX/)\n" "Language-Team: Spanish (Mexico) (https://www.transifex.com/calamares/teams/20061/es_MX/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -19,24 +20,24 @@ msgstr ""
#: src/modules/dummypythonqt/main.py:84 #: src/modules/dummypythonqt/main.py:84
msgid "Click me!" msgid "Click me!"
msgstr "" msgstr "¡Haz clic en mí!"
#: src/modules/dummypythonqt/main.py:94 #: src/modules/dummypythonqt/main.py:94
msgid "A new QLabel." msgid "A new QLabel."
msgstr "" msgstr "Una nueva QLabel."
#: src/modules/dummypythonqt/main.py:97 #: src/modules/dummypythonqt/main.py:97
msgid "Dummy PythonQt ViewStep" msgid "Dummy PythonQt ViewStep"
msgstr "" msgstr "Vision del PythonQt ficticio"
#: src/modules/dummypythonqt/main.py:183 #: src/modules/dummypythonqt/main.py:183
msgid "The Dummy PythonQt Job" msgid "The Dummy PythonQt Job"
msgstr "" msgstr "Trabajo del PythonQt ficticio"
#: src/modules/dummypythonqt/main.py:186 #: src/modules/dummypythonqt/main.py:186
msgid "This is the Dummy PythonQt Job. The dummy job says: {}" msgid "This is the Dummy PythonQt Job. The dummy job says: {}"
msgstr "" msgstr "Este es el Trabajo PythonQt ficticio. El trabajo ficticio dice: {}"
#: src/modules/dummypythonqt/main.py:190 #: src/modules/dummypythonqt/main.py:190
msgid "A status message for Dummy PythonQt Job." msgid "A status message for Dummy PythonQt Job."
msgstr "" msgstr "Un mensaje de estado para el trabajo PythonQt ficticio."

View File

@ -8,9 +8,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-12-21 16:44+0100\n" "POT-Creation-Date: 2018-05-28 04:57-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Marco Z. <minaz666@gmail.com>, 2017\n" "Last-Translator: Saverio <saverio.brancaccio@gmail.com>, 2016\n"
"Language-Team: Italian (Italy) (https://www.transifex.com/calamares/teams/20061/it_IT/)\n" "Language-Team: Italian (Italy) (https://www.transifex.com/calamares/teams/20061/it_IT/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@ -28,7 +28,7 @@ msgstr "Una nuova QLabel."
#: src/modules/dummypythonqt/main.py:97 #: src/modules/dummypythonqt/main.py:97
msgid "Dummy PythonQt ViewStep" msgid "Dummy PythonQt ViewStep"
msgstr "PythonQt ViewStep Fittizio" msgstr "PythonQt ViewStep fittizio"
#: src/modules/dummypythonqt/main.py:183 #: src/modules/dummypythonqt/main.py:183
msgid "The Dummy PythonQt Job" msgid "The Dummy PythonQt Job"

View File

@ -0,0 +1,42 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-28 04:57-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Language-Team: Korean (https://www.transifex.com/calamares/teams/20061/ko/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ko\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: src/modules/dummypythonqt/main.py:84
msgid "Click me!"
msgstr ""
#: src/modules/dummypythonqt/main.py:94
msgid "A new QLabel."
msgstr ""
#: src/modules/dummypythonqt/main.py:97
msgid "Dummy PythonQt ViewStep"
msgstr ""
#: src/modules/dummypythonqt/main.py:183
msgid "The Dummy PythonQt Job"
msgstr ""
#: src/modules/dummypythonqt/main.py:186
msgid "This is the Dummy PythonQt Job. The dummy job says: {}"
msgstr ""
#: src/modules/dummypythonqt/main.py:190
msgid "A status message for Dummy PythonQt Job."
msgstr ""

View File

@ -44,15 +44,20 @@ def modify_grub_default(partitions, root_mount_point, distributor):
dracut_bin = libcalamares.utils.target_env_call( dracut_bin = libcalamares.utils.target_env_call(
["sh", "-c", "which dracut"] ["sh", "-c", "which dracut"]
) )
have_dracut = dracut_bin == 0 # Shell exit value 0 means success plymouth_bin = libcalamares.utils.target_env_call(
["sh", "-c", "which plymouth"]
)
# Shell exit value 0 means success
have_plymouth = plymouth_bin == 0
have_dracut = dracut_bin == 0
use_splash = "" use_splash = ""
swap_uuid = "" swap_uuid = ""
swap_outer_uuid = "" swap_outer_uuid = ""
swap_outer_mappername = None swap_outer_mappername = None
if libcalamares.globalstorage.contains("hasPlymouth"): if have_plymouth:
if libcalamares.globalstorage.value("hasPlymouth"):
use_splash = "splash" use_splash = "splash"
cryptdevice_params = [] cryptdevice_params = []

View File

@ -46,7 +46,7 @@ def run():
libcalamares.utils.debug("Hwclock returned error code {}".format(ret)) libcalamares.utils.debug("Hwclock returned error code {}".format(ret))
libcalamares.utils.debug(" .. ISA bus method failed.") libcalamares.utils.debug(" .. ISA bus method failed.")
else: else:
libcalamares.utils.debug("Hwclock set using ISA bus methode.") libcalamares.utils.debug("Hwclock set using ISA bus method.")
if is_broken_rtc and is_broken_isa: if is_broken_rtc and is_broken_isa:
libcalamares.utils.debug("BIOS or Kernel BUG: Setting hwclock failed.") libcalamares.utils.debug("BIOS or Kernel BUG: Setting hwclock failed.")

View File

@ -4,6 +4,12 @@ if( ECM_FOUND AND BUILD_TESTING )
find_package( Qt5 COMPONENTS Core Test REQUIRED ) find_package( Qt5 COMPONENTS Core Test REQUIRED )
endif() endif()
# When debugging the timezone widget, add this debugging definition
# to have a debugging-friendly timezone widget, debug logging,
# and no intrusive timezone-setting while clicking around.
#
# add_definitions( -DDEBUG_TIMEZONES )
include_directories( ${PROJECT_BINARY_DIR}/src/libcalamaresui ) include_directories( ${PROJECT_BINARY_DIR}/src/libcalamaresui )
set( geoip_src GeoIP.cpp GeoIPJSON.cpp ) set( geoip_src GeoIP.cpp GeoIPJSON.cpp )

View File

@ -23,6 +23,10 @@
#include "GeoIPXML.h" #include "GeoIPXML.h"
#endif #endif
#include <QNetworkAccessManager>
#include <QNetworkReply>
#include <QNetworkRequest>
#include <QtTest/QtTest> #include <QtTest/QtTest>
QTEST_GUILESS_MAIN( GeoIPTests ) QTEST_GUILESS_MAIN( GeoIPTests )

View File

@ -494,13 +494,15 @@ LocalePage::updateGlobalStorage()
Calamares::JobQueue::instance()->globalStorage()->insert( "locale", bcp47 ); Calamares::JobQueue::instance()->globalStorage()->insert( "locale", bcp47 );
// If we're in chroot mode (normal install mode), then we immediately set the // If we're in chroot mode (normal install mode), then we immediately set the
// timezone on the live system. // timezone on the live system. When debugging timezones, don't bother.
#ifndef DEBUG_TIMEZONES
if ( Calamares::Settings::instance()->doChroot() ) if ( Calamares::Settings::instance()->doChroot() )
{ {
QProcess ::execute( "timedatectl", // depends on systemd QProcess ::execute( "timedatectl", // depends on systemd
{ "set-timezone", { "set-timezone",
location.region + '/' + location.zone } ); location.region + '/' + location.zone } );
} }
#endif
// Preserve those settings that have been made explicit. // Preserve those settings that have been made explicit.
auto newLocale = guessLocaleConfiguration(); auto newLocale = guessLocaleConfiguration();

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -23,9 +23,19 @@
#include <cmath> #include <cmath>
#include "utils/Logger.h"
#include "timezonewidget.h" #include "timezonewidget.h"
constexpr double MATH_PI = 3.14159265;
static constexpr double MAP_Y_OFFSET = 0.125;
static constexpr double MAP_X_OFFSET = -0.0370;
constexpr static double MATH_PI = 3.14159265;
#ifdef DEBUG_TIMEZONES
// Adds a label to the timezone with this name
constexpr static QLatin1Literal ZONE_NAME( "zone" );
#endif
TimeZoneWidget::TimeZoneWidget( QWidget* parent ) : TimeZoneWidget::TimeZoneWidget( QWidget* parent ) :
QWidget( parent ) QWidget( parent )
@ -48,7 +58,12 @@ TimeZoneWidget::TimeZoneWidget( QWidget* parent ) :
// Zone images // Zone images
QStringList zones = QString( ZONES ).split( " ", QString::SkipEmptyParts ); QStringList zones = QString( ZONES ).split( " ", QString::SkipEmptyParts );
for ( int i = 0; i < zones.size(); ++i ) for ( int i = 0; i < zones.size(); ++i )
{
timeZoneImages.append( QImage( ":/images/timezone_" + zones.at( i ) + ".png" ).scaled( X_SIZE, Y_SIZE, Qt::IgnoreAspectRatio, Qt::SmoothTransformation ) ); timeZoneImages.append( QImage( ":/images/timezone_" + zones.at( i ) + ".png" ).scaled( X_SIZE, Y_SIZE, Qt::IgnoreAspectRatio, Qt::SmoothTransformation ) );
#ifdef DEBUG_TIMEZONES
timeZoneImages.last().setText( ZONE_NAME, zones.at( i ) );
#endif
}
} }
@ -78,6 +93,15 @@ void TimeZoneWidget::setCurrentLocation( LocaleGlobal::Location location )
// Set zone // Set zone
QPoint pos = getLocationPosition( currentLocation.longitude, currentLocation.latitude ); QPoint pos = getLocationPosition( currentLocation.longitude, currentLocation.latitude );
#ifdef DEBUG_TIMEZONES
cDebug() << "Setting location" << location.region << location.zone << location.country;
cDebug() << " .. long" << location.longitude << "lat" << location.latitude;
cDebug() << " .. x" << pos.x() << "y" << pos.y();
bool found = false;
#endif
for ( int i = 0; i < timeZoneImages.size(); ++i ) for ( int i = 0; i < timeZoneImages.size(); ++i )
{ {
QImage zone = timeZoneImages[i]; QImage zone = timeZoneImages[i];
@ -85,8 +109,21 @@ void TimeZoneWidget::setCurrentLocation( LocaleGlobal::Location location )
// If not transparent set as current // If not transparent set as current
if ( zone.pixel( pos ) != RGB_TRANSPARENT ) if ( zone.pixel( pos ) != RGB_TRANSPARENT )
{ {
#ifdef DEBUG_TIMEZONES
// Log *all* the zones that contain this point,
// but only pick the first.
if ( !found )
{
currentZoneImage = zone;
found = true;
cDebug() << " .. First zone found" << i << zone.text( ZONE_NAME );
}
else
cDebug() << " .. Also in zone" << i << zone.text( ZONE_NAME );
#else
currentZoneImage = zone; currentZoneImage = zone;
break; break;
#endif
} }
} }
@ -114,8 +151,22 @@ QPoint TimeZoneWidget::getLocationPosition( double longitude, double latitude )
// of there, and we have a funny "rounded" top of the world. In practice the locations // of there, and we have a funny "rounded" top of the world. In practice the locations
// of the different cities / regions looks ok -- at least Thule ends up in the right // of the different cities / regions looks ok -- at least Thule ends up in the right
// country, and Inuvik isn't in the ocean. // country, and Inuvik isn't in the ocean.
if ( latitude > 62.0 ) if ( latitude > 70.0 )
y -= sin( MATH_PI * ( latitude - 62.0 ) / 56.0 ) * MAP_Y_OFFSET * height; y -= sin( MATH_PI * ( latitude - 70.0 ) / 56.0 ) * MAP_Y_OFFSET * height * 0.8;
if ( latitude > 74.0 )
y += 4;
if ( latitude > 69.0 )
y -= 2;
if ( latitude > 59.0 )
y -= 4 * int( ( latitude - 54.0 ) / 5.0 );
if ( latitude > 54.0 )
y -= 2;
if ( latitude > 49.0 )
y -= int ( (latitude - 44.0) / 5.0 );
// Far south, some stretching occurs as well, but it is less pronounced.
// Move down by 1 pixel per 5 degrees past 10 south
if ( latitude < 0 )
y += int( (-latitude) / 5.0 );
// Antarctica isn't shown on the map, but you could try clicking there // Antarctica isn't shown on the map, but you could try clicking there
if ( latitude < -60 ) if ( latitude < -60 )
y = height - 1; y = height - 1;
@ -149,8 +200,28 @@ void TimeZoneWidget::paintEvent( QPaintEvent* )
// Draw zone image // Draw zone image
painter.drawImage( 0, 0, currentZoneImage ); painter.drawImage( 0, 0, currentZoneImage );
// Draw pin #ifdef DEBUG_TIMEZONES
QPoint point = getLocationPosition( currentLocation.longitude, currentLocation.latitude ); QPoint point = getLocationPosition( currentLocation.longitude, currentLocation.latitude );
// Draw latitude lines
for ( int y_lat = -50; y_lat < 80 ; y_lat+=5 )
{
QPen p( y_lat ? Qt::black : Qt::red );
p.setWidth( 0 );
painter.setPen( p );
QPoint latLine0( getLocationPosition( 0, y_lat ) );
int llx = latLine0.x() + ((y_lat & 1) ? -10 : 0);
int lly = latLine0.y();
for ( int c = 0 ; c < width ; ++c )
painter.drawPoint( c, lly );
}
// Just a dot in the selected location, no label
painter.setPen( Qt::red );
painter.drawPoint( point );
#else
// Draw pin at current location
QPoint point = getLocationPosition( currentLocation.longitude, currentLocation.latitude );
painter.drawImage( point.x() - pin.width()/2, point.y() - pin.height()/2, pin ); painter.drawImage( point.x() - pin.width()/2, point.y() - pin.height()/2, pin );
// Draw text and box // Draw text and box
@ -173,6 +244,7 @@ void TimeZoneWidget::paintEvent( QPaintEvent* )
painter.drawRoundedRect( rect, 3, 3 ); painter.drawRoundedRect( rect, 3, 3 );
painter.setPen( Qt::white ); painter.setPen( Qt::white );
painter.drawText( rect.x() + 5, rect.bottom() - 4, LocaleGlobal::Location::pretty( currentLocation.zone ) ); painter.drawText( rect.x() + 5, rect.bottom() - 4, LocaleGlobal::Location::pretty( currentLocation.zone ) );
#endif
painter.end(); painter.end();
} }

View File

@ -36,8 +36,6 @@
#include "localeglobal.h" #include "localeglobal.h"
#define MAP_Y_OFFSET 0.125
#define MAP_X_OFFSET -0.0370
#define RGB_TRANSPARENT 0 #define RGB_TRANSPARENT 0
#define ZONES "0.0 1.0 2.0 3.0 3.5 4.0 4.5 5.0 5.5 5.75 6.0 6.5 7.0 8.0 9.0 9.5 10.0 10.5 11.0 11.5 12.0 12.75 13.0 -1.0 -2.0 -3.0 -3.5 -4.0 -4.5 -5.0 -5.5 -6.0 -7.0 -8.0 -9.0 -9.5 -10.0 -11.0" #define ZONES "0.0 1.0 2.0 3.0 3.5 4.0 4.5 5.0 5.5 5.75 6.0 6.5 7.0 8.0 9.0 9.5 10.0 10.5 11.0 11.5 12.0 12.75 13.0 -1.0 -2.0 -3.0 -3.5 -4.0 -4.5 -5.0 -5.5 -6.0 -7.0 -8.0 -9.0 -9.5 -10.0 -11.0"
#define X_SIZE 780 #define X_SIZE 780

View File

@ -40,14 +40,9 @@ class PlymouthController:
"/etc/plymouth/plymouthd.conf"]) "/etc/plymouth/plymouthd.conf"])
def detect(self): def detect(self):
isPlymouth = target_env_call(["which", "plymouth"]) isPlymouth = target_env_call(["sh", "-c", "which plymouth"])
debug("which plymouth exit code: {!s}".format(isPlymouth)) debug("which plymouth exit code: {!s}".format(isPlymouth))
if isPlymouth == 0:
libcalamares.globalstorage.insert("hasPlymouth", True)
else:
libcalamares.globalstorage.insert("hasPlymouth", False)
return isPlymouth return isPlymouth
def run(self): def run(self):

View File

@ -93,7 +93,7 @@ Calamares::JobResult PreserveFiles::exec()
prefix.append( '/' ); prefix.append( '/' );
int count = 0; int count = 0;
for ( const auto it : m_items ) for ( const auto& it : m_items )
{ {
QString source = it.source; QString source = it.source;
QString dest = prefix + atReplacements( it.dest ); QString dest = prefix + atReplacements( it.dest );
@ -162,7 +162,7 @@ void PreserveFiles::setConfigurationMap(const QVariantMap& configurationMap)
QVariantList l = files.toList(); QVariantList l = files.toList();
unsigned int c = 0; unsigned int c = 0;
for ( const auto li : l ) for ( const auto& li : l )
{ {
if ( li.type() == QVariant::String ) if ( li.type() == QVariant::String )
{ {

View File

@ -21,43 +21,86 @@
* shipped with each module for correctness -- well, for parseability. * shipped with each module for correctness -- well, for parseability.
*/ */
#include <unistd.h>
#include <stdlib.h>
#include <iostream> #include <iostream>
#include <yaml-cpp/yaml.h> #include <yaml-cpp/yaml.h>
#include <QFile>
#include <QByteArray>
using std::cerr; using std::cerr;
static const char usage[] = "Usage: test_conf [-v] [-b] <file> ...\n";
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
if (argc != 2) bool verbose = false;
bool bytes = false;
int opt;
while ((opt = getopt(argc, argv, "vb")) != -1) {
switch (opt) {
case 'v':
verbose = true;
break;
case 'b':
bytes = true;
break;
default: /* '?' */
cerr << usage;
return 1;
}
}
if ( optind >= argc )
{ {
cerr << "Usage: test_conf <file.conf>\n"; cerr << usage;
return 1; return 1;
} }
const char* filename = argv[optind];
try try
{ {
YAML::Node doc = YAML::LoadFile( argv[1] ); YAML::Node doc;
if ( bytes )
{
QFile f( filename );
if ( f.open( QFile::ReadOnly | QFile::Text ) )
doc = YAML::Load( f.readAll().constData() );
}
else
doc = YAML::LoadFile( filename );
if ( doc.IsNull() ) if ( doc.IsNull() )
{ {
// Special case: empty config files are valid, // Special case: empty config files are valid,
// but aren't a map. For the example configs, // but aren't a map. For the example configs,
// this is still an error. // this is still an error.
cerr << "WARNING:" << argv[1] << '\n'; cerr << "WARNING:" << filename << '\n';
cerr << "WARNING: empty YAML\n"; cerr << "WARNING: empty YAML\n";
return 1; return 1;
} }
if ( !doc.IsMap() ) if ( !doc.IsMap() )
{ {
cerr << "WARNING:" << argv[1] << '\n'; cerr << "WARNING:" << filename << '\n';
cerr << "WARNING: not-a-YAML-map\n"; cerr << "WARNING: not-a-YAML-map\n";
return 1; return 1;
} }
if ( verbose )
{
cerr << "Keys:\n";
for ( auto i = doc.begin(); i != doc.end(); ++i )
cerr << i->first.as<std::string>() << '\n';
}
} }
catch ( YAML::Exception& e ) catch ( YAML::Exception& e )
{ {
cerr << "WARNING:" << argv[1] << '\n'; cerr << "WARNING:" << filename << '\n';
cerr << "WARNING: YAML parser error " << e.what() << '\n'; cerr << "WARNING: YAML parser error " << e.what() << '\n';
return 1; return 1;
} }