From 0f6b2dbe2dd8766c3fb581fe0027467dc98255d8 Mon Sep 17 00:00:00 2001 From: Arnaud Ferraris Date: Fri, 23 Aug 2019 17:26:45 +0200 Subject: [PATCH 01/20] [unpackfs] Enable to use "/" as a source If we don't have/need an image for the rootfs, we might want to configure the `/` directory as a source for unpackfs. Unfortunately, this raises an error: - unpackfs first creates a temporary directory - it then creates a subdirectory for each source, using the source path's basename - when the source is `/`, the basename is an empty string, therefore the module tries to create an already existing directory In order to prevent this error, we use the `os.makedirs` function with parameter `exist_ok=True` instead of `os.mkdir`. Signed-off-by: Arnaud Ferraris --- src/modules/unpackfs/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/unpackfs/main.py b/src/modules/unpackfs/main.py index e956dc070..90c258cd7 100644 --- a/src/modules/unpackfs/main.py +++ b/src/modules/unpackfs/main.py @@ -208,7 +208,7 @@ class UnpackOperation: imgbasename = os.path.splitext( os.path.basename(entry.source))[0] imgmountdir = os.path.join(source_mount_path, imgbasename) - os.mkdir(imgmountdir) + os.makedirs(imgmountdir, exist_ok=True) self.mount_image(entry, imgmountdir) From e459b82cfeb6f9a57ae483603521bc95c3a8f0e2 Mon Sep 17 00:00:00 2001 From: bill-auger Date: Mon, 26 Aug 2019 08:34:24 -0400 Subject: [PATCH 02/20] fix typo in src/libcalamaresui/ViewManager.cpp --- src/libcalamaresui/ViewManager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libcalamaresui/ViewManager.cpp b/src/libcalamaresui/ViewManager.cpp index 7baefdbd0..48c71a7ac 100644 --- a/src/libcalamaresui/ViewManager.cpp +++ b/src/libcalamaresui/ViewManager.cpp @@ -140,7 +140,7 @@ ViewManager::ViewManager( QObject* parent ) m_quit->setVisible( false ); } - // onInstallationFailed( "Tile of Failure", "Body of Failure"); // for testing paste functionality + // onInstallationFailed( "Title of Failure", "Body of Failure"); // for testing paste functionality } From 13a58a4ab289d50e7bc12a78e9768c88c9d4dfed Mon Sep 17 00:00:00 2001 From: bill-auger Date: Mon, 26 Aug 2019 08:34:35 -0400 Subject: [PATCH 03/20] update doc comment in src/modules/initcpio/initcpio.conf --- src/modules/initcpio/initcpio.conf | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/modules/initcpio/initcpio.conf b/src/modules/initcpio/initcpio.conf index 8ad71e9f5..517e48392 100644 --- a/src/modules/initcpio/initcpio.conf +++ b/src/modules/initcpio/initcpio.conf @@ -1,8 +1,7 @@ # Run mkinitcpio(8) with the given preset value --- -# There is only one configuration item for this module, -# the kernel to be loaded. This can have the following -# values: +# This key defines the kernel to be loaded. +# It can have the following values: # - empty or unset, interpreted as "all" # - the literal string "$uname" (without quotes, with dollar), # which will use the output of `uname -r` to determine the From 4c3c6f3f91128a33ba4811df89a9f49bc7c6016c Mon Sep 17 00:00:00 2001 From: bill-auger Date: Wed, 28 Aug 2019 02:47:24 -0400 Subject: [PATCH 04/20] eliminate magic number in src/modules/welcome/WelcomePage.cpp --- src/modules/welcome/WelcomePage.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/modules/welcome/WelcomePage.cpp b/src/modules/welcome/WelcomePage.cpp index 8f989c47c..9c520a7fa 100644 --- a/src/modules/welcome/WelcomePage.cpp +++ b/src/modules/welcome/WelcomePage.cpp @@ -124,7 +124,8 @@ WelcomePage::WelcomePage( QWidget* parent ) mb.exec(); } ); - ui->verticalLayout->insertWidget( 3, m_checkingWidget ); + int welcome_text_idx = ui->verticalLayout->indexOf( ui->mainText ); + ui->verticalLayout->insertWidget( welcome_text_idx + 1, m_checkingWidget ); } From bb678e535b4a9340c61f9804d52b9791aff6bdaa Mon Sep 17 00:00:00 2001 From: bill-auger Date: Mon, 26 Aug 2019 07:07:18 -0400 Subject: [PATCH 05/20] add esperanto branding translations, fix mis-configured ones --- .../default/lang/calamares-default_ar.ts | 4 ++-- .../default/lang/calamares-default_en.ts | 2 +- .../default/lang/calamares-default_eo.ts | 17 +++++++++++++++++ .../default/lang/calamares-default_fr.ts | 4 ++-- .../default/lang/calamares-default_nl.ts | 2 +- 5 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 src/branding/default/lang/calamares-default_eo.ts diff --git a/src/branding/default/lang/calamares-default_ar.ts b/src/branding/default/lang/calamares-default_ar.ts index 05463dd72..3c4fe0933 100644 --- a/src/branding/default/lang/calamares-default_ar.ts +++ b/src/branding/default/lang/calamares-default_ar.ts @@ -1,6 +1,6 @@ - + show @@ -11,7 +11,7 @@ This is a third Slide element. - عرض الثالث + عرض الثالث diff --git a/src/branding/default/lang/calamares-default_en.ts b/src/branding/default/lang/calamares-default_en.ts index 30474fc02..b02dbd5b1 100644 --- a/src/branding/default/lang/calamares-default_en.ts +++ b/src/branding/default/lang/calamares-default_en.ts @@ -1,6 +1,6 @@ - + show diff --git a/src/branding/default/lang/calamares-default_eo.ts b/src/branding/default/lang/calamares-default_eo.ts new file mode 100644 index 000000000..7d1ef4e82 --- /dev/null +++ b/src/branding/default/lang/calamares-default_eo.ts @@ -0,0 +1,17 @@ + + + + + show + + + This is a second Slide element. + Ĉi tio estas la dua gliteja. + + + + This is a third Slide element. + Ĉi tio estas la tria gliteja. + + + diff --git a/src/branding/default/lang/calamares-default_fr.ts b/src/branding/default/lang/calamares-default_fr.ts index 9329e61ee..ec5e0411a 100644 --- a/src/branding/default/lang/calamares-default_fr.ts +++ b/src/branding/default/lang/calamares-default_fr.ts @@ -1,6 +1,6 @@ - + show @@ -11,7 +11,7 @@ This is a third Slide element. - La troisième affice ce trouve ici. + La troisième affice ce trouve ici. diff --git a/src/branding/default/lang/calamares-default_nl.ts b/src/branding/default/lang/calamares-default_nl.ts index aad00eaf7..19fd58361 100644 --- a/src/branding/default/lang/calamares-default_nl.ts +++ b/src/branding/default/lang/calamares-default_nl.ts @@ -11,7 +11,7 @@ This is a third Slide element. - Dit is het derde Dia element. + Dit is het derde Dia element. From 5642576cf33857aba43ca1710d196a68c394e794 Mon Sep 17 00:00:00 2001 From: bill-auger Date: Wed, 28 Aug 2019 07:38:49 -0400 Subject: [PATCH 06/20] cross-reference/clarify geoip documentation --- src/modules/locale/LocaleViewStep.cpp | 2 +- src/modules/locale/locale.conf | 12 +++++++++--- src/modules/welcome/welcome.conf | 12 ++++++------ 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/modules/locale/LocaleViewStep.cpp b/src/modules/locale/LocaleViewStep.cpp index 29006ec33..ee5c7699b 100644 --- a/src/modules/locale/LocaleViewStep.cpp +++ b/src/modules/locale/LocaleViewStep.cpp @@ -235,7 +235,7 @@ LocaleViewStep::setConfigurationMap( const QVariantMap& configurationMap ) } else { - // Optional + // Accommodate deprecated geoip configuration m_geoipUrl = CalamaresUtils::getString( configurationMap, "geoipUrl" ); m_geoipStyle = CalamaresUtils::getString( configurationMap, "geoipStyle" ); m_geoipSelector = CalamaresUtils::getString( configurationMap, "geoipSelector" ); diff --git a/src/modules/locale/locale.conf b/src/modules/locale/locale.conf index 7c2ec332c..4beb4fe85 100644 --- a/src/modules/locale/locale.conf +++ b/src/modules/locale/locale.conf @@ -23,6 +23,7 @@ zone: "New_York" # # Enable only when your Distribution is using an # custom path for locale.gen +# #localeGenPath: "PATH_TO/locale.gen" # GeoIP based Language settings: Leave commented out to disable GeoIP. @@ -78,14 +79,19 @@ zone: "New_York" # Europe/Brussels # ``` # -# To accomodate providers of GeoIP timezone data with peculiar timezone +# To accommodate providers of GeoIP timezone data with peculiar timezone # naming conventions, the following cleanups are performed automatically: # - backslashes are removed # - spaces are replaced with _ # # Legacy settings "geoipStyle", "geoipUrl" and "geoipSelector" # in the top-level are still supported, but I'd advise against. +# +# To disable GeoIP checking, either comment-out the entire geoip section, +# or set the *style* key to an unsupported format (e.g. `none`). +# Also, note the analogous feature in src/modules/welcome/welcome.conf. +# geoip: - style: "json" - url: "https://geoip.kde.org/v1/calamares" + style: "json" + url: "https://geoip.kde.org/v1/calamares" selector: "" # leave blank for the default diff --git a/src/modules/welcome/welcome.conf b/src/modules/welcome/welcome.conf index 9488daa5e..0361830aa 100644 --- a/src/modules/welcome/welcome.conf +++ b/src/modules/welcome/welcome.conf @@ -69,13 +69,13 @@ requirements: # but remember to use a URL that returns full data **and** to # use a selector that will pick the country, not the timezone. # -# To disable, either comment-out the entire section, or set -# the *style* key to an unsupported format (e.g. `none`, as is -# done here). - +# To disable GeoIP checking, either comment-out the entire geoip section, +# or set the *style* key to an unsupported format (e.g. `none`). +# Also, note the analogous feature in src/modules/locale/locale.conf. +# geoip: - style: "none" - url: "https://geoip.kde.org/v1/ubiquity" # extended XML format + style: "none" + url: "https://geoip.kde.org/v1/ubiquity" # extended XML format selector: "CountryCode" # blank uses default, which is wrong # User interface From fc5aa54cb2f18332a8c657ccfad3437944bff534 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Thu, 29 Aug 2019 11:01:02 +0200 Subject: [PATCH 07/20] [welcome] Fix code formatting - the RETRANSLATE macro is a real challenge for astyle and clang-format --- src/modules/welcome/WelcomePage.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/modules/welcome/WelcomePage.cpp b/src/modules/welcome/WelcomePage.cpp index 9c520a7fa..05c955a2d 100644 --- a/src/modules/welcome/WelcomePage.cpp +++ b/src/modules/welcome/WelcomePage.cpp @@ -76,13 +76,18 @@ WelcomePage::WelcomePage( QWidget* parent ) CALAMARES_RETRANSLATE( QString message; - if ( Calamares::Settings::instance()->isSetupMode() ) message - = Calamares::Branding::instance()->welcomeStyleCalamares() - ? tr( "

