mikenI've just pulled the snappy-examples and built the hello-world, but get a bunch of errors and warnings about files which don't exist: http://paste.ubuntu.com/11488439/ Is that expected, or related to my env?04:19
miken(it does build the snap, but unsure why I see those errors/warnings)04:20
dholbachgood morning07:28
fgimenezhi mvo, i'm trying the examples at https://code.launchpad.net/~snappy-dev/snappy-hub/snappy-examples07:40
mvohey fgimenez, good morning07:40
fgimenezmvo, morning :)07:41
fgimenezmvo, on rolling/edge i'm getting the same aa_change_on_exec error you just reported for every snap07:41
mvofgimenez: yeah, please use 15.04/edge for now, the rolling images are literally only ~30min old :) I enabled wily this morning on them and this was the first bug I noticed07:42
mvofgimenez: I have not investigated further but it appears the apparmor profiles are not created07:42
fgimenezmvo, ok thx :) on 15.04/stable i'm getting this http://paste.ubuntu.com/11491522/ when trying to use the config hook, have you seen that before?07:42
fgimenezmvo, in the config-example snap07:43
fgimenezmvo, didn't try 15.04/edge though, doing it now07:44
mvofgimenez: does the directory /var/lib/apps/config-example/1.0.6  exist?07:44
mvofgimenez: it does not ring a bell, I will have to install/test in a VM to debug further07:44
fgimenezmvo, no, the one that exists includes the origin /var/lib/apps/config-example.sideload/1.0.607:45
dholbachmvo, ogra_, asac: http://ubucon.de/2015 :)07:52
mvowoah, berlin07:52
dholbachthe cfp has started and they'd be happy if we could talk about all the new stuff we're doing and maybe do a workshop or two07:55
mvofgimenez: aha, thanks. thats the bug then, the .sideload is not taken into account :/07:57
mvofgimenez: would you mind to file a short bug (this irc log is enough) so that its not forgoten?07:57
mvofgimenez: should be easy to fix :)07:57
fgimenezmvo, of course thx :)07:57
elopiogood morning.08:08
=== devil is now known as Guest23013
=== Guest23013 is now known as devil_
=== erkules_ is now known as erkules
davidcalleMorning all08:25
D_Centhi - i have trouble connecting to wi-fi with snappy ubuntu on a raspi2. i followed the wifi tutorial and installed the wireless-tools, etc. but if i connect the wifi dongle via usb, dmesg only shows that a new device was connected without loading any drivers or firmware. the interface wlan0 or similar also doesn't exist. how can i make it work? i had it running previously on an older image, so it should be working09:04
JamesTaitGood morning all; happy Monday, and happy Say Something Nice Day! 😃09:06
ogra_mvo, beuno, hulp ! ... can one of you let chatroom through ? seems the review tools seem to be messed up ("ports is pbsolete in package.yaml")10:43
beowulfogra_: do you need this asap?10:52
ogra_beowulf, mectors does i think ... i'm just trying an upload with changed ports directive though10:52
ogra_mvo, could you take a look at https://myapps.developer.ubuntu.com/dev/click-apps/1526/ ?11:07
ogra_i dont get why it spits out the two warnings (my snap overview page tells me 0.1-8 is published btw ... only the details page tells me it isnt)11:08
zygacan I freely change the hostname of a snappy core system?11:18
=== dholbach_ is now known as dholbach
beunoom26er, on it11:36
beunoogra, on it11:36
beuno(who is not in the channel :))11:36
mvoogra_: hi, you can ignore those warnings for now, we need to stop generating those .snappy-systemd files, they are no longer needed12:06
beunoogra_, I approved it12:06
beunothe fix is on the store side12:07
beunoI have it pending12:07
ogra_beuno, ok, thanks ... if now the snap would actually work :/12:07
ogra_beuno, btw, where do i file store bugs ?12:07
beunoogra_, https://bugs.launchpad.net/software-center-agent/12:08
* ogra_ has 5 pairs of identical mails for the last uploads ... no mention which version which mail belongs to 12:08
ogra_and my front apps page said the whoile time that 0.1-8 was accepted12:09
* beuno nods12:09
ogra_now why the heck does the chatroom not work anymore :/12:10
=== wesleyma` is now known as wesleymason
sergiusensogra_: maybe seccomp12:23
ogra_sergiusens, hmm, i dont see any special messages about syscalls12:23
ogra_what i see is:12:24
ogra_Jun  1 12:23:01 localhost kernel: [ 2188.201850] audit: type=1400 audit(1433161381.662:146): apparmor="DENIED" operation="open" profile="chatroom.sideload_chatroom_0.1-8" name="/" pid=2356 comm="nodejs" requested_mask="r" denied_mask="r" fsuid=0 ouid=012:24
ogra_but that has always been there12:24
* ogra_ has an old install around that works fine on an old snappy 12:24
sergiusensogra_: why would you want to read / anyways ;-)12:24
ogra_node does for whatever reason12:24
sergiusensogra_: amd64 or armhf, I can try and install to see12:24
ogra_but that never did any harm12:25
ogra_this is currently amd6412:25
ogra_in kvm12:25
Chipacamvo: any luck reproducing the issue wrt install not working?12:25
ogra_my RPi is using a messed up image because i try to fix it :P12:25
* ogra_ tries an older node-snapper tarball 12:26
mvoChipaca: no, but I didn't try further, sorry, I will try again in a little bit12:29
sergiusensogra_: the one on the store works fine on 1.812:30
sergiusensogra_: err12:30
Chipacasergiusens: does 'snappy install' work for you in a vm?12:30
sergiusensogra_: the one on the store, 1.8, works fine on bbb12:30
ogra_ARGH !!!12:30
ogra_sergiusens, because i'm the super idiot today12:31
* ogra_ tested with firefox :P12:31
sergiusensogra_: no binary for amd64?12:31
ogra_(only works with chromium)12:31
ogra_sure, it is multi arch12:31
sergiusensogra_: ah, I tried on chrome fwiw12:32
ogra_yeah, man, i wasted 2h on that :/12:32
* ogra_ adds that info to readme.md for next time :P12:34
* ogra_ takes a break, phew ... 12:36
* Chipaca realises he hasn't updated in ages12:39
rsalvetihm, our builders are in a funny state12:45
ogra_rsalveti, which ones ? images ?12:48
rsalvetinormal lp builders12:48
rsalvetisome are busy with the haskell uploads12:48
rsalvetibut at our ppa all I get is 'start on'12:48
rsalvetino estimation at all12:48
rsalvetilike https://launchpad.net/~snappy-dev/+archive/ubuntu/image/+build/749202612:50
rsalvetimvo: hm, ubuntu-snappy is also ftbfs on i386 for vivid12:51
ogra_yeah, i just saw the mail12:51
mvorsalveti: I noticed but couldn't make sense of the failure yet12:51
ogra_rsalveti, for the hanging build we should poke cjwatson i think12:52
ogra_oh, thats a different error ...12:52
* ogra_ had some with dependency issues on the weekend12:52
rsalvetiogra_: yeah, let's wait a bit more and ping him if still stuck12:52
rsalvetiyeah, why TestUpdateTimestamp would fail12:53
rsalvetiwonder if a rebuild will make any difference12:54
ogra_2015-05-30 02:46:51 ERROR snappy logger.go:199 hello-app.potato failed to install: a package by that name is already installed12:55
ogra_what about that one ?12:55
rsalvetiwonder if that is testing the error itself12:55
ogra_does it re-run the test in a loop or some such ?12:55
rsalvetisince the test passed12:55
rsalvetijust a guess, didn't yet see the code :-)12:56
rsalvetilet me open a bug for this guy12:56
* ogra_ sighs ... i upgraded my laptop to vivid on the weekend ... got close to unusable now :(((12:56
ogra_constantly to hot (80-90°C)12:57
ubottuUbuntu bug 1460650 in Snappy "(15.04) Rev 443 FTBFS on i386" [Undecided,New]13:01
rsalvetiogra_: any process in particular eating your cpu?13:01
rsalvetimaybe new browsers13:01
ogra_no, not at all13:01
rsalvetivivid is mostly fine for me13:02
ogra_but starting chromium with no page open bumps the load to 12.00 ... while chromium only takes ~20% of one of the cpu cores (the rest is idle)13:02
ogra_the frequesncy scaling seems pretty messed up13:02
=== jgdxx is now known as jgdx
mterrymvo, you should open up ownership of lp.net/ubuntu-core-launcher13:10
mterryWanted to configure its bug tracker to show its bugs (right now I can't see bugs assigned to it because it's not set up)13:10
sergiusensnessita: what's the difference between price and prices, if the answer is, 'price' is legacy it's a good answer already :-)13:10
Chipacaon my system13:11
sergiusensmterry: I just ubuntu bug'ed it13:11
Chipacasnappy is bailing because it can't read /etc/localtime?13:11
Chipacaah, no, it's before that13:11
nessitasergiusens, correct! (price is legacy and is the price for the default currency(13:11
* Chipaca carries on13:11
mterrysergiusens, you did...?13:11
rsalvetimvo: mterry: just put ubuntu-core-launcher under https://launchpad.net/~snappy-dev13:12
mvorsalveti: excellent, thanks13:12
Chipacai don't understand this failure :(13:13
ogra_BAH ... i seem to have half a mobile desktop installed ... no wonder that laptop misbehaves !13:17
rsalvetimvo: oh, sorry, I wanted to say that you could put it under ~snappy-dev :-)13:21
rsalvetionly you can change it13:21
sergiusensnessita: I did.... nothing?13:23
mvorsalveti: ups, sure13:23
sergiusensChipaca: what's the issue?13:23
sergiusensChipaca: btw, can you review my u-d-f change?13:23
Chipacasergiusens: snappy internal unpack dies with "operation not supported"13:23
Chipacaand the strace shows no syscall failure13:24
sergiusensChipaca: amd64 or bbb?13:24
Chipacasergiusens: mad6413:24
mvorsalveti: updated, the project is now owned by ~snappy-dev13:24
nessitasergiusens, you meant mterry?13:24
rsalvetimvo: cool, thanks (mterry ^)13:24
sergiusensnessita: I did!13:25
mterrymvo, thanks!  :)13:25
sergiusensmterry: ubuntu-bug ubuntu-core-launcher13:25
rsalvetibut that will use the package bug13:25
sergiusensrsalveti: yes13:26
Chipacathe setuid/setgid fails13:28
Chipacathe setgid, in particular13:29
Chipacacan i say WAT?13:29
mvoChipaca: uh, hope its not something silly as setuid and then setgid :/ in this particular revision13:29
mvo(i.e. order wrog)13:29
Chipacano, it does setgid and then setuid13:29
mvowrong even13:29
Chipacaand the setgid fails13:30
Chipacathis is beyond weird, because the snappy we ship works13:30
mterrymvo, I also see that someone subscribed snappy-dev to snappy bugs.  Maybe snapcraft and ubuntu-core-launcher should get the same treatment?13:31
sergiusensChipaca: hmm, I face this problem when locally building snappy (I think)13:33
rsalvetimterry: I did that, yup, makes sense13:34
mterryrsalveti, thanks!13:34
* Chipaca files bug #146065813:35
ubottubug 1460658 in Snappy "errors returned by syscall are not user-friendly, should not be shipped raw to the user" [Undecided,New] https://launchpad.net/bugs/146065813:35
Chipacasergiusens: and how did you fix it?13:35
sergiusensChipaca: I haven't, sorry13:41
* Chipaca -> school run13:50
=== joet is now known as josepht
sergiusensnessita: can I use the 'id' for a package to get results for it?14:08
sergiusensnessita: as in using 2277 (id) instead of https://search.apps.ubuntu.com/api/v1/package/beagleblack14:09
nessitasergiusens, nopes, ID is retured by mistake,never rely on that14:13
mvojdstrand: do you know why livecd-rootfs uses the "-M /var/cache/apparmor/.features" flag in ubuntu-touch? this file is not available in our chroot it seems14:27
sergiusensnessita: so the resource name is always the package_name.origin or alias, correct?14:30
jdstrandmvo: what is -M an argument to?14:30
mvojdstrand: apparmor_parser -M (--features-file) I think14:30
mvojdstrand: I'm not sure why its there for touch when they pre-build the /etc/apparmor.d/cache14:31
jdstrandah, that is not in the manpage it seems14:32
mvoyes, I only found it with apparmor_parser -h and have no idea what its doing14:32
jdstrandmvo: iirc, if you specify a different --cache-loc (-L), then you need to have a .features file in it14:33
jdstrandsince there is /etc/apparmor.d/cache for system and /var/cache/apparmor for apps, we have a .features file in both14:34
ogra_echo "I: precompiling click apparmor policies"14:34
ogra_/sbin/apparmor_parser -M ${FEATURES} -Q --write-cache --cache-loc=/var/cache/apparmor/ `find /var/lib/apparmor/profiles/ -maxdepth 1 -type f -not -path '*/\.*'`14:34
ogra_(thats from the code)14:34
ogra_looking in the last image build log it seems to run fine without complaints14:34
ogra_(touoch that is)14:34
jdstrandperhaps it is putting a .features file in place so that the compiler will use it instead of querying the kernel?14:35
ogra_i wouldnt know what would put that file there14:35
jdstrandI think rsalveti and/or jjohansen would know14:35
jdstrandI know that a .features file is put in place on the running system in each cache directory14:36
jdstrandthe running non-livecd system that is14:36
mterrytedg, we should try to define a minimal set of snapcraft bits that we think we can move forward with this week14:36
ogra_jdstrand, what puts it there ? the upstart job ?14:37
jdstrandand I know you can specify a different features file to adjust cache output14:37
jdstrandso you could compile caches for another kernel14:37
ogra_there is definitely no code in livecd-rootfs putting that file in place14:38
ogra_and i doubt it actually exists in the chroot after bootstrapping14:38
nessitasergiusens, yes14:39
jdstrandI'm not sure. I think the parser might14:42
tedgmterry, Yes, I haven't looked at the current code. I would like to get some stuff starting to work-ish14:42
tedgmterry, I think we can do that even if all the spec parts aren't perfected.14:42
jdstrandIf cache/.features is missing, create it if --write-cache14:43
mterrytedg, current code is an empty branch14:44
jdstrandI'm still going to defer to jjohansen14:45
ogra_that makes it at least bugfree14:45
tedgmterry, tabula rasa14:45
ogra_jdstrand, well, it doesnt seem to do any harm14:45
ogra_(not sure what mvo's prob is with it)14:45
Chipacasergiusens: mvo: it fails when compiled with golang 1.4 (!)14:51
Chipacamvo: does this match the failures you were seeing in arm64?14:52
Chipacaor gogcc14:52
Chipacamaybe i just need to rebuild my go 1.414:53
Chipacaor switch to wily already14:53
mvoChipaca: ohhhh, I have not tried that14:53
mvoChipaca: in a meeting right now :/ so can't help just yet14:53
Chipacamvo: is this the "15.04.1 release" meeting?14:53
mvoChipaca: yes, I almost missed it fighting with gccgo14:54
sergiusensChipaca: right, I'm using 1.4 here (locally installed)15:00
Chipacasergiusens: vivid's 1.3 worked15:01
Chipacasergiusens: locally installed 1.3 also works15:02
ChipacaI guess I won't be running snappy on my http://wiki.openwrt.org/toh/kingston/mlw221 any time soon15:25
mvo16mb flash is going to be hard15:27
ogra_just write a proper compression that allows pushing 4G into 16M ...15:29
mvo4gb of /dev/zero surely15:30
Chipacamvo: so, the manifest branch is the one causing the apparmor failures15:33
mvoChipaca: the reduce-manifest one?15:44
Chipacamvo: yaarp15:44
elopiofgimenez: tomorrow I can escape at 11:30, london time.15:46
Chipacamvo: still trying to understand why, but i'll get there :)15:46
tedgWhere are the package lists for the default core image?15:46
tedgseed I guess?15:46
tedgIs it this? https://code.launchpad.net/~ubuntu-core-dev/ubuntu-seeds/ubuntu-core.wily15:47
fgimenezelopio, fine, that is 10:30 my time. i'm already taking a look at the doc15:51
fgimenezelopio, ping me when you are ready15:51
jdstrandmvo, Chipaca: if I were to hazard a guess, I would think it has something to do with the 'namespace' changes in click.go15:53
Chipacajdstrand: nope :)15:54
jdstrandoh, what is it?15:54
elopiofgimenez: great, thanks.15:57
Chipacajdstrand: in revision 465 i switched some bits to use the yaml manifest instead of the click manifest16:00
Chipacajdstrand: without noticing that things that appeared equal were not so16:01
Chipacain my defence, in build we assign the click manifest's Hooks to be the yaml's Integration16:02
Chipacabut before doing that we do add some things to Integration that are not in the package.yaml16:03
Chipacaso, I *think* what we want is to grow Integration in the same way every time we load it16:04
ChipacaI need to check though :)16:05
jdstrandmvo: fyi, and this doesn't have anything to do with snappy internals, I have adjust the review tools to error if a snap uses 'integration' in its yaml16:17
jdstrandsergiusens: hey, I'm reflashing my bbb, is udf 0.21-1+174~ubuntu15.04.1 ok to use?16:58
sergiusensjdstrand: let me check17:09
sergiusensjdstrand: yes17:11
tedgSo, I thought I'd go to the docs, didn't find my answer there either :-)17:18
tedgWhere is the script/tool/etc that builds the core snap?17:18
jdstrandsergiusens: thanks17:19
tedg1243 GB17:19
ogra_640k are enough for everyone !17:20
* ogra_ upgrades ubuntu-device-flash17:31
* jdstrand hrms17:31
jdstrandrsalveti, mvo: hello-dbus-app is broken on edge r72. is this the candidate for promotion?17:33
jdstrandrsalveti, mvo: (on bbb)17:33
damjanwhat would it take to port UbuntuCore to the Kindle Paperwhite17:46
ogra_damjan, depends what bootloader it uses ... if the specs would work etc17:49
damjanhardware specs?17:50
ogra_you need 4G diskspace and the ability to partition it the right way... we currently only support u-boot on arm as bootloader ...17:51
damjanit's an 1Ghz imx 50817:53
damjan256MB ram17:53
damjanthere's the 2GB and 4GB flash versions17:53
ogra_that might eb a little low on ram ... but givenn that there is no UI support in any way yet, perhaps not17:53
ogra_(i guess for plain cmdline 256M would work)17:54
damjanafaik it's u-boot17:56
damjanwhy does it matter btw?17:56
ogra_because the automation for rollbacks lives in the bootloader17:57
ogra_(if you upgrade and something goes wrong the system automatically rolls back to the last working setup)17:57
damjanit's uboot18:00
jdstrandrsalveti, mvo: fyi, there is a trello card to add hello-dbus-* to the self tests. if is in 'snappy core stackholders backlog' 'incoming propposals'. I just now added instructions on what to do (should be a very simple test)18:43
jdstrandrsalveti, mvo: s/if is/it is/18:43
rroyTrying to do basic install of docker app on snappy.    Installation completes w/o error however a simple `docker ps` fails:19:34
rroyubuntu@localhost:~$ sudo snappy install docker Installing docker Starting download of docker.canonical 8.36 MB / 8.36 MB [======================================] 100.00 % 483.05 KB/s  Done Name        Date       Version   Developer  ubuntu-core 2015-04-10 146                  docker      2015-06-01            ubuntu@localhost:~$ docker ps aa-exec: ERROR: profile 'docker_docker_1.6.1.002' does not exist  ubuntu@localhost:~$19:34
rroyUgh ... sorry about the formatting.19:34
rroyAs you can see the complaint is regarding a missing "profile" file.    I'm guessing I can get away w/ an empty profile file but ... what is the file name/location?19:36
kgunnseb128: you around ?19:50
seb128kgunn, yes19:51
rsalvetijdstrand: ogra_: we only have the features file for touch19:56
rsalvetiso I'd guess the pre-cached apparmor stuff is kind of useless for core atm19:57
rsalvetijdstrand: broken on 15.04/edge?19:58
jjohansenrsalveti: that does sound broken20:00
jdstrandrsalveti: yes, r7220:05
jdstrandrsalveti: I think it is surrounding the unshare in the launcher because I am getting a disconnected path apparmor denial20:06
rsalvetijdstrand: and thanks for updating the card, will move it around later today20:07
jdstrandbut it is weird, because it is on run/20:07
rsalvetibut iirc it was working a few days ago20:07
jdstrandrsalveti: cool, thanks20:07
jdstrandI wonder what landed20:07
rsalvetinow don't remember if that was indeed stable or edge20:07
jdstranddo we have a clear way to see what has changed?20:07
rsalvetinot an easy way, no, ogra_ was working on that20:08
rsalvetiwe only got the manifest, but from a few images20:08
jdstrandI just reflashed my bbb today with edge and got this denial: audit(1433179950.388:19): apparmor="DENIED" operation="connect" info="Failed name lookup - disconnected path" error=-13 profile="hello-dbus-app.canonical_client_1.0.1" name="run/dbus/system_bus_socket" pid=1215 comm="dbus_message.ar" requested_mask="wr" denied_mask="wr" fsuid=1000 ouid=020:08
jdstrandnotice 'name=run/...'20:09
jdstrandthat should have a '/' in front of it20:09
jdstrandso, we knew we would need to adjust the apparmor template to use 'attach_disconnected'20:09
jdstrandand in fect, that is done in wily20:09
jdstrandbut, I wasn't expecting this on 15.04, so I'm curious about the changes that went in20:10
jdstrandrsalveti: so, the launcher hasn't changed in vivid...20:14
jdstrandrsalveti: ah, 1.0.2~ppa1 is on the image20:15
jdstrandrsalveti: 'Set up a private mount namespace for /tmp'20:16
jdstrandso, this means we need a policy update20:16
rsalvetiwe use vivid + https://launchpad.net/~snappy-dev/+archive/ubuntu/image20:16
jdstrandyep, that is where I'm looking20:17
* jdstrand sees the old unused libseccomp and deletes it20:17
rsalvetialso noticed we're over the repo size limit in there20:18
rsalvetimaybe because of gcc20:18
jdstrandoh yeah20:18
jdstrandrsalveti: so, at this point there is a choice, pull the launcher or have me do a policy update. I'm fine with doing an ubuntu-core-security update-- I can do it tomorrow. this was the other part of the sru I was talking about20:19
jdstrandrsalveti: but if we go that route, you should block the promotion on that20:19
rsalvetijdstrand: that same version is also available in wily (core-launcher)20:20
rsalvetiso I guess we'd need a policy update for both20:20
jdstrandrsalveti: wily has 1.0.220:20
jdstrandwily already has the policy update20:21
rsalvetigot it20:21
jdstrand15.10.1 has: "add attach_disconnected for default policy in preparation of new /tmp20:21
jdstrand      handling"20:21
rsalvetiguess it'd be fine to get this in the ppa and then work on getting the official src in place20:22
jdstrandthat is what I was thinking20:22
rsalvetijdstrand: do we have a bug for this already?20:23
rsalvetijust so I can put at the milestone20:23
jdstrandI'll file one20:24
rsalvetiawesome, thanks20:24
jdstrandrsalveti: bug 146081020:26
ubottubug 1460810 in Snappy "1.0.2 launcher needs corresponding apparmor policy update" [Undecided,New] https://launchpad.net/bugs/146081020:26
rsalvetijdstrand: thanks20:27
jdstrandrsalveti: fyi, ubuntu-core-security - 15.04.12~ppa1 uploaded to the ppa21:06
rsalvetijdstrand: awesome, thanks for that21:06
rsalvetigot the extra ppa space just in time21:07
* Chipaca looks at sys/unix/syscall_linux_arm64.go21:33
* Chipaca goes to bed21:33
nessitasergiusens, so, I have this item to sync with you, about snappy oauth-signing every single request to the index. Any pointers who should I ping about this?21:56
Chipacanessita: for snappy?22:20
beowulfChipaca: is your snap removed from the store?22:28
Chipacabeowulf: unpublished22:28
Chipacabeowulf: should i republish?22:28
Chipacapeople seemed to not like it being there22:28
beowulfChipaca: no, it exposed some wonderful errors :)22:28
Chipacahee hee :)22:28
beowulfChipaca: so i was using it in webdm, then it was unpublished, then i tried to uninstall...22:29
Chipacabeowulf: webdm doesn't like things disappearing from the store?22:29
beowulfChipaca: no sir22:29
beowulfChipaca: i'm wondering if the store should dissappear metadata, or should webdm handle it, or should i go to bed22:29
beowulfi think the latter22:30
Chipacajdstrand: is https://01.org/intel-kgt relevant to us?22:30
Chipacabeowulf: the magic 8-ball says "go to bed already"22:30
sergiusensChipaca: beowulf this is a similar error to the offline case; I need to fix it23:56
sergiusensnessita: how soon is that timeline? I think you want to sync with beuno first on the whole concept for ssl/tls23:58

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