Merge branch 'development' into 3.2.x-stable

This commit is contained in:
Philip Müller 2020-06-18 22:16:37 +02:00
commit 4125d65c5d
126 changed files with 19937 additions and 1428 deletions

View File

@ -26,6 +26,7 @@ ReflowComments: "false"
SortIncludes: "true" SortIncludes: "true"
SpaceAfterCStyleCast: "false" SpaceAfterCStyleCast: "false"
SpacesBeforeTrailingComments: "2" SpacesBeforeTrailingComments: "2"
# SpaceInEmptyBlock: "true"
SpacesInAngles: "true" SpacesInAngles: "true"
SpacesInParentheses: "true" SpacesInParentheses: "true"
SpacesInSquareBrackets: "true" SpacesInSquareBrackets: "true"

1
.gitignore vendored
View File

@ -50,3 +50,4 @@ CMakeLists.txt.user
# Kate # Kate
*.kate-swp *.kate-swp
tags

View File

@ -1,17 +1,12 @@
[main] [main]
host = https://www.transifex.com host = https://www.transifex.com
[calamares.calamares-master] [calamares.calamares]
file_filter = lang/calamares_<lang>.ts file_filter = lang/calamares_<lang>.ts
source_file = lang/calamares_en.ts source_file = lang/calamares_en.ts
source_lang = en source_lang = en
type = QT type = QT
[calamares.dummypythonqt]
file_filter = src/modules/dummypythonqt/lang/<lang>/LC_MESSAGES/dummypythonqt.po
source_file = src/modules/dummypythonqt/lang/dummypythonqt.pot
source_lang = en
[calamares.fdo] [calamares.fdo]
file_filter = lang/desktop_<lang>.desktop file_filter = lang/desktop_<lang>.desktop
source_file = calamares.desktop source_file = calamares.desktop

32
CHANGES
View File

@ -3,6 +3,37 @@ contributors are listed. Note that Calamares does not have a historical
changelog -- this log starts with version 3.2.0. The release notes on the changelog -- this log starts with version 3.2.0. The release notes on the
website will have to do for older versions. website will have to do for older versions.
# 3.2.26 (2020-06-18) #
This release contains contributions from (alphabetically by first name):
- Anke Boersma
- Gaël PORTAY
- Pablo Ovelleiro Corral
- Philip Müller
## Core ##
- The default branch for Calamares source repositories (calamares
and calamares-extensions) is now *calamares*.
- External modules can now be built again, outside of the Calamares
source and build-tree.
- The repository *calamares-tools* has been removed. The idea behind
the tooling was to provide schema validation for Calamares configuration
files. This has been merged into the primary repository, where it
is now part of the test suite.
## Modules ##
- *locale* put some more places into the correct timezone **visually**;
for instance Norfolk Island gave up UTC+11.5 in 2015 and is now
UTC+11, but Calamares still showed it in a zone separate from UTC+11.
- *localeq* can now properly switch between on & offline mode,
it detects internet status through js.
- *packages* gained support for the Void Linux package manager,
*xbps*. (thanks Pablo)
- *tracking* now supports kuserfeedback configuration.
- *welcomeq* added the GEOIP configuration option, so locale can be
initially set according to IP address.
# 3.2.25 (2020-06-06) # # 3.2.25 (2020-06-06) #
This release contains contributions from (alphabetically by first name): This release contains contributions from (alphabetically by first name):
@ -37,6 +68,7 @@ This release contains contributions from (alphabetically by first name):
- The *keyboard* module no longer uses *ca_eng* keyboards in Canada by - The *keyboard* module no longer uses *ca_eng* keyboards in Canada by
default, but sticks to the *us* keyboard. #1419 default, but sticks to the *us* keyboard. #1419
# 3.2.24 (2020-05-11) # # 3.2.24 (2020-05-11) #
This release contains contributions from (alphabetically by first name): This release contains contributions from (alphabetically by first name):

View File

