mudler / luet

:package: :whale: 0-dependency Container-based Package Manager using SAT solver and QLearning
https://luet.io
GNU General Public License v3.0
261 stars 24 forks source link

Candidate not found #295

Open msdobrescu opened 2 years ago

msdobrescu commented 2 years ago

Luet version:

0.32.0-g2aa4c8a42ed13682b4820f3ca5e6d2388a5e2c24 2022-05-03

CPU architecture, OS, and Version:

github's

Describe the bug

I have hit am issue :

ERROR Error: while resolving join images: could not generate image hash: Error while generating compilespec for ghc: Candidate not found: No key found for: ghc-layers-8.10.4-r1+1

In short, built a ghc layer split in two, one "standard" layer, one "layerbase" (the layer + portage db), then, based on it, similarly a haskell set (layer+layerbase) and now I try to build a package based on haskell. This fails and I wonder why. Can you help clarifuying this when possible?

To Reproduce

Use the following package def

From here:

- &layerbase-ghc
  category: "layerbase"
  name: "ghc"
  version: "8.10.4-r1+1"
  labels:
    emerge.jobs: "1"
    emerge.packages: &layers-ghc-packages >-
      dev-lang/ghc
      app-admin/haskell-updater 
  atom: *layers-ghc-packages
  provides:
  - category: "dev-lang"
    name: "ghc"
    version: ">=0"
  - category: "app-admin"
    name: "haskell-updater"
    version: ">=0"
  pre_reqs:
  - app-text/docbook-xml-dtd
  - app-text/docbook-xsl-stylesheets
  # - *libs-sphinx-packages
  - dev-python/sphinx
  - sys-process/numactl
  requires:
  - <<: *layers-system-x
  - <<: *apps-numactl
  build_requires:
  - <<: *layers-system-x
  hidden: true

From here:

