Release v3.2.59
-----BEGIN PGP SIGNATURE----- iQGzBAABCAAdFiEESUdADzdGoDiQC7F4Mo10LYgHpDUFAmKTi68ACgkQMo10LYgH pDVUbAv/Z6UZDkwODV5I8xYc8w6A04WW//CCzJVYT5zkXxEM4Ye7fKCJ/CuaROw0 7vDEM/4eHB+Ux+XEmvn73tyryzyDwVW5yj9fG9bbHjILWt6UBgurlbzATlbbYb/Y G9hC6s9pPVMJvI4/e6r8OZGpxl+1sbnsyPw/K7Ci7W41YXJAK6wdrNL9PZkzgIuq DSNU2SJhx+a3hL9gV3INDI0ZYIk95SReEizxNKlUyBb8CZGqT4xxnzppyOFKmIMJ 2n47qwgCzQ4/NDNcXRn8H0wbaTYw1p9+jDUj7UTNxi4g3um4MHNpGeQ4SJ3MbOqn iLA60RHm5oa1RuS+ocmTjcF89PcHw1l2MjbxVnfSs2WS/Eooj+zr6mgvGqgVFcqG sz4jtOGsF0e5A9VW1//735l6KFI5COlq1XWYN4hvZIWkNsYpZSF1XMjLF2qvNgR+ f5Qz6sgBQ8NEOa+oT9Yw4WKQLAnW2w06zxuyz0eAsWvizvHV9mVAsXJpcCPyOOm9 xflMh/pB =71gr -----END PGP SIGNATURE----- [merge] with upstrteam
This commit is contained in:
commit
a5b96e4a1e
5
.git-blame-ignore-revs
Normal file
5
.git-blame-ignore-revs
Normal file
@ -0,0 +1,5 @@
|
||||
# SPDX-FileCopyrightText: no
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
#
|
||||
18fef8dfe5d926ec0bc979562553adf4db8db2e9
|
||||
874a0c1f38b0da4e5bc83083b13a63b1c7eed935
|
4
.github/workflows/issues.yml
vendored
4
.github/workflows/issues.yml
vendored
@ -10,14 +10,14 @@ jobs:
|
||||
steps:
|
||||
- name: "notify: new"
|
||||
if: github.event.issue.state == 'open'
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: "OPENED ${{ github.event.issue.html_url }} by ${{ github.actor }} ${{ github.event.issue.title }}"
|
||||
- name: "notify: closed"
|
||||
if: github.event.issue.state != 'open'
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
|
16
.github/workflows/nightly-debian.yml
vendored
16
.github/workflows/nightly-debian.yml
vendored
@ -22,23 +22,25 @@ jobs:
|
||||
options: --tmpfs /build:rw --user 0:0
|
||||
steps:
|
||||
- name: "prepare env"
|
||||
uses: calamares/actions/prepare-debian@v3
|
||||
uses: calamares/actions/prepare-debian@v4
|
||||
- name: "prepare source"
|
||||
uses: actions/checkout@v2
|
||||
uses: calamares/actions/generic-checkout@v4
|
||||
- name: "build"
|
||||
id: build
|
||||
uses: calamares/actions/generic-build@v3
|
||||
uses: calamares/actions/generic-build@v4
|
||||
- name: "notify: ok"
|
||||
if: ${{ success() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: "OK ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}"
|
||||
message: |
|
||||
OK ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}
|
||||
- name: "notify: fail"
|
||||
if: ${{ failure() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: "FAIL ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}"
|
||||
message: |
|
||||
FAIL ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}
|
||||
|
38
.github/workflows/nightly-neon.yml
vendored
38
.github/workflows/nightly-neon.yml
vendored
@ -22,12 +22,28 @@ jobs:
|
||||
options: --tmpfs /build:rw --user 0:0
|
||||
steps:
|
||||
- name: "prepare env"
|
||||
uses: calamares/actions/prepare-neon@v3
|
||||
uses: calamares/actions/prepare-neon@v4
|
||||
- name: "prepare source"
|
||||
uses: actions/checkout@v2
|
||||
uses: calamares/actions/generic-checkout@v4
|
||||
- name: "build"
|
||||
id: build
|
||||
uses: calamares/actions/generic-build@v3
|
||||
uses: calamares/actions/generic-build@v4
|
||||
- name: "notify: ok"
|
||||
if: ${{ success() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: |
|
||||
OK ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}
|
||||
- name: "notify: fail"
|
||||
if: ${{ failure() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: |
|
||||
FAIL ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}
|
||||
- name: "Calamares: archive"
|
||||
working-directory: ${{ env.BUILDDIR }}
|
||||
run: |
|
||||
@ -39,18 +55,4 @@ jobs:
|
||||
name: calamares-tarball
|
||||
path: ${{ env.BUILDDIR }}/calamares.tar.gz
|
||||
if-no-files-found: error
|
||||
retention-days: 3
|
||||
- name: "notify: ok"
|
||||
if: ${{ success() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: "OK ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}"
|
||||
- name: "notify: fail"
|
||||
if: ${{ failure() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: "FAIL ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}"
|
||||
retention-days: 7
|
||||
|
15
.github/workflows/nightly-opensuse.yml
vendored
15
.github/workflows/nightly-opensuse.yml
vendored
@ -22,24 +22,25 @@ jobs:
|
||||
options: --tmpfs /build:rw --user 0:0
|
||||
steps:
|
||||
- name: "prepare env"
|
||||
uses: calamares/actions/prepare-opensuse@v3
|
||||
uses: calamares/actions/prepare-opensuse@v4
|
||||
- name: "prepare source"
|
||||
uses: actions/checkout@v2
|
||||
uses: calamares/actions/generic-checkout@v4
|
||||
- name: "build"
|
||||
id: build
|
||||
uses: calamares/actions/generic-build@v3
|
||||
uses: calamares/actions/generic-build@v4
|
||||
- name: "notify: ok"
|
||||
if: ${{ success() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: |
|
||||
OK ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}"
|
||||
OK ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}
|
||||
- name: "notify: fail"
|
||||
if: ${{ failure() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
message: "FAIL ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}"
|
||||
message: |
|
||||
FAIL ${{ github.workflow }} in ${{ github.repository }} ${{ steps.build.outputs.git-summary }}
|
||||
|
11
.github/workflows/push.yml
vendored
11
.github/workflows/push.yml
vendored
@ -4,6 +4,7 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- calamares
|
||||
- work-3.3
|
||||
pull_request:
|
||||
types:
|
||||
- opened
|
||||
@ -28,15 +29,15 @@ jobs:
|
||||
options: --tmpfs /build:rw --user 0:0
|
||||
steps:
|
||||
- name: "prepare env"
|
||||
uses: calamares/actions/prepare-neon@v3
|
||||
uses: calamares/actions/prepare-neon@v4
|
||||
- name: "prepare source"
|
||||
uses: actions/checkout@v2
|
||||
uses: calamares/actions/generic-checkout@v4
|
||||
- name: "build"
|
||||
id: build
|
||||
uses: calamares/actions/generic-build@v3
|
||||
uses: calamares/actions/generic-build@v4
|
||||
- name: "notify: ok"
|
||||
if: ${{ success() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
@ -45,7 +46,7 @@ jobs:
|
||||
.. ${{ steps.build.outputs.git-summary }}
|
||||
- name: "notify: fail"
|
||||
if: ${{ failure() && github.repository == 'calamares/calamares' }}
|
||||
uses: calamares/actions/matrix-notify@v3
|
||||
uses: calamares/actions/matrix-notify@v4
|
||||
with:
|
||||
token: ${{ secrets.MATRIX_TOKEN }}
|
||||
room: ${{ secrets.MATRIX_ROOM }}
|
||||
|
30
AUTHORS
30
AUTHORS
@ -20,30 +20,58 @@ and moral support from (alphabetically by first name or nickname):
|
||||
- Allen Welkie
|
||||
- AlmAck
|
||||
- Andrius Štikonas
|
||||
- Anke Boersma
|
||||
- Anubhav Choudhary
|
||||
- Arjen Balfoort
|
||||
- Arnaud Ferraris
|
||||
- Artem Grinev
|
||||
- artoo@cromnix.org
|
||||
- benne-dee
|
||||
- Bernhard Landauer
|
||||
- Bezzy1999
|
||||
- Bill Auger
|
||||
- Bob van der Linden
|
||||
- Caio Jordão Carvalho
|
||||
- Camilo Higuita
|
||||
- Collabora LTD
|
||||
- Corey Lang
|
||||
- crispg72
|
||||
- Dan Simmons
|
||||
- demmm
|
||||
- Emmanuel Arias
|
||||
- Enrique Medina Gremaldos
|
||||
- Erik Dubois
|
||||
- Dominic Hayes
|
||||
- El-Wumbus
|
||||
- Evan James
|
||||
- Frede H
|
||||
- Gabriel Craciunescu
|
||||
- Harald Sitter
|
||||
- Huang Jia Wen
|
||||
- Jerrod Frost
|
||||
- Jia Chao
|
||||
- Joe Kamprad
|
||||
- Jonas Strassel
|
||||
- Kai Dohmen
|
||||
- Kevin Kofler
|
||||
- Kyle Robertze
|
||||
- Lisa Vitolo
|
||||
- Neal Gompa
|
||||
- Matti Hyttinen
|
||||
- n3rdopolis
|
||||
- Neal Gompa
|
||||
- Nico 'dr460nf1r3'
|
||||
- Omer I.S.
|
||||
- Philip Müller
|
||||
- Ramon Buldó
|
||||
- Raul Rodrigo Segura
|
||||
- Rohan Garg
|
||||
- Santosh Mahto
|
||||
- Scott Harvey
|
||||
- Simon Quigley
|
||||
- Taejun Park
|
||||
- Victor Fuentes
|
||||
- vtriolet
|
||||
- Walter Lapchynski
|
||||
- Waneon Kim
|
||||
|
||||
> This list was updated to revision 6e8d820737dea0f3e08f12b10768facef19be684 on May 28th 2022.
|
||||
|
139
CHANGES-3.2
139
CHANGES-3.2
@ -1,4 +1,3 @@
|
||||
|
||||
<!-- SPDX-FileCopyrightText: no
|
||||
SPDX-License-Identifier: CC0-1.0
|
||||
-->
|
||||
@ -8,16 +7,146 @@ 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.55 (unreleased) #
|
||||
# 3.2.59 (2022-05-29) #
|
||||
|
||||
This release contains contributions from (alphabetically by first name):
|
||||
- No external contributors yet
|
||||
- Arjen Balfoort
|
||||
|
||||
This is the final release of Calamares 3.2 where the release is from
|
||||
the *calamares* branch -- that is, where the primary development
|
||||
branch is also the branch being released regularly. Future releases
|
||||
of the 3.2 series are bugfix-only, and no new feature development
|
||||
or translations are expected. This is also the final release done
|
||||
*as work-work* by the current maintainer.
|
||||
|
||||
## Core ##
|
||||
- No core changes yet
|
||||
- Prep-work for moving the *About Calamares* button to the panels,
|
||||
rather than keeping it in the Welcome module. The about information
|
||||
is somewhat more flexible now, so that a new maintainer can be added
|
||||
easily without frustrating translators.
|
||||
- The progress panels (both Widgets and QML) now have an About button
|
||||
on them, showing the traditional *About Calamares* dialog.
|
||||
- Translations for the (QML) slideshow were not being loaded correctly.
|
||||
The log is now somewhat more informative when that fails.
|
||||
|
||||
## Modules ##
|
||||
- No module changes yet
|
||||
- *fstab* can now be configured to put `/tmp` on a *tmpfs*, and this can
|
||||
depend on it being on an SSD or not. Options applicable to `/tmp` can
|
||||
be configured separately as well. #1818 (Thanks Arjen)
|
||||
- *partition* now has some support for re-using LUKS partitions.
|
||||
(Thanks Arjen)
|
||||
- *partition* will cycle out a LUKS key if all the key slots are in use
|
||||
and a new key is added, rather than crashing the installer. (Thanks Arjen)
|
||||
- *welcome* and *welcomeq* have no *About* button anymore; this is now
|
||||
available from the progress panel, since it's also not-really about the
|
||||
distro itself.
|
||||
|
||||
|
||||
# 3.2.58.2 (2022-05-24)
|
||||
|
||||
This is a extra-quick release for an issue that shows up when using a
|
||||
swap **file** on a btrfs filesystem; the installation would fail with
|
||||
a Python error, raised from btrfs-progs. Reported by Evan James, Erik
|
||||
Dubois, TechXero.
|
||||
|
||||
|
||||
# 3.2.58.1 (2022-05-20)
|
||||
|
||||
This is a hot-fix release for a regression in the *partition* module where
|
||||
it was impossible to proceed unless *Encrypt system* was checked.
|
||||
|
||||
|
||||
# 3.2.58 (2022-05-18) #
|
||||
|
||||
This release contains contributions from (alphabetically by first name):
|
||||
- Anke Boersma
|
||||
- Arjen Balfoort
|
||||
- Enrique Medina Gremaldos
|
||||
- Evan James
|
||||
|
||||
## Core ##
|
||||
- Internal improvements to translations-setup means that Catalan (in the
|
||||
Valencian dialect), Occitan (Lenga d'Oc) and Serbian (in Latin script)
|
||||
are all better supported. Thanks Enrique.
|
||||
|
||||
## Modules ##
|
||||
- *netinstall* Now displays entries with an empty name slightly differently.
|
||||
An empty name is not generally useful, but in combination with
|
||||
*immutable:true* and *selected:false* can be used to introduce separators
|
||||
or descriptive comments into the list of packages.
|
||||
- *partition* does not offer full-disk encryption when using ZFS. ZFS and the
|
||||
way Calamares sets up FDE don't mix well. (Thanks Evan)
|
||||
- *partition* Various bugs related to LUKS have been fixed. (Thanks Arjen)
|
||||
- *users* module now has a structured *user* key with settings specific
|
||||
to the user (shell, in particular). This maintains backwards compatibility
|
||||
with the *userShell* key.
|
||||
- *users* module now has lists of forbidden login- and host-names, to
|
||||
avoid settings that will mess up the install (e.g. using a login-name
|
||||
that is one of the system's reserved names). #1944
|
||||
|
||||
|
||||
# 3.2.57 (2022-05-04) #
|
||||
|
||||
This release contains contributions from (alphabetically by first name):
|
||||
- Arjen Balfoort (new contributor! Welcome!)
|
||||
- Victor Fuentes
|
||||
|
||||
## Core ##
|
||||
- Calamares can now be started in Serbian (Latin Script) and Catalan
|
||||
(Valencia) when the LANG environment variable is set to values
|
||||
that indicate those languages.
|
||||
|
||||
## Modules ##
|
||||
- *fstab* and *luksbootkeyfile* have better support for an **un**encrypted
|
||||
`/boot` partition. #1931 (thanks Arjen)
|
||||
- *packagechooser* and *packagechooserq* can now be given a custom name
|
||||
in the side-panel. #1932 (thanks Victor)
|
||||
|
||||
|
||||
# 3.2.56 (2022-04-22) #
|
||||
|
||||
As of this release, Calamares 3.2 development is winding down. The
|
||||
reason is simple: systems where the backwards-compatibility of Calamares
|
||||
3.2 is important are becoming increasingly difficult to work with
|
||||
for **other** reasons. Foremost among these are deprecated versions
|
||||
of dependencies and tools. Calamares 3.2 branch remains open for
|
||||
bugfixes and will see a few more releases, but development is now
|
||||
shifting wholesale to the newer generation.
|
||||
|
||||
This release contains contributions from (alphabetically by first name):
|
||||
- Victor Fuentes (new contributor! Welcome!)
|
||||
|
||||
## Core ##
|
||||
- Changes in git forced some changes on the CI tooling.
|
||||
|
||||
## Modules ##
|
||||
- *locale* showed the wrong timezone for Dhaka, although it configured
|
||||
the correct one. #1929
|
||||
- *users* module sets global storage key *fullname* to the full name
|
||||
of the user (e.g. what is entered in the "your full name" box on the
|
||||
users page). #1923 (Thanks Victor)
|
||||
|
||||
|
||||
# 3.2.55 (2022-04-11) #
|
||||
|
||||
This release contains contributions from (alphabetically by first name):
|
||||
- vtriolet (new contributor! Welcome!)
|
||||
|
||||
## Core ##
|
||||
- `readTargetFile()` did not properly return all the lines of the target
|
||||
file. #1918 (thanks vtriolet)
|
||||
|
||||
## Modules ##
|
||||
- *users* module has rearranged configuration for setting the hostname.
|
||||
Legacy settings are preserved, but produce a warning. Please see
|
||||
`users.conf` for details.
|
||||
- *users* module has a new hostname.location setting, *Transient*, which
|
||||
will force the installed system to transient-hostname-setting by removing
|
||||
the file `/etc/hostname`.
|
||||
- *users* module has a new hostname.template setting, which allows some
|
||||
tweaking of how the hostname suggestion is constructed. In particular,
|
||||
it can be configured to use the current hostname (whatever that may be).
|
||||
See the example `users.conf` for details on available keys.
|
||||
|
||||
|
||||
# 3.2.54 (2022-03-21) #
|
||||
|
@ -41,7 +41,11 @@
|
||||
# TODO:3.3: Require CMake 3.12
|
||||
cmake_minimum_required( VERSION 3.3 FATAL_ERROR )
|
||||
project( CALAMARES
|
||||
<<<<<<< HEAD
|
||||
VERSION 3.2.54
|
||||
=======
|
||||
VERSION 3.2.59
|
||||
>>>>>>> 26cac052f58a1c38e723827d1773f0e805f4ee0d
|
||||
LANGUAGES C CXX
|
||||
)
|
||||
|
||||
@ -125,9 +129,8 @@ set( CALAMARES_DESCRIPTION_SUMMARY
|
||||
#
|
||||
# When adding a new language, take care that it is properly loaded
|
||||
# by the translation framework. Languages with alternate scripts
|
||||
# (sr@latin in particular) may need special handling in CalamaresUtils.cpp.
|
||||
#
|
||||
# TODO: drop the es_ES translation from Transifex
|
||||
# (sr@latin in particular) or location (ca@valencia) need special
|
||||
# handling in libcalamares/locale/Translation.h .
|
||||
#
|
||||
# NOTE: move eo (Esperanto) to _ok once Qt can actually create a
|
||||
# locale for it. (Qt 5.12.2 can, see Translation Status section).
|
||||
@ -136,14 +139,14 @@ set( CALAMARES_DESCRIPTION_SUMMARY
|
||||
# `txstats.py -e`. See also
|
||||
#
|
||||
# Total 74 languages
|
||||
set( _tx_complete az az_AZ ca de fa fi_FI he hi hr ja ko lt pt_BR
|
||||
pt_PT si sq sv tr_TR uk zh_TW )
|
||||
set( _tx_good as be ca@valencia cs_CZ da fr fur it_IT ml nl ru sk
|
||||
tg vi zh_CN )
|
||||
set( _tx_ok ar ast bg bn el en_GB es es_MX et eu gl hu id is mr nb
|
||||
set( _tx_complete az az_AZ ca es fi_FI he hi hr ja lt pt_BR pt_PT
|
||||
sq sv uk zh_TW )
|
||||
set( _tx_good as be ca@valencia cs_CZ da de fa fr fur it_IT ko ml
|
||||
nl ru si sk tg tr_TR vi zh_CN )
|
||||
set( _tx_ok ar ast bg bn el en_GB es_MX et eu gl hu id is mr nb oc
|
||||
pl ro sl sr sr@latin th )
|
||||
set( _tx_incomplete eo es_PR gu ie kk kn lo lv mk ne ne_NP ta_IN te
|
||||
ur zh zh_HK )
|
||||
set( _tx_incomplete eo es_PR gu ie ja-Hira kk kn lo lv mk ne_NP
|
||||
ta_IN te ur zh zh_HK )
|
||||
|
||||
### Required versions
|
||||
#
|
||||
|
@ -65,5 +65,5 @@ that chat window open because it can easily take a few hours for
|
||||
someone to notice a message.
|
||||
Matrix is persistent, and we'll see your message eventually.
|
||||
|
||||
* [![Join us on Matrix](https://img.shields.io/badge/Matrix-%23calamares:kde.org-blue)](https://webchat.kde.org/#/room/%23calamares:kde.org)
|
||||
* [![Chat on IRC](https://img.shields.io/badge/IRC-Libera.Chat%20%23calamares-green)](https://kiwiirc.com/client/irc.libera.chat/#calamares)
|
||||
* [![Join us on Matrix](https://img.shields.io/badge/Matrix-%23calamares:kde.org-blue)](https://webchat.kde.org/#/room/%23calamares:kde.org) (needs a Matrix account)
|
||||
* [![Chat on IRC](https://img.shields.io/badge/IRC-Libera.Chat%20%23calamares-green)](https://kiwiirc.com/client/irc.libera.chat/#calamares) (IRC supports guest accounts)
|
||||
|
@ -73,10 +73,10 @@ Name[eo]=Instali Sistemo
|
||||
Icon[eo]=calamares
|
||||
GenericName[eo]=Sistema Instalilo
|
||||
Comment[eo]=Calamares — Sistema Instalilo
|
||||
Name[es]=Instalar Sistema
|
||||
Name[es]=Instalar el sistema
|
||||
Icon[es]=calamares
|
||||
GenericName[es]=Instalador del Sistema
|
||||
Comment[es]=Calamares — Instalador del Sistema
|
||||
GenericName[es]=Instalador del sistema
|
||||
Comment[es]=Calamares — Instalador del sistema
|
||||
Name[es_MX]=Instalar el Sistema
|
||||
Icon[es_MX]=calamares
|
||||
GenericName[es_MX]=Instalador del sistema
|
||||
|
@ -7,8 +7,6 @@
|
||||
#
|
||||
# Release script for Calamares
|
||||
#
|
||||
# NOTE: this script contains Linuxisms (in particular, expects GNU mktemp(1))
|
||||
#
|
||||
# This attempts to perform the different steps of the RELEASE.md
|
||||
# document automatically. It's not tested on other machines or
|
||||
# setups other than [ade]'s development VM.
|
||||
@ -29,11 +27,13 @@
|
||||
# * `-B` do not build (before tagging)
|
||||
# * `-P` do not package (tag, sign, tarball)
|
||||
# * `-T` do not respect string freeze
|
||||
# * '-b' do not build-and-test tarball
|
||||
#
|
||||
# The build / package settings can be influenced via environment variables:
|
||||
# * BUILD_DEFAULT set to `false` to avoid first build with gcc
|
||||
# * BUILD_CLANG set to `false` to avoid second build with clang
|
||||
# * BUILD_ONLY set to `true` to break after building
|
||||
# * TEST_TARBALL set to 'false' to skip build-and-test phase after tarring
|
||||
#
|
||||
### END USAGE
|
||||
|
||||
@ -45,9 +45,10 @@ which cmake > /dev/null 2>&1 || { echo "No cmake(1) available." ; exit 1 ; }
|
||||
test -z "$BUILD_DEFAULT" && BUILD_DEFAULT=true
|
||||
test -z "$BUILD_CLANG" && BUILD_CLANG=true
|
||||
test -z "$BUILD_ONLY" && BUILD_ONLY=false
|
||||
test -z "$TEST_TARBALL" && TEST_TARBALL=true
|
||||
STRING_FREEZE=true
|
||||
|
||||
while getopts "hBPT" opt ; do
|
||||
while getopts "hBbPT" opt ; do
|
||||
case "$opt" in
|
||||
h|\?)
|
||||
sed -e '1,/USAGE/d' -e '/END.USAGE/,$d' < "$0"
|
||||
@ -57,6 +58,9 @@ while getopts "hBPT" opt ; do
|
||||
BUILD_DEFAULT=false
|
||||
BUILD_CLANG=false
|
||||
;;
|
||||
b)
|
||||
TEST_TARBALL=false
|
||||
;;
|
||||
P)
|
||||
BUILD_ONLY=true
|
||||
;;
|
||||
@ -74,7 +78,7 @@ fi
|
||||
### Setup
|
||||
#
|
||||
#
|
||||
BUILDDIR=$(mktemp -d --suffix=-build --tmpdir=.)
|
||||
BUILDDIR=$(mktemp -d ./cala-tmp-XXXXXX)
|
||||
KEY_ID="328D742D8807A435"
|
||||
|
||||
# Try to make gpg cache the signing key, so we can leave the process
|
||||
@ -144,12 +148,14 @@ SHA256=$(sha256sum "$TAR_FILE" | cut -d" " -f1)
|
||||
### Build the tarball
|
||||
#
|
||||
#
|
||||
D=$(date +%Y%m%d-%H%M%S)
|
||||
TMPDIR=$(mktemp -d --suffix="-calamares-$D")
|
||||
test -d "$TMPDIR" || { echo "Could not create tarball-build directory." ; exit 1 ; }
|
||||
tar xzf "$TAR_FILE" -C "$TMPDIR" || { echo "Could not unpack tarball." ; exit 1 ; }
|
||||
test -d "$TMPDIR/$TAR_V" || { echo "Tarball did not contain source directory." ; exit 1 ; }
|
||||
( cd "$TMPDIR/$TAR_V" && cmake . && make -j4 && make test ) || { echo "Tarball build failed in $TMPDIR ." ; exit 1 ; }
|
||||
if test "x$TEST_TARBALL" = "xtrue" ; then
|
||||
D=$(date +%Y%m%d-%H%M%S)
|
||||
TMPDIR=$(mktemp -d ./cala-tar-XXXXXX)
|
||||
test -d "$TMPDIR" || { echo "Could not create tarball-build directory." ; exit 1 ; }
|
||||
tar xzf "$TAR_FILE" -C "$TMPDIR" || { echo "Could not unpack tarball." ; exit 1 ; }
|
||||
test -d "$TMPDIR/$TAR_V" || { echo "Tarball did not contain source directory." ; exit 1 ; }
|
||||
( cd "$TMPDIR/$TAR_V" && cmake . && make -j4 && make test ) || { echo "Tarball build failed in $TMPDIR ." ; exit 1 ; }
|
||||
fi
|
||||
gpg -s -u $KEY_ID --detach --armor $TAR_FILE # Sign the tarball
|
||||
|
||||
### Cleanup
|
||||
|
@ -24,7 +24,7 @@ test -f "$TOPDIR/.clang-format" || { echo "! No .clang-format support files in $
|
||||
AS=$( which astyle )
|
||||
|
||||
# Allow specifying CF_VERSIONS outside already
|
||||
CF_VERSIONS="$CF_VERSIONS clang-format13 clang-format-13 clang-format12 clang-format-12 clang-format"
|
||||
CF_VERSIONS="$CF_VERSIONS clang-format13 clang-format-13 clang-format-13.0.1 clang-format12 clang-format-12 clang-format"
|
||||
for _cf in $CF_VERSIONS
|
||||
do
|
||||
# Not an error if this particular clang-format isn't found
|
||||
@ -42,6 +42,9 @@ test -x "$CF" || { echo "! $CF is not executable."; exit 1 ; }
|
||||
# Version 7 and earlier doesn't understand all the options we would like
|
||||
# Version 12 handles lambdas nicely, so use that.
|
||||
# Version 13 is also ok.
|
||||
# Version 14 behaves differently with short-functions-in-class,
|
||||
# spreading functions out that 13 keeps on one line. To avoid
|
||||
# ping-pong commits, forbid 14.
|
||||
|
||||
format_version=`"$CF" --version | tr -dc '[^.0-9]' | cut -d . -f 1`
|
||||
case "$format_version" in
|
||||
@ -49,7 +52,7 @@ case "$format_version" in
|
||||
:
|
||||
;;
|
||||
* )
|
||||
echo "! Clang-format version '$format_version' unsupported, version 12 required."
|
||||
echo "! Clang-format version '$format_version' unsupported, versions 12 or 13 are ok."
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -69,9 +69,6 @@ drop_language() {
|
||||
mv calamares.desktop.new calamares.desktop
|
||||
}
|
||||
|
||||
drop_language es_ES
|
||||
drop_language pl_PL
|
||||
|
||||
# Also fix the .desktop file, which has some fields removed by Transifex.
|
||||
#
|
||||
{ cat calamares.desktop.in ; grep "\\[[a-zA-Z_@]*]=" calamares.desktop ; } > calamares.desktop.new
|
||||
|
@ -11,6 +11,7 @@
|
||||
# Run it with a -v command-line option to get extra output on
|
||||
# actual translation percentages.
|
||||
import sys
|
||||
import os
|
||||
import argparse
|
||||
|
||||
class TXError(Exception):
|
||||
@ -172,7 +173,6 @@ def get_tx_stats(languages, outputter, verbose):
|
||||
|
||||
If @p verbose is True, prints out language stats as well.
|
||||
"""
|
||||
suppressed_languages = ( "es_ES", ) # In Transifex, but not used
|
||||
# Some languages go into the "incomplete" list by definition,
|
||||
# regardless of their completion status: this can have various reasons.
|
||||
#
|
||||
@ -187,8 +187,6 @@ def get_tx_stats(languages, outputter, verbose):
|
||||
all_langs = []
|
||||
outputter.print("# Total %d languages" % len(languages))
|
||||
for lang_name in languages:
|
||||
if lang_name in suppressed_languages:
|
||||
continue
|
||||
stats = languages[lang_name]["translated"]["percentage"]
|
||||
# Make the by-definition-incomplete languages have a percentage
|
||||
# lower than zero; this way they end up sorted (in -v output)
|
||||
@ -205,6 +203,38 @@ def get_tx_stats(languages, outputter, verbose):
|
||||
output_langs(all_langs, outputter, "ok", lambda s : 0.75 > s >= 0.05)
|
||||
output_langs(all_langs, outputter, "incomplete", lambda s : 0.05 > s)
|
||||
|
||||
# Audit the languages that are in TX, mapped to git
|
||||
for lang_name in languages:
|
||||
if not os.path.exists("lang/calamares_{}.ts".format(lang_name)):
|
||||
print("# !! Missing translation file for {}".format(lang_name))
|
||||
if not os.path.isdir("lang/python/{}/LC_MESSAGES".format(lang_name)):
|
||||
print("# !! Missing Python translation file for {}".format(lang_name))
|
||||
|
||||
# Audit the files that are in git, mapped to TX
|
||||
special_cases = ("python.pot", "python", "CMakeLists.txt", "txload.cpp", "calamares_i18n.qrc.in")
|
||||
for file_name in os.listdir("lang"):
|
||||
if file_name in special_cases:
|
||||
continue
|
||||
elif file_name.startswith("calamares_") and file_name.endswith(".ts"):
|
||||
key = file_name[10:-3]
|
||||
if not key in languages and not key == "en":
|
||||
print("# !! Translation file for {} not in TX".format(key))
|
||||
elif file_name.startswith("tz_") and file_name.endswith(".ts"):
|
||||
key = file_name[3:-3]
|
||||
if not key in languages and not key == "en":
|
||||
print("# !! Translation file for TZ {} not in TX".format(key))
|
||||
elif file_name.startswith("kb_") and file_name.endswith(".ts"):
|
||||
key = file_name[3:-3]
|
||||
if not key in languages and not key == "en":
|
||||
print("# !! Translation file for KB {} not in TX".format(key))
|
||||
else:
|
||||
print("# !! Weird translation file {} not in TX".format(file_name))
|
||||
|
||||
# Audit the python translation files that are in git, mapped to TX
|
||||
for file_name in os.listdir("lang/python"):
|
||||
if file_name not in languages:
|
||||
print("# !! Translation file for Python {} not in TX".format(file_name))
|
||||
|
||||
return 0
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1427
lang/calamares_es.ts
1427
lang/calamares_es.ts
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
4341
lang/calamares_uz.ts
4341
lang/calamares_uz.ts
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user