@ -27,8 +27,13 @@
# USE_<foo> : fills in SKIP_MODULES for modules called <foo>-<something> # USE_<foo> : fills in SKIP_MODULES for modules called <foo>-<something>
# WITH_<foo> : try to enable <foo> (these usually default to ON). For # WITH_<foo> : try to enable <foo> (these usually default to ON). For
# a list of WITH_<foo> grep CMakeCache.txt after running # a list of WITH_<foo> grep CMakeCache.txt after running
# CMake once. # CMake once. These affect the ABI offered by Calamares.
# - PYTHON (enable Python Job modules)
# - QML (enable QML UI View modules)
# - PYTHONQT # TODO:3.3: remove
# BUILD_<foo> : choose additional things to build # BUILD_<foo> : choose additional things to build
# - TESTING (standard CMake option)
# - SCHEMA_TESTING (requires Python, see ci/configvalidator.py)
# DEBUG_<foo> : special developer flags for debugging # DEBUG_<foo> : special developer flags for debugging
# #
# Example usage: # Example usage:
@ -38,9 +43,10 @@
# One special target is "show-version", which can be built # One special target is "show-version", which can be built
# to obtain the version number from here. # to obtain the version number from here.
# TODO:3.3: Require CMake 3.12
cmake_minimum_required( VERSION 3.3 FATAL_ERROR ) cmake_minimum_required( VERSION 3.3 FATAL_ERROR )
project( CALAMARES project( CALAMARES
VERSION 3.2.25 VERSION 3.2.26
LANGUAGES C CXX ) LANGUAGES C CXX )
set( CALAMARES_VERSION_RC 0 ) # Set to 0 during release cycle, 1 during development set( CALAMARES_VERSION_RC 0 ) # Set to 0 during release cycle, 1 during development
@ -51,13 +57,17 @@ option( INSTALL_CONFIG "Install configuration files" OFF )
option( INSTALL_POLKIT "Install Polkit configuration" ON ) option( INSTALL_POLKIT "Install Polkit configuration" ON )
option( INSTALL_COMPLETION "Install shell completions" OFF ) option( INSTALL_COMPLETION "Install shell completions" OFF )
# Options for the calamares executable # Options for the calamares executable
option( WITH_KF5Crash "Enable crash reporting with KCrash." ON ) option( WITH_KF5Crash "Enable crash reporting with KCrash." ON ) # TODO:3.3: WITH->BUILD (this isn't an ABI thing)
option( WITH_KF5DBus "Use DBus service for unique-application." OFF ) option( WITH_KF5DBus "Use DBus service for unique-application." OFF ) # TODO:3.3: WITH->BUILD
# When adding WITH_* that affects the ABI offered by libcalamares, # When adding WITH_* that affects the ABI offered by libcalamares,
# also update libcalamares/CalamaresConfig.h.in # also update libcalamares/CalamaresConfig.h.in
option( WITH_PYTHON "Enable Python modules API (requires Boost.Python)." ON ) option( WITH_PYTHON "Enable Python modules API (requires Boost.Python)." ON )
option( WITH_PYTHONQT "Enable Python view modules API (deprecated, requires PythonQt)." OFF ) option( WITH_PYTHONQT "Enable Python view modules API (deprecated, requires PythonQt)." OFF ) # TODO:3.3: remove
option( WITH_QML "Enable QML UI options." ON ) option( WITH_QML "Enable QML UI options." ON )
#
# Additional parts to build
option( BUILD_SCHEMA_TESTING "Enable schema-validation-tests" ON )
# Possible debugging flags are: # Possible debugging flags are:
# - DEBUG_TIMEZONES draws latitude and longitude lines on the timezone # - DEBUG_TIMEZONES draws latitude and longitude lines on the timezone
@ -162,7 +172,13 @@ if(NOT CMAKE_VERSION VERSION_LESS "3.10.0")
) )
endif() endif()
# CMake Modules
include( CMakePackageConfigHelpers )
include( CTest ) include( CTest )
include( FeatureSummary )
# Calamares Modules
include( CMakeColors )
### C++ SETUP ### C++ SETUP
# #
@ -248,9 +264,6 @@ if( CMAKE_COMPILER_IS_GNUCXX )
endif() endif()
endif() endif()
include( FeatureSummary )
include( CMakeColors )
### DEPENDENCIES ### DEPENDENCIES
# #
@ -319,15 +332,41 @@ if( NOT KF5DBusAddons_FOUND )
set( WITH_KF5DBus OFF ) set( WITH_KF5DBus OFF )
endif() endif()
# TODO:3.3: Use FindPython3 instead
find_package( PythonInterp ${PYTHONLIBS_VERSION} )
set_package_properties(
PythonInterp PROPERTIES
DESCRIPTION "Python 3 interpreter."
URL "https://python.org"
PURPOSE "Python 3 interpreter for certain tests."
)
if ( PYTHONINTERP_FOUND )
message(STATUS "Found Python 3 interpreter ${PYTHON_EXECUTABLE}")
if ( BUILD_SCHEMA_TESTING )
# The configuration validator script has some dependencies,
# and if they are not installed, don't run. If errors out
# with exit(1) on missing dependencies.
exec_program( ${PYTHON_EXECUTABLE} ARGS "${CMAKE_SOURCE_DIR}/ci/configvalidator.py" -x RETURN_VALUE _validator_deps )
# It should never succeed, but only returns 1 when the imports fail
if ( _validator_deps EQUAL 1 )
message(STATUS "BUILD_SCHEMA_TESTING dependencies are missing." )
set( BUILD_SCHEMA_TESTING OFF )
endif()
endif()
else()
# Can't run schema tests without Python3.
set( BUILD_SCHEMA_TESTING OFF )
endif()
find_package( PythonLibs ${PYTHONLIBS_VERSION} ) 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."
URL "http://python.org" URL "https://python.org"
PURPOSE "Python 3 is used for Python job modules." PURPOSE "Python 3 is used for Python job modules."
) )
if ( PYTHONLIBS_FOUND ) if ( PYTHONLIBS_FOUND )
# TODO:3.3: Require Boost + CMake; sort out Boost::Python
# Since Boost provides CMake config files (starting with Boost 1.70. # Since Boost provides CMake config files (starting with Boost 1.70.
# or so) the mess that is the Calamares find code picks the wrong # or so) the mess that is the Calamares find code picks the wrong
# bits. Suppress those CMake config files, as suggested by @jmrcpn # bits. Suppress those CMake config files, as suggested by @jmrcpn
@ -338,7 +377,7 @@ if ( PYTHONLIBS_FOUND )
Boost PROPERTIES Boost PROPERTIES
PURPOSE "Boost.Python is used for Python job modules." PURPOSE "Boost.Python is used for Python job modules."
) )
# TODO:3.3: Remove PythonQt support
find_package( PythonQt ) find_package( PythonQt )
set_package_properties( PythonQt PROPERTIES set_package_properties( PythonQt PROPERTIES
DESCRIPTION "A Python embedding solution for Qt applications." DESCRIPTION "A Python embedding solution for Qt applications."
@ -356,6 +395,13 @@ if( NOT PYTHONLIBS_FOUND OR NOT PYTHONQT_FOUND )
set( WITH_PYTHONQT OFF ) set( WITH_PYTHONQT OFF )
endif() endif()
# Now we know the state of the ABI-options, copy them into "Calamares_"
# prefixed variables, to match how the variables would-be-named
# when building out-of-tree.
set(Calamares_WITH_PYTHON ${WITH_PYTHON})
set(Calamares_WITH_PYTHONQT ${WITH_PYTHONQT})
set(Calamares_WITH_QML ${WITH_QML})
### Transifex Translation status ### Transifex Translation status
# #
# Construct language lists for use. If there are p_tx* variables, # Construct language lists for use. If there are p_tx* variables,
@ -520,16 +566,10 @@ endif()
# make predefined install dirs available everywhere # make predefined install dirs available everywhere
include( GNUInstallDirs ) include( GNUInstallDirs )
# make uninstall support # This is used by CalamaresAddLibrary; once Calamares is installed,
configure_file( # the CalamaresConfig.cmake module sets this variable to the IMPORTED
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" # libraries for Calamares.
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" set( Calamares_LIBRARIES calamares )
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 )
@ -539,32 +579,39 @@ 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")
add_feature_info(KDBusAddons ${WITH_KF5DBus} "Unique-application via DBus") add_feature_info(KDBusAddons ${WITH_KF5DBus} "Unique-application via DBus")
# Add all targets to the build-tree export set ### CMake infrastructure installation
#
#
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}" )
export( TARGETS calamares
FILE "${PROJECT_BINARY_DIR}/CalamaresLibraryDepends.cmake" )
# Export the package for use from the build-tree
# (this registers the build-tree with a global CMake-registry)
export( PACKAGE Calamares ) export( PACKAGE Calamares )
configure_package_config_file(
# Create a CalamaresBuildTreeSettings.cmake file for the use from the build tree "CalamaresConfig.cmake.in"
configure_file( CalamaresBuildTreeSettings.cmake.in "${PROJECT_BINARY_DIR}/CalamaresBuildTreeSettings.cmake" @ONLY ) "${PROJECT_BINARY_DIR}/CalamaresConfig.cmake"
INSTALL_DESTINATION "${CMAKE_INSTALL_CMAKEDIR}"
# Create the CalamaresConfig.cmake and CalamaresConfigVersion files PATH_VARS
file( RELATIVE_PATH CONF_REL_INCLUDE_DIR "${CMAKE_INSTALL_FULL_CMAKEDIR}" "${CMAKE_INSTALL_FULL_INCLUDEDIR}" ) CMAKE_INSTALL_INCLUDEDIR
CMAKE_INSTALL_LIBDIR
configure_file( CalamaresConfig.cmake.in "${PROJECT_BINARY_DIR}/CalamaresConfig.cmake" @ONLY ) CMAKE_INSTALL_DATADIR
configure_file( CalamaresConfigVersion.cmake.in "${PROJECT_BINARY_DIR}/CalamaresConfigVersion.cmake" @ONLY ) )
configure_file( CalamaresUse.cmake.in "${PROJECT_BINARY_DIR}/CalamaresUse.cmake" @ONLY ) write_basic_package_version_file(
${PROJECT_BINARY_DIR}/CalamaresConfigVersion.cmake
VERSION ${PROJECT_VERSION}
COMPATIBILITY SameMajorVersion
)
install(
EXPORT Calamares
DESTINATION "${CMAKE_INSTALL_CMAKEDIR}"
FILE "CalamaresTargets.cmake"
NAMESPACE Calamares::
)
# Install the cmake files # Install the cmake files
install( install(
FILES FILES
"${PROJECT_BINARY_DIR}/CalamaresConfig.cmake" "${PROJECT_BINARY_DIR}/CalamaresConfig.cmake"
"${PROJECT_BINARY_DIR}/CalamaresConfigVersion.cmake" "${PROJECT_BINARY_DIR}/CalamaresConfigVersion.cmake"
"${PROJECT_BINARY_DIR}/CalamaresUse.cmake"
"CMakeModules/CalamaresAddBrandingSubdirectory.cmake" "CMakeModules/CalamaresAddBrandingSubdirectory.cmake"
"CMakeModules/CalamaresAddLibrary.cmake" "CMakeModules/CalamaresAddLibrary.cmake"
"CMakeModules/CalamaresAddModuleSubdirectory.cmake" "CMakeModules/CalamaresAddModuleSubdirectory.cmake"
@ -573,48 +620,36 @@ install(
"CMakeModules/CalamaresAddTranslations.cmake" "CMakeModules/CalamaresAddTranslations.cmake"
"CMakeModules/CalamaresAutomoc.cmake" "CMakeModules/CalamaresAutomoc.cmake"
"CMakeModules/CMakeColors.cmake" "CMakeModules/CMakeColors.cmake"
"CMakeModules/FindYAMLCPP.cmake"
DESTINATION DESTINATION
"${CMAKE_INSTALL_CMAKEDIR}" "${CMAKE_INSTALL_CMAKEDIR}"
) )
# Install the export set for use with the install-tree ### Miscellaneous installs
install( #
EXPORT #
CalamaresLibraryDepends
DESTINATION
"${CMAKE_INSTALL_CMAKEDIR}"
)
if( INSTALL_CONFIG ) if( INSTALL_CONFIG )
install( install(
FILES FILES settings.conf
settings.conf DESTINATION share/calamares
DESTINATION
share/calamares
) )
endif() endif()
if( INSTALL_POLKIT ) if( INSTALL_POLKIT )
install( install(
FILES FILES com.github.calamares.calamares.policy
com.github.calamares.calamares.policy DESTINATION "${POLKITQT-1_POLICY_FILES_INSTALL_DIR}"
DESTINATION
"${POLKITQT-1_POLICY_FILES_INSTALL_DIR}"
) )
endif() endif()
install( install(
FILES FILES calamares.desktop
calamares.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications
DESTINATION
${CMAKE_INSTALL_DATADIR}/applications
) )
install( install(
FILES FILES man/calamares.8
man/calamares.8 DESTINATION ${CMAKE_INSTALL_MANDIR}/man8/
DESTINATION
${CMAKE_INSTALL_MANDIR}/man8/
) )
# uninstall target # uninstall target

View File

@ -93,11 +93,10 @@ function(calamares_add_library)
# add link targets # add link targets
target_link_libraries(${target} target_link_libraries(${target}
LINK_PUBLIC ${CALAMARES_LIBRARIES} LINK_PUBLIC ${Calamares_LIBRARIES}
Qt5::Core Qt5::Core
Qt5::Gui Qt5::Gui
Qt5::Widgets Qt5::Widgets
${LIBRARY_QT5_MODULES}
) )
if(LIBRARY_LINK_LIBRARIES) if(LIBRARY_LINK_LIBRARIES)
target_link_libraries(${target} LINK_PUBLIC ${LIBRARY_LINK_LIBRARIES}) target_link_libraries(${target} LINK_PUBLIC ${LIBRARY_LINK_LIBRARIES})

View File

@ -61,7 +61,17 @@ function( calamares_add_module_subdirectory )
# ...otherwise, we look for a module.desc. # ...otherwise, we look for a module.desc.
elseif( EXISTS "${_mod_dir}/module.desc" ) elseif( EXISTS "${_mod_dir}/module.desc" )
set( MODULES_DIR ${CMAKE_INSTALL_LIBDIR}/calamares/modules ) set( MODULES_DIR ${CMAKE_INSTALL_LIBDIR}/calamares/modules )
# The module subdirectory may be given as a/b/c, but the module
# needs to be installed as "c", so we split off any intermediate
# directories.
get_filename_component(_dirname "${SUBDIRECTORY}" DIRECTORY)
if( _dirname )
# Remove the dirname and any leftover leading /s
string( REGEX REPLACE "^${_dirname}/*" "" _modulename "${SUBDIRECTORY}" )
set( MODULE_DESTINATION ${MODULES_DIR}/${_modulename} )
else()
set( MODULE_DESTINATION ${MODULES_DIR}/${SUBDIRECTORY} ) set( MODULE_DESTINATION ${MODULES_DIR}/${SUBDIRECTORY} )
endif()
# Read module.desc, check that the interface type is supported. # Read module.desc, check that the interface type is supported.
# #
@ -70,11 +80,11 @@ function( calamares_add_module_subdirectory )
# _mod_testing boolean if the module should be added to the loadmodule tests # _mod_testing boolean if the module should be added to the loadmodule tests
file(STRINGS "${_mod_dir}/module.desc" MODULE_INTERFACE REGEX "^interface") file(STRINGS "${_mod_dir}/module.desc" MODULE_INTERFACE REGEX "^interface")
if ( MODULE_INTERFACE MATCHES "pythonqt" ) if ( MODULE_INTERFACE MATCHES "pythonqt" )
set( _mod_enabled ${WITH_PYTHONQT} ) set( _mod_enabled ${Calamares_WITH_PYTHONQT} )
set( _mod_reason "No PythonQt support" ) set( _mod_reason "No PythonQt support" )
set( _mod_testing OFF ) set( _mod_testing OFF )
elseif ( MODULE_INTERFACE MATCHES "python" ) elseif ( MODULE_INTERFACE MATCHES "python" )
set( _mod_enabled ${WITH_PYTHON} ) set( _mod_enabled ${Calamares_WITH_PYTHON} )
set( _mod_reason "No Python support" ) set( _mod_reason "No Python support" )
set( _mod_testing ON ) # Will check syntax and imports, at least set( _mod_testing ON ) # Will check syntax and imports, at least
elseif ( MODULE_INTERFACE MATCHES "qtplugin" ) elseif ( MODULE_INTERFACE MATCHES "qtplugin" )

View File

@ -1,4 +0,0 @@
set(CALAMARES_INCLUDE_DIRS
"@PROJECT_SOURCE_DIR@/src/libcalamares"
"@PROJECT_BINARY_DIR@/src/libcalamares"
)

View File

@ -1,32 +1,78 @@
# Config file for the Calamares package # Config file for the Calamares package
# #
# It defines the following variables # The following IMPORTED targets are defined:
# CALAMARES_INCLUDE_DIRS - include directories for Calamares # - Calamares::calamares - the core library
# CALAMARES_LIBRARIES - libraries to link against # - Calamares::calamaresui - the UI (and QML) library
# CALAMARES_USE_FILE - name of a convenience include
# CALAMARES_APPLICATION_NAME - human-readable application name
#
# Typical use is:
#
# find_package(Calamares REQUIRED)
# include("${CALAMARES_USE_FILE}")
# #
# For legacy use it defines the following variables:
# - Calamares_INCLUDE_DIRS - include directories for Calamares
# - Calamares_LIB_DIRS - library directories
# - Calamares_LIBRARIES - libraries to link against
# Compute paths @PACKAGE_INIT@
get_filename_component(CALAMARES_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
if(EXISTS "${CALAMARES_CMAKE_DIR}/CMakeCache.txt") ### Versioning and IMPORTED targets
# In build tree #
include("${CALAMARES_CMAKE_DIR}/CalamaresBuildTreeSettings.cmake") #
else() include(${CMAKE_CURRENT_LIST_DIR}/CalamaresConfigVersion.cmake)
set(CALAMARES_INCLUDE_DIRS "${CALAMARES_CMAKE_DIR}/@CONF_REL_INCLUDE_DIR@/libcalamares") include(${CMAKE_CURRENT_LIST_DIR}/CalamaresTargets.cmake)
### Dependencies
#
# The libraries can depend on a variety of Qt and KDE Frameworks
# components, so accumulate them and find (just once).
#
macro(accumulate_deps outvar target namespace)
string(LENGTH ${namespace} _nslen)
get_target_property(_libs ${target} INTERFACE_LINK_LIBRARIES)
foreach(_lib ${_libs})
if (_lib MATCHES ^${namespace})
string(SUBSTRING ${_lib} ${_nslen} -1 _component)
list(APPEND ${outvar} ${_component})
endif()
endforeach()
endmacro()
# Qt5 infrastructure for translations is required
set(qt5_required Core Widgets LinguistTools)
accumulate_deps(qt5_required Calamares::calamares Qt5::)
accumulate_deps(qt5_required Calamares::calamaresui Qt5::)
find_package(Qt5 CONFIG REQUIRED ${qt5_required})
set(kf5_required "")
accumulate_deps(kf5_required Calamares::calamares KF5::)
accumulate_deps(kf5_required Calamares::calamaresui KF5::)
if(kf5_required)
find_package(ECM ${ECM_VERSION} NO_MODULE)
if( ECM_FOUND )
list(PREPEND CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
find_package(KF5 REQUIRED COMPONENTS ${kf5_required})
endif()
endif() endif()
# Our library dependencies (contains definitions for IMPORTED targets) ### Legacy support
include("${CALAMARES_CMAKE_DIR}/CalamaresLibraryDepends.cmake") #
#
set(Calamares_LIB_DIRS "@PACKAGE_CMAKE_INSTALL_LIBDIR@")
set(Calamares_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@")
set(Calamares_LIBRARIES Calamares::calamares)
# These are IMPORTED targets created by CalamaresLibraryDepends.cmake ### CMake support
set(CALAMARES_LIBRARIES calamares) #
#
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
# Convenience variables include(CalamaresAddBrandingSubdirectory)
set(CALAMARES_USE_FILE "${CALAMARES_CMAKE_DIR}/CalamaresUse.cmake") include(CalamaresAddLibrary)
set(CALAMARES_APPLICATION_NAME "Calamares") include(CalamaresAddModuleSubdirectory)
include(CalamaresAddPlugin)
# These are feature-settings that affect consumers of Calamares
# libraries as well; without Python-support in the libs, for instance,
# there's no point in having a Python plugin.
#
# This list should match the one in libcalamares/CalamaresConfig.h,
# which is the C++-language side of the same configuration.
set(Calamares_WITH_PYTHON @WITH_PYTHON@)
set(Calamares_WITH_PYTHONQT @WITH_PYTHONQT@)
set(Calamares_WITH_QML @WITH_QML@)

View File

@ -1,12 +0,0 @@
set(PACKAGE_VERSION "@CALAMARES_VERSION@")
# Check whether the requested PACKAGE_FIND_VERSION is compatible
if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}")
set(PACKAGE_VERSION_COMPATIBLE FALSE)
else()
set(PACKAGE_VERSION_COMPATIBLE TRUE)
if ("${PACKAGE_VERSION}" VERSION_EQUAL "${PACKAGE_FIND_VERSION}")
set(PACKAGE_VERSION_EXACT TRUE)
endif()
endif()

View File

@ -1,29 +0,0 @@
# A setup-cmake-things-for-Calamares module.
#
# This module handles looking for dependencies and including
# all of the Calamares macro modules, so that you can focus
# on just using the macros to build Calamares modules.
# Typical use looks like this:
#
# ```
# find_package( Calamares REQUIRED )
# include( "${CALAMARES_CMAKE_DIR}/CalamaresUse.cmake" )
# ```
#
# The first CMake command finds Calamares (which will contain
# this file), then adds the found location to the search path,
# and then includes this file. After that, you can use
# Calamares module and plugin macros.
if( NOT CALAMARES_CMAKE_DIR )
message( FATAL_ERROR "Use find_package(Calamares) first." )
endif()
set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CALAMARES_CMAKE_DIR} )
find_package( Qt5 @QT_VERSION@ CONFIG REQUIRED Core Widgets LinguistTools )
include( CalamaresAddLibrary )
include( CalamaresAddModuleSubdirectory )
include( CalamaresAddPlugin )
include( CalamaresAddBrandingSubdirectory )

View File

@ -2,9 +2,9 @@
--------- ---------
[![GitHub release](https://img.shields.io/github/release/calamares/calamares.svg)](https://github.com/calamares/calamares/releases) [![GitHub release](https://img.shields.io/github/release/calamares/calamares.svg)](https://github.com/calamares/calamares/releases)
[![Travis Build Status](https://travis-ci.org/calamares/calamares.svg?branch=master)](https://travis-ci.org/calamares/calamares) [![Travis Build Status](https://travis-ci.org/calamares/calamares.svg?branch=calamares)](https://travis-ci.org/calamares/calamares)
[![Coverity Scan Build Status](https://scan.coverity.com/projects/5389/badge.svg)](https://scan.coverity.com/projects/5389) [![Coverity Scan Build Status](https://scan.coverity.com/projects/5389/badge.svg)](https://scan.coverity.com/projects/5389)
[![GitHub license](https://img.shields.io/github/license/calamares/calamares.svg)](https://github.com/calamares/calamares/blob/master/LICENSE) [![GitHub license](https://img.shields.io/github/license/calamares/calamares.svg)](https://github.com/calamares/calamares/blob/calamares/LICENSE)
| [Report a Bug](https://github.com/calamares/calamares/issues/new) | [Translate](https://www.transifex.com/projects/p/calamares/) | [Contribute](https://github.com/calamares/calamares/wiki/Develop-Guide) | Freenode (IRC): #calamares | [Wiki](https://github.com/calamares/calamares/wiki) | | [Report a Bug](https://github.com/calamares/calamares/issues/new) | [Translate](https://www.transifex.com/projects/p/calamares/) | [Contribute](https://github.com/calamares/calamares/wiki/Develop-Guide) | Freenode (IRC): #calamares | [Wiki](https://github.com/calamares/calamares/wiki) |
|:-----------------------------------------:|:----------------------:|:-----------------------:|:--------------------------:|:--------------------------:| |:-----------------------------------------:|:----------------------:|:-----------------------:|:--------------------------:|:--------------------------:|
@ -23,11 +23,12 @@ Main:
* KDE Frameworks KCoreAddons (>= 5.58 recommended) * KDE Frameworks KCoreAddons (>= 5.58 recommended)
* PythonQt (optional, deprecated) * PythonQt (optional, deprecated)
Modules: Individual modules may have their own requirements;
* Individual modules may have their own requirements; these are listed in CMake output.
these are listed in CMake output. Particular requirements (not complete): Particular requirements (not complete):
* *fsresizer* KPMCore >= 3.3
* *partition* KPMCore >= 3.3 * *fsresizer* KPMCore >= 3.3 (>= 4.1 recommended)
* *partition* KPMCore >= 3.3 (>= 4.1 recommended)
* *users* LibPWQuality (optional) * *users* LibPWQuality (optional)
### Building ### Building

View File

@ -13,7 +13,7 @@ export LANG LC_ALL LC_NUMERIC
AS=$( which astyle ) AS=$( which astyle )
CF_VERSIONS="clang-format-7 clang-format-8 clang-format70 clang-format80 clang-format" CF_VERSIONS="clang-format-7 clang-format-8 clang-format70 clang-format80 clang-format-9.0.1 clang-format"
for _cf in $CF_VERSIONS for _cf in $CF_VERSIONS
do do
# Not an error if this particular clang-format isn't found # Not an error if this particular clang-format isn't found
@ -26,6 +26,8 @@ test -n "$CF" || { echo "! No clang-format ($CF_VERSIONS) found in PATH"; exit 1
test -x "$AS" || { echo "! $AS is not executable."; exit 1 ; } test -x "$AS" || { echo "! $AS is not executable."; exit 1 ; }
test -x "$CF" || { echo "! $CF is not executable."; exit 1 ; } test -x "$CF" || { echo "! $CF is not executable."; exit 1 ; }
expr `"$CF" --version | tr -dc '[^.0-9]' | cut -d . -f 1` '<' 10 > /dev/null || { echo "! $CF is version 10 or later, needs different .clang-format" ; exit 1 ; }
set -e set -e
any_dirs=no any_dirs=no

128
ci/configvalidator.py Normal file
View File

@ -0,0 +1,128 @@
#! /usr/bin/env python3
#
# SPDX-FileCopyrightText: 2020 Adriaan de Groot <groot@kde.org>
# SPDX-License-Identifier: BSD-2-Clause
# License-Filename: LICENSES/BSD2
#
usage = """
Validates a Calamares config file -- YAML syntax -- against a schema.
The schema is also written in YAML syntax, but the schema itself
is JSON-schema. This is possible because all JSON is YAML, and most
YAML is JSON. The limited subset of YAML that Calamares uses is
JSON-representable, anyway.
Usage:
configvalidator.py <schema> <file> ...
configvalidator.py -x
Exits with value 0 on success, otherwise:
1 on missing dependencies
2 on invalid command-line arguments
3 on missing files
4 if files have invalid syntax
5 if files fail to validate
Use -x as only command-line argument to check the imports only.
"""
# The schemata originally lived outside the Calamares repository,
# without documented tooling. By putting them in the repository
# with the example files and explicit tooling, there's a better
# chance of them catching problems and acting as documentation.
dependencies = """
Dependencies for this tool are: py-yaml and py-jsonschema.
https://pyyaml.org/
https://github.com/Julian/jsonschema
Simple installation is `pip install pyyaml jsonschema`
"""
ERR_IMPORT, ERR_USAGE, ERR_FILE_NOT_FOUND, ERR_SYNTAX, ERR_INVALID = range(1,6)
### DEPENDENCIES
#
#
try:
from jsonschema import validate, SchemaError, ValidationError
from yaml import safe_load, YAMLError
except ImportError as e:
print(e)
print(dependencies)
exit(ERR_IMPORT)
from os.path import exists
import sys
### INPUT VALIDATION
#
#
if len(sys.argv) < 3:
# Special-case: called with -x to just test the imports
if len(sys.argv) == 2 and sys.argv[1] == "-x":
exit(0)
print(usage)
exit(ERR_USAGE)
schema_file_name = sys.argv[1]
config_file_names = sys.argv[2:]
if not exists(schema_file_name):
print(usage)
print("\nSchema file '{}' does not exist.".format(schema_file_name))
exit(ERR_FILE_NOT_FOUND)
for f in config_file_names:
if not exists(f):
print(usage)
print("\nYAML file '{}' does not exist.".format(f))
exit(ERR_FILE_NOT_FOUND)
### FILES SYNTAX CHECK
#
#
with open(schema_file_name, "r") as data:
try:
schema = safe_load(data)
except YAMLError as e:
print("Schema error: {} {}.".format(e.problem, e.problem_mark))
print("\nSchema file '{}' is invalid YAML.".format(schema_file_name))
exit(ERR_SYNTAX)
try:
validate(instance={}, schema=schema)
# While developing the schemata, get full exceptions from schema failure
except SchemaError as e:
print(e)
print("\nSchema file '{}' is invalid JSON-Schema.".format(schema_file_name))
exit(ERR_INVALID)
except ValidationError:
# Just means that empty isn't valid, but the Schema itself is
pass
configs = []
for f in config_file_names:
config = None
with open(f, "r") as data:
try:
config = safe_load(data)
except YAMLError as e:
print("YAML error: {} {}.".format(e.problem, e.problem_mark))
print("\nYAML file '{}' is invalid.".format(f))
exit(ERR_SYNTAX)
if config is None:
print("YAML file '{}' is empty.".format(f))
configs.append(config)
assert len(configs) == len(config_file_names), "Not all configurations loaded."
### SCHEMA VALIDATION
#
#
for c, f in zip(configs, config_file_names):
try:
validate(instance=c, schema=schema)
except ValidationError as e:
print(e)
print("\nConfig file '{}' does not validate in schema.".format(f))
exit(ERR_INVALID)

View File

@ -29,6 +29,6 @@ tar caf calamares-ci.tar.xz cov-int
curl -k --form token=$COVERITY_SCAN_TOKEN \ curl -k --form token=$COVERITY_SCAN_TOKEN \
--form email=groot@kde.org \ --form email=groot@kde.org \
--form file=@calamares-ci.tar.xz \ --form file=@calamares-ci.tar.xz \
--form version="master-`date -u +%Y%m%d`" \ --form version="calamares-`date -u +%Y%m%d`" \
--form description="master on `date -u`" \ --form description="calamares on `date -u`" \
https://scan.coverity.com/builds?project=calamares%2Fcalamares https://scan.coverity.com/builds?project=calamares%2Fcalamares

View File

@ -23,20 +23,15 @@
# #
### END USAGE ### END USAGE
### INITIAL SETUP ### SANITY CHECKING
# #
# This stuff needs to be done once; in a real CI environment where it # The script needs a .tx/config to talk to the Transifex server;
# runs regularly in a container, the setup needs to be done when # it also checks that it is run from the top-level of a Calamares
# creating the container. # checkout. In order to use the system overall, you'll also need:
# - ~/.gitconfig (For the git commits this does)
# - ~/.transifexrc (Password token for Transifex)
# - ~/.ssh (For git commits)
# #
#
# cp ~/jenkins-master/.transifexrc ~ # Transifex user settings
# cp ~/jenkins-master/.gitconfig ~ # Git config, user settings
# cp -R ~/jenkins-master/.ssh ~ # SSH, presumably for github
#
# cd "$WORKSPACE"
# git config --global http.sslVerify false
test -f "CMakeLists.txt" || { echo "! Not at Calamares top-level" ; exit 1 ; } test -f "CMakeLists.txt" || { echo "! Not at Calamares top-level" ; exit 1 ; }
test -f ".tx/config" || { echo "! Not at Calamares top-level" ; exit 1 ; } test -f ".tx/config" || { echo "! Not at Calamares top-level" ; exit 1 ; }
test -f "calamares.desktop" || { echo "! Not at Calamares top-level" ; exit 1 ; } test -f "calamares.desktop" || { echo "! Not at Calamares top-level" ; exit 1 ; }
@ -145,5 +140,3 @@ for POFILE in $(find lang -name "python.po") ; do
done done
git add --verbose lang/python* git add --verbose lang/python*
git commit "$AUTHOR" --message="i18n: [python] $BOILERPLATE" | true git commit "$AUTHOR" --message="i18n: [python] $BOILERPLATE" | true
# git push --set-upstream origin master

View File

@ -29,20 +29,15 @@
# #
### END USAGE ### END USAGE
### INITIAL SETUP ### SANITY CHECKING
# #
# This stuff needs to be done once; in a real CI environment where it # The script needs a .tx/config to talk to the Transifex server;
# runs regularly in a container, the setup needs to be done when # it also checks that it is run from the top-level of a Calamares
# creating the container. # checkout. In order to use the system overall, you'll also need:
# - ~/.gitconfig (For the git commits this does)
# - ~/.transifexrc (Password token for Transifex)
# - ~/.ssh (For git commits)
# #
#
# cp ~/jenkins-master/.transifexrc ~ # Transifex user settings
# cp ~/jenkins-master/.gitconfig ~ # Git config, user settings
# cp -R ~/jenkins-master/.ssh ~ # SSH, presumably for github
#
# cd "$WORKSPACE"
# git config --global http.sslVerify false
test -f "CMakeLists.txt" || { echo "! Not at Calamares top-level" ; exit 1 ; } test -f "CMakeLists.txt" || { echo "! Not at Calamares top-level" ; exit 1 ; }
test -f ".tx/config" || { echo "! Not at Calamares top-level" ; exit 1 ; } test -f ".tx/config" || { echo "! Not at Calamares top-level" ; exit 1 ; }
test -f "calamares.desktop" || { echo "! Not at Calamares top-level" ; exit 1 ; } test -f "calamares.desktop" || { echo "! Not at Calamares top-level" ; exit 1 ; }
@ -106,7 +101,7 @@ if test -n "$XMLLINT" ; then
$XMLLINT --c14n11 "$TS_FILE" | { echo "<!DOCTYPE TS>" ; cat - ; } | $XMLLINT --format --encode utf-8 -o "$TS_FILE".new - && mv "$TS_FILE".new "$TS_FILE" $XMLLINT --c14n11 "$TS_FILE" | { echo "<!DOCTYPE TS>" ; cat - ; } | $XMLLINT --format --encode utf-8 -o "$TS_FILE".new - && mv "$TS_FILE".new "$TS_FILE"
fi fi
tx push --source --no-interactive -r calamares.calamares-master tx push --source --no-interactive -r calamares.calamares
tx push --source --no-interactive -r calamares.fdo tx push --source --no-interactive -r calamares.fdo

View File

@ -58,7 +58,7 @@ def get_tx_stats(token, verbose):
""" """
import requests import requests
r = requests.get("https://api.transifex.com/organizations/calamares/projects/calamares/resources/calamares-master/", auth=("api", token)) r = requests.get("https://api.transifex.com/organizations/calamares/projects/calamares/resources/calamares/", auth=("api", token))
if r.status_code != 200: if r.status_code != 200:
return 1 return 1

34
data/FreeBSD/Makefile Normal file
View File

@ -0,0 +1,34 @@
# $FreeBSD$
PORTNAME= calamares
DISTVERSION= 3.2.25
CATEGORIES= sysutils
MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/v${DISTVERSION}/
MAINTAINER= adridg@FreeBSD.org
COMMENT= GUI System installer and OEM configurator
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libyaml-cpp.so:devel/yaml-cpp \
libpwquality.so:security/libpwquality \
libboost_python${PYTHON_SUFFIX}.so:devel/boost-python-libs
USES= cmake compiler:c++17-lang gettext kde:5 pkgconfig \
python:3.3+ qt:5
USE_QT= concurrent core dbus declarative gui \
network quickcontrols2 svg widgets xml \
buildtools_build linguist_build qmake_build
USE_KDE= coreaddons dbusaddons parts service \
ecm_build
USE_LDCONFIG= yes
CMAKE_OFF= WITH_KF5Crash \
INSTALL_CONFIG \
INSTALL_COMPLETION \
INSTALL_POLKIT
CMAKE_ON= CMAKE_DISABLE_FIND_PACKAGE_KPMcore
CMAKE_ARGS= -DSKIP_MODULES="webview"
.include <bsd.port.mk>

3
data/FreeBSD/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1592339404
SHA256 (calamares-3.2.25.tar.gz) = 797ce33db7d4e4c06bbccef95f6c4023f7628e91bd142896695565fed4ae8c4b
SIZE (calamares-3.2.25.tar.gz) = 3580197

14
data/FreeBSD/pkg-descr Normal file
View File

@ -0,0 +1,14 @@
Calamares is an installer framework. By design it is very customizable,
in order to satisfy a wide variety of needs and use cases.
Calamares aims to be easy, usable, beautiful, pragmatic, inclusive and
distribution-agnostic.
Got a Linux distribution but no system installer? Grab Calamares, mix
and match any number of Calamares modules (or write your own in Python
or C++), throw together some branding, package it up and you are ready
to ship!
(The above applies to FreeBSD as well)
WWW: https://calamares.io/

224
data/FreeBSD/pkg-plist Normal file
View File

@ -0,0 +1,224 @@
bin/calamares
include/libcalamares/CalamaresConfig.h
include/libcalamares/CppJob.h
include/libcalamares/DllMacro.h
include/libcalamares/GlobalStorage.h
include/libcalamares/Job.h
include/libcalamares/JobExample.h
include/libcalamares/JobQueue.h
include/libcalamares/ProcessJob.h
include/libcalamares/PythonHelper.h
include/libcalamares/PythonJob.h
include/libcalamares/PythonJobApi.h
include/libcalamares/Settings.h
include/libcalamares/utils/BoostPython.h
include/libcalamares/utils/CalamaresUtilsSystem.h
include/libcalamares/utils/CommandList.h
include/libcalamares/utils/Dirs.h
include/libcalamares/utils/Entropy.h
include/libcalamares/utils/Logger.h
include/libcalamares/utils/NamedEnum.h
include/libcalamares/utils/NamedSuffix.h
include/libcalamares/utils/PluginFactory.h
include/libcalamares/utils/RAII.h
include/libcalamares/utils/Retranslator.h
include/libcalamares/utils/String.h
include/libcalamares/utils/Tests.h
include/libcalamares/utils/UMask.h
include/libcalamares/utils/Units.h
include/libcalamares/utils/Variant.h
include/libcalamares/utils/Yaml.h
include/libcalamares/utils/moc-warnings.h
lib/calamares/libcalamares.so
lib/calamares/modules/bootloader/main.py
lib/calamares/modules/bootloader/module.desc
lib/calamares/modules/bootloader/test.yaml
lib/calamares/modules/contextualprocess/libcalamares_job_contextualprocess.so
lib/calamares/modules/contextualprocess/module.desc
lib/calamares/modules/displaymanager/main.py
lib/calamares/modules/displaymanager/module.desc
lib/calamares/modules/dracut/main.py
lib/calamares/modules/dracut/module.desc
lib/calamares/modules/dracutlukscfg/libcalamares_job_dracutlukscfg.so
lib/calamares/modules/dracutlukscfg/module.desc
lib/calamares/modules/dummycpp/libcalamares_job_dummycpp.so
lib/calamares/modules/dummycpp/module.desc
lib/calamares/modules/dummyprocess/module.desc
lib/calamares/modules/dummypython/main.py
lib/calamares/modules/dummypython/module.desc
lib/calamares/modules/finished/libcalamares_viewmodule_finished.so
lib/calamares/modules/finished/module.desc
lib/calamares/modules/fstab/main.py
lib/calamares/modules/fstab/module.desc
lib/calamares/modules/fstab/test.yaml
lib/calamares/modules/grubcfg/main.py
lib/calamares/modules/grubcfg/module.desc
lib/calamares/modules/hostinfo/libcalamares_job_hostinfo.so
lib/calamares/modules/hostinfo/module.desc
lib/calamares/modules/hwclock/main.py
lib/calamares/modules/hwclock/module.desc
lib/calamares/modules/initcpio/libcalamares_job_initcpio.so
lib/calamares/modules/initcpio/module.desc
lib/calamares/modules/initcpiocfg/main.py
lib/calamares/modules/initcpiocfg/module.desc
lib/calamares/modules/initramfs/libcalamares_job_initramfs.so
lib/calamares/modules/initramfs/module.desc
lib/calamares/modules/initramfscfg/encrypt_hook
lib/calamares/modules/initramfscfg/encrypt_hook_nokey
lib/calamares/modules/initramfscfg/main.py
lib/calamares/modules/initramfscfg/module.desc
lib/calamares/modules/interactiveterminal/libcalamares_viewmodule_interactiveterminal.so
lib/calamares/modules/interactiveterminal/module.desc
lib/calamares/modules/keyboard/libcalamares_viewmodule_keyboard.so
lib/calamares/modules/keyboard/module.desc
lib/calamares/modules/keyboardq/libcalamares_viewmodule_keyboardq.so
lib/calamares/modules/keyboardq/module.desc
lib/calamares/modules/license/libcalamares_viewmodule_license.so
lib/calamares/modules/license/module.desc
lib/calamares/modules/locale/libcalamares_viewmodule_locale.so
lib/calamares/modules/locale/module.desc
lib/calamares/modules/localecfg/main.py
lib/calamares/modules/localecfg/module.desc
lib/calamares/modules/localeq/libcalamares_viewmodule_localeq.so
lib/calamares/modules/localeq/module.desc
lib/calamares/modules/luksbootkeyfile/libcalamares_job_luksbootkeyfile.so
lib/calamares/modules/luksbootkeyfile/module.desc
lib/calamares/modules/luksopenswaphookcfg/main.py
lib/calamares/modules/luksopenswaphookcfg/module.desc
lib/calamares/modules/machineid/libcalamares_job_machineid.so
lib/calamares/modules/machineid/module.desc
lib/calamares/modules/mount/main.py
lib/calamares/modules/mount/module.desc
lib/calamares/modules/mount/test.yaml
lib/calamares/modules/netinstall/libcalamares_viewmodule_netinstall.so
lib/calamares/modules/netinstall/module.desc
lib/calamares/modules/networkcfg/main.py
lib/calamares/modules/networkcfg/module.desc
lib/calamares/modules/notesqml/libcalamares_viewmodule_notesqml.so
lib/calamares/modules/notesqml/module.desc
lib/calamares/modules/oemid/libcalamares_viewmodule_oemid.so
lib/calamares/modules/oemid/module.desc
lib/calamares/modules/openrcdmcryptcfg/main.py
lib/calamares/modules/openrcdmcryptcfg/module.desc
lib/calamares/modules/packagechooser/libcalamares_viewmodule_packagechooser.so
lib/calamares/modules/packagechooser/module.desc
lib/calamares/modules/packages/main.py
lib/calamares/modules/packages/module.desc
lib/calamares/modules/packages/test.yaml
lib/calamares/modules/plymouthcfg/main.py
lib/calamares/modules/plymouthcfg/module.desc
lib/calamares/modules/preservefiles/libcalamares_job_preservefiles.so
lib/calamares/modules/preservefiles/module.desc
lib/calamares/modules/rawfs/main.py
lib/calamares/modules/rawfs/module.desc
lib/calamares/modules/removeuser/libcalamares_job_removeuser.so
lib/calamares/modules/removeuser/module.desc
lib/calamares/modules/services-openrc/main.py
lib/calamares/modules/services-openrc/module.desc
lib/calamares/modules/services-systemd/main.py
lib/calamares/modules/services-systemd/module.desc
lib/calamares/modules/shellprocess/libcalamares_job_shellprocess.so
lib/calamares/modules/shellprocess/module.desc
lib/calamares/modules/summary/libcalamares_viewmodule_summary.so
lib/calamares/modules/summary/module.desc
lib/calamares/modules/tracking/libcalamares_viewmodule_tracking.so
lib/calamares/modules/tracking/module.desc
lib/calamares/modules/umount/main.py
lib/calamares/modules/umount/module.desc
lib/calamares/modules/unpackfs/main.py
lib/calamares/modules/unpackfs/module.desc
lib/calamares/modules/unpackfs/runtests.sh
lib/calamares/modules/users/libcalamares_viewmodule_users.so
lib/calamares/modules/users/module.desc
lib/calamares/modules/welcome/libcalamares_viewmodule_welcome.so
lib/calamares/modules/welcome/module.desc
lib/calamares/modules/welcomeq/libcalamares_viewmodule_welcomeq.so
lib/calamares/modules/welcomeq/module.desc
lib/cmake/Calamares/CMakeColors.cmake
lib/cmake/Calamares/CalamaresAddBrandingSubdirectory.cmake
lib/cmake/Calamares/CalamaresAddLibrary.cmake
lib/cmake/Calamares/CalamaresAddModuleSubdirectory.cmake
lib/cmake/Calamares/CalamaresAddPlugin.cmake
lib/cmake/Calamares/CalamaresAddTest.cmake
lib/cmake/Calamares/CalamaresAddTranslations.cmake
lib/cmake/Calamares/CalamaresAutomoc.cmake
lib/cmake/Calamares/CalamaresConfig.cmake
lib/cmake/Calamares/CalamaresConfigVersion.cmake
lib/cmake/Calamares/CalamaresLibraryDepends-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/Calamares/CalamaresLibraryDepends.cmake
lib/cmake/Calamares/CalamaresUse.cmake
lib/libcalamares.so
lib/libcalamares.so.3.2.25
lib/libcalamaresui.so
lib/libcalamaresui.so.3.2.25
man/man8/calamares.8.gz
share/applications/calamares.desktop
%%DATADIR%%/branding/default/banner.png
%%DATADIR%%/branding/default/branding.desc
%%DATADIR%%/branding/default/lang/calamares-default_ar.qm
%%DATADIR%%/branding/default/lang/calamares-default_en.qm
%%DATADIR%%/branding/default/lang/calamares-default_eo.qm
%%DATADIR%%/branding/default/lang/calamares-default_fr.qm
%%DATADIR%%/branding/default/lang/calamares-default_nl.qm
%%DATADIR%%/branding/default/languages.png
%%DATADIR%%/branding/default/show.qml
%%DATADIR%%/branding/default/squid.png
%%DATADIR%%/branding/default/stylesheet.qss
%%DATADIR%%/qml/calamares/slideshow/BackButton.qml
%%DATADIR%%/qml/calamares/slideshow/ForwardButton.qml
%%DATADIR%%/qml/calamares/slideshow/NavButton.qml
%%DATADIR%%/qml/calamares/slideshow/Presentation.qml
%%DATADIR%%/qml/calamares/slideshow/Slide.qml
%%DATADIR%%/qml/calamares/slideshow/SlideCounter.qml
%%DATADIR%%/qml/calamares/slideshow/qmldir
share/icons/hicolor/scalable/apps/calamares.svg
share/locale/ar/LC_MESSAGES/calamares-python.mo
share/locale/as/LC_MESSAGES/calamares-python.mo
share/locale/ast/LC_MESSAGES/calamares-python.mo
share/locale/be/LC_MESSAGES/calamares-python.mo
share/locale/bg/LC_MESSAGES/calamares-python.mo
share/locale/ca/LC_MESSAGES/calamares-python.mo
share/locale/cs_CZ/LC_MESSAGES/calamares-python.mo
share/locale/da/LC_MESSAGES/calamares-python.mo
share/locale/de/LC_MESSAGES/calamares-python.mo
share/locale/el/LC_MESSAGES/calamares-python.mo
share/locale/en_GB/LC_MESSAGES/calamares-python.mo
share/locale/eo/LC_MESSAGES/calamares-python.mo
share/locale/es/LC_MESSAGES/calamares-python.mo
share/locale/es_MX/LC_MESSAGES/calamares-python.mo
share/locale/es_PR/LC_MESSAGES/calamares-python.mo
share/locale/et/LC_MESSAGES/calamares-python.mo
share/locale/eu/LC_MESSAGES/calamares-python.mo
share/locale/fi_FI/LC_MESSAGES/calamares-python.mo
share/locale/fr/LC_MESSAGES/calamares-python.mo
share/locale/gl/LC_MESSAGES/calamares-python.mo
share/locale/he/LC_MESSAGES/calamares-python.mo
share/locale/hi/LC_MESSAGES/calamares-python.mo
share/locale/hr/LC_MESSAGES/calamares-python.mo
share/locale/hu/LC_MESSAGES/calamares-python.mo
share/locale/id/LC_MESSAGES/calamares-python.mo
share/locale/is/LC_MESSAGES/calamares-python.mo
share/locale/it_IT/LC_MESSAGES/calamares-python.mo
share/locale/ja/LC_MESSAGES/calamares-python.mo
share/locale/ko/LC_MESSAGES/calamares-python.mo
share/locale/lt/LC_MESSAGES/calamares-python.mo
share/locale/ml/LC_MESSAGES/calamares-python.mo
share/locale/mr/LC_MESSAGES/calamares-python.mo
share/locale/nb/LC_MESSAGES/calamares-python.mo
share/locale/nl/LC_MESSAGES/calamares-python.mo
share/locale/pl/LC_MESSAGES/calamares-python.mo
share/locale/pt_BR/LC_MESSAGES/calamares-python.mo
share/locale/pt_PT/LC_MESSAGES/calamares-python.mo
share/locale/ro/LC_MESSAGES/calamares-python.mo
share/locale/ru/LC_MESSAGES/calamares-python.mo
share/locale/sk/LC_MESSAGES/calamares-python.mo
share/locale/sl/LC_MESSAGES/calamares-python.mo
share/locale/sq/LC_MESSAGES/calamares-python.mo
share/locale/sr/LC_MESSAGES/calamares-python.mo
share/locale/sr@latin/LC_MESSAGES/calamares-python.mo
share/locale/sv/LC_MESSAGES/calamares-python.mo
share/locale/th/LC_MESSAGES/calamares-python.mo
share/locale/tr_TR/LC_MESSAGES/calamares-python.mo
share/locale/uk/LC_MESSAGES/calamares-python.mo
share/locale/zh_CN/LC_MESSAGES/calamares-python.mo
share/locale/zh_TW/LC_MESSAGES/calamares-python.mo

3827
lang/calamares_az.ts Normal file

File diff suppressed because it is too large Load Diff

3827
lang/calamares_az_AZ.ts Normal file

File diff suppressed because it is too large Load Diff

3827
lang/calamares_bn.ts Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -372,7 +372,7 @@ Para configurar el arranque desde un entorno BIOS, este instalador debe instalar
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="397"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="397"/>
<source>Cancel setup without changing the system.</source> <source>Cancel setup without changing the system.</source>
<translation type="unfinished"/> <translation>Cancelar instalación sin cambiar el sistema.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="398"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="398"/>
@ -402,7 +402,7 @@ Para configurar el arranque desde un entorno BIOS, este instalador debe instalar
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="511"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="511"/>
<source>Cancel setup?</source> <source>Cancel setup?</source>
<translation type="unfinished"/> <translation>¿Cancelar la instalación?</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="511"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="511"/>
@ -776,7 +776,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="231"/> <location filename="../src/modules/welcome/Config.cpp" line="231"/>
<source>&lt;h1&gt;Welcome to %1 setup.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to %1 setup.&lt;/h1&gt;</source>
<translation type="unfinished"/> <translation>&lt;h1&gt;Bienvenido al instalador %1.&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="236"/> <location filename="../src/modules/welcome/Config.cpp" line="236"/>
@ -1362,12 +1362,12 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="128"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="128"/>
<source>There is not enough drive space. At least %1 GiB is required.</source> <source>There is not enough drive space. At least %1 GiB is required.</source>
<translation type="unfinished"/> <translation>No hay suficiente espació en el disco duro. Se requiere al menos %1 GB libre.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="137"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="137"/>
<source>has at least %1 GiB working memory</source> <source>has at least %1 GiB working memory</source>
<translation type="unfinished"/> <translation>tiene al menos %1 GB de memoria.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="139"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="139"/>
@ -1397,12 +1397,12 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="164"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="164"/>
<source>is running the installer as an administrator (root)</source> <source>is running the installer as an administrator (root)</source>
<translation type="unfinished"/> <translation>esta ejecutándose con permisos de administrador (root).</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="167"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="167"/>
<source>The setup program is not running with administrator rights.</source> <source>The setup program is not running with administrator rights.</source>
<translation type="unfinished"/> <translation>El instalador no esta ejecutándose con permisos de administrador.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="168"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="168"/>
@ -1417,7 +1417,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="179"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="179"/>
<source>The screen is too small to display the setup program.</source> <source>The screen is too small to display the setup program.</source>
<translation type="unfinished"/> <translation>La pantalla es demasiado pequeña para mostrar el instalador.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="180"/> <location filename="../src/modules/welcome/checker/GeneralRequirements.cpp" line="180"/>
@ -1464,7 +1464,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/initcpio/InitcpioJob.cpp" line="40"/> <location filename="../src/modules/initcpio/InitcpioJob.cpp" line="40"/>
<source>Creating initramfs with mkinitcpio.</source> <source>Creating initramfs with mkinitcpio.</source>
<translation type="unfinished"/> <translation>Creando initramfs con mkinitcpio.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1472,7 +1472,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/initramfs/InitramfsJob.cpp" line="37"/> <location filename="../src/modules/initramfs/InitramfsJob.cpp" line="37"/>
<source>Creating initramfs.</source> <source>Creating initramfs.</source>
<translation type="unfinished"/> <translation>Creando initramfs.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1563,7 +1563,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/license/LicensePage.ui" line="22"/> <location filename="../src/modules/license/LicensePage.ui" line="22"/>
<source>&lt;h1&gt;License Agreement&lt;/h1&gt;</source> <source>&lt;h1&gt;License Agreement&lt;/h1&gt;</source>
<translation type="unfinished"/> <translation>&lt;h1&gt;Contrato de licencia&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="149"/> <location filename="../src/modules/license/LicensePage.cpp" line="149"/>
@ -1651,12 +1651,12 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/license/LicenseWidget.cpp" line="194"/> <location filename="../src/modules/license/LicenseWidget.cpp" line="194"/>
<source>Hide license text</source> <source>Hide license text</source>
<translation type="unfinished"/> <translation>Ocultar licencia</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicenseWidget.cpp" line="194"/> <location filename="../src/modules/license/LicenseWidget.cpp" line="194"/>
<source>Show the license text</source> <source>Show the license text</source>
<translation type="unfinished"/> <translation>Ver licencia</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicenseWidget.cpp" line="198"/> <location filename="../src/modules/license/LicenseWidget.cpp" line="198"/>
@ -1725,7 +1725,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="156"/> <location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="156"/>
<location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="164"/> <location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="164"/>
<source>No partitions are defined.</source> <source>No partitions are defined.</source>
<translation type="unfinished"/> <translation>No hay particiones definidas.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="192"/> <location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="192"/>
@ -1779,12 +1779,12 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="64"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="64"/>
<source>Office software</source> <source>Office software</source>
<translation type="unfinished"/> <translation>Programas de oficina</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="65"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="65"/>
<source>Office package</source> <source>Office package</source>
<translation type="unfinished"/> <translation>Paquete de oficina</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="66"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="66"/>
@ -1804,12 +1804,12 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="69"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="69"/>
<source>Kernel</source> <source>Kernel</source>
<translation type="unfinished"/> <translation>Kernel</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="70"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="70"/>
<source>Services</source> <source>Services</source>
<translation type="unfinished"/> <translation>Servicios</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="71"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="71"/>
@ -1824,7 +1824,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="73"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="73"/>
<source>Applications</source> <source>Applications</source>
<translation type="unfinished"/> <translation>Aplicaciónes</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="74"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="74"/>
@ -1839,32 +1839,32 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="76"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="76"/>
<source>Office</source> <source>Office</source>
<translation type="unfinished"/> <translation>Oficina</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="77"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="77"/>
<source>Multimedia</source> <source>Multimedia</source>
<translation type="unfinished"/> <translation>Multimedia</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="78"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="78"/>
<source>Internet</source> <source>Internet</source>
<translation type="unfinished"/> <translation>Internet</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="79"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="79"/>
<source>Theming</source> <source>Theming</source>
<translation type="unfinished"/> <translation>Temas</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="80"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="80"/>
<source>Gaming</source> <source>Gaming</source>
<translation type="unfinished"/> <translation>Juegos</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="81"/> <location filename="../src/modules/netinstall/NetInstallViewStep.cpp" line="81"/>
<source>Utilities</source> <source>Utilities</source>
<translation type="unfinished"/> <translation>Utilidades</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2151,7 +2151,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/users/UsersPage.cpp" line="581"/> <location filename="../src/modules/users/UsersPage.cpp" line="581"/>
<source>Password is empty</source> <source>Password is empty</source>
<translation type="unfinished"/> <translation>La contraseña vacia</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2164,7 +2164,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/packagechooser/page_package.ui" line="40"/> <location filename="../src/modules/packagechooser/page_package.ui" line="40"/>
<source>Product Name</source> <source>Product Name</source>
<translation type="unfinished"/> <translation>Nombre del producto</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/packagechooser/page_package.ui" line="53"/> <location filename="../src/modules/packagechooser/page_package.ui" line="53"/>
@ -2174,12 +2174,12 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/packagechooser/page_package.ui" line="69"/> <location filename="../src/modules/packagechooser/page_package.ui" line="69"/>
<source>Long Product Description</source> <source>Long Product Description</source>
<translation type="unfinished"/> <translation>Descripción larga del producto</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/packagechooser/PackageChooserPage.cpp" line="34"/> <location filename="../src/modules/packagechooser/PackageChooserPage.cpp" line="34"/>
<source>Package Selection</source> <source>Package Selection</source>
<translation type="unfinished"/> <translation>Selección de paquetes</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/packagechooser/PackageChooserPage.cpp" line="35"/> <location filename="../src/modules/packagechooser/PackageChooserPage.cpp" line="35"/>
@ -2192,7 +2192,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/packagechooser/PackageChooserViewStep.cpp" line="70"/> <location filename="../src/modules/packagechooser/PackageChooserViewStep.cpp" line="70"/>
<source>Packages</source> <source>Packages</source>
<translation type="unfinished"/> <translation>Paquetes</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2241,7 +2241,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="51"/> <location filename="../src/modules/users/page_usersetup.ui" line="51"/>
<source>Your Full Name</source> <source>Your Full Name</source>
<translation type="unfinished"/> <translation>Su nombre completo</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="120"/> <location filename="../src/modules/users/page_usersetup.ui" line="120"/>
@ -2266,7 +2266,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="246"/> <location filename="../src/modules/users/page_usersetup.ui" line="246"/>
<source>Computer Name</source> <source>Computer Name</source>
<translation type="unfinished"/> <translation>Nombre de computadora</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="321"/> <location filename="../src/modules/users/page_usersetup.ui" line="321"/>
@ -2283,13 +2283,13 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<location filename="../src/modules/users/page_usersetup.ui" line="351"/> <location filename="../src/modules/users/page_usersetup.ui" line="351"/>
<location filename="../src/modules/users/page_usersetup.ui" line="521"/> <location filename="../src/modules/users/page_usersetup.ui" line="521"/>
<source>Password</source> <source>Password</source>
<translation type="unfinished"/> <translation>Contraseña</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="376"/> <location filename="../src/modules/users/page_usersetup.ui" line="376"/>
<location filename="../src/modules/users/page_usersetup.ui" line="546"/> <location filename="../src/modules/users/page_usersetup.ui" line="546"/>
<source>Repeat Password</source> <source>Repeat Password</source>
<translation type="unfinished"/> <translation>Repita la contraseña</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="451"/> <location filename="../src/modules/users/page_usersetup.ui" line="451"/>
@ -2299,7 +2299,7 @@ Saldrá del instalador y se perderán todos los cambios.</translation>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="454"/> <location filename="../src/modules/users/page_usersetup.ui" line="454"/>
<source>Require strong passwords.</source> <source>Require strong passwords.</source>
<translation type="unfinished"/> <translation>Requerir contraseñas seguras</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="461"/> <location filename="../src/modules/users/page_usersetup.ui" line="461"/>
@ -3635,7 +3635,7 @@ Salida:
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="229"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="229"/>
<source>&lt;h1&gt;Welcome to %1 setup.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to %1 setup.&lt;/h1&gt;</source>
<translation type="unfinished"/> <translation>&lt;h1&gt;Bienvenido al instalador %1.&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="234"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="234"/>

View File

@ -212,7 +212,7 @@
<message> <message>
<location filename="../src/libcalamaresui/viewpages/QmlViewStep.cpp" line="76"/> <location filename="../src/libcalamaresui/viewpages/QmlViewStep.cpp" line="76"/>
<source>Loading ...</source> <source>Loading ...</source>
<translation type="unfinished"/> <translation>Kargatzen ...</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/viewpages/QmlViewStep.cpp" line="97"/> <location filename="../src/libcalamaresui/viewpages/QmlViewStep.cpp" line="97"/>
@ -222,7 +222,7 @@
<message> <message>
<location filename="../src/libcalamaresui/viewpages/QmlViewStep.cpp" line="261"/> <location filename="../src/libcalamaresui/viewpages/QmlViewStep.cpp" line="261"/>
<source>Loading failed.</source> <source>Loading failed.</source>
<translation type="unfinished"/> <translation>Kargatzeak huts egin du.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -321,7 +321,7 @@
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="328"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="328"/>
<source>Continue with installation?</source> <source>Continue with installation?</source>
<translation type="unfinished"/> <translation>Instalazioarekin jarraitu?</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="330"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="330"/>
@ -576,7 +576,7 @@ Instalatzailea irten egingo da eta aldaketa guztiak galduko dira.</translation>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1336"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1336"/>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1362"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1362"/>
<source>&lt;strong&gt;Erase disk&lt;/strong&gt;&lt;br/&gt;This will &lt;font color="red"&gt;delete&lt;/font&gt; all data currently present on the selected storage device.</source> <source>&lt;strong&gt;Erase disk&lt;/strong&gt;&lt;br/&gt;This will &lt;font color="red"&gt;delete&lt;/font&gt; all data currently present on the selected storage device.</source>
<translation>&lt;strong&gt;Diskoa ezabatu&lt;/strong&gt;&lt;br/&gt;Honek orain dauden datu guztiak &lt;font color="red"&gt;ezbatuko&lt;/font&gt; ditu biltegiratze-gailutik.</translation> <translation>&lt;strong&gt;Diskoa ezabatu&lt;/strong&gt;&lt;br/&gt;Honek orain dauden datu guztiak &lt;font color="red"&gt;ezabatuko&lt;/font&gt; ditu biltegiratze-gailutik.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1279"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="1279"/>
@ -3703,7 +3703,7 @@ Irteera:
<message> <message>
<location filename="../src/modules/welcomeq/about.qml" line="105"/> <location filename="../src/modules/welcomeq/about.qml" line="105"/>
<source>Back</source> <source>Back</source>
<translation type="unfinished"/> <translation>Atzera</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3711,7 +3711,7 @@ Irteera:
<message> <message>
<location filename="../src/modules/keyboardq/keyboardq.qml" line="25"/> <location filename="../src/modules/keyboardq/keyboardq.qml" line="25"/>
<source>Keyboard Model</source> <source>Keyboard Model</source>
<translation type="unfinished"/> <translation>Teklatu modeloa</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/keyboardq/keyboardq.qml" line="26"/> <location filename="../src/modules/keyboardq/keyboardq.qml" line="26"/>
@ -3748,7 +3748,7 @@ Irteera:
<message> <message>
<location filename="../src/modules/keyboardq/keyboardq.qml" line="189"/> <location filename="../src/modules/keyboardq/keyboardq.qml" line="189"/>
<source>Test your keyboard</source> <source>Test your keyboard</source>
<translation type="unfinished"/> <translation>Frogatu zure teklatua</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3790,7 +3790,7 @@ Irteera:
<message> <message>
<location filename="../src/modules/welcomeq/release_notes.qml" line="85"/> <location filename="../src/modules/welcomeq/release_notes.qml" line="85"/>
<source>Back</source> <source>Back</source>
<translation type="unfinished"/> <translation>Atzera</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3804,7 +3804,7 @@ Irteera:
<message> <message>
<location filename="../src/modules/welcomeq/welcomeq.qml" line="71"/> <location filename="../src/modules/welcomeq/welcomeq.qml" line="71"/>
<source>About</source> <source>About</source>
<translation type="unfinished"/> <translation>Honi buruz</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcomeq/welcomeq.qml" line="85"/> <location filename="../src/modules/welcomeq/welcomeq.qml" line="85"/>
@ -3824,7 +3824,7 @@ Irteera:
<message> <message>
<location filename="../src/modules/welcomeq/welcomeq.qml" line="119"/> <location filename="../src/modules/welcomeq/welcomeq.qml" line="119"/>
<source>Donate</source> <source>Donate</source>
<translation type="unfinished"/> <translation>Egin dohaintza</translation>
</message> </message>
</context> </context>
</TS> </TS>

File diff suppressed because it is too large Load Diff

View File

@ -706,7 +706,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno perse
<message> <message>
<location filename="../src/modules/keyboard/Config.cpp" line="355"/> <location filename="../src/modules/keyboard/Config.cpp" line="355"/>
<source>Set keyboard layout to %1/%2.</source> <source>Set keyboard layout to %1/%2.</source>
<translation>Impostare il layout della tastiera a %1%2.</translation> <translation>Impostare il layout della tastiera a %1/%2.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/locale/Config.cpp" line="279"/> <location filename="../src/modules/locale/Config.cpp" line="279"/>
@ -721,17 +721,17 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno perse
<message> <message>
<location filename="../src/modules/locale/Config.cpp" line="313"/> <location filename="../src/modules/locale/Config.cpp" line="313"/>
<source>Set timezone to %1/%2.&lt;br/&gt;</source> <source>Set timezone to %1/%2.&lt;br/&gt;</source>
<translation>Imposta il fuso orario a %1%2.&lt;br/&gt;</translation> <translation>Imposta il fuso orario a %1/%2.&lt;br/&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/Config.cpp" line="47"/> <location filename="../src/modules/netinstall/Config.cpp" line="47"/>
<source>Network Installation. (Disabled: Incorrect configuration)</source> <source>Network Installation. (Disabled: Incorrect configuration)</source>
<translation>Installazione di rete. (Disabilitato: Configurazione scorretta)</translation> <translation>Installazione di rete. (Disabilitato: Configurazione non valida)</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/Config.cpp" line="49"/> <location filename="../src/modules/netinstall/Config.cpp" line="49"/>
<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 dei gruppi)</translation> <translation>Installazione di rete. (Disabilitata: Ricevuti dati dei gruppi non validi)</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/Config.cpp" line="51"/> <location filename="../src/modules/netinstall/Config.cpp" line="51"/>
@ -746,22 +746,22 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno perse
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="54"/> <location filename="../src/modules/welcome/Config.cpp" line="54"/>
<source>This computer does not satisfy the minimum requirements for setting up %1.&lt;br/&gt;Setup cannot continue. &lt;a href="#details"&gt;Details...&lt;/a&gt;</source> <source>This computer does not satisfy the minimum requirements for setting up %1.&lt;br/&gt;Setup cannot continue. &lt;a href="#details"&gt;Details...&lt;/a&gt;</source>
<translation>Questo computer non soddisfa i requisiti minimi per l'installazione di %1.&lt;br/&gt;L'installazione non può continuare. &lt;a href="#details"&gt;Dettagli...&lt;/a&gt;</translation> <translation>Questo computer non soddisfa i requisiti minimi per la configurazione di %1.&lt;br/&gt;La configurazione non può continuare. &lt;a href="#details"&gt;Dettagli...&lt;/a&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="58"/> <location filename="../src/modules/welcome/Config.cpp" line="58"/>
<source>This computer does not satisfy the minimum requirements for installing %1.&lt;br/&gt;Installation cannot continue. &lt;a href="#details"&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="#details"&gt;Details...&lt;/a&gt;</source>
<translation>Questo computer non soddisfa i requisiti minimi per installare %1. &lt;br/&gt;L'installazione non può proseguire. &lt;a href="#details"&gt;Dettagli...&lt;/a&gt;</translation> <translation>Questo computer non soddisfa i requisiti minimi per installare %1. &lt;br/&gt;L'installazione non può continuare. &lt;a href="#details"&gt;Dettagli...&lt;/a&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="65"/> <location filename="../src/modules/welcome/Config.cpp" line="65"/>
<source>This computer does not satisfy some of the recommended requirements for setting up %1.&lt;br/&gt;Setup can continue, but some features might be disabled.</source> <source>This computer does not satisfy some of the recommended requirements for setting up %1.&lt;br/&gt;Setup can continue, but some features might be disabled.</source>
<translation>Questo computer non soddisfa alcuni requisiti raccomandati per l'installazione di %1.&lt;br/&gt;L'installazione può continuare, ma alcune funzionalità potrebbero essere disabilitate.</translation> <translation>Questo computer non soddisfa alcuni requisiti raccomandati per la configurazione di %1.&lt;br/&gt;La configurazione può continuare ma alcune funzionalità potrebbero essere disabilitate.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="69"/> <location filename="../src/modules/welcome/Config.cpp" line="69"/>
<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>Questo computer non soddisfa alcuni requisiti consigliati per l'installazione di %1. &lt;br/&gt;L'installazione può proseguire ma alcune funzionalità potrebbero non essere disponibili.</translation> <translation>Questo computer non soddisfa alcuni requisiti consigliati per l'installazione di %1.&lt;br/&gt;L'installazione può continuare ma alcune funzionalità potrebbero non essere disponibili.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="79"/> <location filename="../src/modules/welcome/Config.cpp" line="79"/>
@ -771,17 +771,17 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno perse
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="230"/> <location filename="../src/modules/welcome/Config.cpp" line="230"/>
<source>&lt;h1&gt;Welcome to the Calamares setup program for %1.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to the Calamares setup program for %1.&lt;/h1&gt;</source>
<translation>&lt;h1&gt;Benvenuto nel programma di installazione Calamares di %1.&lt;/h1&gt;</translation> <translation>&lt;h1&gt;Benvenuto nel programma di configurazione Calamares per %1.&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="231"/> <location filename="../src/modules/welcome/Config.cpp" line="231"/>
<source>&lt;h1&gt;Welcome to %1 setup.&lt;/h1&gt;</source> <source>&lt;h1&gt;Welcome to %1 setup.&lt;/h1&gt;</source>
<translation>&lt;h1&gt;Benvenuto nell'installazione di %1.&lt;/h1&gt;</translation> <translation>&lt;h1&gt;Benvenuto nella configurazione di %1.&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="236"/> <location filename="../src/modules/welcome/Config.cpp" line="236"/>
<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;Benvenuti nel programma di installazione Calamares per %1.&lt;/h1&gt;</translation> <translation>&lt;h1&gt;Benvenuti nel programma d'installazione Calamares per %1.&lt;/h1&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcome/Config.cpp" line="237"/> <location filename="../src/modules/welcome/Config.cpp" line="237"/>
@ -880,12 +880,12 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno perse
<message> <message>
<location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="47"/> <location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="47"/>
<source>Create new %2MiB partition on %4 (%3) with file system %1.</source> <source>Create new %2MiB partition on %4 (%3) with file system %1.</source>
<translation>Crea una nuova partizione da %2MiB su %4 (%3) con file system %1</translation> <translation>Crea una nuova partizione da %2MiB su %4 (%3) con file system %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="58"/> <location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="58"/>
<source>Create new &lt;strong&gt;%2MiB&lt;/strong&gt; partition on &lt;strong&gt;%4&lt;/strong&gt; (%3) with file system &lt;strong&gt;%1&lt;/strong&gt;.</source> <source>Create new &lt;strong&gt;%2MiB&lt;/strong&gt; partition on &lt;strong&gt;%4&lt;/strong&gt; (%3) with file system &lt;strong&gt;%1&lt;/strong&gt;.</source>
<translation>Creare nuova partizione di &lt;strong&gt;%2MiB&lt;/strong&gt; su &lt;strong&gt;%4&lt;/strong&gt; (%3) con file system &lt;strong&gt;%1&lt;/strong&gt;.</translation> <translation>Crea una nuova partizione di &lt;strong&gt;%2MiB&lt;/strong&gt; su &lt;strong&gt;%4&lt;/strong&gt; (%3) con file system &lt;strong&gt;%1&lt;/strong&gt;.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="70"/> <location filename="../src/modules/partition/jobs/CreatePartitionJob.cpp" line="70"/>
@ -1015,7 +1015,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno perse
<message> <message>
<location filename="../src/modules/partition/jobs/CreateVolumeGroupJob.cpp" line="61"/> <location filename="../src/modules/partition/jobs/CreateVolumeGroupJob.cpp" line="61"/>
<source>The installer failed to create a volume group named '%1'.</source> <source>The installer failed to create a volume group named '%1'.</source>
<translation>Il programma di installazione non è riuscito a creare un gruppo di volumi denominato '%1'.</translation> <translation>Il programma d'installazione non è riuscito a creare un gruppo di volumi denominato '%1'.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1024,7 +1024,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno perse
<location filename="../src/modules/partition/jobs/DeactivateVolumeGroupJob.cpp" line="33"/> <location filename="../src/modules/partition/jobs/DeactivateVolumeGroupJob.cpp" line="33"/>
<location filename="../src/modules/partition/jobs/DeactivateVolumeGroupJob.cpp" line="45"/> <location filename="../src/modules/partition/jobs/DeactivateVolumeGroupJob.cpp" line="45"/>
<source>Deactivate volume group named %1.</source> <source>Deactivate volume group named %1.</source>
<translation>Disattiva gruppo di volumi denominato %1.</translation> <translation>Disattiva il gruppo di volumi denominato %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/DeactivateVolumeGroupJob.cpp" line="39"/> <location filename="../src/modules/partition/jobs/DeactivateVolumeGroupJob.cpp" line="39"/>
@ -3799,7 +3799,27 @@ Output:
&lt;/ul&gt; &lt;/ul&gt;
&lt;p&gt;The vertical scrollbar is adjustable, current width set to 10.&lt;/p&gt;</source> &lt;p&gt;The vertical scrollbar is adjustable, current width set to 10.&lt;/p&gt;</source>
<translation type="unfinished"/> <translation>&lt;h3&gt;%1&lt;/h3&gt;
&lt;p&gt;Questo è un file QML di esempio, che mostra le opzioni in RichText con contenuto scorrevole&lt;/p&gt;
&lt;p&gt;QML con RichText può utilizzare tag HTML, il contenuto scorrevole è utile per i touchscreen.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Questo è un testo in grassetto&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Questo è un testo in corsivo&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;u&gt;Questo è un testo sottolineato&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;&lt;center&gt;Questo testo sarà allineato al centro.&lt;/center&gt;&lt;/p&gt;
&lt;p&gt;&lt;s&gt;Questo è un testo barrato&lt;/s&gt;&lt;/p&gt;
&lt;p&gt;Esempio di codice:
&lt;code&gt;ls -l /home&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Liste:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sistemi con CPU Intel&lt;/li&gt;
&lt;li&gt;Sistemi con CPU AMD&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La barra di scorrimento verticale è regolabile, la larghezza corrente è impostata a 10.&lt;/p&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcomeq/release_notes.qml" line="85"/> <location filename="../src/modules/welcomeq/release_notes.qml" line="85"/>

3829
lang/calamares_lv.ts Normal file

File diff suppressed because it is too large Load Diff

View File

@ -124,7 +124,7 @@
<message> <message>
<location filename="../src/libcalamaresui/viewpages/ExecutionViewStep.cpp" line="92"/> <location filename="../src/libcalamaresui/viewpages/ExecutionViewStep.cpp" line="92"/>
<source>Install</source> <source>Install</source>
<translation>Instaloje</translation> <translation>Instalim</translation>
</message> </message>
</context> </context>
<context> <context>
@ -520,7 +520,7 @@ Instaluesi do të mbyllet dhe krejt ndryshimet do të hidhen tej.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="158"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="158"/>
<source>After:</source> <source>After:</source>
<translation>Pas:</translation> <translation>Pas:</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="334"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="334"/>
@ -937,7 +937,7 @@ Instaluesi do të mbyllet dhe krejt ndryshimet do të hidhen tej.</translation>
<message> <message>
<location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="56"/> <location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="56"/>
<source>Create new &lt;strong&gt;%1&lt;/strong&gt; partition table on &lt;strong&gt;%2&lt;/strong&gt; (%3).</source> <source>Create new &lt;strong&gt;%1&lt;/strong&gt; partition table on &lt;strong&gt;%2&lt;/strong&gt; (%3).</source>
<translation>Krijoni tabelë pjesësh re &lt;strong&gt;%1&lt;/strong&gt; te &lt;strong&gt;%2&lt;/strong&gt; (%3).</translation> <translation>Krijo tabelë pjesësh re &lt;strong&gt;%1&lt;/strong&gt; te &lt;strong&gt;%2&lt;/strong&gt; (%3).</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="66"/> <location filename="../src/modules/partition/jobs/CreatePartitionTableJob.cpp" line="66"/>
@ -1307,7 +1307,7 @@ Instaluesi do të mbyllet dhe krejt ndryshimet do të hidhen tej.</translation>
<message> <message>
<location filename="../src/modules/finished/FinishedViewStep.cpp" line="78"/> <location filename="../src/modules/finished/FinishedViewStep.cpp" line="78"/>
<source>Finish</source> <source>Finish</source>
<translation>Përfundoje</translation> <translation>Përfundim</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedViewStep.cpp" line="132"/> <location filename="../src/modules/finished/FinishedViewStep.cpp" line="132"/>
@ -3080,7 +3080,7 @@ Përfundim:
<message> <message>
<location filename="../src/modules/partition/gui/ScanningDialog.cpp" line="85"/> <location filename="../src/modules/partition/gui/ScanningDialog.cpp" line="85"/>
<source>Partitioning</source> <source>Partitioning</source>
<translation>Pjesëzim</translation> <translation>Pjesëtim</translation>
</message> </message>
</context> </context>
<context> <context>

View File

@ -106,7 +106,7 @@
<message> <message>
<location filename="../src/calamares/DebugWindow.ui" line="113"/> <location filename="../src/calamares/DebugWindow.ui" line="113"/>
<source>Widget Tree</source> <source>Widget Tree</source>
<translation type="unfinished"/> <translation>Widgetträd</translation>
</message> </message>
<message> <message>
<location filename="../src/calamares/DebugWindow.cpp" line="231"/> <location filename="../src/calamares/DebugWindow.cpp" line="231"/>
@ -246,7 +246,7 @@
<message> <message>
<location filename="../src/libcalamares/modulesystem/RequirementsChecker.cpp" line="170"/> <location filename="../src/libcalamares/modulesystem/RequirementsChecker.cpp" line="170"/>
<source>System-requirements checking is complete.</source> <source>System-requirements checking is complete.</source>
<translation type="unfinished"/> <translation>Kontroll av systemkrav är färdig</translation>
</message> </message>
</context> </context>
<context> <context>
@ -264,7 +264,7 @@
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="154"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="154"/>
<source>Would you like to paste the install log to the web?</source> <source>Would you like to paste the install log to the web?</source>
<translation type="unfinished"/> <translation>Vill du ladda upp installationsloggen webben?</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="167"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="167"/>
@ -291,7 +291,7 @@
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="192"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="192"/>
<source>Install Log Paste URL</source> <source>Install Log Paste URL</source>
<translation type="unfinished"/> <translation>URL till installationslogg</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="195"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="195"/>
@ -306,7 +306,7 @@
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="212"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="212"/>
<source>%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.</source> <source>%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.</source>
<translation type="unfinished"/> <translation>%1 kan inte installeras. Calamares kunde inte ladda alla konfigurerade moduler. Detta är ett problem med hur Calamares används av distributionen.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="218"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="218"/>
@ -326,7 +326,7 @@
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="330"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="330"/>
<source>The %1 setup program is about to make changes to your disk in order to set up %2.&lt;br/&gt;&lt;strong&gt;You will not be able to undo these changes.&lt;/strong&gt;</source> <source>The %1 setup program is about to make changes to your disk in order to set up %2.&lt;br/&gt;&lt;strong&gt;You will not be able to undo these changes.&lt;/strong&gt;</source>
<translation type="unfinished"/> <translation>%1-installeraren är väg att göra ändringar disk för att installera %2.&lt;br/&gt;&lt;strong&gt;Du kommer inte att kunna ångra dessa ändringar.&lt;/strong&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="333"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="333"/>
@ -412,7 +412,7 @@
<location filename="../src/libcalamaresui/ViewManager.cpp" line="512"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="512"/>
<source>Do you really want to cancel the current setup process? <source>Do you really want to cancel the current setup process?
The setup program will quit and all changes will be lost.</source> The setup program will quit and all changes will be lost.</source>
<translation type="unfinished"/> <translation>Vill du verkligen avbryta den nuvarande uppstartsprocessen? Uppstartsprogrammet kommer avsluta och alla ändringar kommer förloras.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamaresui/ViewManager.cpp" line="514"/> <location filename="../src/libcalamaresui/ViewManager.cpp" line="514"/>
@ -524,7 +524,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="334"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="334"/>
<source>&lt;strong&gt;Manual partitioning&lt;/strong&gt;&lt;br/&gt;You can create or resize partitions yourself. Having a GPT partition table and &lt;strong&gt;fat32 512Mb /boot partition is a must for UEFI installs&lt;/strong&gt;, either use an existing without formatting or create one.</source> <source>&lt;strong&gt;Manual partitioning&lt;/strong&gt;&lt;br/&gt;You can create or resize partitions yourself. Having a GPT partition table and &lt;strong&gt;fat32 512Mb /boot partition is a must for UEFI installs&lt;/strong&gt;, either use an existing without formatting or create one.</source>
<translation type="unfinished"/> <translation>&lt;strong&gt;Manuell partitionering&lt;/strong&gt;&lt;br/&gt;Du kan skapa eller ändra storlek partitioner själv. UEFI-installationer kräver en GPT-partitionstabell och en &lt;strong&gt;fat32-partition för /boot 512MB&lt;/strong&gt;, använd en existerande utan formatering eller skapa en.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ChoicePage.cpp" line="833"/> <location filename="../src/modules/partition/gui/ChoicePage.cpp" line="833"/>
@ -688,7 +688,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="151"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="151"/>
<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>Kommandot körs värden och behöver känna till sökvägen till root, men rootMountPoint är inte definierat.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/utils/CommandList.cpp" line="164"/> <location filename="../src/libcalamares/utils/CommandList.cpp" line="164"/>
@ -716,7 +716,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/locale/Config.cpp" line="280"/> <location filename="../src/modules/locale/Config.cpp" line="280"/>
<source>The numbers and dates locale will be set to %1.</source> <source>The numbers and dates locale will be set to %1.</source>
<translation type="unfinished"/> <translation>Systemspråket för siffror och datum kommer sättas till %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/locale/Config.cpp" line="313"/> <location filename="../src/modules/locale/Config.cpp" line="313"/>
@ -731,7 +731,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/netinstall/Config.cpp" line="49"/> <location filename="../src/modules/netinstall/Config.cpp" line="49"/>
<source>Network Installation. (Disabled: Received invalid groups data)</source> <source>Network Installation. (Disabled: Received invalid groups data)</source>
<translation type="unfinished"/> <translation>Nätverksinstallation. (Inaktiverad: Fick felaktig gruppdata)</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/netinstall/Config.cpp" line="51"/> <location filename="../src/modules/netinstall/Config.cpp" line="51"/>
@ -1070,12 +1070,12 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="115"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="115"/>
<source>This is a &lt;strong&gt;loop&lt;/strong&gt; device.&lt;br&gt;&lt;br&gt;It is a pseudo-device with no partition table that makes a file accessible as a block device. This kind of setup usually only contains a single filesystem.</source> <source>This is a &lt;strong&gt;loop&lt;/strong&gt; device.&lt;br&gt;&lt;br&gt;It is a pseudo-device with no partition table that makes a file accessible as a block device. This kind of setup usually only contains a single filesystem.</source>
<translation type="unfinished"/> <translation>Detta är en &lt;strong&gt;loop&lt;/strong&gt;enhet.&lt;br&gt;&lt;br&gt;Det är en pseudo-enhet som inte har någon partitionstabell, och som gör en fil tillgänglig som en blockenhet. Denna typ av upplägg innehåller vanligtvis ett enda filsystem.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="122"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="122"/>
<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 type="unfinished"/> <translation>Installationsprogrammet &lt;strong&gt;kan inte hitta någon partitionstabell&lt;/strong&gt; på den valda lagringsenheten.&lt;br&gt;&lt;br&gt;Antingen har enheten ingen partitionstabell, eller så är partitionstabellen trasig eller av okänd typ.&lt;br&gt;Installationsprogrammet kan skapa en ny partitionstabell åt dig, antingen automatiskt, eller genom sidan för manuell partitionering.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="132"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="132"/>
@ -1085,7 +1085,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="138"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="138"/>
<source>&lt;br&gt;&lt;br&gt;This partition table type is only advisable on older systems which start from a &lt;strong&gt;BIOS&lt;/strong&gt; boot environment. GPT is recommended in most other cases.&lt;br&gt;&lt;br&gt;&lt;strong&gt;Warning:&lt;/strong&gt; the MBR partition table is an obsolete MS-DOS era standard.&lt;br&gt;Only 4 &lt;em&gt;primary&lt;/em&gt; partitions may be created, and of those 4, one can be an &lt;em&gt;extended&lt;/em&gt; partition, which may in turn contain many &lt;em&gt;logical&lt;/em&gt; partitions.</source> <source>&lt;br&gt;&lt;br&gt;This partition table type is only advisable on older systems which start from a &lt;strong&gt;BIOS&lt;/strong&gt; boot environment. GPT is recommended in most other cases.&lt;br&gt;&lt;br&gt;&lt;strong&gt;Warning:&lt;/strong&gt; the MBR partition table is an obsolete MS-DOS era standard.&lt;br&gt;Only 4 &lt;em&gt;primary&lt;/em&gt; partitions may be created, and of those 4, one can be an &lt;em&gt;extended&lt;/em&gt; partition, which may in turn contain many &lt;em&gt;logical&lt;/em&gt; partitions.</source>
<translation type="unfinished"/> <translation>&lt;br&gt;&lt;br&gt;Denna partitionstabell är endast lämplig äldre system som startar från en &lt;strong&gt;BIOS&lt;/strong&gt;-startmiljö. GPT rekommenderas i de flesta andra fall.&lt;br&gt;&lt;br&gt;&lt;strong&gt;Varning:&lt;/strong&gt; MBR-partitionstabellen är en föråldrad standard från MS-DOS-tiden.&lt;br&gt;Endast 4 &lt;em&gt;primära&lt;/em&gt; partitioner kan skapas, och av dessa 4 kan en vara en &lt;em&gt;utökad&lt;/em&gt; partition, som i sin tur kan innehålla många &lt;em&gt;logiska&lt;/em&gt; partitioner.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="151"/> <location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="151"/>
@ -1278,7 +1278,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.cpp" line="58"/> <location filename="../src/modules/finished/FinishedPage.cpp" line="58"/>
<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="font-style:italic;"&gt;Done&lt;/span&gt; or close the setup program.&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="font-style:italic;"&gt;Done&lt;/span&gt; or close the setup program.&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;När denna ruta är ikryssad kommer systemet starta om omedelbart när du klickar &lt;span style="font-style:italic;"&gt;Klar&lt;/span&gt; eller stänger installationsprogrammet.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.cpp" line="66"/> <location filename="../src/modules/finished/FinishedPage.cpp" line="66"/>
@ -1288,7 +1288,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.cpp" line="71"/> <location filename="../src/modules/finished/FinishedPage.cpp" line="71"/>
<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="font-style:italic;"&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="font-style:italic;"&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;När denna ruta är ikryssad kommer systemet starta om omedelbart när du klickar &lt;span style="font-style:italic;"&gt;Klar&lt;/span&gt; eller stänger installationsprogrammet.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/finished/FinishedPage.cpp" line="133"/> <location filename="../src/modules/finished/FinishedPage.cpp" line="133"/>
@ -1573,27 +1573,27 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="151"/> <location filename="../src/modules/license/LicensePage.cpp" line="151"/>
<source>Please review the End User License Agreements (EULAs).</source> <source>Please review the End User License Agreements (EULAs).</source>
<translation type="unfinished"/> <translation>Vänligen läs igenom licensavtalen för slutanvändare (EULA).</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="156"/> <location filename="../src/modules/license/LicensePage.cpp" line="156"/>
<source>This setup procedure will install proprietary software that is subject to licensing terms.</source> <source>This setup procedure will install proprietary software that is subject to licensing terms.</source>
<translation type="unfinished"/> <translation>Denna installationsprocess kommer installera proprietär mjukvara för vilken särskilda licensvillkor gäller.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="159"/> <location filename="../src/modules/license/LicensePage.cpp" line="159"/>
<source>If you do not agree with the terms, the setup procedure cannot continue.</source> <source>If you do not agree with the terms, the setup procedure cannot continue.</source>
<translation type="unfinished"/> <translation>Om du inte accepterar villkoren kan inte installationsproceduren fortsätta.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="164"/> <location filename="../src/modules/license/LicensePage.cpp" line="164"/>
<source>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>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 type="unfinished"/> <translation>Denna installationsprocess kan installera proprietär mjukvara för vilken särskilda licensvillkor gäller, för att kunna erbjuda ytterligare funktionalitet och förbättra användarupplevelsen.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/license/LicensePage.cpp" line="169"/> <location filename="../src/modules/license/LicensePage.cpp" line="169"/>
<source>If you do not agree with the terms, proprietary software will not be installed, and open source alternatives will be used instead.</source> <source>If you do not agree with the terms, proprietary software will not be installed, and open source alternatives will be used instead.</source>
<translation type="unfinished"/> <translation>Om du inte godkänner villkoren kommer inte proprietär mjukvara att installeras, och alternativ med öppen källkod kommer användas istället.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -1690,7 +1690,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/locale/LocalePage.cpp" line="263"/> <location filename="../src/modules/locale/LocalePage.cpp" line="263"/>
<source>The numbers and dates locale will be set to %1.</source> <source>The numbers and dates locale will be set to %1.</source>
<translation type="unfinished"/> <translation>Systemspråket för siffror och datum kommer sättas till %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/locale/LocalePage.cpp" line="270"/> <location filename="../src/modules/locale/LocalePage.cpp" line="270"/>
@ -1732,7 +1732,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="199"/> <location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="199"/>
<location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="207"/> <location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="207"/>
<source>Encrypted rootfs setup error</source> <source>Encrypted rootfs setup error</source>
<translation type="unfinished"/> <translation>Fel vid inställning av krypterat rootfs</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="193"/> <location filename="../src/modules/luksbootkeyfile/LuksBootKeyFileJob.cpp" line="193"/>
@ -1946,7 +1946,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<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>Endast stora och små bokstäver skiljer lösenorden åt</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/>
@ -1961,7 +1961,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<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 type="unfinished"/> <translation>Lösenordet innehåller ord från användarens namn i någon form</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="177"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="177"/>
@ -2001,7 +2001,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/>
<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>Lösenordet innehåller färre än %1 icke alfanumeriska tecken</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="206"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="206"/>
@ -2021,22 +2021,22 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="215"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="215"/>
<source>The password is just rotated old one</source> <source>The password is just rotated old one</source>
<translation type="unfinished"/> <translation>Lösenordet är ett roterat gammalt lösenord</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="219"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="219"/>
<source>The password contains less than %1 character classes</source> <source>The password contains less than %1 character classes</source>
<translation type="unfinished"/> <translation>Lösenordet innehåller färre än %1 teckenklasser</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="222"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="222"/>
<source>The password does not contain enough character classes</source> <source>The password does not contain enough character classes</source>
<translation type="unfinished"/> <translation>Lösenordet innehåller inte tillräckligt många teckenklasser</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="226"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="226"/>
<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>Lösenordet innehåller fler än %1 likadana tecken i rad</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="230"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="230"/>
@ -2046,22 +2046,22 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="234"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="234"/>
<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>Lösenordet innehåller fler än %1 tecken från samma klass i rad</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="238"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="238"/>
<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>Lösenordet innehåller för många tecken från samma klass i rad</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/>
<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>Lösenordet innehåller en monoton sekvens längre än %1 tecken</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/>
<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>Lösenordet innehåller en för lång monoton teckensekvens</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="250"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="250"/>
@ -2071,22 +2071,22 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="252"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="252"/>
<source>Cannot obtain random numbers from the RNG device</source> <source>Cannot obtain random numbers from the RNG device</source>
<translation type="unfinished"/> <translation>Kan inte hämta slumptal från slumptalsgeneratorn</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="254"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="254"/>
<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>Lösenordsgenerering misslyckades - för lite entropi tillgänglig för givna inställningar</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="260"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="260"/>
<source>The password fails the dictionary check - %1</source> <source>The password fails the dictionary check - %1</source>
<translation type="unfinished"/> <translation>Lösenordet klarar inte ordlistekontrollen - %1</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 password fails the dictionary check</source> <source>The password fails the dictionary check</source>
<translation type="unfinished"/> <translation>Lösenordet klarar inte ordlistekontrollen</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/> <location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/>
@ -2184,7 +2184,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/packagechooser/PackageChooserPage.cpp" line="35"/> <location filename="../src/modules/packagechooser/PackageChooserPage.cpp" line="35"/>
<source>Please pick a product from the list. The selected product will be installed.</source> <source>Please pick a product from the list. The selected product will be installed.</source>
<translation type="unfinished"/> <translation>Välj en produkt från listan. Den valda produkten kommer att installeras.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2294,7 +2294,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="451"/> <location filename="../src/modules/users/page_usersetup.ui" line="451"/>
<source>When this box is checked, password-strength checking is done and you will not be able to use a weak password.</source> <source>When this box is checked, password-strength checking is done and you will not be able to use a weak password.</source>
<translation type="unfinished"/> <translation>När den här rutan är förkryssad kommer kontroll av lösenordsstyrka att genomföras, och du kommer inte kunna använda ett svagt lösenord.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/users/page_usersetup.ui" line="454"/> <location filename="../src/modules/users/page_usersetup.ui" line="454"/>
@ -2477,7 +2477,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionPage.cpp" line="241"/> <location filename="../src/modules/partition/gui/PartitionPage.cpp" line="241"/>
<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 redan %2 primära partitioner och inga fler kan läggas till. Var god ta bort en primär partition och lägg till en utökad partition istället.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2555,12 +2555,12 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="433"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="433"/>
<source>An EFI system partition is necessary to start %1.&lt;br/&gt;&lt;br/&gt;To configure an EFI system partition, go back and select or create a FAT32 filesystem with the &lt;strong&gt;%3&lt;/strong&gt; flag enabled and mount point &lt;strong&gt;%2&lt;/strong&gt;.&lt;br/&gt;&lt;br/&gt;You can continue without setting up an EFI system partition but your system may fail to start.</source> <source>An EFI system partition is necessary to start %1.&lt;br/&gt;&lt;br/&gt;To configure an EFI system partition, go back and select or create a FAT32 filesystem with the &lt;strong&gt;%3&lt;/strong&gt; flag enabled and mount point &lt;strong&gt;%2&lt;/strong&gt;.&lt;br/&gt;&lt;br/&gt;You can continue without setting up an EFI system partition but your system may fail to start.</source>
<translation type="unfinished"/> <translation>En EFI-systempartition krävs för att starta %1. &lt;br/&gt;&lt;br/&gt; För att konfigurera en EFI-systempartition, tillbaka och välj eller skapa ett FAT32-filsystem med &lt;strong&gt;%3&lt;/strong&gt;-flaggan satt och monteringspunkt &lt;strong&gt;%2&lt;/strong&gt;. &lt;br/&gt;&lt;br/&gt;Du kan fortsätta utan att ställa in en EFI-systempartition, men ditt system kanske misslyckas med att starta.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="447"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="447"/>
<source>An EFI system partition is necessary to start %1.&lt;br/&gt;&lt;br/&gt;A partition was configured with mount point &lt;strong&gt;%2&lt;/strong&gt; but its &lt;strong&gt;%3&lt;/strong&gt; flag is not set.&lt;br/&gt;To set the flag, go back and edit the partition.&lt;br/&gt;&lt;br/&gt;You can continue without setting the flag but your system may fail to start.</source> <source>An EFI system partition is necessary to start %1.&lt;br/&gt;&lt;br/&gt;A partition was configured with mount point &lt;strong&gt;%2&lt;/strong&gt; but its &lt;strong&gt;%3&lt;/strong&gt; flag is not set.&lt;br/&gt;To set the flag, go back and edit the partition.&lt;br/&gt;&lt;br/&gt;You can continue without setting the flag but your system may fail to start.</source>
<translation type="unfinished"/> <translation>En EFI-systempartition krävs för att starta %1. &lt;br/&gt;&lt;br/&gt;En partition är konfigurerad med monteringspunkt &lt;strong&gt;%2&lt;/strong&gt;, men dess &lt;strong&gt;%3&lt;/strong&gt;-flagga är inte satt.&lt;br/&gt;För att sätta flaggan, gå tillbaka och redigera partitionen.&lt;br/&gt;&lt;br/&gt;Du kan fortsätta utan att sätta flaggan, men ditt system kanske misslyckas med att starta</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="446"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="446"/>
@ -2575,7 +2575,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="474"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="474"/>
<source>A GPT partition table is the best option for all systems. This installer supports such a setup for BIOS systems too.&lt;br/&gt;&lt;br/&gt;To configure a GPT partition table on BIOS, (if not done so already) go back and set the partition table to GPT, next create a 8 MB unformatted partition with the &lt;strong&gt;bios_grub&lt;/strong&gt; flag enabled.&lt;br/&gt;&lt;br/&gt;An unformatted 8 MB partition is necessary to start %1 on a BIOS system with GPT.</source> <source>A GPT partition table is the best option for all systems. This installer supports such a setup for BIOS systems too.&lt;br/&gt;&lt;br/&gt;To configure a GPT partition table on BIOS, (if not done so already) go back and set the partition table to GPT, next create a 8 MB unformatted partition with the &lt;strong&gt;bios_grub&lt;/strong&gt; flag enabled.&lt;br/&gt;&lt;br/&gt;An unformatted 8 MB partition is necessary to start %1 on a BIOS system with GPT.</source>
<translation type="unfinished"/> <translation>En GPT-partitionstabell är det bästa alternativet för alla system. Detta installationsprogram stödjer det för system med BIOS också.&lt;br/&gt;&lt;br/&gt;För att konfigurera en GPT-partitionstabell BIOS (om det inte redan är gjort), tillbaka och sätt partitionstabell till GPT, skapa sedan en oformaterad partition 8MB med &lt;strong&gt;bios_grub&lt;/strong&gt;-flaggan satt.&lt;br/&gt;&lt;br/&gt;En oformaterad partition 8MB är nödvändig för att starta %1 ett BIOS-system med GPT.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="502"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="502"/>
@ -2585,12 +2585,12 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="503"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="503"/>
<source>A separate boot partition was set up together with an encrypted root partition, but the boot partition is not encrypted.&lt;br/&gt;&lt;br/&gt;There are security concerns with this kind of setup, because important system files are kept on an unencrypted partition.&lt;br/&gt;You may continue if you wish, but filesystem unlocking will happen later during system startup.&lt;br/&gt;To encrypt the boot partition, go back and recreate it, selecting &lt;strong&gt;Encrypt&lt;/strong&gt; in the partition creation window.</source> <source>A separate boot partition was set up together with an encrypted root partition, but the boot partition is not encrypted.&lt;br/&gt;&lt;br/&gt;There are security concerns with this kind of setup, because important system files are kept on an unencrypted partition.&lt;br/&gt;You may continue if you wish, but filesystem unlocking will happen later during system startup.&lt;br/&gt;To encrypt the boot partition, go back and recreate it, selecting &lt;strong&gt;Encrypt&lt;/strong&gt; in the partition creation window.</source>
<translation type="unfinished"/> <translation>En separat uppstartspartition skapades tillsammans med den krypterade rootpartitionen, men uppstartspartitionen är inte krypterad.&lt;br/&gt;&lt;br/&gt;Det finns säkerhetsproblem med den här inställningen, eftersom viktiga systemfiler sparas en okrypterad partition.&lt;br/&gt;Du kan fortsätta om du vill, men upplåsning av filsystemet kommer hända senare under uppstart av systemet.&lt;br/&gt;För att kryptera uppstartspartitionen, tillbaka och återskapa den, och välj &lt;strong&gt;Kryptera&lt;/strong&gt; i fönstret när du skapar partitionen.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="720"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="720"/>
<source>has at least one disk device available.</source> <source>has at least one disk device available.</source>
<translation type="unfinished"/> <translation>har åtminstone en diskenhet tillgänglig.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="721"/> <location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="721"/>
@ -2603,13 +2603,13 @@ Alla ändringar kommer att gå förlorade.</translation>
<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 type="unfinished"/> <translation>Jobb för Plasmas utseende och känsla</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 type="unfinished"/> <translation>Kunde inte välja KDE Plasma-paket för utseende och känsla</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2622,12 +2622,12 @@ Alla ändringar kommer att gå förlorade.</translation>
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="70"/> <location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="70"/>
<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 set up. 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 set up. Clicking on a look-and-feel selection will give you a live preview of that look-and-feel.</source>
<translation type="unfinished"/> <translation>Var god välj ett utseende och känsla för KDE Plasma skrivbordet. Du kan hoppa över detta steget och ställa in utseende och känsla när systemet är installerat. Klicka ett val för utseende och känsla för att en förhandsgranskning av det valet.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="76"/> <location filename="../src/modules/plasmalnf/PlasmaLnfPage.cpp" line="76"/>
<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>Var god välj ett utseende och känsla för KDE Plasma skrivbordet. Du kan hoppa över detta steget och ställa in utseende och känsla när systemet är installerat. Klicka ett val för utseende och känsla för att en förhandsgranskning av det valet.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2635,7 +2635,7 @@ Alla ändringar kommer att gå förlorade.</translation>
<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 type="unfinished"/> <translation>Utseende och känsla</translation>
</message> </message>
</context> </context>
<context> <context>
@ -2735,7 +2735,7 @@ Utdata:
<message> <message>
<location filename="../src/libcalamares/modulesystem/RequirementsChecker.cpp" line="63"/> <location filename="../src/libcalamares/modulesystem/RequirementsChecker.cpp" line="63"/>
<source>Requirements checking for module &lt;i&gt;%1&lt;/i&gt; is complete.</source> <source>Requirements checking for module &lt;i&gt;%1&lt;/i&gt; is complete.</source>
<translation type="unfinished"/> <translation>Kontroll av krav för modul &lt;i&gt;%1&lt;/i&gt; är färdig.</translation>
</message> </message>
<message> <message>
<location filename="../src/libcalamares/partition/FileSystem.cpp" line="36"/> <location filename="../src/libcalamares/partition/FileSystem.cpp" line="36"/>
@ -2779,7 +2779,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/machineid/Workers.cpp" line="74"/> <location filename="../src/modules/machineid/Workers.cpp" line="74"/>
<source>Path &lt;pre&gt;%1&lt;/pre&gt; must be an absolute path.</source> <source>Path &lt;pre&gt;%1&lt;/pre&gt; must be an absolute path.</source>
<translation type="unfinished"/> <translation>Sökväg &lt;pre&gt;%1&lt;/pre&gt; måste vara en absolut sökväg.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/machineid/Workers.cpp" line="103"/> <location filename="../src/modules/machineid/Workers.cpp" line="103"/>
@ -2889,7 +2889,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="255"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="255"/>
<source>&lt;strong&gt;%2&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;An EFI system partition cannot be found anywhere on this system. Please go back and use manual partitioning to set up %1.</source> <source>&lt;strong&gt;%2&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;An EFI system partition cannot be found anywhere on this system. Please go back and use manual partitioning to set up %1.</source>
<translation type="unfinished"/> <translation>&lt;strong&gt;%2&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Kan inte hitta en EFI-systempartition någonstans detta system. Var god tillbaka och använd manuell partitionering för att installera %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="266"/> <location filename="../src/modules/partition/gui/ReplaceWidget.cpp" line="266"/>
@ -2914,7 +2914,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="57"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="57"/>
<source>Resize Filesystem Job</source> <source>Resize Filesystem Job</source>
<translation type="unfinished"/> <translation>Jobb för storleksförändring av filsystem</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="170"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="170"/>
@ -2924,7 +2924,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="171"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="171"/>
<source>The file-system resize job has an invalid configuration and will not run.</source> <source>The file-system resize job has an invalid configuration and will not run.</source>
<translation type="unfinished"/> <translation>Jobbet för storleksförändring av filsystem har en felaktig konfiguration och kommer inte köras.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="177"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="177"/>
@ -2934,7 +2934,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="178"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="178"/>
<source>Calamares cannot start KPMCore for the file-system resize job.</source> <source>Calamares cannot start KPMCore for the file-system resize job.</source>
<translation type="unfinished"/> <translation>Calamares kan inte starta KPMCore för jobbet att ändra filsystemsstorlek.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="186"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="186"/>
@ -2948,34 +2948,34 @@ Utdata:
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="187"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="187"/>
<source>The filesystem %1 could not be found in this system, and cannot be resized.</source> <source>The filesystem %1 could not be found in this system, and cannot be resized.</source>
<translation type="unfinished"/> <translation>Kunde inte hitta filsystemet %1 systemet, och kan inte ändra storlek det.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="188"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="188"/>
<source>The device %1 could not be found in this system, and cannot be resized.</source> <source>The device %1 could not be found in this system, and cannot be resized.</source>
<translation type="unfinished"/> <translation>Kunde inte hitta enheten %1 systemet, och kan inte ändra storlek den.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="196"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="196"/>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="209"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="209"/>
<source>The filesystem %1 cannot be resized.</source> <source>The filesystem %1 cannot be resized.</source>
<translation type="unfinished"/> <translation>Det går inte att ändra storlek filsystemet %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="197"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="197"/>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="210"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="210"/>
<source>The device %1 cannot be resized.</source> <source>The device %1 cannot be resized.</source>
<translation type="unfinished"/> <translation>Det går inte att ändra storlek enheten %1.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="218"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="218"/>
<source>The filesystem %1 must be resized, but cannot.</source> <source>The filesystem %1 must be resized, but cannot.</source>
<translation type="unfinished"/> <translation>Filsystemet %1 måste ändra storlek, men storleken kan inte ändras.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="219"/> <location filename="../src/modules/fsresizer/ResizeFSJob.cpp" line="219"/>
<source>The device %1 must be resized, but cannot</source> <source>The device %1 must be resized, but cannot</source>
<translation type="unfinished"/> <translation>Enheten %1 måste ändra storlek, men storleken kan inte ändras</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3015,7 +3015,7 @@ Utdata:
<location filename="../src/modules/partition/jobs/ResizeVolumeGroupJob.cpp" line="36"/> <location filename="../src/modules/partition/jobs/ResizeVolumeGroupJob.cpp" line="36"/>
<location filename="../src/modules/partition/jobs/ResizeVolumeGroupJob.cpp" line="54"/> <location filename="../src/modules/partition/jobs/ResizeVolumeGroupJob.cpp" line="54"/>
<source>Resize volume group named %1 from %2 to %3.</source> <source>Resize volume group named %1 from %2 to %3.</source>
<translation type="unfinished"/> <translation>Ändra storlek volymgruppen som heter %1 från %2 till %3.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/jobs/ResizeVolumeGroupJob.cpp" line="45"/> <location filename="../src/modules/partition/jobs/ResizeVolumeGroupJob.cpp" line="45"/>
@ -3311,7 +3311,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/shellprocess/ShellProcessJob.cpp" line="46"/> <location filename="../src/modules/shellprocess/ShellProcessJob.cpp" line="46"/>
<source>Shell Processes Job</source> <source>Shell Processes Job</source>
<translation type="unfinished"/> <translation>Jobb för skalprocesser</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3328,7 +3328,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/summary/SummaryPage.cpp" line="57"/> <location filename="../src/modules/summary/SummaryPage.cpp" line="57"/>
<source>This is an overview of what will happen once you start the setup procedure.</source> <source>This is an overview of what will happen once you start the setup procedure.</source>
<translation type="unfinished"/> <translation>Detta är en översikt över vad som kommer hända när du startar installationsprocessen.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/summary/SummaryPage.cpp" line="60"/> <location filename="../src/modules/summary/SummaryPage.cpp" line="60"/>
@ -3364,7 +3364,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/tracking/TrackingJobs.cpp" line="72"/> <location filename="../src/modules/tracking/TrackingJobs.cpp" line="72"/>
<source>HTTP request timed out.</source> <source>HTTP request timed out.</source>
<translation type="unfinished"/> <translation>HTTP-begäran tog för lång tid.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3411,7 +3411,7 @@ Utdata:
<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=" font-weight:600;"&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=" font-weight:600;"&gt;no information at all&lt;/span&gt; about your installation.&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;Genom att välja detta, kommer du inte skicka &lt;span style=" font-weight:600;"&gt;någon information alls&lt;/span&gt; om din installation.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/page_trackingstep.ui" line="271"/> <location filename="../src/modules/tracking/page_trackingstep.ui" line="271"/>
@ -3426,7 +3426,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="49"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="49"/>
<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 type="unfinished"/> <translation>Genom att välja detta, kommer du skicka information om din installation och hårdvara. Denna information kommer &lt;b&gt;enbart skickas en gång&lt;/b&gt; efter att installationen slutförts.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/tracking/TrackingPage.cpp" line="51"/> <location filename="../src/modules/tracking/TrackingPage.cpp" line="51"/>
@ -3541,7 +3541,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="56"/> <location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="56"/>
<source>Physical Extent Size:</source> <source>Physical Extent Size:</source>
<translation type="unfinished"/> <translation>Storlek fysisk volymdel (PE):</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="66"/> <location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="66"/>
@ -3566,7 +3566,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="142"/> <location filename="../src/modules/partition/gui/VolumeGroupBaseDialog.ui" line="142"/>
<source>Quantity of LVs:</source> <source>Quantity of LVs:</source>
<translation type="unfinished"/> <translation>Antal LV:</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3665,7 +3665,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/welcome/WelcomePage.cpp" line="250"/> <location filename="../src/modules/welcome/WelcomePage.cpp" line="250"/>
<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-2020 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Thanks to &lt;a href="https://calamares.io/team/"&gt;the Calamares team&lt;/a&gt; and the &lt;a href="https://www.transifex.com/calamares/calamares/"&gt;Calamares translators team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;a href="https://calamares.io/"&gt;Calamares&lt;/a&gt; development is sponsored by &lt;br/&gt;&lt;a href="http://www.blue-systems.com/"&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-2020 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Thanks to &lt;a href="https://calamares.io/team/"&gt;the Calamares team&lt;/a&gt; and the &lt;a href="https://www.transifex.com/calamares/calamares/"&gt;Calamares translators team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;a href="https://calamares.io/"&gt;Calamares&lt;/a&gt; development is sponsored by &lt;br/&gt;&lt;a href="http://www.blue-systems.com/"&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-2020 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;Tack till &lt;a href="https://calamares.io/team/"&gt;Calamares-teamet&lt;/a&gt; och &lt;a href="https://www.transifex.com/calamares/calamares/"&gt;Calamares översättar-team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;a href="https://calamares.io/"&gt;Calamares&lt;/a&gt; utveckling sponsras av &lt;br/&gt;&lt;a href="http://www.blue-systems.com/"&gt;Blue Systems&lt;/a&gt; - Liberating Software.</translation>
</message> </message>
</context> </context>
<context> <context>
@ -3700,7 +3700,18 @@ Utdata:
development is sponsored by &lt;br/&gt; development is sponsored by &lt;br/&gt;
&lt;a href='http://www.blue-systems.com/'&gt;Blue Systems&lt;/a&gt; - &lt;a href='http://www.blue-systems.com/'&gt;Blue Systems&lt;/a&gt; -
Liberating Software.</source> 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-2020 Adriaan de Groot &amp;lt;groot@kde.org&amp;gt;&lt;br/&gt;
Tack till &lt;a href='https://calamares.io/team/'&gt;Calamares-teamet&lt;/a&gt;
och &lt;a href='https://www.transifex.com/calamares/calamares/'&gt;Calamares
översättar-team&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;
&lt;a href='https://calamares.io/'&gt;Calamares&lt;/a&gt;
utveckling sponsras av &lt;br/&gt;
&lt;a href='http://www.blue-systems.com/'&gt;Blue Systems&lt;/a&gt; -
Liberating Software.</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcomeq/about.qml" line="105"/> <location filename="../src/modules/welcomeq/about.qml" line="105"/>
@ -3718,7 +3729,7 @@ Utdata:
<message> <message>
<location filename="../src/modules/keyboardq/keyboardq.qml" line="26"/> <location filename="../src/modules/keyboardq/keyboardq.qml" line="26"/>
<source>Pick your preferred keyboard model or use the default one based on the detected hardware</source> <source>Pick your preferred keyboard model or use the default one based on the detected hardware</source>
<translation type="unfinished"/> <translation>Välj din föredragna tangentbordsmodell, eller använd ett förval baserat vilken hårdvara vi känt av</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/keyboardq/keyboardq.qml" line="41"/> <location filename="../src/modules/keyboardq/keyboardq.qml" line="41"/>
@ -3788,7 +3799,27 @@ Utdata:
&lt;/ul&gt; &lt;/ul&gt;
&lt;p&gt;The vertical scrollbar is adjustable, current width set to 10.&lt;/p&gt;</source> &lt;p&gt;The vertical scrollbar is adjustable, current width set to 10.&lt;/p&gt;</source>
<translation type="unfinished"/> <translation>&lt;h3&gt;%1&lt;/h3&gt;
&lt;p&gt;Detta är en exempelfil för QML, som visar inställningar för RichText och innehåll som är Flickable.&lt;/p&gt;
&lt;p&gt;QML med RichText kan använda HTML-taggar. Innehåll som är Flickable är användbart pekskärmar.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Detta är fet text&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Detta är kursiv text&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Detta är understruken text&lt;/p&gt;
&lt;p&gt;&lt;center&gt;Denna text är centrerad.&lt;/center&gt;&lt;/p&gt;
&lt;p&gt;&lt;s&gt;Detta är överstruket&lt;/s&gt;&lt;/p&gt;
&lt;p&gt;Kodexample:
&lt;code&gt;ls -l /home&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Listor:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;System med Intel-processor&lt;/li&gt;
&lt;li&gt;System med AMD-processor&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Den vertikala rullningslisten är justerbar, nuvarande bredd är satt till 10.&lt;/p&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcomeq/release_notes.qml" line="85"/> <location filename="../src/modules/welcomeq/release_notes.qml" line="85"/>
@ -3802,7 +3833,8 @@ Utdata:
<location filename="../src/modules/welcomeq/welcomeq.qml" line="44"/> <location filename="../src/modules/welcomeq/welcomeq.qml" line="44"/>
<source>&lt;h3&gt;Welcome to the %1 &lt;quote&gt;%2&lt;/quote&gt; installer&lt;/h3&gt; <source>&lt;h3&gt;Welcome to the %1 &lt;quote&gt;%2&lt;/quote&gt; installer&lt;/h3&gt;
&lt;p&gt;This program will ask you some questions and set up %1 on your computer.&lt;/p&gt;</source> &lt;p&gt;This program will ask you some questions and set up %1 on your computer.&lt;/p&gt;</source>
<translation type="unfinished"/> <translation>&lt;h3&gt;Välkommen till %2 installationsprogram för &lt;quote&gt;%1&lt;/quote&gt;&lt;/h3&gt;
&lt;p&gt;Detta program kommer ställa några frågor och installera %1 din dator.&lt;/p&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/modules/welcomeq/welcomeq.qml" line="71"/> <location filename="../src/modules/welcomeq/welcomeq.qml" line="71"/>

View File

@ -8,344 +8,332 @@ 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: 2020-04-30 23:13+0200\n" "POT-Creation-Date: 2020-06-18 15:42+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \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"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Language: \n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/modules/packages/main.py:59 src/modules/packages/main.py:68 #: src/modules/grubcfg/main.py:37
#: src/modules/packages/main.py:78 msgid "Configure GRUB."
msgid "Install packages."
msgstr "Install packages."
#: src/modules/packages/main.py:66
#, python-format
msgid "Processing packages (%(count)d / %(total)d)"
msgstr "Processing packages (%(count)d / %(total)d)"
#: src/modules/packages/main.py:71
#, python-format
msgid "Installing one package."
msgid_plural "Installing %(num)d packages."
msgstr[0] "Installing one package."
msgstr[1] "Installing %(num)d packages."
#: src/modules/packages/main.py:74
#, python-format
msgid "Removing one package."
msgid_plural "Removing %(num)d packages."
msgstr[0] "Removing one package."
msgstr[1] "Removing %(num)d packages."
#: src/modules/networkcfg/main.py:37
msgid "Saving network configuration."
msgstr "Saving network configuration."
#: src/modules/networkcfg/main.py:48 src/modules/initcpiocfg/main.py:205
#: src/modules/initcpiocfg/main.py:209 src/modules/openrcdmcryptcfg/main.py:78
#: src/modules/openrcdmcryptcfg/main.py:82 src/modules/localecfg/main.py:144
#: src/modules/mount/main.py:145 src/modules/luksopenswaphookcfg/main.py:95
#: src/modules/luksopenswaphookcfg/main.py:99 src/modules/fstab/main.py:332
#: src/modules/fstab/main.py:338 src/modules/initramfscfg/main.py:94
#: src/modules/initramfscfg/main.py:98 src/modules/rawfs/main.py:171
msgid "Configuration Error"
msgstr "Configuration Error"
#: src/modules/networkcfg/main.py:49 src/modules/initcpiocfg/main.py:210
#: src/modules/openrcdmcryptcfg/main.py:83 src/modules/localecfg/main.py:145
#: src/modules/luksopenswaphookcfg/main.py:100 src/modules/fstab/main.py:339
#: src/modules/initramfscfg/main.py:99
msgid "No root mount point is given for <pre>{!s}</pre> to use."
msgstr "No root mount point is given for <pre>{!s}</pre> to use."
#: src/modules/umount/main.py:40
msgid "Unmount file systems."
msgstr "Unmount file systems."
#: src/modules/initcpiocfg/main.py:37
msgid "Configuring mkinitcpio."
msgstr "Configuring mkinitcpio."
#: src/modules/initcpiocfg/main.py:206 src/modules/openrcdmcryptcfg/main.py:79
#: src/modules/mount/main.py:146 src/modules/luksopenswaphookcfg/main.py:96
#: src/modules/fstab/main.py:333 src/modules/initramfscfg/main.py:95
#: src/modules/rawfs/main.py:172
msgid "No partitions are defined for <pre>{!s}</pre> to use."
msgstr "No partitions are defined for <pre>{!s}</pre> to use."
#: src/modules/openrcdmcryptcfg/main.py:34
msgid "Configuring OpenRC dmcrypt service."
msgstr "Configuring OpenRC dmcrypt service."
#: src/modules/unpackfs/main.py:44
msgid "Filling up filesystems."
msgstr "Filling up filesystems."
#: src/modules/unpackfs/main.py:257
msgid "rsync failed with error code {}."
msgstr "rsync failed with error code {}."
#: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}"
msgstr "Unpacking image {}/{}, file {}/{}"
#: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}"
msgstr "Starting to unpack {}"
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:432
msgid "Failed to unpack image \"{}\""
msgstr "Failed to unpack image \"{}\""
#: src/modules/unpackfs/main.py:399
msgid "No mount point for root partition"
msgstr "No mount point for root partition"
#: src/modules/unpackfs/main.py:400
msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
msgstr "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
#: src/modules/unpackfs/main.py:405
msgid "Bad mount point for root partition"
msgstr "Bad mount point for root partition"
#: src/modules/unpackfs/main.py:406
msgid "rootMountPoint is \"{}\", which does not exist, doing nothing"
msgstr "rootMountPoint is \"{}\", which does not exist, doing nothing"
#: src/modules/unpackfs/main.py:422 src/modules/unpackfs/main.py:426
#: src/modules/unpackfs/main.py:446
msgid "Bad unsquash configuration"
msgstr "Bad unsquash configuration"
#: src/modules/unpackfs/main.py:423
msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel"
msgstr "The filesystem for \"{}\" ({}) is not supported by your current kernel"
#: src/modules/unpackfs/main.py:427
msgid "The source filesystem \"{}\" does not exist"
msgstr "The source filesystem \"{}\" does not exist"
#: src/modules/unpackfs/main.py:433
msgid ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed"
msgstr "" msgstr ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed"
#: src/modules/unpackfs/main.py:447 #: src/modules/mount/main.py:38
msgid "The destination \"{}\" in the target system is not a directory" msgid "Mounting partitions."
msgstr "The destination \"{}\" in the target system is not a directory" msgstr ""
#: src/modules/mount/main.py:150 src/modules/initcpiocfg/main.py:205
#: src/modules/initcpiocfg/main.py:209
#: src/modules/luksopenswaphookcfg/main.py:95
#: src/modules/luksopenswaphookcfg/main.py:99 src/modules/rawfs/main.py:173
#: src/modules/initramfscfg/main.py:94 src/modules/initramfscfg/main.py:98
#: src/modules/openrcdmcryptcfg/main.py:78
#: src/modules/openrcdmcryptcfg/main.py:82 src/modules/fstab/main.py:332
#: src/modules/fstab/main.py:338 src/modules/localecfg/main.py:144
#: src/modules/networkcfg/main.py:48
msgid "Configuration Error"
msgstr ""
#: src/modules/mount/main.py:151 src/modules/initcpiocfg/main.py:206
#: src/modules/luksopenswaphookcfg/main.py:96 src/modules/rawfs/main.py:174
#: src/modules/initramfscfg/main.py:95 src/modules/openrcdmcryptcfg/main.py:79
#: src/modules/fstab/main.py:333
msgid "No partitions are defined for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/services-systemd/main.py:35 #: src/modules/services-systemd/main.py:35
msgid "Configure systemd services" msgid "Configure systemd services"
msgstr "Configure systemd services" msgstr ""
#: src/modules/services-systemd/main.py:68 #: src/modules/services-systemd/main.py:68
#: src/modules/services-openrc/main.py:102 #: src/modules/services-openrc/main.py:102
msgid "Cannot modify service" msgid "Cannot modify service"
msgstr "Cannot modify service" msgstr ""
#: src/modules/services-systemd/main.py:69 #: src/modules/services-systemd/main.py:69
msgid "" msgid ""
"<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}." "<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}."
msgstr "" msgstr ""
"<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}."
#: src/modules/services-systemd/main.py:72 #: src/modules/services-systemd/main.py:72
#: src/modules/services-systemd/main.py:76 #: src/modules/services-systemd/main.py:76
msgid "Cannot enable systemd service <code>{name!s}</code>." msgid "Cannot enable systemd service <code>{name!s}</code>."
msgstr "Cannot enable systemd service <code>{name!s}</code>." msgstr ""
#: src/modules/services-systemd/main.py:74 #: src/modules/services-systemd/main.py:74
msgid "Cannot enable systemd target <code>{name!s}</code>." msgid "Cannot enable systemd target <code>{name!s}</code>."
msgstr "Cannot enable systemd target <code>{name!s}</code>." msgstr ""
#: src/modules/services-systemd/main.py:78 #: src/modules/services-systemd/main.py:78
msgid "Cannot disable systemd target <code>{name!s}</code>." msgid "Cannot disable systemd target <code>{name!s}</code>."
msgstr "Cannot disable systemd target <code>{name!s}</code>." msgstr ""
#: src/modules/services-systemd/main.py:80 #: src/modules/services-systemd/main.py:80
msgid "Cannot mask systemd unit <code>{name!s}</code>." msgid "Cannot mask systemd unit <code>{name!s}</code>."
msgstr "Cannot mask systemd unit <code>{name!s}</code>." msgstr ""
#: src/modules/services-systemd/main.py:82 #: src/modules/services-systemd/main.py:82
msgid "" msgid ""
"Unknown systemd commands <code>{command!s}</code> and " "Unknown systemd commands <code>{command!s}</code> and <code>{suffix!s}</"
"<code>{suffix!s}</code> for unit {name!s}." "code> for unit {name!s}."
msgstr "" msgstr ""
"Unknown systemd commands <code>{command!s}</code> and "
"<code>{suffix!s}</code> for unit {name!s}."
#: src/modules/dummypython/main.py:44 #: src/modules/umount/main.py:40
msgid "Dummy python job." msgid "Unmount file systems."
msgstr "Dummy python job." msgstr ""
#: src/modules/dummypython/main.py:46 src/modules/dummypython/main.py:102 #: src/modules/unpackfs/main.py:44
#: src/modules/dummypython/main.py:103 msgid "Filling up filesystems."
msgid "Dummy python step {}" msgstr ""
msgstr "Dummy python step {}"
#: src/modules/bootloader/main.py:51 #: src/modules/unpackfs/main.py:257
msgid "Install bootloader." msgid "rsync failed with error code {}."
msgstr "Install bootloader." msgstr ""
#: src/modules/localecfg/main.py:39 #: src/modules/unpackfs/main.py:302
msgid "Configuring locales." msgid "Unpacking image {}/{}, file {}/{}"
msgstr "Configuring locales." msgstr ""
#: src/modules/mount/main.py:38 #: src/modules/unpackfs/main.py:317
msgid "Mounting partitions." msgid "Starting to unpack {}"
msgstr "Mounting partitions." msgstr ""
#: src/modules/plymouthcfg/main.py:36 #: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:448
msgid "Configure Plymouth theme" msgid "Failed to unpack image \"{}\""
msgstr "Configure Plymouth theme" msgstr ""
#: src/modules/unpackfs/main.py:415
msgid "No mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:416
msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:421
msgid "Bad mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:422
msgid "rootMountPoint is \"{}\", which does not exist, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:438 src/modules/unpackfs/main.py:442
#: src/modules/unpackfs/main.py:462
msgid "Bad unsquash configuration"
msgstr ""
#: src/modules/unpackfs/main.py:439
msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel"
msgstr ""
#: src/modules/unpackfs/main.py:443
msgid "The source filesystem \"{}\" does not exist"
msgstr ""
#: src/modules/unpackfs/main.py:449
msgid ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed"
msgstr ""
#: src/modules/unpackfs/main.py:463
msgid "The destination \"{}\" in the target system is not a directory"
msgstr ""
#: src/modules/displaymanager/main.py:523
msgid "Cannot write KDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:524
msgid "KDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:585
msgid "Cannot write LXDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:586
msgid "LXDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:669
msgid "Cannot write LightDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:670
msgid "LightDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:744
msgid "Cannot configure LightDM"
msgstr ""
#: src/modules/displaymanager/main.py:745
msgid "No LightDM greeter installed."
msgstr ""
#: src/modules/displaymanager/main.py:776
msgid "Cannot write SLIM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:777
msgid "SLIM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:903
msgid "No display managers selected for the displaymanager module."
msgstr ""
#: src/modules/displaymanager/main.py:904
msgid ""
"The displaymanagers list is empty or undefined in bothglobalstorage and "
"displaymanager.conf."
msgstr ""
#: src/modules/displaymanager/main.py:986
msgid "Display manager configuration was incomplete"
msgstr ""
#: src/modules/initcpiocfg/main.py:37
msgid "Configuring mkinitcpio."
msgstr ""
#: src/modules/initcpiocfg/main.py:210
#: src/modules/luksopenswaphookcfg/main.py:100
#: src/modules/initramfscfg/main.py:99 src/modules/openrcdmcryptcfg/main.py:83
#: src/modules/fstab/main.py:339 src/modules/localecfg/main.py:145
#: src/modules/networkcfg/main.py:49
msgid "No root mount point is given for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/luksopenswaphookcfg/main.py:35 #: src/modules/luksopenswaphookcfg/main.py:35
msgid "Configuring encrypted swap." msgid "Configuring encrypted swap."
msgstr "Configuring encrypted swap." msgstr ""
#: src/modules/fstab/main.py:38 #: src/modules/rawfs/main.py:35
msgid "Writing fstab." msgid "Installing data."
msgstr "Writing fstab." msgstr ""
#: src/modules/services-openrc/main.py:38 #: src/modules/services-openrc/main.py:38
msgid "Configure OpenRC services" msgid "Configure OpenRC services"
msgstr "Configure OpenRC services" msgstr ""
#: src/modules/services-openrc/main.py:66 #: src/modules/services-openrc/main.py:66
msgid "Cannot add service {name!s} to run-level {level!s}." msgid "Cannot add service {name!s} to run-level {level!s}."
msgstr "Cannot add service {name!s} to run-level {level!s}." msgstr ""
#: src/modules/services-openrc/main.py:68 #: src/modules/services-openrc/main.py:68
msgid "Cannot remove service {name!s} from run-level {level!s}." msgid "Cannot remove service {name!s} from run-level {level!s}."
msgstr "Cannot remove service {name!s} from run-level {level!s}." msgstr ""
#: src/modules/services-openrc/main.py:70 #: src/modules/services-openrc/main.py:70
msgid "" msgid ""
"Unknown service-action <code>{arg!s}</code> for service {name!s} in run-" "Unknown service-action <code>{arg!s}</code> for service {name!s} in run-"
"level {level!s}." "level {level!s}."
msgstr "" msgstr ""
"Unknown service-action <code>{arg!s}</code> for service {name!s} in run-"
"level {level!s}."
#: src/modules/services-openrc/main.py:103 #: src/modules/services-openrc/main.py:103
msgid "" msgid ""
"<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}." "<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}."
msgstr "" msgstr ""
"<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}."
#: src/modules/services-openrc/main.py:110 #: src/modules/services-openrc/main.py:110
msgid "Target runlevel does not exist" msgid "Target runlevel does not exist"
msgstr "Target runlevel does not exist" msgstr ""
#: src/modules/services-openrc/main.py:111 #: src/modules/services-openrc/main.py:111
msgid "" msgid ""
"The path for runlevel {level!s} is <code>{path!s}</code>, which does not " "The path for runlevel {level!s} is <code>{path!s}</code>, which does not "
"exist." "exist."
msgstr "" msgstr ""
"The path for runlevel {level!s} is <code>{path!s}</code>, which does not "
"exist."
#: src/modules/services-openrc/main.py:119 #: src/modules/services-openrc/main.py:119
msgid "Target service does not exist" msgid "Target service does not exist"
msgstr "Target service does not exist" msgstr ""
#: src/modules/services-openrc/main.py:120 #: src/modules/services-openrc/main.py:120
msgid "" msgid ""
"The path for service {name!s} is <code>{path!s}</code>, which does not " "The path for service {name!s} is <code>{path!s}</code>, which does not exist."
"exist."
msgstr "" msgstr ""
"The path for service {name!s} is <code>{path!s}</code>, which does not "
"exist."
#: src/modules/dracut/main.py:36 #: src/modules/plymouthcfg/main.py:36
msgid "Creating initramfs with dracut." msgid "Configure Plymouth theme"
msgstr "Creating initramfs with dracut."
#: src/modules/dracut/main.py:58
msgid "Failed to run dracut on the target"
msgstr "Failed to run dracut on the target"
#: src/modules/dracut/main.py:59
msgid "The exit code was {}"
msgstr "The exit code was {}"
#: src/modules/grubcfg/main.py:37
msgid "Configure GRUB."
msgstr "Configure GRUB."
#: src/modules/displaymanager/main.py:515
msgid "Cannot write KDM configuration file"
msgstr "Cannot write KDM configuration file"
#: src/modules/displaymanager/main.py:516
msgid "KDM config file {!s} does not exist"
msgstr "KDM config file {!s} does not exist"
#: src/modules/displaymanager/main.py:577
msgid "Cannot write LXDM configuration file"
msgstr "Cannot write LXDM configuration file"
#: src/modules/displaymanager/main.py:578
msgid "LXDM config file {!s} does not exist"
msgstr "LXDM config file {!s} does not exist"
#: src/modules/displaymanager/main.py:661
msgid "Cannot write LightDM configuration file"
msgstr "Cannot write LightDM configuration file"
#: src/modules/displaymanager/main.py:662
msgid "LightDM config file {!s} does not exist"
msgstr "LightDM config file {!s} does not exist"
#: src/modules/displaymanager/main.py:736
msgid "Cannot configure LightDM"
msgstr "Cannot configure LightDM"
#: src/modules/displaymanager/main.py:737
msgid "No LightDM greeter installed."
msgstr "No LightDM greeter installed."
#: src/modules/displaymanager/main.py:768
msgid "Cannot write SLIM configuration file"
msgstr "Cannot write SLIM configuration file"
#: src/modules/displaymanager/main.py:769
msgid "SLIM config file {!s} does not exist"
msgstr "SLIM config file {!s} does not exist"
#: src/modules/displaymanager/main.py:895
msgid "No display managers selected for the displaymanager module."
msgstr "No display managers selected for the displaymanager module."
#: src/modules/displaymanager/main.py:896
msgid ""
"The displaymanagers list is empty or undefined in bothglobalstorage and "
"displaymanager.conf."
msgstr "" msgstr ""
"The displaymanagers list is empty or undefined in bothglobalstorage and "
"displaymanager.conf."
#: src/modules/displaymanager/main.py:978 #: src/modules/packages/main.py:59 src/modules/packages/main.py:68
msgid "Display manager configuration was incomplete" #: src/modules/packages/main.py:78
msgstr "Display manager configuration was incomplete" msgid "Install packages."
msgstr ""
#: src/modules/initramfscfg/main.py:41 #: src/modules/packages/main.py:66
msgid "Configuring initramfs." #, python-format
msgstr "Configuring initramfs." msgid "Processing packages (%(count)d / %(total)d)"
msgstr ""
#: src/modules/packages/main.py:71
#, python-format
msgid "Installing one package."
msgid_plural "Installing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/packages/main.py:74
#, python-format
msgid "Removing one package."
msgid_plural "Removing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/bootloader/main.py:51
msgid "Install bootloader."
msgstr ""
#: src/modules/hwclock/main.py:35 #: src/modules/hwclock/main.py:35
msgid "Setting hardware clock." msgid "Setting hardware clock."
msgstr "Setting hardware clock." msgstr ""
#: src/modules/rawfs/main.py:35 #: src/modules/dracut/main.py:36
msgid "Installing data." msgid "Creating initramfs with dracut."
msgstr "Installing data." msgstr ""
#: src/modules/dracut/main.py:58
msgid "Failed to run dracut on the target"
msgstr ""
#: src/modules/dracut/main.py:59
msgid "The exit code was {}"
msgstr ""
#: src/modules/initramfscfg/main.py:41
msgid "Configuring initramfs."
msgstr ""
#: src/modules/openrcdmcryptcfg/main.py:34
msgid "Configuring OpenRC dmcrypt service."
msgstr ""
#: src/modules/fstab/main.py:38
msgid "Writing fstab."
msgstr ""
#: src/modules/dummypython/main.py:44
msgid "Dummy python job."
msgstr ""
#: src/modules/dummypython/main.py:46 src/modules/dummypython/main.py:102
#: src/modules/dummypython/main.py:103
msgid "Dummy python step {}"
msgstr ""
#: src/modules/localecfg/main.py:39
msgid "Configuring locales."
msgstr ""
#: src/modules/networkcfg/main.py:37
msgid "Saving network configuration."
msgstr ""

Binary file not shown.

View File

@ -0,0 +1,336 @@
# 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: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n"
"Language-Team: Azerbaijani (https://www.transifex.com/calamares/teams/20061/az/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: az\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: src/modules/packages/main.py:59 src/modules/packages/main.py:68
#: src/modules/packages/main.py:78
msgid "Install packages."
msgstr ""
#: src/modules/packages/main.py:66
#, python-format
msgid "Processing packages (%(count)d / %(total)d)"
msgstr ""
#: src/modules/packages/main.py:71
#, python-format
msgid "Installing one package."
msgid_plural "Installing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/packages/main.py:74
#, python-format
msgid "Removing one package."
msgid_plural "Removing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/networkcfg/main.py:37
msgid "Saving network configuration."
msgstr ""
#: src/modules/networkcfg/main.py:48 src/modules/initcpiocfg/main.py:205
#: src/modules/initcpiocfg/main.py:209 src/modules/openrcdmcryptcfg/main.py:78
#: src/modules/openrcdmcryptcfg/main.py:82 src/modules/localecfg/main.py:144
#: src/modules/mount/main.py:145 src/modules/luksopenswaphookcfg/main.py:95
#: src/modules/luksopenswaphookcfg/main.py:99 src/modules/fstab/main.py:332
#: src/modules/fstab/main.py:338 src/modules/initramfscfg/main.py:94
#: src/modules/initramfscfg/main.py:98 src/modules/rawfs/main.py:171
msgid "Configuration Error"
msgstr ""
#: src/modules/networkcfg/main.py:49 src/modules/initcpiocfg/main.py:210
#: src/modules/openrcdmcryptcfg/main.py:83 src/modules/localecfg/main.py:145
#: src/modules/luksopenswaphookcfg/main.py:100 src/modules/fstab/main.py:339
#: src/modules/initramfscfg/main.py:99
msgid "No root mount point is given for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/umount/main.py:40
msgid "Unmount file systems."
msgstr ""
#: src/modules/initcpiocfg/main.py:37
msgid "Configuring mkinitcpio."
msgstr ""
#: src/modules/initcpiocfg/main.py:206 src/modules/openrcdmcryptcfg/main.py:79
#: src/modules/mount/main.py:146 src/modules/luksopenswaphookcfg/main.py:96
#: src/modules/fstab/main.py:333 src/modules/initramfscfg/main.py:95
#: src/modules/rawfs/main.py:172
msgid "No partitions are defined for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/openrcdmcryptcfg/main.py:34
msgid "Configuring OpenRC dmcrypt service."
msgstr ""
#: src/modules/unpackfs/main.py:44
msgid "Filling up filesystems."
msgstr ""
#: src/modules/unpackfs/main.py:257
msgid "rsync failed with error code {}."
msgstr ""
#: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}"
msgstr ""
#: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}"
msgstr ""
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:432
msgid "Failed to unpack image \"{}\""
msgstr ""
#: src/modules/unpackfs/main.py:399
msgid "No mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:400
msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:405
msgid "Bad mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:406
msgid "rootMountPoint is \"{}\", which does not exist, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:422 src/modules/unpackfs/main.py:426
#: src/modules/unpackfs/main.py:446
msgid "Bad unsquash configuration"
msgstr ""
#: src/modules/unpackfs/main.py:423
msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel"
msgstr ""
#: src/modules/unpackfs/main.py:427
msgid "The source filesystem \"{}\" does not exist"
msgstr ""
#: src/modules/unpackfs/main.py:433
msgid ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed"
msgstr ""
#: src/modules/unpackfs/main.py:447
msgid "The destination \"{}\" in the target system is not a directory"
msgstr ""
#: src/modules/services-systemd/main.py:35
msgid "Configure systemd services"
msgstr ""
#: src/modules/services-systemd/main.py:68
#: src/modules/services-openrc/main.py:102
msgid "Cannot modify service"
msgstr ""
#: src/modules/services-systemd/main.py:69
msgid ""
"<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-systemd/main.py:72
#: src/modules/services-systemd/main.py:76
msgid "Cannot enable systemd service <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:74
msgid "Cannot enable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:78
msgid "Cannot disable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:80
msgid "Cannot mask systemd unit <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:82
msgid ""
"Unknown systemd commands <code>{command!s}</code> and "
"<code>{suffix!s}</code> for unit {name!s}."
msgstr ""
#: src/modules/dummypython/main.py:44
msgid "Dummy python job."
msgstr ""
#: src/modules/dummypython/main.py:46 src/modules/dummypython/main.py:102
#: src/modules/dummypython/main.py:103
msgid "Dummy python step {}"
msgstr ""
#: src/modules/bootloader/main.py:51
msgid "Install bootloader."
msgstr ""
#: src/modules/localecfg/main.py:39
msgid "Configuring locales."
msgstr ""
#: src/modules/mount/main.py:38
msgid "Mounting partitions."
msgstr ""
#: src/modules/plymouthcfg/main.py:36
msgid "Configure Plymouth theme"
msgstr ""
#: src/modules/luksopenswaphookcfg/main.py:35
msgid "Configuring encrypted swap."
msgstr ""
#: src/modules/fstab/main.py:38
msgid "Writing fstab."
msgstr ""
#: src/modules/services-openrc/main.py:38
msgid "Configure OpenRC services"
msgstr ""
#: src/modules/services-openrc/main.py:66
msgid "Cannot add service {name!s} to run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:68
msgid "Cannot remove service {name!s} from run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:70
msgid ""
"Unknown service-action <code>{arg!s}</code> for service {name!s} in run-"
"level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:103
msgid ""
"<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-openrc/main.py:110
msgid "Target runlevel does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:111
msgid ""
"The path for runlevel {level!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/services-openrc/main.py:119
msgid "Target service does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:120
msgid ""
"The path for service {name!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/dracut/main.py:36
msgid "Creating initramfs with dracut."
msgstr ""
#: src/modules/dracut/main.py:58
msgid "Failed to run dracut on the target"
msgstr ""
#: src/modules/dracut/main.py:59
msgid "The exit code was {}"
msgstr ""
#: src/modules/grubcfg/main.py:37
msgid "Configure GRUB."
msgstr ""
#: src/modules/displaymanager/main.py:515
msgid "Cannot write KDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:516
msgid "KDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:577
msgid "Cannot write LXDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:578
msgid "LXDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:661
msgid "Cannot write LightDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:662
msgid "LightDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:736
msgid "Cannot configure LightDM"
msgstr ""
#: src/modules/displaymanager/main.py:737
msgid "No LightDM greeter installed."
msgstr ""
#: src/modules/displaymanager/main.py:768
msgid "Cannot write SLIM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:769
msgid "SLIM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:895
msgid "No display managers selected for the displaymanager module."
msgstr ""
#: src/modules/displaymanager/main.py:896
msgid ""
"The displaymanagers list is empty or undefined in bothglobalstorage and "
"displaymanager.conf."
msgstr ""
#: src/modules/displaymanager/main.py:978
msgid "Display manager configuration was incomplete"
msgstr ""
#: src/modules/initramfscfg/main.py:41
msgid "Configuring initramfs."
msgstr ""
#: src/modules/hwclock/main.py:35
msgid "Setting hardware clock."
msgstr ""
#: src/modules/rawfs/main.py:35
msgid "Installing data."
msgstr ""

Binary file not shown.

View File

@ -0,0 +1,336 @@
# 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: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n"
"Language-Team: Azerbaijani (Azerbaijan) (https://www.transifex.com/calamares/teams/20061/az_AZ/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: az_AZ\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: src/modules/packages/main.py:59 src/modules/packages/main.py:68
#: src/modules/packages/main.py:78
msgid "Install packages."
msgstr ""
#: src/modules/packages/main.py:66
#, python-format
msgid "Processing packages (%(count)d / %(total)d)"
msgstr ""
#: src/modules/packages/main.py:71
#, python-format
msgid "Installing one package."
msgid_plural "Installing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/packages/main.py:74
#, python-format
msgid "Removing one package."
msgid_plural "Removing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/networkcfg/main.py:37
msgid "Saving network configuration."
msgstr ""
#: src/modules/networkcfg/main.py:48 src/modules/initcpiocfg/main.py:205
#: src/modules/initcpiocfg/main.py:209 src/modules/openrcdmcryptcfg/main.py:78
#: src/modules/openrcdmcryptcfg/main.py:82 src/modules/localecfg/main.py:144
#: src/modules/mount/main.py:145 src/modules/luksopenswaphookcfg/main.py:95
#: src/modules/luksopenswaphookcfg/main.py:99 src/modules/fstab/main.py:332
#: src/modules/fstab/main.py:338 src/modules/initramfscfg/main.py:94
#: src/modules/initramfscfg/main.py:98 src/modules/rawfs/main.py:171
msgid "Configuration Error"
msgstr ""
#: src/modules/networkcfg/main.py:49 src/modules/initcpiocfg/main.py:210
#: src/modules/openrcdmcryptcfg/main.py:83 src/modules/localecfg/main.py:145
#: src/modules/luksopenswaphookcfg/main.py:100 src/modules/fstab/main.py:339
#: src/modules/initramfscfg/main.py:99
msgid "No root mount point is given for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/umount/main.py:40
msgid "Unmount file systems."
msgstr ""
#: src/modules/initcpiocfg/main.py:37
msgid "Configuring mkinitcpio."
msgstr ""
#: src/modules/initcpiocfg/main.py:206 src/modules/openrcdmcryptcfg/main.py:79
#: src/modules/mount/main.py:146 src/modules/luksopenswaphookcfg/main.py:96
#: src/modules/fstab/main.py:333 src/modules/initramfscfg/main.py:95
#: src/modules/rawfs/main.py:172
msgid "No partitions are defined for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/openrcdmcryptcfg/main.py:34
msgid "Configuring OpenRC dmcrypt service."
msgstr ""
#: src/modules/unpackfs/main.py:44
msgid "Filling up filesystems."
msgstr ""
#: src/modules/unpackfs/main.py:257
msgid "rsync failed with error code {}."
msgstr ""
#: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}"
msgstr ""
#: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}"
msgstr ""
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:432
msgid "Failed to unpack image \"{}\""
msgstr ""
#: src/modules/unpackfs/main.py:399
msgid "No mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:400
msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:405
msgid "Bad mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:406
msgid "rootMountPoint is \"{}\", which does not exist, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:422 src/modules/unpackfs/main.py:426
#: src/modules/unpackfs/main.py:446
msgid "Bad unsquash configuration"
msgstr ""
#: src/modules/unpackfs/main.py:423
msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel"
msgstr ""
#: src/modules/unpackfs/main.py:427
msgid "The source filesystem \"{}\" does not exist"
msgstr ""
#: src/modules/unpackfs/main.py:433
msgid ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed"
msgstr ""
#: src/modules/unpackfs/main.py:447
msgid "The destination \"{}\" in the target system is not a directory"
msgstr ""
#: src/modules/services-systemd/main.py:35
msgid "Configure systemd services"
msgstr ""
#: src/modules/services-systemd/main.py:68
#: src/modules/services-openrc/main.py:102
msgid "Cannot modify service"
msgstr ""
#: src/modules/services-systemd/main.py:69
msgid ""
"<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-systemd/main.py:72
#: src/modules/services-systemd/main.py:76
msgid "Cannot enable systemd service <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:74
msgid "Cannot enable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:78
msgid "Cannot disable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:80
msgid "Cannot mask systemd unit <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:82
msgid ""
"Unknown systemd commands <code>{command!s}</code> and "
"<code>{suffix!s}</code> for unit {name!s}."
msgstr ""
#: src/modules/dummypython/main.py:44
msgid "Dummy python job."
msgstr ""
#: src/modules/dummypython/main.py:46 src/modules/dummypython/main.py:102
#: src/modules/dummypython/main.py:103
msgid "Dummy python step {}"
msgstr ""
#: src/modules/bootloader/main.py:51
msgid "Install bootloader."
msgstr ""
#: src/modules/localecfg/main.py:39
msgid "Configuring locales."
msgstr ""
#: src/modules/mount/main.py:38
msgid "Mounting partitions."
msgstr ""
#: src/modules/plymouthcfg/main.py:36
msgid "Configure Plymouth theme"
msgstr ""
#: src/modules/luksopenswaphookcfg/main.py:35
msgid "Configuring encrypted swap."
msgstr ""
#: src/modules/fstab/main.py:38
msgid "Writing fstab."
msgstr ""
#: src/modules/services-openrc/main.py:38
msgid "Configure OpenRC services"
msgstr ""
#: src/modules/services-openrc/main.py:66
msgid "Cannot add service {name!s} to run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:68
msgid "Cannot remove service {name!s} from run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:70
msgid ""
"Unknown service-action <code>{arg!s}</code> for service {name!s} in run-"
"level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:103
msgid ""
"<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-openrc/main.py:110
msgid "Target runlevel does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:111
msgid ""
"The path for runlevel {level!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/services-openrc/main.py:119
msgid "Target service does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:120
msgid ""
"The path for service {name!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/dracut/main.py:36
msgid "Creating initramfs with dracut."
msgstr ""
#: src/modules/dracut/main.py:58
msgid "Failed to run dracut on the target"
msgstr ""
#: src/modules/dracut/main.py:59
msgid "The exit code was {}"
msgstr ""
#: src/modules/grubcfg/main.py:37
msgid "Configure GRUB."
msgstr ""
#: src/modules/displaymanager/main.py:515
msgid "Cannot write KDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:516
msgid "KDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:577
msgid "Cannot write LXDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:578
msgid "LXDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:661
msgid "Cannot write LightDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:662
msgid "LightDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:736
msgid "Cannot configure LightDM"
msgstr ""
#: src/modules/displaymanager/main.py:737
msgid "No LightDM greeter installed."
msgstr ""
#: src/modules/displaymanager/main.py:768
msgid "Cannot write SLIM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:769
msgid "SLIM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:895
msgid "No display managers selected for the displaymanager module."
msgstr ""
#: src/modules/displaymanager/main.py:896
msgid ""
"The displaymanagers list is empty or undefined in bothglobalstorage and "
"displaymanager.conf."
msgstr ""
#: src/modules/displaymanager/main.py:978
msgid "Display manager configuration was incomplete"
msgstr ""
#: src/modules/initramfscfg/main.py:41
msgid "Configuring initramfs."
msgstr ""
#: src/modules/hwclock/main.py:35
msgid "Setting hardware clock."
msgstr ""
#: src/modules/rawfs/main.py:35
msgid "Installing data."
msgstr ""

Binary file not shown.

View File

@ -0,0 +1,336 @@
# 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: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n"
"Language-Team: Bengali (https://www.transifex.com/calamares/teams/20061/bn/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: bn\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: src/modules/packages/main.py:59 src/modules/packages/main.py:68
#: src/modules/packages/main.py:78
msgid "Install packages."
msgstr ""
#: src/modules/packages/main.py:66
#, python-format
msgid "Processing packages (%(count)d / %(total)d)"
msgstr ""
#: src/modules/packages/main.py:71
#, python-format
msgid "Installing one package."
msgid_plural "Installing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/packages/main.py:74
#, python-format
msgid "Removing one package."
msgid_plural "Removing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
#: src/modules/networkcfg/main.py:37
msgid "Saving network configuration."
msgstr ""
#: src/modules/networkcfg/main.py:48 src/modules/initcpiocfg/main.py:205
#: src/modules/initcpiocfg/main.py:209 src/modules/openrcdmcryptcfg/main.py:78
#: src/modules/openrcdmcryptcfg/main.py:82 src/modules/localecfg/main.py:144
#: src/modules/mount/main.py:145 src/modules/luksopenswaphookcfg/main.py:95
#: src/modules/luksopenswaphookcfg/main.py:99 src/modules/fstab/main.py:332
#: src/modules/fstab/main.py:338 src/modules/initramfscfg/main.py:94
#: src/modules/initramfscfg/main.py:98 src/modules/rawfs/main.py:171
msgid "Configuration Error"
msgstr ""
#: src/modules/networkcfg/main.py:49 src/modules/initcpiocfg/main.py:210
#: src/modules/openrcdmcryptcfg/main.py:83 src/modules/localecfg/main.py:145
#: src/modules/luksopenswaphookcfg/main.py:100 src/modules/fstab/main.py:339
#: src/modules/initramfscfg/main.py:99
msgid "No root mount point is given for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/umount/main.py:40
msgid "Unmount file systems."
msgstr ""
#: src/modules/initcpiocfg/main.py:37
msgid "Configuring mkinitcpio."
msgstr ""
#: src/modules/initcpiocfg/main.py:206 src/modules/openrcdmcryptcfg/main.py:79
#: src/modules/mount/main.py:146 src/modules/luksopenswaphookcfg/main.py:96
#: src/modules/fstab/main.py:333 src/modules/initramfscfg/main.py:95
#: src/modules/rawfs/main.py:172
msgid "No partitions are defined for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/openrcdmcryptcfg/main.py:34
msgid "Configuring OpenRC dmcrypt service."
msgstr ""
#: src/modules/unpackfs/main.py:44
msgid "Filling up filesystems."
msgstr ""
#: src/modules/unpackfs/main.py:257
msgid "rsync failed with error code {}."
msgstr ""
#: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}"
msgstr ""
#: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}"
msgstr ""
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:432
msgid "Failed to unpack image \"{}\""
msgstr ""
#: src/modules/unpackfs/main.py:399
msgid "No mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:400
msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:405
msgid "Bad mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:406
msgid "rootMountPoint is \"{}\", which does not exist, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:422 src/modules/unpackfs/main.py:426
#: src/modules/unpackfs/main.py:446
msgid "Bad unsquash configuration"
msgstr ""
#: src/modules/unpackfs/main.py:423
msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel"
msgstr ""
#: src/modules/unpackfs/main.py:427
msgid "The source filesystem \"{}\" does not exist"
msgstr ""
#: src/modules/unpackfs/main.py:433
msgid ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed"
msgstr ""
#: src/modules/unpackfs/main.py:447
msgid "The destination \"{}\" in the target system is not a directory"
msgstr ""
#: src/modules/services-systemd/main.py:35
msgid "Configure systemd services"
msgstr ""
#: src/modules/services-systemd/main.py:68
#: src/modules/services-openrc/main.py:102
msgid "Cannot modify service"
msgstr ""
#: src/modules/services-systemd/main.py:69
msgid ""
"<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-systemd/main.py:72
#: src/modules/services-systemd/main.py:76
msgid "Cannot enable systemd service <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:74
msgid "Cannot enable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:78
msgid "Cannot disable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:80
msgid "Cannot mask systemd unit <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:82
msgid ""
"Unknown systemd commands <code>{command!s}</code> and "
"<code>{suffix!s}</code> for unit {name!s}."
msgstr ""
#: src/modules/dummypython/main.py:44
msgid "Dummy python job."
msgstr ""
#: src/modules/dummypython/main.py:46 src/modules/dummypython/main.py:102
#: src/modules/dummypython/main.py:103
msgid "Dummy python step {}"
msgstr ""
#: src/modules/bootloader/main.py:51
msgid "Install bootloader."
msgstr ""
#: src/modules/localecfg/main.py:39
msgid "Configuring locales."
msgstr ""
#: src/modules/mount/main.py:38
msgid "Mounting partitions."
msgstr ""
#: src/modules/plymouthcfg/main.py:36
msgid "Configure Plymouth theme"
msgstr ""
#: src/modules/luksopenswaphookcfg/main.py:35
msgid "Configuring encrypted swap."
msgstr ""
#: src/modules/fstab/main.py:38
msgid "Writing fstab."
msgstr ""
#: src/modules/services-openrc/main.py:38
msgid "Configure OpenRC services"
msgstr ""
#: src/modules/services-openrc/main.py:66
msgid "Cannot add service {name!s} to run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:68
msgid "Cannot remove service {name!s} from run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:70
msgid ""
"Unknown service-action <code>{arg!s}</code> for service {name!s} in run-"
"level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:103
msgid ""
"<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-openrc/main.py:110
msgid "Target runlevel does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:111
msgid ""
"The path for runlevel {level!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/services-openrc/main.py:119
msgid "Target service does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:120
msgid ""
"The path for service {name!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/dracut/main.py:36
msgid "Creating initramfs with dracut."
msgstr ""
#: src/modules/dracut/main.py:58
msgid "Failed to run dracut on the target"
msgstr ""
#: src/modules/dracut/main.py:59
msgid "The exit code was {}"
msgstr ""
#: src/modules/grubcfg/main.py:37
msgid "Configure GRUB."
msgstr ""
#: src/modules/displaymanager/main.py:515
msgid "Cannot write KDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:516
msgid "KDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:577
msgid "Cannot write LXDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:578
msgid "LXDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:661
msgid "Cannot write LightDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:662
msgid "LightDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:736
msgid "Cannot configure LightDM"
msgstr ""
#: src/modules/displaymanager/main.py:737
msgid "No LightDM greeter installed."
msgstr ""
#: src/modules/displaymanager/main.py:768
msgid "Cannot write SLIM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:769
msgid "SLIM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:895
msgid "No display managers selected for the displaymanager module."
msgstr ""
#: src/modules/displaymanager/main.py:896
msgid ""
"The displaymanagers list is empty or undefined in bothglobalstorage and "
"displaymanager.conf."
msgstr ""
#: src/modules/displaymanager/main.py:978
msgid "Display manager configuration was incomplete"
msgstr ""
#: src/modules/initramfscfg/main.py:41
msgid "Configuring initramfs."
msgstr ""
#: src/modules/hwclock/main.py:35
msgid "Setting hardware clock."
msgstr ""
#: src/modules/rawfs/main.py:35
msgid "Installing data."
msgstr ""

Binary file not shown.

View File

@ -4,7 +4,7 @@
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# #
# Translators: # Translators:
# Panwar108 <caspian7pena@gmail.com>, 2019 # Panwar108 <caspian7pena@gmail.com>, 2020
# #
#, fuzzy #, fuzzy
msgid "" msgid ""
@ -13,7 +13,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-04-30 23:13+0200\n" "POT-Creation-Date: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n" "PO-Revision-Date: 2017-08-09 10:34+0000\n"
"Last-Translator: Panwar108 <caspian7pena@gmail.com>, 2019\n" "Last-Translator: Panwar108 <caspian7pena@gmail.com>, 2020\n"
"Language-Team: Hindi (https://www.transifex.com/calamares/teams/20061/hi/)\n" "Language-Team: Hindi (https://www.transifex.com/calamares/teams/20061/hi/)\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"
@ -84,7 +84,7 @@ msgstr "<pre>{!s}</pre> के उपयोग हेतु कोई विभ
#: src/modules/openrcdmcryptcfg/main.py:34 #: src/modules/openrcdmcryptcfg/main.py:34
msgid "Configuring OpenRC dmcrypt service." msgid "Configuring OpenRC dmcrypt service."
msgstr "OpenRC dmcrypt सेवा को विन्यस्त करना।" msgstr "OpenRC dmcrypt सेवा विन्यस्त करना।"
#: src/modules/unpackfs/main.py:44 #: src/modules/unpackfs/main.py:44
msgid "Filling up filesystems." msgid "Filling up filesystems."
@ -96,11 +96,11 @@ msgstr "rsync त्रुटि कोड {} के साथ विफल।"
#: src/modules/unpackfs/main.py:302 #: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}" msgid "Unpacking image {}/{}, file {}/{}"
msgstr "" msgstr "इमेज फ़ाइल {}/{}, फ़ाइल {}/{} सम्पीड़ित की जा रही है"
#: src/modules/unpackfs/main.py:317 #: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}" msgid "Starting to unpack {}"
msgstr "" msgstr "{} हेतु संपीड़न प्रक्रिया आरंभ हो रही है "
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:432 #: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:432
msgid "Failed to unpack image \"{}\"" msgid "Failed to unpack image \"{}\""
@ -129,7 +129,7 @@ msgstr "ख़राब unsquash विन्यास सेटिंग्स"
#: src/modules/unpackfs/main.py:423 #: src/modules/unpackfs/main.py:423
msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel" msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel"
msgstr "" msgstr "\"{}\" ({}) हेतु फ़ाइल सिस्टम आपके वर्तमान कर्नेल द्वारा समर्थित नहीं है"
#: src/modules/unpackfs/main.py:427 #: src/modules/unpackfs/main.py:427
msgid "The source filesystem \"{}\" does not exist" msgid "The source filesystem \"{}\" does not exist"

View File

@ -5,7 +5,7 @@
# #
# Translators: # Translators:
# Adriaan de Groot <groot@kde.org>, 2018 # Adriaan de Groot <groot@kde.org>, 2018
# Balázs Meskó <mesko.balazs@fsf.hu>, 2018 # Balázs Meskó <meskobalazs@mailbox.org>, 2018
# miku84, 2019 # miku84, 2019
# Lajos Pasztor <mrlajos@gmail.com>, 2019 # Lajos Pasztor <mrlajos@gmail.com>, 2019
# #

Binary file not shown.

View File

@ -0,0 +1,338 @@
# 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: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n"
"Language-Team: Latvian (https://www.transifex.com/calamares/teams/20061/lv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: lv\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
#: src/modules/packages/main.py:59 src/modules/packages/main.py:68
#: src/modules/packages/main.py:78
msgid "Install packages."
msgstr ""
#: src/modules/packages/main.py:66
#, python-format
msgid "Processing packages (%(count)d / %(total)d)"
msgstr ""
#: src/modules/packages/main.py:71
#, python-format
msgid "Installing one package."
msgid_plural "Installing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
#: src/modules/packages/main.py:74
#, python-format
msgid "Removing one package."
msgid_plural "Removing %(num)d packages."
msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
#: src/modules/networkcfg/main.py:37
msgid "Saving network configuration."
msgstr ""
#: src/modules/networkcfg/main.py:48 src/modules/initcpiocfg/main.py:205
#: src/modules/initcpiocfg/main.py:209 src/modules/openrcdmcryptcfg/main.py:78
#: src/modules/openrcdmcryptcfg/main.py:82 src/modules/localecfg/main.py:144
#: src/modules/mount/main.py:145 src/modules/luksopenswaphookcfg/main.py:95
#: src/modules/luksopenswaphookcfg/main.py:99 src/modules/fstab/main.py:332
#: src/modules/fstab/main.py:338 src/modules/initramfscfg/main.py:94
#: src/modules/initramfscfg/main.py:98 src/modules/rawfs/main.py:171
msgid "Configuration Error"
msgstr ""
#: src/modules/networkcfg/main.py:49 src/modules/initcpiocfg/main.py:210
#: src/modules/openrcdmcryptcfg/main.py:83 src/modules/localecfg/main.py:145
#: src/modules/luksopenswaphookcfg/main.py:100 src/modules/fstab/main.py:339
#: src/modules/initramfscfg/main.py:99
msgid "No root mount point is given for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/umount/main.py:40
msgid "Unmount file systems."
msgstr ""
#: src/modules/initcpiocfg/main.py:37
msgid "Configuring mkinitcpio."
msgstr ""
#: src/modules/initcpiocfg/main.py:206 src/modules/openrcdmcryptcfg/main.py:79
#: src/modules/mount/main.py:146 src/modules/luksopenswaphookcfg/main.py:96
#: src/modules/fstab/main.py:333 src/modules/initramfscfg/main.py:95
#: src/modules/rawfs/main.py:172
msgid "No partitions are defined for <pre>{!s}</pre> to use."
msgstr ""
#: src/modules/openrcdmcryptcfg/main.py:34
msgid "Configuring OpenRC dmcrypt service."
msgstr ""
#: src/modules/unpackfs/main.py:44
msgid "Filling up filesystems."
msgstr ""
#: src/modules/unpackfs/main.py:257
msgid "rsync failed with error code {}."
msgstr ""
#: src/modules/unpackfs/main.py:302
msgid "Unpacking image {}/{}, file {}/{}"
msgstr ""
#: src/modules/unpackfs/main.py:317
msgid "Starting to unpack {}"
msgstr ""
#: src/modules/unpackfs/main.py:326 src/modules/unpackfs/main.py:432
msgid "Failed to unpack image \"{}\""
msgstr ""
#: src/modules/unpackfs/main.py:399
msgid "No mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:400
msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:405
msgid "Bad mount point for root partition"
msgstr ""
#: src/modules/unpackfs/main.py:406
msgid "rootMountPoint is \"{}\", which does not exist, doing nothing"
msgstr ""
#: src/modules/unpackfs/main.py:422 src/modules/unpackfs/main.py:426
#: src/modules/unpackfs/main.py:446
msgid "Bad unsquash configuration"
msgstr ""
#: src/modules/unpackfs/main.py:423
msgid "The filesystem for \"{}\" ({}) is not supported by your current kernel"
msgstr ""
#: src/modules/unpackfs/main.py:427
msgid "The source filesystem \"{}\" does not exist"
msgstr ""
#: src/modules/unpackfs/main.py:433
msgid ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed"
msgstr ""
#: src/modules/unpackfs/main.py:447
msgid "The destination \"{}\" in the target system is not a directory"
msgstr ""
#: src/modules/services-systemd/main.py:35
msgid "Configure systemd services"
msgstr ""
#: src/modules/services-systemd/main.py:68
#: src/modules/services-openrc/main.py:102
msgid "Cannot modify service"
msgstr ""
#: src/modules/services-systemd/main.py:69
msgid ""
"<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-systemd/main.py:72
#: src/modules/services-systemd/main.py:76
msgid "Cannot enable systemd service <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:74
msgid "Cannot enable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:78
msgid "Cannot disable systemd target <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:80
msgid "Cannot mask systemd unit <code>{name!s}</code>."
msgstr ""
#: src/modules/services-systemd/main.py:82
msgid ""
"Unknown systemd commands <code>{command!s}</code> and "
"<code>{suffix!s}</code> for unit {name!s}."
msgstr ""
#: src/modules/dummypython/main.py:44
msgid "Dummy python job."
msgstr ""
#: src/modules/dummypython/main.py:46 src/modules/dummypython/main.py:102
#: src/modules/dummypython/main.py:103
msgid "Dummy python step {}"
msgstr ""
#: src/modules/bootloader/main.py:51
msgid "Install bootloader."
msgstr ""
#: src/modules/localecfg/main.py:39
msgid "Configuring locales."
msgstr ""
#: src/modules/mount/main.py:38
msgid "Mounting partitions."
msgstr ""
#: src/modules/plymouthcfg/main.py:36
msgid "Configure Plymouth theme"
msgstr ""
#: src/modules/luksopenswaphookcfg/main.py:35
msgid "Configuring encrypted swap."
msgstr ""
#: src/modules/fstab/main.py:38
msgid "Writing fstab."
msgstr ""
#: src/modules/services-openrc/main.py:38
msgid "Configure OpenRC services"
msgstr ""
#: src/modules/services-openrc/main.py:66
msgid "Cannot add service {name!s} to run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:68
msgid "Cannot remove service {name!s} from run-level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:70
msgid ""
"Unknown service-action <code>{arg!s}</code> for service {name!s} in run-"
"level {level!s}."
msgstr ""
#: src/modules/services-openrc/main.py:103
msgid ""
"<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}."
msgstr ""
#: src/modules/services-openrc/main.py:110
msgid "Target runlevel does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:111
msgid ""
"The path for runlevel {level!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/services-openrc/main.py:119
msgid "Target service does not exist"
msgstr ""
#: src/modules/services-openrc/main.py:120
msgid ""
"The path for service {name!s} is <code>{path!s}</code>, which does not "
"exist."
msgstr ""
#: src/modules/dracut/main.py:36
msgid "Creating initramfs with dracut."
msgstr ""
#: src/modules/dracut/main.py:58
msgid "Failed to run dracut on the target"
msgstr ""
#: src/modules/dracut/main.py:59
msgid "The exit code was {}"
msgstr ""
#: src/modules/grubcfg/main.py:37
msgid "Configure GRUB."
msgstr ""
#: src/modules/displaymanager/main.py:515
msgid "Cannot write KDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:516
msgid "KDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:577
msgid "Cannot write LXDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:578
msgid "LXDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:661
msgid "Cannot write LightDM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:662
msgid "LightDM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:736
msgid "Cannot configure LightDM"
msgstr ""
#: src/modules/displaymanager/main.py:737
msgid "No LightDM greeter installed."
msgstr ""
#: src/modules/displaymanager/main.py:768
msgid "Cannot write SLIM configuration file"
msgstr ""
#: src/modules/displaymanager/main.py:769
msgid "SLIM config file {!s} does not exist"
msgstr ""
#: src/modules/displaymanager/main.py:895
msgid "No display managers selected for the displaymanager module."
msgstr ""
#: src/modules/displaymanager/main.py:896
msgid ""
"The displaymanagers list is empty or undefined in bothglobalstorage and "
"displaymanager.conf."
msgstr ""
#: src/modules/displaymanager/main.py:978
msgid "Display manager configuration was incomplete"
msgstr ""
#: src/modules/initramfscfg/main.py:41
msgid "Configuring initramfs."
msgstr ""
#: src/modules/hwclock/main.py:35
msgid "Setting hardware clock."
msgstr ""
#: src/modules/rawfs/main.py:35
msgid "Installing data."
msgstr ""

Binary file not shown.

View File

@ -6,6 +6,7 @@
# Translators: # Translators:
# Jan-Olof Svensson, 2019 # Jan-Olof Svensson, 2019
# Luna Jernberg <bittin@cafe8bitar.se>, 2020 # Luna Jernberg <bittin@cafe8bitar.se>, 2020
# Tobias Olausson <tobsan@tobsan.se>, 2020
# #
#, fuzzy #, fuzzy
msgid "" msgid ""
@ -14,7 +15,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-04-30 23:13+0200\n" "POT-Creation-Date: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2017-08-09 10:34+0000\n" "PO-Revision-Date: 2017-08-09 10:34+0000\n"
"Last-Translator: Luna Jernberg <bittin@cafe8bitar.se>, 2020\n" "Last-Translator: Tobias Olausson <tobsan@tobsan.se>, 2020\n"
"Language-Team: Swedish (https://www.transifex.com/calamares/teams/20061/sv/)\n" "Language-Team: Swedish (https://www.transifex.com/calamares/teams/20061/sv/)\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"
@ -113,7 +114,7 @@ msgstr "Ingen monteringspunkt för root partition"
#: src/modules/unpackfs/main.py:400 #: src/modules/unpackfs/main.py:400
msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing" msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing"
msgstr "" msgstr "globalstorage innehåller ingen \"rootMountPoint\"-nyckel, så gör inget"
#: src/modules/unpackfs/main.py:405 #: src/modules/unpackfs/main.py:405
msgid "Bad mount point for root partition" msgid "Bad mount point for root partition"
@ -121,7 +122,7 @@ msgstr "Dålig monteringspunkt för root partition"
#: src/modules/unpackfs/main.py:406 #: src/modules/unpackfs/main.py:406
msgid "rootMountPoint is \"{}\", which does not exist, doing nothing" msgid "rootMountPoint is \"{}\", which does not exist, doing nothing"
msgstr "" msgstr "rootMountPoint är \"{}\", vilket inte finns, så gör inget"
#: src/modules/unpackfs/main.py:422 src/modules/unpackfs/main.py:426 #: src/modules/unpackfs/main.py:422 src/modules/unpackfs/main.py:426
#: src/modules/unpackfs/main.py:446 #: src/modules/unpackfs/main.py:446
@ -141,6 +142,8 @@ msgid ""
"Failed to find unsquashfs, make sure you have the squashfs-tools package " "Failed to find unsquashfs, make sure you have the squashfs-tools package "
"installed" "installed"
msgstr "" msgstr ""
"Kunde inte hitta unsquashfs, se till att du har paketet squashfs-tools "
"installerat"
#: src/modules/unpackfs/main.py:447 #: src/modules/unpackfs/main.py:447
msgid "The destination \"{}\" in the target system is not a directory" msgid "The destination \"{}\" in the target system is not a directory"
@ -159,6 +162,8 @@ msgstr "Kunde inte modifiera tjänst"
msgid "" msgid ""
"<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}." "<code>systemctl {arg!s}</code> call in chroot returned error code {num!s}."
msgstr "" msgstr ""
"Anrop till <code>systemctl {arg!s}</code>i chroot returnerade felkod "
"{num!s}."
#: src/modules/services-systemd/main.py:72 #: src/modules/services-systemd/main.py:72
#: src/modules/services-systemd/main.py:76 #: src/modules/services-systemd/main.py:76
@ -175,7 +180,7 @@ msgstr "Kunde inte inaktivera systemd målsystem <code>{name!s}</code>."
#: src/modules/services-systemd/main.py:80 #: src/modules/services-systemd/main.py:80
msgid "Cannot mask systemd unit <code>{name!s}</code>." msgid "Cannot mask systemd unit <code>{name!s}</code>."
msgstr "" msgstr "Kan inte maskera systemd unit <code>{name!s}</code>"
#: src/modules/services-systemd/main.py:82 #: src/modules/services-systemd/main.py:82
msgid "" msgid ""
@ -224,36 +229,42 @@ msgstr "Konfigurera OpenRC tjänster"
#: src/modules/services-openrc/main.py:66 #: src/modules/services-openrc/main.py:66
msgid "Cannot add service {name!s} to run-level {level!s}." msgid "Cannot add service {name!s} to run-level {level!s}."
msgstr "" msgstr "Kan inte lägga till tjänsten {name!s} till körnivå {level!s}."
#: src/modules/services-openrc/main.py:68 #: src/modules/services-openrc/main.py:68
msgid "Cannot remove service {name!s} from run-level {level!s}." msgid "Cannot remove service {name!s} from run-level {level!s}."
msgstr "" msgstr "Kan inte ta bort tjänsten {name!s} från körnivå {level!s}."
#: src/modules/services-openrc/main.py:70 #: src/modules/services-openrc/main.py:70
msgid "" msgid ""
"Unknown service-action <code>{arg!s}</code> for service {name!s} in run-" "Unknown service-action <code>{arg!s}</code> for service {name!s} in run-"
"level {level!s}." "level {level!s}."
msgstr "" msgstr ""
"Okänt tjänst-anrop <code>{arg!s}</code>för tjänsten {name!s} i körnivå "
"{level!s}."
#: src/modules/services-openrc/main.py:103 #: src/modules/services-openrc/main.py:103
msgid "" msgid ""
"<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}." "<code>rc-update {arg!s}</code> call in chroot returned error code {num!s}."
msgstr "" msgstr ""
"Anrop till <code>rc-update {arg!s}</code> i chroot returnerade felkod "
"{num!s}."
#: src/modules/services-openrc/main.py:110 #: src/modules/services-openrc/main.py:110
msgid "Target runlevel does not exist" msgid "Target runlevel does not exist"
msgstr "" msgstr "Begärd körnivå existerar inte"
#: src/modules/services-openrc/main.py:111 #: src/modules/services-openrc/main.py:111
msgid "" msgid ""
"The path for runlevel {level!s} is <code>{path!s}</code>, which does not " "The path for runlevel {level!s} is <code>{path!s}</code>, which does not "
"exist." "exist."
msgstr "" msgstr ""
"Sökvägen till körnivå {level!s} är <code>{path!s}</code>, som inte "
"existerar."
#: src/modules/services-openrc/main.py:119 #: src/modules/services-openrc/main.py:119
msgid "Target service does not exist" msgid "Target service does not exist"
msgstr "" msgstr "Begärd tjänst existerar inte"
#: src/modules/services-openrc/main.py:120 #: src/modules/services-openrc/main.py:120
msgid "" msgid ""
@ -308,7 +319,7 @@ msgstr "Kunde inte konfigurera LightDM"
#: src/modules/displaymanager/main.py:737 #: src/modules/displaymanager/main.py:737
msgid "No LightDM greeter installed." msgid "No LightDM greeter installed."
msgstr "" msgstr "Ingen LightDM greeter installerad."
#: src/modules/displaymanager/main.py:768 #: src/modules/displaymanager/main.py:768
msgid "Cannot write SLIM configuration file" msgid "Cannot write SLIM configuration file"
@ -332,7 +343,7 @@ msgstr ""
#: src/modules/displaymanager/main.py:978 #: src/modules/displaymanager/main.py:978
msgid "Display manager configuration was incomplete" msgid "Display manager configuration was incomplete"
msgstr "" msgstr "Konfiguration för displayhanteraren var inkomplett"
#: src/modules/initramfscfg/main.py:41 #: src/modules/initramfscfg/main.py:41
msgid "Configuring initramfs." msgid "Configuring initramfs."

View File

@ -1,6 +1,4 @@
/* === This file is part of Calamares - <https://github.com/calamares> === /* === 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 * Calamares is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -14,23 +12,33 @@
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with Calamares. If not, see <http://www.gnu.org/licenses/>. * along with Calamares. If not, see <http://www.gnu.org/licenses/>.
*
* SPDX-FileCopyrightText: 2018 Adriaan de Groot <groot@kde.org>
* SPDX-License-Identifier: GPL-3.0-or-later
* License-Filename: LICENSE
*/ */
/* /*
* Tool to find differences between translations (can be used to help * Tool to find differences between translations (can be used to help
* merging them into one). See usage string, below, for details. * merging them into one). See usage string, below, for details.
*
* The tool can be used when there are multiple translation files
* for a single language (e.g. Spanish) which need to be reconciled.
* Then running `txload file0.ts file1.ts ...` will produce a
* human-readable overview of what is translated and where the
* differences in translation are.
*/ */
#include <QCoreApplication> #include <QCoreApplication>
#include <QDebug> #include <QDebug>
#include <QFile> #include <QFile>
#include <QList> // #include <QList>
#include <QDomDocument> #include <QDomDocument>
static const char usage[] = "Usage: txload <master> [<subsidiary> ...]\n" static const char usage[] = "Usage: txload <origin> [<alternate> ...]\n"
"\n" "\n"
"Reads a .ts source file <master> and zero or more .ts <subsidiary>\n" "Reads a .ts source file <origin> and zero or more .ts <alternate>\n"
"files, and does a comparison between the translations. Source (English)\n" "files, and does a comparison between the translations. Source (English)\n"
"strings that are untranslated are flagged in each of the translation\n" "strings that are untranslated are flagged in each of the translation\n"
"files, while differences in the translations are themselves also shown.\n" "files, while differences in the translations are themselves also shown.\n"
@ -95,34 +103,34 @@ QDomElement find_message(QDomElement& context, const QString& source)
return QDomElement(); return QDomElement();
} }
bool merge_into(QDomElement& master, QDomElement& sub) bool merge_into(QDomElement& origin, QDomElement& alternate)
{ {
QDomNode n = sub.firstChild(); QDomNode n = alternate.firstChild();
while (!n.isNull()) { while (!n.isNull()) {
if (n.isElement()) { if (n.isElement()) {
QDomElement e = n.toElement(); QDomElement alternateMessage = n.toElement();
if ( e.tagName() == "message" ) if ( alternateMessage.tagName() == "message" )
{ {
QString source = e.firstChildElement( "source" ).text(); QString alternateSourceText = alternateMessage.firstChildElement( "source" ).text();
QString translation = e.firstChildElement( "translation" ).text(); QString alternateTranslationText = alternateMessage.firstChildElement( "translation" ).text();
QDomElement masterTranslation = find_message( master, source ); QDomElement originMessage = find_message( origin, alternateSourceText );
if ( masterTranslation.isNull() ) if ( originMessage.isNull() )
{ {
qDebug() << "No master translation for" << source; qDebug() << "No origin translation for" << alternateSourceText;
return false; return false;
} }
QString msource = masterTranslation.firstChildElement( "source" ).text(); QString originSourceText = originMessage.firstChildElement( "source" ).text();
QString mtranslation = masterTranslation.firstChildElement( "translation" ).text(); QString originTranslationText = originMessage.firstChildElement( "translation" ).text();
if ( source != msource ) if ( alternateSourceText != originSourceText )
{ {
qDebug() << "Mismatch for messages\n" << source << '\n' << msource; qDebug() << "Mismatch for messages\n" << alternateSourceText << '\n' << originSourceText;
return false; return false;
} }
if ( !translation.isEmpty() && ( translation != mtranslation ) ) if ( !alternateTranslationText.isEmpty() && ( alternateTranslationText != originTranslationText ) )
{ {
qDebug() << "\n\n\nSource:" << source << "\nTL1:" << mtranslation << "\nTL2:" << translation; qDebug() << "\n\n\nSource:" << alternateSourceText << "\nTL1:" << originTranslationText << "\nTL2:" << alternateTranslationText;
} }
} }
} }
@ -134,32 +142,32 @@ bool merge_into(QDomElement& master, QDomElement& sub)
bool merge_into(QDomDocument& master, QDomElement& context) bool merge_into(QDomDocument& originDocument, QDomElement& context)
{ {
QDomElement name = context.firstChildElement( "name" ); QDomElement name = context.firstChildElement( "name" );
if ( name.isNull() ) if ( name.isNull() )
return false; return false;
QString contextname = name.text(); QString contextname = name.text();
QDomElement masterContext = find_context( master, contextname ); QDomElement originContext = find_context( originDocument, contextname );
if ( masterContext.isNull() ) if ( originContext.isNull() )
{ {
qDebug() << "Master document has no context" << contextname; qDebug() << "Origin document has no context" << contextname;
return false; return false;
} }
return merge_into( masterContext, context ); return merge_into( originContext, context );
} }
bool merge_into(QDomDocument& master, QDomDocument& sub) bool merge_into(QDomDocument& originDocument, QDomDocument& alternateDocument)
{ {
QDomElement top = sub.documentElement(); QDomElement top = alternateDocument.documentElement();
QDomNode n = top.firstChild(); QDomNode n = top.firstChild();
while (!n.isNull()) { while (!n.isNull()) {
if (n.isElement()) { if (n.isElement()) {
QDomElement e = n.toElement(); QDomElement e = n.toElement();
if ( e.tagName() == "context" ) if ( e.tagName() == "context" )
if ( !merge_into( master, e ) ) if ( !merge_into( originDocument, e ) )
return false; return false;
} }
n = n.nextSibling(); n = n.nextSibling();
@ -178,16 +186,16 @@ int main(int argc, char** argv)
return 1; return 1;
} }
QDomDocument doc("master"); QDomDocument originDocument("origin");
if ( !load_file(argv[1], doc) ) if ( !load_file(argv[1], originDocument) )
return 1; return 1;
for (int i = 2; i < argc; ++i) for (int i = 2; i < argc; ++i)
{ {
QDomDocument subdoc("sub"); QDomDocument alternateDocument("alternate");
if ( !load_file(argv[i], subdoc) ) if ( !load_file(argv[i], alternateDocument) )
return 1; return 1;
if ( !merge_into( doc, subdoc ) ) if ( !merge_into( originDocument, alternateDocument ) )
return 1; return 1;
} }
@ -200,7 +208,7 @@ int main(int argc, char** argv)
return 1; return 1;
} }
outfile.write( doc.toString(4).toUtf8() ); outfile.write( originDocument.toString(4).toUtf8() );
outfile.close(); outfile.close();
return 0; return 0;

View File

@ -159,7 +159,7 @@ dont-chroot: false
# If this is set to true, Calamares refers to itself as a "setup program" # If this is set to true, Calamares refers to itself as a "setup program"
# rather than an "installer". Defaults to the value of dont-chroot, but # rather than an "installer". Defaults to the value of dont-chroot, but
# Calamares will complain if this is not explicitly set. # Calamares will complain if this is not explicitly set.
# oem-setup: true oem-setup: false
# If this is set to true, the "Cancel" button will be disabled entirely. # If this is set to true, the "Cancel" button will be disabled entirely.
# The button is also hidden from view. # The button is also hidden from view.

View File

@ -163,21 +163,25 @@ set_target_properties( calamares
PROPERTIES PROPERTIES
VERSION ${CALAMARES_VERSION_SHORT} VERSION ${CALAMARES_VERSION_SHORT}
SOVERSION ${CALAMARES_VERSION_SHORT} SOVERSION ${CALAMARES_VERSION_SHORT}
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_INSTALL_FULL_INCLUDEDIR}/libcalamares
) )
calamares_automoc( calamares ) calamares_automoc( calamares )
target_link_libraries( calamares target_link_libraries( calamares
LINK_PRIVATE LINK_PRIVATE
${OPTIONAL_PRIVATE_LIBRARIES} ${OPTIONAL_PRIVATE_LIBRARIES}
LINK_PUBLIC
yamlcpp yamlcpp
LINK_PUBLIC
Qt5::Core Qt5::Core
KF5::CoreAddons KF5::CoreAddons
${OPTIONAL_PUBLIC_LIBRARIES} ${OPTIONAL_PUBLIC_LIBRARIES}
) )
### Installation
#
#
install( TARGETS calamares install( TARGETS calamares
EXPORT CalamaresLibraryDepends EXPORT Calamares
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
@ -192,13 +196,18 @@ install( CODE "
# Install header files # Install header files
file( GLOB rootHeaders "*.h" ) file( GLOB rootHeaders "*.h" )
file( GLOB kdsingleapplicationguardHeaders "kdsingleapplicationguard/*.h" ) install(
file( GLOB utilsHeaders "utils/*.h" ) FILES
${CMAKE_CURRENT_BINARY_DIR}/CalamaresConfig.h
${rootHeaders}
DESTINATION include/libcalamares
)
# Install each subdir-worth of header files
foreach( subdir geoip locale modulesystem network partition utils )
file( GLOB subdir_headers "${subdir}/*.h" )
install( FILES ${subdir_headers} DESTINATION include/libcalamares/${subdir} )
endforeach()
install( FILES ${CMAKE_CURRENT_BINARY_DIR}/CalamaresConfig.h DESTINATION include/libcalamares )
install( FILES ${rootHeaders} DESTINATION include/libcalamares )
install( FILES ${kdsingleapplicationguardHeaders} DESTINATION include/libcalamares/kdsingleapplicationguard )
install( FILES ${utilsHeaders} DESTINATION include/libcalamares/utils )
### TESTING ### TESTING
# #

View File

@ -29,7 +29,14 @@
#define CMAKE_INSTALL_FULL_DATADIR "${CMAKE_INSTALL_FULL_DATADIR}/calamares" #define CMAKE_INSTALL_FULL_DATADIR "${CMAKE_INSTALL_FULL_DATADIR}/calamares"
#define CMAKE_INSTALL_FULL_SYSCONFDIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}" #define CMAKE_INSTALL_FULL_SYSCONFDIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}"
//cmakedefines for CMake variables (e.g. for optdepends) go here /*
* These are feature-settings that affect consumers of Calamares
* libraries as well; without Python-support in the libs, for instance,
* there's no point in having a Python plugin.
*
* This list should match the one in CalamaresConfig.cmake
* which is the CMake-time side of the same configuration.
*/
#cmakedefine WITH_PYTHON #cmakedefine WITH_PYTHON
#cmakedefine WITH_PYTHONQT #cmakedefine WITH_PYTHONQT
#cmakedefine WITH_QML #cmakedefine WITH_QML

View File

@ -96,13 +96,16 @@ RequirementsModel::roleNames() const
void void
RequirementsModel::describe() const RequirementsModel::describe() const
{ {
cDebug() << "Requirements model has" << m_requirements.count() << "items";
bool acceptable = true; bool acceptable = true;
int count = 0; int count = 0;
for ( const auto& r : m_requirements ) for ( const auto& r : m_requirements )
{ {
cDebug() << Logger::SubEntry << "requirement" << count << r.name
<< "satisfied?" << r.satisfied
<< "mandatory?" << r.mandatory;
if ( r.mandatory && !r.satisfied ) if ( r.mandatory && !r.satisfied )
{ {
cDebug() << Logger::SubEntry << "requirement" << count << r.name << "is not satisfied.";
acceptable = false; acceptable = false;
} }
++count; ++count;

View File

@ -103,36 +103,43 @@ PartitionSizeTests::testUnitComparison()
QCOMPARE( original_compare( u1, u2 ), PartitionSize::unitsComparable( u1, u2 ) ); QCOMPARE( original_compare( u1, u2 ), PartitionSize::unitsComparable( u1, u2 ) );
} }
/* Operator to make the table in testUnitNormalisation_data easier to write */
constexpr qint64 operator""_qi( unsigned long long m )
{
return qint64( m );
}
void void
PartitionSizeTests::testUnitNormalisation_data() PartitionSizeTests::testUnitNormalisation_data()
{ {
QTest::addColumn< SizeUnit >( "u1" ); QTest::addColumn< SizeUnit >( "u1" );
QTest::addColumn< int >( "v" ); QTest::addColumn< int >( "v" );
QTest::addColumn< long >( "bytes" ); QTest::addColumn< qint64 >( "bytes" );
QTest::newRow( "none" ) << SizeUnit::None << 16 << -1L; QTest::newRow( "none" ) << SizeUnit::None << 16 << -1_qi;
QTest::newRow( "none" ) << SizeUnit::None << 0 << -1L; QTest::newRow( "none" ) << SizeUnit::None << 0 << -1_qi;
QTest::newRow( "none" ) << SizeUnit::None << -2 << -1L; QTest::newRow( "none" ) << SizeUnit::None << -2 << -1_qi;
QTest::newRow( "percent" ) << SizeUnit::Percent << 0 << -1L; QTest::newRow( "percent" ) << SizeUnit::Percent << 0 << -1_qi;
QTest::newRow( "percent" ) << SizeUnit::Percent << 16 << -1L; QTest::newRow( "percent" ) << SizeUnit::Percent << 16 << -1_qi;
QTest::newRow( "percent" ) << SizeUnit::Percent << -2 << -1L; QTest::newRow( "percent" ) << SizeUnit::Percent << -2 << -1_qi;
QTest::newRow( "KiB" ) << SizeUnit::KiB << 0 << -1L; QTest::newRow( "KiB" ) << SizeUnit::KiB << 0 << -1_qi;
QTest::newRow( "KiB" ) << SizeUnit::KiB << 1 << 1024L; QTest::newRow( "KiB" ) << SizeUnit::KiB << 1 << 1024_qi;
QTest::newRow( "KiB" ) << SizeUnit::KiB << 1000 << 1024000L; QTest::newRow( "KiB" ) << SizeUnit::KiB << 1000 << 1024000_qi;
QTest::newRow( "KiB" ) << SizeUnit::KiB << 1024 << 1024 * 1024L; QTest::newRow( "KiB" ) << SizeUnit::KiB << 1024 << 1024 * 1024_qi;
QTest::newRow( "KiB" ) << SizeUnit::KiB << -2 << -1L; QTest::newRow( "KiB" ) << SizeUnit::KiB << -2 << -1_qi;
QTest::newRow( "MiB" ) << SizeUnit::MiB << 0 << -1L; QTest::newRow( "MiB" ) << SizeUnit::MiB << 0 << -1_qi;
QTest::newRow( "MiB" ) << SizeUnit::MiB << 1 << 1024 * 1024L; QTest::newRow( "MiB" ) << SizeUnit::MiB << 1 << 1024 * 1024_qi;
QTest::newRow( "MiB" ) << SizeUnit::MiB << 1000 << 1024 * 1024000L; QTest::newRow( "MiB" ) << SizeUnit::MiB << 1000 << 1024 * 1024000_qi;
QTest::newRow( "MiB" ) << SizeUnit::MiB << 1024 << 1024 * 1024 * 1024L; QTest::newRow( "MiB" ) << SizeUnit::MiB << 1024 << 1024 * 1024 * 1024_qi;
QTest::newRow( "MiB" ) << SizeUnit::MiB << -2 << -1L; QTest::newRow( "MiB" ) << SizeUnit::MiB << -2 << -1_qi;
QTest::newRow( "GiB" ) << SizeUnit::GiB << 0 << -1L; QTest::newRow( "GiB" ) << SizeUnit::GiB << 0 << -1_qi;
QTest::newRow( "GiB" ) << SizeUnit::GiB << 1 << 1024 * 1024 * 1024L; QTest::newRow( "GiB" ) << SizeUnit::GiB << 1 << 1024_qi * 1024 * 1024_qi;
QTest::newRow( "GiB" ) << SizeUnit::GiB << 2 << 2048 * 1024 * 1024L; // This one overflows 32-bits, which is why we want 64-bits for the whole table
QTest::newRow( "GiB" ) << SizeUnit::GiB << 2 << 2048_qi * 1024 * 1024_qi;
} }
void void
@ -140,7 +147,7 @@ PartitionSizeTests::testUnitNormalisation()
{ {
QFETCH( SizeUnit, u1 ); QFETCH( SizeUnit, u1 );
QFETCH( int, v ); QFETCH( int, v );
QFETCH( long, bytes ); QFETCH( qint64, bytes );
QCOMPARE( PartitionSize( v, u1 ).toBytes(), static_cast< qint64 >( bytes ) ); QCOMPARE( PartitionSize( v, u1 ).toBytes(), bytes );
} }

View File

@ -65,6 +65,20 @@ getString( const QVariantMap& map, const QString& key )
return QString(); return QString();
} }
QStringList
getStringList( const QVariantMap& map, const QString& key )
{
if ( map.contains( key ) )
{
auto v = map.value( key );
if ( v.type() == QVariant::StringList )
{
return v.toStringList();
}
}
return QStringList();
}
qint64 qint64
getInteger( const QVariantMap& map, const QString& key, qint64 d ) getInteger( const QVariantMap& map, const QString& key, qint64 d )
{ {
@ -72,14 +86,20 @@ getInteger( const QVariantMap& map, const QString& key, qint64 d )
if ( map.contains( key ) ) if ( map.contains( key ) )
{ {
auto v = map.value( key ); auto v = map.value( key );
if ( v.type() == QVariant::Int ) result = v.toString().toLongLong(nullptr, 0);
{
result = v.toInt();
} }
else if ( v.type() == QVariant::LongLong )
{ return result;
result = v.toLongLong();
} }
quint64
getUnsignedInteger( const QVariantMap& map, const QString& key, quint64 u )
{
quint64 result = u;
if ( map.contains( key ) )
{
auto v = map.value( key );
result = v.toString().toULongLong(nullptr, 0);
} }
return result; return result;

View File

@ -43,11 +43,21 @@ DLLEXPORT bool getBool( const QVariantMap& map, const QString& key, bool d );
*/ */
DLLEXPORT QString getString( const QVariantMap& map, const QString& key ); DLLEXPORT QString getString( const QVariantMap& map, const QString& key );
/**
* Get a string list from a mapping; returns empty list if no value.
*/
DLLEXPORT QStringList getStringList( const QVariantMap& map, const QString& key );
/** /**
* Get an integer value from a mapping; returns @p d if no value. * Get an integer value from a mapping; returns @p d if no value.
*/ */
DLLEXPORT qint64 getInteger( const QVariantMap& map, const QString& key, qint64 d ); DLLEXPORT qint64 getInteger( const QVariantMap& map, const QString& key, qint64 d );
/**
* Get an unsigned integer value from a mapping; returns @p u if no value.
*/
DLLEXPORT quint64 getUnsignedInteger( const QVariantMap& map, const QString& key, quint64 u );
/** /**
* Get a double value from a mapping (integers are converted); returns @p d if no value. * Get a double value from a mapping (integers are converted); returns @p d if no value.
*/ */

View File

@ -66,8 +66,9 @@ calamares_add_library( calamaresui
EXPORT_MACRO UIDLLEXPORT_PRO EXPORT_MACRO UIDLLEXPORT_PRO
LINK_LIBRARIES LINK_LIBRARIES
Qt5::Svg Qt5::Svg
yamlcpp
RESOURCES libcalamaresui.qrc RESOURCES libcalamaresui.qrc
EXPORT CalamaresLibraryDepends EXPORT Calamares
VERSION ${CALAMARES_VERSION_SHORT} VERSION ${CALAMARES_VERSION_SHORT}
) )
@ -82,3 +83,25 @@ endif()
if( WITH_QML ) if( WITH_QML )
target_link_libraries( calamaresui PUBLIC Qt5::QuickWidgets ) target_link_libraries( calamaresui PUBLIC Qt5::QuickWidgets )
endif() endif()
### Installation
#
#
# The library is already installed through calamares_add_library(),
# so we only need to do headers. Unlike the Calamares source tree,
# where libcalamares and libcalamaresui live in different branches,
# we're going to glom it all together in the installed headers location.
install(
FILES
Branding.h
ViewManager.h
DESTINATION include/libcalamares
)
# Install each subdir-worth of header files
foreach( subdir modulesystem utils viewpages widgets )
file( GLOB subdir_headers "${subdir}/*.h" )
install( FILES ${subdir_headers} DESTINATION include/libcalamares/${subdir} )
endforeach()

View File

@ -66,3 +66,21 @@ endforeach()
include( CalamaresAddTranslations ) include( CalamaresAddTranslations )
add_calamares_python_translations( ${CALAMARES_TRANSLATION_LANGUAGES} ) add_calamares_python_translations( ${CALAMARES_TRANSLATION_LANGUAGES} )
# TODO:3.3: Use FindPython3
if ( BUILD_TESTING AND BUILD_SCHEMA_TESTING AND PYTHONINTERP_FOUND AND PYTHON_EXECUTABLE )
# The tests for each config file are independent of whether the
# module is enabled or not: the config file should match its schema
# regardless.
foreach( SUBDIRECTORY ${SUBDIRECTORIES} )
set( _schema_file "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/${SUBDIRECTORY}.schema.yaml" )
set( _conf_file "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/${SUBDIRECTORY}.conf" )
if ( EXISTS "${_schema_file}" AND EXISTS "${_conf_file}" )
add_test(
NAME validate-${SUBDIRECTORY}
COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_SOURCE_DIR}/ci/configvalidator.py" "${_schema_file}" "${_conf_file}"
)
endif()
endforeach()
endif()

View File

@ -0,0 +1,33 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/bootloader
additionalProperties: false
type: object
properties:
efiBootLoader: { type: string }
kernel: { type: string }
img: { type: string }
fallback: { type: string }
timeout: { type: string } # Inserted verbatim
bootloaderEntryName: { type: string }
kernelLine: { type: string }
fallbackKernelLine: { type: string }
# Programs
grubInstall: { type: string }
grubMkconfig: { type: string }
grubCfg: { type: string }
grubProbe: { type: string }
efiBootMgr: { type: string }
efiBootloaderId: { type: string }
installEFIFallback: { type: boolean }
required:
- efiBootLoader
- kernel
- img
- grubInstall
- grubMkconfig
- grubCfg
- grubProbe

View File

@ -0,0 +1,16 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/displaymanager
additionalProperties: false
type: object
properties:
"displaymanagers":
type: seq
sequence:
- { type: string, required: true, enum: [slim, sddm, lightdm, gdm, mdm, lxdm, kdm] }
"defaultDesktopEnvironment":
type: map
mapping:
"executable": { type: str }
"desktopFile": { type: str }
"basicSetup": { type: boolean, default: false }

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: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2016-12-16 12:18+0000\n"
"Language-Team: Bengali (https://www.transifex.com/calamares/teams/20061/bn/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: bn\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\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

@ -8,35 +8,35 @@ 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: 2020-04-30 23:13+0200\n" "POT-Creation-Date: 2020-06-18 15:42+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \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"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Language: \n"
#: src/modules/dummypythonqt/main.py:84 #: src/modules/dummypythonqt/main.py:84
msgid "Click me!" msgid "Click me!"
msgstr "Click me!" msgstr ""
#: src/modules/dummypythonqt/main.py:94 #: src/modules/dummypythonqt/main.py:94
msgid "A new QLabel." msgid "A new QLabel."
msgstr "A new QLabel." msgstr ""
#: src/modules/dummypythonqt/main.py:97 #: src/modules/dummypythonqt/main.py:97
msgid "Dummy PythonQt ViewStep" msgid "Dummy PythonQt ViewStep"
msgstr "Dummy PythonQt ViewStep" msgstr ""
#: src/modules/dummypythonqt/main.py:183 #: src/modules/dummypythonqt/main.py:183
msgid "The Dummy PythonQt Job" msgid "The Dummy PythonQt Job"
msgstr "The Dummy PythonQt Job" msgstr ""
#: 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 "This is the Dummy PythonQt Job. The dummy job says: {}" msgstr ""
#: 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 "A status message for Dummy PythonQt Job." msgstr ""

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: 2020-04-30 23:13+0200\n"
"PO-Revision-Date: 2016-12-16 12:18+0000\n"
"Language-Team: Latvian (https://www.transifex.com/calamares/teams/20061/lv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: lv\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\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

@ -0,0 +1,11 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/finished
additionalProperties: false
type: object
properties:
restartNowEnabled: { type: boolean, default: true } # TODO:3.3: remove
restartNowChecked: { type: boolean, default: false } # TODO:3.3: remove
restartNowCommand: { type: string }
restartNowMode: { type: string, enum: [ never, user-unchecked, user-checked, always ] }
notifyOnFinished: { type: boolean }

View File

@ -0,0 +1,19 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/fstab
additionalProperties: false
type: object
properties:
"mountOptions":
type: map
mapping:
"default": { type: string, required: true }
"btrfs": { type: string, required: true }
"ssdExtraMountOptions":
type: map
mapping:
"ext4": { type: string, required: true }
"jfs": { type: string, required: true }
"xfs": { type: string, required: true }
"swap": { type: string, required: true }
"btrfs": { type: string, required: true }

View File

@ -0,0 +1,15 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/grubcfg
additionalProperties: false
type: object
properties:
"overwrite": { type: boolean, default: false }
"defaults":
type: map
mapping:
"GRUB_TIMEOUT": { type: int, required: true }
"GRUB_DEFAULT": { type: string, required: true }
"GRUB_DISABLE_SUBMENU": { type: boolean, default: true }
"GRUB_TERMINAL_OUTPUT": { type: string, required: true }
"GRUB_DISABLE_RECOVERY": { type: boolean, default: true }

View File

@ -0,0 +1,7 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/initcpio
additionalProperties: false
type: object
properties:
kernel: { type: string, required: true }

View File

@ -0,0 +1,8 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/finished
additionalProperties: keyboard
type: object
properties:
xOrgConfFileName: { type: string, required: true }
convertedKeymapPath: { type: string, required: true }

View File

@ -0,0 +1,17 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/license
additionalProperties: false
type: object
properties:
"entries":
type: seq
sequence:
- type: map
mapping:
"id": { type: str }
"name": { type: str }
"vendor": { type: str }
"type": { type: str }
"url": { type: str }
"required": { type: boolean, default: false }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 867 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -21,7 +21,6 @@
<file>images/timezone_10.0.png</file> <file>images/timezone_10.0.png</file>
<file>images/timezone_10.5.png</file> <file>images/timezone_10.5.png</file>
<file>images/timezone_11.0.png</file> <file>images/timezone_11.0.png</file>
<file>images/timezone_11.5.png</file>
<file>images/timezone_12.0.png</file> <file>images/timezone_12.0.png</file>
<file>images/timezone_12.75.png</file> <file>images/timezone_12.75.png</file>
<file>images/timezone_13.0.png</file> <file>images/timezone_13.0.png</file>

View File

@ -0,0 +1,10 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/locale
additionalProperties: false
type: object
properties:
"region": { type: str }
"zone": { type: str }
"localeGenPath": { type: string, required: true }
"geoipUrl": { type: str }

View File

@ -26,7 +26,7 @@
static const char* zoneNames[] static const char* zoneNames[]
= { "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", = { "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", "8.0", "9.0", "9.5", "10.0", "10.5", "11.0", "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" }; "-3.5", "-4.0", "-4.5", "-5.0", "-5.5", "-6.0", "-7.0", "-8.0", "-9.0", "-9.5", "-10.0", "-11.0" };
static_assert( TimeZoneImageList::zoneCount == ( sizeof( zoneNames ) / sizeof( zoneNames[ 0 ] ) ), static_assert( TimeZoneImageList::zoneCount == ( sizeof( zoneNames ) / sizeof( zoneNames[ 0 ] ) ),
"Incorrect number of zones" ); "Incorrect number of zones" );
@ -36,7 +36,7 @@ static_assert( TimeZoneImageList::zoneCount == ( sizeof( zoneNames ) / sizeof( z
/* static constexpr */ const int TimeZoneImageList::zoneCount; /* static constexpr */ const int TimeZoneImageList::zoneCount;
/* static constexpr */ const QSize TimeZoneImageList::imageSize; /* static constexpr */ const QSize TimeZoneImageList::imageSize;
static_assert( TimeZoneImageList::zoneCount == 38 ); static_assert( TimeZoneImageList::zoneCount == 37 );
TimeZoneImageList::TimeZoneImageList() {} TimeZoneImageList::TimeZoneImageList() {}

View File

@ -77,7 +77,7 @@ public:
QImage find( QPoint p ) const; QImage find( QPoint p ) const;
/// @brief The **expected** number of zones in the list. /// @brief The **expected** number of zones in the list.
static constexpr const int zoneCount = 38; static constexpr const int zoneCount = 37;
/// @brief The expected size of each zone image. /// @brief The expected size of each zone image.
static constexpr const QSize imageSize = QSize( 780, 340 ); static constexpr const QSize imageSize = QSize( 780, 340 );
}; };

View File

@ -34,6 +34,32 @@ Page {
//Needs to come from .conf/geoip //Needs to come from .conf/geoip
property var hasInternet: true property var hasInternet: true
function getInt(format) {
var requestURL = "https://example.org/";
var xhr = new XMLHttpRequest;
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status !== 200) {
console.log("Disconnected!!");
var connected = false
hasInternet = connected
return;
}
else {
console.log("Connected!!");
}
}
}
xhr.open("GET", requestURL, true);
xhr.send();
}
Component.onCompleted: {
getInt();
}
Loader { Loader {
id: image id: image
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter

View File

@ -0,0 +1,7 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/luksopenswaphookcfg
additionalProperties: false
type: object
properties:
"configFilePath": { type: string, required: true }

View File

@ -0,0 +1,9 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/machineid
additionalProperties: false
type: object
properties:
"systemd": { type: boolean, default: true }
"dbus": { type: boolean, default: true }
"symlink": { type: boolean, default: true }

View File

@ -52,8 +52,13 @@ def mount_partition(root_mount_point, partition, partitions):
# Ensure that the created directory has the correct SELinux context on # Ensure that the created directory has the correct SELinux context on
# SELinux-enabled systems. # SELinux-enabled systems.
os.makedirs(mount_point, exist_ok=True) os.makedirs(mount_point, exist_ok=True)
subprocess.call(['chcon', '--reference=' + raw_mount_point, try:
mount_point]) subprocess.call(['chcon', '--reference=' + raw_mount_point, mount_point])
except FileNotFoundError as e:
libcalamares.utils.warning(str(e))
except OSError:
libcalamares.utils.error("Cannot run 'chcon' normally.")
raise
fstype = partition.get("fs", "").lower() fstype = partition.get("fs", "").lower()

View File

@ -0,0 +1,24 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/mount
additionalProperties: false
type: object
properties:
"extraMounts":
type: seq
sequence:
- type: map
mapping:
"device": { type: string, required: true }
"fs": { type: str }
"mountPoint": { type: string, required: true }
"options": { type: str }
"extraMountsEfi":
type: seq
sequence:
- type: map
mapping:
"device": { type: string, required: true }
"fs": { type: str }
"mountPoint": { type: string, required: true }
"options": { type: str }

View File

@ -26,5 +26,6 @@ calamares_add_test(
PackageModel.cpp PackageModel.cpp
LIBRARIES LIBRARIES
Qt5::Gui Qt5::Gui
yamlcpp
) )

View File

@ -0,0 +1,7 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/netinstall
additionalProperties: false
type: object
properties:
groupsUrl: { type: string, required: true }

View File

@ -5,6 +5,7 @@ set( _extra_src "" )
### OPTIONAL AppData XML support in PackageModel ### OPTIONAL AppData XML support in PackageModel
# #
# #
# TODO:3.3:WITH->BUILD (this doesn't affect the ABI offered by Calamares)
option( WITH_APPDATA "Support appdata: items in PackageChooser (requires QtXml)" ON ) option( WITH_APPDATA "Support appdata: items in PackageChooser (requires QtXml)" ON )
if ( WITH_APPDATA ) if ( WITH_APPDATA )
find_package(Qt5 COMPONENTS Xml) find_package(Qt5 COMPONENTS Xml)

View File

@ -274,6 +274,20 @@ class PMApt(PackageManager):
# Doesn't need to update the system explicitly # Doesn't need to update the system explicitly
pass pass
class PMXbps(PackageManager):
backend = "xbps"
def install(self, pkgs, from_local=False):
check_target_env_call(["xbps-install", "-Sy"] + pkgs)
def remove(self, pkgs):
check_target_env_call(["xbps-remove", "-Ry", "--noconfirm"] + pkgs)
def update_db(self):
check_target_env_call(["xbps-install", "-S"])
def update_system(self):
check_target_env_call(["xbps", "-Suy"])
class PMPacman(PackageManager): class PMPacman(PackageManager):
backend = "pacman" backend = "pacman"

View File

@ -0,0 +1,33 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/packages
additionalProperties: false
type: object
properties:
"backend": { type: string, required: true, enum: [packagekit, zypp, yum, dnf, urpmi, apt, pacman, portage, entropy] }
"update_db": { type: boolean, default: true }
"operations":
type: seq
sequence:
- type: map
mapping:
"install":
type: seq
sequence:
- { type: text }
"remove":
type: seq
sequence:
- { type: text }
"localInstall":
type: seq
sequence:
- { type: text }
"try_install":
type: seq
sequence:
- { type: text }
"try_remove":
type: seq
sequence:
- { type: text }

View File

@ -883,7 +883,9 @@ PartitionCoreModule::initLayout( const QVariantList& config )
} }
if ( !m_partLayout->addEntry( CalamaresUtils::getString( pentry, "name" ), if ( !m_partLayout->addEntry( CalamaresUtils::getString( pentry, "name" ),
CalamaresUtils::getString( pentry, "uuid" ),
CalamaresUtils::getString( pentry, "type" ), CalamaresUtils::getString( pentry, "type" ),
CalamaresUtils::getUnsignedInteger( pentry, "attributes", 0 ),
CalamaresUtils::getString( pentry, "mountPoint" ), CalamaresUtils::getString( pentry, "mountPoint" ),
CalamaresUtils::getString( pentry, "filesystem" ), CalamaresUtils::getString( pentry, "filesystem" ),
CalamaresUtils::getSubMap( pentry, "features", ok ), CalamaresUtils::getSubMap( pentry, "features", ok ),

View File

@ -118,7 +118,9 @@ PartitionLayout::addEntry( const QString& mountPoint, const QString& size, const
bool bool
PartitionLayout::addEntry( const QString& label, PartitionLayout::addEntry( const QString& label,
const QString& uuid,
const QString& type, const QString& type,
quint64 attributes,
const QString& mountPoint, const QString& mountPoint,
const QString& fs, const QString& fs,
const QVariantMap& features, const QVariantMap& features,
@ -140,7 +142,9 @@ PartitionLayout::addEntry( const QString& label,
} }
entry.partLabel = label; entry.partLabel = label;
entry.partUUID = uuid;
entry.partType = type; entry.partType = type;
entry.partAttributes = attributes;
entry.partMountPoint = mountPoint; entry.partMountPoint = mountPoint;
PartUtils::findFS( fs, &entry.partFileSystem ); PartUtils::findFS( fs, &entry.partFileSystem );
if ( entry.partFileSystem == FileSystem::Unknown ) if ( entry.partFileSystem == FileSystem::Unknown )
@ -244,12 +248,24 @@ PartitionLayout::execute( Device* dev,
currentPartition->setLabel( part.partLabel ); currentPartition->setLabel( part.partLabel );
currentPartition->fileSystem().setLabel( part.partLabel ); currentPartition->fileSystem().setLabel( part.partLabel );
} }
if ( !part.partUUID.isEmpty() )
{
currentPartition->setUUID( part.partUUID );
}
if ( !part.partType.isEmpty() ) if ( !part.partType.isEmpty() )
{ {
#if defined( WITH_KPMCORE42API ) #if defined( WITH_KPMCORE42API )
currentPartition->setType( part.partType ); currentPartition->setType( part.partType );
#else #else
cWarning() << "Ignoring type; requires KPMcore >= 4.2.0."; cWarning() << "Ignoring type; requires KPMcore >= 4.2.0.";
#endif
}
if ( part.partAttributes )
{
#if defined( WITH_KPMCORE42API )
currentPartition->setAttributes( part.partAttributes );
#else
cWarning() << "Ignoring attributes; requires KPMcore >= 4.2.0.";
#endif #endif
} }
if ( !part.partFeatures.isEmpty() ) if ( !part.partFeatures.isEmpty() )

View File

@ -41,7 +41,9 @@ public:
struct PartitionEntry struct PartitionEntry
{ {
QString partLabel; QString partLabel;
QString partUUID;
QString partType; QString partType;
quint64 partAttributes;
QString partMountPoint; QString partMountPoint;
FileSystem::Type partFileSystem = FileSystem::Unknown; FileSystem::Type partFileSystem = FileSystem::Unknown;
QVariantMap partFeatures; QVariantMap partFeatures;
@ -76,7 +78,9 @@ public:
const QString& min = QString(), const QString& min = QString(),
const QString& max = QString() ); const QString& max = QString() );
bool addEntry( const QString& label, bool addEntry( const QString& label,
const QString& uuid,
const QString& type, const QString& type,
quint64 attributes,
const QString& mountPoint, const QString& mountPoint,
const QString& fs, const QString& fs,
const QVariantMap& features, const QVariantMap& features,

View File

@ -91,6 +91,8 @@ mapForPartition( Partition* partition, const QString& uuid )
{ {
QVariantMap map; QVariantMap map;
map[ "device" ] = partition->partitionPath(); map[ "device" ] = partition->partitionPath();
map[ "partlabel" ] = partition->label();
map[ "partuuid" ] = partition->uuid();
map[ "mountPoint" ] = PartitionInfo::mountPoint( partition ); map[ "mountPoint" ] = PartitionInfo::mountPoint( partition );
map[ "fsName" ] = userVisibleFS( partition->fileSystem() ); map[ "fsName" ] = userVisibleFS( partition->fileSystem() );
map[ "fs" ] = untranslatedFS( partition->fileSystem() ); map[ "fs" ] = untranslatedFS( partition->fileSystem() );
@ -107,6 +109,7 @@ mapForPartition( Partition* partition, const QString& uuid )
Logger::CDebug deb; Logger::CDebug deb;
using TR = Logger::DebugRow< const char* const, const QString& >; using TR = Logger::DebugRow< const char* const, const QString& >;
deb << Logger::SubEntry << "mapping for" << partition->partitionPath() << partition->deviceNode() deb << Logger::SubEntry << "mapping for" << partition->partitionPath() << partition->deviceNode()
<< TR( "partlabel", map[ "partlabel" ].toString() ) << TR( "partuuid", map[ "partuuid" ].toString() )
<< TR( "mountPoint:", PartitionInfo::mountPoint( partition ) ) << TR( "fs:", map[ "fs" ].toString() ) << TR( "mountPoint:", PartitionInfo::mountPoint( partition ) ) << TR( "fs:", map[ "fs" ].toString() )
<< TR( "fsName", map[ "fsName" ].toString() ) << TR( "uuid", uuid ) << TR( "fsName", map[ "fsName" ].toString() ) << TR( "uuid", uuid )
<< TR( "claimed", map[ "claimed" ].toString() ); << TR( "claimed", map[ "claimed" ].toString() );

View File

@ -106,6 +106,7 @@ defaultFileSystemType: "ext4"
# size: 20% # size: 20%
# minSize: 500M # minSize: 500M
# maxSize: 10G # maxSize: 10G
# attributes: 0xffff000000000003
# - name: "home" # - name: "home"
# type = "933ac7e1-2eb4-4f13-b844-0e14e2aef915" # type = "933ac7e1-2eb4-4f13-b844-0e14e2aef915"
# filesystem: "ext4" # filesystem: "ext4"
@ -127,7 +128,9 @@ defaultFileSystemType: "ext4"
# - name: filesystem label # - name: filesystem label
# and # and
# partition name (gpt only; since KPMCore 4.2.0) # partition name (gpt only; since KPMCore 4.2.0)
# - uuid: partition uuid (optional parameter; gpt only; requires KPMCore >= 4.2.0)
# - type: partition type (optional parameter; gpt only; requires KPMCore >= 4.2.0) # - type: partition type (optional parameter; gpt only; requires KPMCore >= 4.2.0)
# - attributes: partition attributes (optional parameter; gpt only; requires KPMCore >= 4.2.0)
# - filesystem: filesystem type # - filesystem: filesystem type
# - mountPoint: partition mount point # - mountPoint: partition mount point
# - size: partition size in bytes (append 'K', 'M' or 'G' for KiB, MiB or GiB) # - size: partition size in bytes (append 'K', 'M' or 'G' for KiB, MiB or GiB)

View File

@ -0,0 +1,11 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/partition
additionalProperties: false
type: object
properties:
efiSystemPartition: { type: string, required: true }
ensureSuspendToDisk: { type: boolean, default: true }
drawNestedPartitions: { type: boolean, default: false }
alwaysShowPartitionLabels: { type: boolean, default: true }
defaultFileSystemType: { type: string, required: true }

View File

@ -0,0 +1,7 @@
---
$schema: https://json-schema.org/schema#
$id: https://calamares.io/schemas/plymouthcfg
additionalProperties: false
type: object
properties:
plymouth_theme: { type: str }

Some files were not shown because too many files have changed in this diff Show More