diff --git a/service/lib/agama/autoyast/services_manager_reader.rb b/service/lib/agama/autoyast/services_manager_reader.rb index 932b055f75..98c8755262 100755 --- a/service/lib/agama/autoyast/services_manager_reader.rb +++ b/service/lib/agama/autoyast/services_manager_reader.rb @@ -50,8 +50,7 @@ def read attr_reader :profile - SYSTEMD_MULTIUSER_TARGET = "systemctl set-default multi-user.target" - SYSTEMD_GRAPHICAL_TARGET = "systemctl set-default graphical.target" + SYSTEMD_VALID_TARGETS = ["graphical", "multi-user"].freeze def services_manager_section @services_manager_section ||= profile.fetch("services-manager", {}) @@ -84,13 +83,10 @@ def script(body) end def target_to_cmd - # May we raise an exception if nothing matches? - case services_manager_section["default_target"] - when "muti_user" - SYSTEMD_MULTIUSER_TARGET - when "graphical" - SYSTEMD_GRAPHICAL_TARGET - end + target = services_manager_section["default_target"].to_s + return unless SYSTEMD_VALID_TARGETS.include?(target) + + "systemctl set-default #{target}.target" end def disabled_to_cmd diff --git a/service/package/rubygem-agama-yast.changes b/service/package/rubygem-agama-yast.changes index 904deda490..b91afb6aa3 100644 --- a/service/package/rubygem-agama-yast.changes +++ b/service/package/rubygem-agama-yast.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri Dec 12 06:21:47 UTC 2025 - Imobach Gonzalez Sosa + +- Fix systemd target import from AutoYaST profiles + (gh#agama-project/agama#2826). + ------------------------------------------------------------------- Thu Nov 13 13:30:58 UTC 2025 - Ladislav Slezák diff --git a/service/test/agama/autoyast/services_manager_reader_test.rb b/service/test/agama/autoyast/services_manager_reader_test.rb index c1b7d156d8..79a66cf089 100644 --- a/service/test/agama/autoyast/services_manager_reader_test.rb +++ b/service/test/agama/autoyast/services_manager_reader_test.rb @@ -45,7 +45,8 @@ let(:profile) do { "services-manager" => { - "services" => { + "default_target" => "multi-user", + "services" => { "enable" => ["service"] } } @@ -57,6 +58,7 @@ expect(result).not_to be_empty expect(result.first["content"]).to match(/service/) + expect(result.first["content"]).to match(/set-default multi-user/) end end end