Port to Qt 6.

ubuntu/plucky
Simon Quigley 2 months ago
parent 6f9cb0434e
commit f415963f24

@ -5,12 +5,12 @@ include(FeatureSummary)
set( CMAKE_CXX_STANDARD 17 )
set( CMAKE_CXX_STANDARD_REQUIRED ON )
set( CALAMARES_VERSION_REQUIRED 3.3.0 )
set( CALAMARES_VERSION_REQUIRED 3.3.9 )
find_package(ECM ${ECM_VERSION} NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_MODULE_PATH})
include(KDEInstallDirs)
find_package(KF5 REQUIRED COMPONENTS CoreAddons)
find_package(KF6 REQUIRED COMPONENTS CoreAddons)
find_package(Calamares ${CALAMARES_VERSION_REQUIRED} NO_CMAKE_PACKAGE_REGISTRY)
if (NOT TARGET Calamares::calamares OR NOT TARGET Calamares::calamaresui)
find_package(Calamares ${CALAMARES_VERSION_REQUIRED} REQUIRED)

@ -1,5 +0,0 @@
module snap-seed-glue
go 1.22.1
require github.com/snapcore/snapd v0.0.0-20240328101726-fdc222fc37a0

@ -1,289 +0,0 @@
package main
// Copyright (C) 2024 Simon Quigley <tsimonq2@ubuntu.com>
//
// This program 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.
//
// This program 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.
import (
"flag"
"fmt"
"io/ioutil"
"log"
"os"
"os/exec"
"path/filepath"
"strings"
"github.com/snapcore/snapd/snap"
"github.com/snapcore/snapd/interfaces/builtin"
"gopkg.in/yaml.v2"
)
type seed struct {
Snaps []struct {
Name string `yaml:"name"`
Channel string `yaml:"channel"`
File string `yaml:"file"`
} `yaml:"snaps"`
}
func main() {
snap.SanitizePlugsSlots = builtin.SanitizePlugsSlots
var seed_directory string
flag.StringVar(&seed_directory, "seed", "/var/lib/snapd/seed", "Specify the seed directory")
flag.Parse()
snap_set := make(map[string]bool)
snaps_dir := filepath.Join(seed_directory, "snaps")
assertions_dir := filepath.Join(seed_directory, "assertions")
seed_yaml := filepath.Join(seed_directory, "seed.yaml")
ensure_seed_yaml(seed_yaml)
existing_snaps_in_yaml := load_existing_snaps(seed_yaml)
for _, snap_info := range flag.Args() {
parts := strings.SplitN(snap_info, "=", 2)
snap_name := parts[0]
channel := "stable" // Default to stable if no channel is specified
if len(parts) == 2 {
channel = parts[1]
}
process_snap_with_prereqs(snap_name, channel, &snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
essentialSnaps := []string{"snapd", "bare"}
for _, snapName := range essentialSnaps {
if !existing_snaps_in_yaml[snapName] {
process_snap_with_prereqs(snapName, "stable", &snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
}
update_seed_yaml(snaps_dir, seed_yaml, snap_set, existing_snaps_in_yaml)
remove_state_json(filepath.Join(seed_directory, "..", "state.json"))
ensure_assertions(assertions_dir)
validate_seed(seed_yaml)
}
func ensure_seed_yaml(seed_yaml string) {
if _, err := os.Stat(seed_yaml); os.IsNotExist(err) {
file, err := os.Create(seed_yaml)
if err != nil {
log.Fatalf("Failed to create seed.yaml: %v", err)
}
defer file.Close()
file.WriteString("snaps:\n")
}
}
func load_existing_snaps(seed_yaml string) map[string]bool {
file, err := ioutil.ReadFile(seed_yaml)
if err != nil {
log.Fatalf("Failed to read seed.yaml: %v", err)
}
var seed_data seed
if err := yaml.Unmarshal(file, &seed_data); err != nil {
log.Fatalf("Failed to parse seed.yaml: %v", err)
}
existing := make(map[string]bool)
for _, snap := range seed_data.Snaps {
existing[snap.Name] = true
}
return existing
}
func update_seed_yaml(snaps_dir, seed_yaml string, snap_set map[string]bool, existing_snaps map[string]bool) {
seed_data := load_seed_data(seed_yaml)
for snap_name := range snap_set {
if !existing_snaps[snap_name] {
snap_files, err := filepath.Glob(filepath.Join(snaps_dir, fmt.Sprintf("%s_*.snap", snap_name)))
if err != nil || len(snap_files) == 0 {
log.Printf("No snap file found for %s", snap_name)
return
}
snap_file := filepath.Base(snap_files[0])
log.Printf(snap_file)
// FIXME: should put the real name of the channel in here
seed_data.Snaps = append(seed_data.Snaps, struct {
Name string `yaml:"name"`
Channel string `yaml:"channel"`
File string `yaml:"file"`
}{snap_name, "latest/stable", snap_file})
}
}
// Marshal to YAML and write back to file
data, err := yaml.Marshal(&seed_data)
if err != nil {
log.Fatalf("Failed to marshal seed data to YAML: %v", err)
}
if err := ioutil.WriteFile(seed_yaml, data, 0644); err != nil {
log.Fatalf("Failed to write updated seed.yaml: %v", err)
}
}
func load_seed_data(seed_yaml string) seed {
file, err := ioutil.ReadFile(seed_yaml)
if err != nil {
log.Fatalf("Failed to read seed.yaml: %v", err)
}
var seed_data seed
if err := yaml.Unmarshal(file, &seed_data); err != nil {
log.Fatalf("Failed to parse seed.yaml: %v", err)
}
return seed_data
}
func remove_state_json(state_json_path string) {
if _, err := os.Stat(state_json_path); err == nil {
os.Remove(state_json_path)
}
}
func validate_seed(seed_yaml string) {
cmd := exec.Command("snap", "debug", "validate-seed", seed_yaml)
if err := cmd.Run(); err != nil {
log.Printf("Error validating seed: %v", err)
}
}
func process_snap_with_prereqs(snap_name, channel string, snap_set *map[string]bool, snaps_dir, assertions_dir, seed_yaml string, existing_snaps_in_yaml map[string]bool) {
if (*snap_set)[snap_name] {
return
}
// Download the snap if not already processed or listed in seed.yaml
if !existing_snaps_in_yaml[snap_name] {
cmd := exec.Command("snap", "download", snap_name, "--channel="+channel, "--target-directory="+snaps_dir)
if err := cmd.Run(); err != nil {
log.Printf("Error downloading snap %s from channel %s: %v", snap_name, channel, err)
return
}
}
snap_files, err := filepath.Glob(filepath.Join(snaps_dir, fmt.Sprintf("%s_*.snap", snap_name)))
if err != nil || len(snap_files) == 0 {
log.Printf("No snap file found for %s in channel %s", snap_name, channel)
return
}
snap_file := snap_files[0]
cmd := exec.Command("unsquashfs", "-n", "-d", filepath.Join(snaps_dir, fmt.Sprintf("%s_meta", snap_name)), snap_file, "meta/snap.yaml")
if err := cmd.Run(); err != nil {
log.Printf("Error extracting meta/snap.yaml from snap %s: %v", snap_name, err)
return
}
yaml_data, err := ioutil.ReadFile(filepath.Join(snaps_dir, fmt.Sprintf("%s_meta/meta/snap.yaml", snap_name)))
if err != nil {
log.Printf("Error reading snap.yaml file for %s: %v", snap_name, err)
return
}
info, err := snap.InfoFromSnapYaml(yaml_data)
if err != nil {
log.Printf("Error parsing snap.yaml data for %s: %v", snap_name, err)
return
}
(*snap_set)[snap_name] = true
tracker := snap.SimplePrereqTracker{}
missing_provider_content_tags := tracker.MissingProviderContentTags(info, nil)
for provider_snap := range missing_provider_content_tags {
if !(*snap_set)[provider_snap] {
process_snap_with_prereqs(provider_snap, "stable", snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
}
if info.Base != "" && !(*snap_set)[info.Base] {
process_snap_with_prereqs(info.Base, "stable", snap_set, snaps_dir, assertions_dir, seed_yaml, existing_snaps_in_yaml)
}
assert_files, err := filepath.Glob(filepath.Join(snaps_dir, "*.assert"))
for _, file := range assert_files {
target_path := filepath.Join(assertions_dir, filepath.Base(file))
err := os.Rename(file, target_path)
if err != nil {
log.Printf("Failed to move %s to %s: %v", file, assertions_dir, err)
}
}
os.RemoveAll(filepath.Join(snaps_dir, fmt.Sprintf("%s_meta", snap_name)))
}
func ensure_assertions(assertions_dir string) {
model := "generic-classic"
brand := "generic"
series := "16"
model_assertion_path := filepath.Join(assertions_dir, "model")
account_key_assertion_path := filepath.Join(assertions_dir, "account-key")
account_assertion_path := filepath.Join(assertions_dir, "account")
// Check and generate model assertion
if _, err := os.Stat(model_assertion_path); os.IsNotExist(err) {
output, err := exec.Command("snap", "known", "--remote", "model", "series="+series, "model="+model, "brand-id="+brand).CombinedOutput()
if err != nil {
log.Fatalf("Failed to fetch model assertion: %v, Output: %s", err, string(output))
}
ioutil.WriteFile(model_assertion_path, output, 0644)
}
// Generate account-key assertion if not exists
if _, err := os.Stat(account_key_assertion_path); os.IsNotExist(err) {
signKeySha3 := grep_pattern(model_assertion_path, "sign-key-sha3-384: ")
output, err := exec.Command("snap", "known", "--remote", "account-key", "public-key-sha3-384="+signKeySha3).CombinedOutput()
if err != nil {
log.Fatalf("Failed to fetch account-key assertion: %v, Output: %s", err, string(output))
}
ioutil.WriteFile(account_key_assertion_path, output, 0644)
}
// Generate account assertion if not exists
if _, err := os.Stat(account_assertion_path); os.IsNotExist(err) {
accountId := grep_pattern(account_key_assertion_path, "account-id: ")
output, err := exec.Command("snap", "known", "--remote", "account", "account-id="+accountId).CombinedOutput()
if err != nil {
log.Fatalf("Failed to fetch account assertion: %v, Output: %s", err, string(output))
}
ioutil.WriteFile(account_assertion_path, output, 0644)
}
}
func grep_pattern(filePath, pattern string) string {
content, err := ioutil.ReadFile(filePath)
if err != nil {
log.Fatalf("Failed to read from file %s: %v", filePath, err)
}
lines := strings.Split(string(content), "\n")
for _, line := range lines {
if strings.Contains(line, pattern) {
parts := strings.SplitN(line, ":", 2)
if len(parts) == 2 {
return strings.TrimSpace(parts[1])
}
}
}
log.Fatalf("Pattern %s not found in file %s", pattern, filePath)
return ""
}

1
debian/changelog vendored

@ -1,6 +1,7 @@
calamares-settings-ubuntu (1:25.04.1) UNRELEASED; urgency=medium
* Welcome to Plucky Puffin!
* Port to Qt 6.
-- Simon Quigley <tsimonq2@ubuntu.com> Tue, 15 Oct 2024 21:05:10 -0500

30
debian/control vendored

@ -3,22 +3,20 @@ Section: devel
Priority: optional
Maintainer: Lubuntu Developers <lubuntu-devel@lists.ubuntu.com>
Uploaders: Simon Quigley <tsimonq2@ubuntu.com>
Build-Depends: calamares (>= 3.3.5),
Build-Depends: calamares (>= 3.3.9),
cmake,
debhelper-compat (= 13),
extra-cmake-modules,
golang-github-snapcore-snapd-dev (>= 2.62),
golang-go,
golang-gopkg-yaml.v2-dev,
intltool,
libkf5coreaddons-dev,
libqt5svg5-dev,
libkf6coreaddons-dev,
libqt6svg6-dev,
libyaml-cpp-dev,
qtbase5-dev,
qtdeclarative5-dev,
qttools5-dev,
qttools5-dev-tools
Standards-Version: 4.6.2
qt6-base-dev,
qt6-declarative-dev,
qt6-l10n-tools,
qt6-tools-dev,
qt6-tools-dev-tools
Standards-Version: 4.7.0
Homepage: https://code.launchpad.net/~ubuntu-qt-code/+git/calamares-settings-ubuntu
Vcs-Browser: https://git.lubuntu.me/Lubuntu/calamares-settings-ubuntu/
Vcs-Git: https://git.lubuntu.me/Lubuntu/calamares-settings-ubuntu.git
@ -52,8 +50,8 @@ Description: Lubuntu Calamares Settings and Branding
Package: calamares-settings-ubuntu-unity
Architecture: all
Depends: calamares-settings-ubuntu-common (>= ${binary:Version}),
qt5-style-kvantum,
qt5-style-kvantum-themes,
qt6-style-kvantum,
qt6-style-kvantum-themes,
${misc:Depends}
Conflicts: calamares-settings-ubuntu-flavor
Provides: calamares-settings-ubuntu-flavor
@ -65,14 +63,14 @@ Description: Ubuntu Unity Calamares Settings and Branding
Package: calamares-settings-ubuntu-common
Architecture: any
Depends: calamares (>= 3.2.14~),
Depends: calamares (>= 3.3.9),
cryptsetup,
kdialog,
keyutils,
python3,
python3-distro,
qml-module-qtquick-window2,
qml-module-qtquick2,
qml6-module-qtquick,
qml6-module-qtquick-window,
squashfs-tools,
sudo,
${misc:Depends},

2
debian/rules vendored

@ -19,7 +19,6 @@ override_dh_auto_configure:
override_dh_auto_build:
make;
(cd $(PKGSELECT)/build && $(MAKE))
(cd common/snap-seed-glue && go build -gcflags="all=-N -l" -ldflags="-compressdwarf=false" -o snap-seed-glue main.go)
override_dh_auto_clean:
dh_auto_clean
@ -40,7 +39,6 @@ override_dh_missing:
chmod 644 $(MODULES_DIR)/pkgselect/libcalamares_viewmodule_pkgselect.so
chmod 644 $(MODULES_DIR)/pkgselect/module.desc
mkdir -pv debian/calamares-settings-ubuntu-common/usr/bin/
cp -v common/snap-seed-glue/snap-seed-glue debian/calamares-settings-ubuntu-common/usr/bin/snap-seed-glue
mkdir -pv debian/calamares-settings-ubuntu-common/usr/libexec/
cp -v common/fixconkeys-part1 debian/calamares-settings-ubuntu-common/usr/libexec/fixconkeys-part1
cp -v common/fixconkeys-part2 debian/calamares-settings-ubuntu-common/usr/libexec/fixconkeys-part2

@ -6,10 +6,10 @@ windowExpanding: fullscreen
strings:
productName: Kubuntu
shortProductName: Kubuntu
version: 24.10
shortVersion: oracular
version: 25.04
shortVersion: plucky
versionedName: Kubuntu
shortVersionedName: Kubuntu 24.10
shortVersionedName: Kubuntu 25.04
bootloaderEntryName: Kubuntu
productUrl: https://kubuntu.org/
supportUrl: https://kubuntu.org/contact/

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
Version=1.0
_Name=Install Kubuntu 24.10
_Name=Install Kubuntu 25.04
_GenericName=Install Kubuntu
Exec=sudo -E /usr/bin/calamares-launch-normal
_Comment=Calamares — System Installer

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=Install Kubuntu 24.10 (OEM mode)
Name=Install Kubuntu 25.04 (OEM mode)
Exec=sudo -E /usr/bin/calamares-launch-oem
Icon=system-software-install
Terminal=false

@ -16,8 +16,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "تثبيت كوبونتو 24.10"
msgid "Install Kubuntu 25.04"
msgstr "تثبيت كوبونتو 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Instal·lar Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Instal·lar Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Installer Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Installer Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Kubuntu 24.10 installieren"
msgid "Install Kubuntu 25.04"
msgstr "Kubuntu 25.04 installieren"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Instalar Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Instalar Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Installer Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Installer Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -20,8 +20,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Installa Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Installa Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Installer Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Installer Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -16,8 +16,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Zainstaluj Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Zainstaluj Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Instalar o Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Instalar o Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgstr "Instalar Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr "Instalar Kubuntu 25.04"
#: ../kubuntu-calamares.desktop.in.h:2
msgid "Install Kubuntu"

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../kubuntu-calamares.desktop.in.h:1
msgid "Install Kubuntu 24.10"
msgid "Install Kubuntu 25.04"
msgstr ""
#: ../kubuntu-calamares.desktop.in.h:2

@ -6,10 +6,10 @@ windowExpanding: fullscreen
strings:
productName: Lubuntu
shortProductName: Lubuntu
version: 24.10
shortVersion: oracular
version: 25.04
shortVersion: plucky
versionedName: Lubuntu
shortVersionedName: Lubuntu 24.10
shortVersionedName: Lubuntu 25.04
bootloaderEntryName: Ubuntu
productUrl: https://lubuntu.me/
supportUrl: https://lubuntu.me/links/

@ -4,7 +4,7 @@ LANGUAGES := ar ca de es eu gl be da el et fr ko pl pt pt_BR
all:
for i in $(LANGUAGES); do \
/usr/lib/qt5/bin/lrelease "calamares-lubuntu_$$i.ts"; \
/usr/lib/qt6/bin/lrelease "calamares-lubuntu_$$i.ts"; \
rm calamares-lubuntu_$$i.ts; \
done

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
Version=1.0
_Name=Install Lubuntu 24.10
_Name=Install Lubuntu 25.04
_GenericName=Install Lubuntu
Exec=sudo -E /usr/bin/calamares-launch-normal
_Comment=Calamares — System Installer

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=Install Lubuntu 24.10 (OEM mode)
Name=Install Lubuntu 25.04 (OEM mode)
Exec=sudo -E /usr/bin/calamares-launch-oem
Icon=system-software-install
Terminal=false

@ -16,8 +16,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "تنصيب لوبينتو 24.10"
msgid "Install Lubuntu 25.04"
msgstr "تنصيب لوبينتو 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Instal·lar Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Instal·lar Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Installer Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Installer Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Lubuntu 24.10 installieren"
msgid "Install Lubuntu 25.04"
msgstr "Lubuntu 25.04 installieren"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Instalar Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Instalar Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Installer Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Installer Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -20,8 +20,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Installa Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Installa Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Installer Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Installer Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -16,8 +16,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Zainstaluj Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Zainstaluj Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Instalar o Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Instalar o Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgstr "Instalar Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr "Instalar Lubuntu 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Lubuntu"

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Lubuntu 24.10"
msgid "Install Lubuntu 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -6,10 +6,10 @@ windowExpanding: fullscreen
strings:
productName: Ubuntu Unity
shortProductName: Ubuntu Unity
version: 24.10
shortVersion: oracular
version: 25.04
shortVersion: plucky
versionedName: Ubuntu Unity
shortVersionedName: Ubuntu Unity 24.10
shortVersionedName: Ubuntu Unity 25.04
bootloaderEntryName: Ubuntu
productUrl: https://ubuntuunity.org/

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=Install Ubuntu Unity 24.10 (OEM mode)
Name=Install Ubuntu Unity 25.04 (OEM mode)
Exec=sudo -E /usr/bin/calamares-launch-oem
Icon=ubuntu-unity-installer
Terminal=false

@ -16,7 +16,7 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Instal·lar Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Instal·lar Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../ubuntu-unity-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../ubuntu-unity-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Installer Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Installer Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Ubuntu Unity 24.10 installieren"
msgid "Install Ubuntu Unity 25.04"
msgstr "Ubuntu Unity 25.04 installieren"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Instalar Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Instalar Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Installer Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Installer Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -20,8 +20,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Installa Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Installa Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -13,7 +13,7 @@ msgstr ""
"X-Generator: Translate Toolkit 2.3.0\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Installer Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Installer Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -16,8 +16,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Zainstaluj Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Zainstaluj Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Instalar o Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Instalar o Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -15,8 +15,8 @@ msgstr ""
"X-Generator: Weblate 3.1-dev\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgstr "Instalar Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr "Instalar Ubuntu Unity 25.04"
#: ../lubuntu-calamares.desktop.in.h:2
msgid "Install Ubuntu Unity"

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../lubuntu-calamares.desktop.in.h:1
msgid "Install Ubuntu Unity 24.10"
msgid "Install Ubuntu Unity 25.04"
msgstr ""
#: ../lubuntu-calamares.desktop.in.h:2

@ -1,7 +1,7 @@
[Desktop Entry]
Type=Application
Version=1.0
_Name=Install Ubuntu Unity 24.10
_Name=Install Ubuntu Unity 25.04
_GenericName=Install Ubuntu Unity
Exec=sudo -E /usr/bin/calamares-launch-normal
_Comment=Calamares — System Installer

Loading…
Cancel
Save