Welcome to the Calamares setup program for %1.

" ) - : tr( "

Welcome to %1 setup.

" ); - else message = Calamares::Branding::instance()->welcomeStyleCalamares() - ? tr( "

Welcome to the Calamares installer for %1.

" ) - : tr( "

Welcome to the %1 installer.

" ); + if ( Calamares::Settings::instance()->isSetupMode() ) + { + message = Calamares::Branding::instance()->welcomeStyleCalamares() + ? tr( "

Welcome to the Calamares setup program for %1.

" ) + : tr( "

Welcome to %1 setup.

" ); + } + else + { + message = Calamares::Branding::instance()->welcomeStyleCalamares() + ? tr( "

Welcome to the Calamares installer for %1.

" ) + : tr( "

Welcome to the %1 installer.

" ); + } ui->mainText->setText( message.arg( *Calamares::Branding::VersionedName ) ); ui->retranslateUi( this ); From 535bf01475d0cedccec76ea6724726b59a7e1b28 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Thu, 29 Aug 2019 11:06:55 +0200 Subject: [PATCH 08/20] [welcome] Refactor lambdas to full slots - This helps give meaningful names to code chunks - Gives clang-format something to work with - Reduces indentation depth I think this is a bit of a code-style opinion issue: big complicated lambdas doing UI things just don't seem like a good idea. --- src/modules/welcome/WelcomePage.cpp | 111 +++++++++++++++------------- src/modules/welcome/WelcomePage.h | 4 + 2 files changed, 65 insertions(+), 50 deletions(-) diff --git a/src/modules/welcome/WelcomePage.cpp b/src/modules/welcome/WelcomePage.cpp index 05c955a2d..f46300097 100644 --- a/src/modules/welcome/WelcomePage.cpp +++ b/src/modules/welcome/WelcomePage.cpp @@ -73,61 +73,13 @@ WelcomePage::WelcomePage( QWidget* parent ) cDebug() << "Welcome string" << Calamares::Branding::instance()->welcomeStyleCalamares() << *Calamares::Branding::VersionedName; - CALAMARES_RETRANSLATE( - QString message; - - if ( Calamares::Settings::instance()->isSetupMode() ) - { - message = Calamares::Branding::instance()->welcomeStyleCalamares() - ? tr( "

Welcome to the Calamares setup program for %1.

" ) - : tr( "

Welcome to %1 setup.

" ); - } - else - { - message = Calamares::Branding::instance()->welcomeStyleCalamares() - ? tr( "

Welcome to the Calamares installer for %1.

" ) - : tr( "

Welcome to the %1 installer.

" ); - } - - ui->mainText->setText( message.arg( *Calamares::Branding::VersionedName ) ); - ui->retranslateUi( this ); - ui->supportButton->setText( tr( "%1 support" ).arg( *Calamares::Branding::ShortProductName ) ); ) + CALAMARES_RETRANSLATE( retranslate(); ) ui->aboutButton->setIcon( CalamaresUtils::defaultPixmap( CalamaresUtils::Information, CalamaresUtils::Original, 2 * QSize( CalamaresUtils::defaultFontHeight(), CalamaresUtils::defaultFontHeight() ) ) ); - connect( ui->aboutButton, &QPushButton::clicked, this, [this] { - QString title - = Calamares::Settings::instance()->isSetupMode() ? tr( "About %1 setup" ) : tr( "About %1 installer" ); - QMessageBox mb( QMessageBox::Information, - title.arg( CALAMARES_APPLICATION_NAME ), - tr( "

%1


" - "%2
" - "for %3


" - "Copyright 2014-2017 Teo Mrnjavac <teo@kde.org>
" - "Copyright 2017-2019 Adriaan de Groot <groot@kde.org>
" - "Thanks to the Calamares team " - "and the Calamares " - "translators team.

" - "Calamares " - "development is sponsored by
" - "Blue Systems - " - "Liberating Software." ) - .arg( CALAMARES_APPLICATION_NAME ) - .arg( CALAMARES_VERSION ) - .arg( *Calamares::Branding::VersionedName ), - QMessageBox::Ok, - this ); - mb.setIconPixmap( CalamaresUtils::defaultPixmap( - CalamaresUtils::Squid, - CalamaresUtils::Original, - QSize( CalamaresUtils::defaultFontHeight() * 6, CalamaresUtils::defaultFontHeight() * 6 ) ) ); - QGridLayout* layout = reinterpret_cast< QGridLayout* >( mb.layout() ); - if ( layout ) - layout->setColumnMinimumWidth( 2, CalamaresUtils::defaultFontHeight() * 24 ); - mb.exec(); - } ); + connect( ui->aboutButton, &QPushButton::clicked, this, &WelcomePage::showAboutBox ); int welcome_text_idx = ui->verticalLayout->indexOf( ui->mainText ); ui->verticalLayout->insertWidget( welcome_text_idx + 1, m_checkingWidget ); @@ -284,6 +236,65 @@ WelcomePage::setLanguageIcon( QPixmap i ) ui->languageIcon->setPixmap( i ); } +void +WelcomePage::retranslate() +{ + QString message; + + if ( Calamares::Settings::instance()->isSetupMode() ) + { + message = Calamares::Branding::instance()->welcomeStyleCalamares() + ? tr( "

