# 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 <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-18 11:57+0100\n"
"PO-Revision-Date: 2023-01-19 09:31+0000\n"
"Last-Translator: Jan Kuparinen <copper_fin@hotmail.com>\n"
"Language-Team: Finnish <https://translate.fedoraproject.org/projects/selinux/"
"sandbox/fi/>\n"
"Language: fi\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"
"X-Generator: Weblate 4.15.1\n"

#: ../sandbox:120
#, python-format
msgid "Do you want to save changes to '%s' (Y/N): "
msgstr "Haluatko tallentaa muutokset '%s':een (K/E): "

#: ../sandbox:121
msgid "Sandbox Message"
msgstr "Hiekkalaatikkoviesti"

#: ../sandbox:133
#, python-format
msgid "Do you want to save changes to '%s' (y/N): "
msgstr "Haluatko tallentaa muutokset '%s' :een? (k E): "

#: ../sandbox:134
msgid "[yY]"
msgstr "[kK]"

#: ../sandbox:157
msgid "User account must be setup with an MCS Range"
msgstr "Käyttäjätili on määritettävä MCS-alueen kanssa"

#: ../sandbox:185
msgid ""
"Failed to find any unused category sets.  Consider a larger MCS range for "
"this user."
msgstr ""
"Käyttämättömien luokkaryhmien löytäminen epäonnistui. Harkitse suurempaa MCS-"
"aluetta tälle käyttäjälle."

#: ../sandbox:217
msgid "Homedir and tempdir required for level mounts"
msgstr "Kotihakemisto ja väliaikaishakemisto vaaditaan tasokiinnityksille"

#: ../sandbox:220 ../sandbox:231 ../sandbox:236
#, python-format
msgid ""
"\n"
"%s is required for the action you want to perform.\n"
msgstr ""
"\n"
"%s vaaditaan suoritettavaan toimintoon.\n"

#: ../sandbox:307
#, python-format
msgid ""
"\n"
"Policy defines the following types for use with the -t:\n"
"\t%s\n"
msgstr ""
"\n"
"Käytäntö määrittää seuraavat -t kanssa käytettävät tyypit:\n"
"%s\n"

#: ../sandbox:314
#, python-format
msgid ""
"\n"
"sandbox [-h] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I "
"includefile ] [-W windowmanager ] [ -w windowsize ] [[-i file ] ...] [ -t "
"type ] command\n"
"\n"
"sandbox [-h] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I "
"includefile ] [-W windowmanager ] [ -w windowsize ] [[-i file ] ...] [ -t "
"type ] -S\n"
"%s\n"
msgstr ""
"\n"
"sandbox [-h] [-l taso ] [-[X|M] [-H kotihakemisto] [-T väliaikaishakemisto]] "
"[-I sisällytätiedosto ] [-W ikkunakäsittelijä ] [ -w ikkunakoko ] [[-i "
"tiedosto ] ...] [ -t tyyppi] komento\n"
"\n"
"sandbox [-h] [-l taso ] [-[X|M] [-H kotihakemisto] [-T väliaikaishakemisto]] "
"[-I sisällytätiedosto ] [ -w ikkunakoko ] [[-i tiedosto ] ...] [ -t tyyppi] -"
"S\n"
"%s\n"

#: ../sandbox:326
msgid "include file in sandbox"
msgstr "sisällytä tiedosto hiekkalaatikkoon"

#: ../sandbox:329
msgid "read list of files to include in sandbox from INCLUDEFILE"
msgstr ""
"lue luettelo tiedostoista, jotka sisällytetään hiekkalaatikkoon INCLUDEFILE"

#: ../sandbox:331
msgid "run sandbox with SELinux type"
msgstr "Suorita hiekkalaatikko SELinux-tyypillä"

#: ../sandbox:334
msgid "mount new home and/or tmp directory"
msgstr "asenna uusi koti- ja/tai tmp-hakemisto"

#: ../sandbox:338
msgid "dots per inch for X display"
msgstr "X-displayn pisteitä tuumalla"

#: ../sandbox:341
msgid "run complete desktop session within sandbox"
msgstr "Suorita täydellinen työpöytäistunto hiekkalaatikossa"

#: ../sandbox:344
msgid "Shred content before temporary directories are removed"
msgstr "Silppua sisältö ennen tilapäishakemistojen poistamista"

#: ../sandbox:348
msgid "run X application within a sandbox"
msgstr "Suorita X-sovellus hiekkalaatikossa"

#: ../sandbox:354
msgid "alternate home directory to use for mounting"
msgstr "vaihtoehtoinen kotihakemisto, jota käytetään liitämisessä"

#: ../sandbox:359
msgid "alternate /tmp directory to use for mounting"
msgstr "vaihtoehtoinen väliaikaishakemisto, jota käytetään liitämisessä"

#: ../sandbox:364
msgid ""
"alternate XDG_RUNTIME_DIR - /run/user/$UID - directory to use for mounting"
msgstr ""
"vaihtoehtoinen XDG_RUNTIME_DIR - /run/user/$UID - liittämiseen käytettävä "
"hakemisto"

#: ../sandbox:373
msgid "alternate window manager"
msgstr "vaihtoehtoinen ikkunahallinnoija"

#: ../sandbox:376
msgid "MCS/MLS level for the sandbox"
msgstr "MCS/MLS-taso hiekkalaatikolle"

#: ../sandbox:392
msgid ""
"Sandbox Policy is not currently installed.\n"
"You need to install the selinux-policy-sandbox package in order to run this "
"command"
msgstr ""
"Hiekkalaatikkokäytäntöä ei ole tällä hetkellä asennettu.\n"
"Sinun on asennettava selinux-policy-sandbox-paketti tämän komennon "
"suorittamiseksi"

#: ../sandbox:404
msgid ""
"You must specify a Homedir and tempdir when setting up a session sandbox"
msgstr ""
"Kotihakemisto ja väliaikaishakemisto vaaditaan määritettäessä "
"istuntohiekkalaatikkoa"

#: ../sandbox:406
msgid "Commands are not allowed in a session sandbox"
msgstr "Komennot eivät ole sallittuja istunnon hiekkalaatikossa"

#: ../sandbox:418
msgid "Command required"
msgstr "Komento vaaditaan"

#: ../sandbox:421
#, python-format
msgid "%s is not an executable"
msgstr "%s ei pystytä suorittamaan"

#: ../sandbox:549
#, python-format
msgid "Invalid value %s"
msgstr "virheellinen arvo %s"
