The best place to put Ubuntu packages is in a PPA
(personal package archive) on Launchpad. Then anyone can install
them. The OpenSuse build service serves a similar purpose.
Justin
On 27 Jun 2013 16:26, "Guilhem Saurel"
< gsaurel@xxxxxxxxxxxxxxxxxx>
wrote:
Hi,
As a new intern at Sierra Wireless, my first task was to try
to package Mihini so that it would be faster and easier to
install.
This task is in the tracker, with some precisions: https://bugs.eclipse.org/bugs/show_bug.cgi?id=408321
I choosed to use CPack as we already use CMake, so the main
idea was to tell to CPack to install the files of runtime/ in
/opt/mihini.
I have also written a few scripts (init for SysV &
systemd, and {post,pre}{inst,rm}) which are mainly in
porting/{debian,archlinux}, and manage things like creating a
mihini user, putting R/W folders in /var and creating the
right config file for ldconfig.
You can find my work here : https://github.com/nim65s/mihini-repo/tree/CPack
The packages for debian i386 & armhf (raspbian) seems to
work (you can find them here : http://saurel.me/sierra,
or build them with a «make package», as it's described here :
http://wiki.eclipse.org/Mihini/Cross_Compilation).
I also uploaded an AUR package, which has been tested on an
x86_64 ArchLinux, and as it builds everything from the git
repository, it should work on any architecture.
Now I'm working on the .rpm, and then I'm gonna make some
tests on other embedded platforms (RasperryPi/ArchLinux,
BeagleBone/Ångström,…)
Then, if would be great if someone could give me a more
official location to put the .deb & .rpm, to update http://wiki.eclipse.org/Mihini/Install_Mihini.
I would also appreciate any tests/comments/help/etc.
NB:
- The .tar.gz doesn't include any {post,pre}{inst,rm} script
- The R/W files in /var (apps, update & persist) will not
be erased on uninstall
- the sysV init has a «purge» command, which cleans persist/*
- The actual way of telling CPack the location of each file we
want in the final installation is kind of ugly (see all the
"INSTALL" lines in https://github.com/nim65s/mihini-repo/commit/3c7bd961c4451dc63395a2bd3edb6c3b0843adad)
; I tried to use a higher level method, with something like
"INSTALL(DIRECTORY luafwk/ DESTINATION lua FILES_MATCHING
PATTERN '*.lua')", and the same for the *.h, and it works
well, but we have ~250 files which don't go to the right place
in the final folder (ie: it's not the same place as in
runtime/).
- The generation of the .deb of the default target would work
only if you have dpkg, as we need to know the architecture. If
you don't have it, just put 'SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE
"<arch>")' in cmake/toolchain.default.cmake
- I added files for the cross compilation with
raspberrypi-linaro. Of course, you will need the toolchain if
you want to use it. In this case, check http://wiki.eclipse.org/Mihini/Cross_Compilation
- If some day we could use a default lua VM, it would be
possible to put all the files of the project in a more
standard place on UNIX system, like /usr/{bin,lib,include} and
so on.
- All the "tests" I was talking about are only the things
covered in http://wiki.eclipse.org/Mihini/Run_Mihini_on_an_Open_Hardware_platform
; I will try other things soon.
regards,
Guilhem Saurel.
_______________________________________________
mihini-dev mailing list
mihini-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/mihini-dev
|