commit ddf77b3f061013c4681cee5ecd471fe0ed1bef0c Author: Adrian Schröter Date: Thu Dec 21 13:33:59 2023 +0100 Sync from SUSE:ALP:Source:Standard:1.0 agama-cli revision dbe9dcf2f178b22fb92890c7d6eaef07 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..d16e04e --- /dev/null +++ b/_constraints @@ -0,0 +1,7 @@ + + + + 20 + + + diff --git a/_service b/_service new file mode 100644 index 0000000..1eb70e0 --- /dev/null +++ b/_service @@ -0,0 +1,28 @@ + + + https://github.com/openSUSE/agama.git + @PARENT_TAG@ + v(.*) + git + v6 + rust + enable + package/agama-cli.changes + package/agama-cli.spec + + + agama/rust + zst + true + + + agama/rust + + + agama.obsinfo + agama + + + agama + + diff --git a/agama-cli.changes b/agama-cli.changes new file mode 100644 index 0000000..cf5147e --- /dev/null +++ b/agama-cli.changes @@ -0,0 +1,253 @@ +------------------------------------------------------------------- +Wed Nov 29 11:19:51 UTC 2023 - Imobach Gonzalez Sosa + +- Rework the org.opensuse.Agama1.Locale interface + (gh#openSUSE/agama#881): + * Replace LabelsForLocales function with ListLocales. + * Add a ListKeymaps function. + * Extend the ListTimezone function to include the translation of + each part. + * Drop ListUILocales and ListVConsoleKeyboards functions. + * Remove the SupportedLocales and VConsoleKeyboard properties. + * Do not read the lists of locales, keymaps and timezones on + each request. + * Peform some validation when trying to change the Locales, + Keymap and Timezone properties. + +------------------------------------------------------------------- +Thu Nov 16 11:06:30 UTC 2023 - Imobach Gonzalez Sosa + +- Update dependencies to compatible versions + (gh#openSUSE/agama#874). +- Replace tempdir with tempfile to prevent RUSTSEC-2023-0018. + +------------------------------------------------------------------- +Wed Nov 15 12:35:32 UTC 2023 - José Iván López González + +- Adapt to changes in software D-Bus API (gh#openSUSE/agama#869). + +------------------------------------------------------------------- + +Wed Nov 15 11:27:10 UTC 2023 - Michal Filka + +- Improved "agama logs store" (gh#openSUSE/agama#823) + - added an option which allows to define the archive destination + +------------------------------------------------------------------- +Tue Nov 14 15:44:15 UTC 2023 - Jorik Cronenberg + +- Add support for routing to the network model (gh#openSUSE/agama#824) + +------------------------------------------------------------------- +Mon Oct 23 14:43:59 UTC 2023 - Michal Filka + +- Improved "agama logs store" (gh#openSUSE/agama#812) + - the archive file owner is root:root + - the permissions is set to r/w for the owner + +------------------------------------------------------------------- +Mon Oct 23 11:33:40 UTC 2023 - Imobach Gonzalez Sosa + +- Version 5 + +------------------------------------------------------------------- +Mon Oct 10 07:37:00 UTC 2023 - Michal Filka + +- Improve file and directory names in "agama logs store". +- Add an "agama logs list" subcommand. + +------------------------------------------------------------------- +Tue Sep 26 15:57:14 UTC 2023 - Imobach Gonzalez Sosa + +- Version 4 + +------------------------------------------------------------------- +Tue Sep 26 12:05:52 UTC 2023 - Imobach Gonzalez Sosa + +- Wait until the manager is ready before probing + (gh#openSUSE/agama#771). + +------------------------------------------------------------------- +Mon Sep 25 11:32:53 UTC 2023 - Imobach Gonzalez Sosa + +- Add support for IPv6 network settings (gh#openSUSE/agama#761). + +------------------------------------------------------------------- +Mon Sep 25 10:46:53 UTC 2023 - Michal Filka + +- CLI: added (sub)commands for handling logs. "store" subcommand is + similar to what old save_y2logs did. (gh#openSUSE/agama#757) + +------------------------------------------------------------------- +Tue Sep 19 11:16:16 UTC 2023 - José Iván López González + +- Adapt to new storage D-Bus API and explicitly call to probe after + selecting a new product (gh#openSUSE/agama#748). + +------------------------------------------------------------------- +Thu Sep 14 19:44:57 UTC 2023 - Josef Reidinger + +- Improve questions CLI help text (gh#openSUSE/agama#754) + +------------------------------------------------------------------- +Thu Sep 14 10:10:37 UTC 2023 - Imobach Gonzalez Sosa + +- Use a single D-Bus service to connect to the manager and the + users API (gh#openSUSE/agama#753, follow-up of + gh#openSUSE/agama#729). + +------------------------------------------------------------------- +Wed Sep 13 09:27:22 UTC 2023 - Knut Anderssen + +- Allow to bind a connection to an specific interface through its + name or through a set of match settings (gh#opensSUSE/agama#723). + +------------------------------------------------------------------- +Thu Aug 31 10:30:28 UTC 2023 - Imobach Gonzalez Sosa + +- Use a single D-Bus service to expose locale, network and + questions settings (gh#openSUSE/agama#729). + +------------------------------------------------------------------- +Wed Aug 30 12:57:59 UTC 2023 - Josef Reidinger + +- Locale service: add value for UI locale (gh#openSUSE/agama#725) + +------------------------------------------------------------------- +Thu Aug 3 08:34:14 UTC 2023 - Imobach Gonzalez Sosa + +- Move the settings functionality to a separate package, + agama-settings (gh#openSUSE/agama#666). +- Make the "Settings" derive macro reusable from other crates. +- Extend the "Settings" derive macro to generate code for + InstallSettings and NetworkSettings. +- Improve error reporting when working with the "config" + subcommand. + +------------------------------------------------------------------- +Wed Aug 2 10:03:18 UTC 2023 - Imobach Gonzalez Sosa + +- Version 3 + +------------------------------------------------------------------- +Wed Jul 26 11:08:09 UTC 2023 - Josef Reidinger + +- CLI: add to "questions" command "answers" subcommand to set + file with predefined answers +- dbus-server: add "AddAnswersFile" method to Questions service + (gh#openSUSE/agama#669) + +------------------------------------------------------------------- +Tue Jul 18 13:32:04 UTC 2023 - Josef Reidinger + +- Add to CLI "questions" subcommand with mode option to set + interactive and non-interactive mode (gh#openSUSE/agama#668) + +------------------------------------------------------------------- +Mon Jul 17 13:36:56 UTC 2023 - Imobach Gonzalez Sosa + +- Fix the logic to decide which network connections to write + due to a bug introduced in gh#openSUSE/agama#662 + (gh#openSUSE/agama#667). + +------------------------------------------------------------------- +Mon Jul 17 09:16:38 UTC 2023 - Josef Reidinger + +- Adapt to new questions D-Bus API to allow automatic answering of + questions when requested (gh#openSUSE/agama#637, reverts + gh#openSUSE/agama#649 as now default option is mandatory) + +------------------------------------------------------------------- +Thu Jul 13 10:22:36 UTC 2023 - Imobach Gonzalez Sosa + +- Improve error reporting in the command-line interface + (gh#openSUSE/agama#659 and gh#openSUSE/agama#660). + +------------------------------------------------------------------- +Thu Jul 13 08:56:40 UTC 2023 - José Iván López González + +- Read the storage candidate devices and show them with + "agama config show" (gh#openSUSE/agama#658). + +------------------------------------------------------------------- +Fri Jul 7 14:12:03 UTC 2023 - Imobach Gonzalez Sosa + +- Improve the progress reporting (gh#openSUSE/agama#653). + +------------------------------------------------------------------- +Thu Jul 6 09:13:47 UTC 2023 - Imobach Gonzalez Sosa + +- Improve the waiting logic and implement a retry mechanism for the + "agama install" command (bsc#1213047). + +------------------------------------------------------------------- +Wed Jul 5 11:11:20 UTC 2023 - Imobach Gonzalez Sosa + +- Fix the questions service to handle questions with no default + option (gh#openSUSE/agama#649). + +------------------------------------------------------------------- +Thu Jun 1 08:14:14 UTC 2023 - Imobach Gonzalez Sosa + +- Add a localization D-Bus service (gh#openSUSE/agama#533). +- Add a network D-Bus service (gh#openSUSE/agama#571). + +------------------------------------------------------------------- +Tue May 23 11:51:26 UTC 2023 - Martin Vidner + +- Version 2.1 + +------------------------------------------------------------------- +Mon May 22 12:29:20 UTC 2023 - Martin Vidner + +- Version 2 + +------------------------------------------------------------------- +Thu May 11 11:00:11 UTC 2023 - Imobach Gonzalez Sosa + +- Import root authentication settings when reading a Jsonnet file + (bsc#1211300, gh#openSUSE/agama#573). +- Do not export the SSH public key as an empty string when it is + not defined. + +------------------------------------------------------------------- +Fri Mar 24 14:36:36 UTC 2023 - Imobach Gonzalez Sosa + +- Version 0.2: + * Add validation for software and users settings + (gh#yast/agama-cli#48, gh#yast/agama-cli#51). + * Better error reporting when the bus is not found + (gh#yast/agama-cli#48). + * Improve the progress reporting mechanism, although it is still + a work in progress (gh#yast/agama-cli#50). + +------------------------------------------------------------------- +Wed Mar 22 09:39:29 UTC 2023 - Imobach Gonzalez Sosa + +- Add support for setting root authentication mechanisms + (gh#yast/agama-cli#47). + +------------------------------------------------------------------- +Tue Mar 21 16:06:02 UTC 2023 - Martin Vidner + +- Do not fall back to the system D-Bus (gh#yast/agama-cli#45). + +------------------------------------------------------------------- +Wed Mar 21 13:28:01 UTC 2023 - Imobach Gonzalez Sosa + +- Use JSON as the default format (gh#yast/agama-cli#46). + +------------------------------------------------------------------- +Tue Mar 21 08:55:39 UTC 2023 - Josef Reidinger + +- Fix the path of the JSON schema (gh#yast/agama-cli#44). + +------------------------------------------------------------------- +Thu Mar 16 11:56:42 UTC 2023 - Imobach Gonzalez Sosa + +- First version of the package: + * Querying and setting simple values. + * Adding elements to collections + * Handling of auto-installation profiles. + * Basic error handling +- 0.1 diff --git a/agama-cli.spec b/agama-cli.spec new file mode 100644 index 0000000..c22a088 --- /dev/null +++ b/agama-cli.spec @@ -0,0 +1,98 @@ +# +# spec file for package agama-cli +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: agama-cli +# This will be set by osc services, that will run after this. +Version: 0 +Release: 0 +Summary: Agama command line interface +# If you know the license, put it's SPDX string here. +# Alternately, you can use cargo lock2rpmprovides to help generate this. +License: GPL-2.0-only +URL: https://github.com/opensuse/agama +Source0: agama.tar +Source1: vendor.tar.zst +# Generated by the cargo_vendor OBS service +Source2: cargo_config +BuildRequires: cargo-packaging +BuildRequires: pkgconfig(openssl) +# used in tests for dbus service +BuildRequires: python-langtable-data +BuildRequires: dbus-1-common +# required by agama-dbus-server integration tests +BuildRequires: dbus-1-daemon +Requires: jsonnet +Requires: lshw +# required by "agama logs store" +Requires: bzip2 +Requires: tar +# required for translating the keyboards descriptions +Requires: xkeyboard-config-lang + +%description +Command line program to interact with the agama service. + +%package -n agama-dbus-server +# This will be set by osc services, that will run after this. +Version: 0 +Release: 0 +Summary: Agama Rust D-Bus service +License: GPL-2.0-only +URL: https://github.com/opensuse/agama +Requires: dbus-1-common +Requires: python-langtable-data + +%description -n agama-dbus-server +DBus service for agama project. It provides so far localization service. + +%prep +%autosetup -a1 -n agama +mkdir .cargo +cp %{SOURCE2} .cargo/config +# Remove exec bits to prevent an issue in fedora shebang checking. Uncomment only if required. +# find vendor -type f -name \*.rs -exec chmod -x '{}' \; + +%build +%{cargo_build} + +%install +install -D -d -m 0755 %{buildroot}%{_bindir} +install -m 0755 %{_builddir}/agama/target/release/agama %{buildroot}%{_bindir}/agama +install -m 0755 %{_builddir}/agama/target/release/agama-dbus-server %{buildroot}%{_bindir}/agama-dbus-server +install -D -d -m 0755 %{buildroot}%{_datadir}/agama-cli +install -m 0644 %{_builddir}/agama/agama-lib/share/profile.schema.json %{buildroot}%{_datadir}/agama-cli +install --directory %{buildroot}%{_datadir}/dbus-1/agama-services +install -m 0644 --target-directory=%{buildroot}%{_datadir}/dbus-1/agama-services %{_builddir}/agama/share/*.service + +%check +%ifarch aarch64 +/usr/bin/cargo auditable test -j1 --offline --no-fail-fast +%else +%{cargo_test} +%endif + +%files +%{_bindir}/agama +%dir %{_datadir}/agama-cli +%{_datadir}/agama-cli/profile.schema.json + +%files -n agama-dbus-server +%{_bindir}/agama-dbus-server +%{_datadir}/dbus-1/agama-services + +%changelog diff --git a/agama.obscpio b/agama.obscpio new file mode 100644 index 0000000..3c538e7 --- /dev/null +++ b/agama.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:567a939f61662d07652a52a69447b562bd8f0d4a698dbf781e609e466c8fc271 +size 477195 diff --git a/agama.obsinfo b/agama.obsinfo new file mode 100644 index 0000000..7ffd539 --- /dev/null +++ b/agama.obsinfo @@ -0,0 +1,4 @@ +name: agama +version: 6 +mtime: 1701433426 +commit: 747e8e828de6ef984a4e844036db51d47ce2e5f4 diff --git a/cargo_config b/cargo_config new file mode 100644 index 0000000..a476f35 --- /dev/null +++ b/cargo_config @@ -0,0 +1,5 @@ +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" \ No newline at end of file diff --git a/vendor.tar.zst b/vendor.tar.zst new file mode 100644 index 0000000..bd51119 --- /dev/null +++ b/vendor.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35b5db98b9b2dd3cefdca1ab3a241204908c887ce6324e86dda2d50b98169f06 +size 37328606