Opened 9 years ago
Closed 8 years ago
#1348 closed defect (fixed)
tilemill: failure to install on ubu 14.04 from ppa due to missing init.d script
|Reported by:||hamish||Owned by:|
installing tilemill from the developmentseed ppa fails on 14.04 with:
invoke-rc.d: unknown initscript, /etc/init.d/tilemill not found. dpkg: error processing package tilemill (--configure): subprocess installed post-installation script returned error exit status 100
outside of a chroot it works fine.
note we were having similar trouble with libpam-systemd recently and in that case had to hack the .postinst script by hand not to exit with an error. launchpad bug exists for that, root cause still unknown.
disabling the tilemill installer until this is fixed since is makes all apt-get installs that follow exit with an error code.
Change history (14)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
|Priority:||normal → major|
comment:3 by , 9 years ago
Still not working in 14.04.1 builds
comment:4 by , 9 years ago
here is the problematic section of the /var/lib/dpkg/info/tilemill.postinst script:
... # Automatically added by dh_installinit if [ -x "/etc/init.d/tilemill" ] || [ -e "/etc/init/tilemill.conf" ]; then if [ ! -e "/etc/init/tilemill.conf" ]; then update-rc.d tilemill defaults >/dev/null fi invoke-rc.d tilemill start || exit $? fi # End automatically added section # Automatically added by dh_installinit update-rc.d -f tilemill remove >/dev/null || exit $? # End automatically added section
exit $? to
exit 0 will allow it to get past, probably we have to try to install it, let it break, patch the above file, then try again with 'apt-get -f install'. I'm not sure why/if it needs to actually run it at install time, and what doesn't get done if it doesn't happen.
note classic /etc/init.d/tilemill does not exist, but /etc/init/tilemill.conf does.
maybe if we just do
service tilemill start && service tilemill stop at the end of the install script it will pick up whatever the code snippet above is trying to do?
comment:5 by , 9 years ago
TileMill has two modes: 1) being run headless using upstart (service tilemill start), and 2) the more normal/common way which is to simply start the application via the Ubuntu launcher like other apps. So this postinstall is completely unneeded. Also I don't understand quite what you pasted - it does not look like the actual postinstall from TileMill: https://github.com/mapbox/tilemill/blob/master/platforms/ubuntu/debian/tilemill.postinst
comment:6 by , 9 years ago
the TileMill install on the Live is here http://svn.osgeo.org/osgeo/livedvd/gisvm/trunk/bin/install_tilemill.sh
comment:7 by , 9 years ago
Hmm, springmeyer is correct that is not in tilemill.postint We are using the ppa:developmentseed/mapbox https://launchpad.net/~developmentseed/+archive/ubuntu/mapbox/+sourcepub/4151898/+listing-archive-extra
And looking in https://launchpad.net/~developmentseed/+archive/ubuntu/mapbox/+files/tilemill_0.10.2%7Etrusty3.tar.gz Has nothing concerning init.d
comment:8 by , 9 years ago
ok, so AFAIK we don't need to worry about headless server use for the Live disc, we're mostly concerned with the interactive GUI.
The snippet I posted above is just the end of the /var/lib/dpkg/info/tilemill.postinst script file, as the comment says "Automatically added by dh_installinit", so not expected to be in the upstream copy, but present in the final installed version of the file.
I'll try for the install-in-chroot, let it break, do the edit with sed to make the error non-fatal, then try for an apt-get self-repair and see if that gets past the trouble spot. Done in r11819, we'll wait for the next nightly build to see how things went.
So this is most probably very similar ubu 14.04 chroot vs. init script trouble we saw with libpam-serviced and whoopsie in trac #1334. (see live disc's setup.sh for the work-around)
comment:9 by , 9 years ago
installed ok in nightly iso build r11826. ugly hack needed to do that, but the crisis is over.
I didn't test it much, just opened the app.
comment:10 by , 9 years ago
ps- we could save some much needed space on the disc if the tilemill package depended on libwebkitgtk-3.0.0 instead of libwebkitgtk-1.0.0. (updated API)
comment:11 by , 9 years ago
|Milestone:||OSGeoLive8.0 → OSGeoLive8.5|
|Priority:||major → normal|
Confirmed patched in build . Leaving this open for the 8.5 development.
comment:12 by , 8 years ago
|Priority:||normal → critical|
comment:13 by , 8 years ago
comment:14 by , 8 years ago
|Status:||new → closed|
a small search shows this post: https://github.com/mapnik/mapnik/wiki/UbuntuInstallation
for context, boost on Live8 appears to be at v54