From 9db6c513c964bf95fa1f4ee304c56a79f33289e0 Mon Sep 17 00:00:00 2001 From: ericbsd Date: Wed, 9 Jul 2025 21:27:46 -0300 Subject: [PATCH 1/4] Add initial install_station Python package structure - Add install_station package with __init__.py and core modules - Include boot_manager.py for boot loader configuration (BootManager class with singleton pattern) - Add common.py with password strength validation utilities and ZFS dataset definitions - Add custom.py with Partitions class for disk partitioning management (1010 lines) - Establish foundation for GTK+ based GhostBSD installer application Modules added: - boot_manager: UEFI/BIOS boot manager selection with rEFInd and FreeBSD options - common: Password validation functions and deprecated decorator utility - custom: Comprehensive partition management with GTK+ interface --- .gitignore | 3 +- LICENSE | 2 +- README.md | 15 +- install-station | 273 +---- install_station/__init__.py | 0 install_station/boot_manager.py | 218 ++++ install_station/common.py | 168 +++ install_station/create_cfg.py | 167 +++ install_station/custom.py | 887 +++++++++++++++ install_station/data.py | 77 ++ install_station/end.py | 61 ++ install_station/error.py | 55 + install_station/install.py | 140 +++ install_station/install_type.py | 80 ++ install_station/interface_controller.py | 242 +++++ install_station/language.py | 143 +++ install_station/network_setup.py | 339 ++++++ install_station/partition.py | 1309 +++++++++++++++++++++++ install_station/system_calls.py | 160 +++ install_station/use_zfs.py | 624 +++++++++++ install_station/welcome_live.py | 293 +++++ install_station/window.py | 49 + po/POTFILES.in | 17 + po/ar_SA.po | 364 +++++++ po/bg_BG.po | 365 +++++++ po/ca_ES.po | 365 +++++++ po/cs_CZ.po | 365 +++++++ po/da_DK.po | 365 +++++++ po/de_DE.po | 365 +++++++ po/el_GR.po | 365 +++++++ po/en_GB.po | 401 +++++++ po/en_US.po | 401 +++++++ po/es_ES.po | 365 +++++++ po/et_EE.po | 365 +++++++ po/fi_FI.po | 365 +++++++ po/fr_CA.po | 384 +++++++ po/fr_FR.po | 384 +++++++ po/hr_HR.po | 366 +++++++ po/hu_HU.po | 365 +++++++ po/it_IT.po | 365 +++++++ po/ja_JP.po | 365 +++++++ po/ko_KR.po | 365 +++++++ po/lt_LT.po | 366 +++++++ po/lv_LV.po | 366 +++++++ po/nl_NL.po | 365 +++++++ po/no_NO.po | 365 +++++++ po/pl_PL.po | 366 +++++++ po/pt_BR.po | 366 +++++++ po/pt_PT.po | 365 +++++++ po/ro_RO.po | 366 +++++++ po/ru_RU.po | 366 +++++++ po/sk_SK.po | 365 +++++++ po/sl_SI.po | 366 +++++++ po/sv_SE.po | 365 +++++++ po/th_TH.po | 364 +++++++ po/tr_TR.po | 365 +++++++ po/vi_VN.po | 365 +++++++ po/zh_CN.po | 364 +++++++ po/zh_TW.po | 364 +++++++ setup.py | 157 ++- src/backend-query/detect-laptop.sh | 8 + src/backend-query/detect-nics.sh | 16 + src/backend-query/detect-sheme.sh | 52 + src/backend-query/detect-vmware.sh | 12 + src/backend-query/detect-wifi.sh | 8 + src/backend-query/disk-info.sh | 72 ++ src/backend-query/disk-label.sh | 45 + src/backend-query/disk-list.sh | 35 + src/backend-query/disk-part.sh | 49 + src/backend-query/enable-net.sh | 39 + src/backend-query/list-components.sh | 28 + src/backend-query/list-rsync-backups.sh | 44 + src/backend-query/list-tzones.sh | 18 + src/backend-query/query-langs.sh | 7 + src/backend-query/send-logs.sh | 57 + src/backend-query/setup-ssh-keys.sh | 38 + src/backend-query/sys-mem.sh | 6 + src/backend-query/test-live.sh | 14 + src/backend-query/test-netup.sh | 23 + src/backend-query/update-part-list.sh | 84 ++ src/backend-query/xkeyboard-layouts.sh | 31 + src/backend-query/xkeyboard-models.sh | 33 + src/backend-query/xkeyboard-variants.sh | 31 + src/disk.png | Bin 0 -> 29994 bytes src/gbi.desktop | 12 + src/ghostbsd-style.css | 20 + src/image/G_logo.gif | Bin 0 -> 1362739 bytes src/image/disk.png | Bin 0 -> 29994 bytes src/image/install-gbsd.png | Bin 0 -> 37178 bytes src/image/install-gbsd.svg | 102 ++ src/image/install.png | Bin 0 -> 13771 bytes src/image/installation.jpg | Bin 0 -> 513644 bytes src/image/laptop.png | Bin 0 -> 29182 bytes src/image/logo.png | Bin 0 -> 9958 bytes src/laptop.png | Bin 0 -> 29182 bytes 95 files changed, 19347 insertions(+), 270 deletions(-) create mode 100644 install_station/__init__.py create mode 100644 install_station/boot_manager.py create mode 100644 install_station/common.py create mode 100644 install_station/create_cfg.py create mode 100644 install_station/custom.py create mode 100644 install_station/data.py create mode 100644 install_station/end.py create mode 100644 install_station/error.py create mode 100644 install_station/install.py create mode 100644 install_station/install_type.py create mode 100644 install_station/interface_controller.py create mode 100644 install_station/language.py create mode 100644 install_station/network_setup.py create mode 100644 install_station/partition.py create mode 100644 install_station/system_calls.py create mode 100644 install_station/use_zfs.py create mode 100644 install_station/welcome_live.py create mode 100644 install_station/window.py create mode 100644 po/POTFILES.in create mode 100644 po/ar_SA.po create mode 100644 po/bg_BG.po create mode 100644 po/ca_ES.po create mode 100644 po/cs_CZ.po create mode 100644 po/da_DK.po create mode 100644 po/de_DE.po create mode 100644 po/el_GR.po create mode 100644 po/en_GB.po create mode 100644 po/en_US.po create mode 100644 po/es_ES.po create mode 100644 po/et_EE.po create mode 100644 po/fi_FI.po create mode 100644 po/fr_CA.po create mode 100644 po/fr_FR.po create mode 100644 po/hr_HR.po create mode 100644 po/hu_HU.po create mode 100644 po/it_IT.po create mode 100644 po/ja_JP.po create mode 100644 po/ko_KR.po create mode 100644 po/lt_LT.po create mode 100644 po/lv_LV.po create mode 100644 po/nl_NL.po create mode 100644 po/no_NO.po create mode 100644 po/pl_PL.po create mode 100644 po/pt_BR.po create mode 100644 po/pt_PT.po create mode 100644 po/ro_RO.po create mode 100644 po/ru_RU.po create mode 100644 po/sk_SK.po create mode 100644 po/sl_SI.po create mode 100644 po/sv_SE.po create mode 100644 po/th_TH.po create mode 100644 po/tr_TR.po create mode 100644 po/vi_VN.po create mode 100644 po/zh_CN.po create mode 100644 po/zh_TW.po create mode 100755 src/backend-query/detect-laptop.sh create mode 100755 src/backend-query/detect-nics.sh create mode 100644 src/backend-query/detect-sheme.sh create mode 100755 src/backend-query/detect-vmware.sh create mode 100644 src/backend-query/detect-wifi.sh create mode 100755 src/backend-query/disk-info.sh create mode 100644 src/backend-query/disk-label.sh create mode 100755 src/backend-query/disk-list.sh create mode 100755 src/backend-query/disk-part.sh create mode 100755 src/backend-query/enable-net.sh create mode 100755 src/backend-query/list-components.sh create mode 100755 src/backend-query/list-rsync-backups.sh create mode 100755 src/backend-query/list-tzones.sh create mode 100755 src/backend-query/query-langs.sh create mode 100755 src/backend-query/send-logs.sh create mode 100755 src/backend-query/setup-ssh-keys.sh create mode 100755 src/backend-query/sys-mem.sh create mode 100755 src/backend-query/test-live.sh create mode 100755 src/backend-query/test-netup.sh create mode 100755 src/backend-query/update-part-list.sh create mode 100755 src/backend-query/xkeyboard-layouts.sh create mode 100755 src/backend-query/xkeyboard-models.sh create mode 100755 src/backend-query/xkeyboard-variants.sh create mode 100644 src/disk.png create mode 100755 src/gbi.desktop create mode 100644 src/ghostbsd-style.css create mode 100644 src/image/G_logo.gif create mode 100644 src/image/disk.png create mode 100644 src/image/install-gbsd.png create mode 100644 src/image/install-gbsd.svg create mode 100644 src/image/install.png create mode 100644 src/image/installation.jpg create mode 100644 src/image/laptop.png create mode 100644 src/image/logo.png create mode 100644 src/laptop.png diff --git a/.gitignore b/.gitignore index 735f9fb..9020a70 100644 --- a/.gitignore +++ b/.gitignore @@ -105,4 +105,5 @@ venv.bak/ # Editor directories and files .vscode/ -.idea/.idea +.idea +CLAUDE.md diff --git a/LICENSE b/LICENSE index dd5715a..2b83667 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2020, GhostBSD +Copyright (c) 2020-2025, GhostBSD All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff --git a/README.md b/README.md index d0147a5..a2539e8 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,16 @@ Install Station === -It is a strip down version of gbi and it is the new installer for GhostBSD. It depend on gbi. +It is a strip down version of install-station and it is the new installer for GhostBSD. -Install Station only edit disk, partition and will install GhostBSD. Users and system setup will be done with at the first boot after installation with Setup Station \ No newline at end of file +Install Station only edit disk, partition and will install GhostBSD. Users and system setup will be done with at the first boot after installation with Setup Station. + +## Managing Translations +To create a translation file. +```shell +./setup.py create_translation --locale=fr +``` + +To update translation files +```shell +./setup.py update_translations +``` \ No newline at end of file diff --git a/install-station b/install-station index daba86e..87d11b0 100755 --- a/install-station +++ b/install-station @@ -1,242 +1,49 @@ #!/usr/local/bin/python - -import sys -import os -import shutil +""" +Install Station executable module. +""" import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk -installer = "/usr/local/lib/gbi/" -sys.path.append(installer) -from welcome_live import Welcome -from installType import Types -from use_ufs import use_ufs -from partition import Partitions -from use_zfs import ZFS -from boot_manager import bootManager -from partition_handler import create_disk_partition_db -from install import installProgress, installWindow -from network_setup import network_setup - -logo = "/usr/local/lib/gbi/image/logo.png" -tmp = "/tmp/.gbi/" -if not os.path.exists(tmp): - os.makedirs(tmp) -disk = '%sdisk' % tmp -dslice = '%sslice' % tmp -disk_schem = '%sscheme' % tmp -zfs_config = '%szfs_config' % tmp -ufs_config = '%sufs_config' % tmp -partitiondb = "%spartitiondb/" % tmp - - -class MainWindow(): - """Main window class.""" - - def delete(self, widget, event=None): - """Close the main window.""" - if os.path.exists('/tmp/.gbi'): - shutil.rmtree('/tmp/.gbi') - Gtk.main_quit() - return False - - def next_page(self, widget): - if self.welcome.get_what() == "install": - self.next_install_page() - else: - self.next_setup_page() - - def next_install_page(self): - """Go to the next window.""" - page = self.notebook.get_current_page() - if page == 0: - typebox = Gtk.VBox(homogeneous=False, spacing=0) - typebox.show() - self.types = Types() - get_types = self.types.get_model() - typebox.pack_start(get_types, True, True, 0) - label = Gtk.Label(label="Types") - self.notebook.insert_page(typebox, label, 1) - self.notebook.next_page() - self.notebook.show_all() - self.cancel_button.show() - self.next_button.show() - elif page == 1: - create_disk_partition_db() - self.back_button.show() - if self.types.get_type() == "ufs": - udbox = Gtk.VBox(homogeneous=False, spacing=0) - udbox.show() - self.partition = use_ufs(self.next_button) - get_ud = self.partition.get_model() - udbox.pack_start(get_ud, True, True, 0) - label = Gtk.Label(label="UFS Disk Configuration") - self.notebook.insert_page(udbox, label, 2) - self.notebook.next_page() - self.notebook.show_all() - self.next_button.set_sensitive(False) - elif self.types.get_type() == "custom": - Pbox = Gtk.VBox(homogeneous=False, spacing=0) - Pbox.show() - self.partition = Partitions(self.next_button) - get_part = self.partition.get_model() - Pbox.pack_start(get_part, True, True, 0) - label = Gtk.Label(label="UFS Custom Configuration") - self.notebook.insert_page(Pbox, label, 2) - self.notebook.next_page() - self.notebook.show_all() - self.next_button.set_sensitive(False) - elif self.types.get_type() == "zfs": - Zbox = Gtk.VBox(homogeneous=False, spacing=0) - Zbox.show() - self.partition = ZFS(self.next_button) - get_ZFS = self.partition.get_model() - Zbox.pack_start(get_ZFS, True, True, 0) - label = Gtk.Label(label="ZFS Configuration") - self.notebook.insert_page(Zbox, label, 2) - self.notebook.next_page() - self.notebook.show_all() - self.next_button.set_sensitive(False) - elif page == 2: - self.partition.save_selection() - Mbox = Gtk.VBox(homogeneous=False, spacing=0) - Mbox.show() - self.bootmanager = bootManager() - get_root = self.bootmanager.get_model() - Mbox.pack_start(get_root, True, True, 0) - label = Gtk.Label(label="Boot Option") - self.notebook.insert_page(Mbox, label, 3) - self.next_button.set_label("Install") - self.notebook.next_page() - self.notebook.show_all() - self.next_button.set_sensitive(True) - elif page == 3: - Ibox = Gtk.VBox(homogeneous=False, spacing=0) - Ibox.show() - install = installWindow() - get_install = install.get_model() - Ibox.pack_start(get_install, True, True, 0) - label = Gtk.Label(label="Installation") - self.notebook.insert_page(Ibox, label, 8) - self.notebook.next_page() - instpro = installProgress(self.window) - progressBar = instpro.getProgressBar() - box1 = Gtk.VBox(homogeneous=False, spacing=0) - box1.show() - label = Gtk.Label(label="Progress Bar") - box1.pack_end(progressBar, False, False, 0) - self.nbButton.insert_page(box1, label, 4) - self.nbButton.next_page() - self.window.show_all() - - def next_setup_page(self): - page = self.notebook.get_current_page() - if page == 0: - self.next_button.show() - self.next_button.set_sensitive(False) - self.window.set_title("Setup GhostBSD") - net_setup_box = Gtk.VBox(homogeneous=False, spacing=0) - net_setup_box.show() - self.net_setup = network_setup(self.next_button) - model = self.net_setup.get_model() - net_setup_box.pack_start(model, True, True, 0) - label = Gtk.Label(label="Network Setup") - self.notebook.insert_page(net_setup_box, label, 1) - self.notebook.next_page() - self.notebook.show_all() - if page == 1: - xinitrc = open('/usr/home/ghostbsd/.xinitrc', 'w') - xinitrc.writelines('gsettings set org.mate.SettingsDaemon.plugins.housekeeping active true &\n') - xinitrc.writelines('gsettings set org.mate.screensaver lock-enabled false &\n') - xinitrc.writelines('exec ck-launch-session mate-session\n') - xinitrc.close() - Gtk.main_quit() - - def back_page(self, widget): - """Go back to the previous window.""" - current_page = self.notebook.get_current_page() - if current_page == 2: - self.back_button.hide() - elif current_page == 3: - self.next_button.set_label("Next") - self.notebook.prev_page() - new_page = self.notebook.get_current_page() - if current_page == 2 and new_page == 1: - if os.path.exists(partitiondb): - shutil.rmtree(partitiondb) - if os.path.exists(tmp + 'create'): - os.remove(tmp + 'create') - if os.path.exists(tmp + 'delete'): - os.remove(tmp + 'delete') - if os.path.exists(tmp + 'destroy'): - os.remove(tmp + 'destroy') - if os.path.exists(tmp + 'partlabel'): - os.remove(tmp + 'partlabel') - if os.path.exists(zfs_config): - os.remove(zfs_config) - if os.path.exists(ufs_config): - os.remove(ufs_config) - if os.path.exists(disk): - os.remove(disk) - if os.path.exists(dslice): - os.remove(dslice) - if os.path.exists(disk_schem): - os.remove(disk_schem) - self.next_button.set_sensitive(True) +from install_station.welcome_live import Welcome +from install_station.install_type import InstallTypes +from install_station.custom import PartitionManager +from install_station.use_zfs import ZFS +from install_station.boot_manager import BootManager +from install_station.network_setup import NetworkSetup +from install_station.data import logo +from install_station.window import Window +from install_station.interface_controller import Interface, Button + + +class MainWindow: + """ + Install Station main window class. + """ def __init__(self): - """Were the Main window start.""" - self.window = Gtk.Window() - self.window.connect("delete_event", self.delete) - self.window.set_border_width(0) - self.window.set_default_size(800, 500) - self.window.set_size_request(800, 500) - self.window.set_title("Install GhostBSD") - self.window.set_border_width(0) - self.window.set_icon_from_file(logo) - mainHBox = Gtk.HBox(homogeneous=False, spacing=0) - mainHBox.show() - mainVbox = Gtk.VBox(homogeneous=False, spacing=0) - mainVbox.show() - self.window.add(mainHBox) - mainHBox.pack_start(mainVbox, True, True, 0) - self.notebook = Gtk.Notebook() - mainVbox.pack_start(self.notebook, True, True, 0) - self.notebook.show() - self.notebook.set_show_tabs(False) - self.notebook.set_show_border(False) - welcome_box = Gtk.VBox(homogeneous=False, spacing=0) - welcome_box.show() - self.welcome = Welcome(self.next_install_page, self.next_setup_page) - get_types = self.welcome.get_model() - welcome_box.pack_start(get_types, True, True, 0) - label = Gtk.Label(label="Welcome") - self.notebook.insert_page(welcome_box, label, 0) - # Set what page to start at type of installation - self.notebook.set_current_page(0) - self.table = Gtk.Table(n_rows=1, n_columns=6, homogeneous=True) - self.back_button = Gtk.Button(label='Back') - self.back_button.connect("clicked", self.back_page) - self.table.attach(self.back_button, 3, 4, 0, 1) - self.cancel_button = Gtk.Button(label='Cancel') - self.cancel_button.connect("clicked", self.delete) - self.table.attach(self.cancel_button, 4, 5, 0, 1) - self.next_button = Gtk.Button(label='Next') - self.next_button.connect("clicked", self.next_page) - self.table.attach(self.next_button, 5, 6, 0, 1) - self.table.set_col_spacings(5) - self.table.show() - self.nbButton = Gtk.Notebook() - mainVbox.pack_end(self.nbButton, False, False, 5) - self.nbButton.show() - self.nbButton.set_show_tabs(False) - self.nbButton.set_show_border(False) - label = Gtk.Label(label="Button") - self.nbButton.insert_page(self.table, label, 0) - self.window.show_all() - self.back_button.hide() - self.cancel_button.hide() - self.next_button.hide() + """ + Install Station main window class initiation. + """ + Interface.welcome = Welcome + Interface.installation_type = InstallTypes + Interface.custom_partition = PartitionManager + Interface.full_zfs = ZFS + Interface.boot_manager = BootManager + Interface.net_setup = NetworkSetup + Window.connect("delete_event", Interface.delete) + Window.set_border_width(0) + Window.set_default_size(800, 500) + Window.set_size_request(800, 500) + Window.set_title("Install GhostBSD") + Window.set_border_width(0) + Window.set_icon_from_file(logo) + main_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=0) + main_box.show() + Window.add(main_box) + main_box.pack_start(Interface.get_interface(), True, True, 0) + Window.show_all() + Button.hide_all() # Initially hide all buttons MainWindow() diff --git a/install_station/__init__.py b/install_station/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/install_station/boot_manager.py b/install_station/boot_manager.py new file mode 100644 index 0000000..01c50a5 --- /dev/null +++ b/install_station/boot_manager.py @@ -0,0 +1,218 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk, Gdk +from install_station.partition import bios_or_uefi +from install_station.data import InstallationData +import gettext + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class BootManager: + """ + Utility class for managing boot manager selection in GhostBSD installation following the utility class pattern. + + This class provides a GTK+ interface for selecting and configuring boot managers + including rEFInd, FreeBSD boot manager, and native UEFI/BIOS loaders. The class + automatically determines available options based on the partition scheme (GPT/MBR) + and firmware type (UEFI/BIOS). + + Available boot manager options: + - rEFInd: Available only for GPT + UEFI configurations + - FreeBSD boot manager: Available only for MBR partition schemes + - Native loader: Default option, always available (UEFI or BIOS loader) + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the InstallationData system for configuration persistence. + """ + # Class variables for state management + boot = None + vbox1 = None + + # UI elements as class variables + refind = None + bsd = None + none = None + box3 = None + + @classmethod + def get_model(cls): + """ + Return the GTK widget model for the boot manager interface. + + Creates and initializes the UI if it doesn't exist yet. + + Returns: + Gtk.Box: The main container widget for the boot manager interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 + + @classmethod + def boot_manager_selection(cls, _radiobutton, val: str): + """ + Handle boot manager selection from radio buttons. + + Called when a radio button is toggled to update the selected boot manager + option and store it in both the class variable and InstallationData. + + Args: + _radiobutton: The radio button widget that was toggled (unused) + val: The boot manager value ('refind', 'bsd', or 'none') + """ + cls.boot = val + InstallationData.boot = cls.boot + + @classmethod + def get_boot_manager_option(cls): + """ + Get the currently selected boot manager option. + + Returns the boot manager value from InstallationData if available, + otherwise falls back to the class variable. + + Returns: + str: The selected boot manager ('refind', 'bsd', or 'none') + """ + return InstallationData.boot or cls.boot + + @classmethod + def initialize(cls): + """ + Initialize the boot manager user interface following the utility class pattern. + + Creates the GTK+ interface for boot manager selection including: + - Title header ("Boot Option") + - Radio button group for boot manager options + - Automatic option availability based on partition scheme and firmware type + - Default selection of native loader option + + The interface adapts based on: + - Firmware type (UEFI/BIOS) detected from system + - Partition scheme (GPT/MBR) from installation configuration + - rEFInd: Only available for GPT + UEFI + - FreeBSD boot manager: Only available for MBR + - Native loader: Always available as default + + This method is called automatically by get_model() when the interface is first accessed. + """ + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + + # Determine firmware type + if bios_or_uefi() == "UEFI": + loader = "UEFI" + else: + loader = "BIOS" + + # Get partition scheme from InstallationData + scheme = cls._get_partition_scheme() + + # Create title header + title = Gtk.Label(label=_('Boot Option'), name="Header") + title.set_property("height-request", 50) + cls.vbox1.pack_start(title, False, False, 0) + + # Create main horizontal container + hbox1 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=0) + hbox1.show() + cls.vbox1.pack_start(hbox1, True, True, 10) + + # Create vertical box for radio buttons + bbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + bbox1.show() + + # rEFInd boot manager option + cls.refind = Gtk.RadioButton(label=_("Setup rEFInd boot manager")) + bbox1.pack_start(cls.refind, False, True, 10) + cls.refind.connect("toggled", cls.boot_manager_selection, "refind") + cls.refind.show() + + # Enable rEFInd only for GPT + UEFI + if scheme == 'GPT' and loader == "UEFI": + cls.refind.set_sensitive(True) + else: + cls.refind.set_sensitive(False) + + # FreeBSD boot manager option + cls.bsd = Gtk.RadioButton.new_with_label_from_widget( + cls.refind, + _("Setup FreeBSD boot manager") + ) + bbox1.pack_start(cls.bsd, False, True, 10) + cls.bsd.connect("toggled", cls.boot_manager_selection, "bsd") + cls.bsd.show() + + # Enable FreeBSD boot manager only for MBR + if scheme == 'MBR': + cls.bsd.set_sensitive(True) + else: + cls.bsd.set_sensitive(False) + + # Native loader option (always available) + cls.none = Gtk.RadioButton.new_with_label_from_widget( + cls.bsd, + _("FreeBSD {loader} loader only").format(loader=loader) + ) + bbox1.pack_start(cls.none, False, True, 10) + cls.none.connect("toggled", cls.boot_manager_selection, "none") + cls.none.show() + + # Add radio button container to main layout + hbox1.pack_start(bbox1, False, False, 50) + + # Set default selection + cls.none.set_active(True) + cls.boot = "none" + InstallationData.boot = cls.boot + + # Create additional container for future expansion + cls.box3 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.box3.set_border_width(0) + cls.vbox1.pack_start(cls.box3, True, True, 0) + + @classmethod + def _get_partition_scheme(cls): + """ + Determine the partition scheme from installation configuration data. + + Checks ZFS and UFS configuration data, then falls back to InstallationData.scheme + or defaults to GPT if no scheme is found. + + Returns: + str: The partition scheme ('GPT' or 'MBR') + """ + # Check ZFS config data for scheme + if InstallationData.zfs_config_data: + scheme_line = next((line for line in InstallationData.zfs_config_data if 'partscheme=' in line), '') + if scheme_line: + return scheme_line.split('=')[1].strip() + + # Check UFS config data for scheme + if InstallationData.ufs_config_data: + scheme_line = next((line for line in InstallationData.ufs_config_data if 'partscheme=' in line), '') + if scheme_line: + return scheme_line.split('=')[1].strip() + + # Use scheme from InstallationData or default to GPT + if InstallationData.scheme: + # Handle both 'partscheme=GPT' and 'GPT' formats + if 'partscheme=' in InstallationData.scheme: + return InstallationData.scheme.split('=')[1].strip() + else: + return InstallationData.scheme.strip() + + return 'GPT' # Default fallback diff --git a/install_station/common.py b/install_station/common.py new file mode 100644 index 0000000..ff1b70a --- /dev/null +++ b/install_station/common.py @@ -0,0 +1,168 @@ +import re +import warnings + + +def lower_case(text: str) -> bool: + """ + Find if password contain only lower case. + :param text: password + + :return: True if password contain only lower case + """ + search = re.compile(r'[^a-z]').search + return not bool(search(text)) + + +# Find if password contain only upper case +def upper_case(text: str) -> bool: + """ + Find if password contain only upper case. + :param text: password + + :return: True if password contain only upper case + """ + search = re.compile(r'[^A-Z]').search + return not bool(search(text)) + + +# Find if password contain only lower case and number +def lower_and_number(text: str) -> bool: + """ + Find if password contain only lower case and number. + :param text: password + + :return: True if password contain only lower case and number + """ + search = re.compile(r'[^a-z0-9]').search + return not bool(search(text)) + + +# Find if password contain only upper case and number +def upper_and_number(text: str) -> bool: + """ + Find if password contain only upper case and number. + :param text: password + + :return: True if password contain only upper case and number + """ + search = re.compile(r'[^A-Z0-9]').search + return not bool(search(text)) + + +# Find if password contain only lower and upper case and +def lower_upper(text: str) -> bool: + """ + Find if password contain only lower and upper case and + :param text: password + + :return: True if password contain only lower and upper case and + """ + search = re.compile(r'[^a-zA-Z]').search + return not bool(search(text)) + + +# Find if password contain only lower and upper case and +def lower_upper_number(text) -> bool: + """ + Find if password contain only lower and upper case and + :param text: password + + :return: True if password contain only lower and upper case and + """ + search = re.compile(r'[^a-zA-Z0-9]').search + return not bool(search(text)) + + +# Find if password contain only lowercase, uppercase numbers +# and some special character. +def all_character(text): + """ + Find if password contain only lowercase, uppercase numbers + and some special character. + :param text: password + + :return: True if password contain only lowercase, uppercase numbers + and some special character. + """ + search = re.compile(r'[^a-zA-Z0-9~!@#$%^&*_+":;\'-]').search + return not bool(search(text)) + + +def password_strength(password, label3): + same_character_type = any( + [ + lower_case(password), + upper_case(password), + password.isdigit() + ] + ) + mix_character = any( + [ + lower_and_number(password), + upper_and_number(password), + lower_upper(password) + ] + ) + if ' ' in password or '\t' in password: + label3.set_text("Space not allowed") + elif len(password) <= 4: + label3.set_text("Super Weak") + elif len(password) <= 8 and same_character_type: + label3.set_text("Super Weak") + elif len(password) <= 8 and mix_character: + label3.set_text("Very Weak") + elif len(password) <= 8 and lower_upper_number(password): + label3.set_text("Fairly Weak") + elif len(password) <= 8 and all_character(password): + label3.set_text("Weak") + elif len(password) <= 12 and same_character_type: + label3.set_text("Very Weak") + elif len(password) <= 12 and mix_character: + label3.set_text("Fairly Weak") + elif len(password) <= 12 and lower_upper_number(password): + label3.set_text("Weak") + elif len(password) <= 12 and all_character(password): + label3.set_text("Strong") + elif len(password) <= 16 and same_character_type: + label3.set_text("Fairly Weak") + elif len(password) <= 16 and mix_character: + label3.set_text("Weak") + elif len(password) <= 16 and lower_upper_number(password): + label3.set_text("Strong") + elif len(password) <= 16 and all_character(password): + label3.set_text("Fairly Strong") + elif len(password) <= 20 and same_character_type: + label3.set_text("Weak") + elif len(password) <= 20 and mix_character: + label3.set_text("Strong") + elif len(password) <= 20 and lower_upper_number(password): + label3.set_text("Fairly Strong") + elif len(password) <= 20 and all_character(password): + label3.set_text("Very Strong") + elif len(password) <= 24 and same_character_type: + label3.set_text("Strong") + elif len(password) <= 24 and mix_character: + label3.set_text("Fairly Strong") + elif len(password) <= 24 and lower_upper_number(password): + label3.set_text("Very Strong") + elif len(password) <= 24 and all_character(password): + label3.set_text("Super Strong") + elif same_character_type: + label3.set_text("Fairly Strong") + else: + label3.set_text("Super Strong") + + +def deprecated(*, version: str, reason: str): + def decorator(func): + def wrapper(*args, **kwargs): + warnings.warn( + f"{func.__name__} is deprecated (version {version}): {reason}", + category=DeprecationWarning, + stacklevel=2 + ) + return func(*args, **kwargs) + wrapper.__name__ = func.__name__ + wrapper.__doc__ = func.__doc__ + return wrapper + return decorator diff --git a/install_station/create_cfg.py b/install_station/create_cfg.py new file mode 100644 index 0000000..3472ffd --- /dev/null +++ b/install_station/create_cfg.py @@ -0,0 +1,167 @@ +from install_station.data import InstallationData, installation_config + + +class Configuration: + """ + Utility class for creating and validating GhostBSD installation configuration files. + + This class provides methods to generate the ghostbsd_installation.cfg file + used by the GhostBSD installer and validate all required installation data + before configuration file creation. + + The class follows a utility pattern with class methods for stateless operations, + designed to integrate with the InstallationData system for configuration management. + """ + + @classmethod + def sanity_check(cls): + """ + Perform sanity checks on all installation data used by create_cfg. + + Validates that all required installation parameters are present and valid + before attempting to create the configuration file. + + Returns: + tuple: (bool, list) - (is_valid, list_of_errors) + is_valid: True if all checks pass, False otherwise + list_of_errors: List of error messages describing validation failures + """ + errors = [] + + # Check basic installation data + if not hasattr(InstallationData, 'boot') or not InstallationData.boot: + errors.append("Boot manager not specified") + elif InstallationData.boot not in ['refind', 'grub', 'none']: + errors.append(f"Invalid boot manager: {InstallationData.boot}") + + # Check ZFS configuration path + if InstallationData.zfs_config_data: + if not isinstance(InstallationData.zfs_config_data, list): + errors.append("ZFS config data is not a list") + else: + # Check for required ZFS configuration elements + has_partscheme = any('partscheme' in str(line) for line in InstallationData.zfs_config_data) + if not has_partscheme: + errors.append("ZFS config missing partition scheme") + + has_disk = any('disk0=' in str(line) for line in InstallationData.zfs_config_data) + if not has_disk: + errors.append("ZFS config missing disk specification") + else: + # Check custom partition configuration path + if not hasattr(InstallationData, 'disk') or not InstallationData.disk: + errors.append("Disk not specified for custom partitioning") + + if not hasattr(InstallationData, 'slice') or not InstallationData.slice: + errors.append("Partition slice not specified") + + if not hasattr(InstallationData, 'scheme') or not InstallationData.scheme: + errors.append("Partition scheme not specified") + elif InstallationData.scheme not in ['partscheme=GPT', 'partscheme=MBR']: + errors.append(f"Invalid partition scheme: {InstallationData.scheme}") + + if not hasattr(InstallationData, 'new_partition') or not InstallationData.new_partition: + errors.append("No partitions defined for custom partitioning") + elif not isinstance(InstallationData.new_partition, list): + errors.append("Partition data is not a list") + + # Check installation config file path + if not installation_config: + errors.append("Installation config file path not defined") + + return len(errors) == 0, errors + + @classmethod + def create_cfg(cls): + """ + Create the ghostbsd_installation.cfg file to install GhostBSD. + + Generates the configuration file used by the GhostBSD installer based on + data stored in InstallationData. Supports both ZFS and custom partitioning + configurations. + + The configuration includes: + - Installation mode and type settings + - Disk and partition configuration + - Boot manager setup + - Network configuration + - First boot preparation commands + + Raises: + ValueError: If sanity check fails, indicating invalid configuration data + IOError: If unable to write to the configuration file + """ + # Perform sanity check before creating configuration + is_valid, errors = cls.sanity_check() + if not is_valid: + error_msg = "Configuration validation failed:\n" + "\n".join(f"- {error}" for error in errors) + raise ValueError(error_msg) + + try: + with open(installation_config, 'w') as f: + # Installation Mode + f.write('# Installation Mode\n') + f.write('installMode=fresh\n') + f.write('installInteractive=no\n') + f.write('installType=GhostBSD\n') + f.write('installMedium=livezfs\n') + f.write('packageType=livezfs\n') + + if InstallationData.zfs_config_data: + # ZFS Configuration Path + for line in InstallationData.zfs_config_data: + if 'partscheme' in line: + f.write(line) + boot = InstallationData.boot + if boot == 'refind': + f.write('bootManager=none\n') + f.write(f'efiLoader={boot}\n') + else: + f.write(f'bootManager={boot}\n') + f.write('efiLoader=none\n') + else: + f.write(line) + else: + # Custom Partition Configuration Path + d_output = InstallationData.disk + f.write('\n# Disk Setup\n') + f.write('ashift=12\n') + f.write(f'disk0={d_output}\n') + # Partition Slice. + f.write(f'partition={InstallationData.slice}\n') + # Boot Menu + boot = InstallationData.boot + if boot == 'refind': + f.write('bootManager=none\n') + f.write(f'efiLoader={boot}\n') + else: + f.write(f'bootManager={boot}\n') + f.write('efiLoader=none\n') + f.write(f'{InstallationData.scheme}\n') + f.write('commitDiskPart\n') + # Partition Setup + f.write('\n# Partition Setup\n') + for line in InstallationData.new_partition: + if 'BOOT' in line or 'BIOS' in line or 'UEFI' in line: + pass + else: + f.write(f'disk0-part={line.strip()}\n') + f.write('commitDiskLabel\n') + + # Network Configuration + f.write('\n# Network Configuration\n') + f.write('hostname=installed\n') + + # First Boot Preparation Commands + f.write('\n# command to prepare first boot\n') + f.write("runCommand=sysrc hostname='installed'\n") + f.write("runCommand=pw userdel -n ghostbsd -r\n") + f.write("runCommand=sed -i '' 's/ghostbsd/root/g' /etc/gettytab\n") + f.write("runCommand=sed -i '' 's/ghostbsd/root/g' /etc/ttys\n") + f.write("runCommand=mv /usr/local/etc/devd/automount_devd" + ".conf.skip /usr/local/etc/devd/automount_devd.conf\n") + f.write("runCommand=mv /usr/local/etc/devd/automount_devd" + "_localdisks.conf.skip /usr/local/etc/devd/" + "automount_devd_localdisks.conf\n") + except IOError as e: + raise IOError(f"Failed to write configuration file: {e}") diff --git a/install_station/custom.py b/install_station/custom.py new file mode 100644 index 0000000..2ed7163 --- /dev/null +++ b/install_station/custom.py @@ -0,0 +1,887 @@ +import gi +gi.require_version('Gtk', '3.0') +gi.require_version('Gdk', '3.0') +from gi.repository import Gtk, Gdk +from install_station.partition import ( + DiskPartition, + DeletePartition, + bios_or_uefi, + CreateSlice, + AutoFreeSpace, + CreatePartition, + CreateLabel +) +from install_station.data import InstallationData, logo +from install_station.interface_controller import Button +import gettext + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +bios_type = bios_or_uefi() + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class PartitionManager: + """ + Utility class for partition management operations following the pattern of InstallTypes and ZFS. + + This class provides a GTK+ interface for managing disk partitions including creating, + deleting, and configuring partitions with support for both GPT and MBR schemes. + Supports ZFS, UFS, SWAP, BOOT, and UEFI filesystem types. + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the InstallationData system for configuration persistence. + """ + # Class variables for state management + fs = None + mount_point = None + window = None + efi_exist = True + fs_behind = None + disk_index = None + path = None + disk = None + vbox1 = None + scheme = 'GPT' + size = None + slice = None + label = None + mount_point_behind = None + change_schemes = False + iter = None + store = None + treeview = None + tree_selection = None + + # UI elements as class variables + create_bt = None + delete_bt = None + revert_bt = None + auto_bt = None + fs_type = None + entry = None + mount_point_box = None + + @classmethod + def set_fs(cls, widget): + """ + Set the filesystem type from a ComboBoxText widget selection. + + Args: + widget: GTK ComboBoxText widget containing filesystem type options + """ + cls.fs = widget.get_active_text() + + @classmethod + def get_mount_point(cls, widget): + """ + Get the mount point from a ComboBoxText widget selection. + + Args: + widget: GTK ComboBoxText widget containing mount point options + """ + cls.mount_point = widget.get_active_text() + + @classmethod + def get_model(cls): + """ + Return the GTK widget model for the partition manager. + + Creates and initializes the UI if it doesn't exist yet. + + Returns: + Gtk.Box: The main container widget for the partition manager interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 + + @classmethod + def initialize(cls): + """ + Initialize the partition manager UI following the utility class pattern. + + Creates the main interface including the partition tree view, control buttons, + and sets up the partition database. This method is called automatically + by get_model() when the interface is first accessed. + """ + DiskPartition.create_partition_database() + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + + # Scrolled window for partition tree + sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True) + sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) + cls.store = Gtk.TreeStore(str, str, str, str, bool) + cls.tree_store() + cls.treeview = Gtk.TreeView() + cls.treeview.set_model(cls.store) + cls.treeview.set_rules_hint(True) + + # Setup columns + cls._setup_columns() + + cls.treeview.set_reorderable(True) + cls.treeview.expand_all() + cls.tree_selection = cls.treeview.get_selection() + cls.tree_selection.set_mode(Gtk.SelectionMode.SINGLE) + cls.tree_selection.connect("changed", cls.partition_selection) + sw.add(cls.treeview) + sw.show() + cls.vbox1.pack_start(sw, True, True, 0) + + # Button box + hbox1 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=0) + hbox1.set_border_width(10) + cls.vbox1.pack_start(hbox1, False, False, 0) + hbox1.show() + cls.scheme = 'GPT' + hbox1.pack_start(cls.delete_create_button(), False, False, 10) + + @classmethod + def _setup_columns(cls): + """ + Setup treeview columns for the partition display. + + Creates columns for Partition, Size(MB), Mount Point, and System/Type + with appropriate widths and header labels. + """ + columns_config = [ + ('Partition', 0, 150), + ('Size(MB)', 1, 150), + ('Mount Point', 2, 150), + ('System/Type', 3, 150) + ] + + for i, (title, text_col, width) in enumerate(columns_config): + cell = Gtk.CellRendererText() + column = Gtk.TreeViewColumn(None, cell, text=text_col) + column_header = Gtk.Label(label=title) + column_header.set_use_markup(True) + column_header.show() + column.set_widget(column_header) + column.set_resizable(True) + column.set_fixed_width(width) + if i == 0: + column.set_sort_column_id(0) + cls.treeview.append_column(column) + + @classmethod + def tree_store(cls): + """ + Populate the tree store with disk and partition information from the disk database. + + Creates a hierarchical tree structure showing: + - Disks (top level) + - Partitions/slices (second level) + - Labels/partitions (third level) + + Each level displays relevant information like size, mount points, and filesystem types. + + Returns: + Gtk.TreeStore: The populated tree store model + """ + cls.store.clear() + disk_db = DiskPartition.get_disk_database() + cls.disk_index = list(disk_db.keys()) + for disk in disk_db: + disk_info = disk_db[disk] + disk_scheme = disk_info['scheme'] + mount_point = '' + disk_size = str(disk_info['size']) + disk_partitions = disk_info['partitions'] + partition_list = disk_info['partition-list'] + pinter1 = cls.store.append(None, [disk, disk_size, mount_point, + disk_scheme, True]) + for partition in partition_list: + partition_info = disk_partitions[partition] + file_system = partition_info['file-system'] + mount_point = partition_info['mount-point'] + partition_size = str(partition_info['size']) + partition_partitions = partition_info['partitions'] + label_list = partition_info['partition-list'] + pinter2 = cls.store.append(pinter1, [partition, partition_size, mount_point, file_system, True]) + for label in label_list: + label_info = partition_partitions[label] + file_system = label_info['file-system'] + label_mount_point = label_info['mount-point'] + label_size = str(label_info['size']) + cls.store.append(pinter2, [label, label_size, label_mount_point, file_system, True]) + return cls.store + + @classmethod + def update(cls): + """ + Update the treeview after partition operations. + + Refreshes the partition tree display, expands all rows, and attempts + to restore the previously selected row if it still exists. + """ + old_path = cls.path + cls.tree_store() + cls.treeview.expand_all() + if old_path: + cls.treeview.row_activated(old_path, cls.treeview.get_columns()[0]) + cls.treeview.set_cursor(old_path) + + @classmethod + def delete_create_button(cls): + """ + Create the button toolbar for partition operations. + + Creates a horizontal box containing Create, Delete, Revert, and Auto buttons + for partition management operations. + + Returns: + Gtk.Box: Container with partition operation buttons + """ + bbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=10) + bbox.set_border_width(5) + bbox.set_spacing(10) + cls.create_bt = Gtk.Button(label="Create") + cls.create_bt.connect("clicked", cls.create_partition) + cls.create_bt.set_sensitive(False) + bbox.pack_start(cls.create_bt, True, True, 0) + cls.delete_bt = Gtk.Button(label="Delete") + cls.delete_bt.connect("clicked", cls.delete_partition) + cls.delete_bt.set_sensitive(False) + bbox.pack_start(cls.delete_bt, True, True, 0) + cls.revert_bt = Gtk.Button(label="Revert") + cls.revert_bt.connect("clicked", cls.revert_change) + cls.revert_bt.set_sensitive(False) + bbox.pack_start(cls.revert_bt, True, True, 0) + cls.auto_bt = Gtk.Button(label="Auto") + cls.auto_bt.connect("clicked", cls.auto_partition) + cls.auto_bt.set_sensitive(False) + bbox.pack_start(cls.auto_bt, True, True, 0) + return bbox + + @classmethod + def on_add_label(cls, _widget, entry, free_space, path): + """ + Handle adding a new label/partition in MBR scheme. + + Args: + _widget: The button widget (unused) + entry: SpinButton containing the partition size + free_space: Available space in MB + path: TreePath indicating the parent location + """ + create_size = entry.get_value_as_int() + left_size = free_space - create_size + CreateLabel(path, cls.disk, cls.slice, left_size, create_size, + cls.mount_point, cls.fs) + cls.window.hide() + cls.update() + + @classmethod + def on_add_partition(cls, _widget, entry, free_space, path): + """ + Handle adding a new partition in GPT scheme. + + Args: + _widget: The button widget (unused) + entry: SpinButton containing the partition size + free_space: Available space in MB + path: TreePath indicating the parent location + """ + create_size = entry.get_value_as_int() + left_size = int(free_space - create_size) + CreatePartition(path, cls.disk, left_size, create_size, + cls.mount_point, cls.fs) + cls.window.hide() + cls.update() + + @classmethod + def cancel(cls, _widget): + """ + Cancel the current partition operation and close the dialog. + + Args: + _widget: The cancel button widget (unused) + """ + cls.window.hide() + cls.update() + + @classmethod + def label_editor(cls, path, size, scheme): + """ + Open the partition/label editor dialog. + + Creates a dialog window for configuring a new partition with options for + filesystem type, size, and mount point based on the partitioning scheme. + + Args: + path: TreePath indicating where to create the partition + size: Available free space in MB + scheme: Partitioning scheme ('GPT' or 'MBR') + """ + free_space = int(size) + cls.window = Gtk.Window() + cls.window.set_title(title="Add Partition") + cls.window.set_border_width(0) + cls.window.set_size_request(480, 200) + cls.window.set_icon_from_file(logo) + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.window.add(box1) + box1.show() + box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + box2.set_border_width(10) + box1.pack_start(box2, True, True, 0) + box2.show() + + # Create partition configuration table + table = Gtk.Table(1, 2, True) + label1 = Gtk.Label(label="Type:") + label2 = Gtk.Label(label="Size(MB):") + label3 = Gtk.Label(label="Mount point:") + cls.fs_type = Gtk.ComboBoxText() + cls.fs_type.append_text('ZFS') + cls.fs_type.append_text('SWAP') + cls.fs_type.append_text('UFS') # Add UFS option + + # Set filesystem options based on scheme and existing partitions + if scheme == 'GPT': + if bios_type == "UEFI": + cls.fs_type.append_text("UEFI") + if cls.efi_exist is False: + cls.fs_type.set_active(3) # UEFI + cls.fs = "UEFI" + elif cls.mount_point_behind == "/" or cls.fs_behind == "ZFS": + cls.fs_type.set_active(1) # SWAP + cls.fs = "SWAP" + else: + cls.fs_type.set_active(0) # ZFS + cls.fs = "ZFS" + else: + cls.fs_type.append_text("BOOT") + if not InstallationData.new_partition: + cls.fs_type.set_active(4) # BOOT + cls.fs = "BOOT" + elif len(InstallationData.new_partition) == 0: + cls.fs_type.set_active(4) # BOOT + cls.fs = "BOOT" + elif cls.mount_point_behind == "/" or cls.fs_behind == "ZFS": + cls.fs_type.set_active(1) # SWAP + cls.fs = "SWAP" + else: + cls.fs_type.set_active(0) # ZFS + cls.fs = "ZFS" + elif cls.mount_point_behind == "/" or cls.fs_behind == "ZFS": + cls.fs_type.set_active(1) # SWAP + cls.fs = "SWAP" + else: + cls.fs_type.set_active(0) # ZFS + cls.fs = "ZFS" + + cls.fs_type.connect("changed", cls.set_fs) + + # Size spinner + adj = Gtk.Adjustment(free_space, 0, free_space, 1, 100, 0) + cls.entry = Gtk.SpinButton(adjustment=adj, numeric=True) + cls.entry.set_editable(True) + + # Mount point selection + cls.mount_point_box = Gtk.ComboBoxText() + cls.mount_point = "none" + cls.mount_point_box.append_text('none') + cls.mount_point_box.append_text('/') + if InstallationData.new_partition: + if scheme == 'GPT' and len(InstallationData.new_partition) == 1: + cls.mount_point_box.append_text('/boot') + elif scheme == 'MBR' and len(InstallationData.new_partition) == 0: + cls.mount_point_box.append_text('/boot') + elif scheme == 'MBR' and not InstallationData.new_partition: + cls.mount_point_box.append_text('/boot') + cls.mount_point_box.append_text('/etc') + cls.mount_point_box.append_text('/root') + cls.mount_point_box.append_text('/tmp') + cls.mount_point_box.append_text('/usr') + cls.mount_point_box.append_text('/home') + cls.mount_point_box.append_text('/var') + cls.mount_point_box.set_active(0) + + # Enable mount point selection for UFS + if 'UFS' in cls.fs: + cls.mount_point_box.set_sensitive(True) + else: + cls.mount_point_box.set_sensitive(False) + cls.mount_point_box.connect("changed", cls.get_mount_point) + + # Add to table + table.attach(label1, 0, 1, 1, 2) + table.attach(cls.fs_type, 1, 2, 1, 2) + table.attach(label2, 0, 1, 2, 3) + table.attach(cls.entry, 1, 2, 2, 3) + table.attach(label3, 0, 1, 3, 4) + table.attach(cls.mount_point_box, 1, 2, 3, 4) + box2.pack_start(table, False, False, 0) + + # Buttons + box2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) + box2.set_border_width(5) + box1.pack_start(box2, False, True, 0) + box2.show() + bbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=10) + bbox.set_border_width(5) + bbox.set_spacing(10) + + button = Gtk.Button(stock=Gtk.STOCK_CANCEL) + button.connect("clicked", cls.cancel) + bbox.pack_start(button, True, True, 0) + + button = Gtk.Button(stock=Gtk.STOCK_ADD) + if scheme == 'MBR': + button.connect( + "clicked", cls.on_add_label, cls.entry, free_space, path + ) + elif scheme == 'GPT' and cls.fs == 'BOOT': + button.connect( + "clicked", cls.on_add_partition, cls.entry, free_space, path + ) + elif scheme == 'GPT' and cls.fs == 'UEFI' and cls.efi_exist is False: + button.connect( + "clicked", cls.on_add_partition, cls.entry, free_space, path + ) + else: + button.connect( + "clicked", cls.on_add_partition, cls.entry, free_space, path + ) + bbox.pack_start(button, True, True, 0) + box2.pack_end(bbox, True, True, 5) + cls.window.show_all() + + @classmethod + def scheme_selection(cls, combobox): + """ + Handle partition scheme selection from combo box. + + Args: + combobox: ComboBox widget containing scheme options + """ + model = combobox.get_model() + index = combobox.get_active() + data = model[index][0] + value = data.partition(':')[0] + cls.scheme = value + + @classmethod + def add_gpt_mbr(cls, _widget): + """ + Apply the selected partition scheme to the disk. + + Args: + _widget: The add button widget (unused) + """ + DiskPartition.set_disk_scheme(cls.scheme, cls.disk, cls.size) + cls.update() + cls.window.hide() + + @classmethod + def scheme_editor(cls): + """ + Create a partition scheme editor window. + + Opens a dialog allowing the user to select between GPT and MBR + partition schemes for the selected disk. + """ + cls.window = Gtk.Window() + cls.window.set_title("Partition Scheme") + cls.window.set_border_width(0) + cls.window.set_size_request(400, 150) + cls.window.set_icon_from_file(logo) + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.window.add(box1) + box1.show() + box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + box2.set_border_width(10) + box1.pack_start(box2, True, True, 0) + box2.show() + + # Creating MBR or GPT drive + label = Gtk.Label(label='Select a partition scheme for this drive:') + label.set_use_markup(True) + + # Adding a combo box to selecting MBR or GPT scheme. + cls.scheme = 'GPT' + scheme_box = Gtk.ComboBoxText() + scheme_box.append_text("GPT: GUID Partition Table") + scheme_box.append_text("MBR: DOS Partition") + scheme_box.connect('changed', cls.scheme_selection) + scheme_box.set_active(0) + table = Gtk.Table(1, 2, True) + table.attach(label, 0, 2, 0, 1) + table.attach(scheme_box, 0, 2, 1, 2) + box2.pack_start(table, False, False, 0) + box2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) + box2.set_border_width(5) + box1.pack_start(box2, False, True, 0) + box2.show() + + # Add create_scheme button + bbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=10) + bbox.set_border_width(5) + bbox.set_spacing(10) + button = Gtk.Button(stock=Gtk.STOCK_ADD) + button.connect("clicked", cls.add_gpt_mbr) + bbox.pack_start(button, True, True, 0) + box2.pack_end(bbox, True, True, 5) + cls.window.show_all() + + @classmethod + def get_value(cls, _widget, entry): + """ + Handle slice creation from the slice editor dialog. + + Gets the partition size from the entry widget and creates a new slice + in the MBR partition table. + + Args: + _widget: The add button widget (unused) + entry: SpinButton containing the partition size + """ + partition_size = int(entry.get_value_as_int()) + rs = int(cls.size) - partition_size + CreateSlice(partition_size, rs, cls.path, cls.disk) + cls.update() + cls.window.hide() + + @classmethod + def slice_editor(cls): + """ + Create a window for editing partition slices in MBR scheme. + + Opens a dialog for creating a new slice partition with size configuration. + Used specifically for MBR partitioning scheme. + """ + free_space = int(cls.size) + cls.window = Gtk.Window() + cls.window.set_title("Add Partition") + cls.window.set_border_width(0) + cls.window.set_size_request(400, 150) + cls.window.set_icon_from_file(logo) + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.window.add(box1) + box1.show() + box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + box2.set_border_width(10) + box1.pack_start(box2, True, True, 0) + box2.show() + + # Create Partition slice + table = Gtk.Table(1, 2, True) + label1 = Gtk.Label(label="Size(MB):") + adj = Gtk.Adjustment(free_space, 0, free_space, 1, 100, 0) + cls.entry = Gtk.SpinButton(adjustment=adj, numeric=True) + cls.entry.set_numeric(True) + table.attach(label1, 0, 1, 1, 2) + table.attach(cls.entry, 1, 2, 1, 2) + box2.pack_start(table, False, False, 0) + box2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) + box2.set_border_width(5) + box1.pack_start(box2, False, True, 0) + box2.show() + + # Add button + bbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=10) + bbox.set_border_width(5) + bbox.set_spacing(10) + button = Gtk.Button(stock=Gtk.STOCK_CANCEL) + button.connect("clicked", cls.cancel) + bbox.pack_start(button, True, True, 0) + button = Gtk.Button(stock=Gtk.STOCK_ADD) + button.connect("clicked", cls.get_value, cls.entry) + bbox.pack_start(button, True, True, 0) + box2.pack_end(bbox, True, True, 5) + cls.window.show_all() + + @classmethod + def delete_partition(cls, _widget): + """ + Delete the currently selected partition. + + Removes the selected partition or slice from the disk and updates + the partition display. + + Args: + _widget: The delete button widget (unused) + """ + part = cls.slice if cls.label == "Not selected" else cls.label + DeletePartition(part, cls.path) + cls.update() + + @classmethod + def auto_partition(cls, _widget): + """ + Automatically partition the disk with default ZFS configuration. + + Creates automatic partitions suitable for ZFS installation including + boot partitions (if needed) and ZFS root partition. + + Args: + _widget: The auto button widget (unused) + """ + cls.create_bt.set_sensitive(False) + cls.delete_bt.set_sensitive(False) + cls.auto_bt.set_sensitive(False) + cls.revert_bt.set_sensitive(False) + if 'freespace' in cls.slice: + AutoFreeSpace(cls.path, cls.size, 'ZFS', cls.efi_exist, + cls.disk, cls.scheme) + cls.update() + else: + print('wrong utilization') + + @classmethod + def revert_change(cls, _widget): + """ + Revert all partition changes and restore original state. + + Clears all partition configuration data from InstallationData and + recreates the original partition database, effectively undoing + all partition modifications. + + Args: + _widget: The revert button widget (unused) + """ + # Reset all partition configuration data in InstallationData + InstallationData.create = [] + InstallationData.scheme = "" + InstallationData.disk = "" + InstallationData.slice = "" + InstallationData.delete = [] + InstallationData.destroy = {} + InstallationData.new_partition = [] + DiskPartition.create_partition_database() + cls.tree_store() + cls.treeview.expand_all() + + @classmethod + def create_partition(cls, _widget): + """ + Create a new partition based on the current selection. + + Opens the appropriate editor dialog based on the selected item: + - Scheme editor for un-partitioned disks + - Label editor for free space in MBR or GPT + - Slice editor for MBR primary partition creation + + Args: + _widget: The create button widget (unused) + """ + cls.create_bt.set_sensitive(False) + cls.delete_bt.set_sensitive(False) + cls.auto_bt.set_sensitive(False) + cls.revert_bt.set_sensitive(False) + if cls.change_schemes is True: + cls.scheme_editor() + elif 'freespace' in cls.label: + cls.label_editor(cls.path, cls.size, 'MBR') + elif 'freespace' in cls.slice: + if cls.scheme == "MBR" and cls.path[1] < 4: + cls.slice_editor() + elif cls.scheme == "GPT": + cls.label_editor(cls.path, cls.size, 'GPT') + else: + print('This method of creating partition is not implemented') + + @classmethod + def partition_selection(cls, widget): + """ + Handle partition selection events and update UI button states. + + This method is called when a user selects a different item in the partition + tree view. It analyzes the selection and enables/disables appropriate buttons + based on what operations are valid for the selected item. + + The method handles complex logic for: + - Determining partition hierarchy (disk/slice/label) + - Checking partition scheme compatibility + - Validating boot partition requirements + - Managing button sensitivity states + + Args: + widget: TreeSelection widget that triggered the selection change + """ + efi_already_exist = False + model, cls.iter, = widget.get_selected() + if cls.iter is None: + Button.next_button.set_sensitive(False) + return None + cls.path = model.get_path(cls.iter) + main_tree_iter = model.get_iter(cls.path) + cls.size = model.get_value(main_tree_iter, 1) + tree_iter1 = model.get_iter(cls.path[0]) + cls.scheme = model.get_value(tree_iter1, 3) + cls.disk = model.get_value(tree_iter1, 0) + + if len(cls.path) >= 2: + tree_iter2 = model.get_iter(cls.path[:2]) + cls.slice = model.get_value(tree_iter2, 0) + cls.change_schemes = False + else: + if len(cls.path) == 1: + if DiskPartition.how_partition(cls.disk) == 0: + cls.change_schemes = True + elif DiskPartition.how_partition(cls.disk) == 1: + slice_path = f'{cls.path[0]}:0' + try: + tree_iter2 = model.get_iter(slice_path) + if 'freespace' in model.get_value(tree_iter2, 0): + cls.change_schemes = True + else: + cls.change_schemes = False + except ValueError: + cls.change_schemes = True + else: + cls.change_schemes = False + cls.slice = 'Not selected' + else: + cls.slice = 'Not selected' + cls.change_schemes = False + + if len(cls.path) == 3: + tree_iter3 = model.get_iter(cls.path[:3]) + cls.label = model.get_value(tree_iter3, 0) + else: + cls.label = 'Not selected' + + # Get previous partition info for context + if len(cls.path) == 2 and cls.path[1] > 0 and cls.scheme == "GPT": + path_behind = f'{cls.path[0]}:{str(int(cls.path[1] - 1))}' + tree_iter4 = model.get_iter(path_behind) + cls.mount_point_behind = model.get_value(tree_iter4, 2) + cls.fs_behind = model.get_value(tree_iter4, 3) + elif len(cls.path) == 3 and cls.path[2] > 0 and cls.scheme == "MBR": + path1 = cls.path[0] + path2 = str(cls.path[1]) + path3 = str(int(cls.path[2] - 1)) + path_behind2 = f'{path1}:{path2}:{path3}' + tree_iter1 = model.get_iter(path_behind2) + cls.mount_point_behind = model.get_value(tree_iter1, 2) + cls.fs_behind = model.get_value(tree_iter1, 3) + else: + cls.mount_point_behind = None + cls.fs_behind = None + + # Set button states based on selection + if 'freespace' in cls.slice: + cls.create_bt.set_sensitive(True) + cls.delete_bt.set_sensitive(False) + cls.auto_bt.set_sensitive(True) + # Scan for efi partition + for num in range(cls.path[1]): + partition_path = f"{cls.path[0]}:{num}" + tree_iter_1 = model.get_iter(partition_path) + first_fs = model.get_value(tree_iter_1, 3) + if first_fs == "UEFI" or 'efi' in first_fs: + cls.efi_exist = True + break + else: + cls.efi_exist = False + elif 'freespace' in cls.label: + if cls.path[1] > 3: + cls.create_bt.set_sensitive(False) + else: + cls.create_bt.set_sensitive(True) + cls.auto_bt.set_sensitive(True) + cls.delete_bt.set_sensitive(False) + elif 's' in cls.slice and len(cls.path) > 1: + cls.create_bt.set_sensitive(False) + cls.delete_bt.set_sensitive(True) + cls.auto_bt.set_sensitive(False) + elif 'p' in cls.slice and len(cls.path) > 1: + cls.create_bt.set_sensitive(False) + cls.delete_bt.set_sensitive(True) + cls.auto_bt.set_sensitive(False) + else: + cls.delete_bt.set_sensitive(False) + cls.auto_bt.set_sensitive(False) + if DiskPartition.how_partition(cls.disk) == 0: + cls.create_bt.set_sensitive(True) + elif cls.change_schemes is True: + cls.create_bt.set_sensitive(True) + else: + cls.create_bt.set_sensitive(False) + + # Handle partition validation + if InstallationData.new_partition: + cls.partitions = InstallationData.new_partition + if not cls.partitions: + Button.next_button.set_sensitive(False) + return None + if 'GPT' in InstallationData.scheme: + if InstallationData.disk: + disk = InstallationData.disk + disk_id = cls.disk_index.index(disk) + num = 0 + while True: + partition_path = f"{disk_id}:{num}" + try: + tree_iter_1 = model.get_iter(partition_path) + first_fs = model.get_value(tree_iter_1, 3) + if 'efi' in first_fs: + efi_already_exist = True + break + except ValueError: + efi_already_exist = False + break + num += 1 + if 'BOOT' in cls.partitions[0] and bios_type == 'BIOS': + if len(cls.partitions) >= 2 and 'ZFS' in cls.partitions[1]: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif efi_already_exist is True and bios_type == 'UEFI': + if 'ZFS' in cls.partitions[0]: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif len(cls.partitions) >= 2 and 'UEFI' in cls.partitions[0] and 'ZFS' in cls.partitions[1]: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif 'MBR' in InstallationData.scheme: + cls.efi_exist = False + if len(cls.partitions) >= 1: + if "/boot\n" in cls.partitions[0]: + if len(cls.partitions) >= 2 and 'ZFS' in cls.partitions[1]: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif 'ZFS' in cls.partitions[0]: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + else: + Button.next_button.set_sensitive(False) + else: + Button.next_button.set_sensitive(False) + else: + Button.next_button.set_sensitive(False) + + # Check if any configuration exists to enable revert button + path_exist = [ + bool(InstallationData.create), + bool(InstallationData.scheme), + bool(InstallationData.disk), + bool(InstallationData.slice), + bool(InstallationData.delete), + bool(InstallationData.destroy), + bool(InstallationData.new_partition) + ] + if any(path_exist): + cls.revert_bt.set_sensitive(True) + else: + cls.revert_bt.set_sensitive(False) diff --git a/install_station/data.py b/install_station/data.py new file mode 100644 index 0000000..5b91739 --- /dev/null +++ b/install_station/data.py @@ -0,0 +1,77 @@ +""" +Contains the data class and some commonly use variables +""" + +be_name = "default" +logo = "/usr/local/lib/install-station/image/logo.png" +pc_sysinstall = "/usr/local/sbin/pc-sysinstall" +query = "sh /usr/local/lib/install-station/backend-query" +tmp = "/tmp" +installation_config = f'{tmp}/ghostbsd_installation.cfg' +zfs_datasets = "/," \ + "/home(mountpoint=/home)," \ + "/tmp(mountpoint=/tmp|exec=on|setuid=off)," \ + "/usr(mountpoint=/usr|canmount=off)," \ + "/usr/ports(setuid=off)," \ + "/usr/src," \ + "/var(mountpoint=/var|canmount=off)," \ + "/var/audit(exec=off|setuid=off)," \ + "/var/crash(exec=off|setuid=off)," \ + "/var/log(exec=off|setuid=off)," \ + "/var/mail(atime=on)," \ + "/var/tmp(setuid=off)" + + +class InstallationData: + """ + Centralized data storage for installation configuration + """ + # Partition configuration + destroy: dict = {} + delete: list = [] + new_partition: list = [] + create: list = [] + scheme: str = "" + disk: str = "" + slice: str = "" + boot: str = "" + + # ZFS configuration data (instead of zfs_config file) + zfs_config_data: list = [] + + # UFS configuration data (instead of ufs_config file) + ufs_config_data: list = [] + + # Installation type and mode + install_mode: str = "" # "install" or "try" + filesystem_type: str = "" # "zfs", "ufs", or "custom" + + # Language and localization + language: str = "" + language_code: str = "" + + # Boot manager configuration + boot_manager: str = "" + + # Network configuration (for live mode) + network_config: dict = {} + + @classmethod + def reset(cls): + """Reset all installation data""" + cls.destroy = {} + cls.delete = [] + cls.new_partition = [] + cls.create = [] + cls.scheme = "" + cls.disk = "" + cls.slice = "" + cls.boot = "" + cls.zfs_config_data = [] + cls.ufs_config_data = [] + cls.install_mode = "" + cls.filesystem_type = "" + cls.language = "" + cls.language_code = "" + cls.boot_manager = "" + cls.network_config = {} diff --git a/install_station/end.py b/install_station/end.py new file mode 100644 index 0000000..a420c2f --- /dev/null +++ b/install_station/end.py @@ -0,0 +1,61 @@ +#!/usr/bin/env python + +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk +from subprocess import Popen +import gettext + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +lyrics = _("""Installation is complete. You need to restart the +computer in order to use the new installation. +You can continue to use this live media, although +any changes you make or documents you save will +not be preserved on reboot.""") + + +class PyApp: + @classmethod + def on_reboot(cls, _widget): + Popen('shutdown -r now', shell=True) + Gtk.main_quit() + + @classmethod + def on_close(cls, _widget): + Gtk.main_quit() + + def __init__(self): + window = Gtk.Window() + window.set_border_width(8) + window.connect("destroy", Gtk.main_quit) + window.set_title(_("Installation Completed")) + window.set_icon_from_file("/usr/local/lib/install-station/image/logo.png") + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + window.add(box1) + box1.show() + box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + box2.set_border_width(10) + box1.pack_start(box2, True, True, 0) + box2.show() + label = Gtk.Label(label=lyrics) + box2.pack_start(label, True, True, 0) + box2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) + box2.set_border_width(5) + box1.pack_start(box2, False, True, 0) + box2.show() + table = Gtk.Table(1, 2, True) + restart = Gtk.Button(label=_("Restart")) + restart.connect("clicked", self.on_reboot) + continue_button = Gtk.Button(label=_("Continue")) + continue_button.connect("clicked", self.on_close) + table.attach(continue_button, 0, 1, 0, 1) + table.attach(restart, 1, 2, 0, 1) + box2.pack_start(table, True, True, 0) + window.show_all() + + +PyApp() +Gtk.main() diff --git a/install_station/error.py b/install_station/error.py new file mode 100644 index 0000000..b9c63dc --- /dev/null +++ b/install_station/error.py @@ -0,0 +1,55 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk +import gettext + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + + +class ErrorWindow: + + @classmethod + def on_close(cls, _widget): + Gtk.main_quit() + + def __init__(self): + window = Gtk.Window() + window.set_border_width(8) + window.connect("destroy", Gtk.main_quit) + window.set_title(_("Installation Error")) + # window.set_icon_from_file("/usr/local/lib/install-station/image/logo.png") + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + window.add(box1) + box1.show() + box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + box2.set_border_width(10) + box1.pack_start(box2, True, True, 0) + box2.show() + title = Gtk.Label() + title.set_use_markup(True) + title_text = _("Installation has failed!") + title.set_markup(f'{title_text}') + label = Gtk.Label() + label.set_use_markup(True) + url = 'https://github.com/ghostbsd/ghostbsd-src/issues/new/choose' + anchor = f"{_('GhostBSD issue system')}" + message = _("Please report the issue to {anchor}, and \nbe sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log.").format(anchor=anchor) + label.set_markup(message) + box2.pack_start(title, True, True, 0) + box2.pack_start(label, True, True, 0) + box2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) + box2.set_border_width(5) + box1.pack_start(box2, False, True, 0) + box2.show() + table = Gtk.Table(n_rows=1, n_columns=2, homogeneous=True) + ok = Gtk.Button(label=_("Ok")) + ok.connect("clicked", self.on_close) + table.attach(ok, 0, 2, 0, 1) + box2.pack_start(table, True, True, 0) + window.show_all() + + +ErrorWindow() +Gtk.main() diff --git a/install_station/install.py b/install_station/install.py new file mode 100644 index 0000000..64937ed --- /dev/null +++ b/install_station/install.py @@ -0,0 +1,140 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk, GLib, Gdk +import threading +from subprocess import Popen, PIPE, STDOUT +from time import sleep +from install_station.partition import delete_partition, destroy_partition, add_partition +from install_station.create_cfg import Configuration +from install_station.window import Window +from install_station.data import InstallationData, installation_config, pc_sysinstall +import sys +import gettext + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +def update_progress(progressbar, text): + """ + This method + """ + new_val = progressbar.get_fraction() + 0.000003 + progressbar.set_fraction(new_val) + progressbar.set_text(text[0:80]) + + +def read_output(command, progressbar): + GLib.idle_add(update_progress, progressbar, _("Creating ghostbsd_installation.cfg")) + Configuration.create_cfg() + sleep(1) + if InstallationData.delete: + GLib.idle_add(update_progress, progressbar, _("Deleting partition")) + delete_partition() + sleep(1) + # destroy disk partition and create scheme + if InstallationData.destroy: + GLib.idle_add(update_progress, progressbar, _("Creating disk partition")) + destroy_partition() + sleep(1) + # create partition + if InstallationData.create: + GLib.idle_add(update_progress, progressbar, _("Creating new partitions")) + add_partition() + sleep(1) + progressbar_text = None + process = Popen( + command, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True, universal_newlines=True + ) + while True: + line = process.stdout.readline() + if not line: + break + progressbar_text = line.rstrip() + GLib.idle_add(update_progress, progressbar, progressbar_text) + # Those for next 4 line is for debugging only. + # filer = open(f"{tmp}/tmp", "a") + # filer.writelines(progressbar_text) + # filer.close + print(progressbar_text) + if progressbar_text.rstrip() == "Installation finished!": + Popen(f'python {install-station_dir}/end.py', shell=True, close_fds=True) + else: + Popen(f'python {install-station_dir}/error.py', shell=True, close_fds=True) + Window.hide() + + +class InstallWindow: + + def __init__(self): + self.vBox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + self.vBox.show() + label = Gtk.Label(label=_("Installation in progress"), name="Header") + label.set_property("height-request", 50) + self.vBox.pack_start(label, False, False, 0) + + hbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=0, name="install") + hbox.show() + self.vBox.pack_end(hbox, True, True, 0) + vbox2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + vbox2.show() + label2 = Gtk.Label(name="sideText") + + label2.set_markup(_( + "Thank you for choosing GhostBSD!\n\n" + "We believe every computer operating system should " + "be simple, elegant, secure and protect your privacy" + " while being easy to use. GhostBSD is simplifying " + "FreeBSD for those who lack the technical expertise " + "required to use it and lower the entry-level of " + "using BSD. \n\nWe hope you'll enjoy our BSD " + "operating system." + )) + label2.set_justify(Gtk.Justification.LEFT) + label2.set_line_wrap(True) + # label2.set_max_width_chars(10) + label2.set_alignment(0.0, 0.2) + hbox2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=0, name="TransBox") + hbox2.show() + hbox.pack_start(hbox2, True, True, 0) + hbox2.pack_start(label2, True, True, 30) + image = Gtk.Image() + image.set_from_file(f"{install-station_dir}/image/G_logo.gif") + # image.set_size_request(width=256, height=256) + image.show() + hbox.pack_end(image, True, True, 20) + + def get_model(self): + return self.vBox + + +class InstallProgress: + + def __init__(self): + self.pbar = Gtk.ProgressBar() + self.pbar.set_show_text(True) + command = f'sudo {pc_sysinstall} -c {installation_config}' + thread = threading.Thread( + target=read_output, + args=( + command, + self.pbar + ), + daemon=True + ) + thread.start() + self.pbar.show() + + def get_progressbar(self): + return self.pbar diff --git a/install_station/install_type.py b/install_station/install_type.py new file mode 100644 index 0000000..42efe15 --- /dev/null +++ b/install_station/install_type.py @@ -0,0 +1,80 @@ +""" +Module to create the inner window for select what type of installation. +""" +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk, Gdk +from install_station.data import InstallationData +import gettext + +_ = gettext.gettext + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class InstallTypes: + # Class variables instead of instance variables + ne = 'zfs' + vbox1 = None + + @classmethod + def filesystem_type(cls, widget, val): + # Only respond to activation, not deactivation + if widget.get_active(): + cls.ne = val + InstallationData.filesystem_type = val + return + + @classmethod + def get_type(cls): + return InstallationData.filesystem_type or cls.ne + + @classmethod + def get_model(cls): + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 + + @classmethod + def initialize(cls): + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + vbox2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + hbox1 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=0) + InstallationData.filesystem_type = cls.ne + cls.vbox1.pack_start(hbox1, True, False, 0) + hbox1.set_halign(Gtk.Align.CENTER) + label = Gtk.Label(label=_("How do you want to install GhostBSD?")) + label.set_alignment(0, 0.5) + vbox2.pack_start(label, False, False, 10) + # Create radio button group + cls.full_zfs_button = Gtk.RadioButton( + label=_("Disks Configuration\nInstall GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 configurations.") + ) + cls.full_zfs_button.get_child().set_use_markup(True) + cls.full_zfs_button.get_child().set_line_wrap(True) + vbox2.pack_start(cls.full_zfs_button, True, True, 10) + cls.full_zfs_button.connect("toggled", cls.filesystem_type, "zfs") + cls.full_zfs_button.show() + + cls.custom_button = Gtk.RadioButton.new_with_label_from_widget( + cls.full_zfs_button, + _("Multi-Boot Configuration\nInstall GhostBSD with ZFS alongside other operating systems.") + ) + cls.custom_button.get_child().set_use_markup(True) + cls.custom_button.get_child().set_line_wrap(True) + vbox2.pack_start(cls.custom_button, False, True, 10) + cls.custom_button.connect("toggled", cls.filesystem_type, "custom") + cls.custom_button.show() + + hbox1.pack_start(vbox2, True, False, 150) + vbox2.set_halign(Gtk.Align.CENTER) + cls.full_zfs_button.set_active(True) diff --git a/install_station/interface_controller.py b/install_station/interface_controller.py new file mode 100644 index 0000000..e424ea9 --- /dev/null +++ b/install_station/interface_controller.py @@ -0,0 +1,242 @@ +from gi.repository import Gtk +import gettext +from install_station.install import InstallProgress, InstallWindow +from install_station.partition import DiskPartition +from install_station.window import Window +from install_station.data import InstallationData + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + + +class Button: + back_button = Gtk.Button(label=_('Back')) + """This button is used to go back to the previous page.""" + cancel_button = Gtk.Button(label=_('Cancel')) + """This button is used to quit and clean up.""" + next_button = Gtk.Button(label=_('Next')) + """This button is used to go to the next page.""" + _box = None + + @classmethod + def hide_all(cls): + """ + This method hides all buttons. + """ + cls.back_button.hide() + cls.cancel_button.hide() + cls.next_button.hide() + + @classmethod + def show_initial(cls): + """ + This method shows the initial buttons. Cancel and Next. + """ + cls.cancel_button.show() + cls.next_button.show() + + @classmethod + def show_back(cls): + """ + This method shows the back button. + """ + cls.back_button.show() + + @classmethod + def hide_back(cls): + """ + This method hides the back button. + """ + + @classmethod + def box(cls): + """ + This method creates a box container of buttons aligned to the right. + + Returns: + Box container with buttons aligned to the right for navigation. + """ + if cls._box is None: + # Use Box instead of Grid for better right-alignment control + cls._box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=5) + cls._box.set_halign(Gtk.Align.END) # Align the entire box to the right + + cls.back_button.connect("clicked", Interface.back_page) + cls._box.pack_start(cls.back_button, False, False, 0) + + cls.cancel_button.connect("clicked", Interface.delete) + cls._box.pack_start(cls.cancel_button, False, False, 0) + + cls.next_button.connect("clicked", Interface.next_page) + cls._box.pack_start(cls.next_button, False, False, 0) + + cls._box.show() + return cls._box + + +class Interface: + welcome = None + installation_type = None + custom_partition = None + full_zfs = None + boot_manager = None + network_setup = None + page = Gtk.Notebook() + + @classmethod + def get_interface(cls): + interface_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + interface_box.show() + interface_box.pack_start(cls.page, True, True, 0) + cls.page.show() + cls.page.set_show_tabs(False) + cls.page.set_show_border(False) + welcome_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + welcome_box.show() + cls.welcome.initialize() + get_types = cls.welcome.get_model() + welcome_box.pack_start(get_types, True, True, 0) + Window.set_title(_("Welcome to GhostBSD")) + label = Gtk.Label(label=_("Welcome to GhostBSD")) + cls.page.insert_page(welcome_box, label, 0) + # Set what page to start at type of installation + cls.page.set_current_page(0) + cls.nbButton = Gtk.Notebook() + interface_box.pack_end(cls.nbButton, False, False, 5) + cls.nbButton.show() + cls.nbButton.set_show_tabs(False) + cls.nbButton.set_show_border(False) + label = Gtk.Label(label=_("Button")) + cls.nbButton.insert_page(Button.box(), label, 0) + return interface_box + + @classmethod + def delete(cls, _widget, _event=None): + """Close the main window.""" + InstallationData.reset() + Gtk.main_quit() + + @classmethod + def next_page(cls, _widget): + if InstallationData.install_mode == "install": + cls.next_install_page() + else: + cls.next_setup_page() + + @classmethod + def next_install_page(cls): + """Go to the next window.""" + page = cls.page.get_current_page() + if page == 0: + type_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + type_box.show() + get_types = cls.installation_type.get_model() + type_box.pack_start(get_types, True, True, 0) + label = Gtk.Label(label=_("Installation Types")) + cls.page.insert_page(type_box, label, 1) + cls.page.next_page() + cls.page.show_all() + Button.show_initial() + elif page == 1: + Button.show_back() + if InstallationData.filesystem_type == "custom": + custom_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + custom_box.show() + get_part = cls.custom_partition.get_model() + custom_box.pack_start(get_part, True, True, 0) + label = Gtk.Label(label=_("Custom Configuration")) + cls.page.insert_page(custom_box, label, 2) + cls.page.next_page() + cls.page.show_all() + Button.next_button.set_sensitive(False) + elif InstallationData.filesystem_type == "zfs": + zfs_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + zfs_box.show() + get_zfs = cls.full_zfs.get_model() + zfs_box.pack_start(get_zfs, True, True, 0) + label = Gtk.Label(label=_("ZFS Configuration")) + cls.page.insert_page(zfs_box, label, 2) + cls.page.next_page() + cls.page.show_all() + Button.next_button.set_sensitive(False) + elif page == 2: + boot_manager_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + boot_manager_box.show() + get_root = cls.boot_manager.get_model() + boot_manager_box.pack_start(get_root, True, True, 0) + label = Gtk.Label(label=_("Boot Option")) + cls.page.insert_page(boot_manager_box, label, 3) + Button.next_button.set_label(_("Install")) + cls.page.next_page() + cls.page.show_all() + Button.next_button.set_sensitive(True) + elif page == 3: + installation_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + installation_box.show() + install_window = InstallWindow() + get_install = install_window.get_model() + installation_box.pack_start(get_install, True, True, 0) + label = Gtk.Label(label=_("Installation Progress")) + cls.page.insert_page(installation_box, label, 8) + cls.page.next_page() + installation_progressbar = InstallProgress() + progressbar = installation_progressbar.get_progressbar() + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + box1.show() + label = Gtk.Label(label=_("Progress Bar")) + box1.pack_end(progressbar, False, False, 0) + cls.nbButton.insert_page(box1, label, 4) + cls.nbButton.next_page() + current_page_widget = cls.page.get_nth_page(cls.page.get_current_page()) + title_text = cls.page.get_tab_label_text(current_page_widget) + Window.set_title(title_text) + + @classmethod + def next_setup_page(cls): + page = cls.page.get_current_page() + if page == 0: + Button.next_button.show() + Button.next_button.set_sensitive(False) + Window.set_title(_("Network Setup")) + net_setup_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + net_setup_box.show() + model = cls.network_setup.get_model() + net_setup_box.pack_start(model, True, True, 0) + label = Gtk.Label(label=_("Network Setup")) + cls.page.insert_page(net_setup_box, label, 1) + cls.page.next_page() + cls.page.show_all() + if page == 1: + with open('/usr/home/ghostbsd/.xinitrc', 'w') as xinitrc: + xinitrc.writelines('gsettings set org.mate.SettingsDaemon.plugins.housekeeping active true &\n') + xinitrc.writelines('gsettings set org.mate.screensaver lock-enabled false &\n') + xinitrc.writelines('exec ck-launch-session mate-session\n') + Gtk.main_quit() + + @classmethod + def back_page(cls, _widget): + """Go back to the previous window.""" + current_page = cls.page.get_current_page() + if current_page == 1: + Button.hide_back() + if current_page == 2: + Button.hide_back() + elif current_page == 3: + Button.next_button.set_label(_("Next")) + cls.page.prev_page() + new_page = cls.page.get_current_page() + if current_page == 2 and new_page == 1: + # Reset partition configuration data when going back + InstallationData.destroy = {} + InstallationData.delete = [] + InstallationData.create = [] + InstallationData.new_partition = [] + InstallationData.scheme = "" + InstallationData.disk = "" + InstallationData.slice = "" + InstallationData.zfs_config_data = [] + InstallationData.ufs_config_data = [] + # Clean up temporary directory if it exists + DiskPartition.create_partition_database() + Button.next_button.set_sensitive(True) diff --git a/install_station/language.py b/install_station/language.py new file mode 100644 index 0000000..77e48ac --- /dev/null +++ b/install_station/language.py @@ -0,0 +1,143 @@ +from gi.repository import Gtk, Gdk +import os +from install_station.system_calls import ( + language_dictionary, + localize_system +) +from install_station.data import InstallationData, tmp, logo +import gettext + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +# Ensure temp directory exists +if not os.path.exists(tmp): + os.makedirs(tmp) + +lang_dictionary = language_dictionary() +# Text to be replace be multiple language file. +welltext = _("Select the language you want to use with GhostBSD.") + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class Language: + _instance = None + + def __new__(cls): + """Implement singleton pattern.""" + if cls._instance is None: + cls._instance = super(Language, cls).__new__(cls) + cls._instance._initialized = False + return cls._instance + + def __init__(self): + """Initialize only once.""" + if not self._initialized: + self._language = None + self._vbox1 = None + self._initialize_ui() + self._initialized = True + + # On selection it overwrite the default language file. + def _language_selection(self, tree_selection): + model, treeiter = tree_selection.get_selected() + if treeiter is not None: + value = model[treeiter][0] + self._language = lang_dictionary[value] + InstallationData.language = value + InstallationData.language_code = lang_dictionary[value] + return + + def _setup_language_columns(self, treeView): + cell = Gtk.CellRendererText() + column = Gtk.TreeViewColumn(None, cell, text=0) + column_header = Gtk.Label(label=_('Language')) + column_header.set_use_markup(True) + column_header.show() + column.set_widget(column_header) + column.set_sort_column_id(0) + treeView.append_column(column) + return + + # Initial definition. + def _initialize_ui(self): + # Add a Default vertical box + self._vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + self._vbox1.show() + # Add a second vertical box + grid = Gtk.Grid() + title = Gtk.Label(label=_('Welcome To GhostBSD!'), name="Header") + title.set_property("height-request", 50) + self._vbox1.pack_start(title, False, False, 0) + self._vbox1.pack_start(grid, True, True, 0) + grid.set_row_spacing(10) + grid.set_column_spacing(3) + grid.set_column_homogeneous(True) + grid.set_row_homogeneous(True) + grid.set_margin_left(10) + grid.set_margin_right(10) + grid.set_margin_top(10) + grid.set_margin_bottom(10) + # Adding a Scrolling Window + sw = Gtk.ScrolledWindow() + sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) + sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) + # Adding a treestore and store language in it. + store = Gtk.TreeStore(str) + for line in lang_dictionary: + store.append(None, [line]) + treeview = Gtk.TreeView() + treeview.set_model(store) + treeview.set_rules_hint(True) + self._setup_language_columns(treeview) + tree_selection = treeview.get_selection() + tree_selection.set_mode(Gtk.SelectionMode.SINGLE) + tree_selection.connect("changed", self._language_selection) + sw.add(treeview) + sw.show() + grid.attach(sw, 1, 2, 1, 9) + # add text in a label. + vbox2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + vbox2.set_border_width(10) + vbox2.show() + wellcome_text = Gtk.Label(label=welltext) + wellcome_text.set_use_markup(True) + table = Gtk.Table() + table.attach(wellcome_text, 0, 1, 3, 4) + vbox2.pack_start(table, False, False, 5) + image = Gtk.Image() + image.set_from_file(logo) + image.show() + # grid.attach(self.wellcome, 1, 1, 3, 1) + vbox2.pack_start(image, True, True, 5) + grid.attach(vbox2, 2, 2, 2, 9) + grid.show() + + @classmethod + def get_model(cls): + return cls()._vbox1 + + @classmethod + def get_language(cls): + """Get the selected language.""" + return InstallationData.language_code or cls()._language + + def save_selection(self): + # Language is now saved in InstallationData automatically + pass + + @classmethod + def save_language(cls): + language_code = InstallationData.language_code or cls()._language + if language_code: + localize_system(language_code) \ No newline at end of file diff --git a/install_station/network_setup.py b/install_station/network_setup.py new file mode 100644 index 0000000..f0f3b26 --- /dev/null +++ b/install_station/network_setup.py @@ -0,0 +1,339 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk, Gdk, GLib, GdkPixbuf +import re +import _thread +from time import sleep +from NetworkMgr.net_api import ( + networkdictionary, + connectToSsid, + delete_ssid_wpa_supplicant_config, + nic_status +) +import gettext + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +logo = "/usr/local/lib/install-station/logo.png" +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class NetworkSetup: + _instance = None + + def __new__(cls, button3=None): + """Implement singleton pattern.""" + if cls._instance is None: + cls._instance = super(NetworkSetup, cls).__new__(cls) + cls._instance._initialized = False + return cls._instance + + @classmethod + def get_model(cls): + return cls().vbox1 + + @staticmethod + def wifi_stat(bar): + if bar > 75: + return 'nm-signal-100' + elif bar > 50: + return 'nm-signal-75' + elif bar > 25: + return 'nm-signal-50' + elif bar > 5: + return 'nm-signal-25' + else: + return 'nm-signal-00' + + def update_network_detection(self): + cards = self.network_info['cards'] + card_list = list(cards.keys()) + r = re.compile("wlan") + wlan_list = list(filter(r.match, card_list)) + wire_list = list(set(card_list).difference(wlan_list)) + cards = self.network_info['cards'] + if wire_list: + for card in wire_list: + if cards[card]['state']['connection'] == 'Connected': + + wire_text = _('Network card connected to the internet') + self.wire_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + print('Connected True') + self.next_button.set_sensitive(True) + break + else: + wire_text = _('Network card not connected to the internet') + self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + else: + wire_text = _('No network card detected') + self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + + self.wire_connection_label.set_label(wire_text) + + if wlan_list: + for wlan_card in wlan_list: + if cards[wlan_card]['state']['connection'] == 'Connected': + wifi_text = _('WiFi card detected and connected to an access point') + self.wifi_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + break + else: + wifi_text = _('WiFi card detected but not connected to an access point') + self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + else: + wifi_text = _("WiFi card not detected or not supported") + self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + + self.wifi_connection_label.set_label(wifi_text) + + def __init__(self, next_button=None): + """Initialize only once.""" + if not self._initialized: + self.next_button = next_button + self._initialize_ui() + self._initialized = True + + def _initialize_ui(self): + self.network_info = networkdictionary() + print(self.network_info) + self.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + self.vbox1.show() + title = Gtk.Label(label=_('Network Setup'), name="Header") + title.set_property("height-request", 50) + self.vbox1.pack_start(title, False, False, 0) + cards = self.network_info['cards'] + card_list = list(cards.keys()) + r = re.compile("wlan") + wlan_list = list(filter(r.match, card_list)) + wire_list = list(set(card_list).difference(wlan_list)) + + self.wire_connection_label = Gtk.Label() + self.wire_connection_label.set_xalign(0.01) + self.wire_connection_image = Gtk.Image() + self.wifi_connection_label = Gtk.Label() + self.wifi_connection_label.set_xalign(0.01) + self.wifi_connection_image = Gtk.Image() + + if wire_list: + for card in wire_list: + if cards[card]['state']['connection'] == 'Connected': + wire_text = _('Network card connected to the internet') + self.wire_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + print('Connected True') + self.next_button.set_sensitive(True) + break + else: + wire_text = _('Network card not connected to the internet') + self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + else: + wire_text = _('No network card detected') + self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + + self.wire_connection_label.set_label(wire_text) + wlan_card = "" + if wlan_list: + for wlan_card in wlan_list: + if cards[wlan_card]['state']['connection'] == 'Connected': + wifi_text = _('WiFi card detected and connected to an access point') + self.wifi_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + break + else: + wifi_text = _('WiFi card detected but not connected to an access point') + self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + else: + wifi_text = _('WiFi card not detected or not supported') + self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + + self.wifi_connection_label.set_label(wifi_text) + + self.connection_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=20) + if wlan_card: + # add a default card variable + sw = Gtk.ScrolledWindow() + sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) + sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) + self.store = Gtk.ListStore(GdkPixbuf.Pixbuf, str, str) + for ssid in self.network_info['cards'][wlan_card]['info']: + ssid_info = self.network_info['cards'][wlan_card]['info'][ssid] + bar = ssid_info[4] + stat = NetworkSetup.wifi_stat(bar) + pixbuf = Gtk.IconTheme.get_default().load_icon(stat, 32, 0) + self.store.append([pixbuf, ssid, f'{ssid_info}']) + treeview = Gtk.TreeView() + treeview.set_model(self.store) + treeview.set_rules_hint(True) + pixbuf_cell = Gtk.CellRendererPixbuf() + pixbuf_column = Gtk.TreeViewColumn('Stat', pixbuf_cell) + pixbuf_column.add_attribute(pixbuf_cell, "pixbuf", 0) + pixbuf_column.set_resizable(True) + treeview.append_column(pixbuf_column) + cell = Gtk.CellRendererText() + column = Gtk.TreeViewColumn('SSID', cell, text=1) + column.set_sort_column_id(1) + treeview.append_column(column) + tree_selection = treeview.get_selection() + tree_selection.set_mode(Gtk.SelectionMode.SINGLE) + tree_selection.connect("changed", self.wifi_setup, wlan_card) + sw.add(treeview) + self.connection_box.pack_start(sw, True, True, 50) + + main_grid = Gtk.Grid() + main_grid.set_row_spacing(10) + main_grid.set_column_spacing(10) + main_grid.set_column_homogeneous(True) + main_grid.set_row_homogeneous(True) + self.vbox1.pack_start(main_grid, True, True, 10) + main_grid.attach(self.wire_connection_image, 2, 1, 1, 1) + main_grid.attach(self.wire_connection_label, 3, 1, 8, 1) + main_grid.attach(self.wifi_connection_image, 2, 2, 1, 1) + main_grid.attach(self.wifi_connection_label, 3, 2, 8, 1) + main_grid.attach(self.connection_box, 1, 4, 10, 5) + + def wifi_setup(self, tree_selection, wifi_card): + model, treeiter = tree_selection.get_selected() + if treeiter is not None: + ssid = model[treeiter][1] + ssid_info = self.network_info['cards'][wifi_card]['info'][ssid] + caps = ssid_info[6] + print(ssid) # added the code to authenticate. + print(ssid_info) + if caps == 'E' or caps == 'ES': + if f'"{ssid}"' in open("/etc/wpa_supplicant.conf").read(): + self.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) + else: + NetworkSetup.open_wpa_supplicant(ssid) + self.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) + else: + if f'"{ssid}"' in open('/etc/wpa_supplicant.conf').read(): + self.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) + else: + self.authentication(ssid_info, wifi_card, False) + + def add_to_wpa_supplicant(self, _widget, ssid_info, card): + pwd = self.password.get_text() + NetworkSetup.setup_wpa_supplicant(ssid_info[0], ssid_info, pwd) + _thread.start_new_thread( + self.try_to_connect_to_ssid, + (ssid_info[0], ssid_info, card) + ) + self.window.hide() + + def try_to_connect_to_ssid(self, ssid, ssid_info, card): + if connectToSsid(ssid, card) is False: + delete_ssid_wpa_supplicant_config(ssid) + GLib.idle_add(self.restart_authentication, ssid_info, card) + else: + for _ in list(range(30)): + if nic_status(card) == 'associated': + self.network_info = networkdictionary() + print(self.network_info) + self.update_network_detection() + break + sleep(1) + else: + delete_ssid_wpa_supplicant_config(ssid) + GLib.idle_add(self.restart_authentication, ssid_info, card) + return + + def restart_authentication(self, ssid_info, card): + self.authentication(ssid_info, card, True) + + def on_check(self, widget): + if widget.get_active(): + self.password.set_visibility(True) + else: + self.password.set_visibility(False) + + def authentication(self, ssid_info, card, failed): + self.window = Gtk.Window() + self.window.set_title(_("Wi-Fi Network Authentication Required")) + self.window.set_border_width(0) + self.window.set_size_request(500, 200) + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + self.window.add(box1) + box1.show() + box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + box2.set_border_width(10) + box1.pack_start(box2, True, True, 0) + box2.show() + # Creating MBR or GPT drive + if failed: + title = _("{ssid} Wi-Fi Network Authentication failed").format(ssid=ssid_info[0]) + else: + title = _("Authentication required by {ssid} Wi-Fi Network").format(ssid=ssid_info[0]) + label = Gtk.Label(label=f"{title}") + label.set_use_markup(True) + pwd_label = Gtk.Label(label=_("Password:")) + self.password = Gtk.Entry() + self.password.set_visibility(False) + check = Gtk.CheckButton(label=_("Show password")) + check.connect("toggled", self.on_check) + table = Gtk.Table(1, 2, True) + table.attach(label, 0, 5, 0, 1) + table.attach(pwd_label, 1, 2, 2, 3) + table.attach(self.password, 2, 4, 2, 3) + table.attach(check, 2, 4, 3, 4) + box2.pack_start(table, False, False, 0) + box2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) + box2.set_border_width(5) + box1.pack_start(box2, False, True, 0) + box2.show() + # Add create_scheme button + cancel = Gtk.Button(stock=Gtk.STOCK_CANCEL) + cancel.connect("clicked", self.close) + connect = Gtk.Button(stock=Gtk.STOCK_CONNECT) + connect.connect("clicked", self.add_to_wpa_supplicant, ssid_info, card) + table = Gtk.Table(1, 2, True) + table.set_col_spacings(10) + table.attach(connect, 4, 5, 0, 1) + table.attach(cancel, 3, 4, 0, 1) + box2.pack_end(table, True, True, 5) + self.window.show_all() + return 'Done' + + def close(self, _widget): + self.window.hide() + + @staticmethod + def setup_wpa_supplicant(ssid, ssid_info, pwd): + if 'RSN' in ssid_info[-1]: + ws = '\nnetwork={' + ws += f'\n ssid="{ssid}"' + ws += '\n key_mgmt=WPA-PSK' + ws += '\n proto=RSN' + ws += f'\n psk="{pwd}"\n' + ws += '}\n' + elif 'WPA' in ssid_info[-1]: + ws = '\nnetwork={' + ws += f'\n ssid="{ssid}"' + ws += '\n key_mgmt=WPA-PSK' + ws += '\n proto=WPA' + ws += f'\n psk="{pwd}"\n' + ws += '}\n' + else: + ws = '\nnetwork={' + ws += f'\n ssid="{ssid}"' + ws += '\n key_mgmt=NONE' + ws += '\n wep_tx_keyidx=0' + ws += f'\n wep_key0={pwd}\n' + ws += '}\n' + wsf = open("/etc/wpa_supplicant.conf", 'a') + wsf.writelines(ws) + wsf.close() + + @staticmethod + def open_wpa_supplicant(ssid): + ws = '\nnetwork={' + ws += f'\n ssid={ssid}' + ws += '\n key_mgmt=NONE\n}\n' + with open("/etc/wpa_supplicant.conf", 'a') as wsf: + wsf.writelines(ws) diff --git a/install_station/partition.py b/install_station/partition.py new file mode 100644 index 0000000..eb2d3e8 --- /dev/null +++ b/install_station/partition.py @@ -0,0 +1,1309 @@ +"""Disk partition management module for GhostBSD Install Station. + +Provides disk partitioning functionality including detection, creation, deletion +of partitions for GPT/MBR schemes with ZFS support and manages the partition database. +""" +import re +from time import sleep +from subprocess import Popen, PIPE, STDOUT, call +from install_station.data import query, zfs_datasets, InstallationData + +# Define required file paths + + +def get_disk_from_partition(part): + """Extract the disk name from a partition identifier. + + Args: + part (str): Partition identifier (e.g., 'ada0p1', 'ada0s1a') + + Returns: + str: Disk name (e.g., 'ada0') + """ + if set("p") & set(part): + return part.partition('p')[0] + else: + return part.partition('s')[0] + + +def slice_number(part): + """Extract the slice/partition number from a partition identifier. + + Args: + part (str): Partition identifier (e.g., 'ada0p1', 'ada0s1') + + Returns: + int: Slice/partition number + """ + if set("p") & set(part): + return int(part.partition('p')[2]) + else: + return int(part.partition('s')[2]) + + +def find_next_partition(partition_name, partition_list): + """Find the next available partition name with sequential numbering. + + Args: + partition_name (str): Base partition name (e.g., 'freespace', 'ada0p') + partition_list (list): List of existing partition names + + Returns: + str: Next available partition name (e.g., 'freespace1', 'ada0p2') + """ + for num in range(1, 10000): + if f'{partition_name}{num}' not in partition_list: + return f'{partition_name}{num}' + + +def disk_list(): + """Get a list of available disk devices on the system. + + Queries the FreeBSD kernel for available disks and filters out + optical drives (CD/DVD devices). + + Returns: + list: Sorted list of disk device names (e.g., ['ada0', 'ada1']) + """ + disk_popen = Popen( + 'sysctl -n kern.disks', + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True, + close_fds=True + ) + disks = disk_popen.stdout.read() + cleaned_disk = re.sub(r'acd[0-9]*|cd[0-9]*|scd[0-9]*', '', disks) + return sorted(cleaned_disk.split()) + + +def device_model(disk): + """Get the model description of a disk device. + + Args: + disk (str): Disk device name (e.g., 'ada0') + + Returns: + str: Device model description + """ + device_popen = Popen( + f"diskinfo -v {disk} 2>/dev/null | grep 'Disk descr' | cut -d '#' -f1 | tr -d '\t'", + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True, + close_fds=True + ) + return device_popen.stdout.read().strip() + + +def disk_size(disk): + """Get the size of a disk device. + + Args: + disk (str): Disk device name (e.g., 'ada0') + + Returns: + str: Disk size information + """ + disk_size_output = Popen( + f"{query}/disk-info.sh {disk}", + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True, + stderr=STDOUT, + close_fds=True + ) + return disk_size_output.stdout.readlines()[0].rstrip() + + +def get_scheme(disk): + """Detect the partition scheme of a disk device. + + Args: + disk (str): Disk device name (e.g., 'ada0') + + Returns: + str: Partition scheme ('GPT', 'MBR', or empty if none) + """ + scheme_output = Popen( + f"{query}/detect-sheme.sh {disk}", + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True, + stderr=STDOUT, + close_fds=True + ) + return scheme_output.stdout.readlines()[0].rstrip() + + +class DiskPartition: + """Main class for disk partition detection and database management. + + This class provides methods to scan disk devices, detect existing partitions, + and maintain an in-memory database of partition information for both GPT and + MBR partition schemes. + + Attributes: + disk_database (dict): In-memory database of disk and partition information + query_partition (str): Path to disk partition query script + """ + disk_database: dict = {} + + query_partition = f'{query}/disk-part.sh' + + @classmethod + def mbr_partition_slice_db(cls, disk): + """Create database of MBR slices and their partitions. + + Args: + disk (str): Disk device name (e.g., 'ada0') + + Returns: + dict: Database of slices with their partition information + """ + partition_output = Popen( + f'{cls.query_partition} {disk}', + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True + ) + slice_db = {} + free_num = 1 + for line in partition_output.stdout: + info = line.strip().split() + slice_name = info[0] + if 'freespace' in line: + slice_name = f'freespace{free_num}' + free_num += 1 + part_db = cls.mbr_partition_db(info[0]) + part_list = [] if part_db is None else list(part_db.keys()) + partitions = { + 'name': slice_name, + 'size': info[1].partition('M')[0], + 'mount-point': '', + 'file-system': info[2], + 'stat': None, + 'partitions': part_db, + 'partition-list': part_list + } + slice_db[slice_name] = partitions + return slice_db + + @classmethod + def mbr_partition_db(cls, partition_slice): + """Create database of partitions within an MBR slice. + + Args: + partition_slice (str): Slice identifier (e.g., 'ada0s1') + + Returns: + dict or None: Database of partitions within the slice, or None for freespace + """ + if 'freespace' in partition_slice: + return None + else: + slice_output = Popen( + f'{query}/disk-label.sh {partition_slice}', + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True + ) + partition_db = {} + alph = ord('a') + free_num = 1 + for line in slice_output.stdout: + info = line.strip().split() + if 'freespace' in line: + partition_name = f'freespace{free_num}' + free_num += 1 + else: + letter = chr(alph) + partition_name = f'{partition_slice}{letter}' + alph += 1 + partitions = { + 'name': partition_name, + 'size': info[0].partition('M')[0], + 'mount-point': '', + 'file-system': info[2], + 'stat': None, + } + partition_db[partition_name] = partitions + if not partition_db: + return None + return partition_db + + @classmethod + def gpt_partition_db(cls, disk): + """Create database of GPT partitions on a disk. + + Args: + disk (str): Disk device name (e.g., 'ada0') + + Returns: + dict: Database of GPT partitions + """ + partition_output = Popen( + f'{cls.query_partition} {disk}', + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True + ) + partition_db = {} + free_num = 1 + for line in partition_output.stdout: + info = line.strip().split() + slice_name = info[0] + if 'freespace' in line: + slice_name = f'freespace{free_num}' + free_num += 1 + partitions = { + 'name': info[0], + 'size': info[1].partition('M')[0], + 'mount-point': '', + 'file-system': info[2], + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + partition_db[slice_name] = partitions + return partition_db + + @classmethod + def create_partition_database(cls): + """Scan all disks and create comprehensive partition database. + + This method queries all available disks, detects their partition schemes, + and builds a complete database of disk and partition information. + """ + # if os.path.exists(disk_db_file): + # os.remove(disk_db_file) + # drives_database = open(disk_db_file, 'wb') + disk_db = {} + for disk in disk_list(): + disk_info_db = {} + disk_info_db.setdefault('scheme', get_scheme(disk)) + if disk_info_db['scheme'] == "GPT": + part_db = cls.gpt_partition_db(disk) + elif disk_info_db['scheme'] == "MBR": + part_db = cls.mbr_partition_slice_db(disk) + else: + disk_info_db['scheme'] = None + part_db = {} + part_list = [] if part_db is None else list(part_db.keys()) + disk_info_db['size'] = disk_size(disk) + disk_info_db['device_model'] = device_model(disk) + disk_info_db['partitions'] = part_db + disk_info_db['partition-list'] = part_list + disk_info_db['stat'] = None + disk_db[disk] = disk_info_db + cls.disk_database = disk_db + + @classmethod + def get_disk_database(cls): + """Get the current disk database. + + Returns: + dict: Current disk and partition database + """ + return cls.disk_database.copy() + + @classmethod + def how_partition(cls, disk): + """Get the number of partitions on a disk. + + Args: + disk (str): Disk device name + + Returns: + int: Number of partitions on the disk + """ + return len(cls.disk_database[disk]['partitions']) + + @classmethod + def set_disk_scheme(cls, scheme, disk, size): + """Set or update the partitioning scheme for a disk. + + Args: + scheme (str or None): Partition scheme ('GPT' or 'MBR') + disk (str): Disk device name + size (str): Disk size + """ + if scheme is None: + cls.disk_database[disk]['scheme'] = 'GPT' + else: + cls.disk_database[disk]['scheme'] = scheme + # this need to data and not use pickle with open. + InstallationData.destroy[disk] = scheme + if not cls.disk_database[disk]['partitions']: + cls.disk_database[disk]['partitions'] = { + 'freespace1': { + 'name': 'freespace1', + 'size': size, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + } + cls.disk_database[disk]['partition-list'] = [ + 'freespace1' + ] + + +class DeletePartition: + """Class for handling partition deletion operations. + + This class provides methods to delete partitions from both GPT and MBR + partition schemes, handling the consolidation of free space and updating + the partition database accordingly. + """ + + def find_if_label(self, part): + """Check if a partition identifier represents a BSD label. + + Args: + part (str): Partition identifier + + Returns: + bool: True if the partition has a BSD label suffix (letter) + """ + last = part[-1] + if re.search('[a-z]', last): + return True + return False + + def delete_label(self, drive, label, partition, path): + """Delete a BSD label partition and consolidate free space. + + Args: + drive (str): Disk device name + label (str): Label partition to delete + partition (str): Parent slice containing the label + path (list): Path information for partition location + """ + disk_partitions = DiskPartition.disk_database[drive]['partitions'][partition] + partitions_info = disk_partitions['partitions'] + label_list = disk_partitions['partition-list'] + last_list_number = len(label_list) - 1 + store_list_number = path[2] + size_free = int(partitions_info[label]['size']) + + if last_list_number == store_list_number and len(label_list) > 1: + label_behind = label_list[store_list_number - 1] + if 'freespace' in label_behind: + size_free += int(partitions_info[label_behind]['size']) + label_list.remove(label) + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'][label_behind] = { + 'name': label_behind, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + else: + free_name = find_next_partition('freespace', label_list) + label_list[store_list_number] = free_name + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + elif store_list_number == 0 and len(label_list) > 1: + label_after = label_list[store_list_number + 1] + if 'freespace' in label_after: + size_free += int(partitions_info[label_after]['size']) + label_list.remove(label) + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'][label_after] = { + 'name': label_after, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + else: + free_name = find_next_partition('freespace', label_list) + label_list[store_list_number] = free_name + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + elif len(label_list) > 2: + label_behind = label_list[store_list_number - 1] + label_after = label_list[store_list_number + 1] + size_behind = int(partitions_info[label_behind]['size']) + size_after = int(partitions_info[label_after]['size']) + if ('freespace' in label_behind + and 'freespace' in label_after): + size_free += size_behind + size_after + label_list.remove(label) + label_list.remove(label_after) + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'].pop(label_after, None) + disk_partitions['partitions'][label_behind] = { + 'name': label_behind, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + elif 'freespace' in label_behind: + size_free += size_behind + label_list.remove(label) + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'][label_behind] = { + 'name': label_behind, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + elif 'freespace' in label_after: + size_free += size_after + label_list.remove(label) + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'].pop(label_after, None) + disk_partitions['partitions'][label_after] = { + 'name': label_after, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + else: + free_name = find_next_partition('freespace', label_list) + label_list[store_list_number] = free_name + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + else: + free_name = find_next_partition('freespace', label_list) + label_list[store_list_number] = free_name + disk_partitions['partitions'].pop(label, None) + disk_partitions['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_partitions['partition-list'] = label_list + + # Data is already updated in DiskPartition.disk_database - no need to save to file + remaining_partition = [] + for part in label_list: + partitions_info = disk_partitions['partitions'] + if part in partitions_info: + size = partitions_info[part]['size'] + mount_point = partitions_info[part]['mount-point'] + file_system = partitions_info[part]['file-system'] + stat = partitions_info[part]['stat'] + if stat == 'New': + remaining_partition.append(f'{file_system} {size} {mount_point}\n') + InstallationData.new_partition = remaining_partition + + def __init__(self, part, path): + """Initialize partition deletion operation. + + Args: + part (str): Partition identifier to delete + path (list): Path information for partition location + """ + drive = get_disk_from_partition(part) + if part == "freespace": + pass + elif self.find_if_label(part) is True: + spart = part[:-1] + self.delete_label(drive, part, spart, path) + else: + self.delete_slice(drive, part, path) + + def delete_slice(self, drive, partition, path): + """Delete a slice/partition and consolidate adjacent free space. + + Args: + drive (str): Disk device name + partition (str): Partition to delete + path (list): Path information for partition location + """ + disk_data = DiskPartition.disk_database + partitions_info = disk_data[drive]['partitions'] + partition_list = disk_data[drive]['partition-list'] + last_list_number = len(partition_list) - 1 + store_list_number = path[1] + size_free = int(partitions_info[partition]['size']) + if last_list_number == store_list_number and len(partition_list) > 1: + partition_behind = partition_list[store_list_number - 1] + if 'freespace' in partition_behind: + size_free += int(partitions_info[partition_behind]['size']) + partition_list.remove(partition) + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][partition_behind] = { + 'name': partition_behind, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + else: + free_name = find_next_partition('freespace', partition_list) + partition_list[store_list_number] = free_name + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + elif store_list_number == 0 and len(partition_list) > 1: + partition_after = partition_list[store_list_number + 1] + if 'freespace' in partition_after: + size_free += int(partitions_info[partition_after]['size']) + partition_list.remove(partition) + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][partition_after] = { + 'name': partition_after, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + else: + free_name = find_next_partition('freespace', partition_list) + partition_list[store_list_number] = free_name + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + elif len(partition_list) > 2: + partition_behind = partition_list[store_list_number - 1] + partition_after = partition_list[store_list_number + 1] + size_behind = int(partitions_info[partition_behind]['size']) + size_after = int(partitions_info[partition_after]['size']) + if ('freespace' in partition_behind + and 'freespace' in partition_after): + size_free += size_behind + size_after + partition_list.remove(partition) + partition_list.remove(partition_after) + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][partition_behind] = { + 'name': partition_behind, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + elif 'freespace' in partition_behind: + size_free += size_behind + partition_list.remove(partition) + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][partition_behind] = { + 'name': partition_behind, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + elif 'freespace' in partition_after: + size_free += size_after + partition_list.remove(partition) + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][partition_after] = { + 'name': partition_after, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + else: + free_name = find_next_partition('freespace', partition_list) + partition_list[store_list_number] = free_name + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + else: + free_name = find_next_partition('freespace', partition_list) + partition_list[store_list_number] = free_name + disk_data[drive]['partitions'].pop(partition, None) + disk_data[drive]['partitions'][free_name] = { + 'name': free_name, + 'size': size_free, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + disk_data[drive]['partition-list'] = partition_list + + # if delete file exist check if slice is in the list + + if partition not in InstallationData.delete: + InstallationData.delete.append(partition) + + if "p" in partition and InstallationData.new_partition: + remaining_partition = [] + for part in partition_list: + partitions_info = disk_data[drive]['partitions'] + size = partitions_info[part]['size'] + mount_point = partitions_info[part]['mount-point'] + file_system = partitions_info[part]['file-system'] + stat = partitions_info[part]['stat'] + if stat == 'New': + remaining_partition.append(f'{file_system} {size} {mount_point}\n') + InstallationData.new_partition = remaining_partition + + +class AutoFreeSpace: + """Class for automatic partition creation in free space. + + This class handles automatic partitioning of free space on disks, + creating appropriate partition layouts for both MBR and GPT schemes + with support for different filesystems. + """ + + def create_mbr_partiton(self, drive, size, path, fs): + """Create MBR partitions automatically in free space. + + Creates a BSD slice with root and swap partitions. + + Args: + drive (str): Disk device name + size (str): Available size in MB + path (list): Path information for partition location + fs (str): Filesystem type ('ZFS' or 'UFS') + """ + # remove 1M to size to avoid no space left + main_size = int(size) - 1 + InstallationData.disk = drive + + InstallationData.scheme = 'partscheme=MBR' + + disk_db = DiskPartition.disk_database + slice_list = disk_db[drive]['partition-list'] + store_list_number = path[1] + main_slice = find_next_partition(f'{drive}s', slice_list) + slice_list[store_list_number] = main_slice + disk_db[drive]['partitions'][main_slice] = { + 'name': main_slice, + 'size': size, + 'mount-point': 'none', + 'file-system': 'BSD', + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + disk_db[drive]['partition-list'] = slice_list + + InstallationData.slice = main_slice.replace(drive, "") + + root_size = int(main_size) + swap_size = 2048 + root_size -= swap_size + + part_list = disk_db[drive]['partitions'][main_slice]['partition-list'] + + if fs == "ZFS": + layout = zfs_datasets + else: + layout = '/' + + root_part = f'{main_slice}a' + part_list.append(root_part) + disk_db[drive]['partitions'][main_slice]['partitions'][root_part] = { + 'name': root_part, + 'size': root_size, + 'mount-point': layout, + 'file-system': fs, + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + + swap_part = f'{main_slice}b' + part_list.append(swap_part) + disk_db[drive]['partitions'][main_slice]['partitions'][swap_part] = { + 'name': swap_part, + 'size': swap_size, + 'mount-point': 'none', + 'file-system': 'SWAP', + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + + disk_db[drive]['partitions'][main_slice]['partition-list'] = part_list + + # Data is already updated in DiskPartition.disk_database - no need to save to file + + # Add new partitions to InstallationData + InstallationData.new_partition = [ + f'{fs} {root_size} {layout}\n', + f'SWAP {swap_size} none\n' + ] + + # Add to create list for partition creation operations + InstallationData.create.append([main_slice, main_size]) + + def __init__(self, path, size, fs, efi_exist, disk, scheme): + """Initialize automatic partition creation. + + Args: + path (list): Path information for partition location + size (str): Available size in MB + fs (str): Filesystem type ('ZFS' or 'UFS') + efi_exist (bool): Whether EFI partition already exists + disk (str): Disk device name + scheme (str): Partition scheme ('GPT' or 'MBR') + """ + self.bios_type = bios_or_uefi() + if scheme == "GPT": + self.create_gpt_partiton(disk, size, path, fs, efi_exist) + elif scheme == "MBR": + self.create_mbr_partiton(disk, size, path, fs) + + def create_gpt_partiton(self, drive, size, path, fs, efi_exist): + """Create GPT partitions automatically in free space. + + Creates boot (if needed), root, and swap partitions with appropriate + sizing for the target filesystem. + + Args: + drive (str): Disk device name + size (str): Available size in MB + path (list): Path information for partition location + fs (str): Filesystem type ('ZFS' or 'UFS') + efi_exist (bool): Whether EFI partition already exists + """ + # remove 1M to size to avoid no space left + main_size = int(size) - 1 + InstallationData.disk = drive + InstallationData.scheme = 'partscheme=GPT' + root_size = int(main_size) + swap_size = 2048 + root_size -= int(swap_size) + if self.bios_type == "UEFI" and efi_exist is False: + boot_size = 256 + else: + boot_size = 1 if self.bios_type == "BIOS" else 0 + boot_name = 'UEFI' if self.bios_type == "UEFI" else 'BOOT' + root_size -= boot_size + disk_data = DiskPartition.disk_database + partition_list = disk_data[drive]['partition-list'] + store_list_number = path[1] + if boot_size != 0: + boot_partition = find_next_partition(f'{drive}p', partition_list) + partition_list[store_list_number] = boot_partition + store_list_number += 1 + disk_data[drive]['partitions'][boot_partition] = { + 'name': boot_partition, + 'size': boot_size, + 'mount-point': 'none', + 'file-system': boot_name, + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + # Add boot partition to create list + InstallationData.create.append([boot_partition, boot_size]) + + if fs == "ZFS": + layout = zfs_datasets + else: + layout = '/' + + root_partition = find_next_partition(f'{drive}p', partition_list) + if store_list_number == path[1]: + partition_list[store_list_number] = root_partition + else: + partition_list.insert(store_list_number, root_partition) + store_list_number += 1 + disk_data[drive]['partitions'][root_partition] = { + 'name': root_partition, + 'size': root_size, + 'mount-point': layout, + 'file-system': fs, + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + + InstallationData.slice = root_partition.replace(drive, '') + + swap_partition = find_next_partition(f'{drive}p', partition_list) + partition_list.insert(store_list_number, swap_partition) + disk_data[drive]['partitions'][swap_partition] = { + 'name': swap_partition, + 'size': swap_size, + 'mount-point': 'none', + 'file-system': 'SWAP', + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + + disk_data[drive]['partition-list'] = partition_list + + # Data is already updated in DiskPartition.disk_database - no need to save to file + + # Add new partitions to InstallationData + new_partitions = [] + if self.bios_type == "UEFI" and efi_exist is False: + new_partitions.append(f'UEFI {boot_size} none\n') + elif self.bios_type == "BIOS": + new_partitions.append(f'BOOT {boot_size} none\n') + new_partitions.extend([ + f'{fs} {root_size} {layout}\n', + f'SWAP {swap_size} none\n' + ]) + InstallationData.new_partition = new_partitions + + +class CreateLabel: + """Class for creating BSD label partitions within MBR slices. + + This class handles the creation of individual partitions (labels) + within BSD slices in MBR partition schemes. + """ + def __init__(self, path, drive, main_slice, size_left, create_size, + mountpoint, fs): + """Create a new BSD label partition within a slice. + + Args: + path (list): Path information for partition location + drive (str): Disk device name + main_slice (str): Parent slice identifier + size_left (int): Remaining size after partition creation + create_size (int): Size of new partition in MB + mountpoint (str): Mount point for the partition + fs (str): Filesystem type + """ + InstallationData.disk = drive + InstallationData.scheme = 'partscheme=MBR' + InstallationData.slice = main_slice.replace(drive, "") + disk_db = DiskPartition.disk_database + store_list_number = path[2] + part_list = disk_db[drive]['partitions'][main_slice]['partition-list'] + alpha_num = ord('a') + alpha_num += store_list_number + letter = chr(alpha_num) + if fs == "ZFS": + mountpoint = zfs_datasets + + partition = f'{main_slice}{letter}' + part_list[store_list_number] = partition + disk_db[drive]['partitions'][main_slice]['partitions'][partition] = { + 'name': partition, + 'size': create_size, + 'mount-point': mountpoint, + 'file-system': fs, + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + if size_left != 0: + free = find_next_partition('freespace', part_list) + part_list.append(free) + disk_db[drive]['partitions'][main_slice]['partitions'][free] = { + 'name': free, + 'size': size_left, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + + disk_db[drive]['partitions'][main_slice]['partition-list'] = part_list + + # Data is already updated in DiskPartition.disk_database - no need to save to file + + # Update InstallationData with new partition information + new_partitions = [] + for partition_name in part_list: + drive_part = disk_db[drive]['partitions'] + part_info = drive_part[main_slice]['partitions'][partition_name] + if part_info['stat'] == 'New': + partition_text = f'{part_info["file-system"]} ' \ + f'{part_info["size"]} ' \ + f'{part_info["mount-point"]}\n' + new_partitions.append(partition_text) + + InstallationData.new_partition = new_partitions + + +# class modifyLabel(): + +# def __init__(self, path, size_left, create_size, mount_point, fs, +# data, disk): +# if not os.path.exists(disk_file): +# file_disk = open(disk_file, 'w') +# file_disk.writelines('%s\n' % disk) +# file_disk.close() +# sl = path[1] + 1 +# lv = path[2] +# write_scheme = open(scheme_file, 'w') +# write_scheme.writelines('partscheme=MBR') +# write_scheme.close() +# write_slice = open(slice_file, 'w') +# write_slice.writelines('s%s\n' % sl) +# write_slice.close() +# alph = ord('a') +# alph += lv +# letter = chr(alph) +# llist = [] +# mllist = label_query(disk + 's%s' % sl) +# plf = open(partitiondb + disk + 's%s' % sl, 'wb') +# if size_left == 0: +# create_size -= 1 +# llist.extend(([disk + 's%s' % sl + letter, create_size, mount_point, +# fs])) +# mllist[lv] = llist +# llist = [] +# if size_left > 0: +# llist.extend((['freespace', size_left, '', ''])) +# mllist.append(llist) +# pickle.dump(mllist, plf) +# plf.close() +# llist = open(partitiondb + disk + 's%s' % sl, 'rb') +# sabeltlist = pickle.load(llist) +# write_partition = open(partition_label_file, 'w') +# for partlist in sabeltlist: +# if partlist[2] != '': +# write_partition.writelines('%s %s %s\n' % (partlist[3], +# partlist[1], partlist[2])) +# write_partition.close() + + +class CreateSlice: + """Class for creating MBR slices (BSD partitions). + + This class handles the creation of BSD slices within MBR partition + schemes, which can then contain multiple BSD label partitions. + """ + + def __init__(self, create_size, size_left, path, drive): + """Create a new MBR slice. + + Args: + create_size (int): Size of new slice in MB + size_left (int): Remaining size after slice creation + path (list): Path information for slice location + drive (str): Disk device name + """ + InstallationData.disk = drive + InstallationData.scheme = 'partscheme=MBR' + + disk_db = DiskPartition.disk_database + store_list_number = path[1] + partition_list = disk_db[drive]['partition-list'] + + partition = find_next_partition(f'{drive}s', partition_list) + + partition_list[store_list_number] = partition + # Store slice partition + disk_db[drive]['partitions'][partition] = { + 'name': partition, + 'size': create_size, + 'mount-point': 'none', + 'file-system': 'BSD', + 'stat': 'New', + 'partitions': {}, + 'partition-list': ['freespace1'] + } + # Store freespace for partition partition + disk_db[drive]['partitions'][partition]['partitions']['freespace1'] = { + 'name': 'freespace1', + 'size': create_size, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + # Store freespace if some left + if size_left != 0: + free_name = find_next_partition('freespace', partition_list) + partition_list.append(free_name) + disk_db[drive]['partitions'][free_name] = { + 'name': free_name, + 'size': size_left, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + + disk_db[drive]['partition-list'] = partition_list + + # Data is already updated in DiskPartition.disk_database - no need to save to file + + InstallationData.slice = partition.replace(drive, '') + + # Add to create list for partition creation operations + InstallationData.create.append([partition, create_size]) + + +class CreatePartition(): + """Class for creating GPT partitions. + + This class handles the creation of individual partitions within + GPT partition schemes, supporting various filesystem types and + mount points. + """ + def __init__(self, path, drive, size_left, create_size, mount_point, fs): + """Create a new GPT partition. + + Args: + path (list): Path information for partition location + drive (str): Disk device name + size_left (int): Remaining size after partition creation + create_size (int): Size of new partition in MB + mount_point (str): Mount point for the partition + fs (str): Filesystem type + """ + InstallationData.disk = drive + + InstallationData.scheme = 'partscheme=GPT' + + if fs == "ZFS": + mount_point = zfs_datasets + + disk_data = DiskPartition.disk_database + store_list_number = path[1] + partition_list = disk_data[drive]['partition-list'] + + partition = find_next_partition(f'{drive}p', partition_list) + + partition_list[store_list_number] = partition + # Store slice partition + disk_data[drive]['partitions'][partition] = { + 'name': partition, + 'size': create_size, + 'mount-point': mount_point, + 'file-system': fs, + 'stat': 'New', + 'partitions': {}, + 'partition-list': [] + } + # Store freespace if some left + if size_left != 0: + free_name = find_next_partition('freespace', partition_list) + partition_list.append(free_name) + disk_data[drive]['partitions'][free_name] = { + 'name': free_name, + 'size': size_left, + 'mount-point': '', + 'file-system': 'none', + 'stat': None, + 'partitions': {}, + 'partition-list': [] + } + + disk_data[drive]['partition-list'] = partition_list + + # Data is already updated in DiskPartition.disk_database - no need to save to file + + if mount_point == '/' or fs == "ZFS": + InstallationData.slice = partition.replace(drive, '') + + if fs == "UEFI" or fs == "BOOT": + # Add to create list for partition creation operations + InstallationData.create.append([partition, create_size]) + + # Update InstallationData with new partition information + new_partitions = [] + for partition_name in partition_list: + partition_info = disk_data[drive]['partitions'][partition_name] + if partition_info['stat'] == 'New': + partition_text = f'{partition_info["file-system"]} ' \ + f'{partition_info["size"]} ' \ + f'{partition_info["mount-point"]}\n' + new_partitions.append(partition_text) + + InstallationData.new_partition = new_partitions + + +def delete_partition(): + """Execute physical deletion of partitions marked for deletion. + + Iterates through partitions marked for deletion in InstallationData + and removes them from the disk using FreeBSD gpart commands. + + Raises: + RuntimeError: If no partitions are marked for deletion + """ + if InstallationData.delete: + for partition in InstallationData.delete: + num = slice_number(partition) + drive = get_disk_from_partition(partition) + call(f"sudo zpool labelclear -f {partition}", shell=True) + sleep(1) + call(f'sudo gpart delete -i {num} {drive}', shell=True) + sleep(1) + else: + raise RuntimeError('No partitions to delete') + + +def destroy_partition(): + """Destroy and recreate partition tables on disks. + + Completely destroys existing partition tables and creates new ones + with the specified scheme for disks marked for destruction. + + Raises: + RuntimeError: If no disks are marked for destruction + """ + if InstallationData.destroy: + for drive, scheme in InstallationData.destroy.items(): + # Destroy the disk geom + gpart_destroy = f"sudo gpart destroy -F {drive}" + call(gpart_destroy, shell=True) + sleep(1) + clear_drive = f"sudo dd if=/dev/zero of={drive} bs=1m count=1" + call(clear_drive, shell=True) + sleep(1) + call(f'sudo gpart create -s {scheme} {drive}', shell=True) + sleep(1) + else: + raise RuntimeError('No disks to destroy') + + +def bios_or_uefi(): + """Detect the system boot method (BIOS or UEFI). + + Returns: + str: 'BIOS' or 'UEFI' depending on the system boot method + """ + cmd = "sysctl -n machdep.bootmethod" + output1 = Popen(cmd, shell=True, stdout=PIPE, + universal_newlines=True, close_fds=True) + return output1.stdout.readlines()[0].rstrip() + + +def add_partition(): + """Execute physical creation of partitions marked for creation. + + Creates actual partitions on disk using FreeBSD gpart commands + for all partitions marked for creation in InstallationData. + Handles different partition types (EFI, BIOS boot, FreeBSD, etc.). + + Raises: + RuntimeError: If no partitions are marked for creation + """ + if InstallationData.create: + boot = InstallationData.boot + for partition_info in InstallationData.create: + part = partition_info[0] + size = int(partition_info[1]) + drive = get_disk_from_partition(part) + sl = slice_number(part) + if set("p") & set(part): + if bios_or_uefi() == 'UEFI': + cmd = f'sudo gpart add -a 4k -s {size}M -t efi ' \ + f'-i {sl} {drive}' + call(cmd, shell=True) + sleep(1) + call(f'sudo zpool labelclear -f {drive}p{sl}', shell=True) + cmd2 = f'sudo newfs_msdos -F 16 {drive}p{sl}' + call(cmd2, shell=True) + else: + if boot == "grub": + cmd = f'sudo gpart add -a 4k -s {size}M -t ' \ + 'bios-boot -i {sl} {drive}' + else: + # freebsd-boot partition must never be larger + # than 512B blocks. + cmd = 'sudo gpart add -a 4k -s 512 -t ' \ + f'freebsd-boot -i {sl} {drive}' + call(cmd, shell=True) + call(f'sudo zpool labelclear -f {drive}p{sl}', shell=True) + elif set("s") & set(part): + cmd = f'sudo gpart add -a 4k -s {size}M -t freebsd ' \ + f'-i {sl} {drive}' + call(cmd, shell=True) + sleep(2) + else: + raise RuntimeError('No partitions to create') diff --git a/install_station/system_calls.py b/install_station/system_calls.py new file mode 100644 index 0000000..3ddca90 --- /dev/null +++ b/install_station/system_calls.py @@ -0,0 +1,160 @@ +#!/usr/bin/env python + +import re +import os +from subprocess import Popen, run, PIPE +from install_station.data import pc_sysinstall + + +def replace_pattern(current, new, file): + parser_file = open(file, 'r').read() + parser_patched = re.sub(current, new, parser_file) + save_parser_file = open(file, 'w') + save_parser_file.writelines(parser_patched) + save_parser_file.close() + + +def language_dictionary(): + langs = Popen(f'{pc_sysinstall} query-langs', shell=True, stdin=PIPE, + stdout=PIPE, universal_newlines=True, + close_fds=True).stdout.readlines() + dictionary = {} + for line in langs: + lang_list = line.rstrip() + lang_name = lang_list.partition(' ')[2] + lang_code = lang_list.partition(' ')[0] + dictionary[lang_name] = lang_code + return dictionary + + +def localize_system(locale): + slick_greeter = "/usr/local/share/xgreeters/slick-greeter.desktop" + gtk_greeter = "/usr/local/share/xgreeters/lightdm-gtk-greeter.desktop" + replace_pattern('lang=C', f'lang={locale}', '/etc/login.conf') + replace_pattern('en_US', locale, '/etc/profile') + replace_pattern('en_US', locale, '/usr/share/skel/dot.profile') + + if os.path.exists(slick_greeter): + replace_pattern( + 'Exec=slick-greeter', + f'Exec=env LANG={locale}.UTF-8 slick-greeter', + slick_greeter + ) + elif os.path.exists(gtk_greeter): + replace_pattern( + 'Exec=lightdm-gtk-greete', + f'Exec=env LANG={locale}.UTF-8 lightdm-gtk-greeter', + gtk_greeter + ) + + +def keyboard_dictionary(): + xkeyboard_layouts = Popen(f'{pc_sysinstall} xkeyboard-layouts', shell=True, + stdout=PIPE, + universal_newlines=True).stdout.readlines() + dictionary = {} + for line in xkeyboard_layouts: + keyboard_list = list(filter(None, line.rstrip().split(' '))) + kb_name = keyboard_list[1].strip() + kb_layouts = keyboard_list[0].strip() + kb_variant = None + dictionary[kb_name] = {'layout': kb_layouts, 'variant': kb_variant} + + xkeyboard_variants = Popen(f'{pc_sysinstall} xkeyboard-variants', + shell=True, stdout=PIPE, + universal_newlines=True).stdout.readlines() + for line in xkeyboard_variants: + xkb_variant = line.rstrip() + kb_name = xkb_variant.partition(':')[2].strip() + keyboard_list = list(filter + (None, xkb_variant.partition(':')[0].split())) + kb_layouts = keyboard_list[1].strip() + kb_variant = keyboard_list[0].strip() + dictionary[kb_name] = {'layout': kb_layouts, 'variant': kb_variant} + return dictionary + + +def keyboard_models(): + xkeyboard_models = Popen(f'{pc_sysinstall} xkeyboard-models', shell=True, + stdout=PIPE, + universal_newlines=True).stdout.readlines() + dictionary = {} + for line in xkeyboard_models: + kbm_name = line.rstrip().partition(' ')[2] + kbm_code = line.rstrip().partition(' ')[0] + dictionary[kbm_name] = kbm_code + return dictionary + + +def change_keyboard(kb_layout, kb_variant=None, kb_model=None): + if kb_variant is None and kb_model is not None: + run(f"setxkbmap -layout {kb_layout} -model {kb_model}", shell=True) + elif kb_variant is not None and kb_model is None: + run(f"setxkbmap -layout {kb_layout} -variant {kb_variant}", shell=True) + elif kb_variant is not None and kb_model is not None: + set_kb_cmd = f"setxkbmap -layout {kb_layout} -variant {kb_variant} " \ + f"-model {kb_model}" + run(set_kb_cmd, shell=True) + else: + run(f"setxkbmap -layout {kb_layout}", shell=True) + + +def set_keyboard(kb_layout, kb_variant=None, kb_model=None): + pass + + +def timezone_dictionary(): + tz_list = Popen(f'{pc_sysinstall} list-tzones', shell=True, + stdout=PIPE, universal_newlines=True).stdout.readlines() + city_list = [] + dictionary = {} + last_continent = '' + for zone in tz_list: + zone_list = zone.partition(':')[0].rstrip().split('/') + continent = zone_list[0] + if continent != last_continent: + city_list = [] + if len(zone_list) == 3: + city = zone_list[1] + '/' + zone_list[2] + elif len(zone_list) == 4: + city = zone_list[1] + '/' + zone_list[2] + '/' + zone_list[3] + else: + city = zone_list[1] + city_list.append(city) + dictionary[continent] = city_list + last_continent = continent + return dictionary + + +def zfs_disk_query(): + disk_output = Popen( + f"{pc_sysinstall} disk-list", + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True, + close_fds=True + ) + return disk_output.stdout.readlines() + + +def zfs_disk_size_query(disk): + disk_info_output = Popen( + f"{pc_sysinstall} disk-info {disk}", + shell=True, + stdin=PIPE, + stdout=PIPE, + universal_newlines=True, + close_fds=True + ) + return disk_info_output.stdout.readlines()[3].partition('=')[2] + + +def set_admin_user(username, name, password, shell, homedir, hostname): + # Set Root user + run(f"echo '{password}' | pw usermod -n root -h 0", shell=True) + cmd = f"echo '{password}' | pw useradd {username} -c {name} -h 0" \ + f" -s {shell} -m -d {homedir} -g wheel,operator" + run(cmd, shell=True) + run(f"sysrc hostname={hostname}", shell=True) + run(f"hostname {hostname}", shell=True) diff --git a/install_station/use_zfs.py b/install_station/use_zfs.py new file mode 100644 index 0000000..92d8688 --- /dev/null +++ b/install_station/use_zfs.py @@ -0,0 +1,624 @@ +from gi.repository import Gtk, Gdk +import gettext +from install_station.common import password_strength +from install_station.data import InstallationData, zfs_datasets, be_name, logo +from install_station.partition import bios_or_uefi +from install_station.system_calls import ( + zfs_disk_query, + zfs_disk_size_query, +) +from install_station.interface_controller import Button + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class ZFS: + """ + Utility class for ZFS configuration and disk management following the utility class pattern. + + This class provides a GTK+ interface for configuring ZFS installations including: + - Disk selection and validation + - Pool type configuration (stripe, mirror, RAIDZ1/2/3) + - Partition scheme selection (GPT/MBR) + - Disk encryption setup with password verification + - ZFS pool name configuration + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the InstallationData system for configuration persistence. + """ + # Class variables instead of instance variables + zfs_disk_list = [] + pool_type = 'stripe' + scheme = 'GPT' + zpool = False + disk_encrypt = False + mirror = 'single disk' + vbox1 = None + + # UI elements as class variables + pool = None + password = None + repassword = None + mirrorTips = None + strenght_label = None + img = None + check_cell = None + store = None + + @classmethod + def save_selection(cls): + """ + Save the current ZFS configuration to InstallationData. + + Validates required fields and generates ZFS configuration data including: + - Pool name and type (stripe, mirror, RAIDZ1/2/3) + - Disk partitioning scheme and encryption settings + - Boot environment and dataset configuration + + Raises: + ValueError: If required fields are missing or invalid + """ + # Validate required fields are populated + if not cls.zfs_disk_list: + raise ValueError("No disks selected for ZFS configuration") + + if cls.zpool and not cls.pool.get_text().strip(): + raise ValueError("Pool name cannot be empty when zpool is enabled") + + if cls.disk_encrypt and not cls.password.get_text().strip(): + raise ValueError("Password cannot be empty when disk encryption is enabled") + + size = int(cls.zfs_disk_list[0].partition('-')[2].rstrip()) - 512 + swap = 0 + zfs_num = size - swap + if cls.disk_encrypt is True: + dgeli = '.eli' + else: + dgeli = '' + + # Store configuration data in InstallationData instead of writing to file + InstallationData.zfs_config_data = [] + + if cls.zpool is True: + InstallationData.zfs_config_data.append(f"zpoolName={cls.pool.get_text()}\n") + else: + InstallationData.zfs_config_data.append("#zpoolName=None\n") + InstallationData.zfs_config_data.append(f"beName={be_name}\n") + InstallationData.zfs_config_data.append('ashift=12\n\n') + disk = cls.zfs_disk_list[0].partition('-')[0].rstrip() + InstallationData.zfs_config_data.append(f'disk0={disk}\n') + InstallationData.zfs_config_data.append('partition=ALL\n') + InstallationData.zfs_config_data.append(f'partscheme={cls.scheme}\n') + InstallationData.zfs_config_data.append('commitDiskPart\n\n') + if cls.pool_type == 'none': + pool_disk = '\n' + else: + zfs_disk = cls.zfs_disk_list + disk_len = len(zfs_disk) - 1 + num = 1 + mirror_dsk = '' + while disk_len != 0: + mirror_dsk += ' ' + zfs_disk[num].partition('-')[0].rstrip() + print(mirror_dsk) + num += 1 + disk_len -= 1 + pool_disk = f' ({cls.pool_type}:{mirror_dsk})\n' + if bios_or_uefi() == "UEFI": + zfs_num = zfs_num - 100 + else: + zfs_num = zfs_num - 1 + # adding zero to use remaining space + zfs_part = f'disk0-part=ZFS{dgeli} {zfs_num} {zfs_datasets}{pool_disk}' + InstallationData.zfs_config_data.append(zfs_part) + if swap != 0: + InstallationData.zfs_config_data.append('disk0-part=swap 0 none\n') + if cls.disk_encrypt is True: + InstallationData.zfs_config_data.append(f'encpass={cls.password.get_text()}\n') + else: + InstallationData.zfs_config_data.append('#encpass=None\n') + InstallationData.zfs_config_data.append('commitDiskLabel\n') + + @classmethod + def scheme_selection(cls, combobox): + """ + Handle partition scheme selection from combo box. + + Args: + combobox: ComboBox widget containing scheme options (GPT/MBR) + """ + model = combobox.get_model() + index = combobox.get_active() + data = model[index][0] + cls.scheme = data.partition(':')[0] + + @classmethod + def mirror_selection(cls, combobox): + """ + Handle pool type selection and update UI accordingly. + + Sets the pool type (stripe, mirror, RAIDZ1/2/3) and updates the tip text + and next button sensitivity based on the number of selected disks. + + Args: + combobox: ComboBox widget containing pool type options + """ + model = combobox.get_model() + index = combobox.get_active() + data = model[index][0] # Get the internal value (English) + cls.mirror = data + if cls.mirror == "1+ disks Stripe": + cls.pool_type = 'stripe' + cls.mirrorTips.set_text( + _("Please select 1 or more drive for stripe (select the smallest disk first)")) + if len(cls.zfs_disk_list) >= 1: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "2+ disks Mirror": + cls.pool_type = 'mirror' + mir_msg1 = _("Please select 2 drive for mirroring (select the smallest disk first)") + cls.mirrorTips.set_text(mir_msg1) + if len(cls.zfs_disk_list) >= 2: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "3 disks RAIDZ1": + cls.pool_type = 'raidz1' + cls.mirrorTips.set_text(_("Please select 3 drive for RAIDZ1 (select the smallest disk first)")) + if len(cls.zfs_disk_list) == 3: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "4 disks RAIDZ2": + cls.pool_type = 'raidz2' + cls.mirrorTips.set_text(_("Please select 4 drive for RAIDZ2 (select the smallest disk first)")) + if len(cls.zfs_disk_list) == 4: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "5 disks RAIDZ3": + cls.pool_type = 'raidz3' + cls.mirrorTips.set_text(_("Please select 5 drive for RAIDZ3 (select the smallest disk first)")) + if len(cls.zfs_disk_list) == 5: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + + @classmethod + def on_check_poll(cls, widget): + """ + Handle custom pool name checkbox toggle. + + Enables or disables the pool name entry field based on checkbox state. + + Args: + widget: CheckButton widget for pool name enable/disable + """ + if widget.get_active(): + cls.pool.set_sensitive(True) + cls.zpool = True + else: + cls.pool.set_sensitive(False) + cls.zpool = False + + @classmethod + def on_check_encrypt(cls, widget): + """ + Handle disk encryption checkbox toggle. + + Enables or disables password fields and updates next button sensitivity + based on encryption state and current disk selection. + + Args: + widget: CheckButton widget for disk encryption enable/disable + """ + if widget.get_active(): + cls.password.set_sensitive(True) + cls.repassword.set_sensitive(True) + cls.disk_encrypt = True + Button.next_button.set_sensitive(False) + else: + cls.password.set_sensitive(False) + cls.repassword.set_sensitive(False) + cls.disk_encrypt = False + if cls.mirror == "1+ disks Stripe": + if len(cls.zfs_disk_list) >= 1: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "2+ disks Mirror": + if len(cls.zfs_disk_list) >= 2: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "3 disks RAIDZ1": + if len(cls.zfs_disk_list) == 3: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "4 disks RAIDZ2": + if len(cls.zfs_disk_list) == 4: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "5 disks RAIDZ3": + if len(cls.zfs_disk_list) == 5: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + + @classmethod + def initialize(cls): + """ + Initialize the ZFS configuration UI following the utility class pattern. + + Creates the main interface including: + - Disk selection tree view with checkboxes + - Pool type selection (stripe, mirror, RAIDZ1/2/3) + - Pool name configuration + - Partition scheme selection (GPT/MBR) + - Disk encryption options with password fields + + This method is called automatically by get_model() when the interface is first accessed. + """ + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + # Chose disk + sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True) + sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) + sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) + cls.store = Gtk.TreeStore(str, str, str, 'gboolean') + for disk in zfs_disk_query(): + dsk = disk.partition(':')[0].rstrip() + dsk_name = disk.partition(':')[2].rstrip() + dsk_size = zfs_disk_size_query(dsk).rstrip() + cls.store.append(None, [dsk, dsk_size, dsk_name, False]) + treeview = Gtk.TreeView() + treeview.set_model(cls.store) + treeview.set_rules_hint(True) + cls.check_cell = Gtk.CellRendererToggle() + cls.check_cell.set_property('activatable', True) + cls.check_cell.connect('toggled', cls.col1_toggled_cb, cls.store) + cell = Gtk.CellRendererText() + column = Gtk.TreeViewColumn(None, cell, text=0) + column_header = Gtk.Label(label=_('Disk')) + column_header.set_use_markup(True) + column_header.show() + column.set_widget(column_header) + column.set_sort_column_id(0) + cell2 = Gtk.CellRendererText() + column2 = Gtk.TreeViewColumn(None, cell2, text=0) + column_header2 = Gtk.Label(label=_('Size(MB)')) + column_header2.set_use_markup(True) + column_header2.show() + column2.set_widget(column_header2) + cell3 = Gtk.CellRendererText() + column3 = Gtk.TreeViewColumn(None, cell3, text=0) + column_header3 = Gtk.Label(label=_('Name')) + column_header3.set_use_markup(True) + column_header3.show() + column3.set_widget(column_header3) + column1 = Gtk.TreeViewColumn(_("Check"), cls.check_cell) + column1.add_attribute(cls.check_cell, "active", 3) + column.set_attributes(cell, text=0) + column2.set_attributes(cell2, text=1) + column3.set_attributes(cell3, text=2) + treeview.append_column(column1) + treeview.append_column(column) + treeview.append_column(column2) + treeview.append_column(column3) + tree_selection = treeview.get_selection() + tree_selection.set_mode(Gtk.SelectionMode.SINGLE) + sw.add(treeview) + sw.show() + cls.mirrorTips = Gtk.Label(label=_('Please select one drive')) + cls.mirrorTips.set_justify(Gtk.Justification.LEFT) + cls.mirrorTips.set_alignment(0.01, 0.5) + # Mirror, raidz and stripe + cls.mirror = 'none' + mirror_label = Gtk.Label(label=_('Pool Type')) + mirror_label.set_use_markup(True) + mirror_box = Gtk.ComboBox() + mirror_store = Gtk.ListStore(str, str) # value, display_text + mirror_store.append(["1+ disks Stripe", _("1+ disks Stripe")]) + mirror_store.append(["2+ disks Mirror", _("2+ disks Mirror")]) + mirror_store.append(["3 disks RAIDZ1", _("3 disks RAIDZ1")]) + mirror_store.append(["4 disks RAIDZ2", _("4 disks RAIDZ2")]) + mirror_store.append(["5 disks RAIDZ3", _("5 disks RAIDZ3")]) + mirror_box.set_model(mirror_store) + renderer = Gtk.CellRendererText() + mirror_box.pack_start(renderer, True) + mirror_box.add_attribute(renderer, "text", 1) # Display column 1 (translated text) + mirror_box.connect('changed', cls.mirror_selection) + mirror_box.set_active(0) + + # Pool Name + cls.zpool = False + pool_name_label = Gtk.Label(label=_('Pool Name')) + pool_name_label.set_use_markup(True) + cls.pool = Gtk.Entry() + cls.pool.set_text('zroot') + # Creating MBR or GPT drive + scheme_label = Gtk.Label(label='Partition Scheme') + scheme_label.set_use_markup(True) + # Adding a combo box to selecting MBR or GPT sheme. + cls.scheme = 'GPT' + shemebox = Gtk.ComboBoxText() + shemebox.append_text("GPT") + shemebox.append_text("MBR") + shemebox.connect('changed', cls.scheme_selection) + shemebox.set_active(0) + if bios_or_uefi() == "UEFI": + shemebox.set_sensitive(False) + else: + shemebox.set_sensitive(True) + # GELI Disk encryption + cls.disk_encrypt = False + encrypt_check = Gtk.CheckButton(label=_("Encrypt Disk")) + encrypt_check.connect("toggled", cls.on_check_encrypt) + encrypt_check.set_sensitive(True) + # password + cls.passwd_label = Gtk.Label(label=_("Password")) + cls.password = Gtk.Entry() + cls.password.set_sensitive(False) + cls.password.set_visibility(False) + cls.password.connect("changed", password_strength) + cls.strenght_label = Gtk.Label() + cls.strenght_label.set_alignment(0.1, 0.5) + cls.vpasswd_label = Gtk.Label(label=_("Verify it")) + cls.repassword = Gtk.Entry() + cls.repassword.set_sensitive(False) + cls.repassword.set_visibility(False) + cls.repassword.connect("changed", cls.password_verification) + # set image for password matching + cls.img = Gtk.Image() + cls.img.set_alignment(0.2, 0.5) + # table = Gtk.Table(12, 12, True) + grid = Gtk.Grid() + grid.set_row_spacing(10) + # grid.set_column_homogeneous(True) + # grid.set_row_homogeneous(True) + # grid.attach(Title, 1, 1, 10, 1) + grid.attach(mirror_label, 1, 2, 1, 1) + grid.attach(mirror_box, 2, 2, 1, 1) + grid.attach(pool_name_label, 7, 2, 2, 1) + grid.attach(cls.pool, 9, 2, 2, 1) + grid.attach(cls.mirrorTips, 1, 3, 8, 1) + # grid.attach(zfs4kcheck, 9, 3, 2, 1) + grid.attach(sw, 1, 4, 10, 3) + # grid.attach(scheme_label, 1, 9, 1, 1) + # grid.attach(shemebox, 2, 9, 1, 1) + # grid.attach(cls.swap_encrypt_check, 9, 15, 11, 12) + # grid.attach(swap_mirror_check, 9, 15, 11, 12) + # grid.attach(encrypt_check, 2, 8, 2, 1) + # grid.attach(cls.passwd_label, 1, 9, 1, 1) + # grid.attach(cls.password, 2, 9, 2, 1) + # grid.attach(cls.strenght_label, 4, 9, 2, 1) + # grid.attach(cls.vpasswd_label, 1, 10, 1, 1) + # grid.attach(cls.repassword, 2, 10, 2, 1) + # grid.attach(cls.img, 4, 10, 2, 1) + cls.vbox1.pack_start(grid, True, True, 10) + return + + @classmethod + def get_model(cls): + """ + Return the GTK widget model for the ZFS configuration interface. + + Creates and initializes the UI if it doesn't exist yet. + + Returns: + Gtk.Box: The main container widget for the ZFS configuration interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 + + @classmethod + def check_if_small_disk(cls, size): + """ + Check if any selected disk is larger than the specified size. + + Used to enforce the requirement that the smallest disk must be selected first + for ZFS pool configurations. + + Args: + size: Size in MB to compare against selected disks + + Returns: + bool: True if any selected disk is larger than the specified size + """ + if len(cls.zfs_disk_list) != 0: + for line in cls.zfs_disk_list: + if int(line.partition('-')[2]) > int(size): + return True + else: + return False + else: + return False + + @classmethod + def col1_toggled_cb(cls, _cell, path, model): + """ + Handle disk selection checkbox toggle events. + + Manages the disk selection list and updates next button sensitivity + based on pool type requirements. Enforces the rule that the smallest + disk must be selected first. + + Args: + _cell: CellRendererToggle that was clicked (unused) + path: TreePath of the toggled row + model: TreeStore model containing disk data + + Returns: + bool: Always returns True to indicate the event was handled + """ + model[path][3] = not model[path][3] + if model[path][3] is False: + cls.zfs_disk_list.remove(model[path][0] + "-" + model[path][1]) + if cls.mirror == "1+ disks Stripe": + if len(cls.zfs_disk_list) >= 1: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "2+ disks Mirror": + if len(cls.zfs_disk_list) >= 2: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "3 disks RAIDZ1": + if len(cls.zfs_disk_list) == 3: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "4 disks RAIDZ2": + if len(cls.zfs_disk_list) == 4: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "5 disks RAIDZ3": + if len(cls.zfs_disk_list) == 5: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + else: + if cls.check_if_small_disk(model[path][1]) is False: + cls.zfs_disk_list.extend([model[path][0] + "-" + model[path][1]]) + if cls.mirror == "1+ disks Stripe": + if len(cls.zfs_disk_list) >= 1: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "2+ disks Mirror": + if len(cls.zfs_disk_list) >= 2: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "3 disks RAIDZ1": + if len(cls.zfs_disk_list) == 3: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "4 disks RAIDZ2": + if len(cls.zfs_disk_list) == 4: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "5 disks RAIDZ3": + if len(cls.zfs_disk_list) == 5: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + else: + cls.check_cell.set_sensitive(False) + cls.small_disk_warning() + + print(cls.zfs_disk_list) + return True + + @classmethod + def small_disk_warning(cls): + """ + Display a warning dialog when disks are selected out of size order. + + Shows a dialog informing the user that the smallest disk must be + selected first and offers to reset all selections. + """ + window = Gtk.Window() + window.set_title(_("Warning")) + window.set_border_width(0) + # window.set_size_request(480, 200) + window.set_icon_from_file(logo) + box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + window.add(box1) + box1.show() + box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + box2.set_border_width(10) + box1.pack_start(box2, True, True, 0) + box2.show() + warning_text = _("Smallest disk need to be SELECTED first!\n") + warning_text += _("All the disk selected will reset.") + label = Gtk.Label(label=warning_text) + # Add button + box2.pack_start(label, True, True, 0) + bbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) + bbox.set_border_width(5) + button = Gtk.Button(stock=Gtk.STOCK_OK) + button.connect("clicked", cls.resset_selection, window) + bbox.add(button) + box2.pack_end(bbox, True, True, 5) + window.show_all() + + @classmethod + def resset_selection(cls, _widget, window): + """ + Reset all disk selections and close the warning dialog. + + Clears the disk selection list and unchecks all checkboxes in the tree view. + + Args: + _widget: Button widget that triggered the reset (unused) + window: Warning dialog window to close + """ + cls.zfs_disk_list = [] + rows = len(cls.store) + for row in range(0, rows): + cls.store[row][3] = False + row += 1 + cls.check_cell.set_sensitive(True) + window.hide() + + @classmethod + def password_verification(cls, _widget): + """ + Verify that password and confirmation password fields match. + + Updates the verification image and next button sensitivity based on + password match status and current disk selection requirements. + + Args: + _widget: Entry widget that triggered the verification (unused) + """ + if cls.password.get_text() == cls.repassword.get_text(): + cls.img.set_from_stock(Gtk.STOCK_YES, 5) + if cls.mirror == "1+ disks Stripe": + if len(cls.zfs_disk_list) >= 1: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "2+ disks Mirror": + if len(cls.zfs_disk_list) >= 2: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "3 disks RAIDZ1": + if len(cls.zfs_disk_list) == 3: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "4 disks RAIDZ2": + if len(cls.zfs_disk_list) == 4: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + elif cls.mirror == "5 disks RAIDZ3": + if len(cls.zfs_disk_list) == 5: + Button.next_button.set_sensitive(True) + else: + Button.next_button.set_sensitive(False) + else: + cls.img.set_from_stock(Gtk.STOCK_NO, 5) + Button.next_button.set_sensitive(False) diff --git a/install_station/welcome_live.py b/install_station/welcome_live.py new file mode 100644 index 0000000..a19b97f --- /dev/null +++ b/install_station/welcome_live.py @@ -0,0 +1,293 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk, Gdk, GdkPixbuf +import gettext +from install_station.system_calls import language_dictionary +from install_station.interface_controller import Interface +from install_station.data import InstallationData +from install_station.window import Window + +gettext.bindtextdomain('install-station', '/usr/local/share/locale') +gettext.textdomain('install-station') +_ = gettext.gettext + +lang_dictionary = language_dictionary() + +Messages = _("""To run GhostBSD without installing, select "Try GhostBSD." + +To install GhostBSD on your computer hard disk drive, click "Install GhostBSD." + +Note: Language selection only works when selecting "Try GhostBSD." + When installing GhostBSD, the installation program is only in English.""") + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class Welcome: + """ + Utility class for the welcome screen and initial mode selection following the utility class pattern. + + This class provides a GTK+ interface for the initial GhostBSD welcome screen including: + - Language selection from available system languages + - Mode selection between "Install GhostBSD" and "Try GhostBSD" + - Visual elements with images and instructional text + - Integration with InstallationData for persistent configuration + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the Interface controller for navigation flow. + """ + # Class variables instead of instance variables + what = None + language = None + install_ghostbsd = None + try_ghostbsd = None + vbox1 = None + + @classmethod + def language_selection(cls, tree_selection): + """ + Handle language selection from the treeview. + + Extracts the selected language from the tree view and updates both + class variables and InstallationData with the language name and code. + Also updates the UI text to reflect the new language selection. + + Args: + tree_selection: TreeSelection widget containing the user's language choice + """ + model, tree_iter = tree_selection.get_selected() + if tree_iter is not None: + value = model[tree_iter][0] + language_code = lang_dictionary[value] + cls.language = language_code + InstallationData.language = value + InstallationData.language_code = language_code + print(f"Language selected: {value} ({language_code})") + + # Update gettext to use the new language + import os + os.environ['LANGUAGE'] = language_code + gettext.bindtextdomain('install-station', '/usr/local/share/locale') + gettext.textdomain('install-station') + + # Update the UI text with new translations + cls.update_ui_text() + return + + @classmethod + def update_ui_text(cls): + """ + Update all UI text elements with new translations after language change. + """ + # Reload the gettext function to pick up new locale + _ = gettext.gettext + + # Update UI elements if they exist + if hasattr(cls, 'install_button') and cls.install_button: + cls.install_button.set_label(_('Install GhostBSD')) + + if hasattr(cls, 'try_button') and cls.try_button: + cls.try_button.set_label(_('Try GhostBSD')) + + if hasattr(cls, 'text_label') and cls.text_label: + cls.text_label.set_text(_("""To run GhostBSD without installing, select "Try GhostBSD." + + +To install GhostBSD on your computer hard disk drive, click "Install GhostBSD." + +Note: Language selection only works when selecting "Try GhostBSD." + When installing GhostBSD, the installation program is only in English.""")) + + if hasattr(cls, 'language_column_header') and cls.language_column_header: + cls.language_column_header.set_text(_('Language')) + + Window.set_title(_("Welcome to GhostBSD")) + + @classmethod + def language_columns(cls, treeview): + """ + Configure the language selection treeview with appropriate columns. + + Creates a single column with a "Language" header for displaying + available languages in the tree view. + + Args: + treeview: TreeView widget to configure with language column + """ + cell = Gtk.CellRendererText() + column = Gtk.TreeViewColumn(None, cell, text=0) + column_header = Gtk.Label(label=_('Language')) + column_header.set_use_markup(True) + column_header.show() + column.set_widget(column_header) + # Store reference for updating + cls.language_column_header = column_header + column.set_sort_column_id(0) + treeview.append_column(column) + + @classmethod + def save_selection(cls): + """ + Save the current language selection. + + This method is maintained for compatibility but language selection + is now automatically saved to InstallationData when chosen. + """ + # Language is now saved in InstallationData automatically + pass + + @classmethod + def install_system(cls, _widget): + """ + Handle "Install GhostBSD" button click. + + Sets the installation mode to 'install' and navigates to the + installation workflow pages. + + Args: + _widget: Button widget that triggered the action (unused) + """ + cls.what = 'install' + InstallationData.install_mode = 'install' + Interface.next_install_page() + + @classmethod + def try_system(cls, _widget): + """ + Handle "Try GhostBSD" button click. + + Sets the installation mode to 'try' and navigates to the + live system setup pages (typically network configuration). + + Args: + _widget: Button widget that triggered the action (unused) + """ + cls.what = 'try' + InstallationData.install_mode = 'try' + Interface.next_setup_page() + + @classmethod + def get_what(cls): + """ + Get the current installation mode. + + Returns the installation mode from InstallationData if available, + otherwise falls back to the class variable. + + Returns: + str: Current installation mode ('install' or 'try') + """ + return InstallationData.install_mode or cls.what + + @classmethod + def initialize(cls): + """ + Initialize the welcome screen UI following the utility class pattern. + + Creates the main interface including: + - Language selection tree view on the left side + - Install and Try buttons with images on the right side + - Instructional text explaining the options + - Grid-based layout with proper spacing and margins + + This method is called automatically by get_model() when the interface is first accessed. + """ + cls.what = None + cls.language = None + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + main_grid = Gtk.Grid() + cls.vbox1.pack_start(main_grid, True, True, 0) + sw = Gtk.ScrolledWindow() + sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) + sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) + store = Gtk.TreeStore(str) + for line in lang_dictionary: + store.append(None, [line]) + treeview = Gtk.TreeView() + treeview.set_model(store) + treeview.set_rules_hint(True) + cls.language_columns(treeview) + tree_selection = treeview.get_selection() + tree_selection.set_mode(Gtk.SelectionMode.SINGLE) + tree_selection.connect("changed", cls.language_selection) + sw.add(treeview) + sw.show() + vbox2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + vbox2.set_border_width(10) + vbox2.show() + pix_buf1 = GdkPixbuf.Pixbuf().new_from_file_at_scale( + filename='/usr/local/lib/install-station/laptop.png', + width=190, + height=190, + preserve_aspect_ratio=True + ) + image1 = Gtk.Image.new_from_pixbuf(pix_buf1) + image1.show() + pix_buf2 = GdkPixbuf.Pixbuf().new_from_file_at_scale( + filename='/usr/local/lib/install-station/disk.png', + width=120, + height=120, + preserve_aspect_ratio=True) + image2 = Gtk.Image.new_from_pixbuf(pix_buf2) + image2.show() + install_button = Gtk.Button(label=_('Install GhostBSD'), image=image1, + image_position=2) + install_button.set_always_show_image(True) + install_button.connect("clicked", cls.install_system) + try_button = Gtk.Button(label=_('Try GhostBSD'), image=image2, + image_position=2) + try_button.set_always_show_image(True) + try_button.connect("clicked", cls.try_system) + text_label = Gtk.Label(label=Messages) + text_label.set_line_wrap(True) + + # Store references for updating + cls.install_button = install_button + cls.try_button = try_button + cls.text_label = text_label + right_grid = Gtk.Grid() + right_grid.set_row_spacing(10) + right_grid.set_column_spacing(2) + right_grid.set_column_homogeneous(True) + right_grid.set_row_homogeneous(True) + right_grid.set_margin_left(10) + right_grid.set_margin_right(10) + right_grid.set_margin_top(10) + right_grid.set_margin_bottom(10) + right_grid.attach(install_button, 1, 1, 1, 5) + right_grid.attach(try_button, 2, 1, 1, 5) + right_grid.attach(text_label, 1, 6, 2, 5) + main_grid.set_row_spacing(10) + main_grid.set_column_spacing(4) + main_grid.set_column_homogeneous(True) + main_grid.set_row_homogeneous(True) + main_grid.set_margin_left(10) + main_grid.set_margin_right(10) + main_grid.set_margin_top(10) + main_grid.set_margin_bottom(10) + main_grid.attach(sw, 1, 1, 1, 10) + main_grid.attach(right_grid, 2, 1, 3, 10) + main_grid.show() + + @classmethod + def get_model(cls): + """ + Return the GTK widget model for the welcome screen interface. + + Returns the main container widget that was created during initialization. + + Returns: + Gtk.Box: The main container widget for the welcome screen interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 diff --git a/install_station/window.py b/install_station/window.py new file mode 100644 index 0000000..3c6c097 --- /dev/null +++ b/install_station/window.py @@ -0,0 +1,49 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk + + +class Window: + window = Gtk.Window() + + @classmethod + def connect(cls, signal, callback): + return cls.window.connect(signal, callback) + + @classmethod + def set_border_width(cls, width): + return cls.window.set_border_width(width) + + @classmethod + def set_default_size(cls, width, height): + return cls.window.set_default_size(width, height) + + @classmethod + def set_size_request(cls, width, height): + return cls.window.set_size_request(width, height) + + @classmethod + def set_title(cls, title): + return cls.window.set_title(title) + + @classmethod + def set_icon_from_file(cls, filename): + return cls.window.set_icon_from_file(filename) + + @classmethod + def add(cls, widget): + return cls.window.add(widget) + + @classmethod + def show_all(cls): + return cls.window.show_all() + + @classmethod + def hide(cls): + """Hide the window.""" + return cls.window.hide() + + @classmethod + def __getattr__(cls, name): + """Fallback for any methods not explicitly defined.""" + return getattr(cls.window, name) diff --git a/po/POTFILES.in b/po/POTFILES.in new file mode 100644 index 0000000..43579f3 --- /dev/null +++ b/po/POTFILES.in @@ -0,0 +1,17 @@ +install-station +install_station/boot_manager.py +install_station/common.py +install_station/custom.py +install_station/data.py +install_station/end.py +install_station/error.py +install_station/install.py +install_station/install_type.py +install_station/interface_controller.py +install_station/language.py +install_station/network_setup.py +install_station/partition.py +install_station/system_calls.py +install_station/use_zfs.py +install_station/welcome_live.py +install_station/window.py \ No newline at end of file diff --git a/po/ar_SA.po b/po/ar_SA.po new file mode 100644 index 0000000..40568a5 --- /dev/null +++ b/po/ar_SA.po @@ -0,0 +1,364 @@ +# Arabic translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:27-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Arabic <(nothing)>\n" +"Language: ar_SA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/bg_BG.po b/po/bg_BG.po new file mode 100644 index 0000000..3a7131c --- /dev/null +++ b/po/bg_BG.po @@ -0,0 +1,365 @@ +# Bulgarian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Bulgarian \n" +"Language: bg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/ca_ES.po b/po/ca_ES.po new file mode 100644 index 0000000..a2c55dd --- /dev/null +++ b/po/ca_ES.po @@ -0,0 +1,365 @@ +# Catalan translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Catalan \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/cs_CZ.po b/po/cs_CZ.po new file mode 100644 index 0000000..f9c3e43 --- /dev/null +++ b/po/cs_CZ.po @@ -0,0 +1,365 @@ +# Czech translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Czech \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/da_DK.po b/po/da_DK.po new file mode 100644 index 0000000..c5bbf3a --- /dev/null +++ b/po/da_DK.po @@ -0,0 +1,365 @@ +# Danish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Danish \n" +"Language: da\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/de_DE.po b/po/de_DE.po new file mode 100644 index 0000000..419ab8d --- /dev/null +++ b/po/de_DE.po @@ -0,0 +1,365 @@ +# German translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:19-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: German \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/el_GR.po b/po/el_GR.po new file mode 100644 index 0000000..43ee5fb --- /dev/null +++ b/po/el_GR.po @@ -0,0 +1,365 @@ +# Greek translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Greek \n" +"Language: el\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/en_GB.po b/po/en_GB.po new file mode 100644 index 0000000..32d2fa8 --- /dev/null +++ b/po/en_GB.po @@ -0,0 +1,401 @@ +# English translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: English (British) <(nothing)>\n" +"Language: en_GB\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "Boot Option" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "Setup rEFInd boot manager" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "Setup FreeBSD boot manager" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "FreeBSD {loader} loader only" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "Installation Completed" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "Restart" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "Continue" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "Installation Error" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "Installation has failed!" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "GhostBSD issue system" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." + +#: install_station/error.py:47 +msgid "Ok" +msgstr "Ok" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "How do you want to install GhostBSD?" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "Creating ghostbsd_installation.cfg" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "Deleting partition" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "Creating disk partition" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "Creating new partitions" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "Installation in progress" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "Back" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "Cancel" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "Next" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "Welcome to GhostBSD" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "Button" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "Installation Types" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "Custom Configuration" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "ZFS Configuration" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "Install" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "Installation Progress" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "Progress Bar" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "Network Setup" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "Select the language you want to use with GhostBSD." + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "Language" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "Welcome To GhostBSD!" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "Network card connected to the internet" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "Network card not connected to the internet" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "No network card detected" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "WiFi card detected and connected to an access point" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "WiFi card detected but not connected to an access point" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "WiFi card not detected or not supported" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "Wi-Fi Network Authentication Required" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "{ssid} Wi-Fi Network Authentication failed" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "Authentication required by {ssid} Wi-Fi Network" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "Password:" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "Show password" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disc first)" +msgstr "" +"Please select 1 or more drive for stripe (select the smallest disc first)" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disc first)" +msgstr "Please select 2 drive for mirroring (select the smallest disc first)" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disc first)" +msgstr "Please select 3 drive for RAIDZ1 (select the smallest disc first)" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disc first)" +msgstr "Please select 4 drive for RAIDZ2 (select the smallest disc first)" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disc first)" +msgstr "Please select 5 drive for RAIDZ3 (select the smallest disc first)" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "Disc" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "Size(MB)" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "Name" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "Check" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "Please select one drive" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "Pool Type" + +#: install_station/use_zfs.py:335 +msgid "1+ discs Stripe" +msgstr "1+ discs Stripe" + +#: install_station/use_zfs.py:336 +msgid "2+ discs Mirror" +msgstr "2+ discs Mirror" + +#: install_station/use_zfs.py:337 +msgid "3 discs RAIDZ1" +msgstr "3 discs RAIDZ1" + +#: install_station/use_zfs.py:338 +msgid "4 discs RAIDZ2" +msgstr "4 discs RAIDZ2" + +#: install_station/use_zfs.py:339 +msgid "5 discs RAIDZ3" +msgstr "5 discs RAIDZ3" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "Pool Name" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disc" +msgstr "Encrypt Disc" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "Password" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "Verify it" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "Warning" + +#: install_station/use_zfs.py:552 +msgid "Smallest disc need to be SELECTED first!\n" +msgstr "Smallest disc need to be SELECTED first!\n" + +#: install_station/use_zfs.py:553 +msgid "All the disc selected will reset." +msgstr "All the disc selected will reset." + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disc drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation programme is only in English." +msgstr "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disc drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation programme is only in English." + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "Install GhostBSD" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "Try GhostBSD" + +#: install_station/welcome_live.py:101 +#, fuzzy +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disc drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation programme is only in English." +msgstr "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disc drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation programme is only in English." diff --git a/po/en_US.po b/po/en_US.po new file mode 100644 index 0000000..3cfbf2e --- /dev/null +++ b/po/en_US.po @@ -0,0 +1,401 @@ +# English translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:25-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: English\n" +"Language: en_US\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "Boot Option" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "Setup rEFInd boot manager" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "Setup FreeBSD boot manager" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "FreeBSD {loader} loader only" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "Installation Completed" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "Restart" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "Continue" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "Installation Error" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "Installation has failed!" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "GhostBSD issue system" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." + +#: install_station/error.py:47 +msgid "Ok" +msgstr "Ok" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "How do you want to install GhostBSD?" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "Creating ghostbsd_installation.cfg" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "Deleting partition" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "Creating disk partition" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "Creating new partitions" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "Installation in progress" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "Back" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "Cancel" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "Next" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "Welcome to GhostBSD" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "Button" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "Installation Types" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "Custom Configuration" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "ZFS Configuration" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "Install" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "Installation Progress" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "Progress Bar" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "Network Setup" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "Select the language you want to use with GhostBSD." + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "Language" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "Welcome To GhostBSD!" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "Network card connected to the internet" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "Network card not connected to the internet" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "No network card detected" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "WiFi card detected and connected to an access point" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "WiFi card detected but not connected to an access point" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "WiFi card not detected or not supported" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "Wi-Fi Network Authentication Required" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "{ssid} Wi-Fi Network Authentication failed" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "Authentication required by {ssid} Wi-Fi Network" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "Password:" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "Show password" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" +"Please select 1 or more drive for stripe (select the smallest disk first)" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "Please select 2 drive for mirroring (select the smallest disk first)" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "Please select 3 drive for RAIDZ1 (select the smallest disk first)" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "Please select 4 drive for RAIDZ2 (select the smallest disk first)" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "Please select 5 drive for RAIDZ3 (select the smallest disk first)" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "Disk" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "Size(MB)" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "Name" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "Check" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "Please select one drive" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "Pool Type" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "1+ disks Stripe" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "2+ disks Mirror" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "3 disks RAIDZ1" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "4 disks RAIDZ2" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "5 disks RAIDZ3" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "Pool Name" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "Encrypt Disk" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "Password" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "Verify it" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "Warning" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "Smallest disk need to be SELECTED first!\n" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "All the disk selected will reset." + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "Install GhostBSD" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "Try GhostBSD" + +#: install_station/welcome_live.py:101 +#, fuzzy +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." diff --git a/po/es_ES.po b/po/es_ES.po new file mode 100644 index 0000000..efa90a7 --- /dev/null +++ b/po/es_ES.po @@ -0,0 +1,365 @@ +# Spanish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:19-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Spanish \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/et_EE.po b/po/et_EE.po new file mode 100644 index 0000000..0286919 --- /dev/null +++ b/po/et_EE.po @@ -0,0 +1,365 @@ +# Estonian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Estonian \n" +"Language: et\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/fi_FI.po b/po/fi_FI.po new file mode 100644 index 0000000..4620e00 --- /dev/null +++ b/po/fi_FI.po @@ -0,0 +1,365 @@ +# Finnish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Finnish \n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/fr_CA.po b/po/fr_CA.po new file mode 100644 index 0000000..6f8b798 --- /dev/null +++ b/po/fr_CA.po @@ -0,0 +1,384 @@ +# French translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:35-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: French \n" +"Language: fr_CA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "Installation complétée" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "Redémarrer" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "Continuer" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "Erreur d'installation" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "OK" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "Retour" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "Annuler" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "Suivant" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "Bienvenue dans GhostBSD" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "Types d'installation" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "Configuration personnalisée" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "Configuration ZFS" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "Installer" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "Progrès de l'installation" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "Configuration réseau" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "Sélectionnez la langue que vous voulez utiliser avec GhostBSD." + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "Langue" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "Bienvenue dans GhostBSD!" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" +"Pour utiliser GhostBSD sans l'installer, sélectionnez \"Essayer GhostBSD.\"\n" +"\n" +"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " +"\"Installer GhostBSD.\"\n" +"\n" +"Note : La sélection de langue fonctionne seulement quand vous sélectionnez " +"\"Essayer GhostBSD.\"\n" +" Quand vous installez GhostBSD, le programme d'installation est " +"seulement en anglais." + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "Installer GhostBSD" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "Essayer GhostBSD" + +#: install_station/welcome_live.py:101 +#, fuzzy +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" +"Pour utiliser GhostBSD sans l'installer, sélectionnez \"Essayer GhostBSD.\"\n" +"\n" +"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " +"\"Installer GhostBSD.\"\n" +"\n" +"Note : La sélection de langue fonctionne seulement quand vous sélectionnez " +"\"Essayer GhostBSD.\"\n" +" Quand vous installez GhostBSD, le programme d'installation est " +"seulement en anglais." diff --git a/po/fr_FR.po b/po/fr_FR.po new file mode 100644 index 0000000..525c303 --- /dev/null +++ b/po/fr_FR.po @@ -0,0 +1,384 @@ +# French translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 08:08-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: French \n" +"Language: fr_FR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "Installation terminée" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "Redémarrer" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "Continuer" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "Erreur d'installation" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "L'installation a échoué !" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "OK" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "Création de ghostbsd_installation.cfg" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "Suppression de la partition" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "Création de la partition de disque" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "Création de nouvelles partitions" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "Installation en cours" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "Retour" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "Annuler" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "Suivant" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "Bienvenue sur GhostBSD" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "Types d'installation" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "Configuration personnalisée" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "Configuration ZFS" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "Installer" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "Progression de l'installation" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "Configuration réseau" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "Sélectionnez la langue que vous souhaitez utiliser avec GhostBSD." + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "Langue" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "Bienvenue sur GhostBSD !" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "Carte réseau connectée à Internet" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "Carte réseau non connectée à Internet" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "Aucune carte réseau détectée" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "Disque" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "Taille (Mo)" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "Nom" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "Vérifier" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "Veuillez sélectionner un lecteur" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "Chiffrer le disque" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "Mot de passe" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "Vérifiez-le" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "Avertissement" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" +"Pour exécuter GhostBSD sans l'installer, sélectionnez \"Essayez GhostBSD.\"\n" +"\n" +"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " +"\"Installer GhostBSD.\"\n" +"\n" +"Remarque : La sélection de la langue ne fonctionne qu'en sélectionnant " +"\"Essayez GhostBSD.\"\n" +" Lors de l'installation de GhostBSD, le programme d'installation " +"n'est qu'en anglais." + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "Installer GhostBSD" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "Essayez GhostBSD" + +#: install_station/welcome_live.py:101 +#, fuzzy +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" +"Pour exécuter GhostBSD sans l'installer, sélectionnez \"Essayez GhostBSD.\"\n" +"\n" +"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " +"\"Installer GhostBSD.\"\n" +"\n" +"Remarque : La sélection de la langue ne fonctionne qu'en sélectionnant " +"\"Essayez GhostBSD.\"\n" +" Lors de l'installation de GhostBSD, le programme d'installation " +"n'est qu'en anglais." diff --git a/po/hr_HR.po b/po/hr_HR.po new file mode 100644 index 0000000..54b415a --- /dev/null +++ b/po/hr_HR.po @@ -0,0 +1,366 @@ +# Croatian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Croatian \n" +"Language: hr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/hu_HU.po b/po/hu_HU.po new file mode 100644 index 0000000..b1781ac --- /dev/null +++ b/po/hu_HU.po @@ -0,0 +1,365 @@ +# Hungarian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Hungarian \n" +"Language: hu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/it_IT.po b/po/it_IT.po new file mode 100644 index 0000000..cf2b1ad --- /dev/null +++ b/po/it_IT.po @@ -0,0 +1,365 @@ +# Italian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:19-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/ja_JP.po b/po/ja_JP.po new file mode 100644 index 0000000..78be6ff --- /dev/null +++ b/po/ja_JP.po @@ -0,0 +1,365 @@ +# Japanese translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:21-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Japanese \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/ko_KR.po b/po/ko_KR.po new file mode 100644 index 0000000..f039b6f --- /dev/null +++ b/po/ko_KR.po @@ -0,0 +1,365 @@ +# Korean translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:25-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Korean \n" +"Language: ko\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/lt_LT.po b/po/lt_LT.po new file mode 100644 index 0000000..c61b7b5 --- /dev/null +++ b/po/lt_LT.po @@ -0,0 +1,366 @@ +# Lithuanian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Lithuanian \n" +"Language: lt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"(n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/lv_LV.po b/po/lv_LV.po new file mode 100644 index 0000000..a1f64a5 --- /dev/null +++ b/po/lv_LV.po @@ -0,0 +1,366 @@ +# Latvian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Latvian \n" +"Language: lv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " +"2);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/nl_NL.po b/po/nl_NL.po new file mode 100644 index 0000000..dedb9b6 --- /dev/null +++ b/po/nl_NL.po @@ -0,0 +1,365 @@ +# Dutch translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:22-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Dutch \n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/no_NO.po b/po/no_NO.po new file mode 100644 index 0000000..9dd9412 --- /dev/null +++ b/po/no_NO.po @@ -0,0 +1,365 @@ +# Norwegian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Norwegian\n" +"Language: no\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/pl_PL.po b/po/pl_PL.po new file mode 100644 index 0000000..aba7c25 --- /dev/null +++ b/po/pl_PL.po @@ -0,0 +1,366 @@ +# Polish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:22-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Polish \n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/pt_BR.po b/po/pt_BR.po new file mode 100644 index 0000000..05fde2a --- /dev/null +++ b/po/pt_BR.po @@ -0,0 +1,366 @@ +# Portuguese translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:19-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/pt_PT.po b/po/pt_PT.po new file mode 100644 index 0000000..63630c9 --- /dev/null +++ b/po/pt_PT.po @@ -0,0 +1,365 @@ +# Portuguese translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:27-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Portuguese \n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/ro_RO.po b/po/ro_RO.po new file mode 100644 index 0000000..16e1c06 --- /dev/null +++ b/po/ro_RO.po @@ -0,0 +1,366 @@ +# Romanian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Romanian \n" +"Language: ro\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " +"20)) ? 1 : 2;\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/ru_RU.po b/po/ru_RU.po new file mode 100644 index 0000000..49133d1 --- /dev/null +++ b/po/ru_RU.po @@ -0,0 +1,366 @@ +# Russian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:20-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Russian \n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/sk_SK.po b/po/sk_SK.po new file mode 100644 index 0000000..e3cb940 --- /dev/null +++ b/po/sk_SK.po @@ -0,0 +1,365 @@ +# Slovak translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Slovak \n" +"Language: sk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/sl_SI.po b/po/sl_SI.po new file mode 100644 index 0000000..7136274 --- /dev/null +++ b/po/sl_SI.po @@ -0,0 +1,366 @@ +# Slovenian translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:26-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Slovenian \n" +"Language: sl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || " +"n%100==4 ? 2 : 3);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/sv_SE.po b/po/sv_SE.po new file mode 100644 index 0000000..6c82b26 --- /dev/null +++ b/po/sv_SE.po @@ -0,0 +1,365 @@ +# Swedish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:22-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Swedish \n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/th_TH.po b/po/th_TH.po new file mode 100644 index 0000000..cf1b4a5 --- /dev/null +++ b/po/th_TH.po @@ -0,0 +1,364 @@ +# Thai translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:27-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Thai <(nothing)>\n" +"Language: th\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/tr_TR.po b/po/tr_TR.po new file mode 100644 index 0000000..0691e94 --- /dev/null +++ b/po/tr_TR.po @@ -0,0 +1,365 @@ +# Turkish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:24-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Turkish \n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/vi_VN.po b/po/vi_VN.po new file mode 100644 index 0000000..171fe19 --- /dev/null +++ b/po/vi_VN.po @@ -0,0 +1,365 @@ +# Vietnamese translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:27-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Vietnamese \n" +"Language: vi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/zh_CN.po b/po/zh_CN.po new file mode 100644 index 0000000..dfd8361 --- /dev/null +++ b/po/zh_CN.po @@ -0,0 +1,364 @@ +# Chinese translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:21-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Chinese (simplified) \n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/po/zh_TW.po b/po/zh_TW.po new file mode 100644 index 0000000..47a8191 --- /dev/null +++ b/po/zh_TW.po @@ -0,0 +1,364 @@ +# Chinese translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Eric Turgeon , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"PO-Revision-Date: 2025-07-09 20:25-0300\n" +"Last-Translator: Eric Turgeon \n" +"Language-Team: Chinese (traditional) \n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" + +#: install_station/boot_manager.py:125 +#: install_station/interface_controller.py:168 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:139 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:153 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:168 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/end.py:13 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:34 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:50 +msgid "Restart" +msgstr "" + +#: install_station/end.py:52 +msgid "Continue" +msgstr "" + +#: install_station/error.py:21 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:32 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:37 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:38 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:47 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:55 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:60 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:70 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:39 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:43 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:48 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:53 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:83 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:95 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:14 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:16 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:18 +#: install_station/interface_controller.py:226 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:100 +#: install_station/interface_controller.py:101 +#: install_station/welcome_live.py:112 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:110 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:136 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:148 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:158 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:180 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:187 +msgid "Progress Bar" +msgstr "" + +#: install_station/interface_controller.py:201 +#: install_station/interface_controller.py:206 +#: install_station/network_setup.py:110 +msgid "Network Setup" +msgstr "" + +#: install_station/language.py:20 +msgid "Select the language you want to use with GhostBSD." +msgstr "" + +#: install_station/language.py:64 install_station/welcome_live.py:110 +#: install_station/welcome_live.py:127 +msgid "Language" +msgstr "" + +#: install_station/language.py:79 +msgid "Welcome To GhostBSD!" +msgstr "" + +#: install_station/network_setup.py:69 install_station/network_setup.py:129 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:75 install_station/network_setup.py:135 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:78 install_station/network_setup.py:138 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:86 install_station/network_setup.py:146 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:90 install_station/network_setup.py:150 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:93 install_station/network_setup.py:153 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:258 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:270 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:272 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:275 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:278 +msgid "Show password" +msgstr "" + +#: install_station/use_zfs.py:164 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:171 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:179 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:186 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:193 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:296 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:303 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:313 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:326 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:336 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:337 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:338 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:339 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:349 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:373 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:380 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:541 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:552 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:553 +msgid "All the disk selected will reset." +msgstr "" + +#: install_station/welcome_live.py:16 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" + +#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 +msgid "Install GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 +msgid "Try GhostBSD" +msgstr "" + +#: install_station/welcome_live.py:101 +msgid "" +"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +" \n" +"\n" +"To install GhostBSD on your computer hard disk drive, click \"Install " +"GhostBSD.\"\n" +"\n" +"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +" When installing GhostBSD, the installation program is only in English." +msgstr "" diff --git a/setup.py b/setup.py index 454f8a7..8719e25 100755 --- a/setup.py +++ b/setup.py @@ -1,56 +1,147 @@ #!/usr/bin/env python -# -*- coding: utf-8 -*- - import os import sys -# from glob import glob -from setuptools import setup - -# import DistUtilsExtra.command.build_extra -# import DistUtilsExtra.command.build_i18n -# import DistUtilsExtra.command.clean_i18n - -# to update i18n .mo files (and merge .pot file into .po files) run on Linux: -# ,,python setup.py build_i18n -m'' +from setuptools import setup, Command, glob +from DistUtilsExtra.command.build_extra import build_extra +from DistUtilsExtra.command.build_i18n import build_i18n +from DistUtilsExtra.command.clean_i18n import clean_i18n -# silence pyflakes, __VERSION__ is properly assigned below... +prefix = sys.prefix __VERSION__ = '0.1' - -# for line in open('gbinstall', 'r').readlines(): -# if (line.startswith('__VERSION__')): -# exec(line.strip()) PROGRAM_VERSION = __VERSION__ -def datafilelist(installbase, sourcebase): - datafileList = [] - for root, subFolders, files in os.walk(sourcebase): - fileList = [] +def data_file_list(install_base, source_base): + data = [] + for root, subFolders, files in os.walk(source_base): + file_list = [] for f in files: - fileList.append(os.path.join(root, f)) - datafileList.append((root.replace(sourcebase, installbase), fileList)) - return datafileList + file_list.append(os.path.join(root, f)) + # Only add directories that actually have files + if file_list: + data.append((root.replace(source_base, install_base), file_list)) + return data -prefix = sys.prefix +class UpdateTranslationsCommand(Command): + """Custom command to extract messages and update .po files.""" + + description = 'Extract messages to .pot and update .po' + user_options = [] # No custom options + + def initialize_options(self): + pass + + def finalize_options(self): + pass + + def run(self): + # Define paths + pot_file = 'po/install-station.pot' + po_files = glob.glob('po/*.po') + # Step 1: Extract messages to .pot file + print("Extracting messages to .pot file...") + os.system(f'xgettext --from-code=UTF-8 -L Python -o {pot_file} install_station/*.py install-station') + # Step 2: Update .po files with the new .pot file + print("Updating .po files with new translations...") + for po_file in po_files: + print(f"Updating {po_file}...") + os.system(f'msgmerge -U {po_file} {pot_file}') + print("Translation update complete.") + + +class CreateTranslationCommand(Command): + """Custom command to create a new .po file for a specific language.""" + locale = None + description = 'Create a new .po file for the specified language' + user_options = [ + ('locale=', 'l', 'Locale code for the new translation (e.g., fr, es)') + ] + + def initialize_options(self): + self.locale = None # Initialize the locale option to None + + def finalize_options(self): + if self.locale is None: + raise Exception("You must specify the locale code (e.g., --locale=fr)") + + def run(self): + # Define paths + pot_file = 'po/install-station.pot' + po_dir = 'po' + po_file = os.path.join(po_dir, f'{self.locale}.po') + # Check if the .pot file exists + if not os.path.exists(pot_file): + print("Extracting messages to .pot file...") + os.system(f'xgettext --from-code=UTF-8 -L Python -o {pot_file} install_station/*.py install-station') + # Create the new .po file + if not os.path.exists(po_file): + print(f"Creating new {po_file} for locale '{self.locale}'...") + os.makedirs(po_dir, exist_ok=True) + os.system(f'msginit --locale={self.locale} --input={pot_file} --output-file={po_file}') + else: + print(f"PO file for locale '{self.locale}' already exists: {po_file}") + + +lib_install_station_image = [ + 'src/image/G_logo.gif', + 'src/image/install-gbsd.png', + 'src/image/logo.png', + 'src/image/disk.png', + 'src/image/laptop.png', + 'src/image/installation.jpg' +] + +lib_install_station_backend_query = [ + 'src/backend-query/detect-laptop.sh', + 'src/backend-query/detect-nics.sh', + 'src/backend-query/detect-sheme.sh', + 'src/backend-query/detect-vmware.sh', + 'src/backend-query/detect-wifi.sh', + 'src/backend-query/disk-info.sh', + 'src/backend-query/disk-label.sh', + 'src/backend-query/disk-list.sh', + 'src/backend-query/disk-part.sh', + 'src/backend-query/enable-net.sh', + 'src/backend-query/list-components.sh', + 'src/backend-query/list-rsync-backups.sh', + 'src/backend-query/list-tzones.sh', + 'src/backend-query/query-langs.sh', + 'src/backend-query/send-logs.sh', + 'src/backend-query/setup-ssh-keys.sh', + 'src/backend-query/sys-mem.sh', + 'src/backend-query/test-live.sh', + 'src/backend-query/test-netup.sh', + 'src/backend-query/update-part-list.sh', + 'src/backend-query/xkeyboard-layouts.sh', + 'src/backend-query/xkeyboard-models.sh', + 'src/backend-query/xkeyboard-variants.sh' +] -# data_files.extend(datafilelist('{prefix}/share/locale'.format(prefix=sys.prefix), 'build/mo')) +data_files = [ + (f'{prefix}/lib/install-station/backend-query', lib_install_station_backend_query), + (f'{prefix}/lib/install-station/image', lib_install_station_image) +] -# cmdclass ={ -# "build" : DistUtilsExtra.command.build_extra.build_extra, -# "build_i18n" : DistUtilsExtra.command.build_i18n.build_i18n, -# "clean": DistUtilsExtra.command.clean_i18n.clean_i18n, -# } +data_files.extend(data_file_list(f'{prefix}/share/locale', 'build/mo')) setup( name="install-station", version=PROGRAM_VERSION, - description="install-station is a stripdown version of gbi", + description="Install Station is a strip down version of gbi", license='BSD', author='Eric Turgeon', url='https://github/GhostBSD/install-station/', package_dir={'': '.'}, install_requires=['setuptools'], - scripts=['install-station'] + packages=['install_station'], + scripts=['install-station'], + data_files=data_files, + cmdclass={ + 'create_translation': CreateTranslationCommand, + 'update_translations': UpdateTranslationsCommand, + "build": build_extra, + "build_i18n": build_i18n, + "clean": clean_i18n + } ) -# cmdclass = cmdclass, diff --git a/src/backend-query/detect-laptop.sh b/src/backend-query/detect-laptop.sh new file mode 100755 index 0000000..bf42842 --- /dev/null +++ b/src/backend-query/detect-laptop.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +dmesgLine=`dmesg | grep "acpi_acad0"` +if test "${dmesgLine}" = ""; then + echo "laptop: NO" +else + echo "laptop: YES" +fi diff --git a/src/backend-query/detect-nics.sh b/src/backend-query/detect-nics.sh new file mode 100755 index 0000000..ead211d --- /dev/null +++ b/src/backend-query/detect-nics.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +rm /tmp/netCards 2>/dev/null +touch /tmp/netCards + +config="`ifconfig -l`" + +for i in $config +do + echo "${i}" | grep -e "lo0" -e "^fwe" -e "^fwip" -e "lo1" -e "^plip" -e "^pfsync" -e "^pflog" -e "^tun" >/dev/null 2>/dev/null + if [ "$?" != "0" ] + then + IDENT="<`dmesg | grep ^${i} | grep -v "miibus" | grep '<' | cut -d '<' -f 2 | cut -d '>' -f 1 | head -1`>" + echo "${i}: $IDENT" + fi +done diff --git a/src/backend-query/detect-sheme.sh b/src/backend-query/detect-sheme.sh new file mode 100644 index 0000000..cbc9c5e --- /dev/null +++ b/src/backend-query/detect-sheme.sh @@ -0,0 +1,52 @@ +#!/bin/sh +# +# Copyright (c) 2009-2012, GhostBSD. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistribution's of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistribution's in binary form must reproduce the above +# copyright notice,this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# +# 3. Neither then name of GhostBSD Project nor the names of its +# contributors maybe used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +# /usr/local/etc/install-station/detect-sheme.sh v 0.1 Wed May 1 20:31:52 ADT 2013 Eric Turgeon +# +# Detect a disk sheme and display them. +# + + +DISK="${1}" +TMPDIR=${TMPDIR:-"/tmp"} +# Display if this is GPT or MBR formatted +gpart show ${1} | grep "GPT" >/dev/null 2>/dev/null +if [ "$?" = "0" ] ; then + #echo "${1}-format: GPT" + TYPE="GPT" +else + #echo "${1}-format: MBR" + TYPE="MBR" +fi + +echo ${TYPE} diff --git a/src/backend-query/detect-vmware.sh b/src/backend-query/detect-vmware.sh new file mode 100755 index 0000000..74b32db --- /dev/null +++ b/src/backend-query/detect-vmware.sh @@ -0,0 +1,12 @@ +#!/bin/sh + + +pciconf -lv | grep -i vmware >/dev/null 2>/dev/null +if [ "$?" = "0" ] +then + echo "vmware: YES" + exit 0 +else + echo "vmware: NO" + exit 1 +fi diff --git a/src/backend-query/detect-wifi.sh b/src/backend-query/detect-wifi.sh new file mode 100644 index 0000000..985ebc6 --- /dev/null +++ b/src/backend-query/detect-wifi.sh @@ -0,0 +1,8 @@ +#!/bin/sh +NIC="$1" +ifconfig ${NIC} | grep -q "802.11" 2>/dev/null +if [ $? -eq 0 ]; then + echo 'yes' +else + echo 'no' +fi diff --git a/src/backend-query/disk-info.sh b/src/backend-query/disk-info.sh new file mode 100755 index 0000000..464df45 --- /dev/null +++ b/src/backend-query/disk-info.sh @@ -0,0 +1,72 @@ +#!/bin/sh +# Query a disk for partitions and display them +############################# + + +if [ -z "${1}" ] +then + echo "Error: No disk specified!" + exit 1 +fi + +if [ ! -e "/dev/${1}" ] +then + echo "Error: Disk /dev/${1} does not exist!" + exit 1 +fi + +# Function to convert bytes to megabytes +convert_byte_to_megabyte() +{ + if [ -z "${1}" ] + then + echo "Error: No bytes specified!" + exit 1 + fi + + expr -e ${1} / 1048576 +}; + +# Function which returns a target disks cylinders +get_disk_cyl() +{ + cyl=`diskinfo -v ${1} | grep "# Cylinders" | tr -s ' ' | cut -f 2` + export VAL="${cyl}" +}; +DISK="${1}" + +# Function which returns a target disks heads +get_disk_heads() +{ + head=`diskinfo -v ${1} | grep "# Heads" | tr -s ' ' | cut -f 2` + export VAL="${head}" +}; + +# Function which returns a target disks sectors +get_disk_sectors() +{ + sec=`diskinfo -v ${1} | grep "# Sectors" | tr -s ' ' | cut -f 2` + export VAL="${sec}" +}; + +get_disk_cyl "${DISK}" +CYLS="${VAL}" + +get_disk_heads "${DISK}" +HEADS="${VAL}" + +get_disk_sectors "${DISK}" +SECS="${VAL}" + +#echo "cylinders=${CYLS}" +#echo "heads=${HEADS}" +#echo "sectors=${SECS}" + +# Now get the disks size in MB +KB="`diskinfo -v ${1} | grep 'bytes' | cut -d '#' -f 1 | tr -s '\t' ' ' | tr -d ' '`" +MB=$(convert_byte_to_megabyte ${KB}) +#echo "size=$MB" +echo "$MB" +# Now get the Controller Type +CTYPE="`dmesg | grep "^${1}:" | grep "B <" | cut -d '>' -f 2 | cut -d ' ' -f 3-10`" +#echo "type=$CTYPE" diff --git a/src/backend-query/disk-label.sh b/src/backend-query/disk-label.sh new file mode 100644 index 0000000..2f52d78 --- /dev/null +++ b/src/backend-query/disk-label.sh @@ -0,0 +1,45 @@ +#!/bin/sh +# Query a disk for partitions and display them +############################# + + +DISK="${1}" +TMPDIR=${TMPDIR:-"/tmp"} +# Display if this is GPT or MBR formatted +gpart show ${1} | grep "GPT" >/dev/null 2>/dev/null +if [ "$?" = "0" ] ; then + #echo "${1}-format: GPT" + TYPE="GPT" +else + #echo "${1}-format: MBR" + TYPE="MBR" +fi + +if [ "$TYPE" = "MBR" ] ; then + sp="s" +else + sp="p" +fi + +# Get a listing of partitions on this disk +gpart show ${DISK} | grep -v ${DISK} | tr -s '\t' ' ' | cut -d ' ' -f 4,3,5 >${TMPDIR}/disk-${DISK} +while read i +do + + if [ ! -z "${i}" ] ; then + BLOCK="`echo ${i} | cut -d ' ' -f 1`" + MB="`expr ${BLOCK} / 2048`MB" + fi + if [ ! "${MB}" = "0MB" ] ; then + FS="`echo ${i} | cut -d ' ' -f 3`" + SLICE="`echo ${i} | cut -d ' ' -f 2`" + if [ "$SLICE" = '-' ] ; then + echo "${MB} freespace none" + else + if [ ! -z "$SLICE" ] ; then + echo "${MB} ${SLICE} ${FS}" + fi + fi + fi + +done <${TMPDIR}/disk-${DISK} diff --git a/src/backend-query/disk-list.sh b/src/backend-query/disk-list.sh new file mode 100755 index 0000000..c9241d6 --- /dev/null +++ b/src/backend-query/disk-list.sh @@ -0,0 +1,35 @@ +#!/bin/sh + +# Create our device listing +SYSDISK=$(sysctl -n kern.disks) + +# Now loop through these devices, and list the disk drives +for i in ${SYSDISK} +do + + # Get the current device + DEV="${i}" + + # Make sure we don't find any cd devices + case "${DEV}" in + acd[0-9]*|cd[0-9]*|scd[0-9]*) continue ;; + esac + + # Check the dmesg output for some more info about this device + NEWLINE=$(dmesg | sed -n "s/^$DEV: .*<\(.*\)>.*$/ <\1>/p" | head -n 1) + if [ -z "$NEWLINE" ]; then + NEWLINE=" " + fi + + # Save the disk list + if [ ! -z "$DLIST" ] + then + DLIST="\n${DLIST}" + fi + + DLIST="${DEV} ${NEWLINE}${DLIST}" + +done + +# Echo out the found line +echo -e "$DLIST" | sort diff --git a/src/backend-query/disk-part.sh b/src/backend-query/disk-part.sh new file mode 100755 index 0000000..69f6584 --- /dev/null +++ b/src/backend-query/disk-part.sh @@ -0,0 +1,49 @@ +#!/bin/sh +# Query a disk for partitions and display them +############################# + + +DISK="${1}" +TMPDIR=${TMPDIR:-"/tmp"} +# Display if this is GPT or MBR formatted +gpart show ${DISK} | grep "GPT" >/dev/null 2>/dev/null +if [ "$?" = "0" ] ; then + #echo "${1}-format: GPT" + TYPE="GPT" +else + #echo "${1}-format: MBR" + TYPE="MBR" +fi + +if [ "$TYPE" = "MBR" ] ; then + sp="s" +else + sp="p" +fi + +# Get a listing of partitions on this disk +gpart show ${DISK} | grep -v ${DISK} | tr -s '\t' ' ' | cut -d ' ' -f 4,3,5 >${TMPDIR}/disk-${DISK} +while read i +do + if [ ! -z "${i}" ] ; then + BLOCK="`echo ${i} | cut -d ' ' -f 1`" + if [ "${BLOCK}" -ge 2048 ] ; then + MB="`expr ${BLOCK} / 2048`" + else + MB="1" + fi + fi + if [ ! "${MB}" = "0" ] ; then + LABEL="`echo ${i} | cut -d ' ' -f 3`" + SLICE="`echo ${i} | cut -d ' ' -f 2`" + if [ "$SLICE" = '-' ] ; then + if [ ! "${MB}" = "1" ] ; then + echo "freespace ${MB} none" + fi + else + if [ ! -z "$SLICE" ] ; then + echo "${DISK}${sp}${SLICE} ${MB} ${LABEL} " + fi + fi + fi +done <${TMPDIR}/disk-${DISK} diff --git a/src/backend-query/enable-net.sh b/src/backend-query/enable-net.sh new file mode 100755 index 0000000..ca3115d --- /dev/null +++ b/src/backend-query/enable-net.sh @@ -0,0 +1,39 @@ +#!/bin/sh +# Script which enables networking with specified options +########################################################################### + +. ${PROGDIR}/backend/functions.sh +. ${PROGDIR}/conf/pc-sysinstall.conf +. ${BACKEND}/functions-networking.sh +. ${BACKEND}/functions-parse.sh + + +NIC="$1" +IP="$2" +NETMASK="$3" +DNS="$4" +GATEWAY="$5" +MIRRORFETCH="$6" + +if [ -z "${NIC}" ] +then + echo "ERROR: Usage enable-net " + exit 150 +fi + +if [ "$NIC" = "AUTO-DHCP" ] +then + enable_auto_dhcp +else + echo "Enabling NIC: $NIC" + ifconfig ${NIC} ${IP} ${NETMASK} + + echo "nameserver ${DNS}" >/etc/resolv.conf + + route add default ${GATE} +fi + +case ${MIRRORFETCH} in + ON|on|yes|YES) fetch -o /tmp/mirrors-list.txt ${MIRRORLIST} >/dev/null 2>/dev/null;; + *) ;; +esac diff --git a/src/backend-query/list-components.sh b/src/backend-query/list-components.sh new file mode 100755 index 0000000..6833dc7 --- /dev/null +++ b/src/backend-query/list-components.sh @@ -0,0 +1,28 @@ +#!/bin/sh +# Script which lists the available components for this release +########################################################################### + +. ${PROGDIR}/backend/functions.sh + +echo "Available Components:" + +cd ${COMPDIR} +for i in `ls -d *` +do + if [ -e "${i}/component.cfg" -a -e "${i}/install.sh" -a -e "${i}/distfiles" ] + then + NAME="`grep 'name:' ${i}/component.cfg | cut -d ':' -f 2`" + DESC="`grep 'description:' ${i}/component.cfg | cut -d ':' -f 2`" + TYPE="`grep 'type:' ${i}/component.cfg | cut -d ':' -f 2`" + echo " " + echo "name: ${i}" + echo "desc:${DESC}" + echo "type:${TYPE}" + if [ -e "${i}/component.png" ] + then + echo "icon: ${COMPDIR}/${i}/component.png" + fi + fi + +done + diff --git a/src/backend-query/list-rsync-backups.sh b/src/backend-query/list-rsync-backups.sh new file mode 100755 index 0000000..6b32fb1 --- /dev/null +++ b/src/backend-query/list-rsync-backups.sh @@ -0,0 +1,44 @@ +#!/bin/sh +# Script which lists the backups present on a server +########################################################################### + +. ${PROGDIR}/backend/functions.sh + +SSHUSER=$1 +SSHHOST=$2 +SSHPORT=$3 + +if [ -z "${SSHHOST}" -o -z "${SSHPORT}" ] +then + echo "ERROR: Usage list-rsync-backups.sh " + exit 150 +fi + +# Look for full-system backups, needs at minimum a kernel to be bootable +FINDCMD="find . -type d -maxdepth 6 -name 'kernel' | grep '/boot/kernel'" + +# Get a listing of the number of full backups saved +OLDBACKUPS=`ssh -o 'BatchMode=yes' -p ${SSHPORT} ${SSHUSER}@${SSHHOST} "${FINDCMD}"` +if [ "$?" = "0" ] +then + for i in ${OLDBACKUPS} + do + BACKPATH="`echo ${i} | sed 's|/boot/.*||g' | sed 's|^./||g'`" + if [ -z "${BACKLIST}" ] + then + BACKLIST="${BACKPATH}" + else + BACKLIST="${BACKLIST}:${BACKPATH}" + fi + done + + if [ -z "${BACKLIST}" ] + then + echo "NONE" + else + echo "$BACKLIST" + fi + +else + echo "FAILED" +fi diff --git a/src/backend-query/list-tzones.sh b/src/backend-query/list-tzones.sh new file mode 100755 index 0000000..3f8d335 --- /dev/null +++ b/src/backend-query/list-tzones.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +rm ${TMPDIR}/.tzonetmp >/dev/null 2>/dev/null + +# Backend script which lists all the available timezones for front-ends to display +while read line +do + echo "$line" | grep "^#" >/dev/null 2>/dev/null + if [ "$?" != "0" ] + then + echo "$line" | tr -s "\t" ":" | cut -d ":" -f 3-4 >>${TMPDIR}/.tzonetmp + fi +done < /usr/share/zoneinfo/zone.tab + +sort ${TMPDIR}/.tzonetmp +rm -f ${TMPDIR}/.tzonetmp >/dev/null 2>/dev/null + +exit 0 diff --git a/src/backend-query/query-langs.sh b/src/backend-query/query-langs.sh new file mode 100755 index 0000000..7951ca6 --- /dev/null +++ b/src/backend-query/query-langs.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +FOUND="0" + +cat ${PROGDIR}/conf/avail-langs + +exit 0 diff --git a/src/backend-query/send-logs.sh b/src/backend-query/send-logs.sh new file mode 100755 index 0000000..c182b22 --- /dev/null +++ b/src/backend-query/send-logs.sh @@ -0,0 +1,57 @@ +#!/bin/sh +# Script which creates a gzipped log and optionally mails it to the specified address +############################################################################ + +. ${PROGDIR}/backend/functions.sh +. ${PROGDIR}/conf/pc-sysinstall.conf +. ${BACKEND}/functions-networking.sh +. ${BACKEND}/functions-parse.sh + +# Bring up all NICS under DHCP +enable_auto_dhcp + +MAILTO="$1" +MAILRESULT="0" + +# Set the location of our compressed log +TMPLOG="/tmp/pc-sysinstall.log" + +echo "# PC-SYSINSTALL LOG" >${TMPLOG} +cat ${LOGOUT} >> ${TMPLOG} + +# Check if we have a GUI generated install cfg +if [ -e "/tmp/sys-install.cfg" ] +then + echo "" >>${TMPLOG} + echo "# PC-SYSINSTALL CFG " >>${TMPLOG} + cat /tmp/sys-install.cfg >> ${TMPLOG} +fi + +# Save dmesg output +echo "" >>${TMPLOG} +echo "# DMESG OUTPUT " >>${TMPLOG} +dmesg >> ${TMPLOG} + +# Get gpart info on all disks +for i in `${PROGDIR}/pc-sysinstall disk-list | cut -d ':' -f 1` +do + echo "" >>${TMPLOG} + echo "# DISK INFO $i " >>${TMPLOG} + ls /dev/${i}* >>${TMPLOG} + gpart show ${i} >> ${TMPLOG} +done + +# Show Mounted volumes +echo "" >>${TMPLOG} +echo "# MOUNT OUTPUT " >>${TMPLOG} +mount >> ${TMPLOG} + +echo "Log file saved to ${TMPLOG}" +echo "Warning: This file will be lost once the system is rebooted." + +echo "Do you wish to view this logfile now? (Y/N)" +read tmp +if [ "$tmp" = "Y" -o "$tmp" = "y" ] +then + more ${TMPLOG} +fi diff --git a/src/backend-query/setup-ssh-keys.sh b/src/backend-query/setup-ssh-keys.sh new file mode 100755 index 0000000..9b09e99 --- /dev/null +++ b/src/backend-query/setup-ssh-keys.sh @@ -0,0 +1,38 @@ +#!/bin/sh +# Script which sets up password-less logins for ssh host +########################################################################### + +. ${PROGDIR}/backend/functions.sh + +SSHUSER=$1 +SSHHOST=$2 +SSHPORT=$3 + +if [ -z "${SSHUSER}" -o -z "${SSHHOST}" -o -z "${SSHPORT}" ] +then + echo "ERROR: Usage setup-ssh-keys " + exit 150 +fi + +cd ~ + +echo "Preparing to setup SSH key authorization..." +echo "When prompted, enter your password for ${SSHUSER}@${SSHHOST}" + +if [ ! -e ".ssh/id_rsa.pub" ] +then + mkdir .ssh >/dev/null 2>/dev/null + ssh-keygen -q -t rsa -N '' -f .ssh/id_rsa + sleep 1 +fi + +if [ ! -e ".ssh/id_rsa.pub" ] +then + echo "ERROR: Failed creating .ssh/id_rsa.pub" + exit 150 +fi + +# Get the .pub key +PUBKEY="`cat .ssh/id_rsa.pub`" + +ssh -p ${SSHPORT} ${SSHUSER}@${SSHHOST} "mkdir .ssh ; echo $PUBKEY >> .ssh/authorized_keys; chmod 600 .ssh/authorized_keys ; echo $PUBKEY >> .ssh/authorized_keys2; chmod 600 .ssh/authorized_keys2" diff --git a/src/backend-query/sys-mem.sh b/src/backend-query/sys-mem.sh new file mode 100755 index 0000000..f087621 --- /dev/null +++ b/src/backend-query/sys-mem.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +MEM=`sysctl hw.realmem | sed "s|hw.realmem: ||g"` +MEM=`expr $MEM / 1024` +MEM=`expr $MEM / 1024` +echo $MEM diff --git a/src/backend-query/test-live.sh b/src/backend-query/test-live.sh new file mode 100755 index 0000000..67ec7a5 --- /dev/null +++ b/src/backend-query/test-live.sh @@ -0,0 +1,14 @@ +#!/bin/sh +# Script which checks if we are running from install media, or real system +############################################################################# + +dmesg | grep "md0: Preloaded image" >/dev/null 2>/dev/null +if [ "$?" = "0" ] +then + echo "INSTALL-MEDIA" + exit 0 +else + echo "REAL-DISK" + exit 1 +fi + diff --git a/src/backend-query/test-netup.sh b/src/backend-query/test-netup.sh new file mode 100755 index 0000000..666781d --- /dev/null +++ b/src/backend-query/test-netup.sh @@ -0,0 +1,23 @@ +#!/bin/sh +# Script which tests "fetch" when using a network connection, and saves +# if we are using direct connect, or need FTP passive mode +############################################################################# + +rm ${TMPDIR}/.testftp >/dev/null 2>/dev/null + +ping -c 2 www.pcbsd.org >/dev/null 2>/dev/null +if [ "$?" = "0" ] +then + echo "ftp: Up" + exit 0 +fi + +ping -c 2 www.freebsd.org >/dev/null 2>/dev/null +if [ "$?" = "0" ] +then + echo "ftp: Up" + exit 0 +fi + +echo "ftp: Down" +exit 1 diff --git a/src/backend-query/update-part-list.sh b/src/backend-query/update-part-list.sh new file mode 100755 index 0000000..ac81e4f --- /dev/null +++ b/src/backend-query/update-part-list.sh @@ -0,0 +1,84 @@ +#!/bin/sh + +# Need access to a some unmount functions +. ${PROGDIR}/backend/functions-unmount.sh + +echo "Running: find-update-parts" >> ${LOGOUT} + +rm ${TMPDIR}/AvailUpgrades >/dev/null 2>/dev/null + +FSMNT="/mnt" + +# Get the freebsd version on this partition +get_fbsd_ver() { + + VER="`file ${FSMNT}/bin/sh | grep 'for FreeBSD' | sed 's|for FreeBSD |;|g' | cut -d ';' -f 2 | cut -d ',' -f 1`" + if [ "$?" = "0" ] ; then + file ${FSMNT}/bin/sh | grep '32-bit' >/dev/null 2>/dev/null + if [ "${?}" = "0" ] ; then + echo "${1}: FreeBSD ${VER} (32bit)" + else + echo "${1}: FreeBSD ${VER} (64bit)" + fi + fi + +} + +# Create our device listing +SYSDISK="`sysctl kern.disks | cut -d ':' -f 2 | sed 's/^[ \t]*//'`" +DEVS="" + +# Now loop through these devices, and list the disk drives +for i in ${SYSDISK} +do + + # Get the current device + DEV="${i}" + # Make sure we don't find any cd devices + echo "${DEV}" | grep -e "^acd[0-9]" -e "^cd[0-9]" -e "^scd[0-9]" >/dev/null 2>/dev/null + if [ "$?" != "0" ] ; then + DEVS="${DEVS} `ls /dev/${i}*`" + fi + +done + +# Search for regular UFS / Geom Partitions to upgrade +for i in $DEVS +do + if [ ! -e "${i}a.journal" -a ! -e "${i}a" -a ! -e "${i}p2" -a ! -e "${i}p2.journal" ] ; then + continue + fi + + if [ -e "${i}a.journal" ] ; then + _dsk="${i}a.journal" + elif [ -e "${i}a" ] ; then + _dsk="${i}a" + elif [ -e "${i}p2" ] ; then + _dsk="${i}p2" + elif [ -e "${i}p2.journal" ] ; then + _dsk="${i}p2.journal" + fi + + mount ${_dsk} ${FSMNT} >>${LOGOUT} 2>>${LOGOUT} + if [ "${?}" = "0" -a -e "${FSMNT}/bin/sh" ] ; then + get_fbsd_ver "`echo ${_dsk} | sed 's|/dev/||g'`" + umount -f ${FSMNT} >/dev/null 2>/dev/null + fi +done + +# Now search for any ZFS root partitions +zpool import -o altroot=${FSMNT} -a + +# Unmount any auto-mounted stuff +umount_all_dir "${FSMNT}" + +# Get pools +_zps="`zpool list | grep -v 'NAME' | cut -d ' ' -f 1`" +for _zpools in ${_zps} +do + mount -t zfs ${_zpools} ${FSMNT} >>${LOGOUT} 2>>${LOGOUT} + if [ "${?}" = "0" -a -e "${FSMNT}/bin/sh" ] ; then + get_fbsd_ver "${_zpools}" + umount -f ${FSMNT} >/dev/null 2>/dev/null + fi +done diff --git a/src/backend-query/xkeyboard-layouts.sh b/src/backend-query/xkeyboard-layouts.sh new file mode 100755 index 0000000..b2b92f3 --- /dev/null +++ b/src/backend-query/xkeyboard-layouts.sh @@ -0,0 +1,31 @@ +#!/bin/sh + +FOUND="0" + +# Lets parse the xorg.list file, and see what layouts are supported +while read line +do + + if [ "$FOUND" = "1" -a ! -z "$line" ] + then + echo $line | grep '! ' >/dev/null 2>/dev/null + if [ "$?" = "0" ] + then + exit 0 + else + echo "$line" + fi + fi + + if [ "${FOUND}" = "0" ] + then + echo $line | grep '! layout' >/dev/null 2>/dev/null + if [ "$?" = "0" ] + then + FOUND="1" + fi + fi + +done < /usr/local/share/X11/xkb/rules/xorg.lst + +exit 0 diff --git a/src/backend-query/xkeyboard-models.sh b/src/backend-query/xkeyboard-models.sh new file mode 100755 index 0000000..0d72681 --- /dev/null +++ b/src/backend-query/xkeyboard-models.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +FOUND="0" + +# Lets parse the xorg.list file, and see what models are supported +while read line +do + + if [ "$FOUND" = "1" -a ! -z "$line" ] + then + echo $line | grep '! ' >/dev/null 2>/dev/null + if [ "$?" = "0" ] + then + exit 0 + else + model="`echo $line | sed 's|(|[|g'`" + model="`echo $model | sed 's|)|]|g'`" + echo "$model" + fi + fi + + if [ "${FOUND}" = "0" ] + then + echo $line | grep '! model' >/dev/null 2>/dev/null + if [ "$?" = "0" ] + then + FOUND="1" + fi + fi + +done < /usr/local/share/X11/xkb/rules/xorg.lst + +exit 0 diff --git a/src/backend-query/xkeyboard-variants.sh b/src/backend-query/xkeyboard-variants.sh new file mode 100755 index 0000000..3bf18d7 --- /dev/null +++ b/src/backend-query/xkeyboard-variants.sh @@ -0,0 +1,31 @@ +#!/bin/sh + +FOUND="0" + +# Lets parse the xorg.list file, and see what varients are supported +while read line +do + + if [ "$FOUND" = "1" -a ! -z "$line" ] + then + echo $line | grep '! ' >/dev/null 2>/dev/null + if [ "$?" = "0" ] + then + exit 0 + else + echo "$line" + fi + fi + + if [ "${FOUND}" = "0" ] + then + echo $line | grep '! variant' >/dev/null 2>/dev/null + if [ "$?" = "0" ] + then + FOUND="1" + fi + fi + +done < /usr/local/share/X11/xkb/rules/xorg.lst + +exit 0 diff --git a/src/disk.png b/src/disk.png new file mode 100644 index 0000000000000000000000000000000000000000..a588c91b1293b3c0794e55c126f7aed14baca239 GIT binary patch literal 29994 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

KxE=1aLZbqPvZWU*)&9wsk=I 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

uXVNDZr7ajDlaJGlYl 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

0aiGu)X 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 z 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 z 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

y6`}B;3p>v?rYogZ8f+~ewa>&Sz&T+#s!JD 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 DRnjn);YrtHBK{TX{ID^*k4ZEiGdlwIq5ggPHu- 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

5k8jz#J{=h+@Ibi0a|{6fe%e_xYxuUg#N0 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

N^H_eiRVkLEm=&7~VSxOF_aTGY=3LC9PV< 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

Ow@&qq{u*HmcxJ8P|K>-o+~N^B+! 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∋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

KY;jb#SoGF+cS$eRxpexKNy4`sl^ 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

&>_JT_VPwV!jjH^u@eMvE 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 V$dDpKMl7jtB+8U3S7r%^ literal 0 HcmV?d00001 diff --git a/src/image/disk.png b/src/image/disk.png new file mode 100644 index 0000000000000000000000000000000000000000..a588c91b1293b3c0794e55c126f7aed14baca239 GIT binary patch literal 29994 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

KxE=1aLZbqPvZWU*)&9wsk=I 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/image/install.png b/src/image/install.png new file mode 100644 index 0000000000000000000000000000000000000000..bad5cd0cd014b07fdb75447d5a10721b40b5d8fe GIT binary patch literal 13771 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 F@_!UP3Bv#Y literal 0 HcmV?d00001 diff --git a/src/image/installation.jpg b/src/image/installation.jpg new file mode 100644 index 0000000000000000000000000000000000000000..26a5feb796f1d91401ad2e558982ab00032613f3 GIT binary patch literal 513644 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%0A&Z5Cr%wv9vA?D#Y>CTf{G5l;C*gwGowHl`y@66H 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ɵnigPl9crmp^Wmy$$U@^J!#79-2g0M&2)IQO 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

-jrw zaJSdNM3&bI!TP(05-kTxFRts9)2S-ZCim{hqBqi`BSP=U0A-dl8 z4;4$k&?5Q%@XekpmYkotbJYz5_+E$A0&1u&;w|B*+?Umo=mqG!rwf+m?im3aP42SW zSXs4S`a3aUu0Hli(3jQ9;qsA43!vLP)cWnfPqG1*FPM&?$J6@B(ZcYG(pF|RMjQ!% zg;Qav@Q~|!ym^h(#i7;l`Ce6SiTz(J3SyNnWx0iW1c}L~EZ=*t*L+L4TG_`vu{d4k zUxWQ>>eSZ!94&uS2+0a8;=wm;@y?9wxc^)-{*-C47_MYdY+w%T)X|^cuDbR|&qNBY zR4J)sCUefs-1z2oP*6@Pg9L=7xw)J%y)K{_C}u(ePH(d7T{e+@Bi2TVl=^;r`F_e!6sW11Wn{W!YVK^32rS_>6(K;zULhJ<6q9q2gzJ zD2nV5CH1hVho&Mq^r8TRGbJ`#CFtoKonaUz>KtaxT&smTNuxmfk`sqe$(^8J^e9?K z`DqctJQGK+Rj+JoQN?Ry+x>5jV&)XtC4J)CsHOgR`ORJ*68q+&8~T}Yz<{}`f3L90 z;=O&!r3#Ari_<$8cl|Yk0+os-$^)5h!IAdSy!z#x$OmXt-4FMGm10#vMia{kKgzQh z?EA7Zsmua~fCJlH;sySnMejdPE5jfkpRocn$N`72ErsQu?~+m{<2@P+FG+Tp4ZH0U zD;z}eyQX7;I!;}yFZB^6y9C31GlrzR;AQwBZv5V_yn4A?+S_A;DAF@?Hsp2c_m2mQ z2XeM_^AW2i4(%LKYI)`|y?#G4)BPb#yp&s)1E;mY`j zq+D7+UV=-??IFG}ruUW$GMy(+Lk9Z)(wK@sjDvI^ w1Dt$QL!Z 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à{hXc9(NCuDsS;mut``M{ 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 literal 0 HcmV?d00001 diff --git a/src/laptop.png b/src/laptop.png new file mode 100644 index 0000000000000000000000000000000000000000..072343401293bf514c357dfcdffe8faf37657648 GIT binary patch literal 29182 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à{hXc9(NCuDsS;mut``M{ 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 t+N|Z_qQ}*B)7+$`>!RbTtIg4LcUQ+-Pgpnf Date: Sat, 12 Jul 2025 21:24:33 -0300 Subject: [PATCH 2/4] Update translations and new strings in po files - Adjust line mappings in .po files for translation strings - Add new translations for custom partitioning, password strength, keyboard setup, installer steps, and network setup strings - Update POT-Creation-Date in Romanian and Slovak .po files - Include various new UI strings for installation and try-live options --- .gitignore | 1 - install-station | 14 +- install_station/boot_manager.py | 14 +- install_station/common.py | 49 +-- install_station/custom.py | 32 +- install_station/data.py | 31 ++ install_station/end.py | 19 +- install_station/error.py | 22 +- install_station/install.py | 39 +- install_station/install_type.py | 17 +- install_station/interface_controller.py | 128 ++++--- install_station/keyboard.py | 308 +++++++++++++++ install_station/language.py | 297 +++++++++----- install_station/network_setup.py | 385 +++++++++++++------ install_station/partition.py | 2 +- install_station/system_calls.py | 4 +- install_station/try_install.py | 161 ++++++++ install_station/use_zfs.py | 52 ++- install_station/welcome_live.py | 293 -------------- po/POTFILES.in | 1 + po/ar_SA.po | 326 ++++++++++------ po/bg_BG.po | 326 ++++++++++------ po/ca_ES.po | 326 ++++++++++------ po/cs_CZ.po | 326 ++++++++++------ po/da_DK.po | 326 ++++++++++------ po/de_DE.po | 326 ++++++++++------ po/el_GR.po | 326 ++++++++++------ po/en_GB.po | 462 +++++++++++++++------- po/en_US.po | 427 +++++++++++++++------ po/es_ES.po | 326 ++++++++++------ po/et_EE.po | 326 ++++++++++------ po/fi_FI.po | 326 ++++++++++------ po/fr_CA.po | 489 +++++++++++++++--------- po/fr_FR.po | 453 ++++++++++++++-------- po/hr_HR.po | 326 ++++++++++------ po/hu_HU.po | 326 ++++++++++------ po/install-station.pot | 463 ++++++++++++++++++++++ po/it_IT.po | 326 ++++++++++------ po/ja_JP.po | 326 ++++++++++------ po/ko_KR.po | 326 ++++++++++------ po/lt_LT.po | 326 ++++++++++------ po/lv_LV.po | 326 ++++++++++------ po/nl_NL.po | 326 ++++++++++------ po/no_NO.po | 326 ++++++++++------ po/pl_PL.po | 326 ++++++++++------ po/pt_BR.po | 326 ++++++++++------ po/pt_PT.po | 326 ++++++++++------ po/ro_RO.po | 326 ++++++++++------ po/ru_RU.po | 326 ++++++++++------ po/sk_SK.po | 326 ++++++++++------ po/sl_SI.po | 326 ++++++++++------ po/sv_SE.po | 326 ++++++++++------ po/th_TH.po | 326 ++++++++++------ po/tr_TR.po | 326 ++++++++++------ po/vi_VN.po | 326 ++++++++++------ po/zh_CN.po | 326 ++++++++++------ po/zh_TW.po | 326 ++++++++++------ setup.py | 26 +- 58 files changed, 9672 insertions(+), 4949 deletions(-) create mode 100644 install_station/keyboard.py create mode 100644 install_station/try_install.py delete mode 100644 install_station/welcome_live.py create mode 100644 po/install-station.pot diff --git a/.gitignore b/.gitignore index 9020a70..06ee84c 100644 --- a/.gitignore +++ b/.gitignore @@ -49,7 +49,6 @@ coverage.xml # Translations *.mo -*.pot # Django stuff: *.log diff --git a/install-station b/install-station index 87d11b0..0fa003b 100755 --- a/install-station +++ b/install-station @@ -5,12 +5,14 @@ Install Station executable module. import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk -from install_station.welcome_live import Welcome +from install_station.language import Language +from install_station.keyboard import Keyboard +from install_station.network_setup import NetworkSetup +from install_station.try_install import TryOrInstall from install_station.install_type import InstallTypes from install_station.custom import PartitionManager from install_station.use_zfs import ZFS from install_station.boot_manager import BootManager -from install_station.network_setup import NetworkSetup from install_station.data import logo from install_station.window import Window from install_station.interface_controller import Interface, Button @@ -25,12 +27,14 @@ class MainWindow: """ Install Station main window class initiation. """ - Interface.welcome = Welcome + Interface.welcome = Language + Interface.keyboard = Keyboard + Interface.network_setup = NetworkSetup + Interface.try_isntall = TryOrInstall Interface.installation_type = InstallTypes Interface.custom_partition = PartitionManager Interface.full_zfs = ZFS Interface.boot_manager = BootManager - Interface.net_setup = NetworkSetup Window.connect("delete_event", Interface.delete) Window.set_border_width(0) Window.set_default_size(800, 500) @@ -43,7 +47,7 @@ class MainWindow: Window.add(main_box) main_box.pack_start(Interface.get_interface(), True, True, 0) Window.show_all() - Button.hide_all() # Initially hide all buttons + Button.show_initial() MainWindow() diff --git a/install_station/boot_manager.py b/install_station/boot_manager.py index 01c50a5..e5789e5 100644 --- a/install_station/boot_manager.py +++ b/install_station/boot_manager.py @@ -2,12 +2,8 @@ gi.require_version('Gtk', '3.0') from gi.repository import Gtk, Gdk from install_station.partition import bios_or_uefi -from install_station.data import InstallationData -import gettext +from install_station.data import InstallationData, get_text -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext cssProvider = Gtk.CssProvider() cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') @@ -122,7 +118,7 @@ def initialize(cls): scheme = cls._get_partition_scheme() # Create title header - title = Gtk.Label(label=_('Boot Option'), name="Header") + title = Gtk.Label(label=get_text('Boot Option'), name="Header") title.set_property("height-request", 50) cls.vbox1.pack_start(title, False, False, 0) @@ -136,7 +132,7 @@ def initialize(cls): bbox1.show() # rEFInd boot manager option - cls.refind = Gtk.RadioButton(label=_("Setup rEFInd boot manager")) + cls.refind = Gtk.RadioButton(label=get_text("Setup rEFInd boot manager")) bbox1.pack_start(cls.refind, False, True, 10) cls.refind.connect("toggled", cls.boot_manager_selection, "refind") cls.refind.show() @@ -150,7 +146,7 @@ def initialize(cls): # FreeBSD boot manager option cls.bsd = Gtk.RadioButton.new_with_label_from_widget( cls.refind, - _("Setup FreeBSD boot manager") + get_text("Setup FreeBSD boot manager") ) bbox1.pack_start(cls.bsd, False, True, 10) cls.bsd.connect("toggled", cls.boot_manager_selection, "bsd") @@ -165,7 +161,7 @@ def initialize(cls): # Native loader option (always available) cls.none = Gtk.RadioButton.new_with_label_from_widget( cls.bsd, - _("FreeBSD {loader} loader only").format(loader=loader) + get_text("FreeBSD {loader} loader only").format(loader=loader) ) bbox1.pack_start(cls.none, False, True, 10) cls.none.connect("toggled", cls.boot_manager_selection, "none") diff --git a/install_station/common.py b/install_station/common.py index ff1b70a..f62d40d 100644 --- a/install_station/common.py +++ b/install_station/common.py @@ -1,5 +1,6 @@ import re import warnings +from install_station.data import get_text def lower_case(text: str) -> bool: @@ -104,53 +105,53 @@ def password_strength(password, label3): ] ) if ' ' in password or '\t' in password: - label3.set_text("Space not allowed") + label3.set_text(get_text("Space not allowed")) elif len(password) <= 4: - label3.set_text("Super Weak") + label3.set_text(get_text("Super Weak")) elif len(password) <= 8 and same_character_type: - label3.set_text("Super Weak") + label3.set_text(get_text("Super Weak")) elif len(password) <= 8 and mix_character: - label3.set_text("Very Weak") + label3.set_text(get_text("Very Weak")) elif len(password) <= 8 and lower_upper_number(password): - label3.set_text("Fairly Weak") + label3.set_text(get_text("Fairly Weak")) elif len(password) <= 8 and all_character(password): - label3.set_text("Weak") + label3.set_text(get_text("Weak")) elif len(password) <= 12 and same_character_type: - label3.set_text("Very Weak") + label3.set_text(get_text("Very Weak")) elif len(password) <= 12 and mix_character: - label3.set_text("Fairly Weak") + label3.set_text(get_text("Fairly Weak")) elif len(password) <= 12 and lower_upper_number(password): - label3.set_text("Weak") + label3.set_text(get_text("Weak")) elif len(password) <= 12 and all_character(password): - label3.set_text("Strong") + label3.set_text(get_text("Strong")) elif len(password) <= 16 and same_character_type: - label3.set_text("Fairly Weak") + label3.set_text(get_text("Fairly Weak")) elif len(password) <= 16 and mix_character: - label3.set_text("Weak") + label3.set_text(get_text("Weak")) elif len(password) <= 16 and lower_upper_number(password): - label3.set_text("Strong") + label3.set_text(get_text("Strong")) elif len(password) <= 16 and all_character(password): - label3.set_text("Fairly Strong") + label3.set_text(get_text("Fairly Strong")) elif len(password) <= 20 and same_character_type: - label3.set_text("Weak") + label3.set_text(get_text("Weak")) elif len(password) <= 20 and mix_character: - label3.set_text("Strong") + label3.set_text(get_text("Strong")) elif len(password) <= 20 and lower_upper_number(password): - label3.set_text("Fairly Strong") + label3.set_text(get_text("Fairly Strong")) elif len(password) <= 20 and all_character(password): - label3.set_text("Very Strong") + label3.set_text(get_text("Very Strong")) elif len(password) <= 24 and same_character_type: - label3.set_text("Strong") + label3.set_text(get_text("Strong")) elif len(password) <= 24 and mix_character: - label3.set_text("Fairly Strong") + label3.set_text(get_text("Fairly Strong")) elif len(password) <= 24 and lower_upper_number(password): - label3.set_text("Very Strong") + label3.set_text(get_text("Very Strong")) elif len(password) <= 24 and all_character(password): - label3.set_text("Super Strong") + label3.set_text(get_text("Super Strong")) elif same_character_type: - label3.set_text("Fairly Strong") + label3.set_text(get_text("Fairly Strong")) else: - label3.set_text("Super Strong") + label3.set_text(get_text("Super Strong")) def deprecated(*, version: str, reason: str): diff --git a/install_station/custom.py b/install_station/custom.py index 2ed7163..35861fb 100644 --- a/install_station/custom.py +++ b/install_station/custom.py @@ -11,13 +11,9 @@ CreatePartition, CreateLabel ) -from install_station.data import InstallationData, logo +from install_station.data import InstallationData, logo, get_text from install_station.interface_controller import Button -import gettext -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext bios_type = bios_or_uefi() @@ -249,19 +245,19 @@ def delete_create_button(cls): bbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=10) bbox.set_border_width(5) bbox.set_spacing(10) - cls.create_bt = Gtk.Button(label="Create") + cls.create_bt = Gtk.Button(label=get_text("Create")) cls.create_bt.connect("clicked", cls.create_partition) cls.create_bt.set_sensitive(False) bbox.pack_start(cls.create_bt, True, True, 0) - cls.delete_bt = Gtk.Button(label="Delete") + cls.delete_bt = Gtk.Button(label=get_text("Delete")) cls.delete_bt.connect("clicked", cls.delete_partition) cls.delete_bt.set_sensitive(False) bbox.pack_start(cls.delete_bt, True, True, 0) - cls.revert_bt = Gtk.Button(label="Revert") + cls.revert_bt = Gtk.Button(label=get_text("Revert")) cls.revert_bt.connect("clicked", cls.revert_change) cls.revert_bt.set_sensitive(False) bbox.pack_start(cls.revert_bt, True, True, 0) - cls.auto_bt = Gtk.Button(label="Auto") + cls.auto_bt = Gtk.Button(label=get_text("Auto")) cls.auto_bt.connect("clicked", cls.auto_partition) cls.auto_bt.set_sensitive(False) bbox.pack_start(cls.auto_bt, True, True, 0) @@ -329,7 +325,7 @@ def label_editor(cls, path, size, scheme): """ free_space = int(size) cls.window = Gtk.Window() - cls.window.set_title(title="Add Partition") + cls.window.set_title(title=get_text("Add Partition")) cls.window.set_border_width(0) cls.window.set_size_request(480, 200) cls.window.set_icon_from_file(logo) @@ -343,9 +339,9 @@ def label_editor(cls, path, size, scheme): # Create partition configuration table table = Gtk.Table(1, 2, True) - label1 = Gtk.Label(label="Type:") - label2 = Gtk.Label(label="Size(MB):") - label3 = Gtk.Label(label="Mount point:") + label1 = Gtk.Label(label=get_text("Type:")) + label2 = Gtk.Label(label=get_text("Size(MB):")) + label3 = Gtk.Label(label=get_text("Mount point:")) cls.fs_type = Gtk.ComboBoxText() cls.fs_type.append_text('ZFS') cls.fs_type.append_text('SWAP') @@ -497,7 +493,7 @@ def scheme_editor(cls): partition schemes for the selected disk. """ cls.window = Gtk.Window() - cls.window.set_title("Partition Scheme") + cls.window.set_title(get_text("Partition Scheme")) cls.window.set_border_width(0) cls.window.set_size_request(400, 150) cls.window.set_icon_from_file(logo) @@ -516,8 +512,8 @@ def scheme_editor(cls): # Adding a combo box to selecting MBR or GPT scheme. cls.scheme = 'GPT' scheme_box = Gtk.ComboBoxText() - scheme_box.append_text("GPT: GUID Partition Table") - scheme_box.append_text("MBR: DOS Partition") + scheme_box.append_text(get_text("GPT: GUID Partition Table")) + scheme_box.append_text(get_text("MBR: DOS Partition")) scheme_box.connect('changed', cls.scheme_selection) scheme_box.set_active(0) table = Gtk.Table(1, 2, True) @@ -567,7 +563,7 @@ def slice_editor(cls): """ free_space = int(cls.size) cls.window = Gtk.Window() - cls.window.set_title("Add Partition") + cls.window.set_title(get_text("Add Partition")) cls.window.set_border_width(0) cls.window.set_size_request(400, 150) cls.window.set_icon_from_file(logo) @@ -581,7 +577,7 @@ def slice_editor(cls): # Create Partition slice table = Gtk.Table(1, 2, True) - label1 = Gtk.Label(label="Size(MB):") + label1 = Gtk.Label(label=get_text("Size(MB):")) adj = Gtk.Adjustment(free_space, 0, free_space, 1, 100, 0) cls.entry = Gtk.SpinButton(adjustment=adj, numeric=True) cls.entry.set_numeric(True) diff --git a/install_station/data.py b/install_station/data.py index 5b91739..b3385e8 100644 --- a/install_station/data.py +++ b/install_station/data.py @@ -1,9 +1,12 @@ """ Contains the data class and some commonly use variables """ +import os +import gettext be_name = "default" logo = "/usr/local/lib/install-station/image/logo.png" +gif_logo = "/usr/local/lib/install-station/image/G_logo.gif" pc_sysinstall = "/usr/local/sbin/pc-sysinstall" query = "sh /usr/local/lib/install-station/backend-query" tmp = "/tmp" @@ -50,6 +53,13 @@ class InstallationData: language: str = "" language_code: str = "" + # Keyboard configuration + keyboard_layout: str = "" + keyboard_layout_code: str = "" + keyboard_variant: str = "" + keyboard_model: str = "" + keyboard_model_code: str = "" + # Boot manager configuration boot_manager: str = "" @@ -73,5 +83,26 @@ def reset(cls): cls.filesystem_type = "" cls.language = "" cls.language_code = "" + cls.keyboard_layout = "" + cls.keyboard_layout_code = "" + cls.keyboard_variant = "" + cls.keyboard_model = "" + cls.keyboard_model_code = "" cls.boot_manager = "" cls.network_config = {} + + +def get_text(text): + """ + Global translation function that always returns current language translation. + + Args: + text: Text to translate + + Returns: + str: Translated text in current language + """ + # Force reload of translations for current language + gettext.bindtextdomain('install-station', '/usr/local/share/locale') + gettext.textdomain('install-station') + return gettext.gettext(text) diff --git a/install_station/end.py b/install_station/end.py index a420c2f..6b9c059 100644 --- a/install_station/end.py +++ b/install_station/end.py @@ -4,20 +4,17 @@ gi.require_version('Gtk', '3.0') from gi.repository import Gtk from subprocess import Popen -import gettext +from install_station.data import get_text -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext -lyrics = _("""Installation is complete. You need to restart the +lyrics = get_text("""Installation is complete. You need to restart the computer in order to use the new installation. You can continue to use this live media, although any changes you make or documents you save will not be preserved on reboot.""") -class PyApp: +class EndWindow: @classmethod def on_reboot(cls, _widget): Popen('shutdown -r now', shell=True) @@ -31,7 +28,7 @@ def __init__(self): window = Gtk.Window() window.set_border_width(8) window.connect("destroy", Gtk.main_quit) - window.set_title(_("Installation Completed")) + window.set_title(get_text("Installation Completed")) window.set_icon_from_file("/usr/local/lib/install-station/image/logo.png") box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) window.add(box1) @@ -47,15 +44,11 @@ def __init__(self): box1.pack_start(box2, False, True, 0) box2.show() table = Gtk.Table(1, 2, True) - restart = Gtk.Button(label=_("Restart")) + restart = Gtk.Button(label=get_text("Restart")) restart.connect("clicked", self.on_reboot) - continue_button = Gtk.Button(label=_("Continue")) + continue_button = Gtk.Button(label=get_text("Continue")) continue_button.connect("clicked", self.on_close) table.attach(continue_button, 0, 1, 0, 1) table.attach(restart, 1, 2, 0, 1) box2.pack_start(table, True, True, 0) window.show_all() - - -PyApp() -Gtk.main() diff --git a/install_station/error.py b/install_station/error.py index b9c63dc..47235a7 100644 --- a/install_station/error.py +++ b/install_station/error.py @@ -1,11 +1,7 @@ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk -import gettext - -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext +from install_station.data import get_text class ErrorWindow: @@ -18,7 +14,7 @@ def __init__(self): window = Gtk.Window() window.set_border_width(8) window.connect("destroy", Gtk.main_quit) - window.set_title(_("Installation Error")) + window.set_title(get_text("Installation Error")) # window.set_icon_from_file("/usr/local/lib/install-station/image/logo.png") box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) window.add(box1) @@ -29,13 +25,15 @@ def __init__(self): box2.show() title = Gtk.Label() title.set_use_markup(True) - title_text = _("Installation has failed!") + title_text = get_text("Installation has failed!") title.set_markup(f'{title_text}') label = Gtk.Label() label.set_use_markup(True) url = 'https://github.com/ghostbsd/ghostbsd-src/issues/new/choose' - anchor = f"{_('GhostBSD issue system')}" - message = _("Please report the issue to {anchor}, and \nbe sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log.").format(anchor=anchor) + anchor = f"{get_text('GhostBSD issue system')}" + message = get_text( + "Please report the issue to {anchor}, and \nbe sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." + ).format(anchor=anchor) label.set_markup(message) box2.pack_start(title, True, True, 0) box2.pack_start(label, True, True, 0) @@ -44,12 +42,8 @@ def __init__(self): box1.pack_start(box2, False, True, 0) box2.show() table = Gtk.Table(n_rows=1, n_columns=2, homogeneous=True) - ok = Gtk.Button(label=_("Ok")) + ok = Gtk.Button(label=get_text("Ok")) ok.connect("clicked", self.on_close) table.attach(ok, 0, 2, 0, 1) box2.pack_start(table, True, True, 0) window.show_all() - - -ErrorWindow() -Gtk.main() diff --git a/install_station/install.py b/install_station/install.py index 64937ed..faa3fc6 100644 --- a/install_station/install.py +++ b/install_station/install.py @@ -4,16 +4,23 @@ import threading from subprocess import Popen, PIPE, STDOUT from time import sleep -from install_station.partition import delete_partition, destroy_partition, add_partition +from install_station.partition import ( + delete_partition, + destroy_partition, + add_partition +) from install_station.create_cfg import Configuration +from install_station.end import EndWindow +from install_station.error import ErrorWindow from install_station.window import Window -from install_station.data import InstallationData, installation_config, pc_sysinstall -import sys -import gettext +from install_station.data import ( + gif_logo, + InstallationData, + installation_config, + pc_sysinstall, + get_text +) -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext cssProvider = Gtk.CssProvider() cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') @@ -36,21 +43,21 @@ def update_progress(progressbar, text): def read_output(command, progressbar): - GLib.idle_add(update_progress, progressbar, _("Creating ghostbsd_installation.cfg")) + GLib.idle_add(update_progress, progressbar, get_text("Creating ghostbsd_installation.cfg")) Configuration.create_cfg() sleep(1) if InstallationData.delete: - GLib.idle_add(update_progress, progressbar, _("Deleting partition")) + GLib.idle_add(update_progress, progressbar, get_text("Deleting partition")) delete_partition() sleep(1) # destroy disk partition and create scheme if InstallationData.destroy: - GLib.idle_add(update_progress, progressbar, _("Creating disk partition")) + GLib.idle_add(update_progress, progressbar, get_text("Creating disk partition")) destroy_partition() sleep(1) # create partition if InstallationData.create: - GLib.idle_add(update_progress, progressbar, _("Creating new partitions")) + GLib.idle_add(update_progress, progressbar, get_text("Creating new partitions")) add_partition() sleep(1) progressbar_text = None @@ -69,9 +76,9 @@ def read_output(command, progressbar): # filer.close print(progressbar_text) if progressbar_text.rstrip() == "Installation finished!": - Popen(f'python {install-station_dir}/end.py', shell=True, close_fds=True) + EndWindow() else: - Popen(f'python {install-station_dir}/error.py', shell=True, close_fds=True) + ErrorWindow() Window.hide() @@ -80,7 +87,7 @@ class InstallWindow: def __init__(self): self.vBox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) self.vBox.show() - label = Gtk.Label(label=_("Installation in progress"), name="Header") + label = Gtk.Label(label=get_text("Installation in progress"), name="Header") label.set_property("height-request", 50) self.vBox.pack_start(label, False, False, 0) @@ -91,7 +98,7 @@ def __init__(self): vbox2.show() label2 = Gtk.Label(name="sideText") - label2.set_markup(_( + label2.set_markup(get_text( "Thank you for choosing GhostBSD!\n\n" "We believe every computer operating system should " "be simple, elegant, secure and protect your privacy" @@ -110,7 +117,7 @@ def __init__(self): hbox.pack_start(hbox2, True, True, 0) hbox2.pack_start(label2, True, True, 30) image = Gtk.Image() - image.set_from_file(f"{install-station_dir}/image/G_logo.gif") + image.set_from_file(gif_logo) # image.set_size_request(width=256, height=256) image.show() hbox.pack_end(image, True, True, 20) diff --git a/install_station/install_type.py b/install_station/install_type.py index 42efe15..7952fe0 100644 --- a/install_station/install_type.py +++ b/install_station/install_type.py @@ -4,10 +4,7 @@ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk, Gdk -from install_station.data import InstallationData -import gettext - -_ = gettext.gettext +from install_station.data import InstallationData, get_text cssProvider = Gtk.CssProvider() cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') @@ -52,12 +49,15 @@ def initialize(cls): InstallationData.filesystem_type = cls.ne cls.vbox1.pack_start(hbox1, True, False, 0) hbox1.set_halign(Gtk.Align.CENTER) - label = Gtk.Label(label=_("How do you want to install GhostBSD?")) + label = Gtk.Label(label=get_text("How do you want to install GhostBSD?")) label.set_alignment(0, 0.5) vbox2.pack_start(label, False, False, 10) # Create radio button group cls.full_zfs_button = Gtk.RadioButton( - label=_("Disks Configuration\nInstall GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 configurations.") + label=get_text( + "Disks Configuration" + "\nInstall GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 configurations." + ) ) cls.full_zfs_button.get_child().set_use_markup(True) cls.full_zfs_button.get_child().set_line_wrap(True) @@ -67,7 +67,10 @@ def initialize(cls): cls.custom_button = Gtk.RadioButton.new_with_label_from_widget( cls.full_zfs_button, - _("Multi-Boot Configuration\nInstall GhostBSD with ZFS alongside other operating systems.") + get_text( + "Multi-Boot Configuration\n" + "Install GhostBSD with ZFS alongside other operating systems." + ) ) cls.custom_button.get_child().set_use_markup(True) cls.custom_button.get_child().set_line_wrap(True) diff --git a/install_station/interface_controller.py b/install_station/interface_controller.py index e424ea9..37463fc 100644 --- a/install_station/interface_controller.py +++ b/install_station/interface_controller.py @@ -1,24 +1,26 @@ from gi.repository import Gtk -import gettext from install_station.install import InstallProgress, InstallWindow from install_station.partition import DiskPartition from install_station.window import Window -from install_station.data import InstallationData - -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext +from install_station.data import InstallationData, get_text class Button: - back_button = Gtk.Button(label=_('Back')) + back_button = Gtk.Button(label=get_text('Back')) """This button is used to go back to the previous page.""" - cancel_button = Gtk.Button(label=_('Cancel')) + cancel_button = Gtk.Button(label=get_text('Cancel')) """This button is used to quit and clean up.""" - next_button = Gtk.Button(label=_('Next')) + next_button = Gtk.Button(label=get_text('Next')) """This button is used to go to the next page.""" _box = None + @classmethod + def update_button_labels(cls): + """Update button labels with current language translations.""" + cls.back_button.set_label(get_text('Back')) + cls.cancel_button.set_label(get_text('Cancel')) + cls.next_button.set_label(get_text('Next')) + @classmethod def hide_all(cls): """ @@ -33,6 +35,7 @@ def show_initial(cls): """ This method shows the initial buttons. Cancel and Next. """ + cls.back_button.hide() cls.cancel_button.show() cls.next_button.show() @@ -48,6 +51,7 @@ def hide_back(cls): """ This method hides the back button. """ + cls.back_button.hide() @classmethod def box(cls): @@ -77,11 +81,13 @@ def box(cls): class Interface: welcome = None + keyboard = None + network_setup = None + try_isntall = None installation_type = None custom_partition = None full_zfs = None boot_manager = None - network_setup = None page = Gtk.Notebook() @classmethod @@ -97,8 +103,8 @@ def get_interface(cls): cls.welcome.initialize() get_types = cls.welcome.get_model() welcome_box.pack_start(get_types, True, True, 0) - Window.set_title(_("Welcome to GhostBSD")) - label = Gtk.Label(label=_("Welcome to GhostBSD")) + Window.set_title(get_text("Welcome to GhostBSD")) + label = Gtk.Label(label=get_text("Welcome to GhostBSD")) cls.page.insert_page(welcome_box, label, 0) # Set what page to start at type of installation cls.page.set_current_page(0) @@ -107,7 +113,7 @@ def get_interface(cls): cls.nbButton.show() cls.nbButton.set_show_tabs(False) cls.nbButton.set_show_border(False) - label = Gtk.Label(label=_("Button")) + label = Gtk.Label(label=get_text("Button")) cls.nbButton.insert_page(Button.box(), label, 0) return interface_box @@ -119,34 +125,61 @@ def delete(cls, _widget, _event=None): @classmethod def next_page(cls, _widget): - if InstallationData.install_mode == "install": - cls.next_install_page() - else: - cls.next_setup_page() - - @classmethod - def next_install_page(cls): """Go to the next window.""" page = cls.page.get_current_page() if page == 0: - type_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - type_box.show() - get_types = cls.installation_type.get_model() - type_box.pack_start(get_types, True, True, 0) - label = Gtk.Label(label=_("Installation Types")) - cls.page.insert_page(type_box, label, 1) + # Check if the keyboard page already exists + if cls.page.get_n_pages() <= 1: + keyboard_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + keyboard_box.show() + get_keyboard = cls.keyboard.get_model() + keyboard_box.pack_start(get_keyboard, True, True, 0) + label = Gtk.Label(label=get_text("Keyboard Setup")) + cls.page.insert_page(keyboard_box, label, 1) cls.page.next_page() cls.page.show_all() - Button.show_initial() + Button.show_back() elif page == 1: + # Check if the network setup page already exists + if cls.page.get_n_pages() <= 2: + network_setup_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + network_setup_box.show() + get_network_setup = cls.network_setup.get_model() + network_setup_box.pack_start(get_network_setup, True, True, 0) + label = Gtk.Label(label=get_text("Network Setup")) + cls.page.insert_page(network_setup_box, label, 2) + cls.page.next_page() + cls.page.show_all() + elif page == 2: + # Check if the try_install page already exists + if cls.page.get_n_pages() <= 3: + try_install_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + try_install_box.show() + get_try_install = cls.try_isntall.get_model() + try_install_box.pack_start(get_try_install, True, True, 0) + label = Gtk.Label(label=get_text("Try Or Install GhostBSD")) + cls.page.insert_page(try_install_box, label, 3) + cls.page.next_page() + cls.page.show_all() + elif page == 3: + if cls.page.get_n_pages() <= 4: + type_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + type_box.show() + get_types = cls.installation_type.get_model() + type_box.pack_start(get_types, True, True, 0) + label = Gtk.Label(label=get_text("Installation Types")) + cls.page.insert_page(type_box, label, 4) + cls.page.next_page() + cls.page.show_all() + elif page == 4: Button.show_back() if InstallationData.filesystem_type == "custom": custom_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) custom_box.show() get_part = cls.custom_partition.get_model() custom_box.pack_start(get_part, True, True, 0) - label = Gtk.Label(label=_("Custom Configuration")) - cls.page.insert_page(custom_box, label, 2) + label = Gtk.Label(label=get_text("Custom Configuration")) + cls.page.insert_page(custom_box, label, 5) cls.page.next_page() cls.page.show_all() Button.next_button.set_sensitive(False) @@ -155,38 +188,38 @@ def next_install_page(cls): zfs_box.show() get_zfs = cls.full_zfs.get_model() zfs_box.pack_start(get_zfs, True, True, 0) - label = Gtk.Label(label=_("ZFS Configuration")) - cls.page.insert_page(zfs_box, label, 2) + label = Gtk.Label(label=get_text("ZFS Configuration")) + cls.page.insert_page(zfs_box, label, 5) cls.page.next_page() cls.page.show_all() Button.next_button.set_sensitive(False) - elif page == 2: + elif page == 5: boot_manager_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) boot_manager_box.show() get_root = cls.boot_manager.get_model() boot_manager_box.pack_start(get_root, True, True, 0) - label = Gtk.Label(label=_("Boot Option")) - cls.page.insert_page(boot_manager_box, label, 3) - Button.next_button.set_label(_("Install")) + label = Gtk.Label(label=get_text("Boot Option")) + cls.page.insert_page(boot_manager_box, label, 6) + Button.next_button.set_label(get_text("Install")) cls.page.next_page() cls.page.show_all() Button.next_button.set_sensitive(True) - elif page == 3: + elif page == 6: installation_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) installation_box.show() install_window = InstallWindow() get_install = install_window.get_model() installation_box.pack_start(get_install, True, True, 0) - label = Gtk.Label(label=_("Installation Progress")) - cls.page.insert_page(installation_box, label, 8) + label = Gtk.Label(label=get_text("Installation Progress")) + cls.page.insert_page(installation_box, label, 7) cls.page.next_page() installation_progressbar = InstallProgress() progressbar = installation_progressbar.get_progressbar() box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) box1.show() - label = Gtk.Label(label=_("Progress Bar")) + label = Gtk.Label(label=get_text("Progress Bar")) box1.pack_end(progressbar, False, False, 0) - cls.nbButton.insert_page(box1, label, 4) + cls.nbButton.insert_page(box1, label, 1) cls.nbButton.next_page() current_page_widget = cls.page.get_nth_page(cls.page.get_current_page()) title_text = cls.page.get_tab_label_text(current_page_widget) @@ -198,12 +231,12 @@ def next_setup_page(cls): if page == 0: Button.next_button.show() Button.next_button.set_sensitive(False) - Window.set_title(_("Network Setup")) + Window.set_title(get_text("Network Setup")) net_setup_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) net_setup_box.show() model = cls.network_setup.get_model() net_setup_box.pack_start(model, True, True, 0) - label = Gtk.Label(label=_("Network Setup")) + label = Gtk.Label(label=get_text("Network Setup")) cls.page.insert_page(net_setup_box, label, 1) cls.page.next_page() cls.page.show_all() @@ -220,13 +253,11 @@ def back_page(cls, _widget): current_page = cls.page.get_current_page() if current_page == 1: Button.hide_back() - if current_page == 2: - Button.hide_back() elif current_page == 3: - Button.next_button.set_label(_("Next")) + Button.next_button.set_label(get_text("Next")) cls.page.prev_page() new_page = cls.page.get_current_page() - if current_page == 2 and new_page == 1: + if current_page == 1 and new_page == 0: # Reset partition configuration data when going back InstallationData.destroy = {} InstallationData.delete = [] @@ -239,4 +270,7 @@ def back_page(cls, _widget): InstallationData.ufs_config_data = [] # Clean up temporary directory if it exists DiskPartition.create_partition_database() - Button.next_button.set_sensitive(True) + current_page_widget = cls.page.get_nth_page(cls.page.get_current_page()) + title_text = cls.page.get_tab_label_text(current_page_widget) + Window.set_title(title_text) + # Button.next_button.set_sensitive(True) diff --git a/install_station/keyboard.py b/install_station/keyboard.py new file mode 100644 index 0000000..e70bb8b --- /dev/null +++ b/install_station/keyboard.py @@ -0,0 +1,308 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk, Gdk +import os +from install_station.system_calls import ( + keyboard_dictionary, + keyboard_models, + change_keyboard, + set_keyboard +) +from install_station.data import InstallationData, tmp, get_text + +# Ensure temp directory exists +if not os.path.exists(tmp): + os.makedirs(tmp) + +layout = f'{tmp}layout' +variant = f'{tmp}variant' +KBFile = f'{tmp}keyboard' + +kb_dictionary = keyboard_dictionary() +kbm_dictionary = keyboard_models() + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +# This class is for placeholder for entry. +class PlaceHolderEntry(Gtk.Entry): + + def __init__(self, *args, **kwds): + Gtk.Entry.__init__(self, *args, **kwds) + self.placeholder = get_text('Type here to test your keyboard') + self.set_text(self.placeholder) + self._default = True + self.connect('focus-in-event', self._focus_in_event) + self.connect('focus-out-event', self._focus_out_event) + + def _focus_in_event(self, _widget, _event): + if self._default: + self.set_text('') + + def _focus_out_event(self, _widget, _event): + if Gtk.Entry.get_text(self) == '': + self.set_text(self.placeholder) + self._default = True + else: + self._default = False + + def get_text(self): + if self._default: + return '' + return Gtk.Entry.get_text(self) + + +class Keyboard: + """ + Utility class for the keyboard configuration screen following the utility class pattern. + + This class provides a GTK+ interface for keyboard layout and model selection including: + - Keyboard layout selection from available system layouts + - Keyboard model selection from available models + - Real-time keyboard testing with preview text entry + - Integration with InstallationData for persistent configuration + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the Interface controller for navigation flow. + """ + # Class variables instead of instance variables + kb_layout = None + kb_variant = None + kb_model = None + vbox1 = None + treeView = None + test_entry = None + + @classmethod + def layout_columns(cls, treeview): + """ + Configure the keyboard layout treeview with appropriate columns. + + Creates a single column with a "Keyboard Layout" header for displaying + available keyboard layouts in the tree view. + + Args: + treeview: TreeView widget to configure with layout column + """ + cell = Gtk.CellRendererText() + column = Gtk.TreeViewColumn(None, cell, text=0) + column_header = Gtk.Label(label=f'{get_text("Keyboard Layout")}') + column_header.set_use_markup(True) + column_header.show() + column.set_widget(column_header) + column.set_sort_column_id(0) + treeview.append_column(column) + + @classmethod + def variant_columns(cls, treeview): + """ + Configure the keyboard model treeview with appropriate columns. + + Creates a single column with a "Keyboard Models" header for displaying + available keyboard models in the tree view. + + Args: + treeview: TreeView widget to configure with model column + """ + cell = Gtk.CellRendererText() + column = Gtk.TreeViewColumn(None, cell, text=0) + column_header = Gtk.Label(label=f'{get_text("Keyboard Models")}') + column_header.set_use_markup(True) + column_header.show() + column.set_widget(column_header) + column.set_sort_column_id(0) + treeview.append_column(column) + + @classmethod + def layout_selection(cls, tree_selection): + """ + Handle keyboard layout selection from the treeview. + + Extracts the selected layout from the tree view and updates both + class variables and InstallationData with the layout information. + Also applies the keyboard layout change immediately for testing. + + Args: + tree_selection: TreeSelection widget containing the user's layout choice + """ + model, treeiter = tree_selection.get_selected() + if treeiter is not None: + value = model[treeiter][0] + kb_lv = kb_dictionary[value] + cls.kb_layout = kb_lv['layout'] + cls.kb_variant = kb_lv['variant'] + # Save to InstallationData + InstallationData.keyboard_layout = value + InstallationData.keyboard_layout_code = cls.kb_layout + InstallationData.keyboard_variant = cls.kb_variant + change_keyboard(cls.kb_layout, cls.kb_variant) + print(f"Keyboard layout selected: {value} ({cls.kb_layout}/{cls.kb_variant})") + + @classmethod + def model_selection(cls, tree_selection): + """ + Handle keyboard model selection from the treeview. + + Extracts the selected model from the tree view and updates both + class variables and InstallationData with the model information. + Also applies the keyboard model change immediately for testing. + + Args: + tree_selection: TreeSelection widget containing the user's model choice + """ + model, treeiter = tree_selection.get_selected() + if treeiter is not None: + value = model[treeiter][0] + cls.kb_model = kbm_dictionary[value] + # Save to InstallationData + InstallationData.keyboard_model = value + InstallationData.keyboard_model_code = cls.kb_model + if cls.kb_layout and cls.kb_variant: + change_keyboard(cls.kb_layout, cls.kb_variant, cls.kb_model) + print(f"Keyboard model selected: {value} ({cls.kb_model})") + + @classmethod + def save_selection(cls): + """ + Save the current keyboard selection. + + This method saves keyboard configuration to both InstallationData + (for the installer) and temporary files (for compatibility). + """ + # Data is now saved in InstallationData automatically + # Keep file writing for compatibility + if cls.kb_layout and cls.kb_variant and cls.kb_model: + with open(KBFile, 'w') as file: + file.write(f"{cls.kb_layout}\\n") + file.write(f"{cls.kb_variant}\\n") + file.write(f"{cls.kb_model}\\n") + + @classmethod + def save_keyboard(cls): + """ + Apply the keyboard configuration to the system. + + This method applies the selected keyboard layout, variant, and model + to the current system for immediate use. + """ + if cls.kb_layout and cls.kb_variant and cls.kb_model: + set_keyboard(cls.kb_layout, cls.kb_variant, cls.kb_model) + + @classmethod + def initialize(cls): + """ + Initialize the keyboard configuration UI following the utility class pattern. + + Creates the main interface including: + - Keyboard layout selection tree view on the left side + - Keyboard model selection tree view on the right side + - Test entry field at the bottom for keyboard testing + - Grid-based layout with proper spacing and margins + + This method is called automatically by get_model() when the interface is first accessed. + """ + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + + main_grid = Gtk.Grid() + cls.vbox1.pack_start(main_grid, True, True, 0) + + # Create two scrolled windows side by side for layout and model selection + # Left side - Keyboard layouts + sw_layouts = Gtk.ScrolledWindow() + sw_layouts.set_shadow_type(Gtk.ShadowType.ETCHED_IN) + sw_layouts.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) + + layout_store = Gtk.TreeStore(str) + layout_store.append(None, [get_text('English (US)')]) + layout_store.append(None, [get_text('English (Canada)')]) + layout_store.append(None, [get_text('French (Canada)')]) + for line in sorted(kb_dictionary): + layout_store.append(None, [line.rstrip()]) + + cls.treeView = Gtk.TreeView() + cls.treeView.set_model(layout_store) + cls.treeView.set_rules_hint(True) + cls.layout_columns(cls.treeView) + layout_selection = cls.treeView.get_selection() + layout_selection.set_mode(Gtk.SelectionMode.SINGLE) + layout_selection.connect("changed", cls.layout_selection) + sw_layouts.add(cls.treeView) + sw_layouts.show() + + # Right side - Keyboard models + sw_models = Gtk.ScrolledWindow() + sw_models.set_shadow_type(Gtk.ShadowType.ETCHED_IN) + sw_models.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) + + model_store = Gtk.TreeStore(str) + for line in sorted(kbm_dictionary): + model_store.append(None, [line.rstrip()]) + + model_treeview = Gtk.TreeView() + model_treeview.set_model(model_store) + model_treeview.set_rules_hint(True) + cls.variant_columns(model_treeview) + model_selection = model_treeview.get_selection() + model_selection.set_mode(Gtk.SelectionMode.SINGLE) + model_selection.connect("changed", cls.model_selection) + sw_models.add(model_treeview) + sw_models.show() + + # Bottom - Test entry + cls.test_entry = PlaceHolderEntry() + + # Layout everything in grid + main_grid.set_row_spacing(5) + main_grid.set_column_spacing(10) + main_grid.set_column_homogeneous(True) + main_grid.set_row_homogeneous(True) + main_grid.set_margin_left(10) + main_grid.set_margin_right(10) + main_grid.set_margin_top(10) + main_grid.set_margin_bottom(10) + + main_grid.attach(sw_layouts, 0, 0, 1, 8) + main_grid.attach(sw_models, 1, 0, 1, 8) + main_grid.attach(cls.test_entry, 0, 9, 2, 1) + main_grid.show() + # Set default selection + cls.treeView.set_cursor(0) + + @classmethod + def get_model(cls): + """ + Return the GTK widget model for the keyboard configuration interface. + + Returns the main container widget that was created during initialization. + + Returns: + Gtk.Box: The main container widget for the keyboard configuration interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 + + @classmethod + def get_keyboard_info(cls): + """ + Get the current keyboard configuration information. + + Returns: + dict: Dictionary containing keyboard layout, variant, and model information + """ + return { + 'layout': InstallationData.keyboard_layout or cls.kb_layout, + 'layout_code': InstallationData.keyboard_layout_code or cls.kb_layout, + 'variant': InstallationData.keyboard_variant or cls.kb_variant, + 'model': InstallationData.keyboard_model or cls.kb_model, + 'model_code': InstallationData.keyboard_model_code or cls.kb_model + } diff --git a/install_station/language.py b/install_station/language.py index 77e48ac..2ff2e3f 100644 --- a/install_station/language.py +++ b/install_station/language.py @@ -1,23 +1,19 @@ +import gi +gi.require_version('Gtk', '3.0') from gi.repository import Gtk, Gdk import os from install_station.system_calls import ( language_dictionary, localize_system ) -from install_station.data import InstallationData, tmp, logo -import gettext - -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext +from install_station.data import InstallationData, tmp, gif_logo, get_text +from install_station.window import Window # Ensure temp directory exists if not os.path.exists(tmp): os.makedirs(tmp) lang_dictionary = language_dictionary() -# Text to be replace be multiple language file. -welltext = _("Select the language you want to use with GhostBSD.") cssProvider = Gtk.CssProvider() cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') @@ -31,113 +27,236 @@ class Language: - _instance = None - - def __new__(cls): - """Implement singleton pattern.""" - if cls._instance is None: - cls._instance = super(Language, cls).__new__(cls) - cls._instance._initialized = False - return cls._instance - - def __init__(self): - """Initialize only once.""" - if not self._initialized: - self._language = None - self._vbox1 = None - self._initialize_ui() - self._initialized = True - - # On selection it overwrite the default language file. - def _language_selection(self, tree_selection): + """ + Utility class for the language selection screen following the utility class pattern. + + This class provides a GTK+ interface for language selection including: + - Language selection from available system languages + - Visual elements with welcome message and logo + - Integration with InstallationData for persistent configuration + - Environment variable setting for immediate translation updates + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the Interface controller for navigation flow. + """ + # Class variables instead of instance variables + vbox1 = None + language = None + treeview = None + welcome_text = None + language_column_header = None + + @classmethod + def language_selection(cls, tree_selection): + """ + Handle language selection from the treeview. + + Extracts the selected language from the tree view and updates both + class variables and InstallationData with the language name and code. + Also sets environment variables globally so all modules pick up the language. + + Args: + tree_selection: TreeSelection widget containing the user's language choice + """ model, treeiter = tree_selection.get_selected() if treeiter is not None: value = model[treeiter][0] - self._language = lang_dictionary[value] + language_code = lang_dictionary[value] + cls.language = language_code InstallationData.language = value - InstallationData.language_code = lang_dictionary[value] - return + InstallationData.language_code = language_code + print(f"Language selected: {value} ({language_code})") + + # Set environment variables globally so all modules pick up the language + import os + os.environ['LANGUAGE'] = language_code + os.environ['LC_ALL'] = f'{language_code}.UTF-8' + os.environ['LANG'] = f'{language_code}.UTF-8' + + # Update the UI text with new translations + cls.update_ui_text() + + @classmethod + def update_ui_text(cls): + """ + Update all UI text elements with new translations after language change. + """ + from install_station.interface_controller import Button + + # Update navigation buttons + Button.update_button_labels() + + # Update the welcome text + if hasattr(cls, 'welcome_text') and cls.welcome_text: + cls.welcome_text.set_text( + get_text( + "Please select your language:" + ) + ) + + # Update the language column header + if hasattr(cls, 'language_column_header') and cls.language_column_header: + cls.language_column_header.set_text(get_text('Language')) - def _setup_language_columns(self, treeView): + Window.set_title(get_text("Welcome to GhostBSD")) + + @classmethod + def setup_language_columns(cls, treeview): + """ + Configure the language selection treeview with appropriate columns. + + Creates a single column with a "Language" header for displaying + available languages in the tree view. + + Args: + treeview: TreeView widget to configure with language column + """ cell = Gtk.CellRendererText() column = Gtk.TreeViewColumn(None, cell, text=0) - column_header = Gtk.Label(label=_('Language')) + column_header = Gtk.Label(label=get_text('Language')) column_header.set_use_markup(True) column_header.show() column.set_widget(column_header) + # Store reference for updating + cls.language_column_header = column_header column.set_sort_column_id(0) - treeView.append_column(column) - return - - # Initial definition. - def _initialize_ui(self): - # Add a Default vertical box - self._vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - self._vbox1.show() - # Add a second vertical box - grid = Gtk.Grid() - title = Gtk.Label(label=_('Welcome To GhostBSD!'), name="Header") - title.set_property("height-request", 50) - self._vbox1.pack_start(title, False, False, 0) - self._vbox1.pack_start(grid, True, True, 0) - grid.set_row_spacing(10) - grid.set_column_spacing(3) - grid.set_column_homogeneous(True) - grid.set_row_homogeneous(True) - grid.set_margin_left(10) - grid.set_margin_right(10) - grid.set_margin_top(10) - grid.set_margin_bottom(10) - # Adding a Scrolling Window + treeview.append_column(column) + + @classmethod + def save_selection(cls): + """ + Save the current language selection. + + This method is maintained for compatibility but language selection + is now automatically saved to InstallationData when chosen. + """ + # Language is now saved in InstallationData automatically + pass + + @classmethod + def save_language(cls): + """ + Apply the language configuration to the system. + + This method applies the selected language to the system for + permanent configuration during installation. + """ + language_code = InstallationData.language_code or cls.language + if language_code: + localize_system(language_code) + + @classmethod + def initialize(cls): + """ + Initialize the language selection UI following the utility class pattern. + + Creates the main interface including: + - Language selection tree view on the left side + - Welcome message and logo on the right side + - Grid-based layout with proper spacing and margins + + This method is called automatically by get_model() when the interface is first accessed. + """ + cls.language = None + + # Main container + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + + main_grid = Gtk.Grid() + cls.vbox1.pack_start(main_grid, True, True, 0) + + # Left side - Language selection sw = Gtk.ScrolledWindow() sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) - # Adding a treestore and store language in it. + store = Gtk.TreeStore(str) for line in lang_dictionary: store.append(None, [line]) - treeview = Gtk.TreeView() - treeview.set_model(store) - treeview.set_rules_hint(True) - self._setup_language_columns(treeview) - tree_selection = treeview.get_selection() + + cls.treeview = Gtk.TreeView() + cls.treeview.set_model(store) + cls.treeview.set_rules_hint(True) + cls.treeview.set_headers_visible(False) + cls.setup_language_columns(cls.treeview) + tree_selection = cls.treeview.get_selection() tree_selection.set_mode(Gtk.SelectionMode.SINGLE) - tree_selection.connect("changed", self._language_selection) - sw.add(treeview) + tree_selection.connect("changed", cls.language_selection) + sw.add(cls.treeview) sw.show() - grid.attach(sw, 1, 2, 1, 9) - # add text in a label. - vbox2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - vbox2.set_border_width(10) - vbox2.show() - wellcome_text = Gtk.Label(label=welltext) - wellcome_text.set_use_markup(True) - table = Gtk.Table() - table.attach(wellcome_text, 0, 1, 3, 4) - vbox2.pack_start(table, False, False, 5) + + # Right side - Welcome content + right_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) + right_box.set_border_width(20) + right_box.show() + + # Welcome text + cls.welcome_text = Gtk.Label( + label=get_text( + "Please select your language:" + ) + ) + cls.welcome_text.set_use_markup(True) + cls.welcome_text.set_line_wrap(True) + cls.welcome_text.set_justify(Gtk.Justification.CENTER) + cls.welcome_text.show() + + # Logo image = Gtk.Image() - image.set_from_file(logo) + image.set_from_file(gif_logo) image.show() - # grid.attach(self.wellcome, 1, 1, 3, 1) - vbox2.pack_start(image, True, True, 5) - grid.attach(vbox2, 2, 2, 2, 9) - grid.show() + + right_box.pack_start(cls.welcome_text, False, False, 10) + right_box.pack_start(sw, True, True, 10) + + # Layout in grid + main_grid.set_row_spacing(10) + main_grid.set_column_spacing(20) + main_grid.set_column_homogeneous(True) + main_grid.set_row_homogeneous(True) + main_grid.set_margin_left(10) + main_grid.set_margin_right(10) + main_grid.set_margin_top(10) + main_grid.set_margin_bottom(10) + + main_grid.attach(image, 0, 0, 1, 1) + main_grid.attach(right_box, 1, 0, 1, 1) + main_grid.show() @classmethod def get_model(cls): - return cls()._vbox1 + """ + Return the GTK widget model for the language selection interface. + + Returns the main container widget that was created during initialization. + + Returns: + Gtk.Box: The main container widget for the language selection interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 @classmethod def get_language(cls): - """Get the selected language.""" - return InstallationData.language_code or cls()._language - - def save_selection(self): - # Language is now saved in InstallationData automatically - pass + """ + Get the selected language code. + + Returns: + str: The selected language code + """ + return InstallationData.language_code or cls.language @classmethod - def save_language(cls): - language_code = InstallationData.language_code or cls()._language - if language_code: - localize_system(language_code) \ No newline at end of file + def get_language_info(cls): + """ + Get the current language configuration information. + + Returns: + dict: Dictionary containing language name and code information + """ + return { + 'language': InstallationData.language or '', + 'language_code': InstallationData.language_code or cls.language or '' + } diff --git a/install_station/network_setup.py b/install_station/network_setup.py index f0f3b26..6f61d46 100644 --- a/install_station/network_setup.py +++ b/install_station/network_setup.py @@ -10,11 +10,8 @@ delete_ssid_wpa_supplicant_config, nic_status ) -import gettext - -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext +from install_station.data import get_text +from install_station.interface_controller import Button logo = "/usr/local/lib/install-station/logo.png" cssProvider = Gtk.CssProvider() @@ -29,21 +26,55 @@ class NetworkSetup: - _instance = None - - def __new__(cls, button3=None): - """Implement singleton pattern.""" - if cls._instance is None: - cls._instance = super(NetworkSetup, cls).__new__(cls) - cls._instance._initialized = False - return cls._instance + """ + Utility class for network setup following the utility class pattern. + + This class provides a GTK+ interface for network configuration including: + - Wired network detection and status + - WiFi network detection and connection + - Network authentication dialogs + - Integration with Button class for navigation + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the Interface controller for navigation flow. + """ + # Class variables instead of instance variables + vbox1 = None + network_info = None + wire_connection_label = None + wire_connection_image = None + wifi_connection_label = None + wifi_connection_image = None + connection_box = None + store = None + window = None + password = None @classmethod def get_model(cls): - return cls().vbox1 + """ + Return the GTK widget model for the network setup interface. + + Returns the main container widget that was created during initialization. + + Returns: + Gtk.Box: The main container widget for the network setup interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 @staticmethod def wifi_stat(bar): + """ + Get WiFi signal strength icon name based on signal bar percentage. + + Args: + bar (int): Signal strength percentage + + Returns: + str: Icon name for the signal strength + """ if bar > 75: return 'nm-signal-100' elif bar > 50: @@ -55,121 +86,147 @@ def wifi_stat(bar): else: return 'nm-signal-00' - def update_network_detection(self): - cards = self.network_info['cards'] + @classmethod + def update_network_detection(cls): + """ + Update network detection status and UI elements. + + Checks both wired and wireless network connections and updates + the UI with current status and enables/disables next button. + """ + cards = cls.network_info['cards'] card_list = list(cards.keys()) r = re.compile("wlan") wlan_list = list(filter(r.match, card_list)) wire_list = list(set(card_list).difference(wlan_list)) - cards = self.network_info['cards'] + + # Update wired connection status if wire_list: for card in wire_list: if cards[card]['state']['connection'] == 'Connected': - - wire_text = _('Network card connected to the internet') - self.wire_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + wire_text = get_text('Network card connected to the internet') + cls.wire_connection_image.set_from_stock(Gtk.STOCK_YES, 5) print('Connected True') - self.next_button.set_sensitive(True) + Button.next_button.set_sensitive(True) break else: - wire_text = _('Network card not connected to the internet') - self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wire_text = get_text('Network card not connected to the internet') + cls.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) else: - wire_text = _('No network card detected') - self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wire_text = get_text('No network card detected') + cls.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) - self.wire_connection_label.set_label(wire_text) + cls.wire_connection_label.set_label(wire_text) + # Update WiFi connection status if wlan_list: for wlan_card in wlan_list: if cards[wlan_card]['state']['connection'] == 'Connected': - wifi_text = _('WiFi card detected and connected to an access point') - self.wifi_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + wifi_text = get_text('WiFi card detected and connected to an access point') + cls.wifi_connection_image.set_from_stock(Gtk.STOCK_YES, 5) break else: - wifi_text = _('WiFi card detected but not connected to an access point') - self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wifi_text = get_text('WiFi card detected but not connected to an access point') + cls.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) else: - wifi_text = _("WiFi card not detected or not supported") - self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wifi_text = get_text("WiFi card not detected or not supported") + cls.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) - self.wifi_connection_label.set_label(wifi_text) + cls.wifi_connection_label.set_label(wifi_text) - def __init__(self, next_button=None): - """Initialize only once.""" - if not self._initialized: - self.next_button = next_button - self._initialize_ui() - self._initialized = True + @classmethod + def update_ui_text(cls): + """ + Update all UI text elements with new translations after language change. + """ + # Update button labels + Button.update_button_labels() + + # Update network status if elements exist + if cls.network_info: + cls.update_network_detection() - def _initialize_ui(self): - self.network_info = networkdictionary() - print(self.network_info) - self.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - self.vbox1.show() - title = Gtk.Label(label=_('Network Setup'), name="Header") - title.set_property("height-request", 50) - self.vbox1.pack_start(title, False, False, 0) - cards = self.network_info['cards'] + @classmethod + def initialize(cls): + """ + Initialize the network setup UI following the utility class pattern. + + Creates the main interface including: + - Network status indicators for wired and wireless + - WiFi access point list if available + - Grid-based layout with proper spacing and margins + + This method is called automatically by get_model() when the interface is first accessed. + """ + cls.network_info = networkdictionary() + print(cls.network_info) + + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + + cards = cls.network_info['cards'] card_list = list(cards.keys()) r = re.compile("wlan") wlan_list = list(filter(r.match, card_list)) wire_list = list(set(card_list).difference(wlan_list)) - self.wire_connection_label = Gtk.Label() - self.wire_connection_label.set_xalign(0.01) - self.wire_connection_image = Gtk.Image() - self.wifi_connection_label = Gtk.Label() - self.wifi_connection_label.set_xalign(0.01) - self.wifi_connection_image = Gtk.Image() + cls.wire_connection_label = Gtk.Label() + cls.wire_connection_label.set_xalign(0.01) + cls.wire_connection_image = Gtk.Image() + cls.wifi_connection_label = Gtk.Label() + cls.wifi_connection_label.set_xalign(0.01) + cls.wifi_connection_image = Gtk.Image() + # Check wired connection status if wire_list: for card in wire_list: if cards[card]['state']['connection'] == 'Connected': - wire_text = _('Network card connected to the internet') - self.wire_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + wire_text = get_text('Network card connected to the internet') + cls.wire_connection_image.set_from_stock(Gtk.STOCK_YES, 5) print('Connected True') - self.next_button.set_sensitive(True) + Button.next_button.set_sensitive(True) break else: - wire_text = _('Network card not connected to the internet') - self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wire_text = get_text('Network card not connected to the internet') + cls.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) else: - wire_text = _('No network card detected') - self.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wire_text = get_text('No network card detected') + cls.wire_connection_image.set_from_stock(Gtk.STOCK_NO, 5) - self.wire_connection_label.set_label(wire_text) + cls.wire_connection_label.set_label(wire_text) + + # Check WiFi status and setup WiFi list if available wlan_card = "" if wlan_list: for wlan_card in wlan_list: if cards[wlan_card]['state']['connection'] == 'Connected': - wifi_text = _('WiFi card detected and connected to an access point') - self.wifi_connection_image.set_from_stock(Gtk.STOCK_YES, 5) + wifi_text = get_text('WiFi card detected and connected to an access point') + cls.wifi_connection_image.set_from_stock(Gtk.STOCK_YES, 5) break else: - wifi_text = _('WiFi card detected but not connected to an access point') - self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wifi_text = get_text('WiFi card detected but not connected to an access point') + cls.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) else: - wifi_text = _('WiFi card not detected or not supported') - self.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) + wifi_text = get_text('WiFi card not detected or not supported') + cls.wifi_connection_image.set_from_stock(Gtk.STOCK_NO, 5) - self.wifi_connection_label.set_label(wifi_text) + cls.wifi_connection_label.set_label(wifi_text) - self.connection_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=20) + cls.connection_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=True, spacing=20) if wlan_card: - # add a default card variable + # Setup WiFi access point list sw = Gtk.ScrolledWindow() sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) - self.store = Gtk.ListStore(GdkPixbuf.Pixbuf, str, str) - for ssid in self.network_info['cards'][wlan_card]['info']: - ssid_info = self.network_info['cards'][wlan_card]['info'][ssid] + cls.store = Gtk.ListStore(GdkPixbuf.Pixbuf, str, str) + for ssid in cls.network_info['cards'][wlan_card]['info']: + ssid_info = cls.network_info['cards'][wlan_card]['info'][ssid] bar = ssid_info[4] stat = NetworkSetup.wifi_stat(bar) pixbuf = Gtk.IconTheme.get_default().load_icon(stat, 32, 0) - self.store.append([pixbuf, ssid, f'{ssid_info}']) + cls.store.append([pixbuf, ssid, f'{ssid_info}']) treeview = Gtk.TreeView() - treeview.set_model(self.store) + treeview.set_model(cls.store) treeview.set_rules_hint(True) pixbuf_cell = Gtk.CellRendererPixbuf() pixbuf_column = Gtk.TreeViewColumn('Stat', pixbuf_cell) @@ -182,129 +239,197 @@ def _initialize_ui(self): treeview.append_column(column) tree_selection = treeview.get_selection() tree_selection.set_mode(Gtk.SelectionMode.SINGLE) - tree_selection.connect("changed", self.wifi_setup, wlan_card) + tree_selection.connect("changed", cls.wifi_setup, wlan_card) sw.add(treeview) - self.connection_box.pack_start(sw, True, True, 50) + cls.connection_box.pack_start(sw, True, True, 50) + # Layout the interface main_grid = Gtk.Grid() main_grid.set_row_spacing(10) main_grid.set_column_spacing(10) main_grid.set_column_homogeneous(True) main_grid.set_row_homogeneous(True) - self.vbox1.pack_start(main_grid, True, True, 10) - main_grid.attach(self.wire_connection_image, 2, 1, 1, 1) - main_grid.attach(self.wire_connection_label, 3, 1, 8, 1) - main_grid.attach(self.wifi_connection_image, 2, 2, 1, 1) - main_grid.attach(self.wifi_connection_label, 3, 2, 8, 1) - main_grid.attach(self.connection_box, 1, 4, 10, 5) + cls.vbox1.pack_start(main_grid, True, True, 10) + main_grid.attach(cls.wire_connection_image, 2, 1, 1, 1) + main_grid.attach(cls.wire_connection_label, 3, 1, 8, 1) + main_grid.attach(cls.wifi_connection_image, 2, 2, 1, 1) + main_grid.attach(cls.wifi_connection_label, 3, 2, 8, 1) + main_grid.attach(cls.connection_box, 1, 4, 10, 5) - def wifi_setup(self, tree_selection, wifi_card): + @classmethod + def wifi_setup(cls, tree_selection, wifi_card): + """ + Handle WiFi access point selection and connection setup. + + Args: + tree_selection: TreeSelection widget containing the selected access point + wifi_card: WiFi card interface name + """ model, treeiter = tree_selection.get_selected() if treeiter is not None: ssid = model[treeiter][1] - ssid_info = self.network_info['cards'][wifi_card]['info'][ssid] + ssid_info = cls.network_info['cards'][wifi_card]['info'][ssid] caps = ssid_info[6] - print(ssid) # added the code to authenticate. + print(ssid) print(ssid_info) if caps == 'E' or caps == 'ES': if f'"{ssid}"' in open("/etc/wpa_supplicant.conf").read(): - self.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) + cls.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) else: NetworkSetup.open_wpa_supplicant(ssid) - self.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) + cls.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) else: if f'"{ssid}"' in open('/etc/wpa_supplicant.conf').read(): - self.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) + cls.try_to_connect_to_ssid(ssid, ssid_info, wifi_card) else: - self.authentication(ssid_info, wifi_card, False) + cls.authentication(ssid_info, wifi_card, False) - def add_to_wpa_supplicant(self, _widget, ssid_info, card): - pwd = self.password.get_text() + @classmethod + def add_to_wpa_supplicant(cls, _widget, ssid_info, card): + """ + Add WiFi credentials to wpa_supplicant configuration and connect. + + Args: + _widget: Button widget that triggered the action (unused) + ssid_info: WiFi network information + card: WiFi card interface name + """ + pwd = cls.password.get_text() NetworkSetup.setup_wpa_supplicant(ssid_info[0], ssid_info, pwd) _thread.start_new_thread( - self.try_to_connect_to_ssid, + cls.try_to_connect_to_ssid, (ssid_info[0], ssid_info, card) ) - self.window.hide() + cls.window.hide() - def try_to_connect_to_ssid(self, ssid, ssid_info, card): + @classmethod + def try_to_connect_to_ssid(cls, ssid, ssid_info, card): + """ + Attempt to connect to the specified WiFi network. + + Args: + ssid: WiFi network SSID + ssid_info: WiFi network information + card: WiFi card interface name + """ if connectToSsid(ssid, card) is False: delete_ssid_wpa_supplicant_config(ssid) - GLib.idle_add(self.restart_authentication, ssid_info, card) + GLib.idle_add(cls.restart_authentication, ssid_info, card) else: for _ in list(range(30)): if nic_status(card) == 'associated': - self.network_info = networkdictionary() - print(self.network_info) - self.update_network_detection() + cls.network_info = networkdictionary() + print(cls.network_info) + cls.update_network_detection() break sleep(1) else: delete_ssid_wpa_supplicant_config(ssid) - GLib.idle_add(self.restart_authentication, ssid_info, card) + GLib.idle_add(cls.restart_authentication, ssid_info, card) return - def restart_authentication(self, ssid_info, card): - self.authentication(ssid_info, card, True) + @classmethod + def restart_authentication(cls, ssid_info, card): + """ + Restart WiFi authentication after a failed connection attempt. + + Args: + ssid_info: WiFi network information + card: WiFi card interface name + """ + cls.authentication(ssid_info, card, True) - def on_check(self, widget): + @classmethod + def on_check(cls, widget): + """ + Toggle password visibility in authentication dialog. + + Args: + widget: CheckButton widget for show/hide password + """ if widget.get_active(): - self.password.set_visibility(True) + cls.password.set_visibility(True) else: - self.password.set_visibility(False) + cls.password.set_visibility(False) - def authentication(self, ssid_info, card, failed): - self.window = Gtk.Window() - self.window.set_title(_("Wi-Fi Network Authentication Required")) - self.window.set_border_width(0) - self.window.set_size_request(500, 200) + @classmethod + def authentication(cls, ssid_info, card, failed): + """ + Show WiFi authentication dialog. + + Args: + ssid_info: WiFi network information + card: WiFi card interface name + failed: Boolean indicating if this is a retry after failed authentication + """ + cls.window = Gtk.Window() + cls.window.set_title(get_text("Wi-Fi Network Authentication Required")) + cls.window.set_border_width(0) + cls.window.set_size_request(500, 200) box1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - self.window.add(box1) + cls.window.add(box1) box1.show() box2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=10) box2.set_border_width(10) box1.pack_start(box2, True, True, 0) box2.show() - # Creating MBR or GPT drive + + # Set dialog title based on authentication status if failed: - title = _("{ssid} Wi-Fi Network Authentication failed").format(ssid=ssid_info[0]) + title = get_text("{ssid} Wi-Fi Network Authentication failed").format(ssid=ssid_info[0]) else: - title = _("Authentication required by {ssid} Wi-Fi Network").format(ssid=ssid_info[0]) + title = get_text("Authentication required by {ssid} Wi-Fi Network").format(ssid=ssid_info[0]) label = Gtk.Label(label=f"{title}") label.set_use_markup(True) - pwd_label = Gtk.Label(label=_("Password:")) - self.password = Gtk.Entry() - self.password.set_visibility(False) - check = Gtk.CheckButton(label=_("Show password")) - check.connect("toggled", self.on_check) + pwd_label = Gtk.Label(label=get_text("Password:")) + cls.password = Gtk.Entry() + cls.password.set_visibility(False) + check = Gtk.CheckButton(label=get_text("Show password")) + check.connect("toggled", cls.on_check) table = Gtk.Table(1, 2, True) table.attach(label, 0, 5, 0, 1) table.attach(pwd_label, 1, 2, 2, 3) - table.attach(self.password, 2, 4, 2, 3) + table.attach(cls.password, 2, 4, 2, 3) table.attach(check, 2, 4, 3, 4) box2.pack_start(table, False, False, 0) box2 = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, homogeneous=False, spacing=10) box2.set_border_width(5) box1.pack_start(box2, False, True, 0) box2.show() - # Add create_scheme button + + # Add authentication buttons cancel = Gtk.Button(stock=Gtk.STOCK_CANCEL) - cancel.connect("clicked", self.close) + cancel.connect("clicked", cls.close) connect = Gtk.Button(stock=Gtk.STOCK_CONNECT) - connect.connect("clicked", self.add_to_wpa_supplicant, ssid_info, card) + connect.connect("clicked", cls.add_to_wpa_supplicant, ssid_info, card) table = Gtk.Table(1, 2, True) table.set_col_spacings(10) table.attach(connect, 4, 5, 0, 1) table.attach(cancel, 3, 4, 0, 1) box2.pack_end(table, True, True, 5) - self.window.show_all() + cls.window.show_all() return 'Done' - def close(self, _widget): - self.window.hide() + @classmethod + def close(cls, _widget): + """ + Close the authentication dialog. + + Args: + _widget: Button widget that triggered the action (unused) + """ + cls.window.hide() @staticmethod def setup_wpa_supplicant(ssid, ssid_info, pwd): + """ + Setup wpa_supplicant configuration for WiFi network. + + Args: + ssid: WiFi network SSID + ssid_info: WiFi network information + pwd: WiFi network password + """ if 'RSN' in ssid_info[-1]: ws = '\nnetwork={' ws += f'\n ssid="{ssid}"' @@ -332,6 +457,12 @@ def setup_wpa_supplicant(ssid, ssid_info, pwd): @staticmethod def open_wpa_supplicant(ssid): + """ + Add open network entry to wpa_supplicant configuration. + + Args: + ssid: WiFi network SSID + """ ws = '\nnetwork={' ws += f'\n ssid={ssid}' ws += '\n key_mgmt=NONE\n}\n' diff --git a/install_station/partition.py b/install_station/partition.py index eb2d3e8..a03591a 100644 --- a/install_station/partition.py +++ b/install_station/partition.py @@ -1015,7 +1015,7 @@ def __init__(self, path, drive, main_slice, size_left, create_size, # class modifyLabel(): -# def __init__(self, path, size_left, create_size, mount_point, fs, +# def __init_get_text(self, path, size_left, create_size, mount_point, fs, # data, disk): # if not os.path.exists(disk_file): # file_disk = open(disk_file, 'w') diff --git a/install_station/system_calls.py b/install_station/system_calls.py index 3ddca90..db3a009 100644 --- a/install_station/system_calls.py +++ b/install_station/system_calls.py @@ -58,7 +58,9 @@ def keyboard_dictionary(): kb_name = keyboard_list[1].strip() kb_layouts = keyboard_list[0].strip() kb_variant = None - dictionary[kb_name] = {'layout': kb_layouts, 'variant': kb_variant} + # Skip the "custom" layout as it's not a real keyboard layout + if kb_layouts != 'custom': + dictionary[kb_name] = {'layout': kb_layouts, 'variant': kb_variant} xkeyboard_variants = Popen(f'{pc_sysinstall} xkeyboard-variants', shell=True, stdout=PIPE, diff --git a/install_station/try_install.py b/install_station/try_install.py new file mode 100644 index 0000000..8b08c71 --- /dev/null +++ b/install_station/try_install.py @@ -0,0 +1,161 @@ +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk, Gdk +from install_station.data import InstallationData, get_text, gif_logo + +cssProvider = Gtk.CssProvider() +cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') +screen = Gdk.Screen.get_default() +styleContext = Gtk.StyleContext() +styleContext.add_provider_for_screen( + screen, + cssProvider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +) + + +class TryOrInstall: + """ + Utility class for the welcome screen and initial mode selection following the utility class pattern. + + This class provides a GTK+ interface for the initial GhostBSD welcome screen including: + - Mode selection between "Install GhostBSD" and "Try GhostBSD" using radio buttons + - Visual elements with GhostBSD logo and instructional text + - Integration with InstallationData for persistent configuration + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the Interface controller for navigation flow. + """ + # Class variables instead of instance variables + what = None + install_button = None + try_button = None + instruction_label = None + vbox1 = None + + @classmethod + def mode_selection(cls, widget, val): + """ + Handle mode selection from radio buttons. + + Only responds to activation, not deactivation. Updates both + class variables and InstallationData with the selected mode. + + Args: + widget: RadioButton widget that triggered the action + val: Mode value ('install' or 'try') + """ + # Only respond to activation, not deactivation + if widget.get_active(): + cls.what = val + InstallationData.install_mode = val + print(f"Mode selected: {val}") + + @classmethod + def get_what(cls): + """ + Get the current installation mode. + + Returns the installation mode from InstallationData if available, + otherwise falls back to the class variable. + + Returns: + str: Current installation mode ('install' or 'try') + """ + return InstallationData.install_mode or cls.what + + @classmethod + def initialize(cls): + """ + Initialize the welcome screen UI following the utility class pattern. + + Creates the main interface including: + - GhostBSD logo on the left side + - Radio buttons for Install/Try options on the right side + - Instructional text explaining the options + - Grid-based layout with proper spacing and margins + + This method is called automatically by get_model() when the interface is first accessed. + """ + cls.what = 'install' # Default to install mode + InstallationData.install_mode = cls.what + + cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + cls.vbox1.show() + + main_grid = Gtk.Grid() + cls.vbox1.pack_start(main_grid, True, True, 0) + + # Left side - Logo + logo_image = Gtk.Image() + logo_image.set_from_file(gif_logo) + logo_image.show() + + # Right side - Radio button options + right_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + right_box.set_border_width(20) + right_box.set_halign(Gtk.Align.CENTER) + right_box.set_valign(Gtk.Align.CENTER) + right_box.show() + + # Instruction label + cls.instruction_label = Gtk.Label(label=get_text("What would you like to do?")) + cls.instruction_label.set_alignment(0.0, 0.5) + right_box.pack_start(cls.instruction_label, False, False, 10) + + # Create radio button group + cls.install_button = Gtk.RadioButton( + label=get_text( + "Install GhostBSD\n" + "Install GhostBSD on your computer." + ) + ) + cls.install_button.get_child().set_use_markup(True) + cls.install_button.get_child().set_line_wrap(True) + right_box.pack_start(cls.install_button, False, False, 10) + cls.install_button.connect("toggled", cls.mode_selection, "install") + cls.install_button.show() + + cls.try_button = Gtk.RadioButton.new_with_label_from_widget( + cls.install_button, + get_text( + "Try GhostBSD\n" + "Run GhostBSD without installing to your computer." + ) + ) + cls.try_button.get_child().set_use_markup(True) + cls.try_button.get_child().set_line_wrap(True) + right_box.pack_start(cls.try_button, False, False, 10) + cls.try_button.connect("toggled", cls.mode_selection, "try") + cls.try_button.show() + + # Layout in grid + main_grid.set_row_spacing(20) + main_grid.set_column_spacing(20) + main_grid.set_column_homogeneous(True) + main_grid.set_row_homogeneous(True) + main_grid.set_margin_left(10) + main_grid.set_margin_right(10) + main_grid.set_margin_top(10) + main_grid.set_margin_bottom(10) + + main_grid.attach(logo_image, 0, 0, 1, 1) + main_grid.attach(right_box, 1, 0, 1, 1) + main_grid.show() + + # Set default selection + cls.install_button.set_active(True) + + @classmethod + def get_model(cls): + """ + Return the GTK widget model for the welcome screen interface. + + Returns the main container widget created during initialization. + + Returns: + Gtk.Box: The main container widget for the welcome screen interface + """ + if cls.vbox1 is None: + cls.initialize() + return cls.vbox1 diff --git a/install_station/use_zfs.py b/install_station/use_zfs.py index 92d8688..1e0441b 100644 --- a/install_station/use_zfs.py +++ b/install_station/use_zfs.py @@ -1,7 +1,6 @@ from gi.repository import Gtk, Gdk -import gettext from install_station.common import password_strength -from install_station.data import InstallationData, zfs_datasets, be_name, logo +from install_station.data import InstallationData, zfs_datasets, be_name, logo, get_text from install_station.partition import bios_or_uefi from install_station.system_calls import ( zfs_disk_query, @@ -9,9 +8,6 @@ ) from install_station.interface_controller import Button -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext cssProvider = Gtk.CssProvider() cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') @@ -161,14 +157,14 @@ def mirror_selection(cls, combobox): if cls.mirror == "1+ disks Stripe": cls.pool_type = 'stripe' cls.mirrorTips.set_text( - _("Please select 1 or more drive for stripe (select the smallest disk first)")) + get_text("Please select 1 or more drive for stripe (select the smallest disk first)")) if len(cls.zfs_disk_list) >= 1: Button.next_button.set_sensitive(True) else: Button.next_button.set_sensitive(False) elif cls.mirror == "2+ disks Mirror": cls.pool_type = 'mirror' - mir_msg1 = _("Please select 2 drive for mirroring (select the smallest disk first)") + mir_msg1 = get_text("Please select 2 drive for mirroring (select the smallest disk first)") cls.mirrorTips.set_text(mir_msg1) if len(cls.zfs_disk_list) >= 2: Button.next_button.set_sensitive(True) @@ -176,21 +172,21 @@ def mirror_selection(cls, combobox): Button.next_button.set_sensitive(False) elif cls.mirror == "3 disks RAIDZ1": cls.pool_type = 'raidz1' - cls.mirrorTips.set_text(_("Please select 3 drive for RAIDZ1 (select the smallest disk first)")) + cls.mirrorTips.set_text(get_text("Please select 3 drive for RAIDZ1 (select the smallest disk first)")) if len(cls.zfs_disk_list) == 3: Button.next_button.set_sensitive(True) else: Button.next_button.set_sensitive(False) elif cls.mirror == "4 disks RAIDZ2": cls.pool_type = 'raidz2' - cls.mirrorTips.set_text(_("Please select 4 drive for RAIDZ2 (select the smallest disk first)")) + cls.mirrorTips.set_text(get_text("Please select 4 drive for RAIDZ2 (select the smallest disk first)")) if len(cls.zfs_disk_list) == 4: Button.next_button.set_sensitive(True) else: Button.next_button.set_sensitive(False) elif cls.mirror == "5 disks RAIDZ3": cls.pool_type = 'raidz3' - cls.mirrorTips.set_text(_("Please select 5 drive for RAIDZ3 (select the smallest disk first)")) + cls.mirrorTips.set_text(get_text("Please select 5 drive for RAIDZ3 (select the smallest disk first)")) if len(cls.zfs_disk_list) == 5: Button.next_button.set_sensitive(True) else: @@ -293,24 +289,24 @@ def initialize(cls): cls.check_cell.connect('toggled', cls.col1_toggled_cb, cls.store) cell = Gtk.CellRendererText() column = Gtk.TreeViewColumn(None, cell, text=0) - column_header = Gtk.Label(label=_('Disk')) + column_header = Gtk.Label(label=get_text('Disk')) column_header.set_use_markup(True) column_header.show() column.set_widget(column_header) column.set_sort_column_id(0) cell2 = Gtk.CellRendererText() column2 = Gtk.TreeViewColumn(None, cell2, text=0) - column_header2 = Gtk.Label(label=_('Size(MB)')) + column_header2 = Gtk.Label(label=get_text('Size(MB)')) column_header2.set_use_markup(True) column_header2.show() column2.set_widget(column_header2) cell3 = Gtk.CellRendererText() column3 = Gtk.TreeViewColumn(None, cell3, text=0) - column_header3 = Gtk.Label(label=_('Name')) + column_header3 = Gtk.Label(label=get_text('Name')) column_header3.set_use_markup(True) column_header3.show() column3.set_widget(column_header3) - column1 = Gtk.TreeViewColumn(_("Check"), cls.check_cell) + column1 = Gtk.TreeViewColumn(get_text("Check"), cls.check_cell) column1.add_attribute(cls.check_cell, "active", 3) column.set_attributes(cell, text=0) column2.set_attributes(cell2, text=1) @@ -323,20 +319,20 @@ def initialize(cls): tree_selection.set_mode(Gtk.SelectionMode.SINGLE) sw.add(treeview) sw.show() - cls.mirrorTips = Gtk.Label(label=_('Please select one drive')) + cls.mirrorTips = Gtk.Label(label=get_text('Please select one drive')) cls.mirrorTips.set_justify(Gtk.Justification.LEFT) cls.mirrorTips.set_alignment(0.01, 0.5) # Mirror, raidz and stripe cls.mirror = 'none' - mirror_label = Gtk.Label(label=_('Pool Type')) + mirror_label = Gtk.Label(label=get_text('Pool Type')) mirror_label.set_use_markup(True) mirror_box = Gtk.ComboBox() mirror_store = Gtk.ListStore(str, str) # value, display_text - mirror_store.append(["1+ disks Stripe", _("1+ disks Stripe")]) - mirror_store.append(["2+ disks Mirror", _("2+ disks Mirror")]) - mirror_store.append(["3 disks RAIDZ1", _("3 disks RAIDZ1")]) - mirror_store.append(["4 disks RAIDZ2", _("4 disks RAIDZ2")]) - mirror_store.append(["5 disks RAIDZ3", _("5 disks RAIDZ3")]) + mirror_store.append(["1+ disks Stripe", get_text("1+ disks Stripe")]) + mirror_store.append(["2+ disks Mirror", get_text("2+ disks Mirror")]) + mirror_store.append(["3 disks RAIDZ1", get_text("3 disks RAIDZ1")]) + mirror_store.append(["4 disks RAIDZ2", get_text("4 disks RAIDZ2")]) + mirror_store.append(["5 disks RAIDZ3", get_text("5 disks RAIDZ3")]) mirror_box.set_model(mirror_store) renderer = Gtk.CellRendererText() mirror_box.pack_start(renderer, True) @@ -346,7 +342,7 @@ def initialize(cls): # Pool Name cls.zpool = False - pool_name_label = Gtk.Label(label=_('Pool Name')) + pool_name_label = Gtk.Label(label=get_text('Pool Name')) pool_name_label.set_use_markup(True) cls.pool = Gtk.Entry() cls.pool.set_text('zroot') @@ -366,18 +362,18 @@ def initialize(cls): shemebox.set_sensitive(True) # GELI Disk encryption cls.disk_encrypt = False - encrypt_check = Gtk.CheckButton(label=_("Encrypt Disk")) + encrypt_check = Gtk.CheckButton(label=get_text("Encrypt Disk")) encrypt_check.connect("toggled", cls.on_check_encrypt) encrypt_check.set_sensitive(True) # password - cls.passwd_label = Gtk.Label(label=_("Password")) + cls.passwd_label = Gtk.Label(label=get_text("Password")) cls.password = Gtk.Entry() cls.password.set_sensitive(False) cls.password.set_visibility(False) cls.password.connect("changed", password_strength) cls.strenght_label = Gtk.Label() cls.strenght_label.set_alignment(0.1, 0.5) - cls.vpasswd_label = Gtk.Label(label=_("Verify it")) + cls.vpasswd_label = Gtk.Label(label=get_text("Verify it")) cls.repassword = Gtk.Entry() cls.repassword.set_sensitive(False) cls.repassword.set_visibility(False) @@ -538,7 +534,7 @@ def small_disk_warning(cls): selected first and offers to reset all selections. """ window = Gtk.Window() - window.set_title(_("Warning")) + window.set_title(get_text("Warning")) window.set_border_width(0) # window.set_size_request(480, 200) window.set_icon_from_file(logo) @@ -549,8 +545,8 @@ def small_disk_warning(cls): box2.set_border_width(10) box1.pack_start(box2, True, True, 0) box2.show() - warning_text = _("Smallest disk need to be SELECTED first!\n") - warning_text += _("All the disk selected will reset.") + warning_text = get_text("Smallest disk need to be SELECTED first!\n") + warning_text += get_text("All the disk selected will reset.") label = Gtk.Label(label=warning_text) # Add button box2.pack_start(label, True, True, 0) diff --git a/install_station/welcome_live.py b/install_station/welcome_live.py deleted file mode 100644 index a19b97f..0000000 --- a/install_station/welcome_live.py +++ /dev/null @@ -1,293 +0,0 @@ -import gi -gi.require_version('Gtk', '3.0') -from gi.repository import Gtk, Gdk, GdkPixbuf -import gettext -from install_station.system_calls import language_dictionary -from install_station.interface_controller import Interface -from install_station.data import InstallationData -from install_station.window import Window - -gettext.bindtextdomain('install-station', '/usr/local/share/locale') -gettext.textdomain('install-station') -_ = gettext.gettext - -lang_dictionary = language_dictionary() - -Messages = _("""To run GhostBSD without installing, select "Try GhostBSD." - -To install GhostBSD on your computer hard disk drive, click "Install GhostBSD." - -Note: Language selection only works when selecting "Try GhostBSD." - When installing GhostBSD, the installation program is only in English.""") - -cssProvider = Gtk.CssProvider() -cssProvider.load_from_path('/usr/local/lib/install-station/ghostbsd-style.css') -screen = Gdk.Screen.get_default() -styleContext = Gtk.StyleContext() -styleContext.add_provider_for_screen( - screen, - cssProvider, - Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION -) - - -class Welcome: - """ - Utility class for the welcome screen and initial mode selection following the utility class pattern. - - This class provides a GTK+ interface for the initial GhostBSD welcome screen including: - - Language selection from available system languages - - Mode selection between "Install GhostBSD" and "Try GhostBSD" - - Visual elements with images and instructional text - - Integration with InstallationData for persistent configuration - - The class follows a utility pattern with class methods and variables for state management, - designed to integrate with the Interface controller for navigation flow. - """ - # Class variables instead of instance variables - what = None - language = None - install_ghostbsd = None - try_ghostbsd = None - vbox1 = None - - @classmethod - def language_selection(cls, tree_selection): - """ - Handle language selection from the treeview. - - Extracts the selected language from the tree view and updates both - class variables and InstallationData with the language name and code. - Also updates the UI text to reflect the new language selection. - - Args: - tree_selection: TreeSelection widget containing the user's language choice - """ - model, tree_iter = tree_selection.get_selected() - if tree_iter is not None: - value = model[tree_iter][0] - language_code = lang_dictionary[value] - cls.language = language_code - InstallationData.language = value - InstallationData.language_code = language_code - print(f"Language selected: {value} ({language_code})") - - # Update gettext to use the new language - import os - os.environ['LANGUAGE'] = language_code - gettext.bindtextdomain('install-station', '/usr/local/share/locale') - gettext.textdomain('install-station') - - # Update the UI text with new translations - cls.update_ui_text() - return - - @classmethod - def update_ui_text(cls): - """ - Update all UI text elements with new translations after language change. - """ - # Reload the gettext function to pick up new locale - _ = gettext.gettext - - # Update UI elements if they exist - if hasattr(cls, 'install_button') and cls.install_button: - cls.install_button.set_label(_('Install GhostBSD')) - - if hasattr(cls, 'try_button') and cls.try_button: - cls.try_button.set_label(_('Try GhostBSD')) - - if hasattr(cls, 'text_label') and cls.text_label: - cls.text_label.set_text(_("""To run GhostBSD without installing, select "Try GhostBSD." - - -To install GhostBSD on your computer hard disk drive, click "Install GhostBSD." - -Note: Language selection only works when selecting "Try GhostBSD." - When installing GhostBSD, the installation program is only in English.""")) - - if hasattr(cls, 'language_column_header') and cls.language_column_header: - cls.language_column_header.set_text(_('Language')) - - Window.set_title(_("Welcome to GhostBSD")) - - @classmethod - def language_columns(cls, treeview): - """ - Configure the language selection treeview with appropriate columns. - - Creates a single column with a "Language" header for displaying - available languages in the tree view. - - Args: - treeview: TreeView widget to configure with language column - """ - cell = Gtk.CellRendererText() - column = Gtk.TreeViewColumn(None, cell, text=0) - column_header = Gtk.Label(label=_('Language')) - column_header.set_use_markup(True) - column_header.show() - column.set_widget(column_header) - # Store reference for updating - cls.language_column_header = column_header - column.set_sort_column_id(0) - treeview.append_column(column) - - @classmethod - def save_selection(cls): - """ - Save the current language selection. - - This method is maintained for compatibility but language selection - is now automatically saved to InstallationData when chosen. - """ - # Language is now saved in InstallationData automatically - pass - - @classmethod - def install_system(cls, _widget): - """ - Handle "Install GhostBSD" button click. - - Sets the installation mode to 'install' and navigates to the - installation workflow pages. - - Args: - _widget: Button widget that triggered the action (unused) - """ - cls.what = 'install' - InstallationData.install_mode = 'install' - Interface.next_install_page() - - @classmethod - def try_system(cls, _widget): - """ - Handle "Try GhostBSD" button click. - - Sets the installation mode to 'try' and navigates to the - live system setup pages (typically network configuration). - - Args: - _widget: Button widget that triggered the action (unused) - """ - cls.what = 'try' - InstallationData.install_mode = 'try' - Interface.next_setup_page() - - @classmethod - def get_what(cls): - """ - Get the current installation mode. - - Returns the installation mode from InstallationData if available, - otherwise falls back to the class variable. - - Returns: - str: Current installation mode ('install' or 'try') - """ - return InstallationData.install_mode or cls.what - - @classmethod - def initialize(cls): - """ - Initialize the welcome screen UI following the utility class pattern. - - Creates the main interface including: - - Language selection tree view on the left side - - Install and Try buttons with images on the right side - - Instructional text explaining the options - - Grid-based layout with proper spacing and margins - - This method is called automatically by get_model() when the interface is first accessed. - """ - cls.what = None - cls.language = None - cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - cls.vbox1.show() - main_grid = Gtk.Grid() - cls.vbox1.pack_start(main_grid, True, True, 0) - sw = Gtk.ScrolledWindow() - sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) - sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) - store = Gtk.TreeStore(str) - for line in lang_dictionary: - store.append(None, [line]) - treeview = Gtk.TreeView() - treeview.set_model(store) - treeview.set_rules_hint(True) - cls.language_columns(treeview) - tree_selection = treeview.get_selection() - tree_selection.set_mode(Gtk.SelectionMode.SINGLE) - tree_selection.connect("changed", cls.language_selection) - sw.add(treeview) - sw.show() - vbox2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - vbox2.set_border_width(10) - vbox2.show() - pix_buf1 = GdkPixbuf.Pixbuf().new_from_file_at_scale( - filename='/usr/local/lib/install-station/laptop.png', - width=190, - height=190, - preserve_aspect_ratio=True - ) - image1 = Gtk.Image.new_from_pixbuf(pix_buf1) - image1.show() - pix_buf2 = GdkPixbuf.Pixbuf().new_from_file_at_scale( - filename='/usr/local/lib/install-station/disk.png', - width=120, - height=120, - preserve_aspect_ratio=True) - image2 = Gtk.Image.new_from_pixbuf(pix_buf2) - image2.show() - install_button = Gtk.Button(label=_('Install GhostBSD'), image=image1, - image_position=2) - install_button.set_always_show_image(True) - install_button.connect("clicked", cls.install_system) - try_button = Gtk.Button(label=_('Try GhostBSD'), image=image2, - image_position=2) - try_button.set_always_show_image(True) - try_button.connect("clicked", cls.try_system) - text_label = Gtk.Label(label=Messages) - text_label.set_line_wrap(True) - - # Store references for updating - cls.install_button = install_button - cls.try_button = try_button - cls.text_label = text_label - right_grid = Gtk.Grid() - right_grid.set_row_spacing(10) - right_grid.set_column_spacing(2) - right_grid.set_column_homogeneous(True) - right_grid.set_row_homogeneous(True) - right_grid.set_margin_left(10) - right_grid.set_margin_right(10) - right_grid.set_margin_top(10) - right_grid.set_margin_bottom(10) - right_grid.attach(install_button, 1, 1, 1, 5) - right_grid.attach(try_button, 2, 1, 1, 5) - right_grid.attach(text_label, 1, 6, 2, 5) - main_grid.set_row_spacing(10) - main_grid.set_column_spacing(4) - main_grid.set_column_homogeneous(True) - main_grid.set_row_homogeneous(True) - main_grid.set_margin_left(10) - main_grid.set_margin_right(10) - main_grid.set_margin_top(10) - main_grid.set_margin_bottom(10) - main_grid.attach(sw, 1, 1, 1, 10) - main_grid.attach(right_grid, 2, 1, 3, 10) - main_grid.show() - - @classmethod - def get_model(cls): - """ - Return the GTK widget model for the welcome screen interface. - - Returns the main container widget that was created during initialization. - - Returns: - Gtk.Box: The main container widget for the welcome screen interface - """ - if cls.vbox1 is None: - cls.initialize() - return cls.vbox1 diff --git a/po/POTFILES.in b/po/POTFILES.in index 43579f3..14f755b 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -8,6 +8,7 @@ install_station/error.py install_station/install.py install_station/install_type.py install_station/interface_controller.py +install_station/keyboard.py install_station/language.py install_station/network_setup.py install_station/partition.py diff --git a/po/ar_SA.po b/po/ar_SA.po index 40568a5..3dffcee 100644 --- a/po/ar_SA.po +++ b/po/ar_SA.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:27-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Arabic <(nothing)>\n" @@ -16,25 +16,109 @@ msgstr "" "Content-Type: text/plain; charset=ASCII\n" "Content-Transfer-Encoding: 8bit\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -43,79 +127,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -127,238 +211,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/bg_BG.po b/po/bg_BG.po index 3a7131c..10b9f7a 100644 --- a/po/bg_BG.po +++ b/po/bg_BG.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Bulgarian \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/ca_ES.po b/po/ca_ES.po index a2c55dd..b8f7058 100644 --- a/po/ca_ES.po +++ b/po/ca_ES.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Catalan \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/cs_CZ.po b/po/cs_CZ.po index f9c3e43..56ddf0c 100644 --- a/po/cs_CZ.po +++ b/po/cs_CZ.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Czech \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/da_DK.po b/po/da_DK.po index c5bbf3a..8f96ab7 100644 --- a/po/da_DK.po +++ b/po/da_DK.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Danish \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/de_DE.po b/po/de_DE.po index 419ab8d..27d7a70 100644 --- a/po/de_DE.po +++ b/po/de_DE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:19-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: German \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/el_GR.po b/po/el_GR.po index 43ee5fb..d01c500 100644 --- a/po/el_GR.po +++ b/po/el_GR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Greek \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/en_GB.po b/po/en_GB.po index 32d2fa8..07dfb7b 100644 --- a/po/en_GB.po +++ b/po/en_GB.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: English (British) <(nothing)>\n" @@ -17,25 +17,110 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "Boot Option" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "Setup rEFInd boot manager" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "Setup FreeBSD boot manager" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "FreeBSD {loader} loader only" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "Space not allowed" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "Super Weak" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "Very Weak" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "Fairly Weak" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "Weak" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "Strong" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "Fairly Strong" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "Very Strong" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "Super Strong" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "Create" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "Delete" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "Revert" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "Auto" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "Add Partition" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "Type:" + +#: install_station/custom.py:343 install_station/custom.py:580 +#, fuzzy +msgid "Size(MB):" +msgstr "Size(MB)" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "Mount point:" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "Partition Scheme" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "GPT: GUID Partition Table" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "MBR: DOS Partition" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -49,31 +134,31 @@ msgstr "" "any changes you make or documents you save will\n" "not be preserved on reboot." -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "Installation Completed" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "Restart" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "Continue" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "Installation Error" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "Installation has failed!" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "GhostBSD issue system" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" @@ -82,15 +167,15 @@ msgstr "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "Ok" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "How do you want to install GhostBSD?" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " @@ -100,7 +185,7 @@ msgstr "" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." @@ -108,27 +193,27 @@ msgstr "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "Creating ghostbsd_installation.cfg" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "Deleting partition" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "Creating disk partition" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "Creating new partitions" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "Installation in progress" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -148,254 +233,351 @@ msgstr "" "\n" "We hope you'll enjoy our BSD operating system." -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "Back" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "Cancel" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "Next" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "Welcome to GhostBSD" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "Button" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +#, fuzzy +msgid "Keyboard Setup" +msgstr "Keyboard Layout" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "Network Setup" + +#: install_station/interface_controller.py:160 +#, fuzzy +msgid "Try Or Install GhostBSD" +msgstr "Install GhostBSD" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "Installation Types" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "Custom Configuration" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "ZFS Configuration" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "Install" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "Installation Progress" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "Progress Bar" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" -msgstr "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" +msgstr "Type here to test your keyboard" + +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" +msgstr "Keyboard Layout" + +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "Keyboard Models" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." -msgstr "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:225 +msgid "English (US)" +msgstr "English (US)" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 +#: install_station/keyboard.py:226 +msgid "English (Canada)" +msgstr "English (Canada)" + +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "French (Canada)" + +#: install_station/language.py:93 install_station/language.py:197 +#, fuzzy +msgid "Please select your language:" +msgstr "Please select one drive" + +#: install_station/language.py:99 install_station/language.py:116 msgid "Language" msgstr "Language" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" -msgstr "Welcome To GhostBSD!" - -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "Network card connected to the internet" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "Network card not connected to the internet" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "No network card detected" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "WiFi card detected and connected to an access point" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "WiFi card detected but not connected to an access point" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "WiFi card not detected or not supported" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "Wi-Fi Network Authentication Required" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "{ssid} Wi-Fi Network Authentication failed" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "Authentication required by {ssid} Wi-Fi Network" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "Password:" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "Show password" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 msgid "" -"Please select 1 or more drive for stripe (select the smallest disc first)" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 +#, fuzzy +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" "Please select 1 or more drive for stripe (select the smallest disc first)" -#: install_station/use_zfs.py:171 -msgid "Please select 2 drive for mirroring (select the smallest disc first)" +#: install_station/use_zfs.py:167 +#, fuzzy +msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "Please select 2 drive for mirroring (select the smallest disc first)" -#: install_station/use_zfs.py:179 -msgid "Please select 3 drive for RAIDZ1 (select the smallest disc first)" +#: install_station/use_zfs.py:175 +#, fuzzy +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "Please select 3 drive for RAIDZ1 (select the smallest disc first)" -#: install_station/use_zfs.py:186 -msgid "Please select 4 drive for RAIDZ2 (select the smallest disc first)" +#: install_station/use_zfs.py:182 +#, fuzzy +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "Please select 4 drive for RAIDZ2 (select the smallest disc first)" -#: install_station/use_zfs.py:193 -msgid "Please select 5 drive for RAIDZ3 (select the smallest disc first)" +#: install_station/use_zfs.py:189 +#, fuzzy +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "Please select 5 drive for RAIDZ3 (select the smallest disc first)" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "Disc" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "Size(MB)" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "Name" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "Check" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "Please select one drive" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "Pool Type" -#: install_station/use_zfs.py:335 -msgid "1+ discs Stripe" +#: install_station/use_zfs.py:331 +#, fuzzy +msgid "1+ disks Stripe" msgstr "1+ discs Stripe" -#: install_station/use_zfs.py:336 -msgid "2+ discs Mirror" +#: install_station/use_zfs.py:332 +#, fuzzy +msgid "2+ disks Mirror" msgstr "2+ discs Mirror" -#: install_station/use_zfs.py:337 -msgid "3 discs RAIDZ1" +#: install_station/use_zfs.py:333 +#, fuzzy +msgid "3 disks RAIDZ1" msgstr "3 discs RAIDZ1" -#: install_station/use_zfs.py:338 -msgid "4 discs RAIDZ2" +#: install_station/use_zfs.py:334 +#, fuzzy +msgid "4 disks RAIDZ2" msgstr "4 discs RAIDZ2" -#: install_station/use_zfs.py:339 -msgid "5 discs RAIDZ3" +#: install_station/use_zfs.py:335 +#, fuzzy +msgid "5 disks RAIDZ3" msgstr "5 discs RAIDZ3" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "Pool Name" -#: install_station/use_zfs.py:369 -msgid "Encrypt Disc" +#: install_station/use_zfs.py:365 +#, fuzzy +msgid "Encrypt Disk" msgstr "Encrypt Disc" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "Password" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "Verify it" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "Warning" -#: install_station/use_zfs.py:552 -msgid "Smallest disc need to be SELECTED first!\n" +#: install_station/use_zfs.py:548 +#, fuzzy +msgid "Smallest disk need to be SELECTED first!\n" msgstr "Smallest disc need to be SELECTED first!\n" -#: install_station/use_zfs.py:553 -msgid "All the disc selected will reset." +#: install_station/use_zfs.py:549 +#, fuzzy +msgid "All the disk selected will reset." msgstr "All the disc selected will reset." -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disc drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation programme is only in English." -msgstr "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disc drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation programme is only in English." +#~ msgid "" +#~ "Welcome! Please select your language to continue with the GhostBSD " +#~ "installation or live session." +#~ msgstr "" +#~ "Welcome! Please select your language to continue with the GhostBSD " +#~ "installation or live session." -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "Install GhostBSD" +#~ msgid "Try GhostBSD" +#~ msgstr "Try GhostBSD" -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "Try GhostBSD" +#, fuzzy +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD\".\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD\"." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." -#: install_station/welcome_live.py:101 #, fuzzy -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disc drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation programme is only in English." -msgstr "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disc drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation programme is only in English." +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD\".To install " +#~ "GhostBSD on your computer hard disc drive, click \"Install GhostBSD\"." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." + +#~ msgid "Select the language you want to use with GhostBSD." +#~ msgstr "Select the language you want to use with GhostBSD." + +#~ msgid "Welcome To GhostBSD!" +#~ msgstr "Welcome To GhostBSD!" + +#, fuzzy +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." + +#, fuzzy +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ " \n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disk drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +#~ " When installing GhostBSD, the installation program is only in " +#~ "English." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +#~ " When installing GhostBSD, the installation programme is only in " +#~ "English." diff --git a/po/en_US.po b/po/en_US.po index 3cfbf2e..eab8683 100644 --- a/po/en_US.po +++ b/po/en_US.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:25-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: English\n" @@ -17,25 +17,110 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "Boot Option" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "Setup rEFInd boot manager" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "Setup FreeBSD boot manager" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "FreeBSD {loader} loader only" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "Space not allowed" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "Super Weak" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "Very Weak" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "Fairly Weak" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "Weak" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "Strong" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "Fairly Strong" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "Very Strong" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "Super Strong" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "Create" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "Delete" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "Revert" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "Auto" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "Add Partition" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "Type:" + +#: install_station/custom.py:343 install_station/custom.py:580 +#, fuzzy +msgid "Size(MB):" +msgstr "Size(MB)" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "Mount point:" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "Partition Scheme" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "GPT: GUID Partition Table" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "MBR: DOS Partition" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -47,33 +132,38 @@ msgstr "" "computer in order to use the new installation.\n" "You can continue to use this live media, although\n" "any changes you make or documents you save will\n" +"not be preserved on reboot.Installation is complete. You need to restart " +"the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" "not be preserved on reboot." -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "Installation Completed" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "Restart" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "Continue" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "Installation Error" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "Installation has failed!" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "GhostBSD issue system" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" @@ -82,15 +172,15 @@ msgstr "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "Ok" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "How do you want to install GhostBSD?" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " @@ -100,7 +190,7 @@ msgstr "" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." @@ -108,27 +198,27 @@ msgstr "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "Creating ghostbsd_installation.cfg" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "Deleting partition" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "Creating disk partition" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "Creating new partitions" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "Installation in progress" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -148,254 +238,337 @@ msgstr "" "\n" "We hope you'll enjoy our BSD operating system." -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "Back" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "Cancel" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "Next" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "Welcome to GhostBSD" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "Button" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +#, fuzzy +msgid "Keyboard Setup" +msgstr "Keyboard Layout" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "Network Setup" + +#: install_station/interface_controller.py:160 +#, fuzzy +msgid "Try Or Install GhostBSD" +msgstr "Install GhostBSD" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "Installation Types" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "Custom Configuration" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "ZFS Configuration" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "Install" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "Installation Progress" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "Progress Bar" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" -msgstr "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" +msgstr "Type here to test your keyboard" + +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" +msgstr "Keyboard Layout" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." -msgstr "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "Keyboard Models" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 +#: install_station/keyboard.py:225 +msgid "English (US)" +msgstr "English (US)" + +#: install_station/keyboard.py:226 +msgid "English (Canada)" +msgstr "English (Canada)" + +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "French (Canada)" + +#: install_station/language.py:93 install_station/language.py:197 +#, fuzzy +msgid "Please select your language:" +msgstr "Please select one drive" + +#: install_station/language.py:99 install_station/language.py:116 msgid "Language" msgstr "Language" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" -msgstr "Welcome To GhostBSD!" - -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "Network card connected to the internet" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "Network card not connected to the internet" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "No network card detected" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "WiFi card detected and connected to an access point" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "WiFi card detected but not connected to an access point" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "WiFi card not detected or not supported" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "Wi-Fi Network Authentication Required" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "{ssid} Wi-Fi Network Authentication failed" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "Authentication required by {ssid} Wi-Fi Network" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "Password:" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "Show password" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" "Please select 1 or more drive for stripe (select the smallest disk first)" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "Please select 2 drive for mirroring (select the smallest disk first)" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "Please select 3 drive for RAIDZ1 (select the smallest disk first)" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "Please select 4 drive for RAIDZ2 (select the smallest disk first)" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "Please select 5 drive for RAIDZ3 (select the smallest disk first)" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "Disk" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "Size(MB)" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "Name" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "Check" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "Please select one drive" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "Pool Type" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "1+ disks Stripe" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "2+ disks Mirror" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "3 disks RAIDZ1" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "4 disks RAIDZ2" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "5 disks RAIDZ3" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "Pool Name" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "Encrypt Disk" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "Password" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "Verify it" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "Warning" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "Smallest disk need to be SELECTED first!\n" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "All the disk selected will reset." -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." +#~ msgid "" +#~ "Welcome! Please select your language to continue with the GhostBSD " +#~ "installation or live session." +#~ msgstr "" +#~ "Welcome! Please select your language to continue with the GhostBSD " +#~ "installation or live session." -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "Install GhostBSD" +#~ msgid "Try GhostBSD" +#~ msgstr "Try GhostBSD" -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "Try GhostBSD" +#, fuzzy +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD\".\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD\"." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disk drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." -#: install_station/welcome_live.py:101 #, fuzzy -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD\".To install " +#~ "GhostBSD on your computer hard disc drive, click \"Install GhostBSD\"." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disk drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." + +#~ msgid "Select the language you want to use with GhostBSD." +#~ msgstr "Select the language you want to use with GhostBSD." + +#~ msgid "Welcome To GhostBSD!" +#~ msgstr "Welcome To GhostBSD!" + +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Select your preferred language from the list on the left. The " +#~ "installer supports multiple languages in both modes." + +#, fuzzy +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ " \n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disk drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +#~ " When installing GhostBSD, the installation program is only in " +#~ "English." +#~ msgstr "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD.\"\n" +#~ "\n" +#~ "To install GhostBSD on your computer hard disk drive, click \"Install " +#~ "GhostBSD.\"\n" +#~ "\n" +#~ "Note: Language selection only works when selecting \"Try GhostBSD.\"\n" +#~ " When installing GhostBSD, the installation program is only in " +#~ "English." diff --git a/po/es_ES.po b/po/es_ES.po index efa90a7..4b19ec6 100644 --- a/po/es_ES.po +++ b/po/es_ES.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:19-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Spanish \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/et_EE.po b/po/et_EE.po index 0286919..3796122 100644 --- a/po/et_EE.po +++ b/po/et_EE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Estonian \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/fi_FI.po b/po/fi_FI.po index 4620e00..505b683 100644 --- a/po/fi_FI.po +++ b/po/fi_FI.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Finnish \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/fr_CA.po b/po/fr_CA.po index 6f8b798..4eb626e 100644 --- a/po/fr_CA.po +++ b/po/fr_CA.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:35-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: French \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" -msgstr "" +msgstr "Option de démarrage" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" -msgstr "" +msgstr "Configurer le gestionnaire de démarrage rEFInd" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" -msgstr "" +msgstr "Configurer le gestionnaire de démarrage FreeBSD" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" -msgstr "" +msgstr "Chargeur FreeBSD {loader} uniquement" + +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "Espace non autorisé" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "Très faible" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "Très faible" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "Plutôt faible" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "Faible" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "Fort" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "Plutôt fort" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "Très fort" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "Très fort" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "Créer" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "Supprimer" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "Annuler" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "Automatique" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "Ajouter une partition" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "Type :" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "Taille (Mo) :" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "Point de montage :" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "Schéma de partition" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "GPT : Table de partition GUID" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "MBR : Partition DOS" -#: install_station/end.py:13 +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -43,80 +127,92 @@ msgid "" "any changes you make or documents you save will\n" "not be preserved on reboot." msgstr "" +"L'installation est complète. Vous devez redémarrer\n" +"l'ordinateur pour utiliser la nouvelle installation.\n" +"Vous pouvez continuer à utiliser ce support live, bien que\n" +"tous les changements que vous apportez ou les documents\n" +"que vous sauvegardez ne seront pas préservés au redémarrage." -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "Installation complétée" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "Redémarrer" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "Continuer" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "Erreur d'installation" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" -msgstr "" +msgstr "L'installation a échoué !" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" -msgstr "" +msgstr "Système de signalement GhostBSD" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" +"Veuillez signaler le problème à {anchor}, et \n" +"assurez-vous de fournir /tmp/.pc-sysinstall/pc-sysinstall.log." -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "OK" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" -msgstr "" +msgstr "Comment voulez-vous installer GhostBSD ?" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" +"Configuration des disques\n" +"Installer GhostBSD en utilisant les configurations Stripe, Mirror, RAIDZ1, " +"RAIDZ2, ou RAIDZ3." -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" +"Configuration multi-démarrage\n" +"Installer GhostBSD avec ZFS aux côtés d'autres systèmes d'exploitation." -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" -msgstr "" +msgstr "Création de ghostbsd_installation.cfg" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" -msgstr "" +msgstr "Suppression de la partition" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" -msgstr "" +msgstr "Création de la partition de disque" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" -msgstr "" +msgstr "Création de nouvelles partitions" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" -msgstr "" +msgstr "Installation en cours" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -127,258 +223,295 @@ msgid "" "\n" "We hope you'll enjoy our BSD operating system." msgstr "" +"Merci d'avoir choisi GhostBSD !\n" +"\n" +"Nous croyons que chaque système d'exploitation devrait être simple, élégant, " +"sécurisé et protéger votre vie privée tout en étant facile à utiliser. " +"GhostBSD simplifie FreeBSD pour ceux qui manquent de l'expertise technique " +"nécessaire pour l'utiliser et abaisse le niveau d'entrée d'utilisation de " +"BSD. \n" +"\n" +"Nous espérons que vous apprécierez notre système d'exploitation BSD." -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "Retour" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "Annuler" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "Suivant" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "Bienvenue dans GhostBSD" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" -msgstr "" +msgstr "Bouton" + +#: install_station/interface_controller.py:137 +#, fuzzy +msgid "Keyboard Setup" +msgstr "Disposition du clavier" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "Configuration réseau" + +#: install_station/interface_controller.py:160 +#, fuzzy +msgid "Try Or Install GhostBSD" +msgstr "Installer GhostBSD" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "Types d'installation" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "Configuration personnalisée" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "Configuration ZFS" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "Installer" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "Progrès de l'installation" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" -msgstr "" +msgstr "Barre de progrès" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" -msgstr "Configuration réseau" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" +msgstr "Tapez ici pour tester votre clavier" + +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" +msgstr "Disposition du clavier" + +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "Modèles de clavier" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." -msgstr "Sélectionnez la langue que vous voulez utiliser avec GhostBSD." +#: install_station/keyboard.py:225 +msgid "English (US)" +msgstr "Anglais (États-Unis)" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 +#: install_station/keyboard.py:226 +msgid "English (Canada)" +msgstr "Anglais (Canada)" + +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "Français (Canada)" + +#: install_station/language.py:93 install_station/language.py:197 +#, fuzzy +msgid "Please select your language:" +msgstr "Veuillez sélectionner un lecteur" + +#: install_station/language.py:99 install_station/language.py:116 msgid "Language" msgstr "Langue" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" -msgstr "Bienvenue dans GhostBSD!" - -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" -msgstr "" +msgstr "Carte réseau connectée à l'internet" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" -msgstr "" +msgstr "Carte réseau non connectée à l'internet" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" -msgstr "" +msgstr "Aucune carte réseau détectée" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" -msgstr "" +msgstr "Carte WiFi détectée et connectée à un point d'accès" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" -msgstr "" +msgstr "Carte WiFi détectée mais non connectée à un point d'accès" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" -msgstr "" +msgstr "Carte WiFi non détectée ou non supportée" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" -msgstr "" +msgstr "Authentification du réseau Wi-Fi requise" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" -msgstr "" +msgstr "L'authentification du réseau Wi-Fi {ssid} a échoué" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" -msgstr "" +msgstr "Authentification requise par le réseau Wi-Fi {ssid}" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" -msgstr "" +msgstr "Mot de passe :" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" +msgstr "Afficher le mot de passe" + +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 1 ou plusieurs disques pour stripe (sélectionnez " +"d'abord le plus petit disque)" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 2 disques pour la mise en miroir (sélectionnez d'abord " +"le plus petit disque)" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 3 disques pour RAIDZ1 (sélectionnez d'abord le plus " +"petit disque)" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 4 disques pour RAIDZ2 (sélectionnez d'abord le plus " +"petit disque)" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 5 disques pour RAIDZ3 (sélectionnez d'abord le plus " +"petit disque)" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" -msgstr "" +msgstr "Disque" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" -msgstr "" +msgstr "Taille (Mo)" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" -msgstr "" +msgstr "Nom" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" -msgstr "" +msgstr "Vérifier" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" -msgstr "" +msgstr "Veuillez sélectionner un lecteur" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" -msgstr "" +msgstr "Type de pool" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" -msgstr "" +msgstr "1+ disques Stripe" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" -msgstr "" +msgstr "2+ disques Miroir" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" -msgstr "" +msgstr "3 disques RAIDZ1" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" -msgstr "" +msgstr "4 disques RAIDZ2" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" -msgstr "" +msgstr "5 disques RAIDZ3" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" -msgstr "" +msgstr "Nom du pool" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" -msgstr "" +msgstr "Chiffrer le disque" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" -msgstr "" +msgstr "Mot de passe" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" -msgstr "" +msgstr "Vérifiez-le" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" -msgstr "" +msgstr "Avertissement" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" -msgstr "" +msgstr "Le plus petit disque doit être SÉLECTIONNÉ en premier !\n" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." -msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" -"Pour utiliser GhostBSD sans l'installer, sélectionnez \"Essayer GhostBSD.\"\n" -"\n" -"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " -"\"Installer GhostBSD.\"\n" -"\n" -"Note : La sélection de langue fonctionne seulement quand vous sélectionnez " -"\"Essayer GhostBSD.\"\n" -" Quand vous installez GhostBSD, le programme d'installation est " -"seulement en anglais." - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "Installer GhostBSD" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "Essayer GhostBSD" - -#: install_station/welcome_live.py:101 -#, fuzzy -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" -"Pour utiliser GhostBSD sans l'installer, sélectionnez \"Essayer GhostBSD.\"\n" -"\n" -"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " -"\"Installer GhostBSD.\"\n" -"\n" -"Note : La sélection de langue fonctionne seulement quand vous sélectionnez " -"\"Essayer GhostBSD.\"\n" -" Quand vous installez GhostBSD, le programme d'installation est " -"seulement en anglais." +msgstr "Tous les disques sélectionnés seront remis à zéro." + +#~ msgid "" +#~ "Welcome! Please select your language to continue with the GhostBSD " +#~ "installation or live session." +#~ msgstr "" +#~ "Bienvenue ! Veuillez sélectionner votre langue pour continuer avec " +#~ "l'installation ou la session live de GhostBSD." + +#~ msgid "Try GhostBSD" +#~ msgstr "Essayer GhostBSD" + +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD\".\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD\"." +#~ msgstr "" +#~ "Pour utiliser GhostBSD sans l'installer, sélectionnez \"Essayer " +#~ "GhostBSD\".\n" +#~ "Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez " +#~ "sur \"Installer GhostBSD\"." diff --git a/po/fr_FR.po b/po/fr_FR.po index 525c303..70f095b 100644 --- a/po/fr_FR.po +++ b/po/fr_FR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 08:08-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: French \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" -msgstr "" +msgstr "Option de démarrage" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" -msgstr "" +msgstr "Configurer le gestionnaire de démarrage rEFInd" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" -msgstr "" +msgstr "Configurer le gestionnaire de démarrage FreeBSD" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" -msgstr "" +msgstr "Chargeur FreeBSD {loader} uniquement" + +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "Espace non autorisé" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "Très faible" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "Très faible" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "Plutôt faible" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "Faible" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "Fort" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "Plutôt fort" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "Très fort" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "Très fort" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "Créer" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "Supprimer" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "Annuler" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "Automatique" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "Ajouter une partition" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "Type :" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "Taille (Mo) :" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "Point de montage :" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "Schéma de partition" -#: install_station/end.py:13 +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "GPT : Table de partition GUID" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "MBR : Partition DOS" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -43,80 +127,92 @@ msgid "" "any changes you make or documents you save will\n" "not be preserved on reboot." msgstr "" +"L'installation est terminée. Vous devez redémarrer\n" +"l'ordinateur pour utiliser la nouvelle installation.\n" +"Vous pouvez continuer à utiliser ce support live, bien que\n" +"tous les changements que vous apportez ou les documents\n" +"que vous sauvegardez ne seront pas préservés au redémarrage." -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "Installation terminée" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "Redémarrer" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "Continuer" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "Erreur d'installation" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "L'installation a échoué !" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" -msgstr "" +msgstr "Système de signalement GhostBSD" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" +"Veuillez signaler le problème à {anchor}, et \n" +"assurez-vous de fournir /tmp/.pc-sysinstall/pc-sysinstall.log." -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "OK" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" -msgstr "" +msgstr "Comment voulez-vous installer GhostBSD ?" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" +"Configuration des disques\n" +"Installer GhostBSD en utilisant les configurations Stripe, Mirror, RAIDZ1, " +"RAIDZ2, ou RAIDZ3." -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" +"Configuration multi-démarrage\n" +"Installer GhostBSD avec ZFS aux côtés d'autres systèmes d'exploitation." -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "Création de ghostbsd_installation.cfg" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "Suppression de la partition" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "Création de la partition de disque" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "Création de nouvelles partitions" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "Installation en cours" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -127,258 +223,295 @@ msgid "" "\n" "We hope you'll enjoy our BSD operating system." msgstr "" +"Merci d'avoir choisi GhostBSD !\n" +"\n" +"Nous croyons que chaque système d'exploitation devrait être simple, élégant, " +"sécurisé et protéger votre vie privée tout en étant facile à utiliser. " +"GhostBSD simplifie FreeBSD pour ceux qui manquent de l'expertise technique " +"nécessaire pour l'utiliser et abaisse le niveau d'entrée d'utilisation de " +"BSD. \n" +"\n" +"Nous espérons que vous apprécierez notre système d'exploitation BSD." -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "Retour" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "Annuler" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "Suivant" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "Bienvenue sur GhostBSD" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" -msgstr "" +msgstr "Bouton" + +#: install_station/interface_controller.py:137 +#, fuzzy +msgid "Keyboard Setup" +msgstr "Disposition du clavier" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "Configuration réseau" + +#: install_station/interface_controller.py:160 +#, fuzzy +msgid "Try Or Install GhostBSD" +msgstr "Installer GhostBSD" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "Types d'installation" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "Configuration personnalisée" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "Configuration ZFS" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "Installer" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "Progression de l'installation" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" -msgstr "" +msgstr "Barre de progression" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" -msgstr "Configuration réseau" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" +msgstr "Tapez ici pour tester votre clavier" + +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" +msgstr "Disposition du clavier" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." -msgstr "Sélectionnez la langue que vous souhaitez utiliser avec GhostBSD." +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "Modèles de clavier" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 +#: install_station/keyboard.py:225 +msgid "English (US)" +msgstr "Anglais (États-Unis)" + +#: install_station/keyboard.py:226 +msgid "English (Canada)" +msgstr "Anglais (Canada)" + +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "Français (Canada)" + +#: install_station/language.py:93 install_station/language.py:197 +#, fuzzy +msgid "Please select your language:" +msgstr "Veuillez sélectionner un lecteur" + +#: install_station/language.py:99 install_station/language.py:116 msgid "Language" msgstr "Langue" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" -msgstr "Bienvenue sur GhostBSD !" - -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "Carte réseau connectée à Internet" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "Carte réseau non connectée à Internet" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "Aucune carte réseau détectée" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" -msgstr "" +msgstr "Carte WiFi détectée et connectée à un point d'accès" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" -msgstr "" +msgstr "Carte WiFi détectée mais non connectée à un point d'accès" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" -msgstr "" +msgstr "Carte WiFi non détectée ou non prise en charge" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" -msgstr "" +msgstr "Authentification du réseau Wi-Fi requise" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" -msgstr "" +msgstr "L'authentification du réseau Wi-Fi {ssid} a échoué" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" -msgstr "" +msgstr "Authentification requise par le réseau Wi-Fi {ssid}" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" -msgstr "" +msgstr "Mot de passe :" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" +msgstr "Afficher le mot de passe" + +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 1 ou plusieurs disques pour stripe (sélectionnez " +"d'abord le plus petit disque)" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 2 disques pour la mise en miroir (sélectionnez d'abord " +"le plus petit disque)" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 3 disques pour RAIDZ1 (sélectionnez d'abord le plus " +"petit disque)" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 4 disques pour RAIDZ2 (sélectionnez d'abord le plus " +"petit disque)" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" +"Veuillez sélectionner 5 disques pour RAIDZ3 (sélectionnez d'abord le plus " +"petit disque)" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "Disque" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "Taille (Mo)" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "Nom" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "Vérifier" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "Veuillez sélectionner un lecteur" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" -msgstr "" +msgstr "Type de pool" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" -msgstr "" +msgstr "1+ disques Stripe" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" -msgstr "" +msgstr "2+ disques Miroir" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" -msgstr "" +msgstr "3 disques RAIDZ1" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" -msgstr "" +msgstr "4 disques RAIDZ2" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" -msgstr "" +msgstr "5 disques RAIDZ3" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" -msgstr "" +msgstr "Nom du pool" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "Chiffrer le disque" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "Mot de passe" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "Vérifiez-le" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "Avertissement" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" -msgstr "" +msgstr "Le plus petit disque doit être SÉLECTIONNÉ en premier !\n" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." -msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" -"Pour exécuter GhostBSD sans l'installer, sélectionnez \"Essayez GhostBSD.\"\n" -"\n" -"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " -"\"Installer GhostBSD.\"\n" -"\n" -"Remarque : La sélection de la langue ne fonctionne qu'en sélectionnant " -"\"Essayez GhostBSD.\"\n" -" Lors de l'installation de GhostBSD, le programme d'installation " -"n'est qu'en anglais." - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "Installer GhostBSD" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "Essayez GhostBSD" - -#: install_station/welcome_live.py:101 -#, fuzzy -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" -"Pour exécuter GhostBSD sans l'installer, sélectionnez \"Essayez GhostBSD.\"\n" -"\n" -"Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez sur " -"\"Installer GhostBSD.\"\n" -"\n" -"Remarque : La sélection de la langue ne fonctionne qu'en sélectionnant " -"\"Essayez GhostBSD.\"\n" -" Lors de l'installation de GhostBSD, le programme d'installation " -"n'est qu'en anglais." +msgstr "Tous les disques sélectionnés seront réinitialisés." + +#~ msgid "" +#~ "Welcome! Please select your language to continue with the GhostBSD " +#~ "installation or live session." +#~ msgstr "" +#~ "Bienvenue ! Veuillez sélectionner votre langue pour continuer avec " +#~ "l'installation ou la session live de GhostBSD." + +#~ msgid "Try GhostBSD" +#~ msgstr "Essayez GhostBSD" + +#~ msgid "" +#~ "To run GhostBSD without installing, select \"Try GhostBSD\".\n" +#~ "To install GhostBSD on your computer hard disc drive, click \"Install " +#~ "GhostBSD\"." +#~ msgstr "" +#~ "Pour exécuter GhostBSD sans l'installer, sélectionnez \"Essayez " +#~ "GhostBSD\".\n" +#~ "Pour installer GhostBSD sur le disque dur de votre ordinateur, cliquez " +#~ "sur \"Installer GhostBSD\"." diff --git a/po/hr_HR.po b/po/hr_HR.po index 54b415a..0fc093a 100644 --- a/po/hr_HR.po +++ b/po/hr_HR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Croatian \n" @@ -18,25 +18,109 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/hu_HU.po b/po/hu_HU.po index b1781ac..d2fa1c7 100644 --- a/po/hu_HU.po +++ b/po/hu_HU.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Hungarian \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/install-station.pot b/po/install-station.pot new file mode 100644 index 0000000..5a4c508 --- /dev/null +++ b/po/install-station.pot @@ -0,0 +1,463 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 +msgid "Boot Option" +msgstr "" + +#: install_station/boot_manager.py:135 +msgid "Setup rEFInd boot manager" +msgstr "" + +#: install_station/boot_manager.py:149 +msgid "Setup FreeBSD boot manager" +msgstr "" + +#: install_station/boot_manager.py:164 +#, python-brace-format +msgid "FreeBSD {loader} loader only" +msgstr "" + +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 +msgid "" +"Installation is complete. You need to restart the\n" +"computer in order to use the new installation.\n" +"You can continue to use this live media, although\n" +"any changes you make or documents you save will\n" +"not be preserved on reboot." +msgstr "" + +#: install_station/end.py:31 +msgid "Installation Completed" +msgstr "" + +#: install_station/end.py:47 +msgid "Restart" +msgstr "" + +#: install_station/end.py:49 +msgid "Continue" +msgstr "" + +#: install_station/error.py:17 +msgid "Installation Error" +msgstr "" + +#: install_station/error.py:28 +msgid "Installation has failed!" +msgstr "" + +#: install_station/error.py:33 +msgid "GhostBSD issue system" +msgstr "" + +#: install_station/error.py:35 +#, python-brace-format +msgid "" +"Please report the issue to {anchor}, and \n" +"be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." +msgstr "" + +#: install_station/error.py:45 +msgid "Ok" +msgstr "" + +#: install_station/install_type.py:52 +msgid "How do you want to install GhostBSD?" +msgstr "" + +#: install_station/install_type.py:58 +msgid "" +"Disks Configuration\n" +"Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " +"configurations." +msgstr "" + +#: install_station/install_type.py:71 +msgid "" +"Multi-Boot Configuration\n" +"Install GhostBSD with ZFS alongside other operating systems." +msgstr "" + +#: install_station/install.py:46 +msgid "Creating ghostbsd_installation.cfg" +msgstr "" + +#: install_station/install.py:50 +msgid "Deleting partition" +msgstr "" + +#: install_station/install.py:55 +msgid "Creating disk partition" +msgstr "" + +#: install_station/install.py:60 +msgid "Creating new partitions" +msgstr "" + +#: install_station/install.py:90 +msgid "Installation in progress" +msgstr "" + +#: install_station/install.py:102 +msgid "" +"Thank you for choosing GhostBSD!\n" +"\n" +"We believe every computer operating system should be simple, elegant, secure " +"and protect your privacy while being easy to use. GhostBSD is simplifying " +"FreeBSD for those who lack the technical expertise required to use it and " +"lower the entry-level of using BSD. \n" +"\n" +"We hope you'll enjoy our BSD operating system." +msgstr "" + +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 +msgid "Back" +msgstr "" + +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 +msgid "Cancel" +msgstr "" + +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 +msgid "Next" +msgstr "" + +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 +msgid "Welcome to GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:116 +msgid "Button" +msgstr "" + +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 +msgid "Installation Types" +msgstr "" + +#: install_station/interface_controller.py:181 +msgid "Custom Configuration" +msgstr "" + +#: install_station/interface_controller.py:191 +msgid "ZFS Configuration" +msgstr "" + +#: install_station/interface_controller.py:203 +msgid "Install" +msgstr "" + +#: install_station/interface_controller.py:213 +msgid "Installation Progress" +msgstr "" + +#: install_station/interface_controller.py:220 +msgid "Progress Bar" +msgstr "" + +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" +msgstr "" + +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" +msgstr "" + +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" +msgstr "" + +#: install_station/keyboard.py:226 +msgid "English (Canada)" +msgstr "" + +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 +msgid "Network card connected to the internet" +msgstr "" + +#: install_station/network_setup.py:113 install_station/network_setup.py:190 +msgid "Network card not connected to the internet" +msgstr "" + +#: install_station/network_setup.py:116 install_station/network_setup.py:193 +msgid "No network card detected" +msgstr "" + +#: install_station/network_setup.py:125 install_station/network_setup.py:203 +msgid "WiFi card detected and connected to an access point" +msgstr "" + +#: install_station/network_setup.py:129 install_station/network_setup.py:207 +msgid "WiFi card detected but not connected to an access point" +msgstr "" + +#: install_station/network_setup.py:132 install_station/network_setup.py:210 +msgid "WiFi card not detected or not supported" +msgstr "" + +#: install_station/network_setup.py:366 +msgid "Wi-Fi Network Authentication Required" +msgstr "" + +#: install_station/network_setup.py:379 +#, python-brace-format +msgid "{ssid} Wi-Fi Network Authentication failed" +msgstr "" + +#: install_station/network_setup.py:381 +#, python-brace-format +msgid "Authentication required by {ssid} Wi-Fi Network" +msgstr "" + +#: install_station/network_setup.py:384 +msgid "Password:" +msgstr "" + +#: install_station/network_setup.py:387 +msgid "Show password" +msgstr "" + +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 +msgid "" +"Please select 1 or more drive for stripe (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:167 +msgid "Please select 2 drive for mirroring (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:175 +msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:182 +msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:189 +msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" +msgstr "" + +#: install_station/use_zfs.py:292 +msgid "Disk" +msgstr "" + +#: install_station/use_zfs.py:299 +msgid "Size(MB)" +msgstr "" + +#: install_station/use_zfs.py:305 +msgid "Name" +msgstr "" + +#: install_station/use_zfs.py:309 +msgid "Check" +msgstr "" + +#: install_station/use_zfs.py:322 +msgid "Please select one drive" +msgstr "" + +#: install_station/use_zfs.py:327 +msgid "Pool Type" +msgstr "" + +#: install_station/use_zfs.py:331 +msgid "1+ disks Stripe" +msgstr "" + +#: install_station/use_zfs.py:332 +msgid "2+ disks Mirror" +msgstr "" + +#: install_station/use_zfs.py:333 +msgid "3 disks RAIDZ1" +msgstr "" + +#: install_station/use_zfs.py:334 +msgid "4 disks RAIDZ2" +msgstr "" + +#: install_station/use_zfs.py:335 +msgid "5 disks RAIDZ3" +msgstr "" + +#: install_station/use_zfs.py:345 +msgid "Pool Name" +msgstr "" + +#: install_station/use_zfs.py:365 +msgid "Encrypt Disk" +msgstr "" + +#: install_station/use_zfs.py:369 +msgid "Password" +msgstr "" + +#: install_station/use_zfs.py:376 +msgid "Verify it" +msgstr "" + +#: install_station/use_zfs.py:537 +msgid "Warning" +msgstr "" + +#: install_station/use_zfs.py:548 +msgid "Smallest disk need to be SELECTED first!\n" +msgstr "" + +#: install_station/use_zfs.py:549 +msgid "All the disk selected will reset." +msgstr "" diff --git a/po/it_IT.po b/po/it_IT.po index cf2b1ad..efd0133 100644 --- a/po/it_IT.po +++ b/po/it_IT.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:19-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Italian \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/ja_JP.po b/po/ja_JP.po index 78be6ff..38b276b 100644 --- a/po/ja_JP.po +++ b/po/ja_JP.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:21-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Japanese \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/ko_KR.po b/po/ko_KR.po index f039b6f..4aa0524 100644 --- a/po/ko_KR.po +++ b/po/ko_KR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:25-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Korean \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/lt_LT.po b/po/lt_LT.po index c61b7b5..c149903 100644 --- a/po/lt_LT.po +++ b/po/lt_LT.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Lithuanian \n" @@ -18,25 +18,109 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "(n%100<10 || n%100>=20) ? 1 : 2);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/lv_LV.po b/po/lv_LV.po index a1f64a5..99d4093 100644 --- a/po/lv_LV.po +++ b/po/lv_LV.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Latvian \n" @@ -18,25 +18,109 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " "2);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/nl_NL.po b/po/nl_NL.po index dedb9b6..0fffec9 100644 --- a/po/nl_NL.po +++ b/po/nl_NL.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:22-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Dutch \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/no_NO.po b/po/no_NO.po index 9dd9412..e1b79bc 100644 --- a/po/no_NO.po +++ b/po/no_NO.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Norwegian\n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/pl_PL.po b/po/pl_PL.po index aba7c25..d298419 100644 --- a/po/pl_PL.po +++ b/po/pl_PL.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:22-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Polish \n" @@ -18,25 +18,109 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/pt_BR.po b/po/pt_BR.po index 05fde2a..0a2c350 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:19-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Brazilian Portuguese 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/pt_PT.po b/po/pt_PT.po index 63630c9..4cf2a9c 100644 --- a/po/pt_PT.po +++ b/po/pt_PT.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:27-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Portuguese \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/ro_RO.po b/po/ro_RO.po index 16e1c06..8223805 100644 --- a/po/ro_RO.po +++ b/po/ro_RO.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Romanian \n" @@ -18,25 +18,109 @@ msgstr "" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " "20)) ? 1 : 2;\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/ru_RU.po b/po/ru_RU.po index 49133d1..c6d9a0f 100644 --- a/po/ru_RU.po +++ b/po/ru_RU.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:20-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Russian \n" @@ -18,25 +18,109 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/sk_SK.po b/po/sk_SK.po index e3cb940..77d2ae5 100644 --- a/po/sk_SK.po +++ b/po/sk_SK.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Slovak \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/sl_SI.po b/po/sl_SI.po index 7136274..10072d1 100644 --- a/po/sl_SI.po +++ b/po/sl_SI.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:26-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Slovenian \n" @@ -18,25 +18,109 @@ msgstr "" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || " "n%100==4 ? 2 : 3);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -45,79 +129,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -129,238 +213,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/sv_SE.po b/po/sv_SE.po index 6c82b26..cd80e06 100644 --- a/po/sv_SE.po +++ b/po/sv_SE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:22-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Swedish \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/th_TH.po b/po/th_TH.po index cf1b4a5..7e6da44 100644 --- a/po/th_TH.po +++ b/po/th_TH.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:27-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Thai <(nothing)>\n" @@ -16,25 +16,109 @@ msgstr "" "Content-Type: text/plain; charset=ASCII\n" "Content-Transfer-Encoding: 8bit\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -43,79 +127,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -127,238 +211,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/tr_TR.po b/po/tr_TR.po index 0691e94..eee501c 100644 --- a/po/tr_TR.po +++ b/po/tr_TR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:24-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Turkish \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/vi_VN.po b/po/vi_VN.po index 171fe19..3ee1a6a 100644 --- a/po/vi_VN.po +++ b/po/vi_VN.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:27-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Vietnamese \n" @@ -17,25 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -44,79 +128,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -128,238 +212,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/zh_CN.po b/po/zh_CN.po index dfd8361..7b588aa 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:21-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Chinese (simplified) \n" @@ -16,25 +16,109 @@ msgstr "" "Content-Type: text/plain; charset=ASCII\n" "Content-Transfer-Encoding: 8bit\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -43,79 +127,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -127,238 +211,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/po/zh_TW.po b/po/zh_TW.po index 47a8191..95a7874 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-07-09 20:39-0300\n" +"POT-Creation-Date: 2025-07-12 21:21-0300\n" "PO-Revision-Date: 2025-07-09 20:25-0300\n" "Last-Translator: Eric Turgeon \n" "Language-Team: Chinese (traditional) \n" @@ -16,25 +16,109 @@ msgstr "" "Content-Type: text/plain; charset=ASCII\n" "Content-Transfer-Encoding: 8bit\n" -#: install_station/boot_manager.py:125 -#: install_station/interface_controller.py:168 +#: install_station/boot_manager.py:121 +#: install_station/interface_controller.py:201 msgid "Boot Option" msgstr "" -#: install_station/boot_manager.py:139 +#: install_station/boot_manager.py:135 msgid "Setup rEFInd boot manager" msgstr "" -#: install_station/boot_manager.py:153 +#: install_station/boot_manager.py:149 msgid "Setup FreeBSD boot manager" msgstr "" -#: install_station/boot_manager.py:168 +#: install_station/boot_manager.py:164 #, python-brace-format msgid "FreeBSD {loader} loader only" msgstr "" -#: install_station/end.py:13 +#: install_station/common.py:108 +msgid "Space not allowed" +msgstr "" + +#: install_station/common.py:110 install_station/common.py:112 +msgid "Super Weak" +msgstr "" + +#: install_station/common.py:114 install_station/common.py:120 +msgid "Very Weak" +msgstr "" + +#: install_station/common.py:116 install_station/common.py:122 +#: install_station/common.py:128 +msgid "Fairly Weak" +msgstr "" + +#: install_station/common.py:118 install_station/common.py:124 +#: install_station/common.py:130 install_station/common.py:136 +msgid "Weak" +msgstr "" + +#: install_station/common.py:126 install_station/common.py:132 +#: install_station/common.py:138 install_station/common.py:144 +msgid "Strong" +msgstr "" + +#: install_station/common.py:134 install_station/common.py:140 +#: install_station/common.py:146 install_station/common.py:152 +msgid "Fairly Strong" +msgstr "" + +#: install_station/common.py:142 install_station/common.py:148 +msgid "Very Strong" +msgstr "" + +#: install_station/common.py:150 install_station/common.py:154 +msgid "Super Strong" +msgstr "" + +#: install_station/custom.py:248 +msgid "Create" +msgstr "" + +#: install_station/custom.py:252 +msgid "Delete" +msgstr "" + +#: install_station/custom.py:256 +msgid "Revert" +msgstr "" + +#: install_station/custom.py:260 +msgid "Auto" +msgstr "" + +#: install_station/custom.py:328 install_station/custom.py:566 +msgid "Add Partition" +msgstr "" + +#: install_station/custom.py:342 +msgid "Type:" +msgstr "" + +#: install_station/custom.py:343 install_station/custom.py:580 +msgid "Size(MB):" +msgstr "" + +#: install_station/custom.py:344 +msgid "Mount point:" +msgstr "" + +#: install_station/custom.py:496 +msgid "Partition Scheme" +msgstr "" + +#: install_station/custom.py:515 +msgid "GPT: GUID Partition Table" +msgstr "" + +#: install_station/custom.py:516 +msgid "MBR: DOS Partition" +msgstr "" + +#: install_station/end.py:10 msgid "" "Installation is complete. You need to restart the\n" "computer in order to use the new installation.\n" @@ -43,79 +127,79 @@ msgid "" "not be preserved on reboot." msgstr "" -#: install_station/end.py:34 +#: install_station/end.py:31 msgid "Installation Completed" msgstr "" -#: install_station/end.py:50 +#: install_station/end.py:47 msgid "Restart" msgstr "" -#: install_station/end.py:52 +#: install_station/end.py:49 msgid "Continue" msgstr "" -#: install_station/error.py:21 +#: install_station/error.py:17 msgid "Installation Error" msgstr "" -#: install_station/error.py:32 +#: install_station/error.py:28 msgid "Installation has failed!" msgstr "" -#: install_station/error.py:37 +#: install_station/error.py:33 msgid "GhostBSD issue system" msgstr "" -#: install_station/error.py:38 +#: install_station/error.py:35 #, python-brace-format msgid "" "Please report the issue to {anchor}, and \n" "be sure to provide /tmp/.pc-sysinstall/pc-sysinstall.log." msgstr "" -#: install_station/error.py:47 +#: install_station/error.py:45 msgid "Ok" msgstr "" -#: install_station/install_type.py:55 +#: install_station/install_type.py:52 msgid "How do you want to install GhostBSD?" msgstr "" -#: install_station/install_type.py:60 +#: install_station/install_type.py:58 msgid "" "Disks Configuration\n" "Install GhostBSD using Stripe, Mirror, RAIDZ1, RAIDZ2, or RAIDZ3 " "configurations." msgstr "" -#: install_station/install_type.py:70 +#: install_station/install_type.py:71 msgid "" "Multi-Boot Configuration\n" "Install GhostBSD with ZFS alongside other operating systems." msgstr "" -#: install_station/install.py:39 +#: install_station/install.py:46 msgid "Creating ghostbsd_installation.cfg" msgstr "" -#: install_station/install.py:43 +#: install_station/install.py:50 msgid "Deleting partition" msgstr "" -#: install_station/install.py:48 +#: install_station/install.py:55 msgid "Creating disk partition" msgstr "" -#: install_station/install.py:53 +#: install_station/install.py:60 msgid "Creating new partitions" msgstr "" -#: install_station/install.py:83 +#: install_station/install.py:90 msgid "Installation in progress" msgstr "" -#: install_station/install.py:95 +#: install_station/install.py:102 msgid "" "Thank you for choosing GhostBSD!\n" "\n" @@ -127,238 +211,252 @@ msgid "" "We hope you'll enjoy our BSD operating system." msgstr "" -#: install_station/interface_controller.py:14 +#: install_station/interface_controller.py:9 +#: install_station/interface_controller.py:20 msgid "Back" msgstr "" -#: install_station/interface_controller.py:16 +#: install_station/interface_controller.py:11 +#: install_station/interface_controller.py:21 msgid "Cancel" msgstr "" -#: install_station/interface_controller.py:18 -#: install_station/interface_controller.py:226 +#: install_station/interface_controller.py:13 +#: install_station/interface_controller.py:22 +#: install_station/interface_controller.py:257 msgid "Next" msgstr "" -#: install_station/interface_controller.py:100 -#: install_station/interface_controller.py:101 -#: install_station/welcome_live.py:112 +#: install_station/interface_controller.py:106 +#: install_station/interface_controller.py:107 install_station/language.py:101 msgid "Welcome to GhostBSD" msgstr "" -#: install_station/interface_controller.py:110 +#: install_station/interface_controller.py:116 msgid "Button" msgstr "" -#: install_station/interface_controller.py:136 +#: install_station/interface_controller.py:137 +msgid "Keyboard Setup" +msgstr "" + +#: install_station/interface_controller.py:149 +#: install_station/interface_controller.py:234 +#: install_station/interface_controller.py:239 +msgid "Network Setup" +msgstr "" + +#: install_station/interface_controller.py:160 +msgid "Try Or Install GhostBSD" +msgstr "" + +#: install_station/interface_controller.py:170 msgid "Installation Types" msgstr "" -#: install_station/interface_controller.py:148 +#: install_station/interface_controller.py:181 msgid "Custom Configuration" msgstr "" -#: install_station/interface_controller.py:158 +#: install_station/interface_controller.py:191 msgid "ZFS Configuration" msgstr "" -#: install_station/interface_controller.py:170 +#: install_station/interface_controller.py:203 msgid "Install" msgstr "" -#: install_station/interface_controller.py:180 +#: install_station/interface_controller.py:213 msgid "Installation Progress" msgstr "" -#: install_station/interface_controller.py:187 +#: install_station/interface_controller.py:220 msgid "Progress Bar" msgstr "" -#: install_station/interface_controller.py:201 -#: install_station/interface_controller.py:206 -#: install_station/network_setup.py:110 -msgid "Network Setup" +#: install_station/keyboard.py:40 +msgid "Type here to test your keyboard" msgstr "" -#: install_station/language.py:20 -msgid "Select the language you want to use with GhostBSD." +#: install_station/keyboard.py:97 +msgid "Keyboard Layout" msgstr "" -#: install_station/language.py:64 install_station/welcome_live.py:110 -#: install_station/welcome_live.py:127 -msgid "Language" +#: install_station/keyboard.py:117 +msgid "Keyboard Models" +msgstr "" + +#: install_station/keyboard.py:225 +msgid "English (US)" msgstr "" -#: install_station/language.py:79 -msgid "Welcome To GhostBSD!" +#: install_station/keyboard.py:226 +msgid "English (Canada)" msgstr "" -#: install_station/network_setup.py:69 install_station/network_setup.py:129 +#: install_station/keyboard.py:227 +msgid "French (Canada)" +msgstr "" + +#: install_station/language.py:93 install_station/language.py:197 +msgid "Please select your language:" +msgstr "" + +#: install_station/language.py:99 install_station/language.py:116 +msgid "Language" +msgstr "" + +#: install_station/network_setup.py:107 install_station/network_setup.py:184 msgid "Network card connected to the internet" msgstr "" -#: install_station/network_setup.py:75 install_station/network_setup.py:135 +#: install_station/network_setup.py:113 install_station/network_setup.py:190 msgid "Network card not connected to the internet" msgstr "" -#: install_station/network_setup.py:78 install_station/network_setup.py:138 +#: install_station/network_setup.py:116 install_station/network_setup.py:193 msgid "No network card detected" msgstr "" -#: install_station/network_setup.py:86 install_station/network_setup.py:146 +#: install_station/network_setup.py:125 install_station/network_setup.py:203 msgid "WiFi card detected and connected to an access point" msgstr "" -#: install_station/network_setup.py:90 install_station/network_setup.py:150 +#: install_station/network_setup.py:129 install_station/network_setup.py:207 msgid "WiFi card detected but not connected to an access point" msgstr "" -#: install_station/network_setup.py:93 install_station/network_setup.py:153 +#: install_station/network_setup.py:132 install_station/network_setup.py:210 msgid "WiFi card not detected or not supported" msgstr "" -#: install_station/network_setup.py:258 +#: install_station/network_setup.py:366 msgid "Wi-Fi Network Authentication Required" msgstr "" -#: install_station/network_setup.py:270 +#: install_station/network_setup.py:379 #, python-brace-format msgid "{ssid} Wi-Fi Network Authentication failed" msgstr "" -#: install_station/network_setup.py:272 +#: install_station/network_setup.py:381 #, python-brace-format msgid "Authentication required by {ssid} Wi-Fi Network" msgstr "" -#: install_station/network_setup.py:275 +#: install_station/network_setup.py:384 msgid "Password:" msgstr "" -#: install_station/network_setup.py:278 +#: install_station/network_setup.py:387 msgid "Show password" msgstr "" -#: install_station/use_zfs.py:164 +#: install_station/try_install.py:102 +msgid "What would you like to do?" +msgstr "" + +#: install_station/try_install.py:109 +msgid "" +"Install GhostBSD\n" +"Install GhostBSD on your computer." +msgstr "" + +#: install_station/try_install.py:122 +msgid "" +"Try GhostBSD\n" +"Run GhostBSD without installing to your computer." +msgstr "" + +#: install_station/use_zfs.py:160 msgid "" "Please select 1 or more drive for stripe (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:171 +#: install_station/use_zfs.py:167 msgid "Please select 2 drive for mirroring (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:179 +#: install_station/use_zfs.py:175 msgid "Please select 3 drive for RAIDZ1 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:186 +#: install_station/use_zfs.py:182 msgid "Please select 4 drive for RAIDZ2 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:193 +#: install_station/use_zfs.py:189 msgid "Please select 5 drive for RAIDZ3 (select the smallest disk first)" msgstr "" -#: install_station/use_zfs.py:296 +#: install_station/use_zfs.py:292 msgid "Disk" msgstr "" -#: install_station/use_zfs.py:303 +#: install_station/use_zfs.py:299 msgid "Size(MB)" msgstr "" -#: install_station/use_zfs.py:309 +#: install_station/use_zfs.py:305 msgid "Name" msgstr "" -#: install_station/use_zfs.py:313 +#: install_station/use_zfs.py:309 msgid "Check" msgstr "" -#: install_station/use_zfs.py:326 +#: install_station/use_zfs.py:322 msgid "Please select one drive" msgstr "" -#: install_station/use_zfs.py:331 +#: install_station/use_zfs.py:327 msgid "Pool Type" msgstr "" -#: install_station/use_zfs.py:335 +#: install_station/use_zfs.py:331 msgid "1+ disks Stripe" msgstr "" -#: install_station/use_zfs.py:336 +#: install_station/use_zfs.py:332 msgid "2+ disks Mirror" msgstr "" -#: install_station/use_zfs.py:337 +#: install_station/use_zfs.py:333 msgid "3 disks RAIDZ1" msgstr "" -#: install_station/use_zfs.py:338 +#: install_station/use_zfs.py:334 msgid "4 disks RAIDZ2" msgstr "" -#: install_station/use_zfs.py:339 +#: install_station/use_zfs.py:335 msgid "5 disks RAIDZ3" msgstr "" -#: install_station/use_zfs.py:349 +#: install_station/use_zfs.py:345 msgid "Pool Name" msgstr "" -#: install_station/use_zfs.py:369 +#: install_station/use_zfs.py:365 msgid "Encrypt Disk" msgstr "" -#: install_station/use_zfs.py:373 +#: install_station/use_zfs.py:369 msgid "Password" msgstr "" -#: install_station/use_zfs.py:380 +#: install_station/use_zfs.py:376 msgid "Verify it" msgstr "" -#: install_station/use_zfs.py:541 +#: install_station/use_zfs.py:537 msgid "Warning" msgstr "" -#: install_station/use_zfs.py:552 +#: install_station/use_zfs.py:548 msgid "Smallest disk need to be SELECTED first!\n" msgstr "" -#: install_station/use_zfs.py:553 +#: install_station/use_zfs.py:549 msgid "All the disk selected will reset." msgstr "" - -#: install_station/welcome_live.py:16 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" - -#: install_station/welcome_live.py:95 install_station/welcome_live.py:242 -msgid "Install GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:98 install_station/welcome_live.py:246 -msgid "Try GhostBSD" -msgstr "" - -#: install_station/welcome_live.py:101 -msgid "" -"To run GhostBSD without installing, select \"Try GhostBSD.\"\n" -" \n" -"\n" -"To install GhostBSD on your computer hard disk drive, click \"Install " -"GhostBSD.\"\n" -"\n" -"Note: Language selection only works when selecting \"Try GhostBSD.\"\n" -" When installing GhostBSD, the installation program is only in English." -msgstr "" diff --git a/setup.py b/setup.py index 8719e25..89cb861 100755 --- a/setup.py +++ b/setup.py @@ -39,9 +39,25 @@ def run(self): # Define paths pot_file = 'po/install-station.pot' po_files = glob.glob('po/*.po') - # Step 1: Extract messages to .pot file + + # Check if .pot file exists, create it if it doesn't + if not os.path.exists(pot_file): + print(f"POT file {pot_file} does not exist. Creating it...") + else: + print("Updating existing .pot file...") + + # Step 1: Extract messages to .pot file (create or update) print("Extracting messages to .pot file...") - os.system(f'xgettext --from-code=UTF-8 -L Python -o {pot_file} install_station/*.py install-station') + os.system( + f'xgettext --from-code=UTF-8 -L Python --keyword=get_text -o {pot_file}' + ' install_station/*.py install-station' + ) + + # Verify .pot file was created successfully + if not os.path.exists(pot_file): + print(f"Error: Failed to create {pot_file}") + return + # Step 2: Update .po files with the new .pot file print("Updating .po files with new translations...") for po_file in po_files: @@ -73,7 +89,10 @@ def run(self): # Check if the .pot file exists if not os.path.exists(pot_file): print("Extracting messages to .pot file...") - os.system(f'xgettext --from-code=UTF-8 -L Python -o {pot_file} install_station/*.py install-station') + os.system( + f'xgettext --from-code=UTF-8 -L Python --keyword=get_text -o {pot_file}' + ' install_station/*.py install-station' + ) # Create the new .po file if not os.path.exists(po_file): print(f"Creating new {po_file} for locale '{self.locale}'...") @@ -119,6 +138,7 @@ def run(self): ] data_files = [ + (f'{prefix}/lib/install-station', ['src/ghostbsd-style.css']), (f'{prefix}/lib/install-station/backend-query', lib_install_station_backend_query), (f'{prefix}/lib/install-station/image', lib_install_station_image) ] From e8a179495c2e6c72916162fdd00d479814dcd3a6 Mon Sep 17 00:00:00 2001 From: ericbsd Date: Fri, 12 Sep 2025 19:12:44 -0300 Subject: [PATCH 3/4] Add type annotations and docstrings across modules - Introduced type annotations for functions, methods, and class variables - Added docstrings to improve code clarity and maintainability - Improved consistency in function signatures and replaced ambiguous types with specific ones - Updated `setup.py` and key modules with better descriptions and format adjustments --- install-station | 18 ++- install_station/__init__.py | 14 ++ install_station/common.py | 41 ++++-- install_station/data.py | 20 +-- install_station/install_type.py | 56 +++++++- install_station/interface_controller.py | 94 +++++++++---- install_station/keyboard.py | 45 +++--- install_station/language.py | 28 ++-- install_station/network_setup.py | 48 +++---- install_station/partition.py | 22 +-- install_station/system_calls.py | 177 ++++++++++++++++++++++-- install_station/try_install.py | 18 +-- install_station/window.py | 76 ++++++++-- setup.py | 23 ++- 14 files changed, 521 insertions(+), 159 deletions(-) diff --git a/install-station b/install-station index 0fa003b..5ff8acf 100755 --- a/install-station +++ b/install-station @@ -1,10 +1,16 @@ #!/usr/local/bin/python """ Install Station executable module. + +This is the main entry point for the Install Station GTK+ application. +It initializes all page components and sets up the main window interface. """ +from __future__ import annotations + import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk + from install_station.language import Language from install_station.keyboard import Keyboard from install_station.network_setup import NetworkSetup @@ -21,16 +27,22 @@ from install_station.interface_controller import Interface, Button class MainWindow: """ Install Station main window class. + + This class initializes the main GTK window and sets up all page components + for the installation wizard interface. """ - def __init__(self): + def __init__(self) -> None: """ - Install Station main window class initiation. + Initialize the Install Station main window. + + Sets up page assignments to Interface class, configures the main window + properties, and creates the main interface layout. """ Interface.welcome = Language Interface.keyboard = Keyboard Interface.network_setup = NetworkSetup - Interface.try_isntall = TryOrInstall + Interface.try_install = TryOrInstall Interface.installation_type = InstallTypes Interface.custom_partition = PartitionManager Interface.full_zfs = ZFS diff --git a/install_station/__init__.py b/install_station/__init__.py index e69de29..1927838 100644 --- a/install_station/__init__.py +++ b/install_station/__init__.py @@ -0,0 +1,14 @@ +""" +Install Station Package. + +A streamlined installer for GhostBSD providing a GTK+ interface +for disk partitioning and OS installation. + +This package contains all the modules needed for the installation wizard +including language selection, keyboard configuration, network setup, +and filesystem management. +""" + +__version__ = "0.1" +__author__ = "Eric Turgeon" +__license__ = "BSD" \ No newline at end of file diff --git a/install_station/common.py b/install_station/common.py index f62d40d..50f2471 100644 --- a/install_station/common.py +++ b/install_station/common.py @@ -1,3 +1,9 @@ +""" +Common utility functions for Install Station. + +This module provides various utility functions including password strength +checking, text validation, and deprecation decorators. +""" import re import warnings from install_station.data import get_text @@ -62,13 +68,15 @@ def lower_upper(text: str) -> bool: return not bool(search(text)) -# Find if password contain only lower and upper case and -def lower_upper_number(text) -> bool: +def lower_upper_number(text: str) -> bool: """ - Find if password contain only lower and upper case and - :param text: password - - :return: True if password contain only lower and upper case and + Find if password contains only lowercase, uppercase letters and numbers. + + Args: + text: password to check + + Returns: + True if password contains only lowercase, uppercase letters and numbers """ search = re.compile(r'[^a-zA-Z0-9]').search return not bool(search(text)) @@ -76,7 +84,7 @@ def lower_upper_number(text) -> bool: # Find if password contain only lowercase, uppercase numbers # and some special character. -def all_character(text): +def all_character(text: str) -> bool: """ Find if password contain only lowercase, uppercase numbers and some special character. @@ -89,7 +97,14 @@ def all_character(text): return not bool(search(text)) -def password_strength(password, label3): +def password_strength(password: str, label3) -> None: + """ + Evaluate and display password strength. + + Args: + password: The password to evaluate + label3: GTK Label widget to display strength result + """ same_character_type = any( [ lower_case(password), @@ -155,6 +170,16 @@ def password_strength(password, label3): def deprecated(*, version: str, reason: str): + """ + Decorator to mark functions as deprecated. + + Args: + version: Version when function was deprecated + reason: Reason for deprecation + + Returns: + Decorator function that adds deprecation warnings + """ def decorator(func): def wrapper(*args, **kwargs): warnings.warn( diff --git a/install_station/data.py b/install_station/data.py index b3385e8..6e03150 100644 --- a/install_station/data.py +++ b/install_station/data.py @@ -4,14 +4,14 @@ import os import gettext -be_name = "default" -logo = "/usr/local/lib/install-station/image/logo.png" -gif_logo = "/usr/local/lib/install-station/image/G_logo.gif" -pc_sysinstall = "/usr/local/sbin/pc-sysinstall" -query = "sh /usr/local/lib/install-station/backend-query" -tmp = "/tmp" -installation_config = f'{tmp}/ghostbsd_installation.cfg' -zfs_datasets = "/," \ +be_name: str = "default" +logo: str = "/usr/local/lib/install-station/image/logo.png" +gif_logo: str = "/usr/local/lib/install-station/image/G_logo.gif" +pc_sysinstall: str = "/usr/local/sbin/pc-sysinstall" +query: str = "sh /usr/local/lib/install-station/backend-query" +tmp: str = "/tmp" +installation_config: str = f'{tmp}/ghostbsd_installation.cfg' +zfs_datasets: str = "/," \ "/home(mountpoint=/home)," \ "/tmp(mountpoint=/tmp|exec=on|setuid=off)," \ "/usr(mountpoint=/usr|canmount=off)," \ @@ -67,7 +67,7 @@ class InstallationData: network_config: dict = {} @classmethod - def reset(cls): + def reset(cls) -> None: """Reset all installation data""" cls.destroy = {} cls.delete = [] @@ -92,7 +92,7 @@ def reset(cls): cls.network_config = {} -def get_text(text): +def get_text(text: str) -> str: """ Global translation function that always returns current language translation. diff --git a/install_station/install_type.py b/install_station/install_type.py index 7952fe0..410f2d2 100644 --- a/install_station/install_type.py +++ b/install_station/install_type.py @@ -18,30 +18,72 @@ class InstallTypes: + """Utility class for filesystem type selection following the utility class pattern. + + This class provides a GTK+ interface for installation type selection including: + - Filesystem type selection between ZFS disk configuration and multi-boot + - Radio button interface for user selection + - Integration with InstallationData for persistent configuration + + The class follows a utility pattern with class methods and variables for state management, + designed to integrate with the Interface controller for navigation flow. + """ # Class variables instead of instance variables - ne = 'zfs' - vbox1 = None + ne: str = 'zfs' + vbox1: Gtk.Box | None = None + full_zfs_button: Gtk.RadioButton | None = None + custom_button: Gtk.RadioButton | None = None @classmethod - def filesystem_type(cls, widget, val): + def filesystem_type(cls, widget: Gtk.RadioButton, val: str) -> None: + """Handle filesystem type selection from radio buttons. + + Only responds to activation, not deactivation. Updates both + class variables and InstallationData with the selected filesystem type. + + Args: + widget: RadioButton widget that triggered the action + val: Filesystem type value ('zfs' or 'custom') + """ # Only respond to activation, not deactivation if widget.get_active(): cls.ne = val InstallationData.filesystem_type = val - return + print(f"Filesystem type selected: {val}") @classmethod - def get_type(cls): + def get_type(cls) -> str: + """Get the current filesystem type selection. + + Returns: + str: Current filesystem type ('zfs' or 'custom') + """ return InstallationData.filesystem_type or cls.ne @classmethod - def get_model(cls): + def get_model(cls) -> Gtk.Box: + """Return the GTK widget model for the installation type interface. + + Returns the main container widget that was created during initialization. + + Returns: + Gtk.Box: The main container widget for the installation type interface + """ if cls.vbox1 is None: cls.initialize() return cls.vbox1 @classmethod - def initialize(cls): + def initialize(cls) -> None: + """Initialize the installation type selection UI following the utility class pattern. + + Creates the main interface including: + - Radio buttons for ZFS disk configuration and multi-boot setup + - Descriptive text for each option + - Centered layout with proper spacing + + This method is called automatically by get_model() when the interface is first accessed. + """ cls.vbox1 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) cls.vbox1.show() vbox2 = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) diff --git a/install_station/interface_controller.py b/install_station/interface_controller.py index 37463fc..17c01ef 100644 --- a/install_station/interface_controller.py +++ b/install_station/interface_controller.py @@ -1,28 +1,43 @@ +""" +Interface Controller Module. + +This module provides the main navigation interface and button controls +for the Install Station GTK application wizard. +""" +import gi +gi.require_version('Gtk', '3.0') from gi.repository import Gtk from install_station.install import InstallProgress, InstallWindow from install_station.partition import DiskPartition from install_station.window import Window from install_station.data import InstallationData, get_text +from install_station.system_calls import localize_system, set_keyboard class Button: - back_button = Gtk.Button(label=get_text('Back')) + """ + Button management class for navigation controls. + + Manages the Back, Cancel, and Next buttons used throughout + the installation wizard interface. + """ + back_button: Gtk.Button = Gtk.Button(label=get_text('Back')) """This button is used to go back to the previous page.""" - cancel_button = Gtk.Button(label=get_text('Cancel')) + cancel_button: Gtk.Button = Gtk.Button(label=get_text('Cancel')) """This button is used to quit and clean up.""" - next_button = Gtk.Button(label=get_text('Next')) + next_button: Gtk.Button = Gtk.Button(label=get_text('Next')) """This button is used to go to the next page.""" - _box = None + _box: Gtk.Box | None = None @classmethod - def update_button_labels(cls): + def update_button_labels(cls) -> None: """Update button labels with current language translations.""" cls.back_button.set_label(get_text('Back')) cls.cancel_button.set_label(get_text('Cancel')) cls.next_button.set_label(get_text('Next')) @classmethod - def hide_all(cls): + def hide_all(cls) -> None: """ This method hides all buttons. """ @@ -31,7 +46,7 @@ def hide_all(cls): cls.next_button.hide() @classmethod - def show_initial(cls): + def show_initial(cls) -> None: """ This method shows the initial buttons. Cancel and Next. """ @@ -40,21 +55,21 @@ def show_initial(cls): cls.next_button.show() @classmethod - def show_back(cls): + def show_back(cls) -> None: """ This method shows the back button. """ cls.back_button.show() @classmethod - def hide_back(cls): + def hide_back(cls) -> None: """ This method hides the back button. """ cls.back_button.hide() @classmethod - def box(cls): + def box(cls) -> Gtk.Box: """ This method creates a box container of buttons aligned to the right. @@ -80,18 +95,26 @@ def box(cls): class Interface: + """ + Main interface controller for the installation wizard. + + Manages the GTK Notebook pages and navigation between different + screens in the installation process including language, keyboard, + network setup, installation type, and configuration screens. + """ welcome = None keyboard = None network_setup = None - try_isntall = None + try_install = None installation_type = None custom_partition = None full_zfs = None boot_manager = None - page = Gtk.Notebook() + page: Gtk.Notebook = Gtk.Notebook() + nbButton: Gtk.Notebook | None = None @classmethod - def get_interface(cls): + def get_interface(cls) -> Gtk.Box: interface_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) interface_box.show() interface_box.pack_start(cls.page, True, True, 0) @@ -118,13 +141,13 @@ def get_interface(cls): return interface_box @classmethod - def delete(cls, _widget, _event=None): + def delete(cls, _widget: Gtk.Widget, _event=None) -> None: """Close the main window.""" InstallationData.reset() Gtk.main_quit() @classmethod - def next_page(cls, _widget): + def next_page(cls, _widget: Gtk.Button) -> None: """Go to the next window.""" page = cls.page.get_current_page() if page == 0: @@ -155,22 +178,39 @@ def next_page(cls, _widget): if cls.page.get_n_pages() <= 3: try_install_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) try_install_box.show() - get_try_install = cls.try_isntall.get_model() + get_try_install = cls.try_install.get_model() try_install_box.pack_start(get_try_install, True, True, 0) label = Gtk.Label(label=get_text("Try Or Install GhostBSD")) cls.page.insert_page(try_install_box, label, 3) cls.page.next_page() cls.page.show_all() elif page == 3: - if cls.page.get_n_pages() <= 4: - type_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) - type_box.show() - get_types = cls.installation_type.get_model() - type_box.pack_start(get_types, True, True, 0) - label = Gtk.Label(label=get_text("Installation Types")) - cls.page.insert_page(type_box, label, 4) - cls.page.next_page() - cls.page.show_all() + if cls.try_install.get_what() == 'install': + if cls.page.get_n_pages() <= 4: + type_box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, homogeneous=False, spacing=0) + type_box.show() + get_types = cls.installation_type.get_model() + type_box.pack_start(get_types, True, True, 0) + label = Gtk.Label(label=get_text("Installation Types")) + cls.page.insert_page(type_box, label, 4) + cls.page.next_page() + cls.page.show_all() + else: + # Apply localization and keyboard layout for live session + # Apply system localization if language was selected + if InstallationData.language_code: + localize_system(InstallationData.language_code) + + # Apply keyboard layout if selected + if InstallationData.keyboard_layout_code: + set_keyboard( + InstallationData.keyboard_layout_code, + InstallationData.keyboard_variant, + InstallationData.keyboard_model_code + ) + + # Continue to network setup for live session + cls.next_setup_page() elif page == 4: Button.show_back() if InstallationData.filesystem_type == "custom": @@ -226,7 +266,7 @@ def next_page(cls, _widget): Window.set_title(title_text) @classmethod - def next_setup_page(cls): + def next_setup_page(cls) -> None: page = cls.page.get_current_page() if page == 0: Button.next_button.show() @@ -248,7 +288,7 @@ def next_setup_page(cls): Gtk.main_quit() @classmethod - def back_page(cls, _widget): + def back_page(cls, _widget: Gtk.Button) -> None: """Go back to the previous window.""" current_page = cls.page.get_current_page() if current_page == 1: diff --git a/install_station/keyboard.py b/install_station/keyboard.py index e70bb8b..e865b70 100644 --- a/install_station/keyboard.py +++ b/install_station/keyboard.py @@ -32,10 +32,15 @@ ) -# This class is for placeholder for entry. class PlaceHolderEntry(Gtk.Entry): + """ + GTK Entry widget with placeholder text functionality. + + This class extends Gtk.Entry to provide placeholder text that disappears + when the widget gains focus and returns when focus is lost if empty. + """ - def __init__(self, *args, **kwds): + def __init__(self, *args, **kwds) -> None: Gtk.Entry.__init__(self, *args, **kwds) self.placeholder = get_text('Type here to test your keyboard') self.set_text(self.placeholder) @@ -43,18 +48,18 @@ def __init__(self, *args, **kwds): self.connect('focus-in-event', self._focus_in_event) self.connect('focus-out-event', self._focus_out_event) - def _focus_in_event(self, _widget, _event): + def _focus_in_event(self, _widget: Gtk.Widget, _event) -> None: if self._default: self.set_text('') - def _focus_out_event(self, _widget, _event): + def _focus_out_event(self, _widget: Gtk.Widget, _event) -> None: if Gtk.Entry.get_text(self) == '': self.set_text(self.placeholder) self._default = True else: self._default = False - def get_text(self): + def get_text(self) -> str: if self._default: return '' return Gtk.Entry.get_text(self) @@ -74,15 +79,15 @@ class Keyboard: designed to integrate with the Interface controller for navigation flow. """ # Class variables instead of instance variables - kb_layout = None - kb_variant = None - kb_model = None - vbox1 = None - treeView = None - test_entry = None + kb_layout: str | None = None + kb_variant: str | None = None + kb_model: str | None = None + vbox1: Gtk.Box | None = None + treeView: Gtk.TreeView | None = None + test_entry: PlaceHolderEntry | None = None @classmethod - def layout_columns(cls, treeview): + def layout_columns(cls, treeview: Gtk.TreeView) -> None: """ Configure the keyboard layout treeview with appropriate columns. @@ -102,7 +107,7 @@ def layout_columns(cls, treeview): treeview.append_column(column) @classmethod - def variant_columns(cls, treeview): + def variant_columns(cls, treeview: Gtk.TreeView) -> None: """ Configure the keyboard model treeview with appropriate columns. @@ -122,7 +127,7 @@ def variant_columns(cls, treeview): treeview.append_column(column) @classmethod - def layout_selection(cls, tree_selection): + def layout_selection(cls, tree_selection: Gtk.TreeSelection) -> None: """ Handle keyboard layout selection from the treeview. @@ -147,7 +152,7 @@ class variables and InstallationData with the layout information. print(f"Keyboard layout selected: {value} ({cls.kb_layout}/{cls.kb_variant})") @classmethod - def model_selection(cls, tree_selection): + def model_selection(cls, tree_selection: Gtk.TreeSelection) -> None: """ Handle keyboard model selection from the treeview. @@ -170,7 +175,7 @@ class variables and InstallationData with the model information. print(f"Keyboard model selected: {value} ({cls.kb_model})") @classmethod - def save_selection(cls): + def save_selection(cls) -> None: """ Save the current keyboard selection. @@ -186,7 +191,7 @@ def save_selection(cls): file.write(f"{cls.kb_model}\\n") @classmethod - def save_keyboard(cls): + def save_keyboard(cls) -> None: """ Apply the keyboard configuration to the system. @@ -197,7 +202,7 @@ def save_keyboard(cls): set_keyboard(cls.kb_layout, cls.kb_variant, cls.kb_model) @classmethod - def initialize(cls): + def initialize(cls) -> None: """ Initialize the keyboard configuration UI following the utility class pattern. @@ -278,7 +283,7 @@ def initialize(cls): cls.treeView.set_cursor(0) @classmethod - def get_model(cls): + def get_model(cls) -> Gtk.Box: """ Return the GTK widget model for the keyboard configuration interface. @@ -292,7 +297,7 @@ def get_model(cls): return cls.vbox1 @classmethod - def get_keyboard_info(cls): + def get_keyboard_info(cls) -> dict[str, str | None]: """ Get the current keyboard configuration information. diff --git a/install_station/language.py b/install_station/language.py index 2ff2e3f..c834b6a 100644 --- a/install_station/language.py +++ b/install_station/language.py @@ -40,14 +40,14 @@ class Language: designed to integrate with the Interface controller for navigation flow. """ # Class variables instead of instance variables - vbox1 = None - language = None - treeview = None - welcome_text = None - language_column_header = None + vbox1: Gtk.Box | None = None + language: str | None = None + treeview: Gtk.TreeView | None = None + welcome_text: Gtk.Label | None = None + language_column_header: Gtk.Label | None = None @classmethod - def language_selection(cls, tree_selection): + def language_selection(cls, tree_selection: Gtk.TreeSelection) -> None: """ Handle language selection from the treeview. @@ -77,7 +77,7 @@ class variables and InstallationData with the language name and code. cls.update_ui_text() @classmethod - def update_ui_text(cls): + def update_ui_text(cls) -> None: """ Update all UI text elements with new translations after language change. """ @@ -101,7 +101,7 @@ def update_ui_text(cls): Window.set_title(get_text("Welcome to GhostBSD")) @classmethod - def setup_language_columns(cls, treeview): + def setup_language_columns(cls, treeview: Gtk.TreeView) -> None: """ Configure the language selection treeview with appropriate columns. @@ -123,7 +123,7 @@ def setup_language_columns(cls, treeview): treeview.append_column(column) @classmethod - def save_selection(cls): + def save_selection(cls) -> None: """ Save the current language selection. @@ -134,7 +134,7 @@ def save_selection(cls): pass @classmethod - def save_language(cls): + def save_language(cls) -> None: """ Apply the language configuration to the system. @@ -146,7 +146,7 @@ def save_language(cls): localize_system(language_code) @classmethod - def initialize(cls): + def initialize(cls) -> None: """ Initialize the language selection UI following the utility class pattern. @@ -225,7 +225,7 @@ def initialize(cls): main_grid.show() @classmethod - def get_model(cls): + def get_model(cls) -> Gtk.Box: """ Return the GTK widget model for the language selection interface. @@ -239,7 +239,7 @@ def get_model(cls): return cls.vbox1 @classmethod - def get_language(cls): + def get_language(cls) -> str | None: """ Get the selected language code. @@ -249,7 +249,7 @@ def get_language(cls): return InstallationData.language_code or cls.language @classmethod - def get_language_info(cls): + def get_language_info(cls) -> dict[str, str]: """ Get the current language configuration information. diff --git a/install_station/network_setup.py b/install_station/network_setup.py index 6f61d46..ded8d84 100644 --- a/install_station/network_setup.py +++ b/install_station/network_setup.py @@ -39,19 +39,19 @@ class NetworkSetup: designed to integrate with the Interface controller for navigation flow. """ # Class variables instead of instance variables - vbox1 = None - network_info = None - wire_connection_label = None - wire_connection_image = None - wifi_connection_label = None - wifi_connection_image = None - connection_box = None - store = None - window = None - password = None + vbox1: Gtk.Box | None = None + network_info: dict | None = None + wire_connection_label: Gtk.Label | None = None + wire_connection_image: Gtk.Image | None = None + wifi_connection_label: Gtk.Label | None = None + wifi_connection_image: Gtk.Image | None = None + connection_box: Gtk.Box | None = None + store: Gtk.ListStore | None = None + window: Gtk.Window | None = None + password: Gtk.Entry | None = None @classmethod - def get_model(cls): + def get_model(cls) -> Gtk.Box: """ Return the GTK widget model for the network setup interface. @@ -65,7 +65,7 @@ def get_model(cls): return cls.vbox1 @staticmethod - def wifi_stat(bar): + def wifi_stat(bar: int) -> str: """ Get WiFi signal strength icon name based on signal bar percentage. @@ -87,7 +87,7 @@ def wifi_stat(bar): return 'nm-signal-00' @classmethod - def update_network_detection(cls): + def update_network_detection(cls) -> None: """ Update network detection status and UI elements. @@ -135,7 +135,7 @@ def update_network_detection(cls): cls.wifi_connection_label.set_label(wifi_text) @classmethod - def update_ui_text(cls): + def update_ui_text(cls) -> None: """ Update all UI text elements with new translations after language change. """ @@ -147,7 +147,7 @@ def update_ui_text(cls): cls.update_network_detection() @classmethod - def initialize(cls): + def initialize(cls) -> None: """ Initialize the network setup UI following the utility class pattern. @@ -257,7 +257,7 @@ def initialize(cls): main_grid.attach(cls.connection_box, 1, 4, 10, 5) @classmethod - def wifi_setup(cls, tree_selection, wifi_card): + def wifi_setup(cls, tree_selection: Gtk.TreeSelection, wifi_card: str) -> None: """ Handle WiFi access point selection and connection setup. @@ -285,7 +285,7 @@ def wifi_setup(cls, tree_selection, wifi_card): cls.authentication(ssid_info, wifi_card, False) @classmethod - def add_to_wpa_supplicant(cls, _widget, ssid_info, card): + def add_to_wpa_supplicant(cls, _widget: Gtk.Button, ssid_info: list, card: str) -> None: """ Add WiFi credentials to wpa_supplicant configuration and connect. @@ -303,7 +303,7 @@ def add_to_wpa_supplicant(cls, _widget, ssid_info, card): cls.window.hide() @classmethod - def try_to_connect_to_ssid(cls, ssid, ssid_info, card): + def try_to_connect_to_ssid(cls, ssid: str, ssid_info: list, card: str) -> None: """ Attempt to connect to the specified WiFi network. @@ -329,7 +329,7 @@ def try_to_connect_to_ssid(cls, ssid, ssid_info, card): return @classmethod - def restart_authentication(cls, ssid_info, card): + def restart_authentication(cls, ssid_info: list, card: str) -> None: """ Restart WiFi authentication after a failed connection attempt. @@ -340,7 +340,7 @@ def restart_authentication(cls, ssid_info, card): cls.authentication(ssid_info, card, True) @classmethod - def on_check(cls, widget): + def on_check(cls, widget: Gtk.CheckButton) -> None: """ Toggle password visibility in authentication dialog. @@ -353,7 +353,7 @@ def on_check(cls, widget): cls.password.set_visibility(False) @classmethod - def authentication(cls, ssid_info, card, failed): + def authentication(cls, ssid_info: list, card: str, failed: bool) -> str: """ Show WiFi authentication dialog. @@ -411,7 +411,7 @@ def authentication(cls, ssid_info, card, failed): return 'Done' @classmethod - def close(cls, _widget): + def close(cls, _widget: Gtk.Button) -> None: """ Close the authentication dialog. @@ -421,7 +421,7 @@ def close(cls, _widget): cls.window.hide() @staticmethod - def setup_wpa_supplicant(ssid, ssid_info, pwd): + def setup_wpa_supplicant(ssid: str, ssid_info: list, pwd: str) -> None: """ Setup wpa_supplicant configuration for WiFi network. @@ -456,7 +456,7 @@ def setup_wpa_supplicant(ssid, ssid_info, pwd): wsf.close() @staticmethod - def open_wpa_supplicant(ssid): + def open_wpa_supplicant(ssid: str) -> None: """ Add open network entry to wpa_supplicant configuration. diff --git a/install_station/partition.py b/install_station/partition.py index a03591a..0ac9cc8 100644 --- a/install_station/partition.py +++ b/install_station/partition.py @@ -11,7 +11,7 @@ # Define required file paths -def get_disk_from_partition(part): +def get_disk_from_partition(part: str) -> str: """Extract the disk name from a partition identifier. Args: @@ -26,7 +26,7 @@ def get_disk_from_partition(part): return part.partition('s')[0] -def slice_number(part): +def slice_number(part: str) -> int: """Extract the slice/partition number from a partition identifier. Args: @@ -41,7 +41,7 @@ def slice_number(part): return int(part.partition('s')[2]) -def find_next_partition(partition_name, partition_list): +def find_next_partition(partition_name: str, partition_list: list[str]) -> str: """Find the next available partition name with sequential numbering. Args: @@ -56,7 +56,7 @@ def find_next_partition(partition_name, partition_list): return f'{partition_name}{num}' -def disk_list(): +def disk_list() -> list[str]: """Get a list of available disk devices on the system. Queries the FreeBSD kernel for available disks and filters out @@ -78,7 +78,7 @@ def disk_list(): return sorted(cleaned_disk.split()) -def device_model(disk): +def device_model(disk: str) -> str: """Get the model description of a disk device. Args: @@ -98,7 +98,7 @@ def device_model(disk): return device_popen.stdout.read().strip() -def disk_size(disk): +def disk_size(disk: str) -> str: """Get the size of a disk device. Args: @@ -119,7 +119,7 @@ def disk_size(disk): return disk_size_output.stdout.readlines()[0].rstrip() -def get_scheme(disk): +def get_scheme(disk: str) -> str: """Detect the partition scheme of a disk device. Args: @@ -1206,7 +1206,7 @@ def __init__(self, path, drive, size_left, create_size, mount_point, fs): InstallationData.new_partition = new_partitions -def delete_partition(): +def delete_partition() -> None: """Execute physical deletion of partitions marked for deletion. Iterates through partitions marked for deletion in InstallationData @@ -1227,7 +1227,7 @@ def delete_partition(): raise RuntimeError('No partitions to delete') -def destroy_partition(): +def destroy_partition() -> None: """Destroy and recreate partition tables on disks. Completely destroys existing partition tables and creates new ones @@ -1251,7 +1251,7 @@ def destroy_partition(): raise RuntimeError('No disks to destroy') -def bios_or_uefi(): +def bios_or_uefi() -> str: """Detect the system boot method (BIOS or UEFI). Returns: @@ -1263,7 +1263,7 @@ def bios_or_uefi(): return output1.stdout.readlines()[0].rstrip() -def add_partition(): +def add_partition() -> None: """Execute physical creation of partitions marked for creation. Creates actual partitions on disk using FreeBSD gpart commands diff --git a/install_station/system_calls.py b/install_station/system_calls.py index db3a009..93343a6 100644 --- a/install_station/system_calls.py +++ b/install_station/system_calls.py @@ -6,7 +6,14 @@ from install_station.data import pc_sysinstall -def replace_pattern(current, new, file): +def replace_pattern(current: str, new: str, file: str) -> None: + """Replace text patterns in a file using regex substitution. + + Args: + current: Regular expression pattern to search for + new: Replacement text + file: Path to file to modify + """ parser_file = open(file, 'r').read() parser_patched = re.sub(current, new, parser_file) save_parser_file = open(file, 'w') @@ -14,7 +21,12 @@ def replace_pattern(current, new, file): save_parser_file.close() -def language_dictionary(): +def language_dictionary() -> dict[str, str]: + """Get available system languages from pc-sysinstall. + + Returns: + Dictionary mapping language names to language codes + """ langs = Popen(f'{pc_sysinstall} query-langs', shell=True, stdin=PIPE, stdout=PIPE, universal_newlines=True, close_fds=True).stdout.readlines() @@ -27,7 +39,15 @@ def language_dictionary(): return dictionary -def localize_system(locale): +def localize_system(locale: str) -> None: + """Apply localization settings to the system. + + Updates login.conf, profile files, and greeter configurations + with the specified locale. + + Args: + locale: Language code (e.g. 'en_US', 'fr_FR') + """ slick_greeter = "/usr/local/share/xgreeters/slick-greeter.desktop" gtk_greeter = "/usr/local/share/xgreeters/lightdm-gtk-greeter.desktop" replace_pattern('lang=C', f'lang={locale}', '/etc/login.conf') @@ -48,7 +68,12 @@ def localize_system(locale): ) -def keyboard_dictionary(): +def keyboard_dictionary() -> dict[str, dict[str, str | None]]: + """Get available keyboard layouts and variants from pc-sysinstall. + + Returns: + Dictionary mapping keyboard layout names to layout/variant dictionaries + """ xkeyboard_layouts = Popen(f'{pc_sysinstall} xkeyboard-layouts', shell=True, stdout=PIPE, universal_newlines=True).stdout.readlines() @@ -76,7 +101,12 @@ def keyboard_dictionary(): return dictionary -def keyboard_models(): +def keyboard_models() -> dict[str, str]: + """Get available keyboard models from pc-sysinstall. + + Returns: + Dictionary mapping keyboard model names to model codes + """ xkeyboard_models = Popen(f'{pc_sysinstall} xkeyboard-models', shell=True, stdout=PIPE, universal_newlines=True).stdout.readlines() @@ -88,7 +118,14 @@ def keyboard_models(): return dictionary -def change_keyboard(kb_layout, kb_variant=None, kb_model=None): +def change_keyboard(kb_layout: str, kb_variant: str | None = None, kb_model: str | None = None) -> None: + """Apply keyboard layout change immediately using setxkbmap. + + Args: + kb_layout: Keyboard layout code + kb_variant: Optional keyboard variant code + kb_model: Optional keyboard model code + """ if kb_variant is None and kb_model is not None: run(f"setxkbmap -layout {kb_layout} -model {kb_model}", shell=True) elif kb_variant is not None and kb_model is None: @@ -101,11 +138,104 @@ def change_keyboard(kb_layout, kb_variant=None, kb_model=None): run(f"setxkbmap -layout {kb_layout}", shell=True) -def set_keyboard(kb_layout, kb_variant=None, kb_model=None): - pass +def set_keyboard(kb_layout: str, kb_variant: str | None = None, kb_model: str | None = None) -> None: + """ + Permanently configure keyboard layout for the live system. + Based on pc-sysinstall's localize_x_keyboard function. + """ + setxkbmap_cmd = "" + + # Build setxkbmap command + if kb_model and kb_model != "NONE": + setxkbmap_cmd = f"-model {kb_model}" + kx_model = kb_model + else: + kx_model = "pc104" + + if kb_layout and kb_layout != "NONE": + setxkbmap_cmd = f"{setxkbmap_cmd} -layout {kb_layout}".strip() + kx_layout = kb_layout + else: + kx_layout = "us" + + if kb_variant and kb_variant != "NONE": + setxkbmap_cmd = f"{setxkbmap_cmd} -variant {kb_variant}" + + # Apply the keyboard layout immediately + if setxkbmap_cmd: + run(f"setxkbmap {setxkbmap_cmd}", shell=True) + + # Create .xprofile for persistent keyboard layout + xprofile_path = "/home/ghostbsd/.xprofile" + try: + # Read existing .xprofile or create new one + if os.path.exists(xprofile_path): + with open(xprofile_path, 'r') as f: + content = f.read() + # Remove existing setxkbmap lines + lines = [line for line in content.splitlines() if not line.strip().startswith('setxkbmap')] + else: + lines = ["#!/bin/sh"] + + # Add new setxkbmap command + lines.append(f"setxkbmap {setxkbmap_cmd}") + + # Write back to .xprofile + with open(xprofile_path, 'w') as f: + f.write('\n'.join(lines) + '\n') + + # Make executable + os.chmod(xprofile_path, 0o755) + + except (OSError, IOError) as e: + print(f"Warning: Could not update .xprofile: {e}") + + # Set console keymap in rc.conf for live system persistence + try: + _set_console_keymap(kx_layout) + except (OSError, IOError) as e: + print(f"Warning: Could not update console keymap: {e}") + + +def _set_console_keymap(key_layout: str) -> None: + """Helper function to set console keymap in rc.conf""" + # Map X11 layouts to console keymaps (from pc-sysinstall) + keymap_mapping = { + 'ca': 'ca-fr.kbd', + 'et': 'ee.kbd', + 'es': 'es.acc.kbd', + 'gb': 'uk.kbd' + } + + console_keymap = keymap_mapping.get(key_layout, f"{key_layout}.kbd") + + rc_conf_path = "/etc/rc.conf" + keymap_line = f'keymap="{console_keymap}"\n' + + # Check if keymap already exists in rc.conf + if os.path.exists(rc_conf_path): + with open(rc_conf_path, 'r') as f: + lines = f.readlines() + + # Remove existing keymap lines + lines = [line for line in lines if not line.strip().startswith('keymap=')] + + # Add new keymap + lines.append(keymap_line) + + with open(rc_conf_path, 'w') as f: + f.writelines(lines) + else: + with open(rc_conf_path, 'w') as f: + f.write(keymap_line) -def timezone_dictionary(): +def timezone_dictionary() -> dict[str, list[str]]: + """Get available timezones from pc-sysinstall. + + Returns: + Dictionary mapping continents to lists of cities/regions + """ tz_list = Popen(f'{pc_sysinstall} list-tzones', shell=True, stdout=PIPE, universal_newlines=True).stdout.readlines() city_list = [] @@ -128,7 +258,12 @@ def timezone_dictionary(): return dictionary -def zfs_disk_query(): +def zfs_disk_query() -> list[str]: + """Query available disks for ZFS installation. + + Returns: + List of available disk device names + """ disk_output = Popen( f"{pc_sysinstall} disk-list", shell=True, @@ -140,7 +275,15 @@ def zfs_disk_query(): return disk_output.stdout.readlines() -def zfs_disk_size_query(disk): +def zfs_disk_size_query(disk: str) -> str: + """Query disk size information. + + Args: + disk: Disk device name + + Returns: + Disk size information string + """ disk_info_output = Popen( f"{pc_sysinstall} disk-info {disk}", shell=True, @@ -152,7 +295,17 @@ def zfs_disk_size_query(disk): return disk_info_output.stdout.readlines()[3].partition('=')[2] -def set_admin_user(username, name, password, shell, homedir, hostname): +def set_admin_user(username: str, name: str, password: str, shell: str, homedir: str, hostname: str) -> None: + """Set up administrator user and system hostname. + + Args: + username: Username for the admin user + name: Full name for the admin user + password: Password for the admin user + shell: Default shell for the admin user + homedir: Home directory path for the admin user + hostname: System hostname to set + """ # Set Root user run(f"echo '{password}' | pw usermod -n root -h 0", shell=True) cmd = f"echo '{password}' | pw useradd {username} -c {name} -h 0" \ diff --git a/install_station/try_install.py b/install_station/try_install.py index 8b08c71..48aaa9e 100644 --- a/install_station/try_install.py +++ b/install_station/try_install.py @@ -27,14 +27,14 @@ class TryOrInstall: designed to integrate with the Interface controller for navigation flow. """ # Class variables instead of instance variables - what = None - install_button = None - try_button = None - instruction_label = None - vbox1 = None + what: str | None = None + install_button: Gtk.RadioButton | None = None + try_button: Gtk.RadioButton | None = None + instruction_label: Gtk.Label | None = None + vbox1: Gtk.Box | None = None @classmethod - def mode_selection(cls, widget, val): + def mode_selection(cls, widget: Gtk.RadioButton, val: str) -> None: """ Handle mode selection from radio buttons. @@ -52,7 +52,7 @@ class variables and InstallationData with the selected mode. print(f"Mode selected: {val}") @classmethod - def get_what(cls): + def get_what(cls) -> str | None: """ Get the current installation mode. @@ -65,7 +65,7 @@ def get_what(cls): return InstallationData.install_mode or cls.what @classmethod - def initialize(cls): + def initialize(cls) -> None: """ Initialize the welcome screen UI following the utility class pattern. @@ -147,7 +147,7 @@ def initialize(cls): cls.install_button.set_active(True) @classmethod - def get_model(cls): + def get_model(cls) -> Gtk.Box: """ Return the GTK widget model for the welcome screen interface. diff --git a/install_station/window.py b/install_station/window.py index 3c6c097..bd3b841 100644 --- a/install_station/window.py +++ b/install_station/window.py @@ -1,49 +1,103 @@ +""" +Window Module. + +This module provides a singleton wrapper around GTK Window to provide +a consistent interface for the main application window. +""" import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk class Window: - window = Gtk.Window() + """ + Singleton wrapper for GTK Window. + + Provides a class-based interface to a single GTK Window instance + that can be accessed throughout the application. + """ + window: Gtk.Window = Gtk.Window() @classmethod - def connect(cls, signal, callback): + def connect(cls, signal: str, callback) -> int: + """Connect a signal handler to the window. + + Args: + signal: Signal name to connect to + callback: Callback function to invoke + + Returns: + Connection ID + """ return cls.window.connect(signal, callback) @classmethod - def set_border_width(cls, width): + def set_border_width(cls, width: int) -> None: + """Set the border width of the window. + + Args: + width: Border width in pixels + """ return cls.window.set_border_width(width) @classmethod - def set_default_size(cls, width, height): + def set_default_size(cls, width: int, height: int) -> None: + """Set the default size of the window. + + Args: + width: Default width in pixels + height: Default height in pixels + """ return cls.window.set_default_size(width, height) @classmethod - def set_size_request(cls, width, height): + def set_size_request(cls, width: int, height: int) -> None: + """Set the size request of the window. + + Args: + width: Requested width in pixels + height: Requested height in pixels + """ return cls.window.set_size_request(width, height) @classmethod - def set_title(cls, title): + def set_title(cls, title: str) -> None: + """Set the window title. + + Args: + title: Window title text + """ return cls.window.set_title(title) @classmethod - def set_icon_from_file(cls, filename): + def set_icon_from_file(cls, filename: str) -> None: + """Set the window icon from a file. + + Args: + filename: Path to icon file + """ return cls.window.set_icon_from_file(filename) @classmethod - def add(cls, widget): + def add(cls, widget: Gtk.Widget) -> None: + """Add a widget to the window. + + Args: + widget: Widget to add to the window + """ return cls.window.add(widget) @classmethod - def show_all(cls): + def show_all(cls) -> None: + """Show the window and all its children.""" return cls.window.show_all() @classmethod - def hide(cls): + def hide(cls) -> None: """Hide the window.""" return cls.window.hide() @classmethod - def __getattr__(cls, name): + def __getattr__(cls, name: str): """Fallback for any methods not explicitly defined.""" return getattr(cls.window, name) diff --git a/setup.py b/setup.py index 89cb861..d5340c2 100755 --- a/setup.py +++ b/setup.py @@ -1,7 +1,14 @@ #!/usr/bin/env python +""" +Setup script for Install Station. + +Install Station is a streamlined installer for GhostBSD, providing +a GTK+ interface for disk partitioning and OS installation. +""" import os import sys -from setuptools import setup, Command, glob +from setuptools import setup, Command +import glob from DistUtilsExtra.command.build_extra import build_extra from DistUtilsExtra.command.build_i18n import build_i18n from DistUtilsExtra.command.clean_i18n import clean_i18n @@ -12,6 +19,16 @@ def data_file_list(install_base, source_base): + """ + Generate list of data files for installation. + + Args: + install_base: Base installation path + source_base: Source directory to scan + + Returns: + List of (install_path, files) tuples for setuptools + """ data = [] for root, subFolders, files in os.walk(source_base): file_list = [] @@ -114,7 +131,7 @@ def run(self): lib_install_station_backend_query = [ 'src/backend-query/detect-laptop.sh', 'src/backend-query/detect-nics.sh', - 'src/backend-query/detect-sheme.sh', + 'src/backend-query/detect-scheme.sh', 'src/backend-query/detect-vmware.sh', 'src/backend-query/detect-wifi.sh', 'src/backend-query/disk-info.sh', @@ -148,7 +165,7 @@ def run(self): setup( name="install-station", version=PROGRAM_VERSION, - description="Install Station is a strip down version of gbi", + description="Install Station - Streamlined GhostBSD installer", license='BSD', author='Eric Turgeon', url='https://github/GhostBSD/install-station/', From 291947c317431b7c11e810cb53703871de13629f Mon Sep 17 00:00:00 2001 From: ericbsd Date: Sun, 21 Sep 2025 17:43:18 -0300 Subject: [PATCH 4/4] fixing dependency. --- install-station | 2 -- 1 file changed, 2 deletions(-) diff --git a/install-station b/install-station index 5ff8acf..5d4e0e5 100755 --- a/install-station +++ b/install-station @@ -5,8 +5,6 @@ Install Station executable module. This is the main entry point for the Install Station GTK+ application. It initializes all page components and sets up the main window interface. """ -from __future__ import annotations - import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk

iytg3<=I;YPdy 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