Merge branch 'master' of https://github.com/calamares/calamares into development
1
.gitignore
vendored
@ -21,6 +21,7 @@ __pycache__
|
||||
*.pro.user
|
||||
*.pro.user.*
|
||||
*.moc
|
||||
*.qmlc
|
||||
moc_*.cpp
|
||||
qrc_*.cpp
|
||||
ui_*.h
|
||||
|
@ -1,43 +1,136 @@
|
||||
# === This file is part of Calamares - <https://github.com/calamares> ===
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Calamares is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0+
|
||||
# License-Filename: LICENSE
|
||||
#
|
||||
###
|
||||
#
|
||||
# Support macros for creating Calamares branding components.
|
||||
#
|
||||
# Calamares branding components have two parts:
|
||||
# - a branding.desc file that tells Calamares how to describe the product
|
||||
# (e.g. strings like "Generic GNU/Linux") and the name of a QML file
|
||||
# (the "slideshow") that is displayed during installation.
|
||||
# - the QML files themselves, plus supporting images etc.
|
||||
#
|
||||
# Branding components can be created inside the Calamares source tree
|
||||
# (there is one example the `default/` branding, which is also connected
|
||||
# to the default configuration shipped with Calamares), but they can be
|
||||
# built outside of, and largely independently of, Calamares by using
|
||||
# these CMake macros.
|
||||
#
|
||||
# See the calamares-examples repository for more examples.
|
||||
#
|
||||
include( CMakeParseArguments)
|
||||
|
||||
include( CMakeColors )
|
||||
|
||||
function( calamares_add_branding_subdirectory )
|
||||
set( SUBDIRECTORY ${ARGV0} )
|
||||
# Usage calamares_add_branding( <name> [DIRECTORY <dir>] [SUBDIRECTORIES <dir> ...])
|
||||
#
|
||||
# Adds a branding component to the build:
|
||||
# - the component's top-level files are copied into the build-dir;
|
||||
# CMakeLists.txt is excluded from the glob.
|
||||
# - the component's top-level files are installed into the component branding dir
|
||||
#
|
||||
# The branding component lives in <dir> if given, otherwise the
|
||||
# current source directory. The branding component is installed
|
||||
# with the given <name>, which is usually the name of the
|
||||
# directory containing the component, and which must match the
|
||||
# *componentName* in `branding.desc`.
|
||||
#
|
||||
# If SUBDIRECTORIES are given, then those are copied (each one level deep)
|
||||
# to the installation location as well, preserving the subdirectory name.
|
||||
function( calamares_add_branding NAME )
|
||||
set( _CABT_DIRECTORY "." )
|
||||
cmake_parse_arguments( _CABT "" "DIRECTORY" "SUBDIRECTORIES" ${ARGN} )
|
||||
set( SUBDIRECTORY ${_CABT_DIRECTORY} )
|
||||
set( _brand_dir ${_CABT_DIRECTORY} )
|
||||
|
||||
if( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/CMakeLists.txt" )
|
||||
add_subdirectory( $SUBDIRECTORY )
|
||||
message( "-- ${BoldYellow}Found ${CALAMARES_APPLICATION_NAME} branding component: ${BoldRed}${SUBDIRECTORY}${ColorReset}" )
|
||||
set( BRANDING_DIR share/calamares/branding )
|
||||
set( BRANDING_COMPONENT_DESTINATION ${BRANDING_DIR}/${NAME} )
|
||||
|
||||
elseif( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/branding.desc" )
|
||||
set( BRANDING_DIR share/calamares/branding )
|
||||
set( BRANDING_COMPONENT_DESTINATION ${BRANDING_DIR}/${SUBDIRECTORY} )
|
||||
|
||||
if( IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/lang" )
|
||||
message( "-- ${BoldYellow}Warning:${ColorReset} branding component ${BoldRed}${SUBDIRECTORY}${ColorReset} has a translations subdirectory but no CMakeLists.txt." )
|
||||
message( "" )
|
||||
return()
|
||||
endif()
|
||||
|
||||
# We glob all the files inside the subdirectory, and we make sure they are
|
||||
# synced with the bindir structure and installed.
|
||||
file( GLOB BRANDING_COMPONENT_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY} "${SUBDIRECTORY}/*" )
|
||||
foreach( _subdir "" ${_CABT_SUBDIRECTORIES} )
|
||||
file( GLOB BRANDING_COMPONENT_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/${_brand_dir} "${_brand_dir}/${_subdir}/*" )
|
||||
message(STATUS "${BRANDING_COMPONENT_FILES}")
|
||||
foreach( BRANDING_COMPONENT_FILE ${BRANDING_COMPONENT_FILES} )
|
||||
if( NOT IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/${BRANDING_COMPONENT_FILE} )
|
||||
configure_file( ${SUBDIRECTORY}/${BRANDING_COMPONENT_FILE} ${SUBDIRECTORY}/${BRANDING_COMPONENT_FILE} COPYONLY )
|
||||
set( _subpath ${_brand_dir}/${BRANDING_COMPONENT_FILE} )
|
||||
if( NOT IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_subpath} )
|
||||
configure_file( ${_subpath} ${_subpath} COPYONLY )
|
||||
|
||||
install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${SUBDIRECTORY}/${BRANDING_COMPONENT_FILE}
|
||||
DESTINATION ${BRANDING_COMPONENT_DESTINATION} )
|
||||
install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${_subpath}
|
||||
DESTINATION ${BRANDING_COMPONENT_DESTINATION}/${_subdir}/ )
|
||||
endif()
|
||||
endforeach()
|
||||
endforeach()
|
||||
|
||||
message( "-- ${BoldYellow}Found ${CALAMARES_APPLICATION_NAME} branding component: ${BoldRed}${SUBDIRECTORY}${ColorReset}" )
|
||||
if( NOT CMAKE_BUILD_TYPE STREQUAL "Release" )
|
||||
message( " ${Green}TYPE:${ColorReset} branding component" )
|
||||
# message( " ${Green}FILES:${ColorReset} ${BRANDING_COMPONENT_FILES}" )
|
||||
message( " ${Green}BRANDING_COMPONENT_DESTINATION:${ColorReset} ${BRANDING_COMPONENT_DESTINATION}" )
|
||||
message( "" )
|
||||
message( "-- ${BoldYellow}Found ${CALAMARES_APPLICATION_NAME} branding component: ${BoldRed}${NAME}${ColorReset}" )
|
||||
if( NOT CMAKE_BUILD_TYPE STREQUAL "Release" )
|
||||
message( " ${Green}TYPE:${ColorReset} branding component" )
|
||||
message( " ${Green}BRANDING_COMPONENT_DESTINATION:${ColorReset} ${BRANDING_COMPONENT_DESTINATION}" )
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Usage calamares_add_branding_translations( <name> [DIRECTORY <dir>])
|
||||
#
|
||||
# Adds the translations for a branding component to the build:
|
||||
# - the component's lang/ directory is scanned for .ts files
|
||||
# - the component's translations are installed into the component branding dir
|
||||
#
|
||||
# Translation files must be called calamares-<name>_<lang>.ts . Optionally
|
||||
# the lang/ dir is found in the given <dir> instead of the current source
|
||||
# directory.
|
||||
function( calamares_add_branding_translations NAME )
|
||||
set( _CABT_DIRECTORY "." )
|
||||
cmake_parse_arguments( _CABT "" "DIRECTORY" "" ${ARGN} )
|
||||
set( SUBDIRECTORY ${_CABT_DIRECTORY} )
|
||||
set( _brand_dir ${_CABT_DIRECTORY} )
|
||||
|
||||
set( BRANDING_DIR share/calamares/branding )
|
||||
set( BRANDING_COMPONENT_DESTINATION ${BRANDING_DIR}/${NAME} )
|
||||
|
||||
file( GLOB BRANDING_TRANSLATION_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${SUBDIRECTORY}/lang/calamares-${NAME}_*.ts" )
|
||||
if ( BRANDING_TRANSLATION_FILES )
|
||||
qt5_add_translation( QM_FILES ${BRANDING_TRANSLATION_FILES} )
|
||||
add_custom_target( branding-translation-${NAME} ALL DEPENDS ${QM_FILES} )
|
||||
install( FILES ${QM_FILES} DESTINATION ${BRANDING_COMPONENT_DESTINATION}/lang/ )
|
||||
list( LENGTH BRANDING_TRANSLATION_FILES _branding_count )
|
||||
message( " ${Green}BRANDING_TRANSLATIONS:${ColorReset} ${_branding_count} language(s)" )
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Usage calamares_add_branding_subdirectory( <dir> [SUBDIRECTORIES <dir> ...])
|
||||
#
|
||||
# Adds a branding component from a subdirectory:
|
||||
# - if there is a CMakeLists.txt, use that
|
||||
# - otherwise assume a "standard" setup with top-level files and a lang/ dir for translations
|
||||
#
|
||||
# If SUBDIRECTORIES are given, they are relative to <dir>, and are
|
||||
# copied (one level deep) to the install location as well.
|
||||
function( calamares_add_branding_subdirectory SUBDIRECTORY )
|
||||
cmake_parse_arguments( _CABS "" "" "SUBDIRECTORIES" ${ARGN} )
|
||||
|
||||
if( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/CMakeLists.txt" )
|
||||
add_subdirectory( ${SUBDIRECTORY} )
|
||||
elseif( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/branding.desc" )
|
||||
calamares_add_branding( ${SUBDIRECTORY} DIRECTORY ${SUBDIRECTORY} SUBDIRECTORIES ${_CABS_SUBDIRECTORIES} )
|
||||
if( IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIRECTORY}/lang" )
|
||||
calamares_add_branding_translations( ${SUBDIRECTORY} DIRECTORY ${SUBDIRECTORY} )
|
||||
endif()
|
||||
else()
|
||||
message( "-- ${BoldYellow}Warning:${ColorReset} tried to add branding component subdirectory ${BoldRed}${SUBDIRECTORY}${ColorReset} which has no branding.desc." )
|
||||
message( "" )
|
||||
endif()
|
||||
message( "" )
|
||||
endfunction()
|
||||
|
@ -1,3 +1,25 @@
|
||||
# === This file is part of Calamares - <https://github.com/calamares> ===
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Calamares is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0+
|
||||
# License-Filename: LICENSE
|
||||
#
|
||||
###
|
||||
#
|
||||
# Support functions for building plugins.
|
||||
|
||||
include( CMakeParseArguments )
|
||||
|
||||
function(calamares_add_library)
|
||||
@ -64,7 +86,7 @@ function(calamares_add_library)
|
||||
endif()
|
||||
|
||||
# add link targets
|
||||
target_link_libraries(${target}
|
||||
target_link_libraries(${target}
|
||||
LINK_PUBLIC ${CALAMARES_LIBRARIES}
|
||||
Qt5::Core
|
||||
Qt5::Gui
|
||||
|
@ -1,3 +1,26 @@
|
||||
# === This file is part of Calamares - <https://github.com/calamares> ===
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Calamares is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0+
|
||||
# License-Filename: LICENSE
|
||||
#
|
||||
###
|
||||
#
|
||||
# Function and support code for adding a Calamares module (either a Qt / C++ plugin,
|
||||
# or a Python module, or whatever) to the build.
|
||||
#
|
||||
include( CalamaresAddTranslations )
|
||||
|
||||
set( MODULE_DATA_DESTINATION share/calamares/modules )
|
||||
|
@ -1,3 +1,23 @@
|
||||
# === This file is part of Calamares - <https://github.com/calamares> ===
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Calamares is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0+
|
||||
# License-Filename: LICENSE
|
||||
#
|
||||
###
|
||||
#
|
||||
# Convenience function for creating a C++ (qtplugin) module for Calamares.
|
||||
# This function provides cmake-time feedback about the plugin, adds
|
||||
# targets for compilation and boilerplate information, and creates
|
||||
|
@ -1,3 +1,25 @@
|
||||
# === This file is part of Calamares - <https://github.com/calamares> ===
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Calamares is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with Calamares. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0+
|
||||
# License-Filename: LICENSE
|
||||
#
|
||||
###
|
||||
#
|
||||
# This file has not yet been documented for use outside of Calamares itself.
|
||||
|
||||
include( CMakeParseArguments )
|
||||
|
||||
# Internal macro for adding the C++ / Qt translations to the
|
||||
|
@ -1,8 +1,16 @@
|
||||
# - Config file for the Calamares package
|
||||
# Config file for the Calamares package
|
||||
#
|
||||
# It defines the following variables
|
||||
# CALAMARES_INCLUDE_DIRS - include directories for Calamares
|
||||
# CALAMARES_LIBRARIES - libraries to link against
|
||||
# CALAMARES_EXECUTABLE - the bar executable
|
||||
# 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}")
|
||||
#
|
||||
|
||||
# Compute paths
|
||||
get_filename_component(CALAMARES_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||
@ -18,4 +26,7 @@ include("${CALAMARES_CMAKE_DIR}/CalamaresLibraryDepends.cmake")
|
||||
|
||||
# These are IMPORTED targets created by CalamaresLibraryDepends.cmake
|
||||
set(CALAMARES_LIBRARIES calamares)
|
||||
|
||||
# Convenience variables
|
||||
set(CALAMARES_USE_FILE "${CALAMARES_CMAKE_DIR}/CalamaresUse.cmake")
|
||||
set(CALAMARES_APPLICATION_NAME "Calamares")
|
||||
|
@ -20,7 +20,7 @@ if( NOT CALAMARES_CMAKE_DIR )
|
||||
endif()
|
||||
set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CALAMARES_CMAKE_DIR} )
|
||||
|
||||
find_package( Qt5 @QT_VERSION@ CONFIG REQUIRED Core Widgets )
|
||||
find_package( Qt5 @QT_VERSION@ CONFIG REQUIRED Core Widgets LinguistTools )
|
||||
|
||||
include( CalamaresAddLibrary )
|
||||
include( CalamaresAddModuleSubdirectory )
|
||||
|
@ -33,7 +33,10 @@ fi
|
||||
# sources, then push to Transifex
|
||||
|
||||
export QT_SELECT=5
|
||||
lupdate src/ -ts -no-obsolete lang/calamares_en.ts
|
||||
# Don't pull branding translations in,
|
||||
# those are done separately.
|
||||
_srcdirs="src/calamares src/libcalamares src/libcalamaresui src/modules src/qml"
|
||||
lupdate $_srcdirs -ts -no-obsolete lang/calamares_en.ts
|
||||
|
||||
tx push --source --no-interactive -r calamares.calamares-master
|
||||
tx push --source --no-interactive -r calamares.fdo
|
||||
|
@ -1865,7 +1865,7 @@ Sortida:
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="279"/>
|
||||
<source>Bad parameters for process job call.</source>
|
||||
<translation>Paràmetres incorrectes per a la crida del procés.</translation>
|
||||
<translation>Paràmetres incorrectes per a la crida de la tasca del procés.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="282"/>
|
||||
|
@ -1244,7 +1244,7 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/>
|
||||
<source>Memory allocation error when setting '%1'</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Fejl ved allokering af hukommelse ved sættelse af '%1'</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/>
|
||||
@ -1264,7 +1264,7 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/>
|
||||
<source>The password differs with case changes only</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden har kun ændringer i store/små bogstaver</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/>
|
||||
@ -1279,7 +1279,7 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="178"/>
|
||||
<source>The password contains words from the real name of the user in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder i nogen form ord fra brugerens rigtige navn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/>
|
||||
@ -1319,12 +1319,12 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="195"/>
|
||||
<source>The password contains less than %1 non-alphanumeric characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder færre end %1 ikke-alfanumeriske tegn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="196"/>
|
||||
<source>The password contains too few non-alphanumeric characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder for få ikke-alfanumeriske tegn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="199"/>
|
||||
@ -1354,32 +1354,32 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="209"/>
|
||||
<source>The password contains more than %1 same characters consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder flere end %1 af de samme tegn i træk</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="210"/>
|
||||
<source>The password contains too many same characters consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder for mange af de samme tegn i træk</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="213"/>
|
||||
<source>The password contains more than %1 characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder flere end %1 tegn af den samme klasse i træk</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/>
|
||||
<source>The password contains too many characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder for mange tegn af den samme klasse i træk</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="217"/>
|
||||
<source>The password contains monotonic sequence longer than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder monoton sekvens som er længere end %1 tegn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="218"/>
|
||||
<source>The password contains too long of a monotonic character sequence</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden indeholder en monoton tegnsekvens som er for lang</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="220"/>
|
||||
@ -1394,17 +1394,17 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="224"/>
|
||||
<source>Password generation failed - required entropy too low for settings</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Generering af adgangskode mislykkedes - krævede entropi er for lav til indstillinger</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="229"/>
|
||||
<source>The password fails the dictionary check - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden bestod ikke ordbogstjekket - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/>
|
||||
<source>The password fails the dictionary check</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Adgangskoden bestod ikke ordbogstjekket</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
|
||||
@ -1419,7 +1419,7 @@ Installationsprogrammet vil stoppe og alle ændringer vil gå tabt.</translation
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/>
|
||||
<source>Bad integer value of setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Dårlig heltalsværdi til indstilling - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/>
|
||||
|
@ -1239,232 +1239,232 @@ Instalacijski program će izaći i sve promjene će biti izgubljene.</translatio
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="155"/>
|
||||
<source>Password is too weak</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka je preslaba</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/>
|
||||
<source>Memory allocation error when setting '%1'</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Pogreška u dodjeli memorije prilikom postavljanja '%1'</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/>
|
||||
<source>Memory allocation error</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Pogreška u dodjeli memorije</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="168"/>
|
||||
<source>The password is the same as the old one</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka je ista prethodnoj</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/>
|
||||
<source>The password is a palindrome</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka je palindrom</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/>
|
||||
<source>The password differs with case changes only</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka se razlikuje samo u promjenama velikog i malog slova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/>
|
||||
<source>The password is too similar to the old one</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka je slična prethodnoj</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/>
|
||||
<source>The password contains the user name in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka u nekoj formi sadrži korisničko ime</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="178"/>
|
||||
<source>The password contains words from the real name of the user in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka u nekoj formi sadrži stvarno ime korisnika</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/>
|
||||
<source>The password contains forbidden words in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka u nekoj formi sadrži zabranjene rijeći</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="183"/>
|
||||
<source>The password contains less than %1 digits</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži manje od %1 brojeva</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="184"/>
|
||||
<source>The password contains too few digits</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži premalo brojeva</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="187"/>
|
||||
<source>The password contains less than %1 uppercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži manje od %1 velikih slova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="188"/>
|
||||
<source>The password contains too few uppercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži premalo velikih slova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="191"/>
|
||||
<source>The password contains less than %1 lowercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži manje od %1 malih slova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="192"/>
|
||||
<source>The password contains too few lowercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži premalo malih slova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="195"/>
|
||||
<source>The password contains less than %1 non-alphanumeric characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži manje od %1 ne-alfanumeričkih znakova.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="196"/>
|
||||
<source>The password contains too few non-alphanumeric characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži premalo ne-alfanumeričkih znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="199"/>
|
||||
<source>The password is shorter than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka je kraća od %1 znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="200"/>
|
||||
<source>The password is too short</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka je prekratka</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/>
|
||||
<source>The password is just rotated old one</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka je jednaka rotiranoj prethodnoj</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="205"/>
|
||||
<source>The password contains less than %1 character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži manje od %1 razreda znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="206"/>
|
||||
<source>The password does not contain enough character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka ne sadrži dovoljno razreda znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="209"/>
|
||||
<source>The password contains more than %1 same characters consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži više od %1 uzastopnih znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="210"/>
|
||||
<source>The password contains too many same characters consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži previše uzastopnih znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="213"/>
|
||||
<source>The password contains more than %1 characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži više od %1 uzastopnih znakova iz istog razreda</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/>
|
||||
<source>The password contains too many characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži previše uzastopnih znakova iz istog razreda</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="217"/>
|
||||
<source>The password contains monotonic sequence longer than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži monotonu sekvencu dužu od %1 znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="218"/>
|
||||
<source>The password contains too long of a monotonic character sequence</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Lozinka sadrži previše monotonu sekvencu znakova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="220"/>
|
||||
<source>No password supplied</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nema isporučene lozinke</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="222"/>
|
||||
<source>Cannot obtain random numbers from the RNG device</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Ne mogu dobiti slučajne brojeve od RNG uređaja</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="224"/>
|
||||
<source>Password generation failed - required entropy too low for settings</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Generiranje lozinke nije uspjelo - potrebna entropija je premala za postavke</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="229"/>
|
||||
<source>The password fails the dictionary check - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nije uspjela provjera rječnika za lozinku - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/>
|
||||
<source>The password fails the dictionary check</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nije uspjela provjera rječnika za lozinku</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
|
||||
<source>Unknown setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nepoznate postavke - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="239"/>
|
||||
<source>Unknown setting</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nepoznate postavke</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/>
|
||||
<source>Bad integer value of setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Loša cjelobrojna vrijednost postavke - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/>
|
||||
<source>Bad integer value</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Loša cjelobrojna vrijednost</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="251"/>
|
||||
<source>Setting %1 is not of integer type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Postavka %1 nije cjelobrojnog tipa</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="255"/>
|
||||
<source>Setting is not of integer type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Postavka nije cjelobrojnog tipa</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="259"/>
|
||||
<source>Setting %1 is not of string type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Postavka %1 nije tipa znakovnog niza</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="263"/>
|
||||
<source>Setting is not of string type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Postavka nije tipa znakovnog niza</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="265"/>
|
||||
<source>Opening the configuration file failed</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nije uspjelo otvaranje konfiguracijske datoteke</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/>
|
||||
<source>The configuration file is malformed</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Konfiguracijska datoteka je oštećena</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="269"/>
|
||||
<source>Fatal failure</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Fatalna pogreška</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="271"/>
|
||||
<source>Unknown error</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nepoznata greška</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -1825,7 +1825,8 @@ Instalacijski program će izaći i sve promjene će biti izgubljene.</translatio
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="263"/>
|
||||
<source>
|
||||
There was no output from the command.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>
|
||||
Nema izlazne informacije od naredbe.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="264"/>
|
||||
|
@ -486,7 +486,7 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/contextualprocess/ContextualProcessJob.cpp" line="75"/>
|
||||
<source>Contextual Processes Job</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>コンテキストプロセスジョブ</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -1370,7 +1370,7 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/>
|
||||
<source>The password contains too many characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>パスワードで同じ文字クラスの文字を続けすぎています</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="217"/>
|
||||
@ -2326,7 +2326,7 @@ Output:
|
||||
<message>
|
||||
<location filename="../src/modules/shellprocess/ShellProcessJob.cpp" line="51"/>
|
||||
<source>Shell Processes Job</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>シェルプロセスジョブ</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -2441,17 +2441,17 @@ Output:
|
||||
<message>
|
||||
<location filename="../src/modules/tracking/TrackingPage.cpp" line="45"/>
|
||||
<source>By selecting this you will send information about your installation and hardware. This information will <b>only be sent once</b> after the installation finishes.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>インストールやハードウェアの情報を送信します。この情報はインストール終了後 <b> 1回だけ送信されます</b> 。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/tracking/TrackingPage.cpp" line="46"/>
|
||||
<source>By selecting this you will <b>periodically</b> send information about your installation, hardware and applications, to %1.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>%1 へのハードウェアやアプリケーションのインストール情報を定期的に送信します。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/tracking/TrackingPage.cpp" line="47"/>
|
||||
<source>By selecting this you will <b>regularly</b> send information about your installation, hardware, applications and usage patterns, to %1.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>%1 へのハードウェアやアプリケーションのインストール、使用法などの情報を定期的に送信します。</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -749,7 +749,7 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="114"/>
|
||||
<source>This is a <strong>loop</strong> device.<br><br>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>Este é um dispositivo de <strong>loop</strong>.<br><br>Este é um pseudo-dispositivo sem tabela de partições que faz um arquivo acessível como um dispositivo de bloco. Este tipo de configuração normalmente contém apenas um único sistema de arquivos.</translation>
|
||||
<translation>Este é um dispositivo de <strong>loop</strong>.<br><br>Esse é um pseudo-dispositivo sem tabela de partições que faz um arquivo acessível como um dispositivo de bloco. Esse tipo de configuração normalmente contém apenas um único sistema de arquivos.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/DeviceInfoWidget.cpp" line="121"/>
|
||||
@ -1261,12 +1261,12 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/>
|
||||
<source>The password is a palindrome</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha é um palíndromo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/>
|
||||
<source>The password differs with case changes only</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha difere apenas com mudanças entre maiúsculas ou minúsculas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/>
|
||||
@ -1276,12 +1276,12 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/>
|
||||
<source>The password contains the user name in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém o nome de usuário em alguma forma</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="178"/>
|
||||
<source>The password contains words from the real name of the user in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém palavras do nome real do usuário em alguma forma</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/>
|
||||
@ -1291,27 +1291,27 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="183"/>
|
||||
<source>The password contains less than %1 digits</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém menos de %1 dígitos</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="184"/>
|
||||
<source>The password contains too few digits</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém poucos dígitos</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="187"/>
|
||||
<source>The password contains less than %1 uppercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém menos que %1 letras maiúsculas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="188"/>
|
||||
<source>The password contains too few uppercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém poucas letras maiúsculas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="191"/>
|
||||
<source>The password contains less than %1 lowercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém menos que %1 letras minúsculas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="192"/>
|
||||
@ -1321,7 +1321,7 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="195"/>
|
||||
<source>The password contains less than %1 non-alphanumeric characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém menos que %1 caracteres não alfanuméricos</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="196"/>
|
||||
@ -1331,7 +1331,7 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="199"/>
|
||||
<source>The password is shorter than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha é menor que %1 caracteres</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="200"/>
|
||||
@ -1341,22 +1341,22 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/>
|
||||
<source>The password is just rotated old one</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha é apenas uma antiga modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="205"/>
|
||||
<source>The password contains less than %1 character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém menos de %1 tipos de caracteres</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="206"/>
|
||||
<source>The password does not contain enough character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha não contém tipos suficientes de caracteres</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="209"/>
|
||||
<source>The password contains more than %1 same characters consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém mais que %1 caracteres iguais consecutivamente</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="210"/>
|
||||
@ -1366,7 +1366,7 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="213"/>
|
||||
<source>The password contains more than %1 characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém mais que %1 caracteres do mesmo tipo consecutivamente</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/>
|
||||
@ -1376,12 +1376,12 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="217"/>
|
||||
<source>The password contains monotonic sequence longer than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém uma sequência monotônica com mais de %1 caracteres</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="218"/>
|
||||
<source>The password contains too long of a monotonic character sequence</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha contém uma sequência de caracteres monotônicos muito longa</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="220"/>
|
||||
@ -1396,22 +1396,22 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="224"/>
|
||||
<source>Password generation failed - required entropy too low for settings</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A geração de senha falhou - a entropia requerida é muito baixa para as configurações</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="229"/>
|
||||
<source>The password fails the dictionary check - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation> A senha falhou na verificação do dicionário - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/>
|
||||
<source>The password fails the dictionary check</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A senha falhou na verificação do dicionário</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
|
||||
<source>Unknown setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Configuração desconhecida - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="239"/>
|
||||
@ -1421,17 +1421,17 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/>
|
||||
<source>Bad integer value of setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Valor de número inteiro errado na configuração - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/>
|
||||
<source>Bad integer value</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Valor de número inteiro errado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="251"/>
|
||||
<source>Setting %1 is not of integer type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A configuração %1 não é do tipo inteiro</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="255"/>
|
||||
@ -1441,7 +1441,7 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="259"/>
|
||||
<source>Setting %1 is not of string type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>A configuração %1 não é do tipo string</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="263"/>
|
||||
@ -1456,7 +1456,7 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/>
|
||||
<source>The configuration file is malformed</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>O arquivo de configuração está defeituoso</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="269"/>
|
||||
@ -1778,7 +1778,7 @@ A instalação pode continuar, mas alguns recursos podem ser desativados.</trans
|
||||
<message>
|
||||
<location filename="../src/modules/partition/gui/PartitionViewStep.cpp" line="449"/>
|
||||
<source>A separate boot partition was set up together with an encrypted root partition, but the boot partition is not encrypted.<br/><br/>There are security concerns with this kind of setup, because important system files are kept on an unencrypted partition.<br/>You may continue if you wish, but filesystem unlocking will happen later during system startup.<br/>To encrypt the boot partition, go back and recreate it, selecting <strong>Encrypt</strong> in the partition creation window.</source>
|
||||
<translation>Uma partição de inicialização separada foi configurada juntamente com uma partição raiz criptografada, mas a partição de inicialização não é criptografada.<br/><br/>Há preocupações de segurança quanto a este tipo de configuração, porque arquivos de sistema importantes são mantidos em uma partição não criptografada.<br/>Você pode continuar se quiser, mas o desbloqueio do sistema de arquivos acontecerá mais tarde durante a inicialização do sistema.<br/>Para criptografar a partição de inicialização, volte e recrie-a, selecionando <strong>Criptografar</strong> na janela de criação da partição.</translation>
|
||||
<translation>Uma partição de inicialização separada foi configurada juntamente com uma partição raiz criptografada, mas a partição de inicialização não é criptografada.<br/><br/>Há preocupações de segurança quanto a esse tipo de configuração, porque arquivos de sistema importantes são mantidos em uma partição não criptografada.<br/>Você pode continuar se quiser, mas o desbloqueio do sistema de arquivos acontecerá mais tarde durante a inicialização do sistema.<br/>Para criptografar a partição de inicialização, volte e recrie-a, selecionando <strong>Criptografar</strong> na janela de criação da partição.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -472,7 +472,7 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CommandList.cpp" line="113"/>
|
||||
<source>Could not run command.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Не удалось выполнить команду.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CommandList.cpp" line="114"/>
|
||||
@ -1388,7 +1388,7 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="222"/>
|
||||
<source>Cannot obtain random numbers from the RNG device</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Не удаётся получить случайные числа с устройства RNG</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="224"/>
|
||||
@ -1398,12 +1398,12 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="229"/>
|
||||
<source>The password fails the dictionary check - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль не прошёл проверку на использование словарных слов - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/>
|
||||
<source>The password fails the dictionary check</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Пароль не прошёл проверку на использование словарных слов</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
|
||||
@ -1448,7 +1448,7 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="265"/>
|
||||
<source>Opening the configuration file failed</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Не удалось открыть конфигурационный файл</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/>
|
||||
@ -1836,12 +1836,12 @@ Output:
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="267"/>
|
||||
<source>External command crashed.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Сбой внешней команды.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="268"/>
|
||||
<source>Command <i>%1</i> crashed.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Сбой команды <i>%1</i>.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="273"/>
|
||||
@ -1881,7 +1881,7 @@ Output:
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="290"/>
|
||||
<source>Command <i>%1</i> finished with exit code %2.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Команда <i>%1</i> завершилась с кодом %2.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -1249,7 +1249,7 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/>
|
||||
<source>Memory allocation error</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Chyba počas vyhradzovania pamäte</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="168"/>
|
||||
@ -1274,12 +1274,12 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/>
|
||||
<source>The password contains the user name in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Heslo obsahuje v nejakom tvare používateľské meno</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="178"/>
|
||||
<source>The password contains words from the real name of the user in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Heslo obsahuje v nejakom tvare slová zo skutočného mena používateľa</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/>
|
||||
@ -1384,12 +1384,12 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="220"/>
|
||||
<source>No password supplied</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nebolo poskytnuté žiadne heslo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="222"/>
|
||||
<source>Cannot obtain random numbers from the RNG device</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nedajú sa získať náhodné čísla zo zariadenia RNG</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="224"/>
|
||||
@ -1409,42 +1409,42 @@ Inštalátor sa ukončí a všetky zmeny budú stratené.</translation>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
|
||||
<source>Unknown setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Neznáme nastavenie - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="239"/>
|
||||
<source>Unknown setting</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Neznáme nastavenie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/>
|
||||
<source>Bad integer value of setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nesprávna celočíselná hodnota nastavenia - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/>
|
||||
<source>Bad integer value</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nesprávna celočíselná hodnota</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="251"/>
|
||||
<source>Setting %1 is not of integer type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nastavenie %1 nie je celé číslo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="255"/>
|
||||
<source>Setting is not of integer type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nastavenie nie je celé číslo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="259"/>
|
||||
<source>Setting %1 is not of string type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nastavenie %1 nie je reťazec</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="263"/>
|
||||
<source>Setting is not of string type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Nastavenie nie je reťazec</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="265"/>
|
||||
|
@ -1241,232 +1241,232 @@ The installer will quit and all changes will be lost.</source>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="155"/>
|
||||
<source>Password is too weak</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>密码强度太弱</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="162"/>
|
||||
<source>Memory allocation error when setting '%1'</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>设置“%1”时发生内存分配错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="166"/>
|
||||
<source>Memory allocation error</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>内存分配错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="168"/>
|
||||
<source>The password is the same as the old one</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码和老密码一致</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="170"/>
|
||||
<source>The password is a palindrome</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码为回文</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="172"/>
|
||||
<source>The password differs with case changes only</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码和老密码只有大小写区别</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="174"/>
|
||||
<source>The password is too similar to the old one</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码和老密码过于相似</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="176"/>
|
||||
<source>The password contains the user name in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含用户名</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="178"/>
|
||||
<source>The password contains words from the real name of the user in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含用户真实姓名</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="180"/>
|
||||
<source>The password contains forbidden words in some form</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含不允许使用的词组</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="183"/>
|
||||
<source>The password contains less than %1 digits</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含少于 %1 个数字</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="184"/>
|
||||
<source>The password contains too few digits</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含太少数字</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="187"/>
|
||||
<source>The password contains less than %1 uppercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含少于 %1 个大写字母</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="188"/>
|
||||
<source>The password contains too few uppercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含太少大写字母</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="191"/>
|
||||
<source>The password contains less than %1 lowercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含少于 %1 个小写字母</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="192"/>
|
||||
<source>The password contains too few lowercase letters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含太少小写字母</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="195"/>
|
||||
<source>The password contains less than %1 non-alphanumeric characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含少于 %1 个非字母/数字字符</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="196"/>
|
||||
<source>The password contains too few non-alphanumeric characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含太少非字母/数字字符</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="199"/>
|
||||
<source>The password is shorter than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码短于 %1 位</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="200"/>
|
||||
<source>The password is too short</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码过短</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="202"/>
|
||||
<source>The password is just rotated old one</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码仅对老密码作了字序调整</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="205"/>
|
||||
<source>The password contains less than %1 character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含少于 %1 个字符类型</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="206"/>
|
||||
<source>The password does not contain enough character classes</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含太少字符类型</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="209"/>
|
||||
<source>The password contains more than %1 same characters consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含超过 %1 个连续的相同字符</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="210"/>
|
||||
<source>The password contains too many same characters consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含过多连续的相同字符</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="213"/>
|
||||
<source>The password contains more than %1 characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含超过 %1 个连续的同类型字符</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="214"/>
|
||||
<source>The password contains too many characters of the same class consecutively</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含过多连续的同类型字符</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="217"/>
|
||||
<source>The password contains monotonic sequence longer than %1 characters</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含超过 %1 个字符长度的单调序列</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="218"/>
|
||||
<source>The password contains too long of a monotonic character sequence</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码包含过长的单调序列</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="220"/>
|
||||
<source>No password supplied</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>未输入密码</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="222"/>
|
||||
<source>Cannot obtain random numbers from the RNG device</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>无法从随机数生成器 (RNG) 设备获取随机数</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="224"/>
|
||||
<source>Password generation failed - required entropy too low for settings</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>无法生成密码 - 熵值过低</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="229"/>
|
||||
<source>The password fails the dictionary check - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码无法通过字典检查 - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="231"/>
|
||||
<source>The password fails the dictionary check</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>新密码无法通过字典检查</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="235"/>
|
||||
<source>Unknown setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>未知设置 - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="239"/>
|
||||
<source>Unknown setting</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>未知设置</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="243"/>
|
||||
<source>Bad integer value of setting - %1</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>设置的整数值非法 - %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="247"/>
|
||||
<source>Bad integer value</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>设置的整数值非法</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="251"/>
|
||||
<source>Setting %1 is not of integer type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>设定值 %1 不是整数类型</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="255"/>
|
||||
<source>Setting is not of integer type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>设定值不是整数类型</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="259"/>
|
||||
<source>Setting %1 is not of string type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>设定值 %1 不是字符串类型</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="263"/>
|
||||
<source>Setting is not of string type</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>设定值不是字符串类型</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="265"/>
|
||||
<source>Opening the configuration file failed</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>无法打开配置文件</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="267"/>
|
||||
<source>The configuration file is malformed</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>配置文件格式不正确</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="269"/>
|
||||
<source>Fatal failure</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>致命错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/modules/users/CheckPWQuality.cpp" line="271"/>
|
||||
<source>Unknown error</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>未知错误</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -1827,7 +1827,8 @@ The installer will quit and all changes will be lost.</source>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="263"/>
|
||||
<source>
|
||||
There was no output from the command.</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>
|
||||
命令没有输出。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/libcalamares/utils/CalamaresUtilsSystem.cpp" line="264"/>
|
||||
|
@ -10,7 +10,7 @@ msgstr ""
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-02-07 18:58+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: Kristján Magnússon, 2017\n"
|
||||
"Last-Translator: Krissi, 2017\n"
|
||||
"Language-Team: Icelandic (https://www.transifex.com/calamares/teams/20061/is/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -7,11 +7,33 @@ file, containing brand-specific strings in a key-value structure, plus
|
||||
brand-specific images or QML. Such a subdirectory, when placed here, is
|
||||
automatically picked up by CMake and made available to Calamares.
|
||||
|
||||
It is recommended to package branding separately, so as to avoid
|
||||
forking Calamares just for adding some files. Calamares installs
|
||||
CMake support macros to help create branding packages. See the
|
||||
calamares-branding repository for examples of stand-alone branding.
|
||||
|
||||
## Examples
|
||||
|
||||
There is one example of a branding component included with Calamares,
|
||||
so that it can be run directly from the build directory for testing purposes:
|
||||
|
||||
- `default/` is a sample brand for the Generic Linux distribution. It uses
|
||||
the default Calamares icons and a as start-page splash it provides a
|
||||
tag-cloud view of languages. The slideshow is a basic one with a few
|
||||
slides of text and a single image. No translations are provided.
|
||||
|
||||
Since the slideshow can be **any** QML, it is limited only by your designers
|
||||
imagination and your QML experience. For straightforward presentations,
|
||||
see the documentation below. There are more examples in the *calamares-branding*
|
||||
repository.
|
||||
|
||||
## Translations
|
||||
|
||||
QML files in a branding component can be translated. Translations should
|
||||
be placed in a subdirectory `lang/` of the branding component directory.
|
||||
Qt translation files are supported (`.ts` sources which get compiled into
|
||||
`.qm`). Inside the `lang` subdirectory all translation files must be named
|
||||
according to the scheme `calamares-<component name>_<language>.qm`.
|
||||
according to the scheme `calamares-<component name>_<language>.ts`.
|
||||
|
||||
Text in your `show.qml` (or whatever *slideshow* is set to in the descriptor
|
||||
file) should be enclosed in this form for translations
|
||||
@ -20,15 +42,92 @@ file) should be enclosed in this form for translations
|
||||
text: qsTr("This is an example text.")
|
||||
```
|
||||
|
||||
## Examples
|
||||
## Presentation
|
||||
|
||||
There are two examples of branding content:
|
||||
The default QML classes provided by Calamares can be used for a simple
|
||||
and straightforward "slideshow" presentation with static text and
|
||||
pictures. To use the default slideshow classes, start with a `show.qml`
|
||||
file with the following content:
|
||||
|
||||
- `default/` is a sample brand for the Generic Linux distribution. It uses
|
||||
the default Calamares icons and a as start-page splash it provides a
|
||||
tag-cloud view of languages. The slideshow is a basic one with a few
|
||||
slides of text and a single image. No translations are provided.
|
||||
- `samegame/` is a similarly simple branding setup for Generic Linux,
|
||||
but instead of a slideshow, it lets the user play Same Game (clicking
|
||||
colored balls) during the installation. The game is taken from the
|
||||
QML examples provided by the Qt Company.
|
||||
```
|
||||
import QtQuick 2.5;
|
||||
import calamares.slideshow 1.0;
|
||||
|
||||
Presentation
|
||||
{
|
||||
id: presentation
|
||||
}
|
||||
```
|
||||
|
||||
After the *id*, set properties of the presentation as a whole. These include:
|
||||
- *loopSlides* (default true) When set, clicking past the last slide
|
||||
returns to the very first slide.
|
||||
- *mouseNavigation*, *arrowNavigation*, *keyShortcutsEnabled* (all default
|
||||
true) enable different ways to navigate the slideshow.
|
||||
- *titleColor*, *textColor* change the look of the presentation.
|
||||
- *fontFamily*, *codeFontFamily* change the look of text in the presentation.
|
||||
|
||||
After setting properties, you can add elements to the presentation.
|
||||
Generally, you will add a few presentation-level elements first,
|
||||
then slides.
|
||||
- For visible navigation arrows, add elements of class *ForwardButton* and
|
||||
*BackwardButton*. Set the *source* property of each to a suitable
|
||||
image. See the `fancy/` example. It is recommended to turn off other
|
||||
kinds of navigation when visible navigation is used.
|
||||
- To indicate where the user is, add an element of class *SlideCounter*.
|
||||
This indicates in "n / total" form where the user is in the slideshow.
|
||||
- To automatically advance the presentation (for a fully passive slideshow),
|
||||
add a timer that calls the `goToNextSlide()` function of the presentation.
|
||||
See the `default/` example -- remember to start the timer when the
|
||||
presentation is completely loaded.
|
||||
|
||||
After setting the presentation elements, add one or more Slide elements.
|
||||
The presentation framework will make a slideshow out of the Slide
|
||||
elements, displaying only one at a time. Each slide is an element in itself,
|
||||
so you can put whatever visual elements you like in the slide. They have
|
||||
standard properties for a boring "static text" slideshow, though:
|
||||
- *title* is text to show as slide title
|
||||
- *centeredText* is displayed in a large-ish font
|
||||
- *writeInText* is displayed by "writing it in" to the slide,
|
||||
one letter at a time.
|
||||
- *content* is a list of things which are displayed as a bulleted list.
|
||||
|
||||
The presentation classes can be used to produce a fairly dry slideshow
|
||||
for the installation process; it is recommended to experiment with the
|
||||
visual effects and classes available in QtQuick.
|
||||
|
||||
## Project Layout
|
||||
|
||||
A branding component that is created and installed outside of Calamares
|
||||
will have a top-level `CMakeLists.txt` that includes some boilerplate
|
||||
to find Calamares, and then adds a subdirectory which contains the
|
||||
actual branding component.
|
||||
|
||||
Adding the subdirectory can be done as follows:
|
||||
|
||||
- If the directory contains files only, and optionally has a single
|
||||
subdirectory lang/ which contains the translation files for the
|
||||
component, then `calamares_add_branding_subdirectory()` can be
|
||||
used, which takes only the name of the subdirectory.
|
||||
|
||||
The file layout in a typical branding component repository is:
|
||||
|
||||
```
|
||||
/
|
||||
- CMakeLists.txt
|
||||
- componentname/
|
||||
- show.qml
|
||||
- image1.png
|
||||
...
|
||||
- lang/
|
||||
- calamares-componentname_en.ts
|
||||
- calamares-componentname_de.ts
|
||||
...
|
||||
```
|
||||
|
||||
- If the branding component has many files which are organized into
|
||||
subdirectories, use the SUBDIRECTORIES argument to the CMake function
|
||||
to additionally install files from those subdirectories. For example,
|
||||
if the component places all of its images in an `img/` subdirectory,
|
||||
then call `calamares_add_branding_subdirectory( ... SUBDIRECTORIES img)`.
|
||||
It is a bad idea to include `lang/` in the SUBDIRECTORIES list.
|
||||
|
@ -24,6 +24,7 @@ Presentation
|
||||
id: presentation
|
||||
|
||||
Timer {
|
||||
id: advanceTimer
|
||||
interval: 5000
|
||||
running: false
|
||||
repeat: true
|
||||
@ -48,7 +49,7 @@ Presentation
|
||||
"To create a Calamares presentation in QML, import calamares.slideshow,<br/>"+
|
||||
"define a Presentation element with as many Slide elements as needed."
|
||||
wrapMode: Text.WordWrap
|
||||
width: root.width
|
||||
width: presentation.width
|
||||
horizontalAlignment: Text.Center
|
||||
}
|
||||
}
|
||||
@ -60,4 +61,6 @@ Presentation
|
||||
Slide {
|
||||
centeredText: "This is a third Slide element."
|
||||
}
|
||||
|
||||
Component.onCompleted: advanceTimer.running = true
|
||||
}
|
||||
|
@ -1,73 +0,0 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2017 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the examples of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:BSD$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** BSD License Usage
|
||||
** Alternatively, you may use this file under the terms of the BSD license
|
||||
** as follows:
|
||||
**
|
||||
** "Redistribution and use in source and binary forms, with or without
|
||||
** modification, are permitted provided that the following conditions are
|
||||
** met:
|
||||
** * Redistributions of source code must retain the above copyright
|
||||
** notice, this list of conditions and the following disclaimer.
|
||||
** * Redistributions in binary form must reproduce the above copyright
|
||||
** notice, this list of conditions and the following disclaimer in
|
||||
** the documentation and/or other materials provided with the
|
||||
** distribution.
|
||||
** * Neither the name of The Qt Company Ltd nor the names of its
|
||||
** contributors may be used to endorse or promote products derived
|
||||
** from this software without specific prior written permission.
|
||||
**
|
||||
**
|
||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
//![0]
|
||||
import QtQuick 2.0
|
||||
|
||||
Item {
|
||||
id: block
|
||||
|
||||
property int type: 0
|
||||
|
||||
Image {
|
||||
id: img
|
||||
|
||||
anchors.fill: parent
|
||||
source: {
|
||||
if (type == 0)
|
||||
return "redStone.png";
|
||||
else if (type == 1)
|
||||
return "blueStone.png";
|
||||
else
|
||||
return "greenStone.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
//![0]
|
@ -1,91 +0,0 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2017 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the examples of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:BSD$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** BSD License Usage
|
||||
** Alternatively, you may use this file under the terms of the BSD license
|
||||
** as follows:
|
||||
**
|
||||
** "Redistribution and use in source and binary forms, with or without
|
||||
** modification, are permitted provided that the following conditions are
|
||||
** met:
|
||||
** * Redistributions of source code must retain the above copyright
|
||||
** notice, this list of conditions and the following disclaimer.
|
||||
** * Redistributions in binary form must reproduce the above copyright
|
||||
** notice, this list of conditions and the following disclaimer in
|
||||
** the documentation and/or other materials provided with the
|
||||
** distribution.
|
||||
** * Neither the name of The Qt Company Ltd nor the names of its
|
||||
** contributors may be used to endorse or promote products derived
|
||||
** from this software without specific prior written permission.
|
||||
**
|
||||
**
|
||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.0
|
||||
|
||||
Rectangle {
|
||||
id: container
|
||||
|
||||
property string text: "Button"
|
||||
|
||||
signal clicked
|
||||
|
||||
width: buttonLabel.width + 20; height: buttonLabel.height + 5
|
||||
border { width: 1; color: Qt.darker(activePalette.button) }
|
||||
antialiasing: true
|
||||
radius: 8
|
||||
|
||||
// color the button with a gradient
|
||||
gradient: Gradient {
|
||||
GradientStop {
|
||||
position: 0.0
|
||||
color: {
|
||||
if (mouseArea.pressed)
|
||||
return activePalette.dark
|
||||
else
|
||||
return activePalette.light
|
||||
}
|
||||
}
|
||||
GradientStop { position: 1.0; color: activePalette.button }
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
id: mouseArea
|
||||
anchors.fill: parent
|
||||
onClicked: container.clicked();
|
||||
}
|
||||
|
||||
Text {
|
||||
id: buttonLabel
|
||||
anchors.centerIn: container
|
||||
color: activePalette.buttonText
|
||||
text: container.text
|
||||
}
|
||||
}
|
@ -1,81 +0,0 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2017 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the examples of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:BSD$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** BSD License Usage
|
||||
** Alternatively, you may use this file under the terms of the BSD license
|
||||
** as follows:
|
||||
**
|
||||
** "Redistribution and use in source and binary forms, with or without
|
||||
** modification, are permitted provided that the following conditions are
|
||||
** met:
|
||||
** * Redistributions of source code must retain the above copyright
|
||||
** notice, this list of conditions and the following disclaimer.
|
||||
** * Redistributions in binary form must reproduce the above copyright
|
||||
** notice, this list of conditions and the following disclaimer in
|
||||
** the documentation and/or other materials provided with the
|
||||
** distribution.
|
||||
** * Neither the name of The Qt Company Ltd nor the names of its
|
||||
** contributors may be used to endorse or promote products derived
|
||||
** from this software without specific prior written permission.
|
||||
**
|
||||
**
|
||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
//![0]
|
||||
import QtQuick 2.0
|
||||
|
||||
Rectangle {
|
||||
id: container
|
||||
|
||||
function show(text) {
|
||||
dialogText.text = text;
|
||||
container.opacity = 1;
|
||||
}
|
||||
|
||||
function hide() {
|
||||
container.opacity = 0;
|
||||
}
|
||||
|
||||
width: dialogText.width + 20
|
||||
height: dialogText.height + 20
|
||||
opacity: 0
|
||||
|
||||
Text {
|
||||
id: dialogText
|
||||
anchors.centerIn: parent
|
||||
text: ""
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: hide();
|
||||
}
|
||||
}
|
||||
//![0]
|
Before Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 149 B |
Before Width: | Height: | Size: 3.0 KiB |
@ -1,76 +0,0 @@
|
||||
---
|
||||
componentName: samegame
|
||||
|
||||
# This selects between different welcome texts. When false, uses
|
||||
# the traditional "Welcome to the %1 installer.", and when true,
|
||||
# uses "Welcome to the Calamares installer for %1." This allows
|
||||
# to distinguish this installer from other installers for the
|
||||
# same distribution.
|
||||
welcomeStyleCalamares: false
|
||||
|
||||
# These are strings shown to the user in the user interface.
|
||||
# There is no provision for translating them -- since they
|
||||
# are names, the string is included as-is.
|
||||
#
|
||||
# The four Url strings are the Urls used by the buttons in
|
||||
# the welcome screen, and are not shown to the user. Clicking
|
||||
# on the "Support" button, for instance, opens the link supportUrl.
|
||||
# If a Url is empty, the corresponding button is not shown.
|
||||
#
|
||||
# bootloaderEntryName is how this installation / distro is named
|
||||
# in the boot loader (e.g. in the GRUB menu).
|
||||
strings:
|
||||
productName: Generic GNU/Linux
|
||||
shortProductName: Generic
|
||||
version: 2018.1 LTS
|
||||
shortVersion: 2018.1
|
||||
versionedName: Generic GNU/Linux 2018.1 LTS "Tasseled Tambourine"
|
||||
shortVersionedName: Generic 2018.1
|
||||
bootloaderEntryName: Generic
|
||||
productUrl: https://calamares.io/
|
||||
supportUrl: https://github.com/calamares/calamares/issues
|
||||
knownIssuesUrl: https://calamares.io/about/
|
||||
releaseNotesUrl: https://calamares.io/about/
|
||||
|
||||
# Should the welcome image (productWelcome, below) be scaled
|
||||
# up beyond its natural size? If false, the image does not grow
|
||||
# with the window but remains the same size throughout (this
|
||||
# may have surprising effects on HiDPI monitors).
|
||||
welcomeExpandingLogo: true
|
||||
|
||||
# These images are loaded from the branding module directory.
|
||||
#
|
||||
# productIcon is used as the window icon, and will (usually) be used
|
||||
# by the window manager to represent the application. This image
|
||||
# should be square, and may be displayed by the window manager
|
||||
# as small as 16x16 (but possibly larger).
|
||||
# productLogo is used as the logo at the top of the left-hand column
|
||||
# which shows the steps to be taken. The image should be square,
|
||||
# and is displayed at 80x80 pixels (also on HiDPI).
|
||||
# productWelcome is shown on the welcome page of the application in
|
||||
# the middle of the window, below the welcome text. It can be
|
||||
# any size and proportion, and will be scaled to fit inside
|
||||
# the window. Use `welcomeExpandingLogo` to make it non-scaled.
|
||||
# Recommended size is 320x150.
|
||||
images:
|
||||
productLogo: "squidball.png"
|
||||
productIcon: "squidball.png"
|
||||
productWelcome: "languages.png"
|
||||
|
||||
# The slideshow is displayed during execution steps (e.g. when the
|
||||
# installer is actually writing to disk and doing other slow things).
|
||||
slideshow: "samegame.qml"
|
||||
|
||||
# Colors for text and background components.
|
||||
#
|
||||
# - sidebarBackground is the background of the sidebar
|
||||
# - sidebarText is the (foreground) text color
|
||||
# - sidebarTextHighlight sets the background of the selected (current) step.
|
||||
# Optional, and defaults to the application palette.
|
||||
# - sidebarSelect is the text color of the selected step.
|
||||
#
|
||||
style:
|
||||
sidebarBackground: "#292F34"
|
||||
sidebarText: "#FFFFFF"
|
||||
sidebarTextSelect: "#292F34"
|
||||
sidebarTextHighlight: "#D35400"
|
Before Width: | Height: | Size: 149 B |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 84 KiB |
Before Width: | Height: | Size: 148 B |
Before Width: | Height: | Size: 2.8 KiB |
@ -1,174 +0,0 @@
|
||||
/* This script file handles the game logic */
|
||||
var maxColumn = 10;
|
||||
var maxRow = 15;
|
||||
var maxIndex = maxColumn * maxRow;
|
||||
var board = new Array(maxIndex);
|
||||
var component;
|
||||
|
||||
//Index function used instead of a 2D array
|
||||
function index(column, row) {
|
||||
return column + (row * maxColumn);
|
||||
}
|
||||
|
||||
function startNewGame() {
|
||||
//Calculate board size
|
||||
maxColumn = Math.floor(gameCanvas.width / gameCanvas.blockSize);
|
||||
maxRow = Math.floor(gameCanvas.height / gameCanvas.blockSize);
|
||||
maxIndex = maxRow * maxColumn;
|
||||
|
||||
//Close dialogs
|
||||
dialog.hide();
|
||||
|
||||
//Initialize Board
|
||||
board = new Array(maxIndex);
|
||||
gameCanvas.score = 0;
|
||||
for (var column = 0; column < maxColumn; column++) {
|
||||
for (var row = 0; row < maxRow; row++) {
|
||||
board[index(column, row)] = null;
|
||||
createBlock(column, row);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function createBlock(column, row) {
|
||||
if (component == null)
|
||||
component = Qt.createComponent("Block.qml");
|
||||
|
||||
// Note that if Block.qml was not a local file, component.status would be
|
||||
// Loading and we should wait for the component's statusChanged() signal to
|
||||
// know when the file is downloaded and ready before calling createObject().
|
||||
if (component.status == Component.Ready) {
|
||||
var dynamicObject = component.createObject(gameCanvas);
|
||||
if (dynamicObject == null) {
|
||||
console.log("error creating block");
|
||||
console.log(component.errorString());
|
||||
return false;
|
||||
}
|
||||
dynamicObject.type = Math.floor(Math.random() * 3);
|
||||
dynamicObject.x = column * gameCanvas.blockSize;
|
||||
dynamicObject.y = row * gameCanvas.blockSize;
|
||||
dynamicObject.width = gameCanvas.blockSize;
|
||||
dynamicObject.height = gameCanvas.blockSize;
|
||||
board[index(column, row)] = dynamicObject;
|
||||
} else {
|
||||
console.log("error loading block component");
|
||||
console.log(component.errorString());
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
var fillFound; //Set after a floodFill call to the number of blocks found
|
||||
var floodBoard; //Set to 1 if the floodFill reaches off that node
|
||||
|
||||
//![1]
|
||||
function handleClick(xPos, yPos) {
|
||||
var column = Math.floor(xPos / gameCanvas.blockSize);
|
||||
var row = Math.floor(yPos / gameCanvas.blockSize);
|
||||
if (column >= maxColumn || column < 0 || row >= maxRow || row < 0)
|
||||
return;
|
||||
if (board[index(column, row)] == null)
|
||||
return;
|
||||
//If it's a valid block, remove it and all connected (does nothing if it's not connected)
|
||||
floodFill(column, row, -1);
|
||||
if (fillFound <= 0)
|
||||
return;
|
||||
gameCanvas.score += (fillFound - 1) * (fillFound - 1);
|
||||
shuffleDown();
|
||||
victoryCheck();
|
||||
}
|
||||
//![1]
|
||||
|
||||
function floodFill(column, row, type) {
|
||||
if (board[index(column, row)] == null)
|
||||
return;
|
||||
var first = false;
|
||||
if (type == -1) {
|
||||
first = true;
|
||||
type = board[index(column, row)].type;
|
||||
|
||||
//Flood fill initialization
|
||||
fillFound = 0;
|
||||
floodBoard = new Array(maxIndex);
|
||||
}
|
||||
if (column >= maxColumn || column < 0 || row >= maxRow || row < 0)
|
||||
return;
|
||||
if (floodBoard[index(column, row)] == 1 || (!first && type != board[index(column, row)].type))
|
||||
return;
|
||||
floodBoard[index(column, row)] = 1;
|
||||
floodFill(column + 1, row, type);
|
||||
floodFill(column - 1, row, type);
|
||||
floodFill(column, row + 1, type);
|
||||
floodFill(column, row - 1, type);
|
||||
if (first == true && fillFound == 0)
|
||||
return; //Can't remove single blocks
|
||||
board[index(column, row)].opacity = 0;
|
||||
board[index(column, row)] = null;
|
||||
fillFound += 1;
|
||||
}
|
||||
|
||||
function shuffleDown() {
|
||||
//Fall down
|
||||
for (var column = 0; column < maxColumn; column++) {
|
||||
var fallDist = 0;
|
||||
for (var row = maxRow - 1; row >= 0; row--) {
|
||||
if (board[index(column, row)] == null) {
|
||||
fallDist += 1;
|
||||
} else {
|
||||
if (fallDist > 0) {
|
||||
var obj = board[index(column, row)];
|
||||
obj.y += fallDist * gameCanvas.blockSize;
|
||||
board[index(column, row + fallDist)] = obj;
|
||||
board[index(column, row)] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//Fall to the left
|
||||
var fallDist = 0;
|
||||
for (var column = 0; column < maxColumn; column++) {
|
||||
if (board[index(column, maxRow - 1)] == null) {
|
||||
fallDist += 1;
|
||||
} else {
|
||||
if (fallDist > 0) {
|
||||
for (var row = 0; row < maxRow; row++) {
|
||||
var obj = board[index(column, row)];
|
||||
if (obj == null)
|
||||
continue;
|
||||
obj.x -= fallDist * gameCanvas.blockSize;
|
||||
board[index(column - fallDist, row)] = obj;
|
||||
board[index(column, row)] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//![2]
|
||||
function victoryCheck() {
|
||||
//Award bonus points if no blocks left
|
||||
var deservesBonus = true;
|
||||
for (var column = maxColumn - 1; column >= 0; column--)
|
||||
if (board[index(column, maxRow - 1)] != null)
|
||||
deservesBonus = false;
|
||||
if (deservesBonus)
|
||||
gameCanvas.score += 500;
|
||||
|
||||
//Check whether game has finished
|
||||
if (deservesBonus || !(floodMoveCheck(0, maxRow - 1, -1)))
|
||||
dialog.show("Game Over. Your score is " + gameCanvas.score);
|
||||
}
|
||||
//![2]
|
||||
|
||||
//only floods up and right, to see if it can find adjacent same-typed blocks
|
||||
function floodMoveCheck(column, row, type) {
|
||||
if (column >= maxColumn || column < 0 || row >= maxRow || row < 0)
|
||||
return false;
|
||||
if (board[index(column, row)] == null)
|
||||
return false;
|
||||
var myType = board[index(column, row)].type;
|
||||
if (type == myType)
|
||||
return true;
|
||||
return floodMoveCheck(column + 1, row, myType) || floodMoveCheck(column, row - 1, board[index(column, row)].type);
|
||||
}
|
||||
|
@ -1,113 +0,0 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2017 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the examples of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:BSD$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** BSD License Usage
|
||||
** Alternatively, you may use this file under the terms of the BSD license
|
||||
** as follows:
|
||||
**
|
||||
** "Redistribution and use in source and binary forms, with or without
|
||||
** modification, are permitted provided that the following conditions are
|
||||
** met:
|
||||
** * Redistributions of source code must retain the above copyright
|
||||
** notice, this list of conditions and the following disclaimer.
|
||||
** * Redistributions in binary form must reproduce the above copyright
|
||||
** notice, this list of conditions and the following disclaimer in
|
||||
** the documentation and/or other materials provided with the
|
||||
** distribution.
|
||||
** * Neither the name of The Qt Company Ltd nor the names of its
|
||||
** contributors may be used to endorse or promote products derived
|
||||
** from this software without specific prior written permission.
|
||||
**
|
||||
**
|
||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
//![0]
|
||||
import QtQuick 2.0
|
||||
import "samegame.js" as SameGame
|
||||
|
||||
Rectangle {
|
||||
id: screen
|
||||
|
||||
width: 490; height: 720
|
||||
|
||||
SystemPalette { id: activePalette }
|
||||
|
||||
Item {
|
||||
width: parent.width
|
||||
anchors { top: parent.top; bottom: toolBar.top }
|
||||
|
||||
Image {
|
||||
id: background
|
||||
anchors.fill: parent
|
||||
source: "background.jpg"
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
}
|
||||
|
||||
//![1]
|
||||
Item {
|
||||
id: gameCanvas
|
||||
|
||||
property int score: 0
|
||||
property int blockSize: 40
|
||||
|
||||
width: parent.width - (parent.width % blockSize)
|
||||
height: parent.height - (parent.height % blockSize)
|
||||
anchors.centerIn: parent
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: SameGame.handleClick(mouse.x, mouse.y)
|
||||
}
|
||||
}
|
||||
//![1]
|
||||
}
|
||||
|
||||
//![2]
|
||||
Dialog {
|
||||
id: dialog
|
||||
anchors.centerIn: parent
|
||||
z: 100
|
||||
}
|
||||
//![2]
|
||||
|
||||
Rectangle {
|
||||
id: toolBar
|
||||
width: parent.width; height: 30
|
||||
color: activePalette.window
|
||||
anchors.bottom: screen.bottom
|
||||
|
||||
Button {
|
||||
anchors { left: parent.left; verticalCenter: parent.verticalCenter }
|
||||
text: "New Game"
|
||||
onClicked: SameGame.startNewGame()
|
||||
}
|
||||
}
|
||||
}
|
||||
//![0]
|
Before Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 262 B |
Before Width: | Height: | Size: 3.0 KiB |
@ -83,6 +83,8 @@ add_library( calamares SHARED ${libSources} ${kdsagSources} ${utilsSources} )
|
||||
set_target_properties( calamares
|
||||
PROPERTIES
|
||||
AUTOMOC TRUE
|
||||
VERSION ${CALAMARES_VERSION_SHORT}
|
||||
SOVERSION ${CALAMARES_VERSION_SHORT}
|
||||
)
|
||||
|
||||
target_link_libraries( calamares
|
||||
@ -92,10 +94,18 @@ target_link_libraries( calamares
|
||||
|
||||
install( TARGETS calamares
|
||||
EXPORT CalamaresLibraryDepends
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
)
|
||||
|
||||
# Make symlink lib/calamares/libcalamares.so to lib/libcalamares.so.VERSION so
|
||||
# lib/calamares can be used as module path for the Python interpreter.
|
||||
install( CODE "
|
||||
file( MAKE_DIRECTORY \"\$ENV{DESTDIR}/${CMAKE_INSTALL_FULL_LIBDIR}/calamares\" )
|
||||
execute_process( COMMAND \"${CMAKE_COMMAND}\" -E create_symlink ../libcalamares.so.${CALAMARES_VERSION_SHORT} libcalamares.so WORKING_DIRECTORY \"\$ENV{DESTDIR}/${CMAKE_INSTALL_FULL_LIBDIR}/calamares\" )
|
||||
")
|
||||
|
||||
# Install header files
|
||||
file( GLOB rootHeaders "*.h" )
|
||||
file( GLOB kdsingleapplicationguardHeaders "kdsingleapplicationguard/*.h" )
|
||||
|
@ -184,7 +184,7 @@ Branding::Branding( const QString& brandingFilePath,
|
||||
|
||||
QDir translationsDir( componentDir.filePath( "lang" ) );
|
||||
if ( !translationsDir.exists() )
|
||||
cWarning() << "the selected branding component does not ship translations.";
|
||||
cWarning() << "the branding component" << componentDir.absolutePath() << "does not ship translations.";
|
||||
m_translationsPathPrefix = translationsDir.absolutePath();
|
||||
m_translationsPathPrefix.append( QString( "%1calamares-%2" )
|
||||
.arg( QDir::separator() )
|
||||
|
@ -78,5 +78,5 @@ calamares_add_library( calamaresui
|
||||
Qt5::QuickWidgets
|
||||
RESOURCES libcalamaresui.qrc
|
||||
EXPORT CalamaresLibraryDepends
|
||||
NO_VERSION
|
||||
VERSION ${CALAMARES_VERSION_SHORT}
|
||||
)
|
||||
|
@ -37,12 +37,13 @@ struct ValueCheck : public QPair<QString, CalamaresUtils::CommandList*>
|
||||
{
|
||||
}
|
||||
|
||||
~ValueCheck()
|
||||
{
|
||||
// We don't own the commandlist, the binding holding this valuecheck
|
||||
// does, so don't delete. This is closely tied to (temporaries created
|
||||
// by) pass-by-value in QList::append().
|
||||
}
|
||||
// ~ValueCheck()
|
||||
//
|
||||
// There is no destructor.
|
||||
//
|
||||
// We don't own the commandlist, the binding holding this valuecheck
|
||||
// does, so don't delete. This is closely tied to (temporaries created
|
||||
// by) pass-by-value in QList::append().
|
||||
|
||||
QString value() const { return first; }
|
||||
CalamaresUtils::CommandList* commands() const { return second; }
|
||||
|