mirror of
https://github.com/systemd/systemd
synced 2026-02-26 17:24:47 +01:00
Compare commits
9 Commits
c871afd311
...
774e805959
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
774e805959 | ||
|
|
e17ef43f9d | ||
|
|
8471eca549 | ||
|
|
699007a44f | ||
|
|
16e7869cf3 | ||
|
|
e35b3494e1 | ||
|
|
f94d3180b0 | ||
|
|
9ee029c8f6 | ||
|
|
5036c9f596 |
@ -216,6 +216,13 @@ sensor:modalias:acpi:KIOX010A:*:dmi:*:svnAMI:*:skuH8Y6:* # MaxBook Y14
|
|||||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
|
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||||
ACCEL_LOCATION=display
|
ACCEL_LOCATION=display
|
||||||
|
|
||||||
|
#########################################
|
||||||
|
# BNCF
|
||||||
|
#########################################
|
||||||
|
|
||||||
|
sensor:modalias:acpi:NSA2513:NSA2513*:dmi:*svnBNCF:pnNewBook11* # NewBook 11 2-in-1
|
||||||
|
ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, -1
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
# BUSH
|
# BUSH
|
||||||
#########################################
|
#########################################
|
||||||
|
|||||||
@ -50,7 +50,7 @@
|
|||||||
them to standard output. Optionally takes one or more match expressions for filtering the metrics to
|
them to standard output. Optionally takes one or more match expressions for filtering the metrics to
|
||||||
show. The expression either may be a literal metric family name to search for, or a prefix of one
|
show. The expression either may be a literal metric family name to search for, or a prefix of one
|
||||||
(which will be matched only at dot boundaries). If multiple matches are specified as multiple
|
(which will be matched only at dot boundaries). If multiple matches are specified as multiple
|
||||||
paramaters, any metric matching <emphasis>any</emphasis> of the specified matches are shown.</para>
|
parameters, any metric matching <emphasis>any</emphasis> of the specified matches are shown.</para>
|
||||||
|
|
||||||
<xi:include href="version-info.xml" xpointer="v260"/></listitem>
|
<xi:include href="version-info.xml" xpointer="v260"/></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|||||||
12
po/el.po
12
po/el.po
@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-11-26 01:17+0000\n"
|
"POT-Creation-Date: 2025-11-26 01:17+0000\n"
|
||||||
"PO-Revision-Date: 2026-02-01 15:58+0000\n"
|
"PO-Revision-Date: 2026-02-20 12:58+0000\n"
|
||||||
"Last-Translator: Jim Spentzos <jimspentzos2000@gmail.com>\n"
|
"Last-Translator: Jim Spentzos <jimspentzos2000@gmail.com>\n"
|
||||||
"Language-Team: Greek <https://translate.fedoraproject.org/projects/systemd/"
|
"Language-Team: Greek <https://translate.fedoraproject.org/projects/systemd/"
|
||||||
"main/el/>\n"
|
"main/el/>\n"
|
||||||
@ -18,7 +18,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 5.15.2\n"
|
"X-Generator: Weblate 5.16\n"
|
||||||
|
|
||||||
#: src/core/org.freedesktop.systemd1.policy.in:22
|
#: src/core/org.freedesktop.systemd1.policy.in:22
|
||||||
msgid "Send passphrase back to system"
|
msgid "Send passphrase back to system"
|
||||||
@ -163,11 +163,10 @@ msgid "Manage Home Directory Signing Keys"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/home/org.freedesktop.home1.policy:94
|
#: src/home/org.freedesktop.home1.policy:94
|
||||||
#, fuzzy
|
|
||||||
msgid "Authentication is required to manage signing keys for home directories."
|
msgid "Authentication is required to manage signing keys for home directories."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Απαιτείται ταυτοποίηση για τη διαχείριση υπηρεσιών συστήματος ή άλλων "
|
"Απαιτείται ταυτοποίηση για τη διαχείριση της υπογραφής κλειδιών για "
|
||||||
"μονάδων."
|
"προσωπικούς καταλόγους."
|
||||||
|
|
||||||
#: src/home/pam_systemd_home.c:333
|
#: src/home/pam_systemd_home.c:333
|
||||||
#, c-format
|
#, c-format
|
||||||
@ -372,9 +371,8 @@ msgid "Get system description"
|
|||||||
msgstr "Λήψη περιγραφής συστήματος"
|
msgstr "Λήψη περιγραφής συστήματος"
|
||||||
|
|
||||||
#: src/hostname/org.freedesktop.hostname1.policy:72
|
#: src/hostname/org.freedesktop.hostname1.policy:72
|
||||||
#, fuzzy
|
|
||||||
msgid "Authentication is required to get system description."
|
msgid "Authentication is required to get system description."
|
||||||
msgstr "Απαιτείται πιστοποίηση για να ορίσετε την ώρα ζώνης του συστήματος."
|
msgstr "Απαιτείται ταυτοποίηση για τη λήψη της περιγραφής συστήματος."
|
||||||
|
|
||||||
#: src/import/org.freedesktop.import1.policy:22
|
#: src/import/org.freedesktop.import1.policy:22
|
||||||
msgid "Import a disk image"
|
msgid "Import a disk image"
|
||||||
|
|||||||
@ -392,6 +392,7 @@ int vl_method_clean_pool(sd_varlink *link, sd_json_variant *parameters, sd_varli
|
|||||||
|
|
||||||
assert(link);
|
assert(link);
|
||||||
assert(parameters);
|
assert(parameters);
|
||||||
|
assert(FLAGS_SET(flags, SD_VARLINK_METHOD_MORE));
|
||||||
|
|
||||||
if (manager->n_operations >= OPERATIONS_MAX)
|
if (manager->n_operations >= OPERATIONS_MAX)
|
||||||
return sd_varlink_error(link, "io.systemd.MachineImage.TooManyOperations", NULL);
|
return sd_varlink_error(link, "io.systemd.MachineImage.TooManyOperations", NULL);
|
||||||
@ -400,9 +401,6 @@ int vl_method_clean_pool(sd_varlink *link, sd_json_variant *parameters, sd_varli
|
|||||||
if (r != 0)
|
if (r != 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
if (!FLAGS_SET(flags, SD_VARLINK_METHOD_MORE))
|
|
||||||
return sd_varlink_error(link, SD_VARLINK_ERROR_EXPECTED_MORE, NULL);
|
|
||||||
|
|
||||||
if (manager->runtime_scope != RUNTIME_SCOPE_USER) {
|
if (manager->runtime_scope != RUNTIME_SCOPE_USER) {
|
||||||
r = varlink_verify_polkit_async(
|
r = varlink_verify_polkit_async(
|
||||||
link,
|
link,
|
||||||
|
|||||||
@ -101,6 +101,7 @@ static int parse_argv(int argc, char *argv[]) {
|
|||||||
{ "umount", no_argument, NULL, 'u' },
|
{ "umount", no_argument, NULL, 'u' },
|
||||||
{ "json", required_argument, NULL, ARG_JSON },
|
{ "json", required_argument, NULL, ARG_JSON },
|
||||||
{ "read-only", no_argument, NULL, 'r' },
|
{ "read-only", no_argument, NULL, 'r' },
|
||||||
|
{ "mkdir", no_argument, NULL, ARG_MKDIR },
|
||||||
{ "rmdir", no_argument, NULL, ARG_RMDIR },
|
{ "rmdir", no_argument, NULL, ARG_RMDIR },
|
||||||
{ "image-policy", required_argument, NULL, ARG_IMAGE_POLICY },
|
{ "image-policy", required_argument, NULL, ARG_IMAGE_POLICY },
|
||||||
{ "image-filter", required_argument, NULL, ARG_IMAGE_FILTER },
|
{ "image-filter", required_argument, NULL, ARG_IMAGE_FILTER },
|
||||||
|
|||||||
@ -10208,44 +10208,60 @@ done:
|
|||||||
static int determine_auto_size(
|
static int determine_auto_size(
|
||||||
Context *c,
|
Context *c,
|
||||||
int level,
|
int level,
|
||||||
bool ignore_allocated, /* If true, determines unallocated space needed */
|
uint64_t *ret_current_size,
|
||||||
uint64_t *ret) {
|
uint64_t *ret_foreign_size,
|
||||||
|
uint64_t *ret_minimal_size) {
|
||||||
|
|
||||||
uint64_t sum;
|
uint64_t current_size, foreign_size, minimal_size;
|
||||||
|
|
||||||
assert(c);
|
assert(c);
|
||||||
|
|
||||||
sum = round_up_size(GPT_METADATA_SIZE, 4096);
|
minimal_size = round_up_size(GPT_METADATA_SIZE, 4096);
|
||||||
|
|
||||||
|
if (c->from_scratch)
|
||||||
|
current_size = 0;
|
||||||
|
else
|
||||||
|
current_size = round_up_size(GPT_METADATA_SIZE, 4096);
|
||||||
|
|
||||||
|
foreign_size = 0;
|
||||||
|
|
||||||
LIST_FOREACH(partitions, p, c->partitions) {
|
LIST_FOREACH(partitions, p, c->partitions) {
|
||||||
uint64_t m;
|
uint64_t m;
|
||||||
|
|
||||||
|
if (PARTITION_IS_FOREIGN(p))
|
||||||
|
foreign_size += p->current_size;
|
||||||
|
|
||||||
|
if (PARTITION_EXISTS(p))
|
||||||
|
current_size += p->current_size;
|
||||||
|
|
||||||
if (p->dropped || PARTITION_SUPPRESSED(p))
|
if (p->dropped || PARTITION_SUPPRESSED(p))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
m = partition_min_size_with_padding(c, p);
|
m = partition_min_size_with_padding(c, p);
|
||||||
if (m > UINT64_MAX - sum)
|
if (m > UINT64_MAX - minimal_size)
|
||||||
return log_error_errno(SYNTHETIC_ERRNO(EOVERFLOW), "Image would grow too large, refusing.");
|
return log_error_errno(SYNTHETIC_ERRNO(EOVERFLOW), "Image would grow too large, refusing.");
|
||||||
|
|
||||||
if (ignore_allocated && PARTITION_EXISTS(p))
|
minimal_size += m;
|
||||||
m = LESS_BY(m, p->current_size + p->current_padding);
|
|
||||||
|
|
||||||
sum += m;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c->total != UINT64_MAX)
|
if (current_size != 0)
|
||||||
/* Image already allocated? Then show its size. */
|
/* Image already allocated? Then show its size. */
|
||||||
log_full(level,
|
log_full(level,
|
||||||
"Automatically determined minimal disk image size as %s, current block device/image size is %s.",
|
"Automatically determined minimal disk image size as %s, current block device/image size is %s.",
|
||||||
FORMAT_BYTES(sum), FORMAT_BYTES(c->total));
|
FORMAT_BYTES(minimal_size), FORMAT_BYTES(current_size));
|
||||||
else
|
else
|
||||||
/* If the image is being created right now, then it has no previous size, suppress any comment about it hence. */
|
/* If the image is being created right now, then it has no previous size, suppress any comment about it hence. */
|
||||||
log_full(level,
|
log_full(level,
|
||||||
"Automatically determined minimal disk image size as %s.",
|
"Automatically determined minimal disk image size as %s.",
|
||||||
FORMAT_BYTES(sum));
|
FORMAT_BYTES(minimal_size));
|
||||||
|
|
||||||
|
if (ret_current_size)
|
||||||
|
*ret_current_size = current_size;
|
||||||
|
if (ret_foreign_size)
|
||||||
|
*ret_foreign_size = foreign_size;
|
||||||
|
if (ret_minimal_size)
|
||||||
|
*ret_minimal_size = minimal_size;
|
||||||
|
|
||||||
if (ret)
|
|
||||||
*ret = sum;
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -10472,53 +10488,58 @@ static int vl_method_run(
|
|||||||
/* If we have no node, just sum up how much space we need */
|
/* If we have no node, just sum up how much space we need */
|
||||||
if (!context->node) {
|
if (!context->node) {
|
||||||
/* Check if space issue is caused by the whole disk being too small */
|
/* Check if space issue is caused by the whole disk being too small */
|
||||||
uint64_t size;
|
uint64_t minimal_size;
|
||||||
r = determine_auto_size(context, LOG_DEBUG, /* ignore_allocated= */ false, &size);
|
r = determine_auto_size(context, LOG_DEBUG, /* ret_current_size= */ NULL, /* ret_foreign_size= */ NULL, &minimal_size);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
return sd_varlink_replybo(
|
return sd_varlink_replybo(
|
||||||
link,
|
link,
|
||||||
SD_JSON_BUILD_PAIR_UNSIGNED("minimalSizeBytes", size));
|
SD_JSON_BUILD_PAIR_UNSIGNED("minimalSizeBytes", minimal_size));
|
||||||
}
|
}
|
||||||
|
|
||||||
r = context_ponder(context);
|
r = context_ponder(context);
|
||||||
if (r == -ENOSPC) {
|
if (r == -ENOSPC) {
|
||||||
|
uint64_t current_size, foreign_size, minimal_size;
|
||||||
|
|
||||||
|
r = determine_auto_size(context, LOG_DEBUG, ¤t_size, &foreign_size, &minimal_size);
|
||||||
|
if (r < 0)
|
||||||
|
return r;
|
||||||
|
|
||||||
|
uint64_t needed_size = LESS_BY(minimal_size, foreign_size);
|
||||||
|
|
||||||
/* Check if space issue is caused by the whole disk being too small */
|
/* Check if space issue is caused by the whole disk being too small */
|
||||||
uint64_t size = UINT64_MAX;
|
if (needed_size > context->total)
|
||||||
(void) determine_auto_size(context, LOG_DEBUG, /* ignore_allocated= */ false, &size);
|
|
||||||
if (size != UINT64_MAX && context->total != UINT64_MAX && size > context->total)
|
|
||||||
return sd_varlink_errorbo(
|
return sd_varlink_errorbo(
|
||||||
link,
|
link,
|
||||||
"io.systemd.Repart.DiskTooSmall",
|
"io.systemd.Repart.DiskTooSmall",
|
||||||
SD_JSON_BUILD_PAIR_UNSIGNED("minimalSizeBytes", size),
|
SD_JSON_BUILD_PAIR_UNSIGNED("currentSizeBytes", current_size),
|
||||||
SD_JSON_BUILD_PAIR_UNSIGNED("currentSizeBytes", context->total));
|
SD_JSON_BUILD_PAIR_UNSIGNED("minimalSizeBytes", minimal_size));
|
||||||
|
|
||||||
/* Or if the disk would fit, but theres's not enough unallocated space */
|
/* Or if the disk would fit, but theres's not enough unallocated space */
|
||||||
uint64_t need_free = UINT64_MAX;
|
uint64_t need_free = LESS_BY(minimal_size, current_size);
|
||||||
(void) determine_auto_size(context, LOG_DEBUG, /* ignore_allocated= */ true, &need_free);
|
|
||||||
return sd_varlink_errorbo(
|
return sd_varlink_errorbo(
|
||||||
link,
|
link,
|
||||||
"io.systemd.Repart.InsufficientFreeSpace",
|
"io.systemd.Repart.InsufficientFreeSpace",
|
||||||
JSON_BUILD_PAIR_UNSIGNED_NOT_EQUAL("minimalSizeBytes", size, UINT64_MAX),
|
SD_JSON_BUILD_PAIR_UNSIGNED("currentSizeBytes", current_size),
|
||||||
JSON_BUILD_PAIR_UNSIGNED_NOT_EQUAL("needFreeBytes", need_free, UINT64_MAX),
|
JSON_BUILD_PAIR_UNSIGNED_NON_ZERO("needFreeBytes", need_free),
|
||||||
JSON_BUILD_PAIR_UNSIGNED_NOT_EQUAL("currentSizeBytes", context->total, UINT64_MAX));
|
SD_JSON_BUILD_PAIR_UNSIGNED("minimalSizeBytes", minimal_size));
|
||||||
}
|
}
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
if (p.dry_run) {
|
if (p.dry_run) {
|
||||||
uint64_t size;
|
uint64_t current_size, minimal_size;
|
||||||
|
|
||||||
/* If we are doing a dry-run, report the minimal size. */
|
/* If we are doing a dry-run, report the minimal size. */
|
||||||
r = determine_auto_size(context, LOG_DEBUG, /* ignore_allocated= */ false, &size);
|
r = determine_auto_size(context, LOG_DEBUG, ¤t_size, /* ret_foreign_size= */ NULL, &minimal_size);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
return sd_varlink_replybo(
|
return sd_varlink_replybo(
|
||||||
link,
|
link,
|
||||||
SD_JSON_BUILD_PAIR_UNSIGNED("minimalSizeBytes", size),
|
SD_JSON_BUILD_PAIR_UNSIGNED("minimalSizeBytes", minimal_size),
|
||||||
JSON_BUILD_PAIR_UNSIGNED_NOT_EQUAL("currentSizeBytes", context->total, UINT64_MAX));
|
SD_JSON_BUILD_PAIR_UNSIGNED("currentSizeBytes", current_size));
|
||||||
}
|
}
|
||||||
|
|
||||||
r = context_write_partition_table(context);
|
r = context_write_partition_table(context);
|
||||||
@ -10764,12 +10785,12 @@ static int run(int argc, char *argv[]) {
|
|||||||
return r;
|
return r;
|
||||||
|
|
||||||
if (arg_node_none) {
|
if (arg_node_none) {
|
||||||
(void) determine_auto_size(context, LOG_INFO, /* ignore_allocated= */ false, /* ret= */ NULL);
|
(void) determine_auto_size(context, LOG_INFO, /* ret_current_size= */ NULL, /* ret_foreign_size= */ NULL, /* ret_minimal_size= */ NULL);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (arg_size_auto) {
|
if (arg_size_auto) {
|
||||||
r = determine_auto_size(context, LOG_INFO, /* ignore_allocated= */ false, &arg_size);
|
r = determine_auto_size(context, LOG_INFO, /* ret_current_size= */ NULL, /* ret_foreign_size= */ NULL, &arg_size);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
@ -10794,7 +10815,7 @@ static int run(int argc, char *argv[]) {
|
|||||||
r = context_ponder(context);
|
r = context_ponder(context);
|
||||||
if (r == -ENOSPC) {
|
if (r == -ENOSPC) {
|
||||||
/* When we hit space issues, tell the user the minimal size. */
|
/* When we hit space issues, tell the user the minimal size. */
|
||||||
(void) determine_auto_size(context, LOG_INFO, /* ignore_allocated= */ false, /* ret= */ NULL);
|
(void) determine_auto_size(context, LOG_INFO, /* ret_current_size= */ NULL, /* ret_foreign_size= */ NULL, /* ret_minimal_size= */ NULL);
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
|
|||||||
@ -95,7 +95,7 @@ static SD_VARLINK_DEFINE_ENUM_TYPE(
|
|||||||
|
|
||||||
static SD_VARLINK_DEFINE_METHOD_FULL(
|
static SD_VARLINK_DEFINE_METHOD_FULL(
|
||||||
CleanPool,
|
CleanPool,
|
||||||
SD_VARLINK_SUPPORTS_MORE,
|
SD_VARLINK_REQUIRES_MORE,
|
||||||
VARLINK_DEFINE_POLKIT_INPUT,
|
VARLINK_DEFINE_POLKIT_INPUT,
|
||||||
SD_VARLINK_FIELD_COMMENT("Allows removing all or only hidden images"),
|
SD_VARLINK_FIELD_COMMENT("Allows removing all or only hidden images"),
|
||||||
SD_VARLINK_DEFINE_INPUT_BY_TYPE(mode, CleanPoolMode, 0),
|
SD_VARLINK_DEFINE_INPUT_BY_TYPE(mode, CleanPoolMode, 0),
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user