Hello community, here is the log from the commit of package libzypp for openSUSE:Leap:15.2 checked in at 2020-06-08 13:44:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/libzypp (Old) and /work/SRC/openSUSE:Leap:15.2/.libzypp.new.3606 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libzypp" Mon Jun 8 13:44:25 2020 rev:86 rq:811965 version:17.23.6 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/libzypp/libzypp.changes 2020-04-17 13:36:28.840171913 +0200 +++ /work/SRC/openSUSE:Leap:15.2/.libzypp.new.3606/libzypp.changes 2020-06-08 13:44:27.707041826 +0200 @@ -1,0 +2,14 @@ +Thu Jun 4 11:45:03 CEST 2020 - [email protected] + +- Revert "Enable zchunk on SLE-15-SP2". +- version 17.23.6 (22) + +------------------------------------------------------------------- +Wed May 27 18:50:32 CEST 2020 - [email protected] + +- Enable zchunk on SLE-15-SP2. +- Older kernel-devel packages are not properly purged (bsc#1171224) +- doc: enhance service plugin example. +- version 17.23.5 (22) + +------------------------------------------------------------------- Old: ---- libzypp-17.23.4.tar.bz2 New: ---- libzypp-17.23.6.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libzypp.spec ++++++ --- /var/tmp/diff_new_pack.ASfAAb/_old 2020-06-08 13:44:28.095042964 +0200 +++ /var/tmp/diff_new_pack.ASfAAb/_new 2020-06-08 13:44:28.095042964 +0200 @@ -25,7 +25,7 @@ %bcond_without mediabackend_tests Name: libzypp -Version: 17.23.4 +Version: 17.23.6 Release: 0 URL: https://github.com/openSUSE/libzypp Summary: Library for package, patch, pattern and product management ++++++ libzypp-17.23.4.tar.bz2 -> libzypp-17.23.6.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/VERSION.cmake new/libzypp-17.23.6/VERSION.cmake --- old/libzypp-17.23.4/VERSION.cmake 2020-04-09 12:56:13.000000000 +0200 +++ new/libzypp-17.23.6/VERSION.cmake 2020-06-04 11:46:43.000000000 +0200 @@ -61,8 +61,8 @@ SET(LIBZYPP_MAJOR "17") SET(LIBZYPP_COMPATMINOR "22") SET(LIBZYPP_MINOR "23") -SET(LIBZYPP_PATCH "4") +SET(LIBZYPP_PATCH "6") # -# LAST RELEASED: 17.23.4 (22) +# LAST RELEASED: 17.23.6 (22) # (The number in parenthesis is LIBZYPP_COMPATMINOR) #======= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/doc/autodoc/Doxyfile.cmake new/libzypp-17.23.6/doc/autodoc/Doxyfile.cmake --- old/libzypp-17.23.4/doc/autodoc/Doxyfile.cmake 2018-10-01 14:31:07.000000000 +0200 +++ new/libzypp-17.23.6/doc/autodoc/Doxyfile.cmake 2020-05-05 16:06:06.000000000 +0200 @@ -74,7 +74,7 @@ RECURSIVE = YES EXCLUDE = EXCLUDE_SYMLINKS = NO -EXCLUDE_PATTERNS = +EXCLUDE_PATTERNS = */zyppng/* EXAMPLE_PATH = @ZYPP_DOCINCLUDE_DIR@ @ZYPP_EXAMPLE_DIR@ @LIBZYPP_SOURCE_DIR@ EXAMPLE_PATTERNS = EXAMPLE_RECURSIVE = NO diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/doc/autoinclude/Plugins.doc new/libzypp-17.23.6/doc/autoinclude/Plugins.doc --- old/libzypp-17.23.4/doc/autoinclude/Plugins.doc 2018-10-01 14:31:07.000000000 +0200 +++ new/libzypp-17.23.6/doc/autoinclude/Plugins.doc 2020-05-05 10:26:11.000000000 +0200 @@ -140,11 +140,24 @@ [repo2] ... - \endverbatim The repositories will be added on service refresh with the alias present in the output, prefixed by the service alias (in this case, the executable name). +To protect your code from e.g python modules writing their own messages to stdout, you should use a copy of stdout and redirect stdout to stderr (Python3 may need a slightly different print syntax): + +\verbatim +#!/usr/bin/python +import sys +sendback = sys.stdout +sys.stdout = sys.stderr + +print >>sendback, "# example plugin output" +print >>sendback, "# comments are ignored" +print >>sendback, "[repo1]" +print >>sendback, "name=Base repository" +... +\endverbatim <HR><!-- ====================================================================== --> \section plugin-url-resolver Url Resolver plugins diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/package/libzypp.changes new/libzypp-17.23.6/package/libzypp.changes --- old/libzypp-17.23.4/package/libzypp.changes 2020-04-09 12:56:13.000000000 +0200 +++ new/libzypp-17.23.6/package/libzypp.changes 2020-06-04 11:46:43.000000000 +0200 @@ -1,4 +1,18 @@ ------------------------------------------------------------------- +Thu Jun 4 11:45:03 CEST 2020 - [email protected] + +- Revert "Enable zchunk on SLE-15-SP2". +- version 17.23.6 (22) + +------------------------------------------------------------------- +Wed May 27 18:50:32 CEST 2020 - [email protected] + +- Enable zchunk on SLE-15-SP2. +- Older kernel-devel packages are not properly purged (bsc#1171224) +- doc: enhance service plugin example. +- version 17.23.5 (22) + +------------------------------------------------------------------- Thu Apr 9 12:52:10 CEST 2020 - [email protected] - Get retracted patch status from updateinfo data (jsc#SLE-8770) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/po/ar.po new/libzypp-17.23.6/po/ar.po --- old/libzypp-17.23.4/po/ar.po 2019-12-05 14:41:26.000000000 +0100 +++ new/libzypp-17.23.6/po/ar.po 2020-05-14 19:16:27.000000000 +0200 @@ -13,17 +13,17 @@ "Project-Id-Version: YaST (@memory@)\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-12-05 14:22+0100\n" -"PO-Revision-Date: 2019-03-23 20:19+0000\n" -"Last-Translator: Iman Abd Elaziz <[email protected]>\n" -"Language-Team: Arabic <https://l10n.opensuse.org/projects/libzypp/master/ar/" -">\n" +"PO-Revision-Date: 2020-05-02 19:50+0000\n" +"Last-Translator: mohammad alhargan <[email protected]>\n" +"Language-Team: Arabic <https://l10n.opensuse.org/projects/libzypp/master/ar/>" +"\n" "Language: ar\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" -"X-Generator: Weblate 3.3\n" +"X-Generator: Weblate 3.6.1\n" "X-Language-English: Arabic\n" "X-Language-Local: Arabic*\n" @@ -3773,7 +3773,7 @@ #, c-format, boost-format msgid "(expires in %d day)" msgid_plural "(expires in %d days)" -msgstr[0] "(ستنتهي الصلاحية خلال %d من الأيام)" +msgstr[0] "(ستنتهي الصلاحية خلال %d يوم)" msgstr[1] "(ستنتهي الصلاحية خلال يوم واحد)" msgstr[2] "(ستنتهي الصلاحية خلال يومين)" msgstr[3] "(ستنتهي الصلاحية خلال بضعة أيام)" @@ -4058,7 +4058,7 @@ #: zypp/media/MediaCIFS.cc:427 zypp/media/MediaCurl.cc:1738 #, c-format, boost-format msgid "Authentication required for '%s'" -msgstr "التصديق مطلوب لـ '%s'" +msgstr "التصديق '%s' مطلوب" #: zypp/media/MediaCurl.cc:1111 msgid "" @@ -4079,7 +4079,7 @@ #: zypp/media/MediaException.cc:33 #, c-format, boost-format msgid "Failed to mount %s on %s" -msgstr "فشل توصيل %s بـ %s" +msgstr "فشل توصيل %s على %s" #: zypp/media/MediaException.cc:43 #, c-format, boost-format @@ -4118,7 +4118,7 @@ #: zypp/media/MediaException.cc:79 #, c-format, boost-format msgid "Download (curl) initialization failed for '%s'" -msgstr "فشلت تهيئة إنزال (curl) لـ '%s'" +msgstr "فشلت تهيئة تحميل (curl) لـ '%s'" #: zypp/media/MediaException.cc:84 #, c-format, boost-format @@ -4622,19 +4622,19 @@ #: zypp/solver/detail/SATResolver.cc:1386 #, boost-format msgid "install %1% although it has been retracted" -msgstr "" +msgstr "بتثبيت %1% على الرغم من أنه تم سحبه" #. translator: %1% is a package name #: zypp/solver/detail/SATResolver.cc:1389 #, boost-format msgid "allow to install the PTF %1%" -msgstr "" +msgstr "تسمح بتثبيت PTF %1%" #. translator: %1% is a package name #: zypp/solver/detail/SATResolver.cc:1392 #, boost-format msgid "install %1% although it is blacklisted" -msgstr "" +msgstr "تثبيت %1% على الرغم من أنه مدرج في القائمة السوداء" #: zypp/solver/detail/SATResolver.cc:1412 #, c-format, boost-format diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/po/ca.po new/libzypp-17.23.6/po/ca.po --- old/libzypp-17.23.4/po/ca.po 2020-02-03 18:56:09.000000000 +0100 +++ new/libzypp-17.23.6/po/ca.po 2020-05-14 19:16:27.000000000 +0200 @@ -9,7 +9,7 @@ "Project-Id-Version: YaST (@memory@)\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-12-05 14:22+0100\n" -"PO-Revision-Date: 2020-02-03 17:54+0000\n" +"PO-Revision-Date: 2020-05-02 19:50+0000\n" "Last-Translator: David Medina <[email protected]>\n" "Language-Team: Catalan <https://l10n.opensuse.org/projects/libzypp/master/ca/" ">\n" @@ -24,7 +24,7 @@ #: zypp/CheckSum.cc:136 #, c-format, boost-format msgid "Dubious type '%s' for %u byte checksum '%s'" -msgstr "Tipus dubtós \"%s\" per a la suma de comprovació \"%s\" de %u bytes." +msgstr "Tipus dubtós %s per a byte %u, suma de verificació \"%s\"" #: zypp/CountryCode.cc:50 msgid "Unknown country: " @@ -790,7 +790,7 @@ #. :LBN:422: #: zypp/CountryCode.cc:284 msgid "Saint Lucia" -msgstr "Saint Lucia" +msgstr "Santa Lucia" # LI #. :LCA:662: @@ -5046,7 +5046,7 @@ #: zypp/solver/detail/SATResolver.cc:1437 #, c-format, boost-format msgid "replacement of %s with %s" -msgstr "substitució de %s per %s" +msgstr "reemplaçament de %s per %s" #: zypp/solver/detail/SATResolver.cc:1448 #, c-format, boost-format diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/po/sv.po new/libzypp-17.23.6/po/sv.po --- old/libzypp-17.23.4/po/sv.po 2019-12-05 14:41:26.000000000 +0100 +++ new/libzypp-17.23.6/po/sv.po 2020-05-14 19:16:27.000000000 +0200 @@ -14,8 +14,8 @@ "Project-Id-Version: zypp.sv\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-12-05 14:22+0100\n" -"PO-Revision-Date: 2019-03-23 20:19+0000\n" -"Last-Translator: Sven Åhr <[email protected]>\n" +"PO-Revision-Date: 2020-05-02 19:51+0000\n" +"Last-Translator: Luna Jernberg <[email protected]>\n" "Language-Team: Swedish <https://l10n.opensuse.org/projects/libzypp/master/sv/" ">\n" "Language: sv\n" @@ -23,7 +23,7 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 3.3\n" +"X-Generator: Weblate 3.6.1\n" #. dubious: Throw on malformed known types, otherwise log a warning. #: zypp/CheckSum.cc:136 @@ -1319,7 +1319,7 @@ #. :VGB:092: #: zypp/CountryCode.cc:394 msgid "Virgin Islands, U.S." -msgstr "Jungfruöarna, amerikanska" +msgstr "Jungfruöarna, amerikanska." #. :VIR:850: #: zypp/CountryCode.cc:395 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/tests/zypp/PurgeKernels_test.cc new/libzypp-17.23.6/tests/zypp/PurgeKernels_test.cc --- old/libzypp-17.23.4/tests/zypp/PurgeKernels_test.cc 2020-04-03 17:01:13.000000000 +0200 +++ new/libzypp-17.23.6/tests/zypp/PurgeKernels_test.cc 2020-05-27 11:16:19.000000000 +0200 @@ -45,6 +45,12 @@ { "kernel-default-devel-debuginfo-1-4.x86_64", false }, { "kernel-devel-1-4.noarch", false }, { "kernel-syms-1-4.x86_64", false }, + // left over devel packages that need to go away too + { "kernel-devel-1-1.2.noarch", false }, + { "kernel-source-1-1.2.noarch", false }, + { "kernel-default-devel-1-3.2.x86_64", false }, + { "kernel-devel-1-3.2.noarch", false }, + { "kernel-source-1-3.2.noarch", false }, } }, //test that keeps only the running kernel @@ -78,6 +84,12 @@ { "kernel-devel-1-5.noarch", false }, { "kernel-syms-1-5.x86_64", false }, { "dummy-kmp-default-1-0.x86_64", false }, + // left over devel packages that need to go away too + { "kernel-devel-1-1.2.noarch", false }, + { "kernel-source-1-1.2.noarch", false }, + { "kernel-default-devel-1-3.2.x86_64", false }, + { "kernel-devel-1-3.2.noarch", false }, + { "kernel-source-1-3.2.noarch", false }, } }, TestSample { @@ -99,6 +111,12 @@ { "kernel-devel-1-5.noarch", false }, { "kernel-syms-1-5.x86_64", false }, { "dummy-kmp-default-1-0.x86_64", false }, + // left over devel packages that need to go away too + { "kernel-devel-1-1.2.noarch", false }, + { "kernel-source-1-1.2.noarch", false }, + { "kernel-default-devel-1-3.2.x86_64", false }, + { "kernel-devel-1-3.2.noarch", false }, + { "kernel-source-1-3.2.noarch", false }, } }, TestSample { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/tests/zypp/data/PurgeKernels/simple/solver-system.xml new/libzypp-17.23.6/tests/zypp/data/PurgeKernels/simple/solver-system.xml --- old/libzypp-17.23.4/tests/zypp/data/PurgeKernels/simple/solver-system.xml 2019-11-27 11:36:13.000000000 +0100 +++ new/libzypp-17.23.6/tests/zypp/data/PurgeKernels/simple/solver-system.xml 2020-05-27 11:16:19.000000000 +0200 @@ -144,6 +144,43 @@ </package> <package> + <name>kernel-devel</name> + <vendor>openSUSE</vendor> + <history> + <update> + <arch>noarch</arch> + <version>1</version><release>1.2</release> + </update> + </history> + <provides> + <dep name='multiversion(kernel)' /> + <dep name='kernel-devel' op='==' version='1' release='1.2' /> + </provides> + <requires> + <dep name='kernel-macros' /> + </requires> +</package> + + +<package> + <name>kernel-source</name> + <vendor>openSUSE</vendor> + <history> + <update> + <arch>noarch</arch> + <version>1</version><release>1.2</release> + </update> + </history> + <provides> + <dep name='kernel-source' op='==' version='1' release='1.2' /> + </provides> + <requires> + <dep name='kernel-devel' op='==' version='1' release='1.2' /> + </requires> +</package> + + +<package> <name>kernel-syms</name> <vendor>openSUSE</vendor> <buildtime>1570603549</buildtime> @@ -318,6 +355,64 @@ </package> <package> + <name>kernel-default-devel</name> + <vendor>openSUSE</vendor> + <history> + <update> + <arch>x86_64</arch> + <version>1</version><release>3.2</release> + </update> + </history> + <provides> + <dep name='multiversion(kernel)' /> + <dep name='kernel-default-devel' op='==' version='1' release='3.2' /> + </provides> + <requires> + <dep name='kernel-devel' op='==' version='1' release='3.2' /> + </requires> + <supplements> + <dep name='packageand(kernel-default:kernel-devel)' /> + </supplements> +</package> + +<package> + <name>kernel-devel</name> + <vendor>openSUSE</vendor> + <history> + <update> + <arch>noarch</arch> + <version>1</version><release>3.2</release> + </update> + </history> + <provides> + <dep name='multiversion(kernel)' /> + <dep name='kernel-devel' op='==' version='1' release='3.2' /> + </provides> + <requires> + <dep name='kernel-macros' /> + </requires> +</package> + +<package> + <name>kernel-source</name> + <vendor>openSUSE</vendor> + <history> + <update> + <arch>noarch</arch> + <version>1</version><release>3.2</release> + </update> + </history> + <provides> + <dep name='kernel-source' op='==' version='1' release='3.2' /> + </provides> + <requires> + <dep name='kernel-devel' op='==' version='1' release='3.2' /> + </requires> +</package> + + + +<package> <name>kernel-default-devel-debuginfo</name> <vendor>openSUSE</vendor> <history> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/tools/zypp-NameReqPrv.cc new/libzypp-17.23.6/tools/zypp-NameReqPrv.cc --- old/libzypp-17.23.4/tools/zypp-NameReqPrv.cc 2020-04-03 17:01:13.000000000 +0200 +++ new/libzypp-17.23.6/tools/zypp-NameReqPrv.cc 2020-05-29 18:51:12.000000000 +0200 @@ -86,15 +86,19 @@ struct Table { - void row( PoolQuery::const_iterator it_r ) + std::vector<std::string> & row( const sat::Solvable & solv_r ) { //smax( _maxSID, ); - smax( _maxNAME, it_r->ident().size() + it_r->edition().size() + it_r->arch().size() ); - smax( _maxREPO, it_r->repository().name().size(), it_r->repository().name() ); + smax( _maxNAME, solv_r.ident().size() + solv_r.edition().size() + solv_r.arch().size() ); + smax( _maxREPO, solv_r.repository().name().size(), solv_r.repository().name() ); //smax( _maxTIME, ); - //smax( _maxVEND, it_r->vendor().size() ); + //smax( _maxVEND, solv_r.vendor().size() ); + return _map[solv_r]; + } - std::vector<std::string> & details { _map[*it_r] }; + void row( PoolQuery::const_iterator it_r ) + { + std::vector<std::string> & details { row( *it_r ) }; for_( match, it_r.matchesBegin(), it_r.matchesEnd() ) { details.push_back( match->inSolvAttr().asString().substr( 9, 3 )+": " +match->asString() ); } @@ -178,6 +182,75 @@ message << endl << "}" << endl; } +/////////////////////////////////////////////////////////////////// + +void dTree( const std::string & cmd_r, const std::string & spec_r ) +{ + message << "tree " << spec_r << " {"; + + sat::WhatProvides spec( Capability::guessPackageSpec( spec_r ) ); + if ( spec.empty() ) + { + message << "}" << endl; + return; + } + + static const std::list<sat::SolvAttr> attrs { + sat::SolvAttr::requires, + sat::SolvAttr::recommends, + sat::SolvAttr::obsoletes, + sat::SolvAttr::conflicts, + sat::SolvAttr::supplements, + }; + + std::map<sat::SolvAttr,std::map<sat::Solvable,std::set<std::string>>> result; // solvables recommending provided capability + { + Table t; + for ( const auto & el : spec ) + { + auto & details { t.row( el ) }; + for ( const auto & cap : el.provides() ) + { + //details.push_back( "prv: "+cap.asString() ); // list only matching ones + + // get attrs matching cap + for ( const auto & attr : attrs ) + { + PoolQuery q; + q.addDependency( attr, cap ); + if ( q.empty() ) + continue; + for_( it, q.begin(), q.end() ) { + for_( match, it.matchesBegin(), it.matchesEnd() ) { + result[attr][*it].insert( match->inSolvAttr().asString().substr( 9, 3 )+": " +match->asString() + + " (" + cap.asString() + ")" + ); + } + } + } + } + } + message << endl << t; + } + + for ( const auto & attr : attrs ) + { + if ( result[attr].empty() ) + continue; + + message << endl << "======== " << attr << " by:" << endl; + Table t; + for ( const auto & el : result[attr] ) + { + auto & details { t.row( el.first ) }; + for ( const auto & cap : el.second ) + details.push_back( cap ); + } + message << endl << t << endl; + } + message << "}" << endl; +} + /****************************************************************** ** ** FUNCTION NAME : main @@ -317,6 +390,16 @@ else return errexit("-D <pkgspec> requires an argument."); break; + case 'T': + if ( argc > 1 ) + { + std::string cmd { *argv }; + --argc,++argv; + dTree( cmd, *argv ); + } + else + return errexit("-T <pkgspec> requires an argument."); + break; case 'i': ignorecase = true; break; case 'I': ignorecase = false; break; case 'x': matechexact = true; break; @@ -427,9 +510,7 @@ continue; t.row( it ); } - message << t << endl; - - message << "}" << endl; + message << t << "}" << endl; } INT << "===[END]============================================" << endl << endl; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.4/zypp/PurgeKernels.cc new/libzypp-17.23.6/zypp/PurgeKernels.cc --- old/libzypp-17.23.4/zypp/PurgeKernels.cc 2020-04-03 17:01:13.000000000 +0200 +++ new/libzypp-17.23.6/zypp/PurgeKernels.cc 2020-05-27 11:16:19.000000000 +0200 @@ -227,10 +227,11 @@ q.setMatchExact(); for ( auto installedSrcPck : q ) { - + // For now print a message that we are removing a source package that has no corresponding kernel installed. + // This was changed due to bug #1171224 because orphaned kernel-source/devel packages were kept due to package + // rebuilds that did not obsolete the previously installed release, e.g. kernel-source-1-1.1 vs kernel-source-1-1.2 if ( validEditions.find( installedSrcPck.edition() ) == validEditions.end() ) { - MIL << "Skipping source package " << installedSrcPck << " no corresponding kernel with the same version was installed." << std::endl; - continue; + MIL << "Trying to remove source package " << installedSrcPck << " no corresponding kernel with the same version was installed." << std::endl; } //if no package providing kernel-flavour = VERSION is installed , we are free to remove the package