Welcome to the Calamares setup program for %1.

" ) + : tr( "

Welcome to %1 setup.

" ); + } + else + { + message = Calamares::Branding::instance()->welcomeStyleCalamares() + ? tr( "

Welcome to the Calamares installer for %1.

" ) + : tr( "

Welcome to the %1 installer.

" ); + } + + ui->mainText->setText( message.arg( *Calamares::Branding::VersionedName ) ); + ui->retranslateUi( this ); + ui->supportButton->setText( tr( "%1 support" ).arg( *Calamares::Branding::ShortProductName ) ); +} + +void +WelcomePage::showAboutBox() +{ + QString title + = Calamares::Settings::instance()->isSetupMode() ? tr( "About %1 setup" ) : tr( "About %1 installer" ); + QMessageBox mb( QMessageBox::Information, + title.arg( CALAMARES_APPLICATION_NAME ), + tr( "

%1


" + "%2
" + "for %3


" + "Copyright 2014-2017 Teo Mrnjavac <teo@kde.org>
" + "Copyright 2017-2019 Adriaan de Groot <groot@kde.org>
" + "Thanks to the Calamares team " + "and the Calamares " + "translators team.

" + "Calamares " + "development is sponsored by
" + "Blue Systems - " + "Liberating Software." ) + .arg( CALAMARES_APPLICATION_NAME ) + .arg( CALAMARES_VERSION ) + .arg( *Calamares::Branding::VersionedName ), + QMessageBox::Ok, + this ); + mb.setIconPixmap( CalamaresUtils::defaultPixmap( + CalamaresUtils::Squid, + CalamaresUtils::Original, + QSize( CalamaresUtils::defaultFontHeight() * 6, CalamaresUtils::defaultFontHeight() * 6 ) ) ); + QGridLayout* layout = reinterpret_cast< QGridLayout* >( mb.layout() ); + if ( layout ) + { + layout->setColumnMinimumWidth( 2, CalamaresUtils::defaultFontHeight() * 24 ); + } + mb.exec(); +} + void LocaleTwoColumnDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index ) const diff --git a/src/modules/welcome/WelcomePage.h b/src/modules/welcome/WelcomePage.h index 3e776a5f0..3e20ab9ea 100644 --- a/src/modules/welcome/WelcomePage.h +++ b/src/modules/welcome/WelcomePage.h @@ -58,6 +58,10 @@ public: /// @brief Change the language from an external source. void externallySelectedLanguage( int row ); +public slots: + void retranslate(); + void showAboutBox(); + protected: void focusInEvent( QFocusEvent* e ) override; //choose the child widget to focus From e3f933259b57183311620dd02966856480213b33 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Thu, 29 Aug 2019 14:46:16 +0200 Subject: [PATCH 09/20] CMake: missing return statement should be an error --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 321989ac0..644427d16 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -198,6 +198,7 @@ if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" ) -Wno-missing-prototypes -Wno-documentation-unknown-command -Wno-unknown-warning-option + -Werror=return-type ) string( APPEND CMAKE_CXX_FLAGS " ${CLANG_WARNINGS}" ) endforeach() From f1971eed86ba230fff69c0f3c7b80a2b2e96819e Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Thu, 29 Aug 2019 14:53:03 +0200 Subject: [PATCH 10/20] [libcalamares] Support calling a slot on retranslation - sometimes a slot is easier than a lambda. Introduce a macro CALAMARES_RETRANSLATE_SLOT that calls a given slot in an object on language change. - extend the retranslator with support for calling slots: - use Qt's signal/slot mechanism alongside the private list of functions to call - provide convenience for obtaining the retranslator of an object. --- src/libcalamares/utils/Retranslator.cpp | 18 ++++++++++-------- src/libcalamares/utils/Retranslator.h | 14 ++++++++++++++ 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/src/libcalamares/utils/Retranslator.cpp b/src/libcalamares/utils/Retranslator.cpp index e154350b9..d761263ac 100644 --- a/src/libcalamares/utils/Retranslator.cpp +++ b/src/libcalamares/utils/Retranslator.cpp @@ -118,8 +118,8 @@ translatorLocaleName() return s_translatorLocaleName; } -void -Retranslator::attachRetranslator( QObject* parent, std::function< void( void ) > retranslateFunc ) +Retranslator* +Retranslator::retranslatorFor( QObject* parent ) { Retranslator* r = nullptr; for ( QObject* child : parent->children() ) @@ -127,16 +127,17 @@ Retranslator::attachRetranslator( QObject* parent, std::function< void( void ) > r = qobject_cast< Retranslator* >( child ); if ( r ) { - break; + return r; } } - if ( !r ) - { - r = new Retranslator( parent ); - } + return new Retranslator( parent ); +} - r->m_retranslateFuncList.append( retranslateFunc ); +void +Retranslator::attachRetranslator( QObject* parent, std::function< void( void ) > retranslateFunc ) +{ + retranslatorFor( parent )->m_retranslateFuncList.append( retranslateFunc ); retranslateFunc(); } @@ -159,6 +160,7 @@ Retranslator::eventFilter( QObject* obj, QEvent* e ) { func(); } + emit languageChange(); } } // pass the event on to the base diff --git a/src/libcalamares/utils/Retranslator.h b/src/libcalamares/utils/Retranslator.h index 32e8dcf41..58c60b761 100644 --- a/src/libcalamares/utils/Retranslator.h +++ b/src/libcalamares/utils/Retranslator.h @@ -46,10 +46,17 @@ class Retranslator : public QObject { Q_OBJECT public: + /// @brief Call @p retranslateFunc when the language changes static void attachRetranslator( QObject* parent, std::function< void( void ) > retranslateFunc ); + /// @brief What retranslator belongs to @p parent (may create one) + static Retranslator* retranslatorFor( QObject* parent ); + /// @brief Call @p retranslateFunc when the language changes void addRetranslateFunc( std::function< void( void ) > retranslateFunc ); +signals: + void languageChange(); + protected: bool eventFilter( QObject* obj, QEvent* e ) override; @@ -65,5 +72,12 @@ private: #define CALAMARES_RETRANSLATE( body ) CalamaresUtils::Retranslator::attachRetranslator( this, [=] { body } ); #define CALAMARES_RETRANSLATE_WIDGET( widget, body ) \ CalamaresUtils::Retranslator::attachRetranslator( widget, [=] { body } ); +#define CALAMARES_RETRANSLATE_SLOT( slotfunc ) \ + { \ + this->connect( CalamaresUtils::Retranslator::retranslatorFor( this ), \ + &CalamaresUtils::Retranslator::languageChange, \ + this, \ + slotfunc ); \ + } #endif From 1cde8c20dfa4a23b08d21787992b24519a60b295 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Thu, 29 Aug 2019 15:01:41 +0200 Subject: [PATCH 11/20] [libcalamaresui] Simplify retranslation - Use any object method to connect() to --- src/libcalamaresui/ViewManager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libcalamaresui/ViewManager.cpp b/src/libcalamaresui/ViewManager.cpp index 48c71a7ac..8fb832369 100644 --- a/src/libcalamaresui/ViewManager.cpp +++ b/src/libcalamaresui/ViewManager.cpp @@ -112,7 +112,7 @@ ViewManager::ViewManager( QObject* parent ) m_next = makeButton( m_widget, "go-next" ); m_quit = makeButton( m_widget, "dialog-cancel" ); - CALAMARES_RETRANSLATE( updateButtonLabels(); ) + CALAMARES_RETRANSLATE_SLOT( &ViewManager::updateButtonLabels ) QBoxLayout* bottomLayout = new QHBoxLayout; mainLayout->addLayout( bottomLayout ); From 0aabc894496d40aa013cd98c244fa56ffdf1a5af Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Thu, 29 Aug 2019 15:02:12 +0200 Subject: [PATCH 12/20] [partition] [welcome] Simplify retranslation --- src/modules/partition/gui/DeviceInfoWidget.cpp | 2 +- src/modules/welcome/WelcomePage.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/partition/gui/DeviceInfoWidget.cpp b/src/modules/partition/gui/DeviceInfoWidget.cpp index 4d37e3b39..ea318e85c 100644 --- a/src/modules/partition/gui/DeviceInfoWidget.cpp +++ b/src/modules/partition/gui/DeviceInfoWidget.cpp @@ -65,7 +65,7 @@ DeviceInfoWidget::DeviceInfoWidget( QWidget* parent ) m_ptIcon->setPalette( palette ); m_ptLabel->setPalette( palette ); - CALAMARES_RETRANSLATE( retranslateUi(); ) + CALAMARES_RETRANSLATE_SLOT( &DeviceInfoWidget::retranslateUi ) } diff --git a/src/modules/welcome/WelcomePage.cpp b/src/modules/welcome/WelcomePage.cpp index f46300097..02f91f79f 100644 --- a/src/modules/welcome/WelcomePage.cpp +++ b/src/modules/welcome/WelcomePage.cpp @@ -73,7 +73,7 @@ WelcomePage::WelcomePage( QWidget* parent ) cDebug() << "Welcome string" << Calamares::Branding::instance()->welcomeStyleCalamares() << *Calamares::Branding::VersionedName; - CALAMARES_RETRANSLATE( retranslate(); ) + CALAMARES_RETRANSLATE_SLOT( &WelcomePage::retranslate ) ui->aboutButton->setIcon( CalamaresUtils::defaultPixmap( CalamaresUtils::Information, From 61482b38cc5382727ebedae22694851ff5664dd3 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Thu, 29 Aug 2019 16:28:00 +0200 Subject: [PATCH 13/20] Changes: give credit for this cycle --- CHANGES | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES b/CHANGES index 02a7fc4f5..f12963214 100644 --- a/CHANGES +++ b/CHANGES @@ -8,6 +8,8 @@ website will have to do for older versions. This release contains contributions from (alphabetically by first name): - Arnaud Ferraris - Arnaud Rebillout + - Bill Auger + - Kevin Kofler ## Core ## From 9053b9cecf900590e81332e6325c9791325fe018 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 30 Aug 2019 06:20:45 -0400 Subject: [PATCH 14/20] [libcalamares] Fix Qt 5.9 compatibility - not really sure why I went for the Qt 5.10 STL-style iterators FIXES #1236 --- src/libcalamares/locale/TranslatableConfiguration.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libcalamares/locale/TranslatableConfiguration.cpp b/src/libcalamares/locale/TranslatableConfiguration.cpp index 7493c836c..bc39c398e 100644 --- a/src/libcalamares/locale/TranslatableConfiguration.cpp +++ b/src/libcalamares/locale/TranslatableConfiguration.cpp @@ -40,9 +40,9 @@ TranslatedString::TranslatedString( const QVariantMap& map, const QString& key ) QString value = CalamaresUtils::getString( map, key ); m_strings[ QString() ] = value; - for ( auto it = map.constKeyValueBegin(); it != map.constKeyValueEnd(); ++it ) + for ( auto it = map.constBegin(); it != map.constEnd(); ++it ) { - QString subkey = ( *it ).first; + QString subkey = it.key(); if ( subkey == key ) { // Already obtained, above @@ -53,7 +53,7 @@ TranslatedString::TranslatedString( const QVariantMap& map, const QString& key ) if ( subkey.indexOf( QRegularExpression( "\\[([a-zA-Z_@]*)\\]" ), 0, &match ) > 0 ) { QString language = match.captured( 1 ); - m_strings[ language ] = ( *it ).second.toString(); + m_strings[ language ] = it.value().toString(); } } } From 66ee6ac6734242b03f001a14f4669c3fe71005ab Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 30 Aug 2019 06:35:53 -0400 Subject: [PATCH 15/20] [libcalamares] Fix tests for umask != 022 - My usual test environment has umask set to 022, but on one dev box it is 002, leading to test failures (which show the test was bad, not that the umask-setting code is bad) --- src/libcalamares/utils/Tests.cpp | 4 +++- src/libcalamares/utils/UMask.h | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/libcalamares/utils/Tests.cpp b/src/libcalamares/utils/Tests.cpp index 0f7d6cd81..97edd0bc4 100644 --- a/src/libcalamares/utils/Tests.cpp +++ b/src/libcalamares/utils/Tests.cpp @@ -155,8 +155,10 @@ LibCalamaresTests::testUmask() QTemporaryFile ft; QVERIFY( ft.open() ); + // m gets the previous value of the mask (depends on the environment the + // test is run in, might be 002, might be 077), .. mode_t m = CalamaresUtils::setUMask( 022 ); - QCOMPARE( CalamaresUtils::setUMask( m ), m ); + QCOMPARE( CalamaresUtils::setUMask( m ), 022 ); // But now most recently set was 022 for ( mode_t i = 0; i <= 0777 /* octal! */; ++i ) { diff --git a/src/libcalamares/utils/UMask.h b/src/libcalamares/utils/UMask.h index 58b1a56ad..752c8b066 100644 --- a/src/libcalamares/utils/UMask.h +++ b/src/libcalamares/utils/UMask.h @@ -25,7 +25,10 @@ namespace CalamaresUtils { -/// @brief Wrapper for umask(2) +/** @brief Wrapper for umask(2) + * + * Like umask(2), sets the umask and returns the previous value of the mask. + */ DLLEXPORT mode_t setUMask( mode_t u ); /** @brief RAII for setting and re-setting umask. From f156a683a81e7775ad6a573f76cbb243eb2ad6d6 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 30 Aug 2019 06:41:48 -0400 Subject: [PATCH 16/20] Changes: pre-release housekeeping --- CHANGES | 4 +++- CMakeLists.txt | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGES b/CHANGES index f12963214..3921b21e2 100644 --- a/CHANGES +++ b/CHANGES @@ -3,7 +3,8 @@ contributors are listed. Note that Calamares does not have a historical changelog -- this log starts with version 3.2.0. The release notes on the website will have to do for older versions. -# 3.2.13 (unreleased) # + +# 3.2.13 (2019-08-30) # This release contains contributions from (alphabetically by first name): - Arnaud Ferraris @@ -39,6 +40,7 @@ This release contains contributions from (alphabetically by first name): - The *welcome* module can have URLs for the various buttons configured directly in the module configuration (rather than in `branding.desc`). + # 3.2.12 (2019-08-07) # This release contains contributions from (alphabetically by first name): diff --git a/CMakeLists.txt b/CMakeLists.txt index 644427d16..f48dda135 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -43,7 +43,7 @@ project( CALAMARES VERSION 3.2.13 LANGUAGES C CXX ) -set( CALAMARES_VERSION_RC 1 ) # Set to 0 during release cycle, 1 during development +set( CALAMARES_VERSION_RC 0 ) # Set to 0 during release cycle, 1 during development ### OPTIONS # From 64a5a30199c1261bd9421c3cc6ffd3e27f0d68cf Mon Sep 17 00:00:00 2001 From: Calamares CI Date: Fri, 30 Aug 2019 13:17:14 +0200 Subject: [PATCH 17/20] i18n: [calamares] Automatic merge of Transifex translations --- lang/calamares_be.ts | 64 ++++++++++++++++++++--------------------- lang/calamares_it_IT.ts | 46 ++++++++++++++--------------- lang/calamares_pt_PT.ts | 8 +++--- lang/calamares_ru.ts | 2 +- 4 files changed, 60 insertions(+), 60 deletions(-) diff --git a/lang/calamares_be.ts b/lang/calamares_be.ts index 543313cfc..71b4c9da1 100644 --- a/lang/calamares_be.ts +++ b/lang/calamares_be.ts @@ -22,27 +22,27 @@ Master Boot Record of %1 - + Галоўны загрузачны запіс %1 Boot Partition - + Загрузачны раздзел System Partition - + Сістэмны раздзел Do not install a boot loader - + Не ўсталёўваць загрузчык %1 (%2) - + %1 (%2) @@ -50,7 +50,7 @@ Blank Page - + Пустая старонка @@ -58,58 +58,58 @@ Form - + Форма GlobalStorage - + Глабальнае сховішча JobQueue - + Чарга задач Modules - + Модулі Type: - + Тып: none - + няма Interface: - + Інтэрфейс: Tools - + Інструменты Reload Stylesheet - + Перазагрузіць табліцу стыляў Widget Tree - + Дрэва віджэтаў Debug information - + Адладачная інфармацыя @@ -117,12 +117,12 @@ Set up - + Наладзіць Install - + Усталяваць @@ -130,7 +130,7 @@ Job failed (%1) - + Задача схібіла (%1) @@ -432,7 +432,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -1035,7 +1035,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -1101,7 +1101,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -1375,7 +1375,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -1869,7 +1869,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -1887,7 +1887,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -2024,7 +2024,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -2224,7 +2224,7 @@ The installer will quit and all changes will be lost. Form - + Форма @@ -2381,7 +2381,7 @@ Output: %1 (%2) language[name] (country[name]) - + %1 (%2) @@ -2408,7 +2408,7 @@ Output: Form - + Форма @@ -2969,7 +2969,7 @@ Output: Form - + Форма @@ -3125,7 +3125,7 @@ Output: Form - + Форма diff --git a/lang/calamares_it_IT.ts b/lang/calamares_it_IT.ts index e55ebf7dd..37ed30e6c 100644 --- a/lang/calamares_it_IT.ts +++ b/lang/calamares_it_IT.ts @@ -117,7 +117,7 @@ Set up - + Installazione @@ -159,12 +159,12 @@ Run command '%1' in target system. - + Esegui il comando '%1' sul sistema di destinazione Run command '%1'. - + Esegui il comando '1%' @@ -243,7 +243,7 @@ Cancel setup without changing the system. - + Annulla l'installazione senza modificare il computer @@ -253,7 +253,7 @@ Setup Failed - + Installazione fallita @@ -273,22 +273,22 @@ Continue with installation? - + Continuare l'installazione? The %1 setup program is about to make changes to your disk in order to set up %2.<br/><strong>You will not be able to undo these changes.</strong> - + Il %1 programma di installazione sta per fare dei cambiamenti sul tuo disco per installare %2. Non sarà possibile annullare questi cambiamenti. &Set up now - + &Installa adesso &Set up - + &Installazione @@ -298,12 +298,12 @@ Setup is complete. Close the setup program. - + Installazione completata. Chiudere il programma di installazione. Cancel setup? - + Annullare l'installazione? @@ -314,7 +314,7 @@ Do you really want to cancel the current setup process? The setup program will quit and all changes will be lost. - + Vuoi davvero annullare il processo di installazione? Il programma di installazione verrrà terminato e tutti i cambiamenti verranno persi. @@ -407,7 +407,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno %1 Setup Program - + %1 Programma di installazione @@ -476,7 +476,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno %1 will be shrunk to %2MiB and a new %3MiB partition will be created for %4. - + %1 sarà ridotta a %2MiB ed una nuova partizione di %3MiB sarà creata per %4 @@ -719,7 +719,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno Create new %2MiB partition on %4 (%3) with file system %1. - + Crea una nuova partizione da %2MiB su %4 (%3) con file system %1 @@ -1155,7 +1155,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno Setup Complete - + Installazione completata @@ -1165,7 +1165,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno The setup of %1 is complete. - + L'installazione di %1 è completa @@ -1201,22 +1201,22 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno has at least %1 GiB available drive space - + ha almeno %1 GiB di spazio disponibile There is not enough drive space. At least %1 GiB is required. - + Non c'è abbastanza spazio sul disco. E' richiesto almeno %1 GiB has at least %1 GiB working memory - + ha almeno %1 GiB di memoria The system does not have enough working memory. At least %1 GiB is required. - + Il sistema non ha abbastanza memoria. E' richiesto almeno %1 GiB @@ -1241,7 +1241,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno The setup program is not running with administrator rights. - + Il programma di installazione non è stato lanciato con i permessi di amministratore. @@ -1251,7 +1251,7 @@ Il programma d'installazione sarà terminato e tutte le modifiche andranno The screen is too small to display the setup program. - + Lo schermo è troppo piccolo per mostrare il programma di installazione diff --git a/lang/calamares_pt_PT.ts b/lang/calamares_pt_PT.ts index a727717d2..c8d680dda 100644 --- a/lang/calamares_pt_PT.ts +++ b/lang/calamares_pt_PT.ts @@ -1299,7 +1299,7 @@ O instalador será encerrado e todas as alterações serão perdidas. Creating initramfs. - + A criar o initramfs. @@ -1530,20 +1530,20 @@ O instalador será encerrado e todas as alterações serão perdidas. Configuring LUKS key file. - + A configurar o ficheiro chave do LUKS. No partitions are defined. - + Nenhuma partição é definida. Encrypted rootfs setup error - + Erro de configuração do rootfs criptografado diff --git a/lang/calamares_ru.ts b/lang/calamares_ru.ts index 92533e925..b61661e1a 100644 --- a/lang/calamares_ru.ts +++ b/lang/calamares_ru.ts @@ -3155,7 +3155,7 @@ Output: &About - + &О программе From 36d64b094411570298ae5e041b89962cc6af9d55 Mon Sep 17 00:00:00 2001 From: Calamares CI Date: Fri, 30 Aug 2019 13:17:14 +0200 Subject: [PATCH 18/20] i18n: [python] Automatic merge of Transifex translations --- lang/python/be/LC_MESSAGES/python.mo | Bin 521 -> 9733 bytes lang/python/be/LC_MESSAGES/python.po | 155 +++++++++++++----------- lang/python/es/LC_MESSAGES/python.mo | Bin 2843 -> 2859 bytes lang/python/es/LC_MESSAGES/python.po | 4 +- lang/python/pt_PT/LC_MESSAGES/python.mo | Bin 7452 -> 8279 bytes lang/python/pt_PT/LC_MESSAGES/python.po | 24 ++-- 6 files changed, 98 insertions(+), 85 deletions(-) diff --git a/lang/python/be/LC_MESSAGES/python.mo b/lang/python/be/LC_MESSAGES/python.mo index f068d4290b64b3dbe75ebb3b228d7a407a95a433..475d252c597b0c1a4227f0940f3f6004394b6eed 100644 GIT binary patch literal 9733 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 R)%J0|KI5!Eej4Uz^S?0hvz!0` delta 70 zcmZqm>146EC&V(90SFj@SO$nyfS4JGb$}QIEP(htP|^}egVeylWKF@e&8G#k837pU B2mk;8 diff --git a/lang/python/be/LC_MESSAGES/python.po b/lang/python/be/LC_MESSAGES/python.po index ccb6d0192..5baed9bac 100644 --- a/lang/python/be/LC_MESSAGES/python.po +++ b/lang/python/be/LC_MESSAGES/python.po @@ -3,6 +3,9 @@ # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # +# Translators: +# Zmicer Turok , 2019 +# #, fuzzy msgid "" msgstr "" @@ -10,6 +13,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-07-06 01:16+0200\n" "PO-Revision-Date: 2017-08-09 10:34+0000\n" +"Last-Translator: Zmicer Turok , 2019\n" "Language-Team: Belarusian (https://www.transifex.com/calamares/teams/20061/be/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,11 +23,11 @@ msgstr "" #: src/modules/grubcfg/main.py:37 msgid "Configure GRUB." -msgstr "" +msgstr "Наладзіць GRUB." #: src/modules/mount/main.py:38 msgid "Mounting partitions." -msgstr "" +msgstr "Мантаванне раздзелаў." #: src/modules/mount/main.py:150 src/modules/initcpiocfg/main.py:187 #: src/modules/initcpiocfg/main.py:191 @@ -35,164 +39,170 @@ msgstr "" #: src/modules/fstab/main.py:316 src/modules/localecfg/main.py:144 #: src/modules/networkcfg/main.py:48 msgid "Configuration Error" -msgstr "" +msgstr "Памылка канфігурацыі" #: src/modules/mount/main.py:151 src/modules/initcpiocfg/main.py:188 #: src/modules/luksopenswaphookcfg/main.py:96 src/modules/rawfs/main.py:172 #: src/modules/initramfscfg/main.py:95 src/modules/openrcdmcryptcfg/main.py:79 #: src/modules/fstab/main.py:313 msgid "No partitions are defined for
{!s}
to use." -msgstr "" +msgstr "Раздзелы для
{!s}
не вызначаныя." #: src/modules/services-systemd/main.py:35 msgid "Configure systemd services" -msgstr "" +msgstr "Наладзіць службы systemd" #: src/modules/services-systemd/main.py:68 #: src/modules/services-openrc/main.py:102 msgid "Cannot modify service" -msgstr "" +msgstr "Немагчыма наладзіць службу" #: src/modules/services-systemd/main.py:69 msgid "" "systemctl {arg!s} call in chroot returned error code {num!s}." -msgstr "" +msgstr "systemctl {arg!s} у chroot вярнуў код памылкі {num!s}." #: src/modules/services-systemd/main.py:72 #: src/modules/services-systemd/main.py:76 msgid "Cannot enable systemd service {name!s}." -msgstr "" +msgstr "Немагчыма ўключыць службу systemd {name!s}." #: src/modules/services-systemd/main.py:74 msgid "Cannot enable systemd target {name!s}." -msgstr "" +msgstr "Немагчыма ўключыць мэту systemd {name!s}." #: src/modules/services-systemd/main.py:78 msgid "Cannot disable systemd target {name!s}." -msgstr "" +msgstr "Немагчыма выключыць мэту systemd {name!s}." #: src/modules/services-systemd/main.py:80 msgid "Cannot mask systemd unit {name!s}." -msgstr "" +msgstr "Немагчыма замаскаваць юніт systemd {name!s}. " #: src/modules/services-systemd/main.py:82 msgid "" "Unknown systemd commands {command!s} and " "{suffix!s} for unit {name!s}." msgstr "" +"Невядомыя systemd загады {command!s} і {suffix!s} " +"для юніта {name!s}." #: src/modules/umount/main.py:40 msgid "Unmount file systems." -msgstr "" +msgstr "Адмантаваць файлавыя сістэмы." #: src/modules/unpackfs/main.py:41 msgid "Filling up filesystems." -msgstr "" +msgstr "Запаўненне файлавых сістэм." #: src/modules/unpackfs/main.py:159 msgid "rsync failed with error code {}." -msgstr "" +msgstr "памылка rsync з кодам {}." #: src/modules/unpackfs/main.py:220 src/modules/unpackfs/main.py:238 msgid "Failed to unpack image \"{}\"" -msgstr "" +msgstr "Не атрымалася распакаваць вобраз \"{}\"" #: src/modules/unpackfs/main.py:221 msgid "" "Failed to find unsquashfs, make sure you have the squashfs-tools package " "installed" msgstr "" +"Не атрымалася знайсці unsquashfs, праверце ці ўсталяваны ў вас пакунак " +"squashfs-tools" #: src/modules/unpackfs/main.py:320 msgid "No mount point for root partition" -msgstr "" +msgstr "Для каранёвага раздзела няма пункта мантавання" #: src/modules/unpackfs/main.py:321 msgid "globalstorage does not contain a \"rootMountPoint\" key, doing nothing" -msgstr "" +msgstr "globalstorage не змяшчае ключа \"rootMountPoint\", нічога не выконваецца" #: src/modules/unpackfs/main.py:326 msgid "Bad mount point for root partition" -msgstr "" +msgstr "Хібны пункт мантавання для каранёвага раздзела" #: src/modules/unpackfs/main.py:327 msgid "rootMountPoint is \"{}\", which does not exist, doing nothing" -msgstr "" +msgstr "rootMountPoint \"{}\" не існуе, нічога не выконваецца" #: src/modules/unpackfs/main.py:340 src/modules/unpackfs/main.py:347 #: src/modules/unpackfs/main.py:352 msgid "Bad unsquash configuration" -msgstr "" +msgstr "Хібная канфігурацыя unsquash" #: src/modules/unpackfs/main.py:341 msgid "The filesystem for \"{}\" ({}) is not supported" -msgstr "" +msgstr "Файлавая сістэма для \"{}\" ({}) не падтрымліваецца" #: src/modules/unpackfs/main.py:348 msgid "The source filesystem \"{}\" does not exist" -msgstr "" +msgstr "Зыходная файлавая сістэма \"{}\" не існуе" #: src/modules/unpackfs/main.py:353 msgid "The destination \"{}\" in the target system is not a directory" -msgstr "" +msgstr "Пункт прызначэння \"{}\" у мэтавай сістэме не з’яўляецца каталогам" #: src/modules/displaymanager/main.py:381 msgid "Cannot write KDM configuration file" -msgstr "" +msgstr "Немагчыма запісаць файл канфігурацыі KDM" #: src/modules/displaymanager/main.py:382 msgid "KDM config file {!s} does not exist" -msgstr "" +msgstr "Файл канфігурацыі KDM {!s} не існуе" #: src/modules/displaymanager/main.py:443 msgid "Cannot write LXDM configuration file" -msgstr "" +msgstr "Немагчыма запісаць файл канфігурацыі LXDM" #: src/modules/displaymanager/main.py:444 msgid "LXDM config file {!s} does not exist" -msgstr "" +msgstr "Файл канфігурацыі LXDM {!s} не існуе" #: src/modules/displaymanager/main.py:527 msgid "Cannot write LightDM configuration file" -msgstr "" +msgstr "Немагчыма запісаць файл канфігурацыі LightDM" #: src/modules/displaymanager/main.py:528 msgid "LightDM config file {!s} does not exist" -msgstr "" +msgstr "Файл канфігурацыі LightDM {!s} не існуе" #: src/modules/displaymanager/main.py:602 msgid "Cannot configure LightDM" -msgstr "" +msgstr "Немагчыма наладзіць LightDM" #: src/modules/displaymanager/main.py:603 msgid "No LightDM greeter installed." -msgstr "" +msgstr "LightDM greeter не ўсталяваны." #: src/modules/displaymanager/main.py:634 msgid "Cannot write SLIM configuration file" -msgstr "" +msgstr "Немагчыма запісаць файл канфігурацыі SLIM" #: src/modules/displaymanager/main.py:635 msgid "SLIM config file {!s} does not exist" -msgstr "" +msgstr "Файл канфігурацыі SLIM {!s} не існуе" #: src/modules/displaymanager/main.py:750 msgid "No display managers selected for the displaymanager module." -msgstr "" +msgstr "У модулі дысплейных кіраўнікоў нічога не абрана." #: src/modules/displaymanager/main.py:751 msgid "" "The displaymanagers list is empty or undefined in bothglobalstorage and " "displaymanager.conf." msgstr "" +"Спіс дысплейных кіраўнікоў пусты альбо не вызначаны ў bothglobalstorage і " +"displaymanager.conf." #: src/modules/displaymanager/main.py:831 msgid "Display manager configuration was incomplete" -msgstr "" +msgstr "Наладка дысплейнага кіраўніка не завершаная." #: src/modules/initcpiocfg/main.py:36 msgid "Configuring mkinitcpio." -msgstr "" +msgstr "Наладка mkinitcpio." #: src/modules/initcpiocfg/main.py:192 #: src/modules/luksopenswaphookcfg/main.py:100 @@ -200,142 +210,145 @@ msgstr "" #: src/modules/openrcdmcryptcfg/main.py:83 src/modules/fstab/main.py:317 #: src/modules/localecfg/main.py:145 src/modules/networkcfg/main.py:49 msgid "No root mount point is given for
{!s}
to use." -msgstr "" +msgstr "Каранёвы пункт мантавання для
{!s}
не пададзены." #: src/modules/luksopenswaphookcfg/main.py:35 msgid "Configuring encrypted swap." -msgstr "" +msgstr "Наладка зашыфраванага swap." #: src/modules/rawfs/main.py:35 msgid "Installing data." -msgstr "" +msgstr "Усталёўка даных." #: src/modules/services-openrc/main.py:38 msgid "Configure OpenRC services" -msgstr "" +msgstr "Наладзіць службы OpenRC" #: src/modules/services-openrc/main.py:66 msgid "Cannot add service {name!s} to run-level {level!s}." -msgstr "" +msgstr "Не атрымалася дадаць службу {name!s} на ўзровень запуску {level!s}." #: src/modules/services-openrc/main.py:68 msgid "Cannot remove service {name!s} from run-level {level!s}." -msgstr "" +msgstr "Не атрымалася выдаліць службу {name!s} з узроўня запуску {level!s}." #: src/modules/services-openrc/main.py:70 msgid "" "Unknown service-action {arg!s} for service {name!s} in run-" "level {level!s}." msgstr "" +"Невядомае дзеянне {arg!s} для службы {name!s} на ўзроўні " +"запуску {level!s}." #: src/modules/services-openrc/main.py:103 msgid "" "rc-update {arg!s} call in chroot returned error code {num!s}." msgstr "" +"rc-update {arg!s} пад chroot вярнуўся з кодам памылкі {num!s}." #: src/modules/services-openrc/main.py:110 msgid "Target runlevel does not exist" -msgstr "" +msgstr "Мэтавы ўзровень запуску не існуе" #: src/modules/services-openrc/main.py:111 msgid "" "The path for runlevel {level!s} is {path!s}, which does not " "exist." -msgstr "" +msgstr "Шлях {path!s} да ўзроўня запуску {level!s} не існуе." #: src/modules/services-openrc/main.py:119 msgid "Target service does not exist" -msgstr "" +msgstr "Мэтавая служба не існуе" #: src/modules/services-openrc/main.py:120 msgid "" "The path for service {name!s} is {path!s}, which does not " "exist." -msgstr "" +msgstr "Шлях {path!s} да службы {level!s} не існуе." #: src/modules/plymouthcfg/main.py:36 msgid "Configure Plymouth theme" -msgstr "" +msgstr "Наладзіць тэму Plymouth" #: src/modules/machineid/main.py:36 msgid "Generate machine-id." -msgstr "" +msgstr "Стварыць machine-id." #: src/modules/packages/main.py:62 #, python-format msgid "Processing packages (%(count)d / %(total)d)" -msgstr "" +msgstr "Апрацоўка пакункаў (%(count)d / %(total)d)" #: src/modules/packages/main.py:64 src/modules/packages/main.py:74 msgid "Install packages." -msgstr "" +msgstr "Усталяваць пакункі." #: src/modules/packages/main.py:67 #, python-format msgid "Installing one package." msgid_plural "Installing %(num)d packages." -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" -msgstr[3] "" +msgstr[0] "Усталёўка аднаго пакунка." +msgstr[1] "Усталёўка %(num)d пакункаў." +msgstr[2] "Усталёўка %(num)d пакункаў." +msgstr[3] "Усталёўка%(num)d пакункаў." #: src/modules/packages/main.py:70 #, python-format msgid "Removing one package." msgid_plural "Removing %(num)d packages." -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" -msgstr[3] "" +msgstr[0] "Выдаленне аднаго пакунка." +msgstr[1] "Выдаленне %(num)d пакункаў." +msgstr[2] "Выдаленне %(num)d пакункаў." +msgstr[3] "Выдаленне %(num)d пакункаў." #: src/modules/bootloader/main.py:51 msgid "Install bootloader." -msgstr "" +msgstr "Усталяваць загрузчык." #: src/modules/removeuser/main.py:34 msgid "Remove live user from target system" -msgstr "" +msgstr "Выдаліць часовага карыстальніка з мэтавай сістэмы" #: src/modules/hwclock/main.py:35 msgid "Setting hardware clock." -msgstr "" +msgstr "Наладка апаратнага гадзінніка." #: src/modules/dracut/main.py:36 msgid "Creating initramfs with dracut." -msgstr "" +msgstr "Стварэнне initramfs з dracut." #: src/modules/dracut/main.py:58 msgid "Failed to run dracut on the target" -msgstr "" +msgstr "Не атрымалася запусціць dracut у пункце прызначэння" #: src/modules/dracut/main.py:59 msgid "The exit code was {}" -msgstr "" +msgstr "Код выхаду {}" #: src/modules/initramfscfg/main.py:41 msgid "Configuring initramfs." -msgstr "" +msgstr "Наладка initramfs." #: src/modules/openrcdmcryptcfg/main.py:34 msgid "Configuring OpenRC dmcrypt service." -msgstr "" +msgstr "Наладка OpenRC dmcrypt." #: src/modules/fstab/main.py:38 msgid "Writing fstab." -msgstr "" +msgstr "Запіс fstab." #: src/modules/dummypython/main.py:44 msgid "Dummy python job." -msgstr "" +msgstr "Задача Dummy python." #: src/modules/dummypython/main.py:97 msgid "Dummy python step {}" -msgstr "" +msgstr "Крок Dummy python {}" #: src/modules/localecfg/main.py:39 msgid "Configuring locales." -msgstr "" +msgstr "Наладка лакаляў." #: src/modules/networkcfg/main.py:37 msgid "Saving network configuration." -msgstr "" +msgstr "Захаванне сеткавай канфігурацыі." diff --git a/lang/python/es/LC_MESSAGES/python.mo b/lang/python/es/LC_MESSAGES/python.mo index 5f74bc29cc845780a7c2148b5a96f5b5463d32b5..5dac1ae94ccc53b74623c5890c2aaeed08740a40 100644 GIT binary patch delta 232 zcmXZWu?qnK7zOZm<&JYE!->IBhSRYSMM`8cFfyqtM+%oiGRbVQSg;w5xBDY37Q2LFudiP3JE>Q7|J=+3U?~D|051thQppb#s7{NtM=SI|OY}}P8VUeqnxRoTq%pds zU3#Wz`lTtV$v~JkXr6XtRFPxY@!)x*-r$F}s2&6ix}sj;^7lc#2NcCU3T267Rd}9?8wp7Cao4Ce0UNMVbY+yPnC2@c$ zoZ%2RSi~0=Fy=^ctY8_tj#?@amK;J)7!E!$z=SLLIL5HB`+LLifscFH8~upgnaroT JUi)nM<`3tB8fE|h diff --git a/lang/python/es/LC_MESSAGES/python.po b/lang/python/es/LC_MESSAGES/python.po index 583b3adf0..928549662 100644 --- a/lang/python/es/LC_MESSAGES/python.po +++ b/lang/python/es/LC_MESSAGES/python.po @@ -7,7 +7,7 @@ # strel, 2018 # Francisco Sánchez López de Lerma , 2018 # Guido Grasso , 2018 -# Fito JB, 2019 +# Adolfo Jayme-Barrientos, 2019 # #, fuzzy msgid "" @@ -16,7 +16,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-07-06 01:16+0200\n" "PO-Revision-Date: 2017-08-09 10:34+0000\n" -"Last-Translator: Fito JB, 2019\n" +"Last-Translator: Adolfo Jayme-Barrientos, 2019\n" "Language-Team: Spanish (https://www.transifex.com/calamares/teams/20061/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/lang/python/pt_PT/LC_MESSAGES/python.mo b/lang/python/pt_PT/LC_MESSAGES/python.mo index 60d342d6e242279944db636a824f390eb2f137f6..9ac0dcef1b3c827d0b68611855a030211d1bf8a5 100644 GIT binary patch delta 2173 zcmY+^TWB0r7{Kw9OWVZU6LW1EkFBP$#%-G>+9pvO(=-@}(WDXydFZ%1yO}nbNoOZX zbCG>fP$+^7wmyUsloBh{qKi-;#FkZpLO~HJ;sr{nJ_Pi^r=So1zmtvC180A8W@paj zJKve*&Ra)Qzf|VGttkD}M(T-Nr7S#`&kv=1yHW#Kk#!t*(_X~}{2CA8U97|U9ZI!h zTh;{1|I4@^zrku$1xg)ODy3?;*h6~=AHpQ=#dosp>sUqmE|%d2)?;De=74)pCen@4 z&nWK1MXbRKct3uKwV1&N@JDQAeDxO>72IgKZ}Y)U9Hu>lveI`^I{Xr)gWD(_ZlFx8 zv}p7F-B?b$9VG&NC=*&hS=dFCg=J9QU&mdHuT-&8UC@LN;uv<|5)vZyF+PgxC>_?8 zD0Kk4P&%H(UHBHt1g~Nfu4V84iruvHOO+bO9+U}O#MEP4q`4Tv+c<~^iSr|v!k6$e zp2S?1Cwmt~9#!*r3|~iCz)jRxNI1{uD76nqY2T>aw4QM7qkRS?qRUmpUqXG28_ih6 zwED3PpTPx`0Y1ayn9Jz0;%D)Bbnys&j-9xHPhvY8FKr(s2d?nL9Ml&m1K-N}XASX} ztS=*OvNx?Ldwv2X$>z|6Hru|6vPEB^46u&OO*NDHjIFxxMSKAt##NN(Z)V$npyXOL zoy$0TQ(VZ6fvn?rkhY8MxPl${Js!p)Qe6f*h7lY?*}6AyKmLHS*M%&z509hd&N-Cl zuc18m8%n>aT9z+KHHb3PGblL`X4^NgllC2qV-w+E4D}ke;R=r7cPP0NA@k(@C3Nuv zJcad~IgPKPoSI9>7N^vwT*yrRM%mjotyB)?Qf2R@JWYL^${42f@+OI-J2W(HyTiRY zHWl^frvsg|{aGh!M^vxp#+}5B@3;wVyXH?jrjv8lbR>MUps%Udx2-__bX+I!t*LlY z&pE+_j`>z}CJ4VRNZ0u@ZnmjCR|gZe4lF-m2kH63-*XzD^R(}Ifu8ba+(1uz4!=%P zC!AT^4F`%c9V6DP^zYiioadj`(d>j6)pH|i#172x6P6#FvwT}eC%x$DNLXC_Q@MTC z33xtc>p3f_7hg%=DPGGd8TB3WMm!lThu=d0It+GlN| zWcmNz)h_?rNhX*cu35|tPuA5}nDAsS>$vB;cGQV^;YW2p_xI?;3~T0H>t0OE@N}Sk zJI3bqa2aP~q<`O@%%l?z-Ftc~SP?Z8UazVNFV&C8OPd3G+GP!z0cWOk%<=6YllC1i vtZX<{7tN$&PC}-rlUC+R%wkfGM0UO*FSj}=BihNRZ_nB?q=|62)VT5w;4fmj delta 1474 zcmYM!TSyd97{Kw*)x6~`%}eU$R+i=^Gqt=G716~~OU=Y2-0qsWAtvF2`x4nhR5T_% zNJ)Z_p%hE_Py{B?LxhEqV4#Q*h7UbNloiqcn;q$}Grx0YXXc#qo$t)V_MSrbRHWZ+ zp={$w1MbTJ4`0McW=I5{}up0(YQxcocOYtr&wha5?s4EI!2y9LHrS zLEir(v4Z|3g-Qa~+fg6rwr&_g?RXUR!3m7OFQ_y8g*x!8VDG>yQ3rkrbpX9+$0t~X zdjQ=!vaeJem`;4VeMAo65!$m%S1n@tX=tEE>N!^6B(B5ENRd5Q zg*&kawS#Hgjmd;jCv*-E;!P~TnJD64NF{-IZN+NTb{Fbejv?=m&!`I?QjZD zV-%^r3EQz22eA|b36DNkjm>x&8}S<^;W5IcOVfec&j{+0xPMS#$%Py;i;Xj5G80jg zk_nq-i)A5_$mXndW*QX-hel0jriFYn3p>u-QMxNMI>qMI|EE;l|MYKe4?iT~&7w=9 zvo7G!50lPJN2}XUi-t}!TqB{g@#WB>xuOZFMYrx^(OpCU%_R=AE@oho?Dw`bN%+nP zA2qY+zFjPAbMp(g8QB~?Tvl+?KWdLsrMgA7@tA_ diff --git a/lang/python/pt_PT/LC_MESSAGES/python.po b/lang/python/pt_PT/LC_MESSAGES/python.po index dcefb6c66..b5ba4bfc4 100644 --- a/lang/python/pt_PT/LC_MESSAGES/python.po +++ b/lang/python/pt_PT/LC_MESSAGES/python.po @@ -93,7 +93,7 @@ msgstr "" #: src/modules/umount/main.py:40 msgid "Unmount file systems." -msgstr "Desmontar sistemas de ficheiro." +msgstr "Desmontar sistemas de ficheiros." #: src/modules/unpackfs/main.py:41 msgid "Filling up filesystems." @@ -146,7 +146,7 @@ msgstr "O sistema de ficheiros fonte \"{}\" não existe" #: src/modules/unpackfs/main.py:353 msgid "The destination \"{}\" in the target system is not a directory" -msgstr "O destino \"{}\" no sistema alvo não é uma diretoria" +msgstr "O destino \"{}\" no sistema de destino não é um diretório" #: src/modules/displaymanager/main.py:381 msgid "Cannot write KDM configuration file" @@ -215,11 +215,11 @@ msgstr "A configurar o mkintcpio." #: src/modules/openrcdmcryptcfg/main.py:83 src/modules/fstab/main.py:317 #: src/modules/localecfg/main.py:145 src/modules/networkcfg/main.py:49 msgid "No root mount point is given for
{!s}
to use." -msgstr "" +msgstr "Nenhum ponto de montagem root é fornecido para
{!s}
usar." #: src/modules/luksopenswaphookcfg/main.py:35 msgid "Configuring encrypted swap." -msgstr "" +msgstr "Configurando a swap criptografada." #: src/modules/rawfs/main.py:35 msgid "Installing data." @@ -318,19 +318,19 @@ msgstr "Remover utilizador ativo do sistema de destino" #: src/modules/hwclock/main.py:35 msgid "Setting hardware clock." -msgstr "" +msgstr "A definir o relógio do hardware." #: src/modules/dracut/main.py:36 msgid "Creating initramfs with dracut." -msgstr "" +msgstr "Criando o initramfs com o dracut." #: src/modules/dracut/main.py:58 msgid "Failed to run dracut on the target" -msgstr "" +msgstr "Falha ao executar o dracut no destino" #: src/modules/dracut/main.py:59 msgid "The exit code was {}" -msgstr "" +msgstr "O código de saída foi {}" #: src/modules/initramfscfg/main.py:41 msgid "Configuring initramfs." @@ -338,11 +338,11 @@ msgstr "A configurar o initramfs." #: src/modules/openrcdmcryptcfg/main.py:34 msgid "Configuring OpenRC dmcrypt service." -msgstr "" +msgstr "A configurar o serviço OpenRC dmcrypt." #: src/modules/fstab/main.py:38 msgid "Writing fstab." -msgstr "" +msgstr "A escrever o fstab." #: src/modules/dummypython/main.py:44 msgid "Dummy python job." @@ -354,8 +354,8 @@ msgstr "Passo Dummy python {}" #: src/modules/localecfg/main.py:39 msgid "Configuring locales." -msgstr "A configurar o local." +msgstr "A configurar a localização." #: src/modules/networkcfg/main.py:37 msgid "Saving network configuration." -msgstr "" +msgstr "A guardar a configuração de rede." From c9ab0524e226a99e78589f8a0ac9a9100305e36a Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 30 Aug 2019 13:38:00 +0200 Subject: [PATCH 19/20] Changes: post-release housekeeping --- CHANGES | 9 +++++++++ CMakeLists.txt | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CHANGES b/CHANGES index 3921b21e2..ad985b1e4 100644 --- a/CHANGES +++ b/CHANGES @@ -4,6 +4,15 @@ changelog -- this log starts with version 3.2.0. The release notes on the website will have to do for older versions. +# 3.2.14 (unreleased) # + +This release contains contributions from (alphabetically by first name): + +## Core ## + +## Modules ## + + # 3.2.13 (2019-08-30) # This release contains contributions from (alphabetically by first name): diff --git a/CMakeLists.txt b/CMakeLists.txt index f48dda135..46acedaf9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -40,10 +40,10 @@ cmake_minimum_required( VERSION 3.3 FATAL_ERROR ) project( CALAMARES - VERSION 3.2.13 + VERSION 3.2.14 LANGUAGES C CXX ) -set( CALAMARES_VERSION_RC 0 ) # Set to 0 during release cycle, 1 during development +set( CALAMARES_VERSION_RC 1 ) # Set to 0 during release cycle, 1 during development ### OPTIONS # From c7cbba3951f269cfe20c2915b51ea6928f5b6a1c Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 30 Aug 2019 22:54:28 +0200 Subject: [PATCH 20/20] [welcome] Fix typo in tooltip --- src/modules/welcome/WelcomePage.ui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/welcome/WelcomePage.ui b/src/modules/welcome/WelcomePage.ui index 160daa595..590029558 100644 --- a/src/modules/welcome/WelcomePage.ui +++ b/src/modules/welcome/WelcomePage.ui @@ -176,7 +176,7 @@ - Open relead notes website + Open release notes website &Release notes