diff --git a/src/lib/installation/instsys_packages.rb b/src/lib/installation/instsys_packages.rb index b7413356b..f3fa0273b 100644 --- a/src/lib/installation/instsys_packages.rb +++ b/src/lib/installation/instsys_packages.rb @@ -27,6 +27,9 @@ def self.read(file = "/.packages.root") name, version = /^(\S+) \[(\S+)\]/.match(line)[1, 2] next unless name && version + # remove the architecture suffix + version.sub!(/\.(noarch|aarch64|i[3-6]86|ppc64|ppc64le|s390x?|x86_64)$/, "") + # nil repository ID packages << Y2Packager::Package.new(name, nil, version) end diff --git a/test/instsys_packages_test.rb b/test/instsys_packages_test.rb index 2ebe3ef77..2a1d19ead 100755 --- a/test/instsys_packages_test.rb +++ b/test/instsys_packages_test.rb @@ -29,9 +29,15 @@ it "reads the package versions" do pkgs = Installation::InstsysPackages.read(test_file) + yast2 = pkgs.find { |p| p.name == "yast2" } + yast2_add_on = pkgs.find { |p| p.name == "yast2-add-on" } + + # no "x86_64" suffix + expect(yast2.version).to eq("4.2.67-1.7") - expect(yast2.version).to eq("4.2.67-1.7.x86_64") + # no "noarch" suffix + expect(yast2_add_on.version).to eq("4.2.15-1.30") end end end