/srv/irclogs.ubuntu.com/2015/01/04/#ubuntu-touch.txt

Makalaki just built ubunto touch for my phone and after flashing the boot.img and calling ./rootstock-touch-install, i rebooted to be stuck at the boot screen with HTC logo, adb works, but nothing booted, is there something im missing?00:17
=== slangase` is now known as slangasek
=== VargaD_ is now known as VargaD
aquariusElleo, if you're around tomorrow for the conversation with nik90_ then I'd love to hear your thoughts.01:54
aquariusbut it's 2am now so I'm going to sleep :)01:54
Elleoaquarius: will probably be out a tomorrow afternoon/evening, but if I'm around will gladly join in :)01:58
Elleo-a*01:58
aquariusnice one. nik90_ said he was around tomorrow; I'll try and yank you both into a discussion where I explain what I've done and what remains, and wait fr you both to pick it apart. :)01:59
Elleookay, cool02:00
nhainesaquarius: off topic, but did you ever make any progress with that qt datapath issue for the Amazon Cloud Reader webapp?02:00
Snizzoanyone knows some tips to increase battery on utouch n5?02:24
nhainesSnizzo: I suspect if anyone knew that, they'd include it in the N5 images.02:31
Snizzonhaines, that make really sense. Thanks for replying. I'd like to use utouch as DD :)02:34
nhainesSnizzo: It's really nice.  If it had Bluetooth support, I very likely may have been using it as a DD too.  :)02:34
SnizzoI'm writing from irc webapp right now and I'm anapp developer so I'd like to use it and develop every day02:36
amahoolahi03:33
wirahetaubuntu10Hello06:03
lotuspsychjehi06:03
wirahetaubuntu10I honestly dont know what this chat is for. Do you?06:04
wirahetaubuntu10@lotuspsychje06:04
lotuspsychjethis is for all ubuntu touch discussions06:05
lotuspsychjeubuntu running on tablets/phones06:05
lotuspsychje!devices | wirahetaubuntu1006:05
ubot5wirahetaubuntu10: You can find the full list of devices, official images, community images, and works in progress at https://wiki.ubuntu.com/Touch/Devices06:05
lappitoppi1i hope i found right channel08:18
lappitoppi1MY MOBILE BROKE I NEED A NEW ONE08:18
lappitoppi1i waited as long as i could08:19
lappitoppi1;-)08:19
lappitoppi1is there any with an not android linux on it???08:20
lappitoppi1exspecially ubuntu ;-)08:20
lappitoppi1cause ive to buy one NOW08:21
lappitoppi1and i waited for release .....whole 201408:21
nhainesI suspect bq will sell the bq Aquaris in Germany in February.08:22
lappitoppi1*sign* i need a phone and i waited so long and now ONE MONTH nooooooooooooo08:23
lappitoppi1theres smthn about meizu hdys but i didnt read sthn instead of flyme08:24
nhainesYes, but no dates mentioned with Meizu.08:24
lappitoppi1so if i would like to have a mobile with ubuntu on it I... wait(which i couldnt?;-) orrrrr???? buy which mobile which functions propably the best with self installed?08:30
nhainesNexus 4.08:32
lappitoppi1k thx it will be an nexus4 thx very much08:32
uhhimherehi guys i have a project:08:34
uhhimherehttp://forum.cyanogenmod.org/topic/103336-dtsi-compiling-vanilla-linux-on-samsung-gt-s7580/08:34
uhhimherecan someone help me out08:34
lappitoppi1sry bothering again on nexus 4 its an android-kernel isnt it?08:43
nhaineslappitoppi1: I don't understand what you mean.08:44
lappitoppi1i mean ubuntu runs with android kernel08:44
lappitoppi1im not an crack sry08:44
nhainesYes, after Ubuntu boots, it spawns an LXC container with a minimal Android kernel for driver support.08:44
nhainesOther than graphics, sound, and Bluetooth drivers (maybe radio, too), everything's Ubuntu.08:45
lappitoppi1kk ;-)08:46
lappitoppi1bebe09:06
aquariusnhaines, isn't something I can progress, the dataPath issue; it just needs to be fixed by Oxide. Elleo did say he had a C++ workaround, which maybe I can get him to package up as a component once I have a working component store ;)09:22
nhainesaquarius: ah, I thought you might've been able to look at the workaround.09:24
aquariusnhaines, not so far... and, honest truth, this *ought* to be a web app, not a QML app with an Oxide widget. I gain nothing by sticking it in a box :)09:25
nhainesaquarius: well, you gain that it works.  :)  But I agree.  Webapp is way, way better.09:26
* aquarius laughs09:26
aquariusthat's why I looked at doing it with oxide.09:26
nhainesI should've bookmarked the oxide bug.09:26
aquariushaving both paths to success be blocked was pretty frustrating09:26
aquariusnhaines, https://bugs.launchpad.net/webbrowser-app/+bug/140584409:27
ubot5Launchpad bug 1405844 in webbrowser-app "Incorrect cachePath and dataPath set when using WebView with qmlscene" [Undecided,New]09:27
nhainesThanks!09:28
nhainesI'm glad to see no one's done anything with it yet.09:29
aquariuswell, I was all poised to get quite irate about that, until I noticed that Elleo filed it on Boxing Day. So every day since then has been Christmas holidays :)09:31
nhainesEh, sure.  :)09:34
noob2hi, i'm new and i have never filed bugs and stuff before. what would be the best way to complain about that updater-popup saying i have to restart which annoys me every 90 seconds?10:13
aquariusnoob2, you can file a bug about it, but it's that way by design: when you get warned that you need to restart, you really do actually need to restart. You can continue using your machine, but various subtle things under the surface are now inconsistent, and there is the potential for that to cause big problems later on; restarting fixes that.10:28
aquariusnoob2, you are only told to restart if an update you've installed actually needs it; most updates don't.10:28
noob2aquarius: telling me one time is ok, interrupting presentations or movies every 90 seconds makes me want to change the distro10:32
nhainesnoob2: alternatively, don't run updates unless you are willing to restart if required.10:33
aquariusnoob2, hang on, perhaps I'm not understanding here. You should get a popup window with "Restart now" and "Restart Later" buttons (I think?). Are you saying that you press Restart Later and then it comes back 90 seconds later?10:34
noob2yes, 'restart later' and then it keeps coming back10:35
aquariusok, coming back after 90 seconds seems aggressive, indeed10:35
aquariusnoob2, and this is running normal Ubuntu 14.04?10:38
noob2yes, pretty default ubuntu 14.0410:39
aquariusnoob2, if you wanted to report a bug, then you can do so at https://bugs.launchpad.net/ubuntu/+source/update-manager/+filebug or by opening a Terminal window and typing "ubuntu-bug update-manager".10:39
noob2aquarius: ok, thank you. i'll use the website, apport seems to collect to much personal data10:45
aquariusnik90_, when you're around, let me know :)12:05
aquariusElleo, dunno if you're around either12:45
Elleoaquarius: I am at the moment, but not for very much longer12:45
aquariusElleo, does http://bazaar.launchpad.net/~sil/component-store/community-components/view/head:/docs/contribute-community.rst make sense to you?12:46
aquarius(also, refresh and it should be wrapped better :))12:50
aquariusoops, I forgot to define the ubuntu_component_store.json file. :)12:52
Elleoaquarius: looks good to me; only query I have is if "bin/" should actually be "lib/"?12:52
aquariusElleo, the reason it's not /lib is that you may have things in /lib which your project is depending on12:53
aquariusand then we can't tell the difference between "this is the thing I am publishing" and "this is stuff that the thing I'm publishing needs"12:53
Elleoah, okay12:53
aquariushappy to rename it to something else, though12:54
Elleowhat about qmllib? or something like that?12:54
aquariusthat seems fine to me; I have no real preference for the name, so if you think that'd make it clearer, I'm fine wiht it :)12:54
Elleojust a little concerned with bin/ since that's likely to be where compiled executables from the user's projects will go for fat packages12:54
aquariusgood thought12:55
aquariusqmllib it is then :)12:55
nik90_aquarius: hey, I am here now12:58
aquariusnik90_, heya, pal!13:04
aquariusbasically, I plan to brain dump at you. How would you like to receive this stuff? :)13:04
nik90_however you wanted to send it :)13:10
nik90_aquarius: I am up for anything13:10
aquariusnik90_, ok. Basically, what I've done is branched component-store trunk to https://code.launchpad.net/~sil/component-store/community-components. That branch has many changes in it! I shall outline them here, and you ask questions.13:11
nik90_ok13:11
aquarius1. I reorganised things so there aren't a zillion top level things13:11
aquariusthat is: the app got moved into a folder called "app", rather than being at the top level of the repo.13:12
aquariusthat might screw things up for something you've done. I hope not.13:12
aquarius2. I moved script/ucs to script/ucs.sh so we still have it around, and wrote script/ucs in Python, because it's quite a bit more complicated now. :)13:13
aquariusyou can try it out; it implements ucs install and, newly, ucs search.13:13
nik90_ooh nice13:13
aquariusand it knows about both curated and community repositories.13:14
aquariustwo things missing, there: it does not implement ucs update yet (but if you ucs install a thing that's already installed, we'll just overwrite it)13:14
aquariusand I have not touched the debian package stuff which is needed to make it a working package in the PPA. This is because I don't understand debian packaging, and no doubt that will have to change because it's now a python app which depends on bzrlib13:15
nik90_ok I can fix that13:15
aquarius3. I have implemented the community server -- the place that receives "ucs submit" calls. Basically, to submit to the community store you publish an LP branch with files in a particular place, and then ucs submit lp:~sil/whatever/whatever. The server, which is currently at PythonAnywhere and is a simple Python Flask server, grabs that branch, does some checks, and then adds the new component to the JSON list.13:16
nik90_aquarius: we can actually merge GallerySRC and app into one folder since they both require one other.13:17
nik90_so one less top level folder13:17
aquarius(I tried fairly hard to not touch any of your stuff in case I screwed it up :))13:17
nik90_ok I will propose a merge against your branch later today13:17
aquariusthe community store is defined by the JSON list of all components. This list is, itself, stored in Launchpad, in a new branch, https://code.launchpad.net/~ubuntu-touch-community-dev/component-store/community-components-json which contains one file: the big JSON list.13:18
aquariusso when you ucs submit a component, the community server checks it's OK, gets the metadata from it, adds it to the big JSON list, and pushes the big JSON list back to Launchpad.13:18
nik90_ok13:18
aquariuswhen you do ucs search or ucs install, your local ucs downloads the big JSON list from launchpad and gets the component data from it locally, sorta like apt does with Packages files -- it then knows the LP branch to get the component from.13:19
nik90_aquarius: btw you are fine with distributing the ucs.sh script via PPA to allow for easy installation?13:19
aquariusucs script. ucs.sh shoudl go away now, I think13:19
aquariusPPA, yeah, is definitely the way for this )13:20
aquarius:)13:20
nik90_yeah that's what I meant13:20
aquarius4. ucs install needs to download the component from launchpad (this is the same for curated and community components), install it in an appropriate place, and then tell the project you're in that it's there.13:20
aquariusThere are three types of projects (qml, qmake, cmake) and two types of components (qml, binary), so there are six different ways that can happen. Some are implemented, some are not. :)13:21
nik90_ack.13:21
aquariusQML component, QML project: component goes in projectroot/ubuntu_component_store/username/ComponentName/. (The "username" for curated components is "Curated".) We construct a qmldir file, and then everything works.13:22
aquariusBinary component, QML project: component goes in lib/$arch/ubuntu_component_store/username/ComponentName. We construct a qmldir file and we explicitly add this arch to qmlproject:importPaths.13:23
nik90_are the binary components already built? or source files?13:24
aquariusalready built.13:24
aquariusQML component, qmake project:  component goes in projectroot/ubuntu_component_store/username/ComponentName/. We construct a qmldir file, and we add the ubuntu_component_store folder to qmake so that it gets copied into the build folder.13:24
nik90_ok so we need to inform submitters to build and upload it to their branch before uploading to store13:24
aquarius(we do. I'll get to that in a sec. :))13:24
aquariusbinary components for qmake projects, and all components for cmake projects, aren't done yet, because I haven't worked out *how* to do them. :)13:25
nik90_The clock app (cmake) builts its binary components during runtime and copies it into the build folder13:26
aquarius5. I have updated the documentation. We now clarify the difference between curated and community components (while leaning slightly on the idea that curated components are better because they require tests, etc), and how to create and submit a community component is documented at http://bazaar.launchpad.net/~sil/component-store/community-components/view/head:/docs/contribute-community.rst13:27
aquariusthat file is very clear that you're uploading a binary, and also says "and add the source to the branch as well!"13:28
nik90_cool13:28
nik90_btw this is the same documentation that we use in http://ubuntu-component-store.readthedocs.org/en/latest/ /13:28
aquariuswhat I would like is a Qt Creator template which is just for building binary components, which puts everything in the correct places. But I don't know how to do that.13:28
aquariusthe clock app does that because it knows which components it has. What we need is a way to tell the project build scripts "copy this folder into the build folder". I know how to do that for qmake, now, but not for cmake.13:29
nik90_ah yes13:29
aquariusAnyway, that's everything, I think. You should, right now, if you have my ucs python script, be able to cd to anywhere inside a pure qml project and say "ucs install <curated component>" and then "import ubuntu_component_store.Curated.ComponentName 1.0" and have it work.13:30
aquarius(the same for community components, except there are only two: my genericpodcastapp and a stupid binary component which prints your home dir, and is only compiled for amd64 :)13:30
aquariusonly compiling for amd64 is against the rules, btw; I only did that because I'm testing.13:31
nik90_yeah yeah ofc13:31
aquariusbut it all works, I think, and is all documented.13:31
aquariusfrom your perspective, I think the only thing I've changed is that now you use a curated component with import ubuntu_component_store.Curated.ComponentName 1.0, rather than import "ubuntu_component_store".13:32
aquariuswhich is a change, but I think it's for the better.13:32
aquariusSo: that's the brain dump. Ask questions. :-)13:32
nik90_aquarius: I will give the permissions for readthedocs as well so that you can rebuild the docs on the website whenever you make changes to the docs13:32
aquariusis anyone actually using this stuff yet?13:32
aquariusbear in mind that if they are, we'll break them with these changes.13:33
aquariusI don't think anybody is...13:33
DanChapmanaquarius, i'm using it for dekko13:33
aquariusDanChapman, ooh, really?13:33
aquariusthat is useful info!13:33
aquariusDanChapman, are you installing components with ucs?13:33
nik90_pretty sure michael hall is using it...13:33
nik90_I also saw few others using the radial bottom edge component13:33
aquariusnik90_, right, so you want to avoid merging my stuff until we have a transition plan. :)13:34
DanChapmanaquarius, yeah using what nik90_ demoed at UOS. I actually have a few components i'd like to submit :-D13:34
nik90_DanChapman: ooh cool...13:34
nik90_aquarius: he could be a good test subject :P13:34
aquariusDanChapman, cool!13:34
aquariushe could indeed :)13:34
* DanChapman signs up to be a lab rat13:35
aquariusyou can submit to the community store first, if you like, and then later have those components graduate into being curated if you want them to be.13:35
nik90_aquarius: actually it would be prefereable that all components enter the community store first13:35
nik90_stay there and then graduate to the curated store when it has sufficient interest13:35
aquariusI agree with that, I just didn't want to stipulate it ;)13:35
nik90_this way we can reduce the load on ourselves13:36
nik90_aquarius: in the json file, I see type: [ "qml" ]....wouldn't it be better as type: "qml" ?13:37
nik90_in this file http://bazaar.launchpad.net/~ubuntu-touch-community-dev/component-store/community-components-json/view/head:/community_components.json13:37
aquariusnik90_, I'm keeping the possibility open for a component which is both qml and binary; that's why it's a list.13:38
nik90_is that possible?13:38
nik90_as in would components be both qml and binary?13:38
aquariusyep. You publish a binary component which provides, say, a Triangle item, and then RedTriangle.qml which is: Triangle { color: "red"; }13:39
aquariusthen someone can use RedTriangle { } in their code.13:39
nik90_ah yes13:39
aquariusI'm not sure it's *useful*, but I think it will be, as people develop more complex components13:39
aquariusand if I restrict a component to being either binary or qml, then it'll sod us up later on. A list leaves possibilities :)13:40
DanChapmanaquarius so do you want me submit components using the current method or this new proposed method?13:40
nik90_yeah ... a change later would be difficult indeed13:40
nik90_DanChapman: new proposed method13:40
DanChapmanok cool13:40
nik90_old method is only for the curated store13:40
aquariusDanChapman, the new one, but bear in mind that it's not even merged to ucs trunk yet ;)13:40
nik90_DanChapman: yes, we first need to release the new ucs to the ppa so you get it...only then would you get the new method13:41
aquariusDanChapman, and, to be clear, this is very very new indeed, so expect there to be problems and so on :)13:41
aquariusDanChapman, does http://bazaar.launchpad.net/~sil/component-store/community-components/view/head:/docs/contribute-community.rst make sense to you?13:41
DanChapmanaquarius: just reading through it now13:43
nik90_aquarius: can you create an account on readthedocs and give me the username...I can then add that to the admin list of ucs docs13:45
aquariusnik90_, username: sil13:46
nik90_aquarius: done13:46
nik90_it is already connected to the ucs launchpad branch..all that needs to be done is press build to see the updated docs13:47
nik90_ofc only after your branch is merged in13:47
DanChapmanaquarius, first thing that jumps out at me is the "your component is expected to13:52
DanChapmanuse `qmlRegisterType <http://doc.qt.io/qt-5/qqmlextensionplugin.html#details>`_" should it not be that it is expected the component registers a "Type" to make it accessible in qml. Someone may want to provide their component as a singleton type or an additional uncreatable type that provides enums for there binary component.13:52
aquariusDanChapman, er.13:52
aquariusperhaps13:52
aquariusI don't know much about this stuff13:52
aquariusyou obviously know a lo more than I do :)13:52
aquariusI'm going by http://doc.qt.io/qt-5/qtqml-tutorials-extending-qml-example.html#chapter-6-writing-an-extension-plugin13:53
aquariusbut if there's better wording for that, I'm happy to hear it!13:53
aquariusas long as what comes out the far end is a .so file which we can import into QML, I'm happy -- wording for how that should be built and advice is basically up to you, I think; you're a lot more clueful about this than I am13:54
DanChapmanaquarius: :-D take a look at the "Related Non-Members" section http://doc.qt.io/qt-5/qqmlengine.html to see all the types that can be registered13:55
aquariuscor13:56
aquariusI don't even know what 90% of that is ;)13:56
aquariusDanChapman, you may want to take the lead on helping to define this stuff, if you have time, as well as cntributing components to it :)13:56
DanChapmanaquarius: hah! sure I can help out with it. i'll make a MP against what you have there at the moment13:59
nik90_aquarius: can you propose a MP to make it easier to see the code diff. Atm I am testing out the commands.13:59
aquariusnik90_, I'm happy to, if you're happy :)14:00
gcolluranik90_, hey :) could you please see if this  https://code.launchpad.net/~gcollura/ubuntu-ui-toolkit/fix-1341814-and-1400297 fixes the bugs linked? (I'm asking you since you were affected by the first one of the two :)14:00
gcollurathanks :)14:00
nik90_aquarius: I haven't looked at the code, but the funtionality that we need seems to be there and I am excited14:01
nik90_gcollura: sure14:01
aquariusDanChapman, the two big things that I'm missing at the moment are having ucs be able to add components to qmake and (particularly) cmake projects, and a Qt Creator template which sets up and builds a component with the correct filesystem layout14:01
aquariusDanChapman, along with correct documentation ;-)14:01
aquariusnik90_, https://code.launchpad.net/~sil/component-store/community-components/+merge/245510 MP added14:05
nik90_thnx14:06
CardiomyopathyHello14:17
nik90_aquarius: if I have 2 components that I install from either the community or curated store, what would the import statement be?14:34
nik90_would "import ubuntu_component_store.Curated" work?14:35
fastbooterTrying to install Ubuntu Touch to an RCA Voyager 7. Device is in FASTBOOT mode but using the command ubuntu-device-flash --channel=devel --bootstrap results in 'device not found on server'14:39
fastbooterIs there a way to install from a local image? Is there better documentation for 'ubuntu-device-flash'? None of the options seem to work14:40
aquariusnik90_, I don't think I understand the question?14:47
nik90_aquarius: let say I install RadialBottomEdge and PageWithBottomEdge from the curated store. How do I import them into my app?14:47
nik90_would "import ubuntu_component_store.Curated" suffice?14:47
aquariusnik90_, oh, as in, you install two Curated components? You have to import them both individually. So import ubuntu_component_store.Curated.RadialBottomEdge 1.0; import ubuntu_component_store.Curated.PageWithBottomEdge 1.0;14:48
aquariusyou can't just import ubuntu_component_store.Curated because it doesn't have a version number.14:48
nik90_ah14:48
aquariuswe currently do not handle version numbers very well at all, and we need to decide how to do that.14:49
aquariusit's easy for community components; we'll just require a version number in the json metadata file, and then use it (at the moment it's all hardcoded to 1.0, oops).14:49
aquariusbut curated components don't have metadata.14:49
nik90_understood14:49
nik90_btw can I rename the "app" folder to something like "curated-store" to make it more specific?14:50
aquariusto whatever you want, indeed14:50
aquariusI don't do anything which relies on it14:50
aquariusI just wanted to move that stuff somewhere other than the root :)14:50
nik90_you should be using it in your python script to tell it where to download the files from? no?14:51
aquariuscrap. yes14:52
aquarius:)14:52
nik90_I will leave it as such then14:52
nik90_we can change it later14:52
nik90_I proposed https://code.launchpad.net/~nik90/component-store/fix-gallerysrc/+merge/245512 which only moves the gallerySRC folder14:52
aquariuslines 251-23214:52
aquarius251-25214:53
aquariusat the moment, the ucs tool points at trunk14:53
aquariuswhich is why it didn't change :)14:53
aquariusgood catch.14:53
aquariusso line 252 will need to change from COMPONENTS_ROOT = "ComponentStore" to COMPONENTS_ROOT = "curated-store/ComponentStore" or similar14:53
nik90_ok, let me change it quickly then and test14:54
aquariusif you wanna propose that as a mege to my branch, I'll merge it in, and then I'll fix ucs.14:55
aquarius(which means that ucs won't work until it hits trunk, but that's OK)14:55
nik90_I will fix both and add the changes to https://code.launchpad.net/~nik90/component-store/fix-gallerysrc/+merge/24551214:56
nik90_should be faster14:56
aquariusah, I've just merged that branch :)14:57
nik90_no worries then14:57
aquariusbut if you wanna just tidy everything up, that's fine :)14:57
nik90_I am just tidying up whatever is necessary to make the transition like the debian folder, curated-store etc..14:58
Makalakhi, I'm still trying to get my build of ubuntu working on HTC One X, but as the phone starts its stuck at the HTC logo and i can access adb...I figured the problem is due to a failure in finding the data partition, thus cant find the system.img to mount it etc, this is the kmsg of that boot http://pastebin.com/H8662k5E15:01
Makalaki tried editing /scripts/touch as it seems like the script in charge of finding and mounting that partition, but that causes a bootloop, doesnt even make a last_kmsg... could the bootloop be caused by invalid page size? we always use 2048 but is it different for ubuntu?15:04
nik90_aquarius: does this look good? https://code.launchpad.net/~nik90/component-store/rename-app-folder/+merge/24551415:04
nik90_I will later in the nite do the debian folder fixes15:05
aquariusnik90_, I think so certainly15:05
aquariusbrb15:06
DanChapmanaquarius: nik90_ how is versioning going to work for backwards compatability? See i'm thinking that all these components qml/js/binary should be imported as plugins. I think the components should have a qmldir module definition file and then all that's needed is to import the plugin/module by adding it to the QML2_IMPORT_PATH and this also provides versioning capabilities. let me find a link to the qmldir docs15:09
aquariusDanChapman, ucs creates a qmldir file for it15:09
DanChapmanahh right15:09
aquariusDanChapman, my plan, which isn't done yet, is that a community component provides its version number in its metadata, and then ucs uses that when it creates the qmldir file15:10
aquarius(at the moment it just hardcodes version 1.0. :-))15:10
DanChapmanaquarius: right I didn't realise it does that now... So i presume just bumping the metadata will still preserve the previous version in the qmldir?15:13
aquariusDanChapman, a good question and one that needs thinking about15:13
aquariusmy *inclination* is to say that if I change my component to say it's version 2.0, and someone ucs updates it, we overwrite the old version with the new one. Maybe15:14
aquariusor, actually, better, you can put version numbers on the ends of component folders15:14
aquariusso atm we have ubuntu_component_store/sil/MyComponent/MyComponent.qml15:14
aquariusand we'd change that to ubuntu_component_store/sil/MyComponent1.0/MyComponent.qml15:15
aquariusand then a new version installs to ubuntu_component_store/sil/MyComponent2.0/MyComponent.qml15:15
aquariusthe qml importer understands version numbers on folder names15:15
nik90_aquarius: I would prefer ubuntu_component_store/sil/MyComponent/1.0/MyComponent.qml15:15
aquariusnik90_, the qml importer doesn't understand that15:15
nik90_ah yes15:16
nik90_aquarius: so for the debian folder, I would just need to update the dependencies and the changelog15:17
nik90_I am still going  to install the python script into /usr/bin15:17
aquariuscool15:17
nik90_people should be able to call it still by "ucs" so we maintain backwards compatibility there15:17
nik90_the only regression (change) is not being to install multiple components with one command like "ucs install component1 component2", but this can be added later on15:18
nik90_or we just leave entirely15:18
nik90_s/leave entirely/leave that entirely15:19
aquariusya15:20
aquariusthat ought to be doable fine, I just didn't do it15:20
aquariusit's a relatively trivial fix15:21
aquariusbut it's simpler to not have it at first15:21
nik90_yeah lets leave it for now15:21
aquariushence me tweaking the docs slightly to not use it as an example :)15:21
nik90_:)15:21
aquariuswe need to talk about ucs update as well15:21
aquariusand how it should work15:21
aquariusthat's totally not implemented, right now :)15:22
nik90_we need versioning for that15:22
aquariuswe do15:22
nik90_in the community json file, we already have rev no15:22
aquariusI know how to do versioning for the community stuff15:22
aquariuswe don't use revno for qml versioning15:22
nik90_I meant here http://bazaar.launchpad.net/~ubuntu-touch-community-dev/component-store/community-components-json/view/head:/community_components.json15:23
aquariuswe need to add a required version to the ubuntu_component_store.json file in each component15:23
aquariusthe server grabs the version number when you ucs submit a component, to make sure that it checks out *the submitted version*, not HEAD15:23
aquariusit grabs the revno, I mean15:23
aquariuswe need both15:23
aquariusbut what do we do about version numbers for curated components?15:24
nik90_would following the same .json structure for curated components make it possible?15:25
aquariusit would, but we have to fetch the json file for each of the components... which is not that fast15:25
aquariuson the other hand, we can cache the revno of each of those files, can't we?15:26
aquariusso we don't need to fetch them again15:26
aquariusthat would be a good idea15:26
aquariusthen curated components can have descriptions, too15:26
nik90_yeah15:26
nik90_we cache when the user installs those components?15:26
aquariusversion numbers in directory paths: "It is possible to store different versions of a module in subdirectories of its own. For example, a version 2.1 of a module could be located under com/mycompany/mymodule.2/qmldir or com/mycompany/mymodule.2.1/qmldir. The engine will automatically load the module which matches best." http://doc.qt.io/qt-5/qtqml-modules-identifiedmodules.html15:26
aquariusat the moment we do not cache anything about when a component was installed15:26
aquariusthis is why we need to talk about how that'll work and what ucs update should do :)15:27
aquariusbecause if you ucs update and get new versions of your components, you'll have to also poke your code to *use* the new versions.15:27
nik90_well since they are curated, we can assume that we will maintain backwards compatability similar to the sdk?15:28
nik90_or nvr mind that is too complicated...15:28
nik90_when a dev updates, he will receive the new and old version. His code will continue to work since it is using the old version. If he wants new stuff, he needs to use the new version after making changes to his code15:29
aquariusright15:29
aquariusI think we just put a version number in ubuntu_component_store.json15:29
aquariusand ucs install checks stuff out to that version number15:29
aquariusand then everything works15:30
nik90_does it override what the dev has? or appends the new files to it?15:30
aquariusif it's a new version, it'll be in a new folder, because components will now go in sil/ComponentName.1.015:31
Makalakis anyone here to help15:31
nik90_aquarius: understood15:31
nik90_Makalak: not sure if the devs who can help with debugging adb and rooting are here15:32
aquariusbig question I have: how do you remove a component from the community store without deleting the branch?15:33
aquariusI can't work out how to do that :(15:33
Makalaknik90_: out of 200 ppl no one :/15:34
nik90_aquarius: why not something like "ucs unregister componentname" and it simply removes the entry from the json file after parsing it?15:35
nik90_Makalak: actually a lot of ppl are logged in 24x7, but they are not necessarily online..besides it was just new year few days back...so may be still in vacation :)15:35
aquariusnik90_, because the ucs community server does not require authentication, so it can't stop me removing your components.15:35
nik90_oh crap yes15:35
aquariusthis is why I can't owrk out how to do it ;)15:36
nik90_aquarius: how about using launchpad id as authentication?15:36
aquariusat the moment the best I can come up with is: delete/rename ubuntu_component_store.json in your branch, then ucs submit it again, and we'll see that it's dead and remove it.15:36
aquariusnik90_, I can't do that; you can't use launchpad oauth to prove to a third party server that you are a launchpad ID.15:36
aquariusyou can prove it *to launchpad*, but not to anyone else.15:37
aquarius(currently adding version number requirements to everything)15:38
aquariusexcellent. Community components now require version numbers in the metadata, and we use them when we ucs install. Victory.16:01
aquariusnik90_, what do you think of the idea of adding ubuntu_component_store.json files to the curated components?16:02
aquariusand I'll have ucs download and cache them16:02
aquarius(based on revno)16:02
nik90_aquarius: I am fine with adding it to the curated components as well16:03
aquariusok, I'll add them16:04
aquariusyou want me to MP them, or are you OK with me just committing to trunk?16:04
nik90_just commit to trunk16:05
nik90_although atm if i install a component, it will pull the json file as well16:05
nik90_did you mean adding it to your branch or the trunk?16:06
aquariusI thought I'd put them direct into trunk16:08
aquariussince trunk is what ucs looks at to get curated components :)16:08
nik90_ok16:09
DanChapmanaquarius, i don't think it makes sense to be building the qmldir locally and creating a new directory for each version, instead why not get the component author to include one. I think something like this http://bazaar.launchpad.net/~dpniel/+junk/ucs-component/files would be better and it means there would only be one qmldir file to support multiple versions.16:20
aquariusDanChapman, because we need to include the ubuntu_component_store stuff in module, or it breaks16:22
aquariusDanChapman, and we know how to create that, and component authors shouldn't have to -- and if they do it wrong, their component is not usable16:23
DanChapmanaquarius hmmm ok I understand it needs the ubuntu_component_store :-) so what should happen in the case that the author wishes to set other qmldir commands. For instance they may want to set the classname of a c++ plugin the component depends on. It needs to have a way that all these commands can be set somehow http://doc.qt.io/qt-5/qtqml-modules-qmldir.html (some food for thought)16:33
DanChapmanaquarius: could it just be a case of an author could override ucs creating a qmldir by providing one in the source tree should they need the extra functionality? (and on their head be it, if it doesn't work)16:38
aquariusDanChapman, hm, that's interesting.16:39
aquariusperhaps if there's a qmldir file already in the folder, we add to it?16:39
nik90_DanChapman: its possible to add component dependencies in the qmldir file?16:40
* aquarius winces16:41
aquariusno component dependencies16:41
aquariusnot for version 1 anyway16:41
aquariusdependencies are a nightmare.16:41
nik90_aquarius: but I agree with DanChapman that the developer should be allowed to create the qmldir file themeselves since they might want to choose a different name16:41
nik90_for instance, I might have a file Triangle10.qml but in the qmldir I might want to rename it as 1.0 Triangle16:42
aquariuscan you give me an example of when you want to choose a name that isn't your component name?16:42
nik90_the ubuntu sdk does this with the Page component...they have files named as Page10.qml, Page11.qml....but in qmldir it is renamed as Page16:43
nik90_which is what we all use16:43
aquariusI am pretty firmly of the opinion that in that situation you should just name your file Triangle.qml rather than playing silly tricks with the qmldir :)16:43
aquariusucs (in my branch) now caches curated component metadata and displays it when searching, hooray16:44
nik90_the file name tricks are done to allow for multiple component versions16:44
nik90_ooh nice16:44
aquariusthere's still slowness while it gets the current revno from LP, though. Can't avoid that :)16:44
nik90_true, that's up to lp servers16:44
aquariusya, but if you want multiple component versions *of a ucs installable component* then you just publish a new version.16:44
aquariusthe core SDK needs this sort of trickery so they can ship ten different versions of a thing in the same folder.16:45
aquariuswe do not.,16:45
aquariusif you want a new version of a component, then submit a new version. Done. Our versions are parallel-installable (now) because the folder names get a version number in.16:45
aquarius$ ~/Programs/Others/ubuntu-component-store/community-components/script/ucs install RadialBottomEdge16:46
aquarius(installing RadialBottomEdge from curated repository)16:46
aquarius$ ls ubuntu_component_store/Curated/RadialBottomEdge.1.0/16:46
aquariusqmldir                       RadialBottomEdge.qml16:46
aquariusRadialAction.qml             ubuntu_component_store.json16:46
aquariusvictory )16:46
aquarius:)16:46
aquariusnik90_, feel free to change the component descriptions in the metadata files16:46
aquariusI just took the first sentence or so off the web docs.16:46
aquariusalso, I have added a documentation_url key to the metadata for the curated components16:47
aquariuswe don't do anything with it yet16:47
aquariusbut it strikes me that it might be useful :)16:47
nik90_yeah it will16:47
nik90_we can show in the search output command in the terminal16:47
nik90_this way the user can check the docs to see more about a component if they are interested after reading the 1 line description16:47
nik90_but I had this idea to do this after we do the transition first16:48
aquariustotally16:50
aquariusI just put it in because I was editing the files anyway :)16:50
aquariusDanChapman, so, what about we add to an existing qmldir file if there's one in there16:51
aquariusand add a stern warning to the docs saying: don't write your own unless you know what you're doing. :)16:51
DanChapmanaquarius yeah I think that would make sense for now :-)16:53
aquariusDanChapman, are there rules about the order that a qmldir file goes in?16:55
aquariusDanChapman, also, do you know about cmake?16:58
DanChapmanaquarius: i'm not sure if there are any rules but i've never come across any issues in the ordering.17:00
DanChapmanaquarius: yeah i know a bit about cmake17:00
aquariusDanChapman, OK. When we install a component, we download it and put it in a particular folder in the project. We then need to poke the project to do two things: 1) make sure that folder is on the QML import path (ideally we do this by placing the folder in the corrrect place so it's *already* on the import path) and 2) tell the build system that that folder needs to be copied to the build output folder.17:02
aquariusI do not know how to do (2) with cmake17:02
aquariuswith qmake, we edit /app/app.pro and add a QMAKE_POST_LINK line which does the copying.17:02
aquariuswhat's the best way to do this with cmake?17:02
aquariusI was thinking that a good way would be to add a CMakeLists.txt file *to the ubuntu_component_store folder* which copies itself, then it's all self-contained.17:03
aquariusis that doable?17:03
DanChapmanaquarius: are we taking the assumption that the app uses the sdk template? that would work as long as it's included as a subdirectory in the app's cmake files somewhere17:05
aquariusDanChapman, I am happy to make that assumption, at least for version 117:07
aquariusDanChapman, anybody who is good enough to set up their own build setup can just grab a component straight out of launchpad, at least for now :)17:07
aquariusor can ucs install it and then integrate it themselves17:08
aquariusso, what would we need to do? After ucs install gets a component from launchpad and puts it in /ubuntu_component_store, I can have it add /ubuntu_component_store/CMakeLists.txt -- what would need to be in that file? And is that enough, or do we also need to add /ubuntu_component_store to the top level CMakeLists.txt as well?17:09
DanChapmanaquarius: you would need something like http://paste.ubuntu.com/9671987/ and then adding add_subdirectory(ubuntu_component_store) to a parent CMakeLists.txt file17:15
aquariusnice!17:16
aquariuslet me give that a try.17:16
aquariusDanChapman, two questions17:16
DanChapmanand if it's compiled add *.cpp to the GLOB_RECURSE part17:16
aquarius1. that recurses into subdirs, right?17:16
DanChapmanaquarius: yeah17:16
aquarius2. why can't i just put * rather than naming file types?17:16
aquariusthere are lots of potential files -- not just qml and js, but images, the qmldir files (!), etc17:17
aquariuslisting them all seems like doom, and I am pretty confident that copying all the files is not a problem17:17
DanChapmanaquarius: tbh i've never tried that 2 secs i'll try it17:17
aquariuswe definitely need to copy qmldir files :-)17:18
DanChapmanthe copy_directory copies *everything* in that directory the GLOB_RECURSE just collects a list of files to make visible in QtC17:19
aquariusoh! cool :)17:20
DanChapmanaquarius: for instance in dekko http://bazaar.launchpad.net/~dpniel/dekko/0.4/view/head:/CMakeLists.txt#L677 i use it to copy the whole qml dir17:20
aquariusok, pushed a revision which adds to cmakelists for cmake-based projects when adding pure qml components, cheers DanChapman17:31
aquariusstill need to handle adding binary components to each -- specifically, how to get them on the import path17:31
aquariusbut we make progress, anyway :)17:31
_1_andrewchi18:59
_1_andrewchi19:01
k1l_hi19:01
_1_andrewchi19:03
ulrichard_Are the ubuntu phones for sale yet?20:19
nhainesNo.20:20
popey"Soon"20:21
Kebabfishulrichard_: februari21:02
ahayzenHey, does anyone else in their system settings have the 'wifi address' and 'bluetooth address' the wrong way around?21:26
ahayzenoh ignore me that would be bug 139972321:27
ubot5bug 1399723 in ubuntu-system-settings (Ubuntu) ""About this phone" shows wrong MAC for WiFi" [Critical,In progress] https://launchpad.net/bugs/139972321:27

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!