Subject: Re: cronie+obstack broken dependency

From: Mark Hills <[email-masked]>
Date: Fri, 19 Feb 2021 12:10:13 +0000 (GMT)

(re-sending without typo on CC address)

cronie depends on musl-obstack, but the dependency has broken.

A developer helpfully bumped cronie $pkgrel to rebuild after musl-obstack 
changed.

Now on install (alpine 3.13.2):

  $ doas apk add cronie@testing
  ERROR: unable to select packages:
    so:libobstack.so.1 (no such package):
      required by: cronie-1.5.5-r1[so:libobstack.so.1]

This is the current musl-obstack:

  $ doas apk manifest musl-obstack
  sha1:f92737db8fd75758d48d9091cf4be8c0ddee0a48  usr/lib/libobstack.so.0
  sha1:50d5abcd4d89d8ba2aa095fdccd4ba7eddd03145  usr/lib/libobstack.so.0.0.0

So how come the dependencies got out of sync, and how to fix this?

It seems the other developer was covering exactly this case.

Doing abuild from the aports/testing/cronie is all ok:

  $ doas apk add ./cronie-1.5.5-r1.apk
  $ ldd /usr/sbin/anacron
          /lib/ld-musl-x86_64.so.1 (0x7ffa18237000)
          libobstack.so.0 => /usr/lib/libobstack.so.0 (0x7ffa18228000)
          libc.musl-x86_64.so.1 => /lib/ld-musl-x86_64.so.1 (0x7ffa18237000)

Maybe relevant that the libobstack .so version has gone backwards.

-- 
Mark

---

From: "Jacob Thrane Lund" <[email-masked]>
Date: Fri, 19 Feb 2021 14:14:49 +0100

> Maybe relevant that the libobstack .so version has gone backwards.
 
Hi Mark,
 
The issue you are experiencing is caused by mixing stable and edge.

If you want to use cronie on v3.13 you also need to provide a way for apk to pull in musl-obstack from the edge main repo.

/ # apk add cronie@edge-testing musl-obstack@edge-main
fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
(1/2) Installing musl-obstack@edge-main (1.2.2-r0)
(2/2) Installing cronie@edge-testing (1.5.5-r1)
Executing busybox-1.32.1-r2.trigger
OK: 13 MiB in 20 packages

Hope it helps.

/TBK aka Jacob

---

From: Mark Hills <[email-masked]>
Date: Fri, 19 Feb 2021 17:14:41 +0000 (GMT)

> >       required by: cronie-1.5.5-r1[so:libobstack.so.1]
[...]
> If you want to use cronie on v3.13 you also need to provide a way for 
> apk to pull in musl-obstack from the edge main repo.
> 

Of course, thank you. That makes a lot of sense now.

I was hoping to use the upstream package on production systems, and 
therefore contribute some testing.

But it sounds like I will need to do our own builds from the same 
APKBUILD.

-- 
Mark