Updating apps to 16.04
-
Hi,
This will just be a quick "how-to" upgrade your apps to 16.04
So, first off you need to update your manifest, here you need to set
framework
toubuntu-sdk-16.04
Next and important step (without this your app will fail to install), you need to update your .apparmor file, here you need to set
policy_version
to16.04
Here is an git diff how i did this on the ubports app:
diff --git a/com.ubuntu.ubports.apparmor b/com.ubuntu.ubports.apparmor index 06ff04c..5f9e005 100644 --- a/com.ubuntu.ubports.apparmor +++ b/com.ubuntu.ubports.apparmor @@ -7,5 +7,5 @@ "location", "content_exchange" ], - "policy_version": 1.3 + "policy_version": 16.04 } diff --git a/manifest.json.in b/manifest.json.in index 10c8bc7..8af6c2d 100644 --- a/manifest.json.in +++ b/manifest.json.in @@ -10,5 +10,5 @@ }, "version": "1.6", "maintainer": "UBports <jan@ubports.com>", - "framework" : "ubuntu-sdk-15.04.6" + "framework" : "ubuntu-sdk-16.04" }
Finally build for 16.04 using clickable
clickable -k 16.04
That's it, your app should work in 16.04
-
Also for apps using pyotherside you no longer need to include pyotherside and libpython3.4m in your click package. These are now available in the rootfs, so make sure to remove them from your click before building for xenial.
-
@mariogrip will the click work on 15.04 still afterwards? I assume it won't. Do we have a strategy how to manage this from app store side? Should developers publish two builds? Do they have to have different ids? Will users see both?
-
-
Is there a way I can review the package with clickable to upload to OpenStore?
This is what I am currently getting when I try it: "This app needs to be reviewed manually, please check you app using the click-review command"
-
@zubozrout you've posted the answer to your question, you need to run
click-review
against your package -
@advocatux Yeah I know, but that package is not available for 18.04, right?
-
@zubozrout no, I don't think so
-
@zubozrout something like this should work
$ docker run -it -v $PATH_TO_CLICK_DIR:/clickdir clickable/ubuntu-sdk:16.04-amd64 bash $ apt install click-reviewers-tools $ cd /clickdir $ click-review my.click
-
@danchapman Thanks a lot :).
So now I have this: - lint:framework
'ubuntu-sdk-16.04' is not a supported framework
http://askubuntu.com/questions/460512/what-framework-should-i-use-in-my-manifest-file
transport.zubozrout_0.9.4.3_armhf.click: FAIL -
@zubozrout ahh i wonder if click-review was updated in the ubports archive to allow the new framework. Try dropping the framework to a 15.04 one and run click-review to see what the real errors are and then bump it back up before pushing to the store as the framework most likely isn't the issue.
-
@danchapman Good idea to test this. It looks like I get the same error for 15.04 (also tested with 15.04.5 which was the framework I originally used for the project).
-
Ok, so there is this ppa https://launchpad.net/~bhdouglass/+archive/ubuntu/clickable with the latest forked package that is even available for bionic :). And it has xenial app support. With that reviewing the packages should work correctly.
-
@zubozrout
I don't get it. I'm looking at the "This app needs to be reviewed manually, please check you app using the click-review command", but I can't figure out how to proceed from here.I could run the first two of @DanChapman 's commands (should I have set the PATH_TO_CLICK_DIR variable? to what?).
-
@doniks What Dan meant is: go to the directory where the click is. So often the click is in the build subdirectory. In that case you would have to do a
cd build
and thenclick-review name-of-your-click.click
. Alternatively you may stay in the directory you are and pass the full path to the click over to click-review. Likeclick-review /home/doniks/my-app/build/my_app.doniks_1.2.3.click
or something like that... And then the funny part will start -
Not to hijack the thread, but I have done this with my click package. It says:
build/usonic.arubislander_0.6.0_all.click: pass
How do I notify the OpenStore Submit process that the package has passed the click-review?
-
@hummlbach Nope, I still don't get it. Inside the container I never see my click, outside the container I never see click-review
https://paste.ubuntu.com/p/389kxQ9Nfw/
UPDATE: Now, I got it
$ docker run -it -v /home/peter/docs/devel/shorter/build/:/clickdir clickable/ubuntu-sdk:16.04-amd64 bash root@8fe1c0f532f8:/# apt install click-reviewers-tools Reading package lists... Done [...] Processing triggers for libc-bin (2.23-0ubuntu10) ... root@8fe1c0f532f8:/# click-review /clickdir/doniks.shorter_4.4_armhf.click ERROR: manifest malformed: unsupported field 'oldframework': [...]
-
@arubislander Tell Brian in the openstore telegram group for example and give your click package to him.
@doniks Just do thesudo apt-get install click-reviewers-tools
command outside the container. And then run it click-review also outside. UPDATE: okay, or like that ideally you could set it up with clickable some how s.t. clickable was doing the work inside the container for you - and you would never see it from the inside again... Badum tssss -
@hummlbach said in Updating apps to 16.04:
@arubislander Tell Brian in the openstore telegram group for example and give your click package to him.
Thanks @hummlbach. Turns out it was some .cpp code I had added to test a feature, but it was superfluous, so I deleted it and now all is well.
-
modules:composer.user_said_in, @arubislander, Updating apps to 16.04
@hummlbach said in Updating apps to 16.04:
@arubislander Tell Brian in the openstore telegram group for example and give your click package to him.
Thanks @hummlbach. Turns out it was some .cpp code I had added to test a feature, but it was superfluous, so I deleted it and now all is well.
Are you saying that you got your click to pass the
click-review
and then you could upload it?