From nobody Tue Sep 9 19:12:41 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1735921624814389.630809955572; Fri, 3 Jan 2025 08:27:04 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id DEC5C9E3; Fri, 3 Jan 2025 11:27:03 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 84C09A3A; Fri, 3 Jan 2025 11:26:25 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id C939296A; Fri, 3 Jan 2025 11:26:20 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 4F01694C for ; Fri, 3 Jan 2025 11:26:20 -0500 (EST) Received: from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-333-C_GSaXiKPHSnK7QQ3hxKnA-1; Fri, 03 Jan 2025 11:26:18 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id CE3E11956088 for ; Fri, 3 Jan 2025 16:26:17 +0000 (UTC) Received: from toolbx.redhat.com (unknown [10.42.28.141]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id E194519560A2; Fri, 3 Jan 2025 16:26:16 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.6 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1735921580; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=eM4t9WLltTM+oLJ0gtOouF+lfUaKAog58eTsxxpTu+A=; b=LqodkTBO56poWaxj3hERPUbTMtVUQDaTTehZxLruyzthHIIVaXSZx6eGlRUqR0Jn/OyCfD so07VI8BCSi81IyMhqf/5H1pdppfwUjH+G3surXezpDn9lKVhTP/7PsxxxAnUBoE2dlMTe frOHNUXzWvMxkZ5smxU2DQ/9ZLnj/jo= X-MC-Unique: C_GSaXiKPHSnK7QQ3hxKnA-1 X-Mimecast-MFC-AGG-ID: C_GSaXiKPHSnK7QQ3hxKnA From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: devel@lists.libvirt.org Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH v2 1/3] po: add its rules for translating polkit file strings Date: Fri, 3 Jan 2025 16:26:11 +0000 Message-ID: <20250103162613.152596-2-berrange@redhat.com> In-Reply-To: <20250103162613.152596-1-berrange@redhat.com> References: <20250103162613.152596-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: 7qY0xmTNb2zRq7L-5L0_V_NcDVpGWyVpbWf3LY1M44A_1735921578 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: DDWNK2EZXSAQFE4N3GRISD3VVGZM3DGV X-Message-ID-Hash: DDWNK2EZXSAQFE4N3GRISD3VVGZM3DGV X-MailFrom: berrange@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1735921625785116600 Content-Type: text/plain; charset="utf-8" xgettext / msgfmt have generic support for extracting / merging strings in XML files, however, they need to be told something about the schema to know which fields are translatable. This is done by providing 'its' rules. Usually the 'its' rules would be shipped in a -devel package of the app which owns the schema definition, but polkit does not do this. Thus libvirt (and other apps) must ship their own local 'its' rules for polkit. Reviewed-by: J=C3=A1n Tomko Signed-off-by: Daniel P. Berrang=C3=A9 --- po/its/polkit.its | 8 ++++++++ po/its/polkit.loc | 6 ++++++ po/meson.build | 1 + 3 files changed, 15 insertions(+) create mode 100644 po/its/polkit.its create mode 100644 po/its/polkit.loc diff --git a/po/its/polkit.its b/po/its/polkit.its new file mode 100644 index 0000000000..1c37e6bee7 --- /dev/null +++ b/po/its/polkit.its @@ -0,0 +1,8 @@ + + + + + diff --git a/po/its/polkit.loc b/po/its/polkit.loc new file mode 100644 index 0000000000..c7427ec672 --- /dev/null +++ b/po/its/polkit.loc @@ -0,0 +1,6 @@ + + + + + + diff --git a/po/meson.build b/po/meson.build index 592b254447..126eeabe17 100644 --- a/po/meson.build +++ b/po/meson.build @@ -14,6 +14,7 @@ i18n.gettext( '--package-version=3D@0@'.format(meson.project_version()), '--sort-output', ], + data_dirs: meson.current_source_dir() ) =20 potfiles_dep =3D [ --=20 2.47.1 From nobody Tue Sep 9 19:12:41 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1735921645821758.6806723478246; Fri, 3 Jan 2025 08:27:25 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 7582294C; Fri, 3 Jan 2025 11:27:24 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 3CEC999A; Fri, 3 Jan 2025 11:26:28 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id A1845965; Fri, 3 Jan 2025 11:26:22 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 24DC2965 for ; Fri, 3 Jan 2025 11:26:22 -0500 (EST) Received: from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-34-EDWJPbyMMtGmRcU-lk7jVA-1; Fri, 03 Jan 2025 11:26:20 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 5CBE71956096 for ; Fri, 3 Jan 2025 16:26:19 +0000 (UTC) Received: from toolbx.redhat.com (unknown [10.42.28.141]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 681F919560A2; Fri, 3 Jan 2025 16:26:18 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.6 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1735921581; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=BnRmYd4dKFLI81s9e/ovq7N5g//SrSn3WI1i2dgUKk8=; b=WK5lNGpBlNHpPP1D3gwRphlytrXrMWtc8TzDsn5Hr+IUAnbIuXJDAUXEK/E2m2P6SVjOAr z+rU2lMeVT2Zh9qZ52GD90bj9D7mzAJHEnGLqL1IM7YJ0S75TGLk9PKefgVfhKoNLxxpGK i+/YJ2Vk2/fQPlysc8gcAqXcVd7Z58s= X-MC-Unique: EDWJPbyMMtGmRcU-lk7jVA-1 X-Mimecast-MFC-AGG-ID: EDWJPbyMMtGmRcU-lk7jVA From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: devel@lists.libvirt.org Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH v2 2/3] meson: remove duplication of polkit dirs construction Date: Fri, 3 Jan 2025 16:26:12 +0000 Message-ID: <20250103162613.152596-3-berrange@redhat.com> In-Reply-To: <20250103162613.152596-1-berrange@redhat.com> References: <20250103162613.152596-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: Eh9PGNeu-bINKZg9E3q1la9dInsmujT2GwHQiKWcN0c_1735921579 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: WOWLIAEBK5IU7WWJOWGSJXRBQBEG5ELG X-Message-ID-Hash: WOWLIAEBK5IU7WWJOWGSJXRBQBEG5ELG X-MailFrom: berrange@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1735921647798116600 Content-Type: text/plain; charset="utf-8" Signed-off-by: Daniel P. Berrang=C3=A9 Reviewed-by: J=C3=A1n Tomko --- meson.build | 2 ++ src/access/meson.build | 2 +- src/remote/meson.build | 5 ++--- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/meson.build b/meson.build index ca1b915737..409a44b69c 100644 --- a/meson.build +++ b/meson.build @@ -114,6 +114,8 @@ localedir =3D prefix / get_option('localedir') mandir =3D prefix / get_option('mandir') sbindir =3D prefix / get_option('sbindir') sharedstatedir =3D prefix / get_option('sharedstatedir') +polkitactionsdir =3D datadir / 'polkit-1' / 'actions' +polkitrulesdir =3D datadir / 'polkit-1' / 'rules.d' =20 docdir =3D get_option('docdir') if docdir =3D=3D '' diff --git a/src/access/meson.build b/src/access/meson.build index fc5ba5b342..c006ca5934 100644 --- a/src/access/meson.build +++ b/src/access/meson.build @@ -73,7 +73,7 @@ if conf.has('WITH_POLKIT') command: [ meson_python_prog, python3_prog, genpolkit_prog, '@INPUT@= ' ], capture: true, install: true, - install_dir: datadir / 'polkit-1' / 'actions', + install_dir: polkitactionsdir, ) endif endif diff --git a/src/remote/meson.build b/src/remote/meson.build index 831acaaa01..9a0288f928 100644 --- a/src/remote/meson.build +++ b/src/remote/meson.build @@ -294,15 +294,14 @@ if conf.has('WITH_REMOTE') endif =20 if conf.has('WITH_POLKIT') - polkitdir =3D datadir / 'polkit-1' install_data( 'libvirtd.policy', - install_dir: polkitdir / 'actions', + install_dir: polkitactionsdir, rename: [ 'org.libvirt.unix.policy' ], ) install_data( 'libvirtd.rules', - install_dir: polkitdir / 'rules.d', + install_dir: polkitrulesdir, rename: [ '50-libvirt.rules' ], ) endif --=20 2.47.1 From nobody Tue Sep 9 19:12:41 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1735921672908914.2243976623181; Fri, 3 Jan 2025 08:27:52 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id A6F26A19; Fri, 3 Jan 2025 11:27:49 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 3627297C; Fri, 3 Jan 2025 11:26:34 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 53F4496D; Fri, 3 Jan 2025 11:26:29 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 636E496D for ; Fri, 3 Jan 2025 11:26:23 -0500 (EST) Received: from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-248-tdAvVs2FPTK5gU4UjeSbSA-1; Fri, 03 Jan 2025 11:26:21 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id C56F4195609F for ; Fri, 3 Jan 2025 16:26:20 +0000 (UTC) Received: from toolbx.redhat.com (unknown [10.42.28.141]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id DA3F319560A2; Fri, 3 Jan 2025 16:26:19 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.6 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1735921583; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iMJsFXpfZAwE9CuflQB4E83m3HGUWaGEOtmegJ4hzGo=; b=CeZskoI1oaWuMlCfK1wihv+lTDL9hslTpYERsQSQvP91z/yGV8FQRH5WHCsKVbgWo0rW5B eqgZs+X4MxMXVhikfuMpyirBMcQGcJ2kmFN3/WL+SvJlF1OEwGaqYuR3kjXBvHIVoK/knr JaNoCQXpC3c3SyDt5ZalJbvs23UcPsM= X-MC-Unique: tdAvVs2FPTK5gU4UjeSbSA-1 X-Mimecast-MFC-AGG-ID: tdAvVs2FPTK5gU4UjeSbSA From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: devel@lists.libvirt.org Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH v2 3/3] remote: apply translations to polkit files Date: Fri, 3 Jan 2025 16:26:13 +0000 Message-ID: <20250103162613.152596-4-berrange@redhat.com> In-Reply-To: <20250103162613.152596-1-berrange@redhat.com> References: <20250103162613.152596-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: OVrfd-v9GKkO5RwPHl9FFY8YXzvdvm-1iTBzzRlfCpo_1735921580 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: F37JYGV2OWWDHLQJVWMBEYTQBV2CHCSM X-Message-ID-Hash: F37JYGV2OWWDHLQJVWMBEYTQBV2CHCSM X-MailFrom: berrange@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1735921676373116600 Content-Type: text/plain; charset="utf-8" The 'description' and 'message' fields in polkit policy files should be translated into the user's chosen language. xgettext is told to search in both and source and build dirs by meson. Unfortunately a bug in xgettext means that when it searches for built files in XML format, it'll trigger a warning message due to failure to load the generated file from the source dir: xgettext: cannot read ..snip../libvirt/src/access/org.libvirt.api.policy:= failed to load external entity "..snip../libvirt/src/access/org.libvirt.ap= i.policy" This is harmless since it then goes on to try the build dir and succeeds, but will pollute the output of 'ninja libvirt-pot' Related: https://gitlab.com/libvirt/libvirt/-/merge_requests/387 Signed-off-by: Daniel P. Berrang=C3=A9 Reviewed-by: J=C3=A1n Tomko --- build-aux/syntax-check.mk | 5 +++-- meson.build | 4 ++++ po/POTFILES | 2 ++ po/meson.build | 4 +--- src/access/meson.build | 18 +++++++++++++++--- .../{libvirtd.policy =3D> libvirtd.policy.in} | 0 src/remote/meson.build | 10 +++++++--- 7 files changed, 32 insertions(+), 11 deletions(-) rename src/remote/{libvirtd.policy =3D> libvirtd.policy.in} (100%) diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index 2c9593c28f..e6afb879be 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -1273,9 +1273,10 @@ po_file ?=3D $(top_srcdir)/po/POTFILES # This is all generated files for RPC code. generated_files =3D \ $(top_builddir)/src/*.[ch] \ - $(top_builddir)/src/*/*.[ch] + $(top_builddir)/src/*/*.[ch] \ + $(top_builddir)/src/*/*.policy.in =20 -_gl_translatable_string_re ?=3D \b(N?_|gettext *)\([^)"]*("|$$) +_gl_translatable_string_re ?=3D (^|\b(N?_|gettext *)\([^)"]*= ("|$$)) =20 # sc_po_check can fail if generated files are not built first sc_po_check: diff --git a/meson.build b/meson.build index 409a44b69c..65010dd6a8 100644 --- a/meson.build +++ b/meson.build @@ -15,6 +15,10 @@ if meson.version().version_compare('>=3D0.64.0') fs =3D import('fs') endif =20 +i18n =3D import('i18n') + +po_dir =3D meson.source_root() / 'po' + # figure out if we are building from git =20 git =3D run_command('test', '-e', '.git', check: false).returncode() =3D= =3D 0 diff --git a/po/POTFILES b/po/POTFILES index 6100341330..484b34c3df 100644 --- a/po/POTFILES +++ b/po/POTFILES @@ -1,6 +1,7 @@ src/access/viraccessapicheck.c src/access/viraccessapichecklxc.c src/access/viraccessapicheckqemu.c +src/access/org.libvirt.api.policy.in src/admin/admin_client.h src/admin/admin_server_dispatch_stubs.h src/remote/remote_client_bodies.h @@ -201,6 +202,7 @@ src/qemu/qemu_validate.c src/qemu/qemu_vhost_user.c src/qemu/qemu_vhost_user_gpu.c src/qemu/qemu_virtiofs.c +src/remote/libvirtd.policy.in src/remote/remote_daemon.c src/remote/remote_daemon_config.c src/remote/remote_daemon_dispatch.c diff --git a/po/meson.build b/po/meson.build index 126eeabe17..0f00b4830e 100644 --- a/po/meson.build +++ b/po/meson.build @@ -1,5 +1,3 @@ -i18n =3D import('i18n') - i18n.gettext( meson.project_name(), args: [ @@ -18,7 +16,7 @@ i18n.gettext( ) =20 potfiles_dep =3D [ - access_gen_sources, + access_generated, admin_client_generated, admin_driver_generated, remote_protocol_generated, diff --git a/src/access/meson.build b/src/access/meson.build index c006ca5934..0cc9cf2b79 100644 --- a/src/access/meson.build +++ b/src/access/meson.build @@ -17,6 +17,7 @@ access_gen_headers =3D [] access_gen_sources =3D [] access_gen_sym =3D [] access_gen_xml =3D [] +access_generated =3D [] =20 foreach name : [ 'remote', 'qemu', 'lxc' ] if name =3D=3D 'remote' @@ -66,18 +67,29 @@ if conf.has('WITH_POLKIT') access_sources +=3D access_polkit_sources =20 if conf.has('WITH_LIBVIRTD') - custom_target( - 'org.libvirt.api.policy', + polgen =3D custom_target( + 'org.libvirt.api.policy.in', input: access_perm_h, - output: 'org.libvirt.api.policy', + output: 'org.libvirt.api.policy.in', command: [ meson_python_prog, python3_prog, genpolkit_prog, '@INPUT@= ' ], capture: true, + build_by_default: true, + ) + access_generated +=3D polgen + + i18n.merge_file( + input: polgen, + output: 'org.libvirt.api.policy', + po_dir: po_dir, + data_dirs: [po_dir], install: true, install_dir: polkitactionsdir, ) endif endif =20 +access_generated +=3D access_gen_sources + virt_access_lib =3D static_library( 'virt_access', [ diff --git a/src/remote/libvirtd.policy b/src/remote/libvirtd.policy.in similarity index 100% rename from src/remote/libvirtd.policy rename to src/remote/libvirtd.policy.in diff --git a/src/remote/meson.build b/src/remote/meson.build index 9a0288f928..ea063ed6cc 100644 --- a/src/remote/meson.build +++ b/src/remote/meson.build @@ -294,11 +294,15 @@ if conf.has('WITH_REMOTE') endif =20 if conf.has('WITH_POLKIT') - install_data( - 'libvirtd.policy', + i18n.merge_file( + input: 'libvirtd.policy.in', + output: 'org.libvirt.unix.policy', + po_dir: po_dir, + data_dirs: [po_dir], + install: true, install_dir: polkitactionsdir, - rename: [ 'org.libvirt.unix.policy' ], ) + install_data( 'libvirtd.rules', install_dir: polkitrulesdir, --=20 2.47.1