diff --git a/config/config.go b/config/config.go index 95ece3f..7e606bd 100644 --- a/config/config.go +++ b/config/config.go @@ -168,13 +168,7 @@ type Artifact struct { func (ka Artifact) checkSupport(ki distro.KernelInfo, km Target) ( supported bool, err error) { - if ki.Distro.ID != km.Distro.ID { - supported = false - return - } - - // DistroRelease is optional - if km.Distro.Release != "" && ki.Distro.Release != km.Distro.Release { + if !ki.Distro.Equal(km.Distro) { supported = false return } diff --git a/distro/distro.go b/distro/distro.go index ed102c5..cd73ef2 100644 --- a/distro/distro.go +++ b/distro/distro.go @@ -75,3 +75,12 @@ func (d Distro) Kernels() (kernels []KernelInfo, err error) { } return } + +func (d Distro) Equal(to Distro) bool { + for _, dd := range distros { + if dd.Equal(d) { + return dd.Equal(to) + } + } + return false +}