wok icon indicating copy to clipboard operation
wok copied to clipboard

Ubuntu - Distrubution packaging

Open alinefm opened this issue 9 years ago • 6 comments

Identify what is needed to have wok package included in the Ubuntu official repositories.

alinefm avatar Jan 11 '16 12:01 alinefm

Hi Aline, So mainly, what is needed is

  1. the debian/ directory to run dpkg-buildpackage which describe the content, copyright, technical build, and is the official way to built packages. The way it's done atm will not be accepted.
  2. a RFS(request for sponsorship)/ITP(intent to package) bug on Debian bugzilla because Ubuntu will just sponsor this bug in Debian and then will include it in Ubuntu (or include it straight away before Debian inclusion, but in any case, Ubuntu dev. will want a bug on Debian bugzilla first). This bug will ask to include the software in the Debian archive and the above tarball of the debian/ directory should be attached or provided on debian.mentors.net .
  3. as few patches as possible in the debian/patches directory : those patches are applied on top of the software source to fix major issues or to comply with Debian/Ubuntu policy. These patches should be as minimal as possible and be upstreamed when possible.
  4. provide all dependency packaging if some software used to build the package are not in the Debian/Ubuntu archive.

As you know, I've been working on the packaging of kimchi/ginger and now also on wok and gingerbase for debian and ubuntu. kimchi 1.5.0 is actually already included in Ubuntu : https://launchpad.net/ubuntu/+source/kimchi and I'm pushing on debian side as well : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=800966 .

I saw kimchi/wok is undergoing a redesign and I've created the packing for Debian/Ubuntu for wok/kimchi/gingerbase 2.0.0 last week. It needs a bit of improvement but :

  1. I can provide debian/ packaging
  2. I can open ITP/RFS bugs missing, that is for gingerbase and wok which are new.
  3. patches are not big, but we can discuss what we can/cannot include upstream
  4. it should be ok; I saw you are now using sassc to build css from scss and packaged it for Debian and it got accepted already : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=804697

Fred

frediz avatar Jan 12 '16 11:01 frediz

With the new version 2.1.0 of wok/kimchi/gingerbase, I updated my packaging. I'm still having a few issues, which will prevent adoption of wok/related projects into Debian/Ubuntu especially :

  • relative URLS : original explanation of the need/policy : http://lists.ovirt.org/pipermail/kimchi-devel/2015-February/009840.html and some more details : http://lists.ovirt.org/pipermail/kimchi-devel/2015-March/009966.html At the moment there are still a few resources (some fonts, images, urls) that are not found when relocating website to https://somehost/wok/ .
  • integration with the webserver : according to Debian policy which Ubuntu uses too, wok shouldn't start it's own webserver, but rather should integrate within the existing webserver and drop a conf file within the /etc/nginx/ configuration directory (see 5.1.2 : https://webapps-common.alioth.debian.org/draft/html/ch-httpd.html#s-httpd-register) . I understand that wok is a userfriendly app, which is why it starts all it needs including the webserver, but Debian and Ubuntu's view is to build a whole around the webserver. So wok should be startable without launching nginx. I have a patch, from Julien Goodwin : http://lists.ovirt.org/pipermail/kimchi-devel/2015-March/010025.html. It's just a variable that by default makes wok have the current behaviour and else disable launching of nginx, as in Debian/Ubuntu there will already be an instance of nginx running on the server.

These are currently my main concern.

frediz avatar Apr 18 '16 17:04 frediz

Hello @frediz

In addition to your points, we also have the issue https://github.com/kimchi-project/wok/issues/97 - Debian's name for libvirt service is libvirtd instead of libvirt-bin used by Ubuntu.

Regarding your second point, I guess Julien Goodwin (@laptop006) can submit again a new patch where don't starts nginx (whithout the apache stuff) and then we can solve this issue.

IMO, the other points can be submitted again the RFC's and pacthes.

pvital avatar Apr 19 '16 21:04 pvital

I started to prepare debian packaging for debian upload https://github.com/Fantu/wok/commit/c055f284237999abc7777f1b99b41a6e36508789 this is only partial for now... in debian/control I tried to put all correct build-deps and deps but I have some questions/problems:

  • there is python-m2crypto used by src/wok/sslcert.py (by fast grep) that seems still python2 but with python2 things I suppose will be rejected (next debian version will drop python2), can be checked and modified for python3 if needed please? Edit: on #debian-devel confirmed that new packages with python2 will be not accepted
  • python3-jsonschema>= 3 for draft7 support but in debian repo is still not present :( https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939943
  • there are some dev requirement added with "sudo -H pip3 install -r requirements-dev.txt" based on docs, in debian repo I saw only https://packages.debian.org/source/sid/libsass and https://packages.debian.org/source/sid/cython but not pre-commit, are always needed? Edit: from #debian-devel confirmed that is will be not accepted upload of packages not installable (including needed pip for install deps.)

debian/copyright need to be improved/completed (I mainly autogenerate it with decopy), without it with full and correct license list make package reject I keeped debhelper to 11 (instead 12) to make possible use it also on older debian and ubuntu but probably with python3 deps very recent I suppose will be difficult

any help is appreciated, I'm doing some very fast thing because the time is too few and my python knowledge is almost nothing, sorry also for my bad english

Fantu avatar Sep 09 '19 15:09 Fantu

Hi @Fantu

Thank you for the initiative to get Kimchi into debian!

  • there is python-m2crypto used by src/wok/sslcert.py (by fast grep) that seems still python2 but with python2 things I suppose will be rejected (next debian version will drop python2), can be checked and modified for python3 if needed please?

I will take a look on this.

  • python3-jsonschema>= 3 for draft7 support but in debian repo is still not present :( https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939943

Will it be added or not?

  • there are some dev requirement added with "sudo -H pip3 install -r requirements-dev.txt" based on docs, in debian repo I saw only https://packages.debian.org/source/sid/libsass and https://packages.debian.org/source/sid/cython but not pre-commit, are always needed?

It is only for development purposes. We don't need to include them as part of the debian package.

debian/copyright need to be improved/completed (I mainly autogenerate it with decopy), without it with full and correct license list make package reject

I will take a look.

alinefm avatar Sep 20 '19 22:09 alinefm

small update: python-jsonschema 3 was prepared and uploaded into experimental today but blocked by python-pyrsistent dep missed in NEW queue since 7 months, after was reuploaded also python-pyrsistent without python2 part and I suppose will be acceptedbut I do not know when

Fantu avatar Sep 25 '19 17:09 Fantu