takikawa/racket-ppa

v8.0 ppa fails to install certain packages

pmatos opened this issue · 2 comments

Unsure if this is widespread but installing http-easy with the ppa fails with:

make-directory: cannot make directory
  path: /usr/share/racket/pkgs/scribble-lib/scribble/doc/lang/compiled
  system error: Permission denied; errno=13
  compilation context...:
   /home/test/.local/share/racket/8.0/pkgs/memoize/memoize/memoize.scrbl
  context...:
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:608:0: compile-zo*
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:407:15
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:396:12: build
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:372:0: maybe-compile-zo
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:206:0: compile-root
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:142:4: compilation-manager-load-handler
   /usr/share/racket/collects/syntax/private/modcode-noctc.rkt:36:2: reader
   /usr/share/racket/collects/syntax/private/modcode-noctc.rkt:259:5: compile-one
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:608:0: compile-zo*
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:407:15
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:396:12: build
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:372:0: maybe-compile-zo
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:206:0: compile-root
   /usr/share/racket/collects/compiler/private/cm-minimal.rkt:102:4
   /usr/share/racket/collects/setup/parallel-build.rkt:325:9
   /usr/share/racket/collects/setup/parallel-do.rkt:455:25

You can reproduce this with docker docker run -ti ubuntu:20.10 /bin/bash. Then run the following commands:

apt-get update
apt install software-properties-common
add-apt-repository ppa:plt/racket
apt-get update
apt-get install racket
useradd -ms /bin/bash test
su - test
raco pkg install --auto http-easy

Thanks for the report, sorry I didn't get around to testing it until now. This is still reproducible with my in-testing 8.1 builds.

I see why the compiler collects code is error this way (tries to touch a file that is only admin writable) but I'm not sure why this specifically triggers in the PPA build but not in a standard Linux or unix built-from-source install. Going to investigate a bit more before releasing the 8.1 build...

In the end I think this was an issue with timestamps in the build tarball which happened due to minor issues in the package changelog. It should be fixed for the v8.1 packages that are being uploaded now.