Package: libmustache-d-dev
Version: 0.1.1-1
Severity: important

Hi!

I'm trying to deploy asgen on a Canonical cloud instance. These have
restricted internet access, meaning they can't download random stuff for
the internet. That exposed to me this bug:

  ubuntu@asgen:~/appstream-generator$ dub build --parallel
  Root package appstream-generator contains reference to invalid package
  mustache-d >=0.1.1 <0.2.0
  ubuntu@asgen:~/appstream-generator$ apt-cache policy libmustache-d-dev # but 
it *is* installed
  libmustache-d-dev:
    Installed: 0.1.1-1~ubuntu16.04.1 # this is a no-change backport for Xenial
    Candidate: 0.1.1-1~ubuntu16.04.1
    Version table:
   *** 0.1.1-1~ubuntu16.04.1 100
          100 /var/lib/dpkg/status

...switching to unstable to verify this same problem exists on Debian

  (sid-amd64)root@nightingale:/# apt install libmustache-d-dev
  Reading package lists... Done
  Building dependency tree       
  Reading state information... Done
  The following NEW packages will be installed:
    libmustache-d-dev
  0 upgraded, 1 newly installed, 0 to remove and 60 not upgraded.
  Need to get 0 B/39.9 kB of archives.
  After this operation, 332 kB of additional disk space will be used.
  Get:1 file:/srv/mirrors/debian sid/main amd64 libmustache-d-dev amd64 0.1.1-1 
[39.9 kB]
  Selecting previously unselected package libmustache-d-dev.
  (Reading database ... 15059 files and directories currently installed.)
  Preparing to unpack .../libmustache-d-dev_0.1.1-1_amd64.deb ...
  Unpacking libmustache-d-dev (0.1.1-1) ...
  Setting up libmustache-d-dev (0.1.1-1) ...
  (sid-amd64)root@nightingale:/# dub list
  Packages present in the system and known to dub:

  (sid-amd64)root@nightingale:/# 

adding the directory directly makes it available

  (sid-amd64)root@nightingale:/# dub add-local /usr/include/d/mustache-d/ 0.1.1 
# need the version, dub add-local can't figure it out (no version field?)
  Registered package: mustache-d (version: 0.1.1)
  (sid-amd64)root@nightingale:/# dub list
  Packages present in the system and known to dub:
    mustache-d 0.1.1: /usr/include/d/mustache-d/

...and doing the same on the above Xenial box makes dub build get
further, but then it fails with

  Target 
'/usr/include/d/mustache-d/.dub/build/library-debug-linux.posix-x86_64-gdc_2066-90648F9B9A177A111EF90E484ED8CCEC/libmustache-d.a'
 doesn't exist, need rebuild.
  /usr/include/d/mustache-d/.dub: Permission denied

which seems to want `/usr/lib/x86_64-linux-gnu/libmustache-d.a', but I don't
know how to make dub look there and this bug is already long enough. :)

I (obviously, by this bug report) don't know how you're supposed to register
packages system-wide, but I think that mustache-d should do this either
directly or by dub itself somehow. `dub build --verbose' shows that it's
looking at a file `/var/lib/dub/packages/local-packages.json', so maybe it
should go in there in some way?

Cheers,

-- 
Iain Lane                                  [ [email protected] ]
Debian Developer                                   [ [email protected] ]
Ubuntu Developer                                   [ [email protected] ]

Reply via email to