- &layerbase-haskell
  category: "layerbase"
  name: "haskell"
  version: "0.1"
  labels:
    emerge.jobs: "3"
    emerge.packages: &layers-haskell-packages >-
      dev-haskell/adjunctions
      dev-haskell/aeson
      dev-haskell/aeson-diff
      dev-haskell/aeson-pretty
      dev-haskell/alex
      dev-haskell/ansi-terminal
      dev-haskell/ansi-wl-pprint
      dev-haskell/appar
      dev-haskell/asn1-encoding
      dev-haskell/asn1-parse
      dev-haskell/asn1-types
      dev-haskell/async
      dev-haskell/attoparsec
      dev-haskell/auto-update
      dev-haskell/base-compat
      dev-haskell/base-compat-batteries
      dev-haskell/base-orphans
      dev-haskell/base-prelude
      dev-haskell/base16-bytestring
      dev-haskell/base64-bytestring
      dev-haskell/basement
      dev-haskell/bifunctors
      dev-haskell/binary
      dev-haskell/blaze-builder
      dev-haskell/blaze-html
      dev-haskell/blaze-markup
      dev-haskell/bsb-http-chunked
      dev-haskell/bytestring-builder
      dev-haskell/byteorder
      dev-haskell/cabal
      dev-haskell/cabal-doctest
      dev-haskell/call-stack
      dev-haskell/case-insensitive
      dev-haskell/cereal
      dev-haskell/charset
      dev-haskell/citeproc
      dev-haskell/clock
      dev-haskell/cmdargs
      dev-haskell/code-page
      dev-haskell/colour
      dev-haskell/comonad
      dev-haskell/commonmark
      dev-haskell/commonmark-extensions
      dev-haskell/commonmark-pandoc
      dev-haskell/concurrent-output
      dev-haskell/conduit
      dev-haskell/conduit-extra
      dev-haskell/connection
      dev-haskell/constraints
      dev-haskell/contravariant
      dev-haskell/contravariant-extras
      dev-haskell/cookie
      dev-haskell/cpphs
      dev-haskell/crypto-api
      dev-haskell/crypto-api-tests
      dev-haskell/cryptohash-md5
      dev-haskell/cryptohash-sha1
      dev-haskell/cryptonite
      dev-haskell/data-default
      dev-haskell/data-default-class
      dev-haskell/data-default-instances-containers
      dev-haskell/data-default-instances-dlist
      dev-haskell/data-default-instances-old-locale
      dev-haskell/diff
      dev-haskell/digest
      dev-haskell/distributive
      dev-haskell/dlist
      dev-haskell/doclayout
      dev-haskell/doctemplates
      dev-haskell/doctest
      dev-haskell/easy-file
      dev-haskell/edit-distance-vector
      dev-haskell/either
      dev-haskell/emojis
      dev-haskell/entropy
      dev-haskell/erf
      dev-haskell/errors
      dev-haskell/exceptions
      dev-haskell/extensible-exceptions
      dev-haskell/extra
      dev-haskell/fail
      dev-haskell/fast-logger
      dev-haskell/file-embed
      dev-haskell/filepattern
      dev-haskell/fingertree
      dev-haskell/foldl
      dev-haskell/foundation
      dev-haskell/free
      dev-haskell/generic-deriving
      dev-haskell/generics-sop
      dev-haskell/getopt-generics
      dev-haskell/ghc-lib-parser
      dev-haskell/ghc-lib-parser-ex
      dev-haskell/ghc-paths
      dev-haskell/glob
      dev-haskell/haddock-library
      dev-haskell/happy
      dev-haskell/hashable
      dev-haskell/hashable-time
      dev-haskell/hedgehog
      dev-haskell/haskell-lexer
      dev-haskell/haskell-src-exts
      dev-haskell/hlint
      dev-haskell/hostname
      dev-haskell/hourglass
      dev-haskell/hs-bibutils
      dev-haskell/hscolour
      dev-haskell/hslua
      dev-haskell/hslua-module-path
      dev-haskell/hslua-module-system
      dev-haskell/hslua-module-text
      dev-haskell/hspec
      dev-haskell/hspec-core
      dev-haskell/hspec-discover
      dev-haskell/hspec-expectations
      dev-haskell/hspec-meta
      dev-haskell/hsyaml
      dev-haskell/hsyaml-aeson
      dev-haskell/http
      dev-haskell/http-client
      dev-haskell/http-client-tls
      dev-haskell/http-date
      dev-haskell/http-types
      dev-haskell/http2
      dev-haskell/httpd-shed
      dev-haskell/hunit
      dev-haskell/indexed-traversable
      dev-haskell/integer-logarithms
      dev-haskell/invariant
      dev-haskell/iproute
      dev-haskell/ipynb
      dev-haskell/jira-wiki-markup
      dev-haskell/juicypixels
      dev-haskell/kan-extensions
      dev-haskell/lens
      dev-haskell/libyaml
      dev-haskell/lifted-async
      dev-haskell/lifted-base
      dev-haskell/logging-facade
      dev-haskell/logict
      dev-haskell/math-functions
      dev-haskell/memory
      dev-haskell/memotrie
      dev-haskell/microlens
      dev-haskell/microlens-aeson
      dev-haskell/mime-types
      dev-haskell/mmorph
      dev-haskell/mockery
      dev-haskell/monad-control
      dev-haskell/mono-traversable
      dev-haskell/mtl
      dev-haskell/mwc-random
      dev-haskell/nanospec
      dev-haskell/nats
      dev-haskell/network
      dev-haskell/network-bsd
      dev-haskell/network-byte-order
      dev-haskell/network-uri
      dev-haskell/network-info
      dev-haskell/newtype-generics
      dev-haskell/old-locale
      dev-haskell/old-time
      dev-haskell/optparse-applicative
      dev-haskell/pandoc-types
      dev-haskell/parallel
      dev-haskell/parsec
      dev-haskell/parsers
      dev-haskell/pcre-light
      dev-haskell/pem
      dev-haskell/pgp-wordlist
      dev-haskell/polyparse
      dev-haskell/pretty-show
      dev-haskell/primitive
      dev-haskell/prettyprinter
      dev-haskell/prettyprinter-ansi-terminal
      dev-haskell/profunctors
      dev-haskell/psqueues
      dev-haskell/puremd5
      dev-haskell/quickcheck
      dev-haskell/quickcheck-instances
      dev-haskell/quickcheck-io
      dev-haskell/random
      dev-haskell/raw-strings-qq
      dev-haskell/rebase
      dev-haskell/reducers
      dev-haskell/refact
      dev-haskell/reflection
      dev-haskell/regex-base
      dev-haskell/regex-posix
      dev-haskell/rerebase
      dev-haskell/resourcet
      dev-haskell/retry
      dev-haskell/rfc5051
      dev-haskell/safe
      dev-haskell/scientific
      dev-haskell/selective
      dev-haskell/semigroupoids
      dev-haskell/semigroups
      dev-haskell/setenv
      dev-haskell/setlocale
      dev-haskell/sha
      dev-haskell/silently
      dev-haskell/simple-reflect
      dev-haskell/simple-sendfile
      dev-haskell/skylighting
      dev-haskell/skylighting-core
      dev-haskell/smallcheck
      dev-haskell/socks
      dev-haskell/sop-core
      dev-haskell/split
      dev-haskell/splitmix
      dev-haskell/statevar
      dev-haskell/stm
      dev-haskell/streaming-commons
      dev-haskell/string-qq
      dev-haskell/stringbuilder
      dev-haskell/syb
      dev-haskell/tagged
      dev-haskell/tagsoup
      dev-haskell/tasty
      dev-haskell/tasty-expected-failure
      dev-haskell/tasty-golden
      dev-haskell/tasty-hedgehog
      dev-haskell/tasty-hunit
      dev-haskell/tasty-kat
      dev-haskell/tasty-lua
      dev-haskell/tasty-quickcheck
      dev-haskell/tasty-smallcheck
      dev-haskell/tasty-th
      dev-haskell/temporary
      dev-haskell/temporary-rc
      dev-haskell/template-haskell-compat-v0208
      dev-haskell/terminal-size
      dev-haskell/test-framework
      dev-haskell/test-framework-hunit
      dev-haskell/test-framework-quickcheck2
      dev-haskell/texmath
      dev-haskell/text
      dev-haskell/text-conversions
      dev-haskell/text-icu
      dev-haskell/th-abstraction
      dev-haskell/tf-random
      dev-haskell/time-compat
      dev-haskell/time-manager
      dev-haskell/timeit
      dev-haskell/tls
      dev-haskell/transformers
      dev-haskell/transformers-base
      dev-haskell/transformers-compat
      dev-haskell/tree-diff
      dev-haskell/trifecta
      dev-haskell/type-equality
      dev-haskell/typed-process
      dev-haskell/unbounded-delays
      dev-haskell/utf8-string
      dev-haskell/unicode-transforms
      dev-haskell/unliftio
      dev-haskell/unliftio-core
      dev-haskell/uniplate
      dev-haskell/unix-compat
      dev-haskell/unix-time
      dev-haskell/unordered-containers
      dev-haskell/uuid
      dev-haskell/uuid-types
      dev-haskell/vault
      dev-haskell/vector
      dev-haskell/vector-algorithms
      dev-haskell/vector-builder
      dev-haskell/vector-th-unbox
      dev-haskell/void
      dev-haskell/wai
      dev-haskell/wai-extra
      dev-haskell/wai-logger
      dev-haskell/warp
      dev-haskell/wcwidth
      dev-haskell/word8
      dev-haskell/wl-pprint-annotated
      dev-haskell/x509
      dev-haskell/x509-store
      dev-haskell/x509-system
      dev-haskell/x509-validation
      dev-haskell/xml
      dev-haskell/xml-conduit
      dev-haskell/xml-types
      dev-haskell/yaml
      dev-haskell/zip-archive
      dev-haskell/zlib
  atom: *layers-haskell-packages
  provides:
  - category: "dev-haskell"
    name: "adjunctions"
    version: ">=0"
  - category: "dev-haskell"
    name: "aeson"
    version: ">=0"
  - category: "dev-haskell"
    name: "aeson-diff"
    version: ">=0"
  - category: "dev-haskell"
    name: "aeson-pretty"
    version: ">=0"
  - category: "dev-haskell"
    name: "alex"
    version: ">=0"
  - category: "dev-haskell"
    name: "ansi-terminal"
    version: ">=0"
  - category: "dev-haskell"
    name: "ansi-wl-pprint"
    version: ">=0"
  - category: "dev-haskell"
    name: "appar"
    version: ">=0"
  - category: "dev-haskell"
    name: "asn1-encoding"
    version: ">=0"
  - category: "dev-haskell"
    name: "asn1-parse"
    version: ">=0"
  - category: "dev-haskell"
    name: "asn1-types"
    version: ">=0"
  - category: "dev-haskell"
    name: "async"
    version: ">=0"
  - category: "dev-haskell"
    name: "attoparsec"
    version: ">=0"
  - category: "dev-haskell"
    name: "auto-update"
    version: ">=0"
  - category: "dev-haskell"
    name: "base-compat"
    version: ">=0"
  - category: "dev-haskell"
    name: "base-compat-batteries"
    version: ">=0"
  - category: "dev-haskell"
    name: "base-orphans"
    version: ">=0"
  - category: "dev-haskell"
    name: "base-prelude"
    version: ">=0"
  - category: "dev-haskell"
    name: "base16-bytestring"
    version: ">=0"
  - category: "dev-haskell"
    name: "base64-bytestring"
    version: ">=0"
  - category: "dev-haskell"
    name: "basement"
    version: ">=0"
  - category: "dev-haskell"
    name: "bifunctors"
    version: ">=0"
  - category: "dev-haskell"
    name: "binary"
    version: ">=0"
  - category: "dev-haskell"
    name: "blaze-builder"
    version: ">=0"
  - category: "dev-haskell"
    name: "blaze-html"
    version: ">=0"
  - category: "dev-haskell"
    name: "blaze-markup"
    version: ">=0"
  - category: "dev-haskell"
    name: "bsb-http-chunked"
    version: ">=0"
  - category: "dev-haskell"
    name: "bytestring-builder"
    version: ">=0"
  - category: "dev-haskell"
    name: "byteorder"
    version: ">=0"
  - category: "dev-haskell"
    name: "cabal"
    version: ">=0"
  - category: "dev-haskell"
    name: "cabal-doctest"
    version: ">=0"
  - category: "dev-haskell"
    name: "call-stack"
    version: ">=0"
  - category: "dev-haskell"
    name: "case-insensitive"
    version: ">=0"
  - category: "dev-haskell"
    name: "cereal"
    version: ">=0"
  - category: "dev-haskell"
    name: "charset"
    version: ">=0"
  - category: "dev-haskell"
    name: "citeproc"
    version: ">=0"
  - category: "dev-haskell"
    name: "clock"
    version: ">=0"
  - category: "dev-haskell"
    name: "cmdargs"
    version: ">=0"
  - category: "dev-haskell"
    name: "code-page"
    version: ">=0"
  - category: "dev-haskell"
    name: "colour"
    version: ">=0"
  - category: "dev-haskell"
    name: "comonad"
    version: ">=0"
  - category: "dev-haskell"
    name: "commonmark"
    version: ">=0"
  - category: "dev-haskell"
    name: "commonmark-extensions"
    version: ">=0"
  - category: "dev-haskell"
    name: "commonmark-pandoc"
    version: ">=0"
  - category: "dev-haskell"
    name: "concurrent-output"
    version: ">=0"
  - category: "dev-haskell"
    name: "conduit"
    version: ">=0"
  - category: "dev-haskell"
    name: "conduit-extra"
    version: ">=0"
  - category: "dev-haskell"
    name: "connection"
    version: ">=0"
  - category: "dev-haskell"
    name: "constraints"
    version: ">=0"
  - category: "dev-haskell"
    name: "contravariant"
    version: ">=0"
  - category: "dev-haskell"
    name: "contravariant-extras"
    version: ">=0"
  - category: "dev-haskell"
    name: "cookie"
    version: ">=0"
  - category: "dev-haskell"
    name: "cpphs"
    version: ">=0"
  - category: "dev-haskell"
    name: "crypto-api"
    version: ">=0"
  - category: "dev-haskell"
    name: "crypto-api-tests"
    version: ">=0"
  - category: "dev-haskell"
    name: "cryptohash-md5"
    version: ">=0"
  - category: "dev-haskell"
    name: "cryptohash-sha1"
    version: ">=0"
  - category: "dev-haskell"
    name: "cryptonite"
    version: ">=0"
  - category: "dev-haskell"
    name: "data-default"
    version: ">=0"
  - category: "dev-haskell"
    name: "data-default-class"
    version: ">=0"
  - category: "dev-haskell"
    name: "data-default-instances-containers"
    version: ">=0"
  - category: "dev-haskell"
    name: "data-default-instances-dlist"
    version: ">=0"
  - category: "dev-haskell"
    name: "data-default-instances-old-locale"
    version: ">=0"
  - category: "dev-haskell"
    name: "diff"
    version: ">=0"
  - category: "dev-haskell"
    name: "digest"
    version: ">=0"
  - category: "dev-haskell"
    name: "distributive"
    version: ">=0"
  - category: "dev-haskell"
    name: "dlist"
    version: ">=0"
  - category: "dev-haskell"
    name: "doclayout"
    version: ">=0"
  - category: "dev-haskell"
    name: "doctemplates"
    version: ">=0"
  - category: "dev-haskell"
    name: "doctest"
    version: ">=0"
  - category: "dev-haskell"
    name: "easy-file"
    version: ">=0"
  - category: "dev-haskell"
    name: "edit-distance-vector"
    version: ">=0"
  - category: "dev-haskell"
    name: "either"
    version: ">=0"
  - category: "dev-haskell"
    name: "emojis"
    version: ">=0"
  - category: "dev-haskell"
    name: "entropy"
    version: ">=0"
  - category: "dev-haskell"
    name: "erf"
    version: ">=0"
  - category: "dev-haskell"
    name: "errors"
    version: ">=0"
  - category: "dev-haskell"
    name: "exceptions"
    version: ">=0"
  - category: "dev-haskell"
    name: "extensible-exceptions"
    version: ">=0"
  - category: "dev-haskell"
    name: "extra"
    version: ">=0"
  - category: "dev-haskell"
    name: "fail"
    version: ">=0"
  - category: "dev-haskell"
    name: "fast-logger"
    version: ">=0"
  - category: "dev-haskell"
    name: "file-embed"
    version: ">=0"
  - category: "dev-haskell"
    name: "filepattern"
    version: ">=0"
  - category: "dev-haskell"
    name: "fingertree"
    version: ">=0"
  - category: "dev-haskell"
    name: "foldl"
    version: ">=0"
  - category: "dev-haskell"
    name: "foundation"
    version: ">=0"
  - category: "dev-haskell"
    name: "free"
    version: ">=0"
  - category: "dev-haskell"
    name: "generic-deriving"
    version: ">=0"
  - category: "dev-haskell"
    name: "generics-sop"
    version: ">=0"
  - category: "dev-haskell"
    name: "getopt-generics"
    version: ">=0"
  - category: "dev-haskell"
    name: "ghc-lib-parser"
    version: ">=0"
  - category: "dev-haskell"
    name: "ghc-lib-parser-ex"
    version: ">=0"
  - category: "dev-haskell"
    name: "ghc-paths"
    version: ">=0"
  - category: "dev-haskell"
    name: "glob"
    version: ">=0"
  - category: "dev-haskell"
    name: "haddock-library"
    version: ">=0"
  - category: "dev-haskell"
    name: "happy"
    version: ">=0"
  - category: "dev-haskell"
    name: "hashable"
    version: ">=0"
  - category: "dev-haskell"
    name: "hashable-time"
    version: ">=0"
  - category: "dev-haskell"
    name: "hedgehog"
    version: ">=0"
  - category: "dev-haskell"
    name: "haskell-lexer"
    version: ">=0"
  - category: "dev-haskell"
    name: "haskell-src-exts"
    version: ">=0"
  - category: "dev-haskell"
    name: "hlint"
    version: ">=0"
  - category: "dev-haskell"
    name: "hostname"
    version: ">=0"
  - category: "dev-haskell"
    name: "hourglass"
    version: ">=0"
  - category: "dev-haskell"
    name: "hs-bibutils"
    version: ">=0"
  - category: "dev-haskell"
    name: "hscolour"
    version: ">=0"
  - category: "dev-haskell"
    name: "hslua"
    version: ">=0"
  - category: "dev-haskell"
    name: "hslua-module-path"
    version: ">=0"
  - category: "dev-haskell"
    name: "hslua-module-system"
    version: ">=0"
  - category: "dev-haskell"
    name: "hslua-module-text"
    version: ">=0"
  - category: "dev-haskell"
    name: "hspec"
    version: ">=0"
  - category: "dev-haskell"
    name: "hspec-core"
    version: ">=0"
  - category: "dev-haskell"
    name: "hspec-discover"
    version: ">=0"
  - category: "dev-haskell"
    name: "hspec-expectations"
    version: ">=0"
  - category: "dev-haskell"
    name: "hspec-meta"
    version: ">=0"
  - category: "dev-haskell"
    name: "hsyaml"
    version: ">=0"
  - category: "dev-haskell"
    name: "hsyaml-aeson"
    version: ">=0"
  - category: "dev-haskell"
    name: "http"
    version: ">=0"
  - category: "dev-haskell"
    name: "http-client"
    version: ">=0"
  - category: "dev-haskell"
    name: "http-client-tls"
    version: ">=0"
  - category: "dev-haskell"
    name: "http-date"
    version: ">=0"
  - category: "dev-haskell"
    name: "http-types"
    version: ">=0"
  - category: "dev-haskell"
    name: "http2"
    version: ">=0"
  - category: "dev-haskell"
    name: "httpd-shed"
    version: ">=0"
  - category: "dev-haskell"
    name: "hunit"
    version: ">=0"
  - category: "dev-haskell"
    name: "indexed-traversable"
    version: ">=0"
  - category: "dev-haskell"
    name: "integer-logarithms"
    version: ">=0"
  - category: "dev-haskell"
    name: "invariant"
    version: ">=0"
  - category: "dev-haskell"
    name: "iproute"
    version: ">=0"
  - category: "dev-haskell"
    name: "ipynb"
    version: ">=0"
  - category: "dev-haskell"
    name: "jira-wiki-markup"
    version: ">=0"
  - category: "dev-haskell"
    name: "juicypixels"
    version: ">=0"
  - category: "dev-haskell"
    name: "kan-extensions"
    version: ">=0"
  - category: "dev-haskell"
    name: "lens"
    version: ">=0"
  - category: "dev-haskell"
    name: "libyaml"
    version: ">=0"
  - category: "dev-haskell"
    name: "lifted-async"
    version: ">=0"
  - category: "dev-haskell"
    name: "lifted-base"
    version: ">=0"
  - category: "dev-haskell"
    name: "logging-facade"
    version: ">=0"
  - category: "dev-haskell"
    name: "logict"
    version: ">=0"
  - category: "dev-haskell"
    name: "math-functions"
    version: ">=0"
  - category: "dev-haskell"
    name: "memory"
    version: ">=0"
  - category: "dev-haskell"
    name: "memotrie"
    version: ">=0"
  - category: "dev-haskell"
    name: "microlens"
    version: ">=0"
  - category: "dev-haskell"
    name: "microlens-aeson"
    version: ">=0"
  - category: "dev-haskell"
    name: "mime-types"
    version: ">=0"
  - category: "dev-haskell"
    name: "mmorph"
    version: ">=0"
  - category: "dev-haskell"
    name: "mockery"
    version: ">=0"
  - category: "dev-haskell"
    name: "monad-control"
    version: ">=0"
  - category: "dev-haskell"
    name: "mono-traversable"
    version: ">=0"
  - category: "dev-haskell"
    name: "mtl"
    version: ">=0"
  - category: "dev-haskell"
    name: "mwc-random"
    version: ">=0"
  - category: "dev-haskell"
    name: "nanospec"
    version: ">=0"
  - category: "dev-haskell"
    name: "nats"
    version: ">=0"
  - category: "dev-haskell"
    name: "network"
    version: ">=0"
  - category: "dev-haskell"
    name: "network-bsd"
    version: ">=0"
  - category: "dev-haskell"
    name: "network-byte-order"
    version: ">=0"
  - category: "dev-haskell"
    name: "network-uri"
    version: ">=0"
  - category: "dev-haskell"
    name: "network-info"
    version: ">=0"
  - category: "dev-haskell"
    name: "newtype-generics"
    version: ">=0"
  - category: "dev-haskell"
    name: "old-locale"
    version: ">=0"
  - category: "dev-haskell"
    name: "old-time"
    version: ">=0"
  - category: "dev-haskell"
    name: "optparse-applicative"
    version: ">=0"
  - category: "dev-haskell"
    name: "pandoc-types"
    version: ">=0"
  - category: "dev-haskell"
    name: "parallel"
    version: ">=0"
  - category: "dev-haskell"
    name: "parsec"
    version: ">=0"
  - category: "dev-haskell"
    name: "parsers"
    version: ">=0"
  - category: "dev-haskell"
    name: "pcre-light"
    version: ">=0"
  - category: "dev-haskell"
    name: "pem"
    version: ">=0"
  - category: "dev-haskell"
    name: "pgp-wordlist"
    version: ">=0"
  - category: "dev-haskell"
    name: "polyparse"
    version: ">=0"
  - category: "dev-haskell"
    name: "pretty-show"
    version: ">=0"
  - category: "dev-haskell"
    name: "primitive"
    version: ">=0"
  - category: "dev-haskell"
    name: "prettyprinter"
    version: ">=0"
  - category: "dev-haskell"
    name: "prettyprinter-ansi-terminal"
    version: ">=0"
  - category: "dev-haskell"
    name: "profunctors"
    version: ">=0"
  - category: "dev-haskell"
    name: "psqueues"
    version: ">=0"
  - category: "dev-haskell"
    name: "puremd5"
    version: ">=0"
  - category: "dev-haskell"
    name: "quickcheck"
    version: ">=0"
  - category: "dev-haskell"
    name: "quickcheck-instances"
    version: ">=0"
  - category: "dev-haskell"
    name: "quickcheck-io"
    version: ">=0"
  - category: "dev-haskell"
    name: "random"
    version: ">=0"
  - category: "dev-haskell"
    name: "raw-strings-qq"
    version: ">=0"
  - category: "dev-haskell"
    name: "rebase"
    version: ">=0"
  - category: "dev-haskell"
    name: "reducers"
    version: ">=0"
  - category: "dev-haskell"
    name: "refact"
    version: ">=0"
  - category: "dev-haskell"
    name: "reflection"
    version: ">=0"
  - category: "dev-haskell"
    name: "regex-base"
    version: ">=0"
  - category: "dev-haskell"
    name: "regex-posix"
    version: ">=0"
  - category: "dev-haskell"
    name: "rerebase"
    version: ">=0"
  - category: "dev-haskell"
    name: "resourcet"
    version: ">=0"
  - category: "dev-haskell"
    name: "retry"
    version: ">=0"
  - category: "dev-haskell"
    name: "rfc5051"
    version: ">=0"
  - category: "dev-haskell"
    name: "safe"
    version: ">=0"
  - category: "dev-haskell"
    name: "scientific"
    version: ">=0"
  - category: "dev-haskell"
    name: "selective"
    version: ">=0"
  - category: "dev-haskell"
    name: "semigroupoids"
    version: ">=0"
  - category: "dev-haskell"
    name: "semigroups"
    version: ">=0"
  - category: "dev-haskell"
    name: "setenv"
    version: ">=0"
  - category: "dev-haskell"
    name: "setlocale"
    version: ">=0"
  - category: "dev-haskell"
    name: "sha"
    version: ">=0"
  - category: "dev-haskell"
    name: "silently"
    version: ">=0"
  - category: "dev-haskell"
    name: "simple-reflect"
    version: ">=0"
  - category: "dev-haskell"
    name: "simple-sendfile"
    version: ">=0"
  - category: "dev-haskell"
    name: "skylighting"
    version: ">=0"
  - category: "dev-haskell"
    name: "skylighting-core"
    version: ">=0"
  - category: "dev-haskell"
    name: "smallcheck"
    version: ">=0"
  - category: "dev-haskell"
    name: "socks"
    version: ">=0"
  - category: "dev-haskell"
    name: "sop-core"
    version: ">=0"
  - category: "dev-haskell"
    name: "split"
    version: ">=0"
  - category: "dev-haskell"
    name: "splitmix"
    version: ">=0"
  - category: "dev-haskell"
    name: "statevar"
    version: ">=0"
  - category: "dev-haskell"
    name: "stm"
    version: ">=0"
  - category: "dev-haskell"
    name: "streaming-commons"
    version: ">=0"
  - category: "dev-haskell"
    name: "string-qq"
    version: ">=0"
  - category: "dev-haskell"
    name: "stringbuilder"
    version: ">=0"
  - category: "dev-haskell"
    name: "syb"
    version: ">=0"
  - category: "dev-haskell"
    name: "tagged"
    version: ">=0"
  - category: "dev-haskell"
    name: "tagsoup"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-expected-failure"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-golden"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-hedgehog"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-hunit"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-kat"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-lua"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-quickcheck"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-smallcheck"
    version: ">=0"
  - category: "dev-haskell"
    name: "tasty-th"
    version: ">=0"
  - category: "dev-haskell"
    name: "template-haskell-compat-v0208"
    version: ">=0"
  - category: "dev-haskell"
    name: "temporary"
    version: ">=0"
  - category: "dev-haskell"
    name: "temporary-rc"
    version: ">=0"
  - category: "dev-haskell"
    name: "terminal-size"
    version: ">=0"
  - category: "dev-haskell"
    name: "test-framework"
    version: ">=0"
  - category: "dev-haskell"
    name: "test-framework-hunit"
    version: ">=0"
  - category: "dev-haskell"
    name: "test-framework-quickcheck2"
    version: ">=0"
  - category: "dev-haskell"
    name: "texmath"
    version: ">=0"
  - category: "dev-haskell"
    name: "text"
    version: ">=0"
  - category: "dev-haskell"
    name: "text-conversions"
    version: ">=0"
  - category: "dev-haskell"
    name: "text-icu"
    version: ">=0"
  - category: "dev-haskell"
    name: "th-abstraction"
    version: ">=0"
  - category: "dev-haskell"
    name: "tf-random"
    version: ">=0"
  - category: "dev-haskell"
    name: "time-compat"
    version: ">=0"
  - category: "dev-haskell"
    name: "time-manager"
    version: ">=0"
  - category: "dev-haskell"
    name: "timeit"
    version: ">=0"
  - category: "dev-haskell"
    name: "tls"
    version: ">=0"
  - category: "dev-haskell"
    name: "transformers"
    version: ">=0"
  - category: "dev-haskell"
    name: "transformers-base"
    version: ">=0"
  - category: "dev-haskell"
    name: "transformers-compat"
    version: ">=0"
  - category: "dev-haskell"
    name: "tree-diff"
    version: ">=0"
  - category: "dev-haskell"
    name: "trifecta"
    version: ">=0"
  - category: "dev-haskell"
    name: "type-equality"
    version: ">=0"
  - category: "dev-haskell"
    name: "typed-process"
    version: ">=0"
  - category: "dev-haskell"
    name: "unbounded-delays"
    version: ">=0"
  - category: "dev-haskell"
    name: "utf8-string"
    version: ">=0"
  - category: "dev-haskell"
    name: "unicode-transforms"
    version: ">=0"
  - category: "dev-haskell"
    name: "unliftio"
    version: ">=0"
  - category: "dev-haskell"
    name: "unliftio-core"
    version: ">=0"
  - category: "dev-haskell"
    name: "uniplate"
    version: ">=0"
  - category: "dev-haskell"
    name: "unix-compat"
    version: ">=0"
  - category: "dev-haskell"
    name: "unix-time"
    version: ">=0"
  - category: "dev-haskell"
    name: "unordered-containers"
    version: ">=0"
  - category: "dev-haskell"
    name: "uuid"
    version: ">=0"
  - category: "dev-haskell"
    name: "uuid-types"
    version: ">=0"
  - category: "dev-haskell"
    name: "vault"
    version: ">=0"
  - category: "dev-haskell"
    name: "vector"
    version: ">=0"
  - category: "dev-haskell"
    name: "vector-algorithms"
    version: ">=0"
  - category: "dev-haskell"
    name: "vector-builder"
    version: ">=0"
  - category: "dev-haskell"
    name: "vector-th-unbox"
    version: ">=0"
  - category: "dev-haskell"
    name: "void"
    version: ">=0"
  - category: "dev-haskell"
    name: "wai"
    version: ">=0"
  - category: "dev-haskell"
    name: "wai-extra"
    version: ">=0"
  - category: "dev-haskell"
    name: "wai-logger"
    version: ">=0"
  - category: "dev-haskell"
    name: "warp"
    version: ">=0"
  - category: "dev-haskell"
    name: "wcwidth"
    version: ">=0"
  - category: "dev-haskell"
    name: "word8"
    version: ">=0"
  - category: "dev-haskell"
    name: "wl-pprint-annotated"
    version: ">=0"
  - category: "dev-haskell"
    name: "x509"
    version: ">=0"
  - category: "dev-haskell"
    name: "x509-store"
    version: ">=0"
  - category: "dev-haskell"
    name: "x509-system"
    version: ">=0"
  - category: "dev-haskell"
    name: "x509-validation"
    version: ">=0"
  - category: "dev-haskell"
    name: "xml"
    version: ">=0"
  - category: "dev-haskell"
    name: "xml-conduit"
    version: ">=0"
  - category: "dev-haskell"
    name: "xml-types"
    version: ">=0"
  - category: "dev-haskell"
    name: "yaml"
    version: ">=0"
  - category: "dev-haskell"
    name: "zip-archive"
    version: ">=0"
  - category: "dev-haskell"
    name: "zlib"
    version: ">=0"
  requires:
  - <<: *layers-X
  - <<: *layers-ghc
  build_requires:
  - <<: *buildbase-X
  - <<: *layerbase-ghc
  requires_final_images: true
  hidden: true

The package that fails:

- &apps-pandoc
  category: "apps"
  name: "pandoc"
  version: "2.13"
  labels:
    emerge.jobs: "1"
    emerge.packages: >-
      app-text/pandoc
  atom: "app-text/pandoc"
  provides:
  - category: "app-text"
    name: "pandoc"
    version: ">=0"
  requires:
  - <<: *layers-X
  - <<: *layers-haskell
  build_requires:
  - <<: *buildbase-X
  - <<: *layerbase-ghc
  - <<: *layerbase-haskell
  requires_final_images: true

Expected behavior

Build succeeds.

Logs

https://github.com/mocaccinoOS/community-repository/runs/6484389795?check_suite_focus=true#step:9:1794

Additional context

msdobrescu commented 2 years ago

So, why is it trying to use the layer (from runtime deps) instead of the layerbase (from the build deps), for pandoc package?

msdobrescu commented 2 years ago

Checked against Luet 0.32.1-gfea872aba055c5fa700c4ca3330cdc08e086ba42 2022-05-29, it's still an issue.

msdobrescu commented 2 years ago

Checked against Luet 0.32.2-gbac9bac25f6aa99507e42d0b0ec56b35363b7c62 2022-06-06, it's still an issue.

msdobrescu commented 2 years ago

Tried once more by using anchors like:

- &layers-ghc
  category: "layers"
  name: "ghc"
  version: ">=0"
- &layerbase-ghc
  category: "layerbase"
  name: "ghc"
  version: ">=0"

- &layers-haskell
  category: "layers"
  name: "haskell"
  version: ">=0"
- &layerbase-haskell
  category: "layers"
  name: "haskell"
  version: ">=0"

Fails the same.

msdobrescu commented 2 years ago

A local build debug log.

build.log

It looks like it needs ghc layer as dependency of haskell layerbase.

mudler commented 2 years ago

mmm I don't see the layer/ghc under packages? https://github.com/mocaccinoOS/community-repository/blob/main/packages/apps/collection.yaml I see it in the anchors, but not sure if it gets built at all?

msdobrescu commented 2 years ago

Managed to skip this error when dropping subpackages usage.

Using subpackages seems to not work in this case, although not clear why, as layers were defined as subpackages and not the layer bases which are used to build. An enhancement to treat subpackages as the main packages would be great, if possible.

I think the explanation for this problems is this: haskell was "hard-linked" to ghc by anchors to the definition directly, so it has found it regardless a typo in its category, but pandoc is in another collection, so was "soft-linked" to them and failed building Although I have corrected ghc and haskell definitions, finding the typo when changed haskell definition to be "soft-linked" to ghc and failed, rebuilt them and worked, I've forgotten to increase pandoc's version. I think this was the reason to fail again and again. Is it possible luet was reusing something from the old build due to the same pandoc version, even though it failed at the time building that version? Increasing pandoc's version seems to change the build process. Makes